@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@-webkit-keyframes blink{0%,to{opacity:1}50%{opacity:0}}@-moz-keyframes blink{0%,to{opacity:1}50%{opacity:0}}@keyframes appear{0%{opacity:0}to{opacity:1}}@-webkit-keyframes appear{0%{opacity:0}to{opacity:1}}@-moz-keyframes appear{0%{opacity:0}to{opacity:1}}@keyframes appear-hammer{0%,to{opacity:0}50%,60%{opacity:1}}@-webkit-keyframes appear-hammer{0%,to{opacity:0}50%,60%{opacity:1}}@-moz-keyframes appear-hammer{0%,to{opacity:0}50%,60%{opacity:1}}@keyframes blink-cursor{0%,to{opacity:1}50%{opacity:0}}@-webkit-keyframes blink-cursor{0%,to{opacity:1}50%{opacity:0}}@-moz-keyframes blink-cursor{0%,to{opacity:1}50%{opacity:0}}@keyframes fadein{0%{display:block;opacity:0}1%{opacity:0}to{opacity:1}}@-webkit-keyframes fadein{0%{display:block;opacity:0}1%{opacity:0}to{opacity:1}}@-moz-keyframes fadein{0%{display:block;opacity:0}1%{opacity:0}to{opacity:1}}@keyframes jump{0%,to{transform:translateY(0)}60%{transform:translateY(-20px)}}@-webkit-keyframes jump{0%,to{transform:translateY(0)}60%{transform:translateY(-20px)}}@-moz-keyframes jump{0%,to{transform:translateY(0)}60%{transform:translateY(-20px)}}@keyframes weight{0%{transform:rotate(-48deg)}to{transform:rotate(48deg)}}@-webkit-keyframes weight{0%{transform:rotate(-48deg)}to{transform:rotate(48deg)}}@-moz-keyframes weight{0%{transform:rotate(-48deg)}to{transform:rotate(48deg)}}@keyframes hammer{0%{transform:rotate(28deg)}to{transform:rotate(2deg)}}@-webkit-keyframes hammer{0%{transform:rotate(28deg)}to{transform:rotate(2deg)}}@-moz-keyframes hammer{0%{transform:rotate(28deg)}to{transform:rotate(2deg)}}@keyframes scale{0%,to{transform:scale(1)}70%{transform:scale(2)}}@-webkit-keyframes scale{0%,to{transform:scale(1)}70%{transform:scale(2)}}@-moz-keyframes scale{0%,to{transform:scale(1)}70%{transform:scale(2)}}@keyframes hoop{0%,40%,to{transform:translateX(0)}30%{transform:translateX(-40px)}50%{transform:translateX(50px)}}@-webkit-keyframes hoop{0%,40%,to{transform:translateX(0)}30%{transform:translateX(-40px)}50%{transform:translateX(50px)}}@-moz-keyframes hoop{0%,40%,to{transform:translateX(0)}30%{transform:translateX(-40px)}50%{transform:translateX(50px)}}@keyframes danse{0%,to{transform:translateX(0)}50%{transform:translateX(-10px)}70%{transform:translateX(10px)}}@-webkit-keyframes danse{0%,to{transform:translateX(0)}50%{transform:translateX(-10px)}70%{transform:translateX(10px)}}@-moz-keyframes danse{0%,to{transform:translateX(0)}50%{transform:translateX(-10px)}70%{transform:translateX(10px)}}@keyframes hamburger{0%{transform:scale(1)}to{transform:scale(0)}}@-webkit-keyframes hamburger{0%{transform:scale(1)}to{transform:scale(0)}}@-moz-keyframes hamburger{0%{transform:scale(1)}to{transform:scale(0)}}@keyframes spinner-rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@-webkit-keyframes spinner-rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@-moz-keyframes spinner-rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes bottleDance{0%,to{transform:rotate(0deg)}5%{transform:rotate(5deg)}95%{transform:rotate(-5deg)}}@-webkit-keyframes bottleDance{0%,to{transform:rotate(0deg)}5%{transform:rotate(5deg)}95%{transform:rotate(-5deg)}}@-moz-keyframes bottleDance{0%,to{transform:rotate(0deg)}5%{transform:rotate(5deg)}95%{transform:rotate(-5deg)}}@keyframes bounce{0%,10%,40%,60%,to{transform:translateY(0)}30%{transform:translateY(-25px)}50%{transform:translateY(-10px)}}@-webkit-keyframes bounce{0%,10%,40%,60%,to{transform:translateY(0)}30%{transform:translateY(-25px)}50%{transform:translateY(-10px)}}@-moz-keyframes bounce{0%,10%,40%,60%,to{transform:translateY(0)}30%{transform:translateY(-25px)}50%{transform:translateY(-10px)}}@keyframes bounce-with-distortion{0%,60%,to{transform:scale(1,1) translateY(0)}10%,40%{transform:scale(1.03,.97) translateY(0)}30%{transform:scale(.97,1.03) translateY(-25px)}50%{transform:scale(1,1) translateY(-10px)}}@-webkit-keyframes bounce-with-distortion{0%,60%,to{transform:scale(1,1) translateY(0)}10%,40%{transform:scale(1.03,.97) translateY(0)}30%{transform:scale(.97,1.03) translateY(-25px)}50%{transform:scale(1,1) translateY(-10px)}}@-moz-keyframes bounce-with-distortion{0%,60%,to{transform:scale(1,1) translateY(0)}10%,40%{transform:scale(1.03,.97) translateY(0)}30%{transform:scale(.97,1.03) translateY(-25px)}50%{transform:scale(1,1) translateY(-10px)}}@keyframes bgColor-on-tap{0%,50%{background-color:red}to{background-color:transparent}}@-webkit-keyframes bgColor-on-tap{0%,50%{background-color:red}to{background-color:transparent}}@-moz-keyframes bgColor-on-tap{0%,50%{background-color:red}to{background-color:transparent}}@font-face{font-family:ProximaNova;src:url(./fonts/ProximaNova/ProximaNova-Light.otf);font-weight:200}@font-face{font-family:ProximaNova;src:url(./fonts/ProximaNova/ProximaNova-Regular.otf);font-weight:400}@font-face{font-family:ProximaNova;src:url(./fonts/ProximaNova/ProximaNova-Semibold.otf);font-weight:600}@font-face{font-family:ProximaNova;src:url(./fonts/ProximaNova/ProximaNova-Bold.otf);font-weight:800}:root{--mainColor: hsl(228, 52%, 32%);--mainColor_h: 228;--mainColor_s: 52%;--mainColor_l: 32%;--secondaryColor: hsl(120, 100%, 25%);--secondaryColor_h: 120;--secondaryColor_s: 100%;--secondaryColor_l: 25%;--titleColor: hsl(0, 0%, 0%);--titleColor_h: 0;--titleColor_s: 0%;--titleColor_l: 0%;--textColor: hsl(0, 0%, 0%);--textColor_h: 0;--textColor_s: 0%;--textColor_l: 0%;--ratingColor: hsl(32, 100%, 60%);--ratingColor_h: 32;--ratingColor_s: 100%;--ratingColor_l: 60%;--CTA: hsl(39, 100%, 50%);--CTA_h: 39;--CTA_s: 100%;--CTA_l: 50%}
/*!
 * Bootstrap v4.5.0 (https://getbootstrap.com/)
 * Copyright 2011-2020 The Bootstrap Authors
 * Copyright 2011-2020 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
.container{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container{max-width:570px}}@media (min-width:768px){.container{max-width:780px}}@media (min-width:992px){.container{max-width:900px}}@media (min-width:1200px){.container{max-width:1140px}}.container-fluid,.container-lg,.container-md,.container-sm,.container-xl{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container,.container-sm{max-width:570px}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:780px}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:900px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1140px}}.row{display:flex;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.no-gutters{margin-right:0;margin-left:0}.no-gutters>.col,.no-gutters>[class*=col-]{padding-right:0;padding-left:0}.col,.col-lg,.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-auto,.col-md,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-auto,.col-sm,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-auto{position:relative;width:100%;padding-right:15px;padding-left:15px}.col-auto{position:relative;padding-right:15px;padding-left:15px}.col-1,.col-10,.col-11,.col-12,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9{position:relative;width:100%;padding-right:15px;padding-left:15px}.col{flex-basis:0;flex-grow:1;min-width:0;max-width:100%}.row-cols-1>*{flex:0 0 100%;max-width:100%}.row-cols-2>*{flex:0 0 50%;max-width:50%}.row-cols-3>*{flex:0 0 33.3333333333%;max-width:33.3333333333%}.row-cols-4>*{flex:0 0 25%;max-width:25%}.row-cols-5>*{flex:0 0 20%;max-width:20%}.row-cols-6>*{flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-auto{flex:0 0 auto;width:auto;max-width:100%}.col-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.col-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-3{flex:0 0 25%;max-width:25%}.col-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.col-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.col-6{flex:0 0 50%;max-width:50%}.col-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.col-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.col-9{flex:0 0 75%;max-width:75%}.col-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.col-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.col-12{flex:0 0 100%;max-width:100%}.order-first{order:-1}.order-last{order:13}.order-0{order:0}.order-1{order:1}.order-2{order:2}.order-3{order:3}.order-4{order:4}.order-5{order:5}.order-6{order:6}.order-7{order:7}.order-8{order:8}.order-9{order:9}.order-10{order:10}.order-11{order:11}.order-12{order:12}.offset-1{margin-left:8.3333333333%}.offset-2{margin-left:16.6666666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.3333333333%}.offset-5{margin-left:41.6666666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.3333333333%}.offset-8{margin-left:66.6666666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.3333333333%}.offset-11{margin-left:91.6666666667%}@media (min-width:576px){.col-sm{flex-basis:0;flex-grow:1;min-width:0;max-width:100%}.row-cols-sm-1>*{flex:0 0 100%;max-width:100%}.row-cols-sm-2>*{flex:0 0 50%;max-width:50%}.row-cols-sm-3>*{flex:0 0 33.3333333333%;max-width:33.3333333333%}.row-cols-sm-4>*{flex:0 0 25%;max-width:25%}.row-cols-sm-5>*{flex:0 0 20%;max-width:20%}.row-cols-sm-6>*{flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-sm-auto{flex:0 0 auto;width:auto;max-width:100%}.col-sm-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.col-sm-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-sm-3{flex:0 0 25%;max-width:25%}.col-sm-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.col-sm-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.col-sm-6{flex:0 0 50%;max-width:50%}.col-sm-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.col-sm-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.col-sm-9{flex:0 0 75%;max-width:75%}.col-sm-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.col-sm-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.col-sm-12{flex:0 0 100%;max-width:100%}.order-sm-first{order:-1}.order-sm-last{order:13}.order-sm-0{order:0}.order-sm-1{order:1}.order-sm-2{order:2}.order-sm-3{order:3}.order-sm-4{order:4}.order-sm-5{order:5}.order-sm-6{order:6}.order-sm-7{order:7}.order-sm-8{order:8}.order-sm-9{order:9}.order-sm-10{order:10}.order-sm-11{order:11}.order-sm-12{order:12}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.3333333333%}.offset-sm-2{margin-left:16.6666666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.3333333333%}.offset-sm-5{margin-left:41.6666666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.3333333333%}.offset-sm-8{margin-left:66.6666666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.3333333333%}.offset-sm-11{margin-left:91.6666666667%}}@media (min-width:768px){.col-md{flex-basis:0;flex-grow:1;min-width:0;max-width:100%}.row-cols-md-1>*{flex:0 0 100%;max-width:100%}.row-cols-md-2>*{flex:0 0 50%;max-width:50%}.row-cols-md-3>*{flex:0 0 33.3333333333%;max-width:33.3333333333%}.row-cols-md-4>*{flex:0 0 25%;max-width:25%}.row-cols-md-5>*{flex:0 0 20%;max-width:20%}.row-cols-md-6>*{flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-md-auto{flex:0 0 auto;width:auto;max-width:100%}.col-md-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.col-md-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-md-3{flex:0 0 25%;max-width:25%}.col-md-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.col-md-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.col-md-6{flex:0 0 50%;max-width:50%}.col-md-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.col-md-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.col-md-9{flex:0 0 75%;max-width:75%}.col-md-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.col-md-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.col-md-12{flex:0 0 100%;max-width:100%}.order-md-first{order:-1}.order-md-last{order:13}.order-md-0{order:0}.order-md-1{order:1}.order-md-2{order:2}.order-md-3{order:3}.order-md-4{order:4}.order-md-5{order:5}.order-md-6{order:6}.order-md-7{order:7}.order-md-8{order:8}.order-md-9{order:9}.order-md-10{order:10}.order-md-11{order:11}.order-md-12{order:12}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.3333333333%}.offset-md-2{margin-left:16.6666666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.3333333333%}.offset-md-5{margin-left:41.6666666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.3333333333%}.offset-md-8{margin-left:66.6666666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.3333333333%}.offset-md-11{margin-left:91.6666666667%}}@media (min-width:992px){.col-lg{flex-basis:0;flex-grow:1;min-width:0;max-width:100%}.row-cols-lg-1>*{flex:0 0 100%;max-width:100%}.row-cols-lg-2>*{flex:0 0 50%;max-width:50%}.row-cols-lg-3>*{flex:0 0 33.3333333333%;max-width:33.3333333333%}.row-cols-lg-4>*{flex:0 0 25%;max-width:25%}.row-cols-lg-5>*{flex:0 0 20%;max-width:20%}.row-cols-lg-6>*{flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-lg-auto{flex:0 0 auto;width:auto;max-width:100%}.col-lg-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.col-lg-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-lg-3{flex:0 0 25%;max-width:25%}.col-lg-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.col-lg-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.col-lg-6{flex:0 0 50%;max-width:50%}.col-lg-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.col-lg-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.col-lg-9{flex:0 0 75%;max-width:75%}.col-lg-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.col-lg-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.col-lg-12{flex:0 0 100%;max-width:100%}.order-lg-first{order:-1}.order-lg-last{order:13}.order-lg-0{order:0}.order-lg-1{order:1}.order-lg-2{order:2}.order-lg-3{order:3}.order-lg-4{order:4}.order-lg-5{order:5}.order-lg-6{order:6}.order-lg-7{order:7}.order-lg-8{order:8}.order-lg-9{order:9}.order-lg-10{order:10}.order-lg-11{order:11}.order-lg-12{order:12}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.3333333333%}.offset-lg-2{margin-left:16.6666666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.3333333333%}.offset-lg-5{margin-left:41.6666666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.3333333333%}.offset-lg-8{margin-left:66.6666666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.3333333333%}.offset-lg-11{margin-left:91.6666666667%}}@media (min-width:1200px){.col-xl{flex-basis:0;flex-grow:1;min-width:0;max-width:100%}.row-cols-xl-1>*{flex:0 0 100%;max-width:100%}.row-cols-xl-2>*{flex:0 0 50%;max-width:50%}.row-cols-xl-3>*{flex:0 0 33.3333333333%;max-width:33.3333333333%}.row-cols-xl-4>*{flex:0 0 25%;max-width:25%}.row-cols-xl-5>*{flex:0 0 20%;max-width:20%}.row-cols-xl-6>*{flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-xl-auto{flex:0 0 auto;width:auto;max-width:100%}.col-xl-1{flex:0 0 8.3333333333%;max-width:8.3333333333%}.col-xl-2{flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-xl-3{flex:0 0 25%;max-width:25%}.col-xl-4{flex:0 0 33.3333333333%;max-width:33.3333333333%}.col-xl-5{flex:0 0 41.6666666667%;max-width:41.6666666667%}.col-xl-6{flex:0 0 50%;max-width:50%}.col-xl-7{flex:0 0 58.3333333333%;max-width:58.3333333333%}.col-xl-8{flex:0 0 66.6666666667%;max-width:66.6666666667%}.col-xl-9{flex:0 0 75%;max-width:75%}.col-xl-10{flex:0 0 83.3333333333%;max-width:83.3333333333%}.col-xl-11{flex:0 0 91.6666666667%;max-width:91.6666666667%}.col-xl-12{flex:0 0 100%;max-width:100%}.order-xl-first{order:-1}.order-xl-last{order:13}.order-xl-0{order:0}.order-xl-1{order:1}.order-xl-2{order:2}.order-xl-3{order:3}.order-xl-4{order:4}.order-xl-5{order:5}.order-xl-6{order:6}.order-xl-7{order:7}.order-xl-8{order:8}.order-xl-9{order:9}.order-xl-10{order:10}.order-xl-11{order:11}.order-xl-12{order:12}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.3333333333%}.offset-xl-2{margin-left:16.6666666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.3333333333%}.offset-xl-5{margin-left:41.6666666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.3333333333%}.offset-xl-8{margin-left:66.6666666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.3333333333%}.offset-xl-11{margin-left:91.6666666667%}}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{position:relative;height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.modal,.modal-open,main>section{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal{position:fixed;top:0;left:0;z-index:1050;display:none;width:100%;height:100%;outline:0}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translate(0,-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{display:flex;max-height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 1rem);overflow:hidden}.modal-dialog-scrollable .modal-footer,.modal-dialog-scrollable .modal-header{flex-shrink:0}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - 1rem)}.modal-dialog-centered::before{display:block;height:calc(100vh - 1rem);height:min-content;content:""}.modal-dialog-centered.modal-dialog-scrollable{flex-direction:column;justify-content:center;height:100%}.modal-dialog-centered.modal-dialog-scrollable .modal-content{max-height:none}.modal-dialog-centered.modal-dialog-scrollable::before{content:none}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:1rem;border-bottom:1px solid #dee2e6;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.modal-header .close{padding:1rem;margin:-1rem -1rem -1rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;flex:1 1 auto;padding:1rem}.modal-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;padding:.75rem;border-top:1px solid #dee2e6;border-bottom-right-radius:calc(.3rem - 1px);border-bottom-left-radius:calc(.3rem - 1px)}.modal-footer>*{margin:.25rem}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-scrollable{max-height:calc(100% - 3.5rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 3.5rem)}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}.modal-dialog-centered::before{height:calc(100vh - 3.5rem);height:min-content}.modal-sm{max-width:300px}}@media (min-width:992px){.modal-lg,.modal-xl{max-width:800px}}@media (min-width:1200px){.modal-xl{max-width:1140px}}.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-row-reverse{flex-direction:row-reverse!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-fill{flex:1 1 auto!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}@media (min-width:576px){.flex-sm-row{flex-direction:row!important}.flex-sm-column{flex-direction:column!important}.flex-sm-row-reverse{flex-direction:row-reverse!important}.flex-sm-column-reverse{flex-direction:column-reverse!important}.flex-sm-wrap{flex-wrap:wrap!important}.flex-sm-nowrap{flex-wrap:nowrap!important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-sm-fill{flex:1 1 auto!important}.flex-sm-grow-0{flex-grow:0!important}.flex-sm-grow-1{flex-grow:1!important}.flex-sm-shrink-0{flex-shrink:0!important}.flex-sm-shrink-1{flex-shrink:1!important}.justify-content-sm-start{justify-content:flex-start!important}.justify-content-sm-end{justify-content:flex-end!important}.justify-content-sm-center{justify-content:center!important}.justify-content-sm-between{justify-content:space-between!important}.justify-content-sm-around{justify-content:space-around!important}.align-items-sm-start{align-items:flex-start!important}.align-items-sm-end{align-items:flex-end!important}.align-items-sm-center{align-items:center!important}.align-items-sm-baseline{align-items:baseline!important}.align-items-sm-stretch{align-items:stretch!important}.align-content-sm-start{align-content:flex-start!important}.align-content-sm-end{align-content:flex-end!important}.align-content-sm-center{align-content:center!important}.align-content-sm-between{align-content:space-between!important}.align-content-sm-around{align-content:space-around!important}.align-content-sm-stretch{align-content:stretch!important}.align-self-sm-auto{align-self:auto!important}.align-self-sm-start{align-self:flex-start!important}.align-self-sm-end{align-self:flex-end!important}.align-self-sm-center{align-self:center!important}.align-self-sm-baseline{align-self:baseline!important}.align-self-sm-stretch{align-self:stretch!important}}@media (min-width:768px){.flex-md-row{flex-direction:row!important}.flex-md-column{flex-direction:column!important}.flex-md-row-reverse{flex-direction:row-reverse!important}.flex-md-column-reverse{flex-direction:column-reverse!important}.flex-md-wrap{flex-wrap:wrap!important}.flex-md-nowrap{flex-wrap:nowrap!important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-md-fill{flex:1 1 auto!important}.flex-md-grow-0{flex-grow:0!important}.flex-md-grow-1{flex-grow:1!important}.flex-md-shrink-0{flex-shrink:0!important}.flex-md-shrink-1{flex-shrink:1!important}.justify-content-md-start{justify-content:flex-start!important}.justify-content-md-end{justify-content:flex-end!important}.justify-content-md-center{justify-content:center!important}.justify-content-md-between{justify-content:space-between!important}.justify-content-md-around{justify-content:space-around!important}.align-items-md-start{align-items:flex-start!important}.align-items-md-end{align-items:flex-end!important}.align-items-md-center{align-items:center!important}.align-items-md-baseline{align-items:baseline!important}.align-items-md-stretch{align-items:stretch!important}.align-content-md-start{align-content:flex-start!important}.align-content-md-end{align-content:flex-end!important}.align-content-md-center{align-content:center!important}.align-content-md-between{align-content:space-between!important}.align-content-md-around{align-content:space-around!important}.align-content-md-stretch{align-content:stretch!important}.align-self-md-auto{align-self:auto!important}.align-self-md-start{align-self:flex-start!important}.align-self-md-end{align-self:flex-end!important}.align-self-md-center{align-self:center!important}.align-self-md-baseline{align-self:baseline!important}.align-self-md-stretch{align-self:stretch!important}}@media (min-width:992px){.flex-lg-row{flex-direction:row!important}.flex-lg-column{flex-direction:column!important}.flex-lg-row-reverse{flex-direction:row-reverse!important}.flex-lg-column-reverse{flex-direction:column-reverse!important}.flex-lg-wrap{flex-wrap:wrap!important}.flex-lg-nowrap{flex-wrap:nowrap!important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-lg-fill{flex:1 1 auto!important}.flex-lg-grow-0{flex-grow:0!important}.flex-lg-grow-1{flex-grow:1!important}.flex-lg-shrink-0{flex-shrink:0!important}.flex-lg-shrink-1{flex-shrink:1!important}.justify-content-lg-start{justify-content:flex-start!important}.justify-content-lg-end{justify-content:flex-end!important}.justify-content-lg-center{justify-content:center!important}.justify-content-lg-between{justify-content:space-between!important}.justify-content-lg-around{justify-content:space-around!important}.align-items-lg-start{align-items:flex-start!important}.align-items-lg-end{align-items:flex-end!important}.align-items-lg-center{align-items:center!important}.align-items-lg-baseline{align-items:baseline!important}.align-items-lg-stretch{align-items:stretch!important}.align-content-lg-start{align-content:flex-start!important}.align-content-lg-end{align-content:flex-end!important}.align-content-lg-center{align-content:center!important}.align-content-lg-between{align-content:space-between!important}.align-content-lg-around{align-content:space-around!important}.align-content-lg-stretch{align-content:stretch!important}.align-self-lg-auto{align-self:auto!important}.align-self-lg-start{align-self:flex-start!important}.align-self-lg-end{align-self:flex-end!important}.align-self-lg-center{align-self:center!important}.align-self-lg-baseline{align-self:baseline!important}.align-self-lg-stretch{align-self:stretch!important}}@media (min-width:1200px){.flex-xl-row{flex-direction:row!important}.flex-xl-column{flex-direction:column!important}.flex-xl-row-reverse{flex-direction:row-reverse!important}.flex-xl-column-reverse{flex-direction:column-reverse!important}.flex-xl-wrap{flex-wrap:wrap!important}.flex-xl-nowrap{flex-wrap:nowrap!important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}.flex-xl-fill{flex:1 1 auto!important}.flex-xl-grow-0{flex-grow:0!important}.flex-xl-grow-1{flex-grow:1!important}.flex-xl-shrink-0{flex-shrink:0!important}.flex-xl-shrink-1{flex-shrink:1!important}.justify-content-xl-start{justify-content:flex-start!important}.justify-content-xl-end{justify-content:flex-end!important}.justify-content-xl-center{justify-content:center!important}.justify-content-xl-between{justify-content:space-between!important}.justify-content-xl-around{justify-content:space-around!important}.align-items-xl-start{align-items:flex-start!important}.align-items-xl-end{align-items:flex-end!important}.align-items-xl-center{align-items:center!important}.align-items-xl-baseline{align-items:baseline!important}.align-items-xl-stretch{align-items:stretch!important}.align-content-xl-start{align-content:flex-start!important}.align-content-xl-end{align-content:flex-end!important}.align-content-xl-center{align-content:center!important}.align-content-xl-between{align-content:space-between!important}.align-content-xl-around{align-content:space-around!important}.align-content-xl-stretch{align-content:stretch!important}.align-self-xl-auto{align-self:auto!important}.align-self-xl-start{align-self:flex-start!important}.align-self-xl-end{align-self:flex-end!important}.align-self-xl-center{align-self:center!important}.align-self-xl-baseline{align-self:baseline!important}.align-self-xl-stretch{align-self:stretch!important}}html{padding:0;vertical-align:baseline}a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,figcaption,footer,h4,h5,header,hgroup,i,iframe,ins,kbd,label,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font:inherit;vertical-align:baseline}figure,form,h1,h2,h3,h6{padding:0;border:0}img,sup{padding:0;font:inherit}html,sup{border:0}fieldset,figure,form,h1,h2,h3,h6,legend{font:inherit;vertical-align:baseline}html,legend,sup{margin:0}:focus{outline:0}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1;min-height:100vh;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-size:var(--default-fs);line-height:var(--lineHeight);color:var(--textColor)}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:none}table{border-collapse:collapse;border-spacing:0}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration,input[type=search]::-webkit-search-results-button,input[type=search]::-webkit-search-results-decoration{-webkit-appearance:none;-moz-appearance:none}input[type=search]{-moz-appearance:none}audio,canvas,video{display:inline-block;*display:inline;*zoom:1;max-width:100%}audio:not([controls]){display:none;height:0}[hidden]{display:none}html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}a:focus{outline:thin dotted}a:active,a:hover{outline:0}img{border:0;-ms-interpolation-mode:bicubic;vertical-align:middle;display:block;width:100%;margin:0 auto}fieldset,legend{border:0;padding:0}fieldset,figure,form{margin:0}legend{white-space:normal;*margin-left:-7px}button,input,select{vertical-align:baseline}button,input,select,textarea{font-size:100%;margin:0;*vertical-align:middle}button,input{line-height:normal}button,select{text-transform:none}button{-webkit-appearance:button;*overflow:visible}html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer;*overflow:visible}button[disabled],html input[disabled]{cursor:default}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0;*height:13px;*width:13px}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0;margin:0}textarea{overflow:auto;vertical-align:top}html,input,select,textarea{color:#222}::-moz-selection{background:#b3d4fc;text-shadow:none}::selection{background:#b3d4fc;text-shadow:none}textarea{resize:vertical}.chromeframe{margin:.2em 0;background:#ccc;color:#000;padding:.2em 0}html{box-sizing:border-box;font:400 62.5%/1.2 ProximaNova,sans-serif;letter-spacing:.01em}*,::after,::before{box-sizing:inherit}a,button{color:inherit;cursor:pointer}a{text-decoration:none;color:var(--mainColor)}button{padding:0;background-color:transparent;border-width:0}.hide{display:none!important}.show{display:block!important}.invisible{visibility:hidden!important}.br{white-space:pre}@media (min-width:375px){.br--not-small-mobile{display:block}}@media (max-width:374px){.br--small-mobile{display:block}}@media (min-width:375px) and (max-width:767px){.br--mobile{display:block}}@media (max-width:574px){.br--mobile-max{display:block}}@media (min-width:768px) and (max-width:1024px){.br--tablet{display:block}}@media (min-width:768px) and (max-width:1024px) and (orientation:landscape){.br--tablet-landscape{display:block}}@media (min-width:1025px){.br--desktop{display:block}}.nowrap{white-space:nowrap}:root{--rating-size: 32px;--headingLineHeight: 1.25}@media (max-width:374px){:root{--default-fs: 16px;--lineHeight: 1.5;--heading1-fs: 32px;--subHeading1-fs: 14px;--introContent-fs: 18px;--heading2-fs: 20px;--heading3-fs: 21px;--btn-fs: 18px;--heading6-fs: 16px;--disclaimer-fs: 10px;--stockUpHeading-fs: 24px;--stockUpSubHeading-fs: 14px;--studies-fs: 14px;--footer-fs: 14px}}@media (min-width:375px) and (max-width:767px){:root{--default-fs: 16px;--lineHeight: 1.5;--heading1-fs: 36px;--subHeading1-fs: 14px;--introContent-fs: 18px;--heading2-fs: 24px;--heading3-fs: 21px;--btn-fs: 20px;--heading6-fs: 18px;--disclaimer-fs: 12px;--stockUpHeading-fs: 24px;--stockUpSubHeading-fs: 14px;--studies-fs: 14px;--footer-fs: 14px}}@media (min-width:768px) and (max-width:1024px){:root{--default-fs: 16px;--lineHeight: 1.5;--heading1-fs: 48px;--subHeading1-fs: 16px;--introContent-fs: 18px;--heading2-fs: 28px;--heading3-fs: 24px;--btn-fs: 26px;--heading6-fs: 18px;--disclaimer-fs: 12px;--stockUpHeading-fs: 36px;--stockUpSubHeading-fs: 14px;--studies-fs: 14px;--footer-fs: 14px}}@media (min-width:1025px){:root{--default-fs: 16px;--lineHeight: 1.75;--heading1-fs: 48px;--subHeading1-fs: 16px;--introContent-fs: 18px;--heading2-fs: 28px;--heading3-fs: 24px;--btn-fs: 32px;--heading6-fs: 18px;--disclaimer-fs: 12px;--stockUpHeading-fs: 36px;--stockUpSubHeading-fs: 14px;--studies-fs: 14px;--footer-fs: 14px}}h1,h6{margin:0 0 .5em}h1{color:currentColor;font-size:var(--heading1-fs)}h1 small{display:block;margin-bottom:.5em;font-size:var(--subHeading1-fs);font-weight:400;text-transform:uppercase;letter-spacing:.03em}h2,h3,h6{margin:0 0 1em;font-weight:600}h1,h2,h3{line-height:var(--headingLineHeight)}h2{font-size:var(--heading2-fs)}h3{font-size:var(--heading3-fs);text-align:center}h6{font-size:var(--heading6-fs)}.has-darkMode small,.has-lightMode small{color:var(--secondaryColor)}.disclaimer,p+p{margin-top:1em}b,h1,strong{font-weight:800}i{font-style:italic}@media (hover:hover) and (pointer:fine){a:hover{text-decoration:underline}}sup{font-size:80%;font-weight:200;vertical-align:super;white-space:nowrap}.disclaimer{font-size:var(--disclaimer-fs)}@media (hover:hover) and (pointer:fine){[role=button]{cursor:pointer}}.btn{display:flex;justify-content:center;align-items:center;flex-basis:auto}.btn [disabled],.btn.disabled{pointer-events:none}.icon,body.noscroll{margin:0;overflow:hidden}.icon{display:inline-block;width:1em;text-align:center;vertical-align:middle;font-size:1em;fill:inherit;color:inherit;box-sizing:content-box;pointer-events:none;height:1em}@media (max-width:849px){:root{--grid-gutter-width: 32px;--section-inner: 40px}}@media (min-width:850px){:root{--grid-gutter-width: 48px;--section-inner: 60px}}body.noscroll{height:100%;touch-action:none}[class^=container]{width:100%;margin-left:auto;margin-right:auto;padding-left:calc(var(--grid-gutter-width)/2);padding-right:calc(var(--grid-gutter-width)/2)}.container-xl{max-width:1140px}.container-md{max-width:780px}.container-lg{max-width:900px}footer,section{padding-top:var(--section-inner);padding-bottom:var(--section-inner)}section ul:not([class]){margin-bottom:1em}section li:not([class]){position:relative;margin-top:1em;padding-left:1.8em}section li:not([class])::before{content:"";mask:url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" width="22" height="22"><path fill="currentColor" d="M11,21c5.52,0,10-4.48,10-10S16.52,1,11,1S1,5.48,1,11S5.48,21,11,21z M5.81,11.26 c0.35-0.35,0.93-0.35,1.28,0l2.09,2.09l5.26-5.26c0.36-0.31,0.9-0.29,1.23,0.05c0.34,0.34,0.36,0.87,0.05,1.23l-5.91,5.91 c-0.35,0.35-0.93,0.35-1.28,0l-2.73-2.73c-0.17-0.17-0.27-0.4-0.27-0.65C5.54,11.67,5.64,11.43,5.81,11.26z"/></svg>') no-repeat;-webkit-mask:url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" width="22" height="22"><path fill="currentColor" d="M11,21c5.52,0,10-4.48,10-10S16.52,1,11,1S1,5.48,1,11S5.48,21,11,21z M5.81,11.26 c0.35-0.35,0.93-0.35,1.28,0l2.09,2.09l5.26-5.26c0.36-0.31,0.9-0.29,1.23,0.05c0.34,0.34,0.36,0.87,0.05,1.23l-5.91,5.91 c-0.35,0.35-0.93,0.35-1.28,0l-2.73-2.73c-0.17-0.17-0.27-0.4-0.27-0.65C5.54,11.67,5.64,11.43,5.81,11.26z"/></svg>') no-repeat;position:absolute;top:2px;left:0;display:block;width:22px;height:22px;background-color:var(--secondaryColor)}.footer{text-align:center;font-size:var(--footer-fs);line-height:1.8}.footer__links,.footer__logo{display:flex;justify-content:center}.footer__logo{align-items:center;margin-bottom:35px}.footer__links{flex-wrap:wrap}.footer__disclaimer{margin-left:auto;margin-right:auto}.footer__rights{margin-top:2em}@media (max-width:767px){:root{--logo-fs: 180px}}@media (min-width:768px) and (max-width:1024px){:root{--logo-fs: 180px}}@media (min-width:1025px){:root{--logo-fs: 180px}}.header{position:relative;z-index:1;background-color:#fff;padding-top:1em;padding-bottom:1em}.header [class^=container]{display:flex;justify-content:space-between;align-items:center}.header__logo{display:flex;align-items:center;font-size:var(--logo-fs)}@media (max-width:767px){.header__logo{margin:0 auto 5px}}.header__logo .icon{height:.275em;color:#273779}@media (max-width:767px){.header__contact{display:none}}.header--has-shadow{box-shadow:0 2px 5px rgba(0,0,0,.25)}.nav{-webkit-user-select:none;-moz-user-select:none;user-select:none;position:absolute}@media (max-width:767px){.nav{width:38px;height:38px}}@media (min-width:768px){.nav{display:none}}.nav__checkbox{visibility:hidden;position:absolute;z-index:-1}@media (max-width:767px){.nav__checkbox:checked~.menu-list{max-height:200px}}@media (min-width:768px){.nav__checkbox:checked~.menu-list{display:block}}.nav__label{overflow:hidden;display:inline-block;text-indent:200%;line-height:0}@media (max-width:767px){.nav__label{width:38px;height:38px;padding:12px 7px;background-color:transparent}}@media (min-width:768px){.nav__label{width:25px;height:25px;padding-top:2px}}@media (hover:hover) and (pointer:fine){.nav__label{cursor:pointer}}.nav__burger{display:block;background-color:#625d5d;border-radius:1px}@media (max-width:767px){.nav__burger{width:22px;height:2px;box-shadow:0 6px 0 #625d5d,0 12px 0 #625d5d}}@media (min-width:768px){.nav__burger{width:25px;height:5px;box-shadow:0 9px 0 #625d5d,0 18px 0 #625d5d}}.menu-list{overflow:hidden;position:absolute;z-index:2}@media (max-width:767px){.menu-list{left:calc(var(--grid-gutter-width)/-2);width:50vw;min-width:215px;max-height:0;transition:all 500ms ease-in-out}}@media (min-width:768px){.menu-list{display:none;top:40px;left:0;width:250px;box-shadow:0 0 16px 0 rgba(0,0,0,.2)}}.menu-list__link{display:block;line-height:1.15;background-color:#fff}.menu-list__link,.menu-list__link:hover,.menu-list__link:visited{text-decoration:none;color:var(--mainColor)}@media (max-width:767px){.menu-list__link{padding:15px}}@media (min-width:768px){.menu-list__link{display:block;padding:12px 16px}}@media (hover:hover) and (pointer:fine){.menu-list__link:hover{background-color:#fff}}
/*!
 * sc_CTA
 */
.cta-wrap{margin:0 auto;text-align:center;color:var(--buttonColor, white);background:var(--wrapperBackgroundColor, var(--mainColor))}section .cta-wrap{margin-top:1.25em}section+.cta-wrap{padding-top:1.5em;padding-bottom:1.5em}.cta-wrap [class^=container]{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:var(--ctaWrapGap, 2em)}.cta-wrap--sticky{position:sticky;left:0;max-width:none;width:100%;height:var(--stickyBarHeight);z-index:999}body>.cta-wrap--sticky{bottom:0}main .cta-wrap--sticky{top:calc(100% - var(--stickyBarHeight))}.cta-wrap--sticky:not(:last-child)+*{margin-top:calc(var(--stickyBarHeight)*-1)}.cta-wrap--sticky~:last-child:not(.aboutDr){padding-bottom:calc(var(--stickyBarHeight) + var(--section-inner))}.cta-wrap--sticky~.aboutDr:last-child{padding-bottom:var(--stickyBarHeight)}.cta-wrap__title{font-size:var(--ctaTitleFontSize, 36px);line-height:1}@media (max-width:374px){.cta-wrap__title{--ctaTitleFontSize: 16px}}@media (min-width:375px) and (max-width:519px){.cta-wrap__title{--ctaTitleFontSize: 20px}}@media (min-width:520px) and (max-width:767px){.cta-wrap__title{--ctaTitleFontSize: 24px}}.cta-wrap .btn{flex:1 1 auto;max-width:370px;margin:0}@media (min-width:850px){.cta-wrap .hide-td{display:none}}@media (max-width:849px){.cta-wrap .hide-mt{display:none}}.btn{display:inline-block;padding:.75em 1.25em;font-family:var(--mainFont);font-weight:var(--ctaFontWeight, 600);font-size:var(--btn-fs, 18px);text-align:center;white-space:nowrap;line-height:1;color:var(--buttonColor, white);background:var(--button-bg-initial, linear-gradient(0deg, var(--CTA) 0%, hsl(calc(var(--CTA_h) + 13), calc(var(--CTA_s) + 4%), calc(var(--CTA_l) + 11%)) 100%));border-radius:var(--buttonRadius, 8px);box-shadow:var(--buttonShadow, 0 3px 6px rgba(0, 0, 0, 0.15));transition:all 150ms ease-in-out}@media (max-width:374px){.btn{width:100%;padding-inline:.5em}}.btn:not([href]),.btn:not([href]):hover{color:var(--buttonColor, white)}.btn [disabled],.btn.disabled{filter:grayscale(1)}.btn:hover,.btn:visited{color:var(--buttonColor, white);text-decoration:none}.btn:hover{background:var(--button-bg-hover, linear-gradient(0deg, var(--CTA) 0%, var(--CTA) 100%))}
/*!
 * #END sc_CTA
 */
/*!
 * sc_popscreen
 */
.popscreen{position:fixed;left:0;top:0;z-index:1000;width:100%;height:100vh;display:flex;flex-direction:column;padding-block:0;background-color:var(--backgroundColor, white)}.popscreen [class^=container]{display:flex;justify-content:center;align-items:center}.popscreen__header{position:relative;z-index:1;width:100%;padding-block:1em .5em}.popscreen__header [class^=container]{display:flex;justify-content:space-between;align-items:center;flex-direction:row}.popscreen__logo{display:flex;align-items:center}@media (max-width:767px){.popscreen__logo{width:var(--popscreen-logoWidthMob, 168px);font-size:var(--popscreen-logoWidthMob, 168px)}}@media (min-width:768px) and (max-width:1024px){.popscreen__logo{width:var(--popscreen-logoWidthTab, 175px);font-size:var(--popscreen-logoWidthTab, 175px)}}@media (min-width:1025px){.popscreen__logo{width:var(--popscreen-logoWidthDesk, 180px);font-size:var(--popscreen-logoWidthDesk, 180px)}}.popscreen__logo .icon{height:var(--popscreen-logoHeight, 0.275em)}.popscreen__close-btn{display:flex;align-self:flex-start;color:inherit;font-size:var(--popscreen-closeBtn-fs, 1.5em);cursor:pointer}.popscreen>[class^=container]{flex-direction:column;flex:1 1 100%;transform:translateY(-5vh)}.popscreen__content{display:flex;justify-content:center;flex-direction:column}@media (max-width:767px) and (max-height:520px){.popscreen__content{flex:1 1 100%}}.popscreen__title{margin-block:0 .5em;font-size:var(--popscreen-title-fs, 50px);font-weight:var(--popscreen-title-wg, 800);text-align:center;color:var(--mainColor)}@media (max-width:374px){.popscreen__title{--popscreen-title-fs: 24px}}@media (min-width:375px) and (max-width:767px){.popscreen__title{--popscreen-title-fs: 26px}}@media (min-width:768px) and (max-width:1024px) and (min-height:991px){.popscreen__title{--popscreen-title-fs: 38px}}@media (min-width:1025px){.popscreen__title{--popscreen-title-fs: 50px}}@media (min-width:768px) and (max-height:990px){.popscreen__title{--popscreen-title-fs: 35px}}@media (min-width:768px){.popscreen__title{display:flex;flex-direction:column;justify-content:center}}.popscreen__title span{display:block;font-size:var(--popscreen-titleInc-fs, 1.95em);line-height:1;color:var(--secondaryColor)}.popscreen__image-wrapper{display:flex;justify-content:center;flex:1 1 100%}.popscreen__image-wrapper picture{display:flex;align-items:center;height:100%}.popscreen__image{max-width:var(--popscreen-secondImg-w, 60vw)}@media (max-width:519px){.popscreen__image{width:auto;max-height:100%}}@media (min-width:520px){.popscreen__image{--popscreen-secondImg-w: 240px;object-fit:cover}}@media (min-width:768px) and (max-height:990px){.popscreen__image{max-height:35vh;width:auto;height:100%}}.popscreen__footer{display:flex;align-items:center;flex-direction:column;width:100%}@media (max-width:767px){.popscreen__footer{padding-block:1.25em}}@media (min-width:768px) and (max-height:990px){.popscreen__footer{padding-block:1.25em}}@media (min-width:768px) and (min-height:991px){.popscreen__footer{padding-block:2.5em}}
/*!
 * #END sc_popscreen
 */
.btn{--button-bg-initial: var(--CTA);--button-bg-hover: hsl(var(--CTA_h), var(--CTA_s), calc(var(--CTA_l) - 3%))}@media (min-width:768px) and (max-height:900px){.popscreen .btn{--btn-fs: 28px}.popscreen--v02 .btn{--btn-fs: 20px}}.popscreen{--mainColor: var(--titleColor);--popscreen-logoWidthMob: 90px;--popscreen-logoWidthTab: 150px;--popscreen-logoWidthDesk: 170px}@media (max-width:374px){.popscreen{--popscreen-title-fs: 24px}}@media (min-width:375px) and (max-width:767px){.popscreen{--popscreen-title-fs: 26px}}@media (min-width:768px) and (max-width:1024px){.popscreen{--popscreen-title-fs: 38px}}@media (min-width:768px) and (max-height:900px){.popscreen{--popscreen-logoWidthDesk: 150px}}@media (min-width:1025px){.popscreen{--popscreen-title-fs: 50px}}.popscreen__close-btn,.popscreen__close-btn:hover{--mainColor: var(--titleColor)}@media (min-width:1025px){.popscreen__title{order:1;margin-block:.5em 0}}@media (max-width:519px){.popscreen__image{max-width:34vw}}@media (min-width:520px){.popscreen__image{max-width:190px}}@media (min-width:768px) and (max-height:900px){.popscreen__image{max-height:30vh}}.popscreen--v02>[class^=container]{transform:translateY(-2vh)}.popscreen--v02 .popscreen__title{order:1;margin-block:.5em}@media (min-width:768px) and (max-height:900px){.popscreen--v02 .popscreen__title{--popscreen-title-fs: 30px}}.popscreen--v02 .popscreen__image-wrapper--second{order:3}@media (max-width:519px){.popscreen--v02 .popscreen__image-wrapper--second .popscreen__image{--popscreen-secondImg-w: 60vw}}@media (min-width:520px){.popscreen--v02 .popscreen__image-wrapper--second .popscreen__image{--popscreen-secondImg-w: 300px}}@media (min-width:768px) and (max-height:900px){.popscreen--v02 .popscreen__image-wrapper--second .popscreen__image{max-height:26vh}}@media (max-width:519px){.popscreen--v02 .popscreen__image{max-width:34vw}}@media (min-width:520px){.popscreen--v02 .popscreen__image{max-width:190px}}@media (min-width:768px) and (max-height:900px){.popscreen--v02 .popscreen__image{max-height:22vh}}@media (max-width:1199px){.popscreen--v02 .popscreen__image--landscape{max-width:75vw}}@media (min-width:1200px){.popscreen--v02 .popscreen__image--landscape{max-width:25vw}}@media (min-width:768px) and (max-height:900px){.popscreen--v02 .popscreen__image--landscape{max-height:32vh}}.popscreen--v02 .popscreen__footer{padding-top:0}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFic3RyYWN0cy9hbmltYXRpb25zL19mYWRlcy5zY3NzIiwiYWJzdHJhY3RzL2FuaW1hdGlvbnMvX21vdGlvbi5zY3NzIiwiYWJzdHJhY3RzL2FuaW1hdGlvbnMvX3NjaGVtYS5zY3NzIiwiYWJzdHJhY3RzL3ZhcmlhYmxlcy90eXBvZ3JhcGh5LnNjc3MiLCJhYnN0cmFjdHMvdmFyaWFibGVzL19jb2xvcnMuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL19ncmlkLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9taXhpbnMvX2dyaWQuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL21peGlucy9fZ3JpZC1mcmFtZXdvcmsuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL190cmFuc2l0aW9ucy5zY3NzIiwidmVuZG9ycy9ib290c3RyYXAvbWl4aW5zL190cmFuc2l0aW9uLnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9fbW9kYWwuc2NzcyIsImxheW91dC9fbGF5b3V0LnNjc3MiLCJ2ZW5kb3JzL2Jvb3RzdHJhcC9taXhpbnMvX2JvcmRlci1yYWRpdXMuc2NzcyIsInZlbmRvcnMvYm9vdHN0cmFwL3V0aWxpdGllcy9fZmxleC5zY3NzIiwiYmFzZS9fcmVzZXQuc2NzcyIsImJhc2UvX3Jlc2V0LWV4dGVuZGVkLnNjc3MiLCJiYXNlL190eXBvZ3JhcGh5LnNjc3MiLCJiYXNlL19oZWxwZXItY2xhc3Nlcy5zY3NzIiwiYWJzdHJhY3RzL2Z1bmN0aW9ucy9faW5jbHVkZS1tZWRpYS5zY3NzIiwiY29tcG9uZW50cy9fYnV0dG9ucy5zY3NzIiwiY29tcG9uZW50cy9faWNvbnMuc2NzcyIsIi4uL2NvbXBvbmVudHMvZm9vdGVyL2luZGV4LnNjc3MiLCIuLi9jb21wb25lbnRzL2hlYWRlci9pbmRleC5zY3NzIiwiYWJzdHJhY3RzL21peGlucy9fZnVuY3Rpb25hbGl0eS5zY3NzIiwiLi4vY29tcG9uZW50cy9zY19DVEEvaW5kZXguc2NzcyIsIi4uL2NvbXBvbmVudHMvc2NfcG9wc2NyZWVuL2luZGV4LnNjc3MiLCJza2luL3NjX0NUQS9pbmRleC5zY3NzIiwic2tpbi9zY19wb3BzY3JlZW4vaW5kZXguc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQSxBQUVBLGlCQUNJLEUsQ0FFQSxFLENBRk8sUyxDQUNQLEcsQ0FBTyxXLEFBR1gseUJBQ0ksRSxDQUVBLEUsQ0FGTyxTLENBQ1AsRyxDQUFPLFcsQUFHWCxzQkFDSSxFLENBRUEsRSxDQUZPLFMsQ0FDUCxHLENBQU8sVyxBQUtYLGtCQUNJLEUsQ0FBTyxTLENBQ1AsRSxDQUFPLFcsQUFFWCwwQkFDSSxFLENBQU8sUyxDQUNQLEUsQ0FBTyxXLEFBRVgsdUJBQ0ksRSxDQUFPLFMsQ0FDUCxFLENBQU8sVyxBQUlYLHlCQUNJLEUsQ0FHQSxFLENBSE8sUyxDQUNQLEcsQ0FDQSxHLENBRE8sVyxBQUlYLGlDQUNJLEUsQ0FHQSxFLENBSE8sUyxDQUNQLEcsQ0FDQSxHLENBRE8sVyxBQUlYLDhCQUNJLEUsQ0FHQSxFLENBSE8sUyxDQUNQLEcsQ0FDQSxHLENBRE8sVyxBQU1YLHdCQUNJLEUsQ0FFQSxFLENBRk8sUyxDQUNQLEcsQ0FBTyxXLEFBR1gsZ0NBQ0ksRSxDQUVBLEUsQ0FGTyxTLENBQ1AsRyxDQUFPLFcsQUFHWCw2QkFDSSxFLENBRUEsRSxDQUZPLFMsQ0FDUCxHLENBQU8sVyxBQU1YLGtCQUNJLEUsQ0FBTyxhLENBQWdCLFMsQ0FDdkIsRSxDQUFNLFMsQ0FDTixFLENBQU8sVyxBQUVYLDBCQUNJLEUsQ0FBTyxhLENBQWdCLFMsQ0FDdkIsRSxDQUFNLFMsQ0FDTixFLENBQU8sVyxBQUVYLHVCQUNJLEUsQ0FBTyxhLENBQWlCLFMsQ0FDeEIsRSxDQUFNLFMsQ0FDTixFLENBQU8sVyxBQ2xGWCxnQkFDSSxFLENBRUEsRSxDQUZPLHVCLENBQ1AsRyxDQUFPLDZCLEFBR1gsd0JBQ0ksRSxDQUVBLEUsQ0FGTyx1QixDQUNQLEcsQ0FBTyw2QixBQUdYLHFCQUNJLEUsQ0FFQSxFLENBRk8sdUIsQ0FDUCxHLENBQU8sNkIsQUFLWCxrQkFDSSxFLENBQU8sd0IsQ0FDUCxFLENBQU8seUIsQUFFWCwwQkFDSSxFLENBQU8sd0IsQ0FDUCxFLENBQU8seUIsQUFFWCx1QkFDSSxFLENBQU8sd0IsQ0FDUCxFLENBQU8seUIsQUFJWCxrQkFDSSxFLENBQU8sdUIsQ0FDUCxFLENBQU8sd0IsQUFFWCwwQkFDSSxFLENBQU8sdUIsQ0FDUCxFLENBQU8sd0IsQUFFWCx1QkFDSSxFLENBQU8sdUIsQ0FDUCxFLENBQU8sd0IsQUFJWCxpQkFDSSxFLENBRUEsRSxDQUZPLGtCLENBQ1AsRyxDQUFPLG9CLEFBR1gseUJBQ0ksRSxDQUVBLEUsQ0FGTyxrQixDQUNQLEcsQ0FBTyxvQixBQUdYLHNCQUNJLEUsQ0FFQSxFLENBRk8sa0IsQ0FDUCxHLENBQU8sb0IsQUFLWCxnQkFDSSxFLENBRUEsRyxDQUVBLEUsQ0FKTyx1QixDQUNQLEcsQ0FBTywyQixDQUVQLEcsQ0FBTyw0QixBQUdYLHdCQUNJLEUsQ0FFQSxHLENBRUEsRSxDQUpPLHVCLENBQ1AsRyxDQUFPLDJCLENBRVAsRyxDQUFPLDRCLEFBR1gscUJBQ0ksRSxDQUVBLEcsQ0FFQSxFLENBSk8sdUIsQ0FDUCxHLENBQU8sMkIsQ0FFUCxHLENBQU8sNEIsQUFLWCxpQkFDSSxFLENBR0EsRSxDQUhPLHVCLENBQ1AsRyxDQUFPLDJCLENBQ1AsRyxDQUFPLDRCLEFBR1gseUJBQ0ksRSxDQUdBLEUsQ0FITyx1QixDQUNQLEcsQ0FBTywyQixDQUNQLEcsQ0FBTyw0QixBQUdYLHNCQUNJLEUsQ0FHQSxFLENBSE8sdUIsQ0FDUCxHLENBQU8sMkIsQ0FDUCxHLENBQU8sNEIsQUFLWCxxQkFDSSxFLENBQU8sa0IsQ0FDUCxFLENBQU8sb0IsQUFFWCw2QkFDSSxFLENBQU8sa0IsQ0FDUCxFLENBQU8sb0IsQUFFWCwwQkFDSSxFLENBQU8sa0IsQ0FDUCxFLENBQU8sb0IsQUFJWCwwQkFDSSxFLENBQU8sc0IsQ0FDUCxFLENBQU8seUIsQUFFWCxrQ0FDSSxFLENBQU8sc0IsQ0FDUCxFLENBQU8seUIsQUFFWCwrQkFDSSxFLENBQU8sc0IsQ0FDUCxFLENBQU8seUIsQUFJWCx1QkFDSSxFLENBR0EsRSxDQUhPLHNCLENBQ1AsRSxDQUFPLHNCLENBQ1AsRyxDQUFPLHlCLEFBR1gsK0JBQ0ksRSxDQUdBLEUsQ0FITyxzQixDQUNQLEUsQ0FBTyxzQixDQUNQLEcsQ0FBTyx5QixBQUdYLDRCQUNJLEUsQ0FHQSxFLENBSE8sc0IsQ0FDUCxFLENBQU8sc0IsQ0FDUCxHLENBQU8seUIsQUFLWCxrQkFDSSxFLENBQ0EsRyxDQUVBLEcsQ0FFQSxHLENBQ0EsRSxDQU5PLHVCLENBRVAsRyxDQUFPLDJCLENBRVAsRyxDQUFPLDZCLEFBSVgsMEJBQ0ksRSxDQUNBLEcsQ0FFQSxHLENBRUEsRyxDQUNBLEUsQ0FOTyx1QixDQUVQLEcsQ0FBTywyQixDQUVQLEcsQ0FBTyw2QixBQUlYLHVCQUNJLEUsQ0FDQSxHLENBRUEsRyxDQUVBLEcsQ0FDQSxFLENBTk8sdUIsQ0FFUCxHLENBQU8sMkIsQ0FFUCxHLENBQU8sNkIsQUFNWCxrQ0FDSSxFLENBS0EsRyxDQUNBLEUsQ0FOTyxrQyxDQUNQLEcsQ0FFQSxHLENBRk8sdUMsQ0FDUCxHLENBQU8sMkMsQ0FFUCxHLENBQU8sd0MsQUFJWCwwQ0FDSSxFLENBS0EsRyxDQUNBLEUsQ0FOTyxrQyxDQUNQLEcsQ0FFQSxHLENBRk8sdUMsQ0FDUCxHLENBQU8sMkMsQ0FFUCxHLENBQU8sd0MsQUFJWCx1Q0FDSSxFLENBS0EsRyxDQUNBLEUsQ0FOTyxrQyxDQUNQLEcsQ0FFQSxHLENBRk8sdUMsQ0FDUCxHLENBQU8sMkMsQ0FFUCxHLENBQU8sd0MsQUMzTVgsMEJBQ0ksRSxDQUNBLEcsQ0FETyxvQixDQUVQLEUsQ0FBTyw4QixBQUVYLGtDQUNJLEUsQ0FDQSxHLENBRE8sb0IsQ0FFUCxFLENBQU8sOEIsQUFFWCwrQkFDSSxFLENBQ0EsRyxDQURPLG9CLENBRVAsRSxDQUFPLDhCLEFDVlgsV0FDSSx1QixDQUNBLGtELENBQ0EsZ0IsQUFHSixXQUNJLHVCLENBQ0Esb0QsQ0FDQSxnQixBQUdKLFdBQ0ksdUIsQ0FDQSxxRCxDQUNBLGdCLEFBR0osV0FDSSx1QixDQUNBLGlELENBQ0EsZ0JDM0JKLEssQ0FDSSwrQixDQUNBLGtCLENBQ0Esa0IsQ0FDQSxrQixDQUNBLHFDLENBQ0EsdUIsQ0FDQSx3QixDQUNBLHVCLENBRUEsNEIsQ0FDQSxpQixDQUNBLGtCLENBQ0Esa0IsQ0FFQSwyQixDQUNBLGdCLENBQ0EsaUIsQ0FDQSxpQixDQUVBLGlDLENBQ0EsbUIsQ0FDQSxxQixDQUNBLG9CLENBRUEseUIsQ0FDQSxXLENBQ0EsYSxDQUNBLFk7Ozs7Ozs7QUN2QkYsVSxDQ0RBLFUsQ0FDQSxrQixDQUNBLGlCLENBQ0EsaUIsQ0FDQSxnQixDQ21ERSx5QkZ0REYsVSxDQ1dJLGlCLEFDMkNGLHlCRnRERixVLENDV0ksaUIsQUMyQ0YseUJGdERGLFUsQ0NXSSxpQixBQzJDRiwwQkZ0REYsVSxDQ1dJLGtCRExKLGdCLENBQUEsYSxDQUFBLGEsQ0FBQSxhLENBQUEsYSxDQ1BBLFUsQ0FDQSxrQixDQUNBLGlCLENBQ0EsaUIsQ0FDQSxnQixDQ21ERSx5QkZyQ0UsVSxDQUFBLGEsQ0FDRSxpQixBRW9DSix5QkZyQ0UsVSxDQUFBLGEsQ0FBQSxhLENBQ0UsaUIsQUVvQ0oseUJGckNFLFUsQ0FBQSxhLENBQUEsYSxDQUFBLGEsQ0FDRSxpQixBRW9DSiwwQkZyQ0UsVSxDQUFBLGEsQ0FBQSxhLENBQUEsYSxDQUFBLGEsQ0FDRSxrQkE0Qk4sSSxDQzdCQSxZLENBQ0EsYyxDQUNBLGtCLENBQ0EsaUIsQ0RnQ0EsVyxDQUNFLGMsQ0FDQSxhLENBRUEsZ0IsQ0FBQSx5QixDQUVFLGUsQ0FDQSxjLENHMURKLEksQ0FBQSxPLENBQUEsUyxDQUFBLFUsQ0FBQSxVLENBQUEsVSxDQUFBLFMsQ0FBQSxTLENBQUEsUyxDQUFBLFMsQ0FBQSxTLENBQUEsUyxDQUFBLFMsQ0FBQSxTLENBQUEsWSxDQUFBLE8sQ0FBQSxTLENBQUEsVSxDQUFBLFUsQ0FBQSxVLENBQUEsUyxDQUFBLFMsQ0FBQSxTLENBQUEsUyxDQUFBLFMsQ0FBQSxTLENBQUEsUyxDQUFBLFMsQ0FBQSxZLENBQUEsTyxDQUFBLFMsQ0FBQSxVLENBQUEsVSxDQUFBLFUsQ0FBQSxTLENBQUEsUyxDQUFBLFMsQ0FBQSxTLENBQUEsUyxDQUFBLFMsQ0FBQSxTLENBQUEsUyxDQUFBLFksQ0FBQSxPLENBQUEsUyxDQUFBLFUsQ0FBQSxVLENBQUEsVSxDQUFBLFMsQ0FBQSxTLENBQUEsUyxDQUFBLFMsQ0FBQSxTLENBQUEsUyxDQUFBLFMsQ0FBQSxTLENBQUEsWSxDQUNFLGlCLENBQ0EsVSxDQUNBLGtCLENBQ0EsaUIsQ0FKRixTLENBQ0UsaUIsQ0FFQSxrQixDQUNBLGlCLENBSkYsTSxDQUFBLE8sQ0FBQSxPLENBQUEsTyxDQUFBLE0sQ0FBQSxNLENBQUEsTSxDQUFBLE0sQ0FBQSxNLENBQUEsTSxDQUFBLE0sQ0FBQSxNLENBQ0UsaUIsQ0FDQSxVLENBQ0Esa0IsQ0FDQSxpQixDQXNCRSxJLENBQ0UsWSxDQUNBLFcsQ0FDQSxXLENBQ0EsYyxDRjJCTixhLENBQ0UsYSxDQUNBLGMsQ0FGRixhLENBQ0UsWSxDQUNBLGEsQ0FGRixhLENBQ0UsdUIsQ0FDQSx3QixDQUZGLGEsQ0FDRSxZLENBQ0EsYSxDQUZGLGEsQ0FDRSxZLENBQ0EsYSxDQUZGLGEsQ0FDRSx1QixDQUNBLHdCLENFbEJFLFMsQ0ZBSixhLENBQ0EsVSxDQUNBLGMsQ0VJUSxNLENGZFIsc0IsQ0FJQSx1QixDRVVRLE0sQ0ZkUix1QixDQUlBLHdCLENFVVEsTSxDRmRSLFksQ0FJQSxhLENFVVEsTSxDRmRSLHVCLENBSUEsd0IsQ0VVUSxNLENGZFIsdUIsQ0FJQSx3QixDRVVRLE0sQ0ZkUixZLENBSUEsYSxDRVVRLE0sQ0ZkUix1QixDQUlBLHdCLENFVVEsTSxDRmRSLHVCLENBSUEsd0IsQ0VVUSxNLENGZFIsWSxDQUlBLGEsQ0VVUSxPLENGZFIsdUIsQ0FJQSx3QixDRVVRLE8sQ0ZkUix1QixDQUlBLHdCLENFVVEsTyxDRmRSLGEsQ0FJQSxjLENFZ0JJLFksQ0FBd0IsUSxDQUV4QixXLENBQXVCLFEsQ0FHckIsUSxDQUF3QixPLENBQXhCLFEsQ0FBd0IsTyxDQUF4QixRLENBQXdCLE8sQ0FBeEIsUSxDQUF3QixPLENBQXhCLFEsQ0FBd0IsTyxDQUF4QixRLENBQXdCLE8sQ0FBeEIsUSxDQUF3QixPLENBQXhCLFEsQ0FBd0IsTyxDQUF4QixRLENBQXdCLE8sQ0FBeEIsUSxDQUF3QixPLENBQXhCLFMsQ0FBd0IsUSxDQUF4QixTLENBQXdCLFEsQ0FBeEIsUyxDQUF3QixRLENBT3BCLFMsQ0ZqQlYseUIsQ0VpQlUsUyxDRmpCViwwQixDRWlCVSxTLENGakJWLGUsQ0VpQlUsUyxDRmpCViwwQixDRWlCVSxTLENGakJWLDBCLENFaUJVLFMsQ0ZqQlYsZSxDRWlCVSxTLENGakJWLDBCLENFaUJVLFMsQ0ZqQlYsMEIsQ0VpQlUsUyxDRmpCVixlLENFaUJVLFUsQ0ZqQlYsMEIsQ0VpQlUsVSxDRmpCViwwQixDQ0tFLHlCQzNCRSxPLENBQ0UsWSxDQUNBLFcsQ0FDQSxXLENBQ0EsYyxDRjJCTixnQixDQUNFLGEsQ0FDQSxjLENBRkYsZ0IsQ0FDRSxZLENBQ0EsYSxDQUZGLGdCLENBQ0UsdUIsQ0FDQSx3QixDQUZGLGdCLENBQ0UsWSxDQUNBLGEsQ0FGRixnQixDQUNFLFksQ0FDQSxhLENBRkYsZ0IsQ0FDRSx1QixDQUNBLHdCLENFbEJFLFksQ0ZBSixhLENBQ0EsVSxDQUNBLGMsQ0VJUSxTLENGZFIsc0IsQ0FJQSx1QixDRVVRLFMsQ0ZkUix1QixDQUlBLHdCLENFVVEsUyxDRmRSLFksQ0FJQSxhLENFVVEsUyxDRmRSLHVCLENBSUEsd0IsQ0VVUSxTLENGZFIsdUIsQ0FJQSx3QixDRVVRLFMsQ0ZkUixZLENBSUEsYSxDRVVRLFMsQ0ZkUix1QixDQUlBLHdCLENFVVEsUyxDRmRSLHVCLENBSUEsd0IsQ0VVUSxTLENGZFIsWSxDQUlBLGEsQ0VVUSxVLENGZFIsdUIsQ0FJQSx3QixDRVVRLFUsQ0ZkUix1QixDQUlBLHdCLENFVVEsVSxDRmRSLGEsQ0FJQSxjLENFZ0JJLGUsQ0FBd0IsUSxDQUV4QixjLENBQXVCLFEsQ0FHckIsVyxDQUF3QixPLENBQXhCLFcsQ0FBd0IsTyxDQUF4QixXLENBQXdCLE8sQ0FBeEIsVyxDQUF3QixPLENBQXhCLFcsQ0FBd0IsTyxDQUF4QixXLENBQXdCLE8sQ0FBeEIsVyxDQUF3QixPLENBQXhCLFcsQ0FBd0IsTyxDQUF4QixXLENBQXdCLE8sQ0FBeEIsVyxDQUF3QixPLENBQXhCLFksQ0FBd0IsUSxDQUF4QixZLENBQXdCLFEsQ0FBeEIsWSxDQUF3QixRLENBT3BCLFksQ0ZqQlYsYSxDRWlCVSxZLENGakJWLHlCLENFaUJVLFksQ0ZqQlYsMEIsQ0VpQlUsWSxDRmpCVixlLENFaUJVLFksQ0ZqQlYsMEIsQ0VpQlUsWSxDRmpCViwwQixDRWlCVSxZLENGakJWLGUsQ0VpQlUsWSxDRmpCViwwQixDRWlCVSxZLENGakJWLDBCLENFaUJVLFksQ0ZqQlYsZSxDRWlCVSxhLENGakJWLDBCLENFaUJVLGEsQ0ZqQlYsNEIsQUNLRSx5QkMzQkUsTyxDQUNFLFksQ0FDQSxXLENBQ0EsVyxDQUNBLGMsQ0YyQk4sZ0IsQ0FDRSxhLENBQ0EsYyxDQUZGLGdCLENBQ0UsWSxDQUNBLGEsQ0FGRixnQixDQUNFLHVCLENBQ0Esd0IsQ0FGRixnQixDQUNFLFksQ0FDQSxhLENBRkYsZ0IsQ0FDRSxZLENBQ0EsYSxDQUZGLGdCLENBQ0UsdUIsQ0FDQSx3QixDRWxCRSxZLENGQUosYSxDQUNBLFUsQ0FDQSxjLENFSVEsUyxDRmRSLHNCLENBSUEsdUIsQ0VVUSxTLENGZFIsdUIsQ0FJQSx3QixDRVVRLFMsQ0ZkUixZLENBSUEsYSxDRVVRLFMsQ0ZkUix1QixDQUlBLHdCLENFVVEsUyxDRmRSLHVCLENBSUEsd0IsQ0VVUSxTLENGZFIsWSxDQUlBLGEsQ0VVUSxTLENGZFIsdUIsQ0FJQSx3QixDRVVRLFMsQ0ZkUix1QixDQUlBLHdCLENFVVEsUyxDRmRSLFksQ0FJQSxhLENFVVEsVSxDRmRSLHVCLENBSUEsd0IsQ0VVUSxVLENGZFIsdUIsQ0FJQSx3QixDRVVRLFUsQ0ZkUixhLENBSUEsYyxDRWdCSSxlLENBQXdCLFEsQ0FFeEIsYyxDQUF1QixRLENBR3JCLFcsQ0FBd0IsTyxDQUF4QixXLENBQXdCLE8sQ0FBeEIsVyxDQUF3QixPLENBQXhCLFcsQ0FBd0IsTyxDQUF4QixXLENBQXdCLE8sQ0FBeEIsVyxDQUF3QixPLENBQXhCLFcsQ0FBd0IsTyxDQUF4QixXLENBQXdCLE8sQ0FBeEIsVyxDQUF3QixPLENBQXhCLFcsQ0FBd0IsTyxDQUF4QixZLENBQXdCLFEsQ0FBeEIsWSxDQUF3QixRLENBQXhCLFksQ0FBd0IsUSxDQU9wQixZLENGakJWLGEsQ0VpQlUsWSxDRmpCVix5QixDRWlCVSxZLENGakJWLDBCLENFaUJVLFksQ0ZqQlYsZSxDRWlCVSxZLENGakJWLDBCLENFaUJVLFksQ0ZqQlYsMEIsQ0VpQlUsWSxDRmpCVixlLENFaUJVLFksQ0ZqQlYsMEIsQ0VpQlUsWSxDRmpCViwwQixDRWlCVSxZLENGakJWLGUsQ0VpQlUsYSxDRmpCViwwQixDRWlCVSxhLENGakJWLDRCLEFDS0UseUJDM0JFLE8sQ0FDRSxZLENBQ0EsVyxDQUNBLFcsQ0FDQSxjLENGMkJOLGdCLENBQ0UsYSxDQUNBLGMsQ0FGRixnQixDQUNFLFksQ0FDQSxhLENBRkYsZ0IsQ0FDRSx1QixDQUNBLHdCLENBRkYsZ0IsQ0FDRSxZLENBQ0EsYSxDQUZGLGdCLENBQ0UsWSxDQUNBLGEsQ0FGRixnQixDQUNFLHVCLENBQ0Esd0IsQ0VsQkUsWSxDRkFKLGEsQ0FDQSxVLENBQ0EsYyxDRUlRLFMsQ0ZkUixzQixDQUlBLHVCLENFVVEsUyxDRmRSLHVCLENBSUEsd0IsQ0VVUSxTLENGZFIsWSxDQUlBLGEsQ0VVUSxTLENGZFIsdUIsQ0FJQSx3QixDRVVRLFMsQ0ZkUix1QixDQUlBLHdCLENFVVEsUyxDRmRSLFksQ0FJQSxhLENFVVEsUyxDRmRSLHVCLENBSUEsd0IsQ0VVUSxTLENGZFIsdUIsQ0FJQSx3QixDRVVRLFMsQ0ZkUixZLENBSUEsYSxDRVVRLFUsQ0ZkUix1QixDQUlBLHdCLENFVVEsVSxDRmRSLHVCLENBSUEsd0IsQ0VVUSxVLENGZFIsYSxDQUlBLGMsQ0VnQkksZSxDQUF3QixRLENBRXhCLGMsQ0FBdUIsUSxDQUdyQixXLENBQXdCLE8sQ0FBeEIsVyxDQUF3QixPLENBQXhCLFcsQ0FBd0IsTyxDQUF4QixXLENBQXdCLE8sQ0FBeEIsVyxDQUF3QixPLENBQXhCLFcsQ0FBd0IsTyxDQUF4QixXLENBQXdCLE8sQ0FBeEIsVyxDQUF3QixPLENBQXhCLFcsQ0FBd0IsTyxDQUF4QixXLENBQXdCLE8sQ0FBeEIsWSxDQUF3QixRLENBQXhCLFksQ0FBd0IsUSxDQUF4QixZLENBQXdCLFEsQ0FPcEIsWSxDRmpCVixhLENFaUJVLFksQ0ZqQlYseUIsQ0VpQlUsWSxDRmpCViwwQixDRWlCVSxZLENGakJWLGUsQ0VpQlUsWSxDRmpCViwwQixDRWlCVSxZLENGakJWLDBCLENFaUJVLFksQ0ZqQlYsZSxDRWlCVSxZLENGakJWLDBCLENFaUJVLFksQ0ZqQlYsMEIsQ0VpQlUsWSxDRmpCVixlLENFaUJVLGEsQ0ZqQlYsMEIsQ0VpQlUsYSxDRmpCViw0QixBQ0tFLDBCQzNCRSxPLENBQ0UsWSxDQUNBLFcsQ0FDQSxXLENBQ0EsYyxDRjJCTixnQixDQUNFLGEsQ0FDQSxjLENBRkYsZ0IsQ0FDRSxZLENBQ0EsYSxDQUZGLGdCLENBQ0UsdUIsQ0FDQSx3QixDQUZGLGdCLENBQ0UsWSxDQUNBLGEsQ0FGRixnQixDQUNFLFksQ0FDQSxhLENBRkYsZ0IsQ0FDRSx1QixDQUNBLHdCLENFbEJFLFksQ0ZBSixhLENBQ0EsVSxDQUNBLGMsQ0VJUSxTLENGZFIsc0IsQ0FJQSx1QixDRVVRLFMsQ0ZkUix1QixDQUlBLHdCLENFVVEsUyxDRmRSLFksQ0FJQSxhLENFVVEsUyxDRmRSLHVCLENBSUEsd0IsQ0VVUSxTLENGZFIsdUIsQ0FJQSx3QixDRVVRLFMsQ0ZkUixZLENBSUEsYSxDRVVRLFMsQ0ZkUix1QixDQUlBLHdCLENFVVEsUyxDRmRSLHVCLENBSUEsd0IsQ0VVUSxTLENGZFIsWSxDQUlBLGEsQ0VVUSxVLENGZFIsdUIsQ0FJQSx3QixDRVVRLFUsQ0ZkUix1QixDQUlBLHdCLENFVVEsVSxDRmRSLGEsQ0FJQSxjLENFZ0JJLGUsQ0FBd0IsUSxDQUV4QixjLENBQXVCLFEsQ0FHckIsVyxDQUF3QixPLENBQXhCLFcsQ0FBd0IsTyxDQUF4QixXLENBQXdCLE8sQ0FBeEIsVyxDQUF3QixPLENBQXhCLFcsQ0FBd0IsTyxDQUF4QixXLENBQXdCLE8sQ0FBeEIsVyxDQUF3QixPLENBQXhCLFcsQ0FBd0IsTyxDQUF4QixXLENBQXdCLE8sQ0FBeEIsVyxDQUF3QixPLENBQXhCLFksQ0FBd0IsUSxDQUF4QixZLENBQXdCLFEsQ0FBeEIsWSxDQUF3QixRLENBT3BCLFksQ0ZqQlYsYSxDRWlCVSxZLENGakJWLHlCLENFaUJVLFksQ0ZqQlYsMEIsQ0VpQlUsWSxDRmpCVixlLENFaUJVLFksQ0ZqQlYsMEIsQ0VpQlUsWSxDRmpCViwwQixDRWlCVSxZLENGakJWLGUsQ0VpQlUsWSxDRmpCViwwQixDRWlCVSxZLENGakJWLDBCLENFaUJVLFksQ0ZqQlYsZSxDRWlCVSxhLENGakJWLDBCLENFaUJVLGEsQ0ZqQlYsNEJHdkRGLEssQ0NnQk0sOEIsQ0FJQSx1Q0RwQk4sSyxDQ3FCUSxpQixBRGxCTixVQUFBLE0sQ0FDRSxTLENBS0YsY0FBQSxNLENBQ0UsWSxDQUlKLFcsQ0FDRSxpQixDQUNBLFEsQ0FDQSxlLENDREksMkIsQ0FJQSx1Q0ROTixXLENDT1EsaUJDSlIsTSxDQVhBLFcsQ0NRQSxZLENETkUsZSxDQUVBLGtCLENBQ0UsaUIsQ0FDQSxlLENBS0osTSxDQUNFLGMsQ0FDQSxLLENBQ0EsTSxDQUNBLFksQ0FDQSxZLENBQ0EsVSxDQUNBLFcsQ0FJQSxTLENBT0YsYSxDQUNFLGlCLENBQ0EsVSxDQUNBLFksQ0FFQSxtQixDQUdBLHlCLENEM0JJLGlDLENDNkJGLDRCLENEekJFLHVDQ3VCSix5QixDRHRCTSxpQkMwQk4seUIsQ0FDRSxjLENBSUYsaUMsQ0FDRSxxQixDQUlKLHdCLENBQ0UsWSxDQUNBLDRCLENBRUEsdUMsQ0FDRSw2QixDQUNBLGUsQ0FHRixzQyxDQUFBLHNDLENBRUUsYSxDQUdGLG9DLENBQ0UsZSxDQUlKLHNCLENBQ0UsWSxDQUNBLGtCLENBQ0EsNEIsQ0FHQSw4QixDQUNFLGEsQ0FDQSx5QixDQUNBLGtCLENBQ0EsVSxDQUlGLDhDLENBQ0UscUIsQ0FDQSxzQixDQUNBLFcsQ0FFQSw2RCxDQUNFLGUsQ0FHRixzRCxDQUNFLFksQ0FNTixjLENBQ0UsaUIsQ0FDQSxZLENBQ0EscUIsQ0FDQSxVLENBR0EsbUIsQ0FDQSxxQixDQUNBLDJCLENBQ0EsK0IsQ0VsR0UsbUIsQ0ZzR0YsUyxDQUlGLGUsQ0FDRSxjLENBQ0EsSyxDQUNBLE0sQ0FDQSxZLENBQ0EsVyxDQUNBLFksQ0FDQSxxQixDQUdBLG9CLENBQVMsUyxDQUNULG9CLENBQVMsVSxDQUtYLGEsQ0FDRSxZLENBQ0Esc0IsQ0FDQSw2QixDQUNBLFksQ0FDQSwrQixDRXRIRSx3QyxDQUNBLHlDLENGd0hGLG9CLENBQ0UsWSxDQUVBLDZCLENBS0osWSxDQUNFLGUsQ0FDQSxlLENBS0YsVyxDQUNFLGlCLENBR0EsYSxDQUNBLFksQ0FJRixhLENBQ0UsWSxDQUNBLGMsQ0FDQSxrQixDQUNBLHdCLENBQ0EsYyxDQUNBLDRCLENFeklFLDRDLENBQ0EsMkMsQ0YrSUYsZSxDQUNFLGEsQ0FLSix3QixDQUNFLGlCLENBQ0EsVyxDQUNBLFUsQ0FDQSxXLENBQ0EsZSxDSnhJRSx5Qkk4SUYsYSxDQUNFLGUsQ0FDQSxtQixDQUdGLHdCLENBQ0UsOEIsQ0FFQSx1QyxDQUNFLCtCLENBSUosc0IsQ0FDRSw4QixDQUVBLDhCLENBQ0UsMkIsQ0FDQSxrQixDQVFKLFMsQ0FBWSxpQixBSnhLVix5Qkk0S0YsUyxDQUFBLFMsQ0FFRSxpQixBSjlLQSwwQkltTEYsUyxDQUFZLGtCR3JPVixTLENBQWdDLDRCLENBQ2hDLFksQ0FBZ0MsK0IsQ0FDaEMsaUIsQ0FBZ0Msb0MsQ0FDaEMsb0IsQ0FBZ0MsdUMsQ0FFaEMsVSxDQUE4Qix3QixDQUM5QixZLENBQThCLDBCLENBQzlCLGtCLENBQThCLGdDLENBQzlCLFUsQ0FBOEIsdUIsQ0FDOUIsWSxDQUE4QixxQixDQUM5QixZLENBQThCLHFCLENBQzlCLGMsQ0FBOEIsdUIsQ0FDOUIsYyxDQUE4Qix1QixDQUU5QixzQixDQUFvQyxvQyxDQUNwQyxvQixDQUFvQyxrQyxDQUNwQyx1QixDQUFvQyxnQyxDQUNwQyx3QixDQUFvQyx1QyxDQUNwQyx1QixDQUFvQyxzQyxDQUVwQyxrQixDQUFpQyxnQyxDQUNqQyxnQixDQUFpQyw4QixDQUNqQyxtQixDQUFpQyw0QixDQUNqQyxxQixDQUFpQyw4QixDQUNqQyxvQixDQUFpQyw2QixDQUVqQyxvQixDQUFrQyxrQyxDQUNsQyxrQixDQUFrQyxnQyxDQUNsQyxxQixDQUFrQyw4QixDQUNsQyxzQixDQUFrQyxxQyxDQUNsQyxxQixDQUFrQyxvQyxDQUNsQyxzQixDQUFrQywrQixDQUVsQyxnQixDQUFnQyx5QixDQUNoQyxpQixDQUFnQywrQixDQUNoQyxlLENBQWdDLDZCLENBQ2hDLGtCLENBQWdDLDJCLENBQ2hDLG9CLENBQWdDLDZCLENBQ2hDLG1CLENBQWdDLDRCLENQWWhDLHlCT2xEQSxZLENBQWdDLDRCLENBQ2hDLGUsQ0FBZ0MsK0IsQ0FDaEMsb0IsQ0FBZ0Msb0MsQ0FDaEMsdUIsQ0FBZ0MsdUMsQ0FFaEMsYSxDQUE4Qix3QixDQUM5QixlLENBQThCLDBCLENBQzlCLHFCLENBQThCLGdDLENBQzlCLGEsQ0FBOEIsdUIsQ0FDOUIsZSxDQUE4QixxQixDQUM5QixlLENBQThCLHFCLENBQzlCLGlCLENBQThCLHVCLENBQzlCLGlCLENBQThCLHVCLENBRTlCLHlCLENBQW9DLG9DLENBQ3BDLHVCLENBQW9DLGtDLENBQ3BDLDBCLENBQW9DLGdDLENBQ3BDLDJCLENBQW9DLHVDLENBQ3BDLDBCLENBQW9DLHNDLENBRXBDLHFCLENBQWlDLGdDLENBQ2pDLG1CLENBQWlDLDhCLENBQ2pDLHNCLENBQWlDLDRCLENBQ2pDLHdCLENBQWlDLDhCLENBQ2pDLHVCLENBQWlDLDZCLENBRWpDLHVCLENBQWtDLGtDLENBQ2xDLHFCLENBQWtDLGdDLENBQ2xDLHdCLENBQWtDLDhCLENBQ2xDLHlCLENBQWtDLHFDLENBQ2xDLHdCLENBQWtDLG9DLENBQ2xDLHlCLENBQWtDLCtCLENBRWxDLG1CLENBQWdDLHlCLENBQ2hDLG9CLENBQWdDLCtCLENBQ2hDLGtCLENBQWdDLDZCLENBQ2hDLHFCLENBQWdDLDJCLENBQ2hDLHVCLENBQWdDLDZCLENBQ2hDLHNCLENBQWdDLDhCLEFQWWhDLHlCT2xEQSxZLENBQWdDLDRCLENBQ2hDLGUsQ0FBZ0MsK0IsQ0FDaEMsb0IsQ0FBZ0Msb0MsQ0FDaEMsdUIsQ0FBZ0MsdUMsQ0FFaEMsYSxDQUE4Qix3QixDQUM5QixlLENBQThCLDBCLENBQzlCLHFCLENBQThCLGdDLENBQzlCLGEsQ0FBOEIsdUIsQ0FDOUIsZSxDQUE4QixxQixDQUM5QixlLENBQThCLHFCLENBQzlCLGlCLENBQThCLHVCLENBQzlCLGlCLENBQThCLHVCLENBRTlCLHlCLENBQW9DLG9DLENBQ3BDLHVCLENBQW9DLGtDLENBQ3BDLDBCLENBQW9DLGdDLENBQ3BDLDJCLENBQW9DLHVDLENBQ3BDLDBCLENBQW9DLHNDLENBRXBDLHFCLENBQWlDLGdDLENBQ2pDLG1CLENBQWlDLDhCLENBQ2pDLHNCLENBQWlDLDRCLENBQ2pDLHdCLENBQWlDLDhCLENBQ2pDLHVCLENBQWlDLDZCLENBRWpDLHVCLENBQWtDLGtDLENBQ2xDLHFCLENBQWtDLGdDLENBQ2xDLHdCLENBQWtDLDhCLENBQ2xDLHlCLENBQWtDLHFDLENBQ2xDLHdCLENBQWtDLG9DLENBQ2xDLHlCLENBQWtDLCtCLENBRWxDLG1CLENBQWdDLHlCLENBQ2hDLG9CLENBQWdDLCtCLENBQ2hDLGtCLENBQWdDLDZCLENBQ2hDLHFCLENBQWdDLDJCLENBQ2hDLHVCLENBQWdDLDZCLENBQ2hDLHNCLENBQWdDLDhCLEFQWWhDLHlCT2xEQSxZLENBQWdDLDRCLENBQ2hDLGUsQ0FBZ0MsK0IsQ0FDaEMsb0IsQ0FBZ0Msb0MsQ0FDaEMsdUIsQ0FBZ0MsdUMsQ0FFaEMsYSxDQUE4Qix3QixDQUM5QixlLENBQThCLDBCLENBQzlCLHFCLENBQThCLGdDLENBQzlCLGEsQ0FBOEIsdUIsQ0FDOUIsZSxDQUE4QixxQixDQUM5QixlLENBQThCLHFCLENBQzlCLGlCLENBQThCLHVCLENBQzlCLGlCLENBQThCLHVCLENBRTlCLHlCLENBQW9DLG9DLENBQ3BDLHVCLENBQW9DLGtDLENBQ3BDLDBCLENBQW9DLGdDLENBQ3BDLDJCLENBQW9DLHVDLENBQ3BDLDBCLENBQW9DLHNDLENBRXBDLHFCLENBQWlDLGdDLENBQ2pDLG1CLENBQWlDLDhCLENBQ2pDLHNCLENBQWlDLDRCLENBQ2pDLHdCLENBQWlDLDhCLENBQ2pDLHVCLENBQWlDLDZCLENBRWpDLHVCLENBQWtDLGtDLENBQ2xDLHFCLENBQWtDLGdDLENBQ2xDLHdCLENBQWtDLDhCLENBQ2xDLHlCLENBQWtDLHFDLENBQ2xDLHdCLENBQWtDLG9DLENBQ2xDLHlCLENBQWtDLCtCLENBRWxDLG1CLENBQWdDLHlCLENBQ2hDLG9CLENBQWdDLCtCLENBQ2hDLGtCLENBQWdDLDZCLENBQ2hDLHFCLENBQWdDLDJCLENBQ2hDLHVCLENBQWdDLDZCLENBQ2hDLHNCLENBQWdDLDhCLEFQWWhDLDBCT2xEQSxZLENBQWdDLDRCLENBQ2hDLGUsQ0FBZ0MsK0IsQ0FDaEMsb0IsQ0FBZ0Msb0MsQ0FDaEMsdUIsQ0FBZ0MsdUMsQ0FFaEMsYSxDQUE4Qix3QixDQUM5QixlLENBQThCLDBCLENBQzlCLHFCLENBQThCLGdDLENBQzlCLGEsQ0FBOEIsdUIsQ0FDOUIsZSxDQUE4QixxQixDQUM5QixlLENBQThCLHFCLENBQzlCLGlCLENBQThCLHVCLENBQzlCLGlCLENBQThCLHVCLENBRTlCLHlCLENBQW9DLG9DLENBQ3BDLHVCLENBQW9DLGtDLENBQ3BDLDBCLENBQW9DLGdDLENBQ3BDLDJCLENBQW9DLHVDLENBQ3BDLDBCLENBQW9DLHNDLENBRXBDLHFCLENBQWlDLGdDLENBQ2pDLG1CLENBQWlDLDhCLENBQ2pDLHNCLENBQWlDLDRCLENBQ2pDLHdCLENBQWlDLDhCLENBQ2pDLHVCLENBQWlDLDZCLENBRWpDLHVCLENBQWtDLGtDLENBQ2xDLHFCLENBQWtDLGdDLENBQ2xDLHdCLENBQWtDLDhCLENBQ2xDLHlCLENBQWtDLHFDLENBQ2xDLHdCLENBQWtDLG9DLENBQ2xDLHlCLENBQWtDLCtCLENBRWxDLG1CLENBQWdDLHlCLENBQ2hDLG9CLENBQWdDLCtCLENBQ2hDLGtCLENBQWdDLDZCLENBQ2hDLHFCLENBQWdDLDJCLENBQ2hDLHVCLENBQWdDLDZCLENBQ2hDLHNCLENBQWdDLDhCQzNDcEMsSSxDQWNDLFMsQ0FJQSx1QixDQWxCRCxDLENBQUEsSSxDQUFBLE8sQ0FBQSxPLENBQUEsTSxDQUFBLE8sQ0FBQSxLLENBQUEsSyxDQUFBLEMsQ0FBQSxHLENBQUEsVSxDQUFBLEksQ0FBQSxNLENBQUEsTyxDQUFBLE0sQ0FBQSxJLENBQUEsSSxDQUFBLEUsQ0FBQSxHLENBQUEsTyxDQUFBLEcsQ0FBQSxHLENBQUEsRSxDQUFBLEUsQ0FBQSxFLENBQUEsSyxDQUFBLFUsQ0FBQSxNLENBQUEsRSxDQUFBLEUsQ0FBQSxNLENBQUEsTSxDQUFBLEMsQ0FBQSxNLENBQUEsRyxDQUFBLEcsQ0FBQSxLLENBQUEsRSxDQUFBLEksQ0FBQSxJLENBQUEsRyxDQUFBLE0sQ0FBQSxFLENBQUEsTSxDQUFBLEMsQ0FBQSxHLENBQUEsQyxDQUFBLEksQ0FBQSxDLENBQUEsSSxDQUFBLE8sQ0FBQSxLLENBQUEsSSxDQUFBLE0sQ0FBQSxNLENBQUEsRyxDQUFBLE8sQ0FBQSxLLENBQUEsSyxDQUFBLEUsQ0FBQSxLLENBQUEsRSxDQUFBLEssQ0FBQSxJLENBQUEsRSxDQUFBLEUsQ0FBQSxDLENBQUEsRSxDQUFBLEcsQ0FBQSxLLENBYUUsUSxDQUNELFMsQ0FDQSxRLENBRUEsWSxDQUNBLHVCLENBbEJELE0sQ0FBQSxJLENBQUEsRSxDQUFBLEUsQ0FBQSxFLENBQUEsRSxDQWNDLFMsQ0FDQSxRLENBZkQsRyxDQUFBLEcsQ0FjQyxTLENBR0EsWSxDQWpCRCxJLENBQUEsRyxDQWVDLFEsQ0FmRCxRLENBQUEsTSxDQUFBLEksQ0FBQSxFLENBQUEsRSxDQUFBLEUsQ0FBQSxFLENBQUEsTSxDQWlCQyxZLENBQ0EsdUIsQ0FsQkQsSSxDQUFBLE0sQ0FBQSxHLENBYUUsUSxDQVNGLE0sQ0FDSSxTLENBSUosTyxDQUFBLEssQ0FBQSxPLENBQUEsVSxDQUFBLE0sQ0FBQSxNLENBQUEsTSxDQUFBLE0sQ0FBQSxJLENBQUEsRyxDQUFBLE8sQ0FFQyxhLENBR0QsSSxDQUNDLGEsQ0N4QkcsZ0IsQ0FDQSxzQixDQUF5QixrQyxDQUFxQyxpQyxDQUU5RCxpQyxDQ3FHQSwyQixDQUNBLDZCLENBQ0Esc0IsQ0YvRUosRSxDQUFBLEUsQ0FDQyxlLENBR0QsVSxDQUFBLEMsQ0FDQyxXLENBR0QsZ0IsQ0FBQSxpQixDQUFBLE8sQ0FBQSxRLENBR0MsWSxDQUdELEssQ0E0UUksd0IsQ0FDQSxnQixDQXhRSixnRCxDQUFBLDZDLENBQUEsaUQsQ0FBQSxxRCxDQUlJLHVCLENBQ0Esb0IsQ0FHSixrQixDQUVJLG9CLENBZ0JKLEssQ0FBQSxNLENBQUEsSyxDQUdJLG9CLENBQ0EsZSxDQUNBLE8sQ0FDQSxjLENBUUosVUFBQSxXLENBQ0ksWSxDQUNBLFEsQ0FRSixRLENBQ0ksWSxDQVVKLEksQ0FFSSw2QixDQUNBLHlCLENBT0osTyxDQUNJLG1CLENBT0osUSxDQUFBLE8sQ0FFSSxTLENBUUosRyxDQUNJLFEsQ0FDQSw4QixDQW9NQSxxQixDSDdRQSxhLENBQWdCLFUsQ0FBYSxhLENHZ0dqQyxRLENBWUEsTSxDQUNJLFEsQ0FDQSxTLENBZEosUSxDQWhCQSxNLENBUUEsSSxDQTBMSSxRLENBdEtKLE0sQ0FHSSxrQixDQUNBLGlCLENBVUosTSxDQUFBLEssQ0FBQSxNLENBTUksdUIsQ0FOSixNLENBQUEsSyxDQUFBLE0sQ0FBQSxRLENBSUksYyxDQUNBLFEsQ0FFQSxzQixDQVFKLE0sQ0FBQSxLLENBRUksa0IsQ0FVSixNLENBQUEsTSxDQUVJLG1CLENBYUosTSxDQUlJLHlCLENBRUEsaUIsQ0FOSix1QixDQUFBLGlCLENBQUEsa0IsQ0FJSSx5QixDQUNBLGMsQ0FDQSxpQixDQU9KLGdCLENBQUEsb0IsQ0FFSSxjLENBVUosb0IsQ0FBQSxpQixDQUVJLHFCLENBQ0EsUyxDQUNBLFksQ0FDQSxXLENBU0osa0IsQ0FDSSw0QixDQUNBLDJCLENBQ0EsOEIsQ0FDQSxzQixDQVFKLGdELENBQUEsNkMsQ0FFSSx1QixDQU9KLHdCLENBQUEsdUIsQ0FFSSxRLENBQ0EsUyxDQ25Sc0IsUSxDRDJSMUIsUSxDQUNJLGEsQ0FDQSxrQixDQVlKLEksQ0FBQSxLLENBQUEsTSxDQWRBLFEsQ0FtQkksVSxDQUlKLGdCLENBQ0ksa0IsQ0FDQSxnQixDQUdKLFcsQ0FDSSxrQixDQUNBLGdCLENBYUosUSxDQUNJLGUsQ0FHSixZLENBQ0ksYSxDQUNBLGUsQ0FDQSxVLENBQ0EsYyxDQ3pXSixJLENBQ0kscUIsQ0M2R0EseUMsQ0FDQSxvQixDRDFHSixDLENBQUEsTyxDQUFBLFEsQ0FFVyxrQixDQVdYLEMsQ0FFQSxNLENBRW1DLGEsQ0FBaUMsYyxDQUpwRSxDLENBQUksb0IsQ0MrS0Esc0IsQ0Q3S0osTSxDQUNJLFMsQ0FDQSw0QixDQUErQyxjLENFekJuRCxLLENBQ0ksc0IsQ0FHSixLLENBQ0ksdUIsQ0FHSixVLENBQ0ksMkIsQ0FHSixHLENBQ0ksZSxDQ2dqQkEseUJEOWlCQSxxQixDQUVRLGUsQUM0aUJSLHlCRHhpQkEsaUIsQ0FFUSxlLEFDc2lCUiwrQ0RsaUJBLFcsQ0FFUSxlLEFDZ2lCUix5QkQ1aEJBLGUsQ0FFUSxlLEFDMGhCUixnRER0aEJBLFcsQ0FFUSxlLEFDb2hCUiw0RURoaEJBLHFCLENBRVEsZSxBQzhnQlIsMEJEMWdCQSxZLENBRVEsZUFLWixPLENBQ0ksa0IsQ0QxREosSyxDQUNJLG1CLENBQ0EseUIsQ0UwakJBLHlCRjVqQkosSyxDQUtRLGtCLENBQ0EsaUIsQ0FFQSxtQixDQUNBLHNCLENBQ0EsdUIsQ0FFQSxtQixDQUVBLG1CLENBRUEsYyxDQUVBLG1CLENBQ0EscUIsQ0FFQSx5QixDQUNBLDRCLENBRUEsa0IsQ0FFQSxtQixBRWtpQkosK0NGNWpCSixLLENBOEJRLGtCLENBQ0EsaUIsQ0FFQSxtQixDQUNBLHNCLENBQ0EsdUIsQ0FFQSxtQixDQUVBLG1CLENBRUEsYyxDQUVBLG1CLENBQ0EscUIsQ0FFQSx5QixDQUNBLDRCLENBRUEsa0IsQ0FFQSxtQixBRXlnQkosZ0RGNWpCSixLLENBdURRLGtCLENBQ0EsaUIsQ0FFQSxtQixDQUNBLHNCLENBQ0EsdUIsQ0FFQSxtQixDQUVBLG1CLENBRUEsYyxDQUVBLG1CLENBQ0EscUIsQ0FFQSx5QixDQUNBLDRCLENBRUEsa0IsQ0FFQSxtQixBRWdmSiwwQkY1akJKLEssQ0FnRlEsa0IsQ0FDQSxrQixDQUVBLG1CLENBQ0Esc0IsQ0FDQSx1QixDQUVBLG1CLENBRUEsbUIsQ0FFQSxjLENBRUEsbUIsQ0FDQSxxQixDQUVBLHlCLENBQ0EsNEIsQ0FFQSxrQixDQUVBLG1CQXFCUixFLENBMENBLEUsQ0FHSSxlLENBN0NKLEUsQ0FJSSxrQixDQUZBLDRCLENBSUEsUSxDQUNJLGEsQ0FDQSxrQixDQUNBLCtCLENBQ0EsZSxDQUNBLHdCLENBQ0Esb0IsQ0FJUixFLENBQUEsRSxDQTBCQSxFLENBekJJLGMsQ0FDQSxlLENBbEJKLEUsQ0FxQkEsRSxDQUFBLEUsQ0FDSSxvQyxDQUdKLEUsQ0FDSSw0QixDQUdKLEUsQ0FDSSw0QixDQUNBLGlCLENBV0osRSxDQUNJLDRCLENBTUEsbUIsQ0FJQSxvQixDQUhJLDJCLENBdUNSLFcsQ0E5QkksRyxDQUNJLGMsQ0FJUixDLENBaEVBLEUsQ0FnRUEsTSxDQUNJLGUsQ0FHSixDLENBQ0ksaUIsQ0U2WEEsd0NGdFhJLE8sQ0FDSSwyQkFLWixHLENBQ0ksYSxDQUNBLGUsQ0FDQSxvQixDQUNBLGtCLENBR0osVyxDQUNJLDhCLENFd1dBLHdDQzVqQkosYSxDQUVRLGdCQUlSLEksQ0FDSSxZLENBQWUsc0IsQ0FBeUIsa0IsQ0FBcUIsZSxDQUU3RCxlLENBQUEsYSxDQUNJLG1CLENDVlIsSyxDVGtCSSxhLENBQ0ksUSxDQUF5QixlLENTbkJqQyxLLENBQ3NCLG9CLENBQXVCLFMsQ0FDekMsaUIsQ0FBb0IscUIsQ0FBd0IsYSxDQUM1QyxZLENBQ0EsYSxDQUNBLHNCLENBQXlCLG1CLENBSjRCLFUsQ0YyakJyRCx5QlAzakJKLEssQ0FFUSx5QixDQUNBLHVCLEFPd2pCSix5QlAzakJKLEssQ0FPUSx5QixDQUNBLHVCQVNKLGEsQ0FDZSxXLENBQWdDLGlCLENBSW5ELGtCLENBQ0csVSxDQUNBLGdCLENBQ0EsaUIsQ0FDQSw2QyxDQUNBLDhDLENBR0gsYSxDQUNJLGdCLENBRUosYSxDQUNJLGUsQ0FHSixhLENBQ0ksZSxDQWdDSixNLENBN0JBLE8sQ0FDSSxnQyxDQUNBLG1DLENBRUEsZUFBQSxRLENBQ0ksaUIsQ0FJSixlQUFBLFEsQ0FDSSxpQixDQUNBLGMsQ0FDQSxrQixDQUVBLGVBQUEsZ0IsQ0FDSSxVLENBQ0EseWMsQ0FDQSxpZCxDQUNBLGlCLENBQ0EsTyxDQUNBLE0sQ0FDQSxhLENBQ0EsVSxDQUNBLFcsQ0FDQSxzQyxDVW5FWixPLENBQ0ksaUIsQ0FDQSwwQixDQUNBLGUsQ0FTQSxjLENBUEEsYSxDQVFJLFksQ0FDQSxzQixDQVRKLGEsQ0FHSSxrQixDQUNBLGtCLENBR0osYyxDQUdJLGMsQ0FHSixtQixDQUNJLGdCLENBQ0EsaUIsQ0FHSixlLENBQ0ksYyxDSHFpQkoseUJJM2pCSixLLENBRVEsa0IsQUp5akJKLGdESTNqQkosSyxDQU1RLGtCLEFKcWpCSiwwQkkzakJKLEssQ0FVUSxrQkFJUixPLENBQ0ksaUIsQ0FDQSxTLENBQ0EscUIsQ0FDQSxlLENBQ0Esa0IsQ0FFQSwwQixDQUNJLFksQ0FDQSw2QixDQUNBLGtCLENBR0osYSxDQUNJLFksQ0FDQSxrQixDQUNBLHdCLENKNmhCSix5QkloaUJBLGEsQ0FNUSxtQkFHSixtQixDQUNJLGEsQ0FDQSxhLENKcWhCUix5QklqaEJBLGdCLENBRVEsY0FJUixtQixDQUNJLG9DLENBSVIsSSxDQ3JEQyx3QixDQUNBLHFCLENBQ0EsZ0IsQ0RxREcsaUIsQ0pvZ0JBLHlCSXRnQkosSSxDQUtRLFUsQ0FDQSxhLEFKZ2dCSix5Qkl0Z0JKLEksQ0FVUSxjQUdKLGMsQ0FDSSxpQixDQUNBLGlCLENBQ0EsVSxDSnNmSix5QklwZkksaUMsQ0FFUSxrQixBSmtmWix5QklwZkksaUMsQ0FNUSxlQUtaLFcsQ0FDSSxlLENBQ0Esb0IsQ0FDQSxnQixDQUNBLGEsQ0pxZUoseUJJemVBLFcsQ0FPUSxVLENBQ0EsVyxDQUNBLGdCLENBQ0EsOEIsQUorZFIseUJJemVBLFcsQ0FjUSxVLENBQ0EsVyxDQUNBLGlCLEFKeWRSLHdDSXplQSxXLENBb0JRLGdCQUlSLFksQ0FDSSxhLENBQ0Esd0IsQ0FDQSxpQixDSjhjSix5QklqZEEsWSxDQU1RLFUsQ0FDQSxVLENBQ0EsNkMsQUp5Y1IseUJJamRBLFksQ0FjUSxVLENBQ0EsVSxDQUNBLDZDQU9aLFUsQ0FDSSxlLENBQ0EsaUIsQ0FDQSxTLENKdWJBLHlCSTFiSixVLENBTVEsc0MsQ0FDQSxVLENBQ0EsZSxDQUNBLFksQ0FDQSxrQyxBSmdiSix5QkkxYkosVSxDQWNRLFksQ0FDQSxRLENBQ0EsTSxDQUNBLFcsQ0FDQSxzQ0FNSixnQixDQUNJLGEsQ0FDQSxnQixDQUNBLHFCLENBSEosZ0IsQ0FLSSxzQixDQUFBLHdCLENBR0ksb0IsQ0FDQSxzQixDSnlaUix5QklsYUEsZ0IsQ0FhUSxjLEFKcVpSLHlCSWxhQSxnQixDQWlCUSxhLENBQ0EsbUIsQUpnWlIsd0NJNVlRLHNCLENBQ0ksdUI7Ozs7QUU5S2hCLFMsQ0FDSSxhLENBQ0EsaUIsQ0FDQSwrQixDQUNBLDBELENBRUEsaUIsQ0FDSSxpQixDQUdKLGlCLENBQ0ksaUIsQ0FDQSxvQixDQUdKLDRCLENBQ0ksWSxDQUNBLHNCLENBQ0Esa0IsQ0FDQSxjLENBQ0EsMEIsQ0FHSixpQixDQUNJLGUsQ0FDQSxNLENBQ0EsYyxDQUNBLFUsQ0FDQSw2QixDQUNBLFcsQ0FFQSxzQixDQUNJLFEsQ0FHSixzQixDQUNJLHVDLENBSUEsc0JBQUEsYyxDQUNJLDBDLENBSVIsa0NBQUEsUyxDQUNJLGtFLENBR0oscUMsQ0FDSSxxQyxDQUlSLGdCLENBQ0ksdUMsQ0FDQSxhLENOaWdCSix5Qk1uZ0JBLGdCLENBS1EsMEIsQU44ZlIsK0NNbmdCQSxnQixDQVNRLDBCLEFOMGZSLCtDTW5nQkEsZ0IsQ0FhUSwwQkFJUixjLENBQ0ksYSxDQUNBLGUsQ0FDQSxRLENOK2VKLHlCTTVlQSxrQixDQUVRLGMsQU4wZVIseUJNdGVBLGtCLENBRVEsY0FLWixJLENBQ0ksb0IsQ0FDQSxvQixDQUNBLDJCLENBQ0EscUMsQ0FDQSw2QixDQUNBLGlCLENBQ0Esa0IsQ0FDQSxhLENBQ0EsK0IsQ0FDQSwrSixDQUNBLHNDLENBQ0EsNkQsQ0FDQSxnQyxDTmtkQSx5Qk0vZEosSSxDQWdCUSxVLENBQ0EscUIsQUFJQSxTQUFBLE8sQ0FBQSxTQUFBLGEsQ0FDSSwrQixDQUlSLGUsQ0FBQSxhLENBRUksbUIsQ0FHSixVLENBQUEsWSxDQUVJLCtCLENBQ0Esb0IsQ0FHSixVLENBQ0ksd0Y7Ozs7Ozs7QUNoSVIsVSxDQUNJLGMsQ0FDQSxNLENBQ0EsSyxDQUNBLFksQ0FDQSxVLENBQ0EsWSxDQUNBLFksQ0FDQSxxQixDQUNBLGUsQ0FDQSw4QyxDQUVBLDZCLENBQ0ksWSxDQUNBLHNCLENBQ0Esa0IsQ0FJSixrQixDQUNJLGlCLENBQ0EsUyxDQUNBLFUsQ0FDQSxzQixDQUVBLHFDLENBQ0ksWSxDQUNBLDZCLENBQ0Esa0IsQ0FDQSxrQixDQUlSLGdCLENBQ0ksWSxDQUNBLGtCLENQc2hCSix5Qk94aEJBLGdCLENBS1EsMEMsQ0FDQSxnRCxBUGtoQlIsZ0RPeGhCQSxnQixDQVVRLDBDLENBQ0EsZ0QsQVA2Z0JSLDBCT3hoQkEsZ0IsQ0FlUSwyQyxDQUNBLGlEQUdKLHNCLENBQ0ksMkMsQ0FJUixxQixDQUNJLFksQ0FDQSxxQixDQUNBLGEsQ0FDQSw2QyxDQUNBLGMsQ0FHSiw2QixDQUNJLHFCLENBQ0EsYSxDQUNBLDBCLENBSUosbUIsQ0FDSSxZLENBQ0Esc0IsQ0FDQSxxQixDQUdJLGdEQU5SLG1CLENBT1ksZUFLWixpQixDQUNJLG1CLENBQ0EseUMsQ0FDQSwwQyxDQUNBLGlCLENBQ0Esc0IsQ1BnZUoseUJPcmVBLGlCLENBUVEsNEIsQVA2ZFIsK0NPcmVBLGlCLENBWVEsNEIsQUFJQSx1RUFoQlIsaUIsQ0FpQlksNEIsQVBvZFosMEJPcmVBLGlCLENBc0JRLDRCLEFBSUEsZ0RBMUJSLGlCLENBMkJZLDRCLEFQMGNaLHlCT3JlQSxpQixDQWdDUSxZLENBQ0EscUIsQ0FDQSx3QkFHSixzQixDQUNJLGEsQ0FDQSw4QyxDQUNBLGEsQ0FDQSwyQixDQUlSLHlCLENBQ0ksWSxDQUNBLHNCLENBQ0EsYSxDQUVBLGlDLENBQ0ksWSxDQUNBLGtCLENBQ0EsVyxDQUlSLGlCLENBQ0ksNEMsQ1AyYUoseUJPNWFBLGlCLENBSVEsVSxDQUNBLGlCLEFQdWFSLHlCTzVhQSxpQixDQVNRLDhCLENBRUEsa0IsQUFJQSxnREFmUixpQixDQWdCWSxlLENBQ0EsVSxDQUNBLGFBS1osa0IsQ0FDSSxZLENBQ0Esa0IsQ0FDQSxxQixDQUNBLFUsQ1BpWkoseUJPclpBLGtCLENBT1Esc0IsQUFJQSxnREFYUixrQixDQVlZLHNCLEFBR0osZ0RBZlIsa0IsQ0FnQlkscUI7Ozs7QUN4TGhCLEksQ0FDSSwrQixDQUNBLDJFLENBR0ksZ0RBQ0ksZSxDQUNJLGMsQ0FHSixvQixDQUNJLGdCQ1hoQixVLENBQ0ksOEIsQ0FDQSw4QixDQUNBLCtCLENBQ0EsZ0MsQ1R5akJBLHlCUzdqQkosVSxDQU9RLDRCLEFUc2pCSiwrQ1M3akJKLFUsQ0FXUSw0QixBVGtqQkosZ0RTN2pCSixVLENBZVEsNEIsQUFJQSxnREFuQlIsVSxDQW9CWSxrQyxBVHlpQlIsMEJTN2pCSixVLENBeUJRLDRCQUlBLHFCLENBQUEsMkIsQ0FDSSw4QixDVCtoQlIsMEJTM2hCQSxpQixDQUVRLE8sQ0FDQSxxQixBVHdoQlIseUJTcGhCQSxpQixDQUVRLGdCLEFUa2hCUix5QlNwaEJBLGlCLENBTVEsaUIsQUFJQSxnREFWUixpQixDQVdZLGlCQU9SLGtDLENBQ0ksMEIsQ0FJQSxpQyxDQUNJLE8sQ0FDQSxpQixDQUdJLGdEQUxSLGlDLENBTVksNEJBTVIsaUQsQ0FDSSxPLENUZ2ZoQix5QlM5ZWdCLG1FLENBRVEsK0IsQVQ0ZXhCLHlCUzllZ0IsbUUsQ0FNUSxnQyxBQUlBLGdEQVZSLG1FLENBV1ksaUIsQVRtZTVCLHlCUzVkUSxpQyxDQUVRLGdCLEFUMGRoQix5QlM1ZFEsaUMsQ0FNUSxpQixBQUlBLGdEQVZSLGlDLENBV1ksaUIsQVRpZHBCLDBCUzdjWSw0QyxDQUVRLGdCLEFUMmNwQiwwQlM3Y1ksNEMsQ0FNUSxnQixBQUlBLGdEQVZSLDRDLENBV1ksaUJBTWhCLGtDLENBQ0ksYSIsImZpbGUiOiJzdHlsZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvLy0gRmFkZXMgcmVsYXRlZCBhbmltYXRpb25zXHJcbi8vLSBCbGlua1xyXG5Aa2V5ZnJhbWVzIGJsaW5rIHtcclxuICAgIDAlICAgeyBvcGFjaXR5OiAxOyB9XHJcbiAgICA1MCUgIHsgb3BhY2l0eTogMDsgfVxyXG4gICAgMTAwJSB7IG9wYWNpdHk6IDE7IH1cclxufVxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgYmxpbmsge1xyXG4gICAgMCUgICB7IG9wYWNpdHk6IDE7IH1cclxuICAgIDUwJSAgeyBvcGFjaXR5OiAwOyB9XHJcbiAgICAxMDAlIHsgb3BhY2l0eTogMTsgfVxyXG59XHJcbkAtbW96LWtleWZyYW1lcyBibGluayB7XHJcbiAgICAwJSAgIHsgb3BhY2l0eTogMTsgfVxyXG4gICAgNTAlICB7IG9wYWNpdHk6IDA7IH1cclxuICAgIDEwMCUgeyBvcGFjaXR5OiAxOyB9XHJcbn1cclxuXHJcbi8vLSBBcHBlYXJcclxuQGtleWZyYW1lcyBhcHBlYXIge1xyXG4gICAgMCUgICB7IG9wYWNpdHk6IDA7IH1cclxuICAgIDEwMCUgeyBvcGFjaXR5OiAxOyB9XHJcbn1cclxuQC13ZWJraXQta2V5ZnJhbWVzIGFwcGVhciB7XHJcbiAgICAwJSAgIHsgb3BhY2l0eTogMDsgfVxyXG4gICAgMTAwJSB7IG9wYWNpdHk6IDE7IH1cclxufVxyXG5ALW1vei1rZXlmcmFtZXMgYXBwZWFyIHtcclxuICAgIDAlICAgeyBvcGFjaXR5OiAwOyB9XHJcbiAgICAxMDAlIHsgb3BhY2l0eTogMTsgfVxyXG59XHJcblxyXG4vLy0gQXBwZWFyIEhhbW1lclxyXG5Aa2V5ZnJhbWVzIGFwcGVhci1oYW1tZXIge1xyXG4gICAgMCUgICB7IG9wYWNpdHk6IDA7IH1cclxuICAgIDUwJSAgeyBvcGFjaXR5OiAxOyB9XHJcbiAgICA2MCUgIHsgb3BhY2l0eTogMTsgfVxyXG4gICAgMTAwJSB7IG9wYWNpdHk6IDA7IH1cclxufVxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgYXBwZWFyLWhhbW1lciB7XHJcbiAgICAwJSAgIHsgb3BhY2l0eTogMDsgfVxyXG4gICAgNTAlICB7IG9wYWNpdHk6IDE7IH1cclxuICAgIDYwJSAgeyBvcGFjaXR5OiAxOyB9XHJcbiAgICAxMDAlIHsgb3BhY2l0eTogMDsgfVxyXG59XHJcbkAtbW96LWtleWZyYW1lcyBhcHBlYXItaGFtbWVyIHtcclxuICAgIDAlICAgeyBvcGFjaXR5OiAwOyB9XHJcbiAgICA1MCUgIHsgb3BhY2l0eTogMTsgfVxyXG4gICAgNjAlICB7IG9wYWNpdHk6IDE7IH1cclxuICAgIDEwMCUgeyBvcGFjaXR5OiAwOyB9XHJcbn1cclxuXHJcbi8vLSBCbGluayBDdXJzb3JcclxuQGtleWZyYW1lcyBibGluay1jdXJzb3Ige1xyXG4gICAgMCUgICB7IG9wYWNpdHk6MTsgfVxyXG4gICAgNTAlICB7IG9wYWNpdHk6MDsgfVxyXG4gICAgMTAwJSB7IG9wYWNpdHk6MTsgfVxyXG59XHJcbkAtd2Via2l0LWtleWZyYW1lcyBibGluay1jdXJzb3Ige1xyXG4gICAgMCUgICB7IG9wYWNpdHk6MTsgfVxyXG4gICAgNTAlICB7IG9wYWNpdHk6MDsgfVxyXG4gICAgMTAwJSB7IG9wYWNpdHk6MTsgfVxyXG59XHJcbkAtbW96LWtleWZyYW1lcyBibGluay1jdXJzb3Ige1xyXG4gICAgMCUgICB7IG9wYWNpdHk6MTsgfVxyXG4gICAgNTAlICB7IG9wYWNpdHk6MDsgfVxyXG4gICAgMTAwJSB7IG9wYWNpdHk6MTsgfVxyXG59XHJcblxyXG5cclxuLy8tIGZhZGUgaW5cclxuQGtleWZyYW1lcyBmYWRlaW4ge1xyXG4gICAgMCUgICB7IGRpc3BsYXk6IGJsb2NrOyBvcGFjaXR5OjA7IH1cclxuICAgIDElICB7IG9wYWNpdHk6MDsgfVxyXG4gICAgMTAwJSB7IG9wYWNpdHk6MTsgfVxyXG59XHJcbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlaW4ge1xyXG4gICAgMCUgICB7IGRpc3BsYXk6IGJsb2NrOyBvcGFjaXR5OjA7IH1cclxuICAgIDElICB7IG9wYWNpdHk6MDsgfVxyXG4gICAgMTAwJSB7IG9wYWNpdHk6MTsgfVxyXG59XHJcbkAtbW96LWtleWZyYW1lcyBmYWRlaW4ge1xyXG4gICAgMCUgICB7IGRpc3BsYXk6IGJsb2NrOyAgb3BhY2l0eTowO31cclxuICAgIDElICB7IG9wYWNpdHk6MDsgfVxyXG4gICAgMTAwJSB7IG9wYWNpdHk6MTsgfVxyXG59IiwiLy8tIE1vdGlvbiByZWxhdGVkIGFuaW1hdGlvbnNcclxuLy8tIEp1bXBcclxuQGtleWZyYW1lcyBqdW1we1xyXG4gICAgMCUgICB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxyXG4gICAgNjAlICB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7IH1cclxuICAgIDEwMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cclxufVxyXG5ALXdlYmtpdC1rZXlmcmFtZXMganVtcHtcclxuICAgIDAlICAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cclxuICAgIDYwJSAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpOyB9XHJcbiAgICAxMDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XHJcbn1cclxuQC1tb3ota2V5ZnJhbWVzIGp1bXB7XHJcbiAgICAwJSAgIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XHJcbiAgICA2MCUgIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTsgfVxyXG4gICAgMTAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxyXG59XHJcblxyXG4vLy0gV2VpZ2h0XHJcbkBrZXlmcmFtZXMgd2VpZ2h0e1xyXG4gICAgMCUgICB7IHRyYW5zZm9ybTogcm90YXRlKC00OGRlZyk7IH1cclxuICAgIDEwMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSg0OGRlZyk7IH1cclxufVxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgd2VpZ2h0e1xyXG4gICAgMCUgICB7IHRyYW5zZm9ybTogcm90YXRlKC00OGRlZyk7IH1cclxuICAgIDEwMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSg0OGRlZyk7IH1cclxufVxyXG5ALW1vei1rZXlmcmFtZXMgd2VpZ2h0e1xyXG4gICAgMCUgICB7IHRyYW5zZm9ybTogcm90YXRlKC00OGRlZyk7IH1cclxuICAgIDEwMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSg0OGRlZyk7IH1cclxufVxyXG5cclxuLy8tIEhhbW1lclxyXG5Aa2V5ZnJhbWVzIGhhbW1lcntcclxuICAgIDAlICAgeyB0cmFuc2Zvcm06IHJvdGF0ZSgyOGRlZyk7IH1cclxuICAgIDEwMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgyZGVnKTsgfVxyXG59XHJcbkAtd2Via2l0LWtleWZyYW1lcyBoYW1tZXJ7XHJcbiAgICAwJSAgIHsgdHJhbnNmb3JtOiByb3RhdGUoMjhkZWcpOyB9XHJcbiAgICAxMDAlIHsgdHJhbnNmb3JtOiByb3RhdGUoMmRlZyk7IH1cclxufVxyXG5ALW1vei1rZXlmcmFtZXMgaGFtbWVye1xyXG4gICAgMCUgICB7IHRyYW5zZm9ybTogcm90YXRlKDI4ZGVnKTsgfVxyXG4gICAgMTAwJSB7IHRyYW5zZm9ybTogcm90YXRlKDJkZWcpOyB9XHJcbn1cclxuXHJcbi8vLSBTY2FsZVxyXG5Aa2V5ZnJhbWVzIHNjYWxle1xyXG4gICAgMCUgICB7IHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cclxuICAgIDcwJSAgeyB0cmFuc2Zvcm06IHNjYWxlKDIpOyB9XHJcbiAgICAxMDAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxyXG59XHJcbkAtd2Via2l0LWtleWZyYW1lcyBzY2FsZXtcclxuICAgIDAlICAgeyB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XHJcbiAgICA3MCUgIHsgdHJhbnNmb3JtOiBzY2FsZSgyKTsgfVxyXG4gICAgMTAwJSB7IHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cclxufVxyXG5ALW1vei1rZXlmcmFtZXMgc2NhbGV7XHJcbiAgICAwJSAgIHsgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxyXG4gICAgNzAlICB7IHRyYW5zZm9ybTogc2NhbGUoMik7IH1cclxuICAgIDEwMCUgeyB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XHJcbn1cclxuXHJcbi8vLSBIb29wXHJcbkBrZXlmcmFtZXMgaG9vcHtcclxuICAgIDAlICAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTsgfVxyXG4gICAgMzAlICB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNDBweCk7IH1cclxuICAgIDQwJSAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTsgfVxyXG4gICAgNTAlICB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1MHB4KTsgfVxyXG4gICAgMTAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpOyB9XHJcbn1cclxuQC13ZWJraXQta2V5ZnJhbWVzIGhvb3B7XHJcbiAgICAwJSAgIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7IH1cclxuICAgIDMwJSAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTQwcHgpOyB9XHJcbiAgICA0MCUgIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7IH1cclxuICAgIDUwJSAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNTBweCk7IH1cclxuICAgIDEwMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTsgfVxyXG59XHJcbkAtbW96LWtleWZyYW1lcyBob29we1xyXG4gICAgMCUgICB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpOyB9XHJcbiAgICAzMCUgIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC00MHB4KTsgfVxyXG4gICAgNDAlICB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpOyB9XHJcbiAgICA1MCUgIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwcHgpOyB9XHJcbiAgICAxMDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7IH1cclxufVxyXG5cclxuLy8tIERhbnNlXHJcbkBrZXlmcmFtZXMgZGFuc2V7XHJcbiAgICAwJSAgIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7IH0gICBcclxuICAgIDUwJSAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpOyB9XHJcbiAgICA3MCUgIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpOyB9XHJcbiAgICAxMDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7IH1cclxufVxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZGFuc2V7XHJcbiAgICAwJSAgIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7IH0gICBcclxuICAgIDUwJSAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpOyB9XHJcbiAgICA3MCUgIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpOyB9XHJcbiAgICAxMDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7IH1cclxufVxyXG5ALW1vei1rZXlmcmFtZXMgZGFuc2V7XHJcbiAgICAwJSAgIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7IH0gICBcclxuICAgIDUwJSAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpOyB9XHJcbiAgICA3MCUgIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpOyB9XHJcbiAgICAxMDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7IH1cclxufVxyXG5cclxuLy8tIEhhbWJ1cmdlclxyXG5Aa2V5ZnJhbWVzIGhhbWJ1cmdlcntcclxuICAgIDAlICAgeyB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XHJcbiAgICAxMDAlIHsgdHJhbnNmb3JtOiBzY2FsZSgwKTsgfVxyXG59XHJcbkAtd2Via2l0LWtleWZyYW1lcyBoYW1idXJnZXJ7XHJcbiAgICAwJSAgIHsgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxyXG4gICAgMTAwJSB7IHRyYW5zZm9ybTogc2NhbGUoMCk7IH1cclxufVxyXG5ALW1vei1rZXlmcmFtZXMgaGFtYnVyZ2Vye1xyXG4gICAgMCUgICB7IHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cclxuICAgIDEwMCUgeyB0cmFuc2Zvcm06IHNjYWxlKDApOyB9XHJcbn1cclxuXHJcbi8vLSBTcGlubmVyXHJcbkBrZXlmcmFtZXMgc3Bpbm5lci1yb3RhdGUge1xyXG4gICAgMCUgICB7IHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XHJcbiAgICAxMDAlIHsgdHJhbnNmb3JtOiByb3RhdGUoMXR1cm4pOyB9XHJcbn1cclxuQC13ZWJraXQta2V5ZnJhbWVzIHNwaW5uZXItcm90YXRlIHtcclxuICAgIDAlICAgeyB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxyXG4gICAgMTAwJSB7IHRyYW5zZm9ybTogcm90YXRlKDF0dXJuKTsgfVxyXG59XHJcbkAtbW96LWtleWZyYW1lcyBzcGlubmVyLXJvdGF0ZSB7XHJcbiAgICAwJSAgIHsgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cclxuICAgIDEwMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgxdHVybik7IH1cclxufVxyXG5cclxuLy8tIEJvdHRsZSBEYW5jZVxyXG5Aa2V5ZnJhbWVzIGJvdHRsZURhbmNle1xyXG4gICAgMCUgICB7IHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XHJcbiAgICA1JSAgIHsgdHJhbnNmb3JtOiByb3RhdGUoNWRlZyk7IH1cclxuICAgIDk1JSAgeyB0cmFuc2Zvcm06IHJvdGF0ZSgtNWRlZyk7IH1cclxuICAgIDEwMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxyXG59XHJcbkAtd2Via2l0LWtleWZyYW1lcyBib3R0bGVEYW5jZXtcclxuICAgIDAlICAgeyB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxyXG4gICAgNSUgICB7IHRyYW5zZm9ybTogcm90YXRlKDVkZWcpOyB9XHJcbiAgICA5NSUgIHsgdHJhbnNmb3JtOiByb3RhdGUoLTVkZWcpOyB9XHJcbiAgICAxMDAlIHsgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cclxufVxyXG5ALW1vei1rZXlmcmFtZXMgYm90dGxlRGFuY2V7XHJcbiAgICAwJSAgIHsgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cclxuICAgIDUlICAgeyB0cmFuc2Zvcm06IHJvdGF0ZSg1ZGVnKTsgfVxyXG4gICAgOTUlICB7IHRyYW5zZm9ybTogcm90YXRlKC01ZGVnKTsgfVxyXG4gICAgMTAwJSB7IHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XHJcbn1cclxuXHJcbi8vLSBCb3VuY2VcclxuQGtleWZyYW1lcyBib3VuY2Uge1xyXG4gICAgMCUgICB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxyXG4gICAgMTAlICB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxyXG4gICAgMzAlICB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjVweCk7IH1cclxuICAgIDQwJSAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cclxuICAgIDUwJSAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpOyB9XHJcbiAgICA2MCUgIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XHJcbiAgICAxMDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XHJcbn1cclxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZSB7XHJcbiAgICAwJSAgIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XHJcbiAgICAxMCUgIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XHJcbiAgICAzMCUgIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNXB4KTsgfVxyXG4gICAgNDAlICB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxyXG4gICAgNTAlICB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7IH1cclxuICAgIDYwJSAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cclxuICAgIDEwMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cclxufVxyXG5ALW1vei1rZXlmcmFtZXMgYm91bmNlIHtcclxuICAgIDAlICAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cclxuICAgIDEwJSAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cclxuICAgIDMwJSAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTI1cHgpOyB9XHJcbiAgICA0MCUgIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XHJcbiAgICA1MCUgIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTsgfVxyXG4gICAgNjAlICB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxyXG4gICAgMTAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxyXG59XHJcblxyXG4vLy0gQm91bmNlIHdpdGggZGlzdG9ydGlvblxyXG5Aa2V5ZnJhbWVzIGJvdW5jZS13aXRoLWRpc3RvcnRpb24ge1xyXG4gICAgMCUgICB7IHRyYW5zZm9ybTogc2NhbGUoMSwxKSAgICAgICB0cmFuc2xhdGVZKDApOyB9XHJcbiAgICAxMCUgIHsgdHJhbnNmb3JtOiBzY2FsZSgxLjAzLC45NykgIHRyYW5zbGF0ZVkoMCk7IH1cclxuICAgIDMwJSAgeyB0cmFuc2Zvcm06IHNjYWxlKC45NywxLjAzKSAgdHJhbnNsYXRlWSgtMjVweCk7IH1cclxuICAgIDQwJSAgeyB0cmFuc2Zvcm06IHNjYWxlKDEuMDMsLjk3KSAgdHJhbnNsYXRlWSgwKTsgfVxyXG4gICAgNTAlICB7IHRyYW5zZm9ybTogc2NhbGUoMSwxKSAgICAgICB0cmFuc2xhdGVZKC0xMHB4KTsgfVxyXG4gICAgNjAlICB7IHRyYW5zZm9ybTogc2NhbGUoMSwxKSAgICAgICB0cmFuc2xhdGVZKDApOyB9XHJcbiAgICAxMDAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxLDEpICAgICAgIHRyYW5zbGF0ZVkoMCk7IH1cclxufVxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlLXdpdGgtZGlzdG9ydGlvbiB7XHJcbiAgICAwJSAgIHsgdHJhbnNmb3JtOiBzY2FsZSgxLDEpICAgICAgIHRyYW5zbGF0ZVkoMCk7IH1cclxuICAgIDEwJSAgeyB0cmFuc2Zvcm06IHNjYWxlKDEuMDMsLjk3KSAgdHJhbnNsYXRlWSgwKTsgfVxyXG4gICAgMzAlICB7IHRyYW5zZm9ybTogc2NhbGUoLjk3LDEuMDMpICB0cmFuc2xhdGVZKC0yNXB4KTsgfVxyXG4gICAgNDAlICB7IHRyYW5zZm9ybTogc2NhbGUoMS4wMywuOTcpICB0cmFuc2xhdGVZKDApOyB9XHJcbiAgICA1MCUgIHsgdHJhbnNmb3JtOiBzY2FsZSgxLDEpICAgICAgIHRyYW5zbGF0ZVkoLTEwcHgpOyB9XHJcbiAgICA2MCUgIHsgdHJhbnNmb3JtOiBzY2FsZSgxLDEpICAgICAgIHRyYW5zbGF0ZVkoMCk7IH1cclxuICAgIDEwMCUgeyB0cmFuc2Zvcm06IHNjYWxlKDEsMSkgICAgICAgdHJhbnNsYXRlWSgwKTsgfVxyXG59XHJcbkAtbW96LWtleWZyYW1lcyBib3VuY2Utd2l0aC1kaXN0b3J0aW9uIHtcclxuICAgIDAlICAgeyB0cmFuc2Zvcm06IHNjYWxlKDEsMSkgICAgICAgdHJhbnNsYXRlWSgwKTsgfVxyXG4gICAgMTAlICB7IHRyYW5zZm9ybTogc2NhbGUoMS4wMywuOTcpICB0cmFuc2xhdGVZKDApOyB9XHJcbiAgICAzMCUgIHsgdHJhbnNmb3JtOiBzY2FsZSguOTcsMS4wMykgIHRyYW5zbGF0ZVkoLTI1cHgpOyB9XHJcbiAgICA0MCUgIHsgdHJhbnNmb3JtOiBzY2FsZSgxLjAzLC45NykgIHRyYW5zbGF0ZVkoMCk7IH1cclxuICAgIDUwJSAgeyB0cmFuc2Zvcm06IHNjYWxlKDEsMSkgICAgICAgdHJhbnNsYXRlWSgtMTBweCk7IH1cclxuICAgIDYwJSAgeyB0cmFuc2Zvcm06IHNjYWxlKDEsMSkgICAgICAgdHJhbnNsYXRlWSgwKTsgfVxyXG4gICAgMTAwJSB7IHRyYW5zZm9ybTogc2NhbGUoMSwxKSAgICAgICB0cmFuc2xhdGVZKDApOyB9XHJcbn0iLCIvLy0gU2NoZW1hIHJlbGF0ZWQgYW5pbWF0aW9uc1xyXG4kdGFwLWNvbG9yOiByZWQ7XHJcblxyXG4vLy0gQmFja2dyb3VuZC1jb2xvciBvbiB0YXBcclxuQGtleWZyYW1lcyBiZ0NvbG9yLW9uLXRhcCB7XHJcbiAgICAwJSAgIHsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkdGFwLWNvbG9yLCAxMDAlKTsgfVxyXG4gICAgNTAlICB7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHRhcC1jb2xvciwgMTAwJSk7IH1cclxuICAgIDEwMCUgeyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR0YXAtY29sb3IsIDApOyB9XHJcbn1cclxuQC13ZWJraXQta2V5ZnJhbWVzIGJnQ29sb3Itb24tdGFwIHtcclxuICAgIDAlICAgeyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR0YXAtY29sb3IsIDEwMCUpOyB9XHJcbiAgICA1MCUgIHsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkdGFwLWNvbG9yLCAxMDAlKTsgfVxyXG4gICAgMTAwJSB7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHRhcC1jb2xvciwgMCk7IH1cclxufVxyXG5ALW1vei1rZXlmcmFtZXMgYmdDb2xvci1vbi10YXAge1xyXG4gICAgMCUgICB7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHRhcC1jb2xvciwgMTAwJSk7IH1cclxuICAgIDUwJSAgeyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR0YXAtY29sb3IsIDEwMCUpOyB9XHJcbiAgICAxMDAlIHsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkdGFwLWNvbG9yLCAwKTsgfVxyXG59IiwiLy8tIEZvbnQgZmFtaWxpZXNcclxuLy8tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gUHJveGltYU5vdmEtTGlnaHQub3RmXHJcbi8vIFByb3hpbWFOb3ZhLVJlZ3VsYXIub3RmXHJcbi8vIFByb3hpbWFOb3ZhLVNlbWlib2xkLm90ZlxyXG4vLyBQcm94aW1hTm92YS1Cb2xkLm90ZlxyXG5cclxuQGZvbnQtZmFjZSB7XHJcbiAgICBmb250LWZhbWlseTogUHJveGltYU5vdmE7XHJcbiAgICBzcmM6IHVybCguL2ZvbnRzL1Byb3hpbWFOb3ZhL1Byb3hpbWFOb3ZhLUxpZ2h0Lm90Zik7XHJcbiAgICBmb250LXdlaWdodDogMjAwO1xyXG59XHJcblxyXG5AZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiBQcm94aW1hTm92YTtcclxuICAgIHNyYzogdXJsKC4vZm9udHMvUHJveGltYU5vdmEvUHJveGltYU5vdmEtUmVndWxhci5vdGYpO1xyXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcbiAgICBmb250LWZhbWlseTogUHJveGltYU5vdmE7XHJcbiAgICBzcmM6IHVybCguL2ZvbnRzL1Byb3hpbWFOb3ZhL1Byb3hpbWFOb3ZhLVNlbWlib2xkLm90Zik7XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG59XHJcblxyXG5AZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiBQcm94aW1hTm92YTtcclxuICAgIHNyYzogdXJsKC4vZm9udHMvUHJveGltYU5vdmEvUHJveGltYU5vdmEtQm9sZC5vdGYpO1xyXG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcclxufVxyXG5cclxuJHByb3hpbWFOb3ZhOiBQcm94aW1hTm92YSwgc2Fucy1zZXJpZjtcclxuXHJcbiRtYWluRm9udDogJHByb3hpbWFOb3ZhO1xyXG4kc2Vjb25kYXJ5Rm9udDogJHByb3hpbWFOb3ZhOyIsIi8vLSB2MDJcbjpyb290IHtcbiAgICAtLW1haW5Db2xvcjogICAgICAgIGhzbCgyMjgsIDUyJSwgMzIlKTtcbiAgICAtLW1haW5Db2xvcl9oOiAgICAgIDIyODtcbiAgICAtLW1haW5Db2xvcl9zOiAgICAgIDUyJTtcbiAgICAtLW1haW5Db2xvcl9sOiAgICAgIDMyJTtcbiAgICAtLXNlY29uZGFyeUNvbG9yOiAgaHNsKDEyMCwgMTAwJSwgMjUlKTtcbiAgICAtLXNlY29uZGFyeUNvbG9yX2g6ICAxMjA7XG4gICAgLS1zZWNvbmRhcnlDb2xvcl9zOiAgMTAwJTtcbiAgICAtLXNlY29uZGFyeUNvbG9yX2w6ICAyNSU7XG5cbiAgICAtLXRpdGxlQ29sb3I6ICAgICAgaHNsKDAsIDAlLCAwJSk7XG4gICAgLS10aXRsZUNvbG9yX2g6ICAgICAgMDtcbiAgICAtLXRpdGxlQ29sb3JfczogICAgICAwJTtcbiAgICAtLXRpdGxlQ29sb3JfbDogICAgICAwJTtcblxuICAgIC0tdGV4dENvbG9yOiAgICAgICAgICBoc2woMCwgMCUsIDAlKTtcbiAgICAtLXRleHRDb2xvcl9oOiAgICAgICAgICAwO1xuICAgIC0tdGV4dENvbG9yX3M6ICAgICAgICAgIDAlO1xuICAgIC0tdGV4dENvbG9yX2w6ICAgICAgICAgIDAlO1xuXG4gICAgLS1yYXRpbmdDb2xvcjogaHNsKDMyLCAxMDAlLCA2MCUpOyAvLy0gI0ZGOUUzMlxuICAgIC0tcmF0aW5nQ29sb3JfaDogMzI7XG4gICAgLS1yYXRpbmdDb2xvcl9zOiAxMDAlO1xuICAgIC0tcmF0aW5nQ29sb3JfbDogNjAlO1xuXG4gICAgLS1DVEE6IGhzbCgzOSwgMTAwJSwgNTAlKTsgLy8tICNGRkE1MDBcbiAgICAtLUNUQV9oOiAzOTtcbiAgICAtLUNUQV9zOiAxMDAlO1xuICAgIC0tQ1RBX2w6IDUwJTtcbn1cblxuJGJsYWNrOiAgICAgICAgICAgICAgICAgICAgICAjMDAwO1xuJHdoaXRlOiAgICAgICAgICAgICAgICAgICAgICNmZmY7XG4kbGlnaHQtYmxhY2s6ICAgICAgICAgICAgICAjMTExOTI2O1xuJGNsYXktYnJvd246ICAgICAgICAgICAgICAgICNiYTdjM2I7XG4kd2FybS1ncmV5OiAgICAgICAgICAgICAgICAgIzcwNzA3MDtcblxuJG1haW5Db2xvcjogdmFyKC0tbWFpbkNvbG9yKTtcbiRzZWNvbmRhcnlDb2xvcjogdmFyKC0tc2Vjb25kYXJ5Q29sb3IpO1xuXG4kc2Vjb25kYXJ5Q29sb3I6ICAgICAgICAgICAgICAgIHZhcigtLXNlY29uZGFyeUNvbG9yKTtcbiRzZWNvbmRhcnlDb2xvck9wYWNpdHk6ICAgICAgICAgaHNsYSh2YXIoLS1zZWNvbmRhcnlDb2xvcl9oKSwgdmFyKC0tc2Vjb25kYXJ5Q29sb3JfcyksIHZhcigtLXNlY29uZGFyeUNvbG9yX2wpLCAuMyApO1xuXG4kdGVydGlhcnlDb2xvcjogICAgICAgICAgICAgICAgdmFyKC0tdGVydGlhcnlDb2xvcik7XG5cbiR0aXRsZUNvbG9yOiAgICAgICAgICAgICAgICAgICAgdmFyKC0tdGl0bGVDb2xvcik7XG4kdGV4dENvbG9yOiAgICAgICAgICAgICAgICAgICAgIHZhcigtLXRleHRDb2xvcik7XG5cbiRidXR0b25Db2xvclN0YXJ0OiAgICAgICAgICAgICAgdmFyKC0tQ1RBKTtcbiRidXR0b25Db2xvckVuZDogICAgICAgICAgICAgICAgaHNsKHZhcigtLUNUQV9oKSwgdmFyKC0tQ1RBX3MpLCBjYWxjKCB2YXIoLS1DVEFfbCkgKyAyMCUgKSApOyAvLy0gaHNsKDEyMCwgMTAwJSwgNDAlKVxuJGJ1dHRvbkdyYWRpZW50OiAgICAgICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCAkYnV0dG9uQ29sb3JTdGFydCwgJGJ1dHRvbkNvbG9yRW5kKTtcbiRidXR0b25Db2xvcjogICAgICAgICAgICAgICAgICAgdmFyKC0tQ1RBKTtcblxuJGhlYWRlckNvbG9yOiAgICAgICAgICAgICAgICAgICAkbGlnaHQtYmxhY2s7XG4kYmdDb2xvcjogICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZTtcblxuJG1haW5TaGFkb3c6ICAgICAgICAgICAgICAgICAgICAwIDVweCA1cHggMCAjY2FjOWM5O1xuJGJ1dHRvblRleHRTaGFkb3c6ICAgICAgICAgICAgICAkY2xheS1icm93bjtcbiRidXR0b25UZXh0U2hhZG93RGlzYWJsZWQ6ICAgICAgJHdhcm0tZ3JleTtcblxuJGJveC1zaGFkb3c6ICAgICAgICAgIHJnYmEoYmxhY2ssIC4xNik7XG4kdGV4dFNoYWRvdzogcmdiYSgkYmxhY2ssIDAuMTUpO1xuIiwiLy8gQ29udGFpbmVyIHdpZHRoc1xuLy9cbi8vIFNldCB0aGUgY29udGFpbmVyIHdpZHRoLCBhbmQgb3ZlcnJpZGUgaXQgZm9yIGZpeGVkIG5hdmJhcnMgaW4gbWVkaWEgcXVlcmllcy5cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLy8gU2luZ2xlIGNvbnRhaW5lciBjbGFzcyB3aXRoIGJyZWFrcG9pbnQgbWF4LXdpZHRoc1xuICAuY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lcigpO1xuICAgIEBpbmNsdWRlIG1ha2UtY29udGFpbmVyLW1heC13aWR0aHMoKTtcbiAgfVxuXG4gIC8vIDEwMCUgd2lkZSBjb250YWluZXIgYXQgYWxsIGJyZWFrcG9pbnRzXG4gIC5jb250YWluZXItZmx1aWQge1xuICAgIEBpbmNsdWRlIG1ha2UtY29udGFpbmVyKCk7XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIGNvbnRhaW5lcnMgdGhhdCBhcmUgMTAwJSB3aWRlIHVudGlsIGEgYnJlYWtwb2ludFxuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICAuY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgIEBleHRlbmQgLmNvbnRhaW5lci1mbHVpZDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cykge1xuICAgICAgJXJlc3BvbnNpdmUtY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgbWF4LXdpZHRoOiAkY29udGFpbmVyLW1heC13aWR0aDtcbiAgICAgIH1cblxuICAgICAgLy8gRXh0ZW5kIGVhY2ggYnJlYWtwb2ludCB3aGljaCBpcyBzbWFsbGVyIG9yIGVxdWFsIHRvIHRoZSBjdXJyZW50IGJyZWFrcG9pbnRcbiAgICAgICRleHRlbmQtYnJlYWtwb2ludDogdHJ1ZTtcblxuICAgICAgQGVhY2ggJG5hbWUsICR3aWR0aCBpbiAkZ3JpZC1icmVha3BvaW50cyB7XG4gICAgICAgIEBpZiAoJGV4dGVuZC1icmVha3BvaW50KSB7XG4gICAgICAgICAgLmNvbnRhaW5lciN7YnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGdyaWQtYnJlYWtwb2ludHMpfSB7XG4gICAgICAgICAgICBAZXh0ZW5kICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBPbmNlIHRoZSBjdXJyZW50IGJyZWFrcG9pbnQgaXMgcmVhY2hlZCwgc3RvcCBleHRlbmRpbmdcbiAgICAgICAgICBAaWYgKCRicmVha3BvaW50ID09ICRuYW1lKSB7XG4gICAgICAgICAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIFJvd1xuLy9cbi8vIFJvd3MgY29udGFpbiB5b3VyIGNvbHVtbnMuXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIC5yb3cge1xuICAgIEBpbmNsdWRlIG1ha2Utcm93KCk7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIG5lZ2F0aXZlIG1hcmdpbiBmcm9tIGRlZmF1bHQgLnJvdywgdGhlbiB0aGUgaG9yaXpvbnRhbCBwYWRkaW5nXG4gIC8vIGZyb20gYWxsIGltbWVkaWF0ZSBjaGlsZHJlbiBjb2x1bW5zICh0byBwcmV2ZW50IHJ1bmF3YXkgc3R5bGUgaW5oZXJpdGFuY2UpLlxuICAubm8tZ3V0dGVycyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgPiAuY29sLFxuICAgID4gW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuLy8gQ29sdW1uc1xuLy9cbi8vIENvbW1vbiBzdHlsZXMgZm9yIHNtYWxsIGFuZCBsYXJnZSBncmlkIGNvbHVtbnNcblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgQGluY2x1ZGUgbWFrZS1ncmlkLWNvbHVtbnMoKTtcbn1cbiIsIi8vLyBHcmlkIHN5c3RlbVxuLy9cbi8vIEdlbmVyYXRlIHNlbWFudGljIGdyaWQgY29sdW1ucyB3aXRoIHRoZXNlIG1peGlucy5cblxuQG1peGluIG1ha2UtY29udGFpbmVyKCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogJGd1dHRlciAvIDI7XG4gIHBhZGRpbmctbGVmdDogJGd1dHRlciAvIDI7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG5cblxuLy8gRm9yIGVhY2ggYnJlYWtwb2ludCwgZGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIHRoZSBjb250YWluZXIgaW4gYSBtZWRpYSBxdWVyeVxuQG1peGluIG1ha2UtY29udGFpbmVyLW1heC13aWR0aHMoJG1heC13aWR0aHM6ICRjb250YWluZXItbWF4LXdpZHRocywgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJG1heC13aWR0aHMge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xuICAgICAgbWF4LXdpZHRoOiAkY29udGFpbmVyLW1heC13aWR0aDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1ha2Utcm93KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogLSRndXR0ZXIgLyAyO1xuICBtYXJnaW4tbGVmdDogLSRndXR0ZXIgLyAyO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtcmVhZHkoJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gUHJldmVudCBjb2x1bW5zIGZyb20gYmVjb21pbmcgdG9vIG5hcnJvdyB3aGVuIGF0IHNtYWxsZXIgZ3JpZCB0aWVycyBieVxuICAvLyBhbHdheXMgc2V0dGluZyBgd2lkdGg6IDEwMCU7YC4gVGhpcyB3b3JrcyBiZWNhdXNlIHdlIHVzZSBgZmxleGAgdmFsdWVzXG4gIC8vIGxhdGVyIG9uIHRvIG92ZXJyaWRlIHRoaXMgaW5pdGlhbCB3aWR0aC5cbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgLyAyO1xuICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXIgLyAyO1xufVxuXG5AbWl4aW4gbWFrZS1jb2woJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gIGZsZXg6IDAgMCBwZXJjZW50YWdlKCRzaXplIC8gJGNvbHVtbnMpO1xuICAvLyBBZGQgYSBgbWF4LXdpZHRoYCB0byBlbnN1cmUgY29udGVudCB3aXRoaW4gZWFjaCBjb2x1bW4gZG9lcyBub3QgYmxvdyBvdXRcbiAgLy8gdGhlIHdpZHRoIG9mIHRoZSBjb2x1bW4uIEFwcGxpZXMgdG8gSUUxMCsgYW5kIEZpcmVmb3guIENocm9tZSBhbmQgU2FmYXJpXG4gIC8vIGRvIG5vdCBhcHBlYXIgdG8gcmVxdWlyZSB0aGlzLlxuICBtYXgtd2lkdGg6IHBlcmNlbnRhZ2UoJHNpemUgLyAkY29sdW1ucyk7XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1hdXRvKCkge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTsgLy8gUmVzZXQgZWFybGllciBncmlkIHRpZXJzXG59XG5cbkBtaXhpbiBtYWtlLWNvbC1vZmZzZXQoJHNpemUsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gICRudW06ICRzaXplIC8gJGNvbHVtbnM7XG4gIG1hcmdpbi1sZWZ0OiBpZigkbnVtID09IDAsIDAsIHBlcmNlbnRhZ2UoJG51bSkpO1xufVxuXG4vLyBSb3cgY29sdW1uc1xuLy9cbi8vIFNwZWNpZnkgb24gYSBwYXJlbnQgZWxlbWVudChlLmcuLCAucm93KSB0byBmb3JjZSBpbW1lZGlhdGUgY2hpbGRyZW4gaW50byBOTlxuLy8gbnVtYmVyb2YgY29sdW1ucy4gU3VwcG9ydHMgd3JhcHBpbmcgdG8gbmV3IGxpbmVzLCBidXQgZG9lcyBub3QgZG8gYSBNYXNvbnJ5XG4vLyBzdHlsZSBncmlkLlxuQG1peGluIHJvdy1jb2xzKCRjb3VudCkge1xuICAmID4gKiB7XG4gICAgZmxleDogMCAwIDEwMCUgLyAkY291bnQ7XG4gICAgbWF4LXdpZHRoOiAxMDAlIC8gJGNvdW50O1xuICB9XG59XG4iLCIvLyBCcmVha3BvaW50IHZpZXdwb3J0IHNpemVzIGFuZCBtZWRpYSBxdWVyaWVzLlxuLy9cbi8vIEJyZWFrcG9pbnRzIGFyZSBkZWZpbmVkIGFzIGEgbWFwIG9mIChuYW1lOiBtaW5pbXVtIHdpZHRoKSwgb3JkZXIgZnJvbSBzbWFsbCB0byBsYXJnZTpcbi8vXG4vLyAgICAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpXG4vL1xuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxuXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQgbGcgeGwpKVxuLy8gICAgbWRcbkBmdW5jdGlvbiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpKSB7XG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRuICE9IG51bGwgYW5kICRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNTc2cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIGxhcmdlc3QgKGxhc3QpIGJyZWFrcG9pbnQuXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyBjYWxjdWxhdGVkIGFzIHRoZSBtaW5pbXVtIG9mIHRoZSBuZXh0IG9uZSBsZXNzIDAuMDJweFxuLy8gdG8gd29yayBhcm91bmQgdGhlIGxpbWl0YXRpb25zIG9mIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHMgd2l0aCBmcmFjdGlvbmFsIHdpZHRocy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcbi8vIFVzZXMgMC4wMnB4IHJhdGhlciB0aGFuIDAuMDFweCB0byB3b3JrIGFyb3VuZCBhIGN1cnJlbnQgcm91bmRpbmcgYnVnIGluIFNhZmFyaS5cbi8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA3NjcuOThweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEByZXR1cm4gaWYoJG5leHQsIGJyZWFrcG9pbnQtbWluKCRuZXh0LCAkYnJlYWtwb2ludHMpIC0gLjAyLCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cbi8vXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXG5cbkBtaXhpbiBtYWtlLWdyaWQtY29sdW1ucygkY29sdW1uczogJGdyaWQtY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIC8vIENvbW1vbiBwcm9wZXJ0aWVzIGZvciBhbGwgYnJlYWtwb2ludHNcbiAgJWdyaWQtY29sdW1uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1yaWdodDogJGd1dHRlciAvIDI7XG4gICAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyIC8gMjtcbiAgfVxuXG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRicmVha3BvaW50cykge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcblxuICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgLy8gQWxsb3cgY29sdW1ucyB0byBzdHJldGNoIGZ1bGwgd2lkdGggYmVsb3cgdGhlaXIgYnJlYWtwb2ludHNcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAuY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICBAZXh0ZW5kICVncmlkLWNvbHVtbjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5jb2wjeyRpbmZpeH0sXG4gICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgIEBleHRlbmQgJWdyaWQtY29sdW1uO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cykge1xuICAgICAgLy8gUHJvdmlkZSBiYXNpYyBgLmNvbC17YnB9YCBjbGFzc2VzIGZvciBlcXVhbC13aWR0aCBmbGV4Ym94IGNvbHVtbnNcbiAgICAgIC5jb2wjeyRpbmZpeH0ge1xuICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIG1pbi13aWR0aDogMDsgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjU0MTBcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGdyaWQtcm93LWNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1yb3ctY29sdW1ucyB7XG4gICAgICAgICAgLnJvdy1jb2xzI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJvdy1jb2xzKCRpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAub3JkZXIjeyRpbmZpeH0tZmlyc3QgeyBvcmRlcjogLTE7IH1cblxuICAgICAgLm9yZGVyI3skaW5maXh9LWxhc3QgeyBvcmRlcjogJGNvbHVtbnMgKyAxOyB9XG5cbiAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAub3JkZXIjeyRpbmZpeH0tI3skaX0geyBvcmRlcjogJGk7IH1cbiAgICAgIH1cblxuICAgICAgQGlmICRjb2x1bW5zID4gMCB7XG4gICAgICAgIC8vIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZVxuICAgICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIiBhbmQgJGkgPT0gMCkgeyAvLyBBdm9pZCBlbWl0dGluZyB1c2VsZXNzIC5vZmZzZXQtMFxuICAgICAgICAgICAgLm9mZnNldCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLW9mZnNldCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLmZhZGUge1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWZhZGUpO1xuXG4gICY6bm90KC5zaG93KSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4uY29sbGFwc2Uge1xuICAmOm5vdCguc2hvdykge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmNvbGxhcHNpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1jb2xsYXBzZSk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1ibGFja2xpc3RcbkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLi4uKSB7XG4gIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID09IDAge1xuICAgICR0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1iYXNlO1xuICB9XG5cbiAgQGlmIGxlbmd0aCgkdHJhbnNpdGlvbikgPiAxIHtcbiAgICBAZWFjaCAkdmFsdWUgaW4gJHRyYW5zaXRpb24ge1xuICAgICAgQGlmICR2YWx1ZSA9PSBudWxsIG9yICR2YWx1ZSA9PSBub25lIHtcbiAgICAgICAgQHdhcm4gXCJUaGUga2V5d29yZCAnbm9uZScgb3IgJ251bGwnIG11c3QgYmUgdXNlZCBhcyBhIHNpbmdsZSBhcmd1bWVudC5cIjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gICAgQGlmIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbnVsbCB7XG4gICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgICB9XG5cbiAgICBAaWYgJGVuYWJsZS1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLW1lZGlhLXF1ZXJ5IGFuZCBudGgoJHRyYW5zaXRpb24sIDEpICE9IG51bGwgYW5kIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbm9uZSB7XG4gICAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gLm1vZGFsLW9wZW4gICAgICAtIGJvZHkgY2xhc3MgZm9yIGtpbGxpbmcgdGhlIHNjcm9sbFxuLy8gLm1vZGFsICAgICAgICAgICAtIGNvbnRhaW5lciB0byBzY3JvbGwgd2l0aGluXG4vLyAubW9kYWwtZGlhbG9nICAgIC0gcG9zaXRpb25pbmcgc2hlbGwgZm9yIHRoZSBhY3R1YWwgbW9kYWxcbi8vIC5tb2RhbC1jb250ZW50ICAgLSBhY3R1YWwgbW9kYWwgdy8gYmcgYW5kIGNvcm5lcnMgYW5kIHN0dWZmXG5cblxuLm1vZGFsLW9wZW4ge1xuICAvLyBLaWxsIHRoZSBzY3JvbGwgb24gdGhlIGJvZHlcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAubW9kYWwge1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG59XG5cbi8vIENvbnRhaW5lciB0aGF0IHRoZSBtb2RhbCBzY3JvbGxzIHdpdGhpblxuLm1vZGFsIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWw7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8vIFByZXZlbnQgQ2hyb21lIG9uIFdpbmRvd3MgZnJvbSBhZGRpbmcgYSBmb2N1cyBvdXRsaW5lLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEwOTUxLlxuICBvdXRsaW5lOiAwO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG9uJ3QgdXNlIGAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7YCBkdWUgdG8gYVxuICAvLyBnbmFybHkgaU9TIFNhZmFyaSBidWc6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTgzNDJcbiAgLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xNzY5NVxufVxuXG4vLyBTaGVsbCBkaXYgdG8gcG9zaXRpb24gdGhlIG1vZGFsIHdpdGggYm90dG9tIHBhZGRpbmdcbi5tb2RhbC1kaWFsb2cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46ICRtb2RhbC1kaWFsb2ctbWFyZ2luO1xuICAvLyBhbGxvdyBjbGlja3MgdG8gcGFzcyB0aHJvdWdoIGZvciBjdXN0b20gY2xpY2sgaGFuZGxpbmcgdG8gY2xvc2UgbW9kYWxcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgLy8gV2hlbiBmYWRpbmcgaW4gdGhlIG1vZGFsLCBhbmltYXRlIGl0IHRvIHNsaWRlIGRvd25cbiAgLm1vZGFsLmZhZGUgJiB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkbW9kYWwtdHJhbnNpdGlvbik7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtZmFkZS10cmFuc2Zvcm07XG4gIH1cbiAgLm1vZGFsLnNob3cgJiB7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtc2hvdy10cmFuc2Zvcm07XG4gIH1cblxuICAvLyBXaGVuIHRyeWluZyB0byBjbG9zZSwgYW5pbWF0ZSBmb2N1cyB0byBzY2FsZVxuICAubW9kYWwubW9kYWwtc3RhdGljICYge1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLXNjYWxlLXRyYW5zZm9ybTtcbiAgfVxufVxuXG4ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICBkaXNwbGF5OiBmbGV4OyAvLyBJRTEwLzExXG4gIG1heC1oZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luICogMik7XG5cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIG1heC1oZWlnaHQ6IHN1YnRyYWN0KDEwMHZoLCAkbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDIpOyAvLyBJRTEwLzExXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIC5tb2RhbC1oZWFkZXIsXG4gIC5tb2RhbC1mb290ZXIge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICB9XG5cbiAgLm1vZGFsLWJvZHkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbn1cblxuLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1pbi1oZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luICogMik7XG5cbiAgLy8gRW5zdXJlIGBtb2RhbC1kaWFsb2ctY2VudGVyZWRgIGV4dGVuZHMgdGhlIGZ1bGwgaGVpZ2h0IG9mIHRoZSB2aWV3IChJRTEwLzExKVxuICAmOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyAvLyBJRTEwXG4gICAgaGVpZ2h0OiBzdWJ0cmFjdCgxMDB2aCwgJG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyKTtcbiAgICBoZWlnaHQ6IG1pbi1jb250ZW50OyAvLyBSZXNldCBoZWlnaHQgdG8gMCBleGNlcHQgb24gSUVcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG5cbiAgLy8gRW5zdXJlIGAubW9kYWwtYm9keWAgc2hvd3Mgc2Nyb2xsYmFyIChJRTEwLzExKVxuICAmLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgIG1heC1oZWlnaHQ6IG5vbmU7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi8vIEFjdHVhbCBtb2RhbFxuLm1vZGFsLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiAxMDAlOyAvLyBFbnN1cmUgYC5tb2RhbC1jb250ZW50YCBleHRlbmRzIHRoZSBmdWxsIHdpZHRoIG9mIHRoZSBwYXJlbnQgYC5tb2RhbC1kaWFsb2dgXG4gIC8vIGNvdW50ZXJhY3QgdGhlIHBvaW50ZXItZXZlbnRzOiBub25lOyBpbiB0aGUgLm1vZGFsLWRpYWxvZ1xuICBjb2xvcjogJG1vZGFsLWNvbnRlbnQtY29sb3I7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtY29udGVudC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggc29saWQgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMpO1xuICAvLyBSZW1vdmUgZm9jdXMgb3V0bGluZSBmcm9tIG9wZW5lZCBtb2RhbFxuICBvdXRsaW5lOiAwO1xufVxuXG4vLyBNb2RhbCBiYWNrZ3JvdW5kXG4ubW9kYWwtYmFja2Ryb3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbC1iYWNrZHJvcDtcbiAgd2lkdGg6IDEwMHZ3O1xuICBoZWlnaHQ6IDEwMHZoO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtYmFja2Ryb3AtYmc7XG5cbiAgLy8gRmFkZSBmb3IgYmFja2Ryb3BcbiAgJi5mYWRlIHsgb3BhY2l0eTogMDsgfVxuICAmLnNob3cgeyBvcGFjaXR5OiAkbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTsgfVxufVxuXG4vLyBNb2RhbCBoZWFkZXJcbi8vIFRvcCBzZWN0aW9uIG9mIHRoZSBtb2RhbCB3LyB0aXRsZSBhbmQgZGlzbWlzc1xuLm1vZGFsLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyAvLyBzbyB0aGUgY2xvc2UgYnRuIGFsd2F5cyBzdGF5cyBvbiB0aGUgdXBwZXIgcmlnaHQgY29ybmVyXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgLy8gUHV0IG1vZGFsIGhlYWRlciBlbGVtZW50cyAodGl0bGUgYW5kIGRpc21pc3MpIG9uIG9wcG9zaXRlIGVuZHNcbiAgcGFkZGluZzogJG1vZGFsLWhlYWRlci1wYWRkaW5nO1xuICBib3JkZXItYm90dG9tOiAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgLmNsb3NlIHtcbiAgICBwYWRkaW5nOiAkbW9kYWwtaGVhZGVyLXBhZGRpbmc7XG4gICAgLy8gYXV0byBvbiB0aGUgbGVmdCBmb3JjZSBpY29uIHRvIHRoZSByaWdodCBldmVuIHdoZW4gdGhlcmUgaXMgbm8gLm1vZGFsLXRpdGxlXG4gICAgbWFyZ2luOiAoLSRtb2RhbC1oZWFkZXItcGFkZGluZy15KSAoLSRtb2RhbC1oZWFkZXItcGFkZGluZy14KSAoLSRtb2RhbC1oZWFkZXItcGFkZGluZy15KSBhdXRvO1xuICB9XG59XG5cbi8vIFRpdGxlIHRleHQgd2l0aGluIGhlYWRlclxuLm1vZGFsLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6ICRtb2RhbC10aXRsZS1saW5lLWhlaWdodDtcbn1cblxuLy8gTW9kYWwgYm9keVxuLy8gV2hlcmUgYWxsIG1vZGFsIGNvbnRlbnQgcmVzaWRlcyAoc2libGluZyBvZiAubW9kYWwtaGVhZGVyIGFuZCAubW9kYWwtZm9vdGVyKVxuLm1vZGFsLWJvZHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBzbyB0aGF0IHRoZSBib2R5IHRha2UgdXAgYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZVxuICAvLyB3aGVuIHRoZXJlIHNob3VsZCBiZSBhIGZpeGVkIGhlaWdodCBvbiBgLm1vZGFsLWRpYWxvZ2AuXG4gIGZsZXg6IDEgMSBhdXRvO1xuICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZztcbn1cblxuLy8gRm9vdGVyIChmb3IgYWN0aW9ucylcbi5tb2RhbC1mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIHZlcnRpY2FsbHkgY2VudGVyXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IC8vIFJpZ2h0IGFsaWduIGJ1dHRvbnMgd2l0aCBmbGV4IHByb3BlcnR5IGJlY2F1c2UgdGV4dC1hbGlnbiBkb2Vzbid0IHdvcmsgb24gZmxleCBpdGVtc1xuICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZyAtICRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW4gLyAyO1xuICBib3JkZXItdG9wOiAkbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgLy8gUGxhY2UgbWFyZ2luIGJldHdlZW4gZm9vdGVyIGVsZW1lbnRzXG4gIC8vIFRoaXMgc29sdXRpb24gaXMgZmFyIGZyb20gaWRlYWwgYmVjYXVzZSBvZiB0aGUgdW5pdmVyc2FsIHNlbGVjdG9yIHVzYWdlLFxuICAvLyBidXQgaXMgbmVlZGVkIHRvIGZpeCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0ODAwXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtdW5pdmVyc2FsXG4gID4gKiB7XG4gICAgbWFyZ2luOiAkbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVuIC8gMjtcbiAgfVxufVxuXG4vLyBNZWFzdXJlIHNjcm9sbGJhciB3aWR0aCBmb3IgcGFkZGluZyBib2R5IGR1cmluZyBtb2RhbCBzaG93L2hpZGVcbi5tb2RhbC1zY3JvbGxiYXItbWVhc3VyZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtOTk5OXB4O1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBvdmVyZmxvdzogc2Nyb2xsO1xufVxuXG4vLyBTY2FsZSB1cCB0aGUgbW9kYWxcbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgLy8gQXV0b21hdGljYWxseSBzZXQgbW9kYWwncyB3aWR0aCBmb3IgbGFyZ2VyIHZpZXdwb3J0c1xuICAubW9kYWwtZGlhbG9nIHtcbiAgICBtYXgtd2lkdGg6ICRtb2RhbC1tZDtcbiAgICBtYXJnaW46ICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgYXV0bztcbiAgfVxuXG4gIC5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gICAgbWF4LWhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDIpO1xuXG4gICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgbWF4LWhlaWdodDogc3VidHJhY3QoMTAwdmgsICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyKTtcbiAgICB9XG4gIH1cblxuICAubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHtcbiAgICBtaW4taGVpZ2h0OiBzdWJ0cmFjdCgxMDAlLCAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMik7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgaGVpZ2h0OiBzdWJ0cmFjdCgxMDB2aCwgJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDIpO1xuICAgICAgaGVpZ2h0OiBtaW4tY29udGVudDtcbiAgICB9XG4gIH1cblxuICAubW9kYWwtY29udGVudCB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXNtLXVwKTtcbiAgfVxuXG4gIC5tb2RhbC1zbSB7IG1heC13aWR0aDogJG1vZGFsLXNtOyB9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgLm1vZGFsLWxnLFxuICAubW9kYWwteGwge1xuICAgIG1heC13aWR0aDogJG1vZGFsLWxnO1xuICB9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgLm1vZGFsLXhsIHsgbWF4LXdpZHRoOiAkbW9kYWwteGw7IH1cbn1cbiIsIkB1c2UgXCJzYXNzOm1hdGhcIjtcblxuOnJvb3QgeyAgICBcbiAgICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldC1taWQnKSB7XG4gICAgICAgIC0tZ3JpZC1ndXR0ZXItd2lkdGg6IDMycHg7XG4gICAgICAgIC0tc2VjdGlvbi1pbm5lcjogNDBweDtcbiAgICB9XG4gICAgXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0LW1pZCcpIHtcbiAgICAgICAgLS1ncmlkLWd1dHRlci13aWR0aDogNDhweDtcbiAgICAgICAgLS1zZWN0aW9uLWlubmVyOiA2MHB4O1xuICAgIH1cbn1cblxubWFpbiA+IHNlY3Rpb24ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47IC8vLSB0byByZW1vdmUgaG9yaXpvbnRhbCBzY3JvbGwgY3JlYXRlZCBieSBuZWdhdGl2ZSBwb3NpdGlvbiBvZiBkZWNvcmF0aXZlIGJnLWltYWdlcyBsb2NhdGVkIG9uIHRoZSByaWdodCBzaWRlXG59XG5cbmJvZHkge1xuICAgICYubm9zY3JvbGx7XG4gICAgICAgIG1hcmdpbjogMDsgaGVpZ2h0OiAxMDAlOyBvdmVyZmxvdzogaGlkZGVuOyB0b3VjaC1hY3Rpb246IG5vbmU7XG4gICAgfVxufVxuXG5bY2xhc3NePVwiY29udGFpbmVyXCJdIHtcbiAgIHdpZHRoOiAxMDAlOyBcbiAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLWdyaWQtZ3V0dGVyLXdpZHRoKSAvIDIpO1xuICAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS1ncmlkLWd1dHRlci13aWR0aCkgLyAyKTtcbn1cblxuLmNvbnRhaW5lci14bCB7XG4gICAgbWF4LXdpZHRoOiBtYXAtZ2V0KCRjb250YWluZXItbWF4LXdpZHRocywgeGwpOyBcbn1cbi5jb250YWluZXItbWQge1xuICAgIG1heC13aWR0aDogbWFwLWdldCgkY29udGFpbmVyLW1heC13aWR0aHMsIG1kKTsgXG59XG5cbi5jb250YWluZXItbGcge1xuICAgIG1heC13aWR0aDogbWFwLWdldCgkY29udGFpbmVyLW1heC13aWR0aHMsIGxnKTtcbn1cblxuc2VjdGlvbiB7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXNlY3Rpb24taW5uZXIpO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zZWN0aW9uLWlubmVyKTtcblxuICAgIHVsOm5vdChbY2xhc3NdKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFlbTtcblxuICAgIH1cblxuICAgIGxpOm5vdChbY2xhc3NdKSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luLXRvcDogMWVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuOGVtO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgbWFzazogdXJsKCRzdmctZGF0YSArICR0aWNrLXNlY29uZGFyeUNvbG9yKSBuby1yZXBlYXQ7IFxuICAgICAgICAgICAgLXdlYmtpdC1tYXNrOiB1cmwoJHN2Zy1kYXRhICsgJHRpY2stc2Vjb25kYXJ5Q29sb3IpIG5vLXJlcGVhdDsgXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IFxuICAgICAgICAgICAgdG9wOiAycHg7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7IFxuICAgICAgICAgICAgd2lkdGg6IDIycHg7IFxuICAgICAgICAgICAgaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeUNvbG9yO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5mb290ZXIge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zZWN0aW9uLWlubmVyKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc2VjdGlvbi1pbm5lcik7XG59XG5cbmltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7IHdpZHRoOiAxMDAlOyBtYXJnaW46IDAgYXV0bzsgXG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1ibGFja2xpc3Rcbi8vIFNpbmdsZSBzaWRlIGJvcmRlci1yYWRpdXNcblxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIHJlcGxhY2UgbmVnYXRpdmUgdmFsdWVzIHdpdGggMFxuQGZ1bmN0aW9uIHZhbGlkLXJhZGl1cygkcmFkaXVzKSB7XG4gICRyZXR1cm46ICgpO1xuICBAZWFjaCAkdmFsdWUgaW4gJHJhZGl1cyB7XG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSBudW1iZXIge1xuICAgICAgJHJldHVybjogYXBwZW5kKCRyZXR1cm4sIG1heCgkdmFsdWUsIDApKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCAkdmFsdWUpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRyZXR1cm47XG59XG5cbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzLCAkZmFsbGJhY2stYm9yZGVyLXJhZGl1czogZmFsc2UpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG4gIEBlbHNlIGlmICRmYWxsYmFjay1ib3JkZXItcmFkaXVzICE9IGZhbHNlIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBGbGV4IHZhcmlhdGlvblxuLy9cbi8vIEN1c3RvbSBzdHlsZXMgZm9yIGFkZGl0aW9uYWwgZmxleCBhbGlnbm1lbnQgb3B0aW9ucy5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmZsZXgjeyRpbmZpeH0tcm93ICAgICAgICAgICAgeyBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1jb2x1bW4gICAgICAgICB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXJvdy1yZXZlcnNlICAgIHsgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1jb2x1bW4tcmV2ZXJzZSB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG5cbiAgICAuZmxleCN7JGluZml4fS13cmFwICAgICAgICAgeyBmbGV4LXdyYXA6IHdyYXAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LW5vd3JhcCAgICAgICB7IGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS13cmFwLXJldmVyc2UgeyBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZSAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tZmlsbCAgICAgICAgIHsgZmxleDogMSAxIGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWdyb3ctMCAgICAgICB7IGZsZXgtZ3JvdzogMCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tZ3Jvdy0xICAgICAgIHsgZmxleC1ncm93OiAxICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1zaHJpbmstMCAgICAgeyBmbGV4LXNocmluazogMCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tc2hyaW5rLTEgICAgIHsgZmxleC1zaHJpbms6IDEgIWltcG9ydGFudDsgfVxuXG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1zdGFydCAgIHsganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWVuZCAgICAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWNlbnRlciAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmp1c3RpZnktY29udGVudCN7JGluZml4fS1iZXR3ZWVuIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWFyb3VuZCAgeyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZCAhaW1wb3J0YW50OyB9XG5cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tc3RhcnQgICAgeyBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LWVuZCAgICAgIHsgYWxpZ24taXRlbXM6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tY2VudGVyICAgeyBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tYmFzZWxpbmUgeyBhbGlnbi1pdGVtczogYmFzZWxpbmUgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1zdHJldGNoICB7IGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LXN0YXJ0ICAgeyBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1lbmQgICAgIHsgYWxpZ24tY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWNlbnRlciAgeyBhbGlnbi1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWJldHdlZW4geyBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1hcm91bmQgIHsgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tY29udGVudCN7JGluZml4fS1zdHJldGNoIHsgYWxpZ24tY29udGVudDogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG5cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1hdXRvICAgICB7IGFsaWduLXNlbGY6IGF1dG8gIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LXN0YXJ0ICAgIHsgYWxpZ24tc2VsZjogZmxleC1zdGFydCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tZW5kICAgICAgeyBhbGlnbi1zZWxmOiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tY2VudGVyICAgeyBhbGlnbi1zZWxmOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWJhc2VsaW5lIHsgYWxpZ24tc2VsZjogYmFzZWxpbmUgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LXN0cmV0Y2ggIHsgYWxpZ24tc2VsZjogc3RyZXRjaCAhaW1wb3J0YW50OyB9XG4gIH1cbn1cbiIsIi8qIGh0dHA6Ly9tZXllcndlYi5jb20vZXJpYy90b29scy9jc3MvcmVzZXQvXG4gICB2Mi4wLW1vZGlmaWVkIHwgMjAxMTAxMjZcbiAgIExpY2Vuc2U6IG5vbmUgKHB1YmxpYyBkb21haW4pXG4qL1xuXG5odG1sLCBib2R5LCBkaXYsIHNwYW4sIGFwcGxldCwgb2JqZWN0LCBpZnJhbWUsXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwLCBibG9ja3F1b3RlLCBwcmUsXG5hLCBhYmJyLCBhY3JvbnltLCBhZGRyZXNzLCBiaWcsIGNpdGUsIGNvZGUsXG5kZWwsIGRmbiwgZW0sIGltZywgaW5zLCBrYmQsIHEsIHMsIHNhbXAsXG5zbWFsbCwgc3RyaWtlLCBzdHJvbmcsIHN1Yiwgc3VwLCB0dCwgdmFyLFxuYiwgdSwgaSwgY2VudGVyLFxuZGwsIGR0LCBkZCwgb2wsIHVsLCBsaSxcbmZpZWxkc2V0LCBmb3JtLCBsYWJlbCwgbGVnZW5kLFxudGFibGUsIGNhcHRpb24sIHRib2R5LCB0Zm9vdCwgdGhlYWQsIHRyLCB0aCwgdGQsXG5hcnRpY2xlLCBhc2lkZSwgY2FudmFzLCBkZXRhaWxzLCBlbWJlZCxcbmZpZ3VyZSwgZmlnY2FwdGlvbiwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCxcbm1lbnUsIG5hdiwgb3V0cHV0LCBydWJ5LCBzZWN0aW9uLCBzdW1tYXJ5LFxudGltZSwgbWFyaywgYXVkaW8sIHZpZGVvIHtcbiAgbWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwO1xuXHRib3JkZXI6IDA7XG5cdGZvbnQtc2l6ZTogMTAwJTtcblx0Zm9udDogaW5oZXJpdDtcblx0dmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vKiBtYWtlIHN1cmUgdG8gc2V0IHNvbWUgZm9jdXMgc3R5bGVzIGZvciBhY2Nlc3NpYmlsaXR5ICovXG46Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG59XG5cbi8qIEhUTUw1IGRpc3BsYXktcm9sZSByZXNldCBmb3Igb2xkZXIgYnJvd3NlcnMgKi9cbmFydGljbGUsIGFzaWRlLCBkZXRhaWxzLCBmaWdjYXB0aW9uLCBmaWd1cmUsXG5mb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtZW51LCBuYXYsIHNlY3Rpb24ge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cblxuYm9keSB7XG5cdGxpbmUtaGVpZ2h0OiAxO1xufVxuXG5vbCwgdWwge1xuXHRsaXN0LXN0eWxlOiBub25lO1xufVxuXG5ibG9ja3F1b3RlLCBxIHtcblx0cXVvdGVzOiBub25lO1xufVxuXG5ibG9ja3F1b3RlOmJlZm9yZSwgYmxvY2txdW90ZTphZnRlcixcbnE6YmVmb3JlLCBxOmFmdGVyIHtcblx0Y29udGVudDogJyc7XG5cdGNvbnRlbnQ6IG5vbmU7XG59XG5cbnRhYmxlIHtcblx0Ym9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcblx0Ym9yZGVyLXNwYWNpbmc6IDA7XG59XG5cbmlucHV0W3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbmlucHV0W3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbixcbmlucHV0W3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtcmVzdWx0cy1idXR0b24sXG5pbnB1dFt0eXBlPXNlYXJjaF06Oi13ZWJraXQtc2VhcmNoLXJlc3VsdHMtZGVjb3JhdGlvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuaW5wdXRbdHlwZT1zZWFyY2hdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgLW1vei1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbn1cblxudGV4dGFyZWEge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgcmVzaXplOiB2ZXJ0aWNhbDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgNi83LzgvOSBhbmQgRmlyZWZveCAzLlxuICovXG5cbmF1ZGlvLFxuY2FudmFzLFxudmlkZW8ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAqZGlzcGxheTogaW5saW5lO1xuICAgICp6b29tOiAxO1xuICAgIG1heC13aWR0aDogMTAwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IG1vZGVybiBicm93c2VycyBmcm9tIGRpc3BsYXlpbmcgYGF1ZGlvYCB3aXRob3V0IGNvbnRyb2xzLlxuICogUmVtb3ZlIGV4Y2VzcyBoZWlnaHQgaW4gaU9TIDUgZGV2aWNlcy5cbiAqL1xuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgaGVpZ2h0OiAwO1xufVxuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA3LzgvOSwgRmlyZWZveCAzLCBhbmQgU2FmYXJpIDQuXG4gKiBLbm93biBpc3N1ZTogbm8gSUUgNiBzdXBwb3J0LlxuICovXG5cbltoaWRkZW5dIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGV4dCByZXNpemluZyBvZGRseSBpbiBJRSA2Lzcgd2hlbiBib2R5IGBmb250LXNpemVgIGlzIHNldCB1c2luZ1xuICogICAgYGVtYCB1bml0cy5cbiAqIDIuIFByZXZlbnQgaU9TIHRleHQgc2l6ZSBhZGp1c3QgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlLCB3aXRob3V0IGRpc2FibGluZ1xuICogICAgdXNlciB6b29tLlxuICovXG5cbmh0bWwge1xuICAgIGZvbnQtc2l6ZTogMTAwJTsgLyogMSAqL1xuICAgIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xuICAgIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkcmVzcyBgb3V0bGluZWAgaW5jb25zaXN0ZW5jeSBiZXR3ZWVuIENocm9tZSBhbmQgb3RoZXIgYnJvd3NlcnMuXG4gKi9cblxuYTpmb2N1cyB7XG4gICAgb3V0bGluZTogdGhpbiBkb3R0ZWQ7XG59XG5cbi8qKlxuICogSW1wcm92ZSByZWFkYWJpbGl0eSB3aGVuIGZvY3VzZWQgYW5kIGFsc28gbW91c2UgaG92ZXJlZCBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgICBvdXRsaW5lOiAwO1xufVxuXG4vKipcbiAqIDEuIFJlbW92ZSBib3JkZXIgd2hlbiBpbnNpZGUgYGFgIGVsZW1lbnQgaW4gSUUgNi83LzgvOSBhbmQgRmlyZWZveCAzLlxuICogMi4gSW1wcm92ZSBpbWFnZSBxdWFsaXR5IHdoZW4gc2NhbGVkIGluIElFIDcuXG4gKi9cblxuaW1nIHtcbiAgICBib3JkZXI6IDA7IC8qIDEgKi9cbiAgICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkcmVzcyBtYXJnaW4gbm90IHByZXNlbnQgaW4gSUUgNi83LzgvOSwgU2FmYXJpIDUsIGFuZCBPcGVyYSAxMS5cbiAqL1xuXG5maWd1cmUge1xuICAgIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IG1hcmdpbiBkaXNwbGF5ZWQgb2RkbHkgaW4gSUUgNi83LlxuICovXG5cbmZvcm0ge1xuICAgIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gKiBEZWZpbmUgY29uc2lzdGVudCBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcuXG4gKi9cblxuZmllbGRzZXQge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gICAgbWFyZ2luOiAwIDJweDtcbiAgICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCBjb2xvciBub3QgYmVpbmcgaW5oZXJpdGVkIGluIElFIDYvNy84LzkuXG4gKiAyLiBDb3JyZWN0IHRleHQgbm90IHdyYXBwaW5nIGluIEZpcmVmb3ggMy5cbiAqIDMuIENvcnJlY3QgYWxpZ25tZW50IGRpc3BsYXllZCBvZGRseSBpbiBJRSA2LzcuXG4gKi9cblxubGVnZW5kIHtcbiAgICBib3JkZXI6IDA7IC8qIDEgKi9cbiAgICBwYWRkaW5nOiAwO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDIgKi9cbiAgICAqbWFyZ2luLWxlZnQ6IC03cHg7IC8qIDMgKi9cbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IGZvbnQgc2l6ZSBub3QgYmVpbmcgaW5oZXJpdGVkIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIEFkZHJlc3MgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gSUUgNi83LCBGaXJlZm94IDMrLCBTYWZhcmkgNSxcbiAqICAgIGFuZCBDaHJvbWUuXG4gKiAzLiBJbXByb3ZlIGFwcGVhcmFuY2UgYW5kIGNvbnNpc3RlbmN5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgICBmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cbiAgICBtYXJnaW46IDA7IC8qIDIgKi9cbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8qIDMgKi9cbiAgICAqdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLyogMyAqL1xufVxuXG4vKipcbiAqIEFkZHJlc3MgRmlyZWZveCAzKyBzZXR0aW5nIGBsaW5lLWhlaWdodGAgb24gYGlucHV0YCB1c2luZyBgIWltcG9ydGFudGAgaW5cbiAqIHRoZSBVQSBzdHlsZXNoZWV0LlxuICovXG5cbmJ1dHRvbixcbmlucHV0IHtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGB0ZXh0LXRyYW5zZm9ybWAgaW5oZXJpdGFuY2UgZm9yIGBidXR0b25gIGFuZCBgc2VsZWN0YC5cbiAqIEFsbCBvdGhlciBmb3JtIGNvbnRyb2wgZWxlbWVudHMgZG8gbm90IGluaGVyaXQgYHRleHQtdHJhbnNmb3JtYCB2YWx1ZXMuXG4gKiBDb3JyZWN0IGBidXR0b25gIHN0eWxlIGluaGVyaXRhbmNlIGluIENocm9tZSwgU2FmYXJpIDUrLCBhbmQgSUUgNisuXG4gKiBDb3JyZWN0IGBzZWxlY3RgIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3ggNCsgYW5kIE9wZXJhLlxuICovXG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQXZvaWQgdGhlIFdlYktpdCBidWcgaW4gQW5kcm9pZCA0LjAuKiB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2BcbiAqICAgIGFuZCBgdmlkZW9gIGNvbnRyb2xzLlxuICogMi4gQ29ycmVjdCBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIGBpbnB1dGAgdHlwZXMgaW4gaU9TLlxuICogMy4gSW1wcm92ZSB1c2FiaWxpdHkgYW5kIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBiZXR3ZWVuIGltYWdlLXR5cGVcbiAqICAgIGBpbnB1dGAgYW5kIG90aGVycy5cbiAqIDQuIFJlbW92ZSBpbm5lciBzcGFjaW5nIGluIElFIDcgd2l0aG91dCBhZmZlY3Rpbmcgbm9ybWFsIHRleHQgaW5wdXRzLlxuICogICAgS25vd24gaXNzdWU6IGlubmVyIHNwYWNpbmcgcmVtYWlucyBpbiBJRSA2LlxuICovXG5cbmJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSwgLyogMSAqL1xuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDIgKi9cbiAgICBjdXJzb3I6IHBvaW50ZXI7IC8qIDMgKi9cbiAgICAqb3ZlcmZsb3c6IHZpc2libGU7ICAvKiA0ICovXG59XG5cbi8qKlxuICogUmUtc2V0IGRlZmF1bHQgY3Vyc29yIGZvciBkaXNhYmxlZCBlbGVtZW50cy5cbiAqL1xuXG5idXR0b25bZGlzYWJsZWRdLFxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLyoqXG4gKiAxLiBBZGRyZXNzIGJveCBzaXppbmcgc2V0IHRvIGNvbnRlbnQtYm94IGluIElFIDgvOS5cbiAqIDIuIFJlbW92ZSBleGNlc3MgcGFkZGluZyBpbiBJRSA4LzkuXG4gKiAzLiBSZW1vdmUgZXhjZXNzIHBhZGRpbmcgaW4gSUUgNy5cbiAqICAgIEtub3duIGlzc3VlOiBleGNlc3MgcGFkZGluZyByZW1haW5zIGluIElFIDYuXG4gKi9cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gICAgcGFkZGluZzogMDsgLyogMiAqL1xuICAgICpoZWlnaHQ6IDEzcHg7IC8qIDMgKi9cbiAgICAqd2lkdGg6IDEzcHg7IC8qIDMgKi9cbn1cblxuLyoqXG4gKiAxLiBBZGRyZXNzIGBhcHBlYXJhbmNlYCBzZXQgdG8gYHNlYXJjaGZpZWxkYCBpbiBTYWZhcmkgNSBhbmQgQ2hyb21lLlxuICogMi4gQWRkcmVzcyBgYm94LXNpemluZ2Agc2V0IHRvIGBib3JkZXItYm94YCBpbiBTYWZhcmkgNSBhbmQgQ2hyb21lXG4gKiAgICAoaW5jbHVkZSBgLW1vemAgdG8gZnV0dXJlLXByb29mKS5cbiAqL1xuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICAgIC1tb3otYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMiAqL1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xufVxuXG4vKipcbiAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBzZWFyY2ggY2FuY2VsIGJ1dHRvbiBpbiBTYWZhcmkgNSBhbmQgQ2hyb21lXG4gKiBvbiBPUyBYLlxuICovXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qKlxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIGJvcmRlciBpbiBGaXJlZm94IDMrLlxuICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbmlucHV0OjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXI6IDA7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgNi83LzgvOS5cbiAqIDIuIEltcHJvdmUgcmVhZGFiaWxpdHkgYW5kIGFsaWdubWVudCBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxudGV4dGFyZWEge1xuICAgIG92ZXJmbG93OiBhdXRvOyAvKiAxICovXG4gICAgdmVydGljYWwtYWxpZ246IHRvcDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxscy5cbiAqL1xuXG50YWJsZSB7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICBib3JkZXItc3BhY2luZzogMDtcbn1cblxuaHRtbCxcbmJ1dHRvbixcbmlucHV0LFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICAgIGNvbG9yOiAjMjIyO1xufVxuXG5cbjo6LW1vei1zZWxlY3Rpb24ge1xuICAgIGJhY2tncm91bmQ6ICNiM2Q0ZmM7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbjo6c2VsZWN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kOiAjYjNkNGZjO1xuICAgIHRleHQtc2hhZG93OiBub25lO1xufVxuXG5pbWcge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbmZpZWxkc2V0IHtcbiAgICBib3JkZXI6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbnRleHRhcmVhIHtcbiAgICByZXNpemU6IHZlcnRpY2FsO1xufVxuXG4uY2hyb21lZnJhbWUge1xuICAgIG1hcmdpbjogMC4yZW0gMDtcbiAgICBiYWNrZ3JvdW5kOiAjY2NjO1xuICAgIGNvbG9yOiAjMDAwO1xuICAgIHBhZGRpbmc6IDAuMmVtIDA7XG59XG4iLCIvLy0gUmVzZXQgRXh0ZW5kZWQgLSBPbiB0aGlzIHBhcnRpYWwgSSdsbCBleHRlbmQgdGhlIEVyaWMgTWV5ZXIgcmVzZXQgZmlsZSBieSBhZGRpbmcgbW9kZXJuIGFuZCB1c2VmdWxsIHNlbGVjdG9yc1xyXG5cclxuLy8tIE92ZXJyaWRlIGRlZmF1bHQgYm94LXNpemluZzogY29udGVudC1ib3g7IHNvIHdpZHRoIGlzIG5vdCBhZmZlY3RlZCBieSBwYWRkaW5nIGFuZCBib3JkZXIgcHJvcGVydGllc1xyXG5odG1sIHtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbn1cclxuXHJcbi8vLSBJbmhlcml0IHJvb3QgYm94LXNpemluZyB2YWx1ZSB0byBhbGwgRE9NIGVsZW1lbnRzXHJcbiosXHJcbio6OmJlZm9yZSxcclxuKjo6YWZ0ZXIgeyBib3gtc2l6aW5nOiBpbmhlcml0OyB9XHJcblxyXG4vLy0gU2V0IGJvZHkgdG8gZmlsbCB2aWV3cG9ydCwgb3B0aW1pemUgdGV4dC1yZW5kZXJpbmcgYW5kIHNtb290aCBzY3JvbGxpbmdcclxuYm9keSB7XHJcbiAgICBtaW4taGVpZ2h0OiAxMDB2aDsgXHJcbiAgICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDsgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7IC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgICAvLy0gTm90ZSB0ZXh0LXJlbmRlcmluZyBzaG91bGQgYmUgY2hvc2VuIGRlcGVuZGluZyBvbiB1c2VkIGZvbnQtZmFtaWx5IGFuZCBwZXJmb3JtYW5jZSBnb2Fsc1xyXG4gICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsgLy8tIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0NTUy90ZXh0LXJlbmRlcmluZ1xyXG59XHJcblxyXG4vLy0gUmVzZXQgYW5jaG9yIGxvb2sgJiBiZWhhdmlvdXJcclxuYSB7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgY29sb3I6IGluaGVyaXQ7IGN1cnNvcjogcG9pbnRlcjsgfVxyXG5cclxuYnV0dG9uIHsgXHJcbiAgICBwYWRkaW5nOiAwOyBcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyBjb2xvcjogaW5oZXJpdDsgYm9yZGVyLXdpZHRoOiAwOyBjdXJzb3I6cG9pbnRlcjsgXHJcbn1cclxuXHJcbi8vLSBBZGl0aW9uYWwgdG8gcmVzZXQuc2NzcywgcmVtb3ZlIG1hcmdpbiBvbiBGRjMrIFxyXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXHJcbmlucHV0OjotbW96LWZvY3VzLWlubmVyIHsgbWFyZ2luOiAwOyB9XHJcbiIsIi8vLSBCYXNlIHR5cG9ncmFwaHkgc3R5bGVzXG46cm9vdCB7XG4gICAgLS1yYXRpbmctc2l6ZTogMzJweDtcbiAgICAtLWhlYWRpbmdMaW5lSGVpZ2h0OiAxLjI1O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8bW9iaWxlXCIpIHtcbiAgICAgICAgLS1kZWZhdWx0LWZzOiAxNnB4O1xuICAgICAgICAtLWxpbmVIZWlnaHQ6IDEuNTtcblxuICAgICAgICAtLWhlYWRpbmcxLWZzOiAzMnB4O1xuICAgICAgICAtLXN1YkhlYWRpbmcxLWZzOiAxNHB4O1xuICAgICAgICAtLWludHJvQ29udGVudC1mczogMThweDtcblxuICAgICAgICAtLWhlYWRpbmcyLWZzOiAyMHB4O1xuXG4gICAgICAgIC0taGVhZGluZzMtZnM6IDIxcHg7XG5cbiAgICAgICAgLS1idG4tZnM6IDE4cHg7XG5cbiAgICAgICAgLS1oZWFkaW5nNi1mczogMTZweDtcbiAgICAgICAgLS1kaXNjbGFpbWVyLWZzOiAxMHB4O1xuXG4gICAgICAgIC0tc3RvY2tVcEhlYWRpbmctZnM6IDI0cHg7XG4gICAgICAgIC0tc3RvY2tVcFN1YkhlYWRpbmctZnM6IDE0cHg7XG5cbiAgICAgICAgLS1zdHVkaWVzLWZzOiAxNHB4O1xuXG4gICAgICAgIC0tZm9vdGVyLWZzOiAxNHB4O1xuICAgIH1cbiAgICBcbiAgICBAaW5jbHVkZSBtZWRpYShcIj49bW9iaWxlXCIsIFwiPHRhYmxldFwiKSB7XG4gICAgICAgIC0tZGVmYXVsdC1mczogMTZweDtcbiAgICAgICAgLS1saW5lSGVpZ2h0OiAxLjU7XG5cbiAgICAgICAgLS1oZWFkaW5nMS1mczogMzZweDtcbiAgICAgICAgLS1zdWJIZWFkaW5nMS1mczogMTRweDtcbiAgICAgICAgLS1pbnRyb0NvbnRlbnQtZnM6IDE4cHg7XG5cbiAgICAgICAgLS1oZWFkaW5nMi1mczogMjRweDtcblxuICAgICAgICAtLWhlYWRpbmczLWZzOiAyMXB4O1xuXG4gICAgICAgIC0tYnRuLWZzOiAyMHB4O1xuXG4gICAgICAgIC0taGVhZGluZzYtZnM6IDE4cHg7XG4gICAgICAgIC0tZGlzY2xhaW1lci1mczogMTJweDtcblxuICAgICAgICAtLXN0b2NrVXBIZWFkaW5nLWZzOiAyNHB4O1xuICAgICAgICAtLXN0b2NrVXBTdWJIZWFkaW5nLWZzOiAxNHB4O1xuXG4gICAgICAgIC0tc3R1ZGllcy1mczogMTRweDtcblxuICAgICAgICAtLWZvb3Rlci1mczogMTRweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIsIFwiPGRlc2t0b3BcIikge1xuICAgICAgICAtLWRlZmF1bHQtZnM6IDE2cHg7XG4gICAgICAgIC0tbGluZUhlaWdodDogMS41O1xuXG4gICAgICAgIC0taGVhZGluZzEtZnM6IDQ4cHg7XG4gICAgICAgIC0tc3ViSGVhZGluZzEtZnM6IDE2cHg7XG4gICAgICAgIC0taW50cm9Db250ZW50LWZzOiAxOHB4O1xuXG4gICAgICAgIC0taGVhZGluZzItZnM6IDI4cHg7XG5cbiAgICAgICAgLS1oZWFkaW5nMy1mczogMjRweDtcblxuICAgICAgICAtLWJ0bi1mczogMjZweDtcblxuICAgICAgICAtLWhlYWRpbmc2LWZzOiAxOHB4O1xuICAgICAgICAtLWRpc2NsYWltZXItZnM6IDEycHg7XG5cbiAgICAgICAgLS1zdG9ja1VwSGVhZGluZy1mczogMzZweDtcbiAgICAgICAgLS1zdG9ja1VwU3ViSGVhZGluZy1mczogMTRweDtcblxuICAgICAgICAtLXN0dWRpZXMtZnM6IDE0cHg7XG5cbiAgICAgICAgLS1mb290ZXItZnM6IDE0cHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xuICAgICAgICAtLWRlZmF1bHQtZnM6IDE2cHg7XG4gICAgICAgIC0tbGluZUhlaWdodDogMS43NTtcblxuICAgICAgICAtLWhlYWRpbmcxLWZzOiA0OHB4O1xuICAgICAgICAtLXN1YkhlYWRpbmcxLWZzOiAxNnB4O1xuICAgICAgICAtLWludHJvQ29udGVudC1mczogMThweDtcblxuICAgICAgICAtLWhlYWRpbmcyLWZzOiAyOHB4O1xuXG4gICAgICAgIC0taGVhZGluZzMtZnM6IDI0cHg7XG5cbiAgICAgICAgLS1idG4tZnM6IDMycHg7XG5cbiAgICAgICAgLS1oZWFkaW5nNi1mczogMThweDtcbiAgICAgICAgLS1kaXNjbGFpbWVyLWZzOiAxMnB4O1xuXG4gICAgICAgIC0tc3RvY2tVcEhlYWRpbmctZnM6IDM2cHg7XG4gICAgICAgIC0tc3RvY2tVcFN1YkhlYWRpbmctZnM6IDE0cHg7XG5cbiAgICAgICAgLS1zdHVkaWVzLWZzOiAxNHB4O1xuXG4gICAgICAgIC0tZm9vdGVyLWZzOiAxNHB4O1xuICAgIH1cbn1cblxuLy8tIEZvciBQcm94aW1hIE5vdmEgRm9udCBGYW1pbHlcbiRmb250LXdlaWdodC1saWdodDogICAyMDA7IC8vLSBMaWdodFxuJGZvbnQtd2VpZ2h0LW5vcm1hbDogIDQwMDsgLy8tIFJlZ3VsYXJcbiRmb250LXdlaWdodC1yZWd1bGFyOiA2MDA7IC8vLSBTZW1pLUJvbGQgLyBNZWRpdW1cbiRmb250LXdlaWdodC1ib2xkOiAgICA4MDA7IC8vLSBCb2xkXG5cbmh0bWwge1xuICAgIGZvbnQ6ICRmb250LXdlaWdodC1ub3JtYWwgNjIuNSUgLyAxLjIgJG1haW5Gb250OyAvLy0gNjIuNSUgbWFrZXMgJ2VtJyBhbmQgJ3JlbScgdW5pdHMgdG8gYmUgY29tcHV0ZWQgdG8gMTBweCBzbyAxcmVtIHdpbGwgYmUgMTBweCBhbmQgMS40cmVtIHdpbGwgYmUgMTRweFxuICAgIGxldHRlci1zcGFjaW5nOiAuMDFlbTtcbn1cblxuYm9keSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1kZWZhdWx0LWZzKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZUhlaWdodCk7XG4gICAgY29sb3I6ICR0ZXh0Q29sb3I7XG59XG5cbmgxIHtcbiAgICBtYXJnaW4tYm90dG9tOiAuNWVtO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0taGVhZGluZzEtZnMpO1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICBjb2xvcjogY3VycmVudENvbG9yO1xuXG4gICAgc21hbGwge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLjVlbTtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1zdWJIZWFkaW5nMS1mcyk7ICAgICAgICBcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAuMDNlbTtcbiAgICB9XG59XG5cbmgyLCBoMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtcmVndWxhcjtcbn1cblxuaDEsIGgyLCBoMyB7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWhlYWRpbmdMaW5lSGVpZ2h0KTtcbn1cblxuaDIge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0taGVhZGluZzItZnMpO1xufVxuXG5oMyB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1oZWFkaW5nMy1mcyk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4vLy0gUmVjaXBlc1xuaDQge1xuICAgIC8vIGZvbnQtZmFtaWx5OiAkbWFpbkZvbnQ7XG4gICAgLy8gZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgIC8vIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4vLy0gRkFRXG5oNiB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1oZWFkaW5nNi1mcyk7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1yZWd1bGFyO1xuICAgIG1hcmdpbi1ib3R0b206IC41ZW07XG59XG5cbnNtYWxsIHtcbiAgICAuaGFzLWRhcmtNb2RlICYge1xuICAgICAgICBjb2xvcjogJHNlY29uZGFyeUNvbG9yO1xuICAgIH1cblxuICAgIC5oYXMtbGlnaHRNb2RlICYge1xuICAgICAgICBjb2xvcjogJHNlY29uZGFyeUNvbG9yO1xuICAgIH1cbn1cblxucCB7XG4gICAgJiArICYge1xuICAgICAgICBtYXJnaW4tdG9wOiAxZW07XG4gICAgfVxufVxuXG5iLCBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbn1cblxuaSB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG5hIHtcbiAgICBjb2xvcjogJG1haW5Db2xvcjtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiaG92ZXJcIiwgXCJmaW5lXCIpIHtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuc3VwIHtcbiAgICBmb250LXNpemU6IDgwJTtcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWxpZ2h0O1xuICAgIHZlcnRpY2FsLWFsaWduOiBzdXBlcjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uZGlzY2xhaW1lciB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1kaXNjbGFpbWVyLWZzKTtcbiAgICBtYXJnaW4tdG9wOiAxZW07XG59XG4iLCIuaGlkZSB7XHJcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5zaG93IHtcclxuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5pbnZpc2libGUge1xyXG4gICAgdmlzaWJpbGl0eTogaGlkZGVuICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5iciB7XHJcbiAgICB3aGl0ZS1zcGFjZTogcHJlOyAvLy0gcHJlc2VydmUgd2hpdGVzcGFjZVxyXG5cclxuICAgICYtLW5vdC1zbWFsbC1tb2JpbGUge1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PW1vYmlsZScpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYtLXNtYWxsLW1vYmlsZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJzxtb2JpbGUnKSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLS1tb2JpbGUge1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PW1vYmlsZScsICc8dGFibGV0Jykge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi0tbW9iaWxlLW1heCB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJzxtb2JpbGUtbWF4Jykge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi0tdGFibGV0IHtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnLCAnPGRlc2t0b3AnKSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLS10YWJsZXQtbGFuZHNjYXBlIHtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnLCAnPGRlc2t0b3AnLCAnbGFuZHNjYXBlJykge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi0tZGVza3RvcCB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ubm93cmFwIHtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8gICAgIF8gICAgICAgICAgICBfICAgICAgICAgICBfICAgICAgICAgICAgICAgICAgICAgICAgICAgXyBfXHJcbi8vICAgIChfKSAgICAgICAgICB8IHwgICAgICAgICB8IHwgICAgICAgICAgICAgICAgICAgICAgICAgfCAoXylcclxuLy8gICAgIF8gXyBfXyAgIF9fX3wgfF8gICBfICBfX3wgfCBfX18gICBfIF9fIF9fXyAgIF9fXyAgX198IHxfICBfXyBfXHJcbi8vICAgIHwgfCAnXyBcXCAvIF9ffCB8IHwgfCB8LyBfYCB8LyBfIFxcIHwgJ18gYCBfIFxcIC8gXyBcXC8gX2AgfCB8LyBfYCB8XHJcbi8vICAgIHwgfCB8IHwgfCAoX198IHwgfF98IHwgKF98IHwgIF9fLyB8IHwgfCB8IHwgfCAgX18vIChffCB8IHwgKF98IHxcclxuLy8gICAgfF98X3wgfF98XFxfX198X3xcXF9fLF98XFxfXyxffFxcX19ffCB8X3wgfF98IHxffFxcX19ffFxcX18sX3xffFxcX18sX3xcclxuLy9cclxuLy8gICAgICBTaW1wbGUsIGVsZWdhbnQgYW5kIG1haW50YWluYWJsZSBtZWRpYSBxdWVyaWVzIGluIFNhc3NcclxuLy8gICAgICAgICAgICAgICAgICAgICAgICB2MS40LjlcclxuLy9cclxuLy8gICAgICAgIGh0dHBzOi8vZWR1YXJkb2JvdWNhcy5naXRodWIuaW8vaW5jbHVkZS1tZWRpYVxyXG4vL1xyXG4vLyAgICAgICAgIEF1dGhvcnM6IEVkdWFyZG8gQm91Y2FzIChAZWR1YXJkb2JvdWNhcylcclxuLy8gICAgICAgICAgICAgICAgICBIdWdvIEdpcmF1ZGVsIChAaHVnb2dpcmF1ZGVsKVxyXG4vL1xyXG4vLyAgICAgIFRoaXMgcHJvamVjdCBpcyBsaWNlbnNlZCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIE1JVCBsaWNlbnNlXHJcbi8vLy9cclxuLy8vIGluY2x1ZGUtbWVkaWEgbGlicmFyeSBwdWJsaWMgY29uZmlndXJhdGlvblxyXG4vLy8gQGF1dGhvciBFZHVhcmRvIEJvdWNhc1xyXG4vLy8gQGFjY2VzcyBwdWJsaWNcclxuLy8vL1xyXG5cclxuXHJcbi8vL1xyXG4vLy8gQ3JlYXRlcyBhIGxpc3Qgb2YgZ2xvYmFsIGJyZWFrcG9pbnRzXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIENyZWF0ZXMgYSBzaW5nbGUgYnJlYWtwb2ludCB3aXRoIHRoZSBsYWJlbCBgbW9iaWxlYFxyXG4vLy8gICRicmVha3BvaW50czogKCdtb2JpbGUnOiAzMjBweCk7XHJcbi8vL1xyXG4kYnJlYWtwb2ludHM6IChcclxuICAnbW9iaWxlJzogMzc1cHgsXHJcbiAgLy8gJ3RhYmxldCc6IDc2OHB4LFxyXG4gIC8vICdkZXNrdG9wJzogMTAyNHB4XHJcbiAgJ21vYmlsZS1taWQnOiA1MjBweCxcclxuICAnbW9iaWxlLW1heCc6IDU3NXB4LFxyXG4gICd0YWJsZXQnOiA3NjhweCxcclxuICAndGFibGV0LW1pZCc6IDg1MHB4LFxyXG4gICdib290LWRlc2t0b3AnOiA5OTJweCxcclxuICAnZGVza3RvcCc6IDEwMjVweCxcclxuICAnZGVza3RvcC1taWQnOiAxMjAwcHgsXHJcbiAgJ2Rlc2t0b3AtbWF4JzogMTkyMHB4XHJcbikgIWRlZmF1bHQ7XHJcblxyXG4vLy0gbW9iaWxlIG9ubHlcclxuLy8vLy0gKCc8dGFibGV0JykgLSBtYXgtd2lkdGg6IDc2N3B4XHJcbi8vLSB0YWJsZXQgb25seVxyXG4vLy8vLSAoJz49dGFibGV0JywgJzxkZXNrdG9wJykgLSBtaW4td2lkdGg6IDc2OHB4OyBtYXgtd2lkdGg6IDEwMjRweFxyXG4vLy0gZGVza3RvcCBvbmx5XHJcbi8vLy8tICgnPj1kZXNrdG9wJykgLSBtaW4td2lkdGg6IDEwMjVweFxyXG5cclxuLy8vXHJcbi8vLyBDcmVhdGVzIGEgbGlzdCBvZiBzdGF0aWMgZXhwcmVzc2lvbnMgb3IgbWVkaWEgdHlwZXNcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gQ3JlYXRlcyBhIHNpbmdsZSBtZWRpYSB0eXBlIChzY3JlZW4pXHJcbi8vLyAgJG1lZGlhLWV4cHJlc3Npb25zOiAoJ3NjcmVlbic6ICdzY3JlZW4nKTtcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gQ3JlYXRlcyBhIHN0YXRpYyBleHByZXNzaW9uIHdpdGggbG9naWNhbCBkaXNqdW5jdGlvbiAoT1Igb3BlcmF0b3IpXHJcbi8vLyAgJG1lZGlhLWV4cHJlc3Npb25zOiAoXHJcbi8vLyAgICAncmV0aW5hMngnOiAnKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSdcclxuLy8vICApO1xyXG4vLy9cclxuJG1lZGlhLWV4cHJlc3Npb25zOiAoXHJcbiAgJ3NjcmVlbic6ICdzY3JlZW4nLFxyXG4gICdwcmludCc6ICdwcmludCcsXHJcbiAgJ2hhbmRoZWxkJzogJ2hhbmRoZWxkJyxcclxuICAnbGFuZHNjYXBlJzogJyhvcmllbnRhdGlvbjogbGFuZHNjYXBlKScsXHJcbiAgJ3BvcnRyYWl0JzogJyhvcmllbnRhdGlvbjogcG9ydHJhaXQpJyxcclxuICAnaG92ZXInOiAnKGhvdmVyOiBob3ZlciknLFxyXG4gICdmaW5lJzogJyhwb2ludGVyOiBmaW5lKScsXHJcbiAgJ3JldGluYTJ4JzogJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCAobWluLXJlc29sdXRpb246IDE5MmRwaSksIChtaW4tcmVzb2x1dGlvbjogMmRwcHgpJyxcclxuICAncmV0aW5hM3gnOiAnKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMyksIChtaW4tcmVzb2x1dGlvbjogMzUwZHBpKSwgKG1pbi1yZXNvbHV0aW9uOiAzZHBweCknXHJcbikgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy8vXHJcbi8vLyBEZWZpbmVzIGEgbnVtYmVyIHRvIGJlIGFkZGVkIG9yIHN1YnRyYWN0ZWQgZnJvbSBlYWNoIHVuaXQgd2hlbiBkZWNsYXJpbmcgYnJlYWtwb2ludHMgd2l0aCBleGNsdXNpdmUgaW50ZXJ2YWxzXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEludGVydmFsIGZvciBwaXhlbHMgaXMgZGVmaW5lZCBhcyBgMWAgYnkgZGVmYXVsdFxyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+MTI4cHgnKSB7fVxyXG4vLy9cclxuLy8vICAvKiBHZW5lcmF0ZXM6ICovXHJcbi8vLyAgQG1lZGlhIChtaW4td2lkdGg6IDEyOXB4KSB7fVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBJbnRlcnZhbCBmb3IgZW1zIGlzIGRlZmluZWQgYXMgYDAuMDFgIGJ5IGRlZmF1bHRcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPjIwZW0nKSB7fVxyXG4vLy9cclxuLy8vICAvKiBHZW5lcmF0ZXM6ICovXHJcbi8vLyAgQG1lZGlhIChtaW4td2lkdGg6IDIwLjAxZW0pIHt9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEludGVydmFsIGZvciByZW1zIGlzIGRlZmluZWQgYXMgYDAuMWAgYnkgZGVmYXVsdCwgdG8gYmUgdXNlZCB3aXRoIGBmb250LXNpemU6IDYyLjUlO2BcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPjIuMHJlbScpIHt9XHJcbi8vL1xyXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cclxuLy8vICBAbWVkaWEgKG1pbi13aWR0aDogMi4xcmVtKSB7fVxyXG4vLy9cclxuJHVuaXQtaW50ZXJ2YWxzOiAoXHJcbiAgJ3B4JzogMSxcclxuICAnZW0nOiAwLjAxLFxyXG4gICdyZW0nOiAwLjEsXHJcbiAgJyc6IDBcclxuKSAhZGVmYXVsdDtcclxuXHJcbi8vL1xyXG4vLy8gRGVmaW5lcyB3aGV0aGVyIHN1cHBvcnQgZm9yIG1lZGlhIHF1ZXJpZXMgaXMgYXZhaWxhYmxlLCB1c2VmdWwgZm9yIGNyZWF0aW5nIHNlcGFyYXRlIHN0eWxlc2hlZXRzXHJcbi8vLyBmb3IgYnJvd3NlcnMgdGhhdCBkb24ndCBzdXBwb3J0IG1lZGlhIHF1ZXJpZXMuXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIERpc2FibGVzIHN1cHBvcnQgZm9yIG1lZGlhIHF1ZXJpZXNcclxuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xyXG4vLy8gICAgLmZvbyB7XHJcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XHJcbi8vLyAgICB9XHJcbi8vLyAgfVxyXG4vLy9cclxuLy8vICAvKiBHZW5lcmF0ZXM6ICovXHJcbi8vLyAgLmZvbyB7XHJcbi8vLyAgICBjb2xvcjogdG9tYXRvO1xyXG4vLy8gIH1cclxuLy8vXHJcbiRpbS1tZWRpYS1zdXBwb3J0OiB0cnVlICFkZWZhdWx0O1xyXG5cclxuLy8vXHJcbi8vLyBTZWxlY3RzIHdoaWNoIGJyZWFrcG9pbnQgdG8gZW11bGF0ZSB3aGVuIHN1cHBvcnQgZm9yIG1lZGlhIHF1ZXJpZXMgaXMgZGlzYWJsZWQuIE1lZGlhIHF1ZXJpZXMgdGhhdCBzdGFydCBhdCBvclxyXG4vLy8gaW50ZXJjZXB0IHRoZSBicmVha3BvaW50IHdpbGwgYmUgZGlzcGxheWVkLCBhbnkgb3RoZXJzIHdpbGwgYmUgaWdub3JlZC5cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIHNob3cgYmVjYXVzZSBpdCBpbnRlcmNlcHRzIHRoZSBzdGF0aWMgYnJlYWtwb2ludFxyXG4vLy8gICRpbS1tZWRpYS1zdXBwb3J0OiBmYWxzZTtcclxuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnO1xyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcclxuLy8vICAgIC5mb28ge1xyXG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xyXG4vLy8gICAgfVxyXG4vLy8gIH1cclxuLy8vXHJcbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xyXG4vLy8gIC5mb28ge1xyXG4vLy8gICAgY29sb3I6IHRvbWF0bztcclxuLy8vICB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFRoaXMgbWVkaWEgcXVlcnkgd2lsbCBOT1Qgc2hvdyBiZWNhdXNlIGl0IGRvZXMgbm90IGludGVyY2VwdCB0aGUgZGVza3RvcCBicmVha3BvaW50XHJcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xyXG4vLy8gICRpbS1uby1tZWRpYS1icmVha3BvaW50OiAndGFibGV0JztcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wJykge1xyXG4vLy8gICAgLmZvbyB7XHJcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XHJcbi8vLyAgICB9XHJcbi8vLyAgfVxyXG4vLy9cclxuLy8vICAvKiBObyBvdXRwdXQgKi9cclxuLy8vXHJcbiRpbS1uby1tZWRpYS1icmVha3BvaW50OiAnZGVza3RvcCcgIWRlZmF1bHQ7XHJcblxyXG4vLy9cclxuLy8vIFNlbGVjdHMgd2hpY2ggbWVkaWEgZXhwcmVzc2lvbnMgYXJlIGFsbG93ZWQgaW4gYW4gZXhwcmVzc2lvbiBmb3IgaXQgdG8gYmUgdXNlZCB3aGVuIG1lZGlhIHF1ZXJpZXNcclxuLy8vIGFyZSBub3Qgc3VwcG9ydGVkLlxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBUaGlzIG1lZGlhIHF1ZXJ5IHdpbGwgc2hvdyBiZWNhdXNlIGl0IGludGVyY2VwdHMgdGhlIHN0YXRpYyBicmVha3BvaW50IGFuZCBjb250YWlucyBvbmx5IGFjY2VwdGVkIG1lZGlhIGV4cHJlc3Npb25zXHJcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xyXG4vLy8gICRpbS1uby1tZWRpYS1icmVha3BvaW50OiAnZGVza3RvcCc7XHJcbi8vLyAgJGltLW5vLW1lZGlhLWV4cHJlc3Npb25zOiAoJ3NjcmVlbicpO1xyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcsICdzY3JlZW4nKSB7XHJcbi8vLyAgICAuZm9vIHtcclxuLy8vICAgICAgY29sb3I6IHRvbWF0bztcclxuLy8vICAgIH1cclxuLy8vICB9XHJcbi8vL1xyXG4vLy8gICAvKiBHZW5lcmF0ZXM6ICovXHJcbi8vLyAgIC5mb28ge1xyXG4vLy8gICAgIGNvbG9yOiB0b21hdG87XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIE5PVCBzaG93IGJlY2F1c2UgaXQgaW50ZXJjZXB0cyB0aGUgc3RhdGljIGJyZWFrcG9pbnQgYnV0IGNvbnRhaW5zIGEgbWVkaWEgZXhwcmVzc2lvbiB0aGF0IGlzIG5vdCBhY2NlcHRlZFxyXG4vLy8gICRpbS1tZWRpYS1zdXBwb3J0OiBmYWxzZTtcclxuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnO1xyXG4vLy8gICRpbS1uby1tZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nKTtcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnLCAncmV0aW5hMngnKSB7XHJcbi8vLyAgICAuZm9vIHtcclxuLy8vICAgICAgY29sb3I6IHRvbWF0bztcclxuLy8vICAgIH1cclxuLy8vICB9XHJcbi8vL1xyXG4vLy8gIC8qIE5vIG91dHB1dCAqL1xyXG4vLy9cclxuJGltLW5vLW1lZGlhLWV4cHJlc3Npb25zOiAoJ3NjcmVlbicsICdwb3J0cmFpdCcsICdsYW5kc2NhcGUnKSAhZGVmYXVsdDtcclxuXHJcbi8vLy9cclxuLy8vIENyb3NzLWVuZ2luZSBsb2dnaW5nIGVuZ2luZVxyXG4vLy8gQGF1dGhvciBIdWdvIEdpcmF1ZGVsXHJcbi8vLyBAYWNjZXNzIHByaXZhdGVcclxuLy8vL1xyXG5cclxuXHJcbi8vL1xyXG4vLy8gTG9nIGEgbWVzc2FnZSBlaXRoZXIgd2l0aCBgQGVycm9yYCBpZiBzdXBwb3J0ZWRcclxuLy8vIGVsc2Ugd2l0aCBgQHdhcm5gLCB1c2luZyBgZmVhdHVyZS1leGlzdHMoJ2F0LWVycm9yJylgXHJcbi8vLyB0byBkZXRlY3Qgc3VwcG9ydC5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1lc3NhZ2UgLSBNZXNzYWdlIHRvIGxvZ1xyXG4vLy9cclxuQGZ1bmN0aW9uIGltLWxvZygkbWVzc2FnZSkge1xyXG4gIEBpZiBmZWF0dXJlLWV4aXN0cygnYXQtZXJyb3InKSB7XHJcbiAgICBAZXJyb3IgJG1lc3NhZ2U7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBAd2FybiAkbWVzc2FnZTtcclxuICAgICRfOiBub29wKCk7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICRtZXNzYWdlO1xyXG59XHJcblxyXG5cclxuLy8vXHJcbi8vLyBXcmFwcGVyIG1peGluIGZvciB0aGUgbG9nIGZ1bmN0aW9uIHNvIGl0IGNhbiBiZSB1c2VkIHdpdGggYSBtb3JlIGZyaWVuZGx5XHJcbi8vLyBBUEkgdGhhbiBgQGlmIGltLWxvZygnLi4nKSB7fWAgb3IgYCRfOiBpbS1sb2coJy4uJylgLiBCYXNpY2FsbHksIHVzZSB0aGUgZnVuY3Rpb25cclxuLy8vIHdpdGhpbiBmdW5jdGlvbnMgYmVjYXVzZSBpdCBpcyBub3QgcG9zc2libGUgdG8gaW5jbHVkZSBhIG1peGluIGluIGEgZnVuY3Rpb25cclxuLy8vIGFuZCB1c2UgdGhlIG1peGluIGV2ZXJ5d2hlcmUgZWxzZSBiZWNhdXNlIGl0J3MgbXVjaCBtb3JlIGVsZWdhbnQuXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRtZXNzYWdlIC0gTWVzc2FnZSB0byBsb2dcclxuLy8vXHJcbkBtaXhpbiBsb2coJG1lc3NhZ2UpIHtcclxuICBAaWYgaW0tbG9nKCRtZXNzYWdlKSB7fVxyXG59XHJcblxyXG5cclxuLy8vXHJcbi8vLyBGdW5jdGlvbiB3aXRoIG5vIGBAcmV0dXJuYCBjYWxsZWQgbmV4dCB0byBgQHdhcm5gIGluIFNhc3MgMy4zXHJcbi8vLyB0byB0cmlnZ2VyIGEgY29tcGlsaW5nIGVycm9yIGFuZCBzdG9wIHRoZSBwcm9jZXNzLlxyXG4vLy9cclxuQGZ1bmN0aW9uIG5vb3AoKSB7fVxyXG5cclxuLy8vXHJcbi8vLyBEZXRlcm1pbmVzIHdoZXRoZXIgYSBsaXN0IG9mIGNvbmRpdGlvbnMgaXMgaW50ZXJjZXB0ZWQgYnkgdGhlIHN0YXRpYyBicmVha3BvaW50LlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7QXJnbGlzdH0gICAkY29uZGl0aW9ucyAgLSBNZWRpYSBxdWVyeSBjb25kaXRpb25zXHJcbi8vL1xyXG4vLy8gQHJldHVybiB7Qm9vbGVhbn0gLSBSZXR1cm5zIHRydWUgaWYgdGhlIGNvbmRpdGlvbnMgYXJlIGludGVyY2VwdGVkIGJ5IHRoZSBzdGF0aWMgYnJlYWtwb2ludFxyXG4vLy9cclxuQGZ1bmN0aW9uIGltLWludGVyY2VwdHMtc3RhdGljLWJyZWFrcG9pbnQoJGNvbmRpdGlvbnMuLi4pIHtcclxuICAkbm8tbWVkaWEtYnJlYWtwb2ludC12YWx1ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRpbS1uby1tZWRpYS1icmVha3BvaW50KTtcclxuXHJcbiAgQGlmIG5vdCAkbm8tbWVkaWEtYnJlYWtwb2ludC12YWx1ZSB7XHJcbiAgICBAaWYgaW0tbG9nKCdgI3skaW0tbm8tbWVkaWEtYnJlYWtwb2ludH1gIGlzIG5vdCBhIHZhbGlkIGJyZWFrcG9pbnQuJykge31cclxuICB9XHJcblxyXG4gIEBlYWNoICRjb25kaXRpb24gaW4gJGNvbmRpdGlvbnMge1xyXG4gICAgQGlmIG5vdCBtYXAtaGFzLWtleSgkbWVkaWEtZXhwcmVzc2lvbnMsICRjb25kaXRpb24pIHtcclxuICAgICAgJG9wZXJhdG9yOiBnZXQtZXhwcmVzc2lvbi1vcGVyYXRvcigkY29uZGl0aW9uKTtcclxuICAgICAgJHByZWZpeDogZ2V0LWV4cHJlc3Npb24tcHJlZml4KCRvcGVyYXRvcik7XHJcbiAgICAgICR2YWx1ZTogZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGNvbmRpdGlvbiwgJG9wZXJhdG9yKTtcclxuXHJcbiAgICAgIEBpZiAoJHByZWZpeCA9PSAnbWF4JyBhbmQgJHZhbHVlIDw9ICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlKSBvclxyXG4gICAgICAgICAgKCRwcmVmaXggPT0gJ21pbicgYW5kICR2YWx1ZSA+ICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlKSB7XHJcbiAgICAgICAgQHJldHVybiBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgfSBAZWxzZSBpZiBub3QgaW5kZXgoJGltLW5vLW1lZGlhLWV4cHJlc3Npb25zLCAkY29uZGl0aW9uKSB7XHJcbiAgICAgIEByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuIHRydWU7XHJcbn1cclxuXHJcbi8vLy9cclxuLy8vIFBhcnNpbmcgZW5naW5lXHJcbi8vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxyXG4vLy8vXHJcblxyXG5cclxuLy8vXHJcbi8vLyBHZXQgb3BlcmF0b3Igb2YgYW4gZXhwcmVzc2lvblxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCBvcGVyYXRvciBmcm9tXHJcbi8vL1xyXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIEFueSBvZiBgPj1gLCBgPmAsIGA8PWAsIGA8YCwgYOKJpWAsIGDiiaRgXHJcbi8vL1xyXG5AZnVuY3Rpb24gZ2V0LWV4cHJlc3Npb24tb3BlcmF0b3IoJGV4cHJlc3Npb24pIHtcclxuICBAZWFjaCAkb3BlcmF0b3IgaW4gKCc+PScsICc+JywgJzw9JywgJzwnLCAn4omlJywgJ+KJpCcpIHtcclxuICAgIEBpZiBzdHItaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xyXG4gICAgICBAcmV0dXJuICRvcGVyYXRvcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIEl0IGlzIG5vdCBwb3NzaWJsZSB0byBpbmNsdWRlIGEgbWl4aW4gaW5zaWRlIGEgZnVuY3Rpb24sIHNvIHdlIGhhdmUgdG9cclxuICAvLyByZWx5IG9uIHRoZSBgaW0tbG9nKC4uKWAgZnVuY3Rpb24gcmF0aGVyIHRoYW4gdGhlIGBsb2coLi4pYCBtaXhpbi4gQmVjYXVzZVxyXG4gIC8vIGZ1bmN0aW9ucyBjYW5ub3QgYmUgY2FsbGVkIGFueXdoZXJlIGluIFNhc3MsIHdlIG5lZWQgdG8gaGFjayB0aGUgY2FsbCBpblxyXG4gIC8vIGEgZHVtbXkgdmFyaWFibGUsIHN1Y2ggYXMgYCRfYC4gSWYgYW55Ym9keSBldmVyIHJhaXNlIGEgc2NvcGluZyBpc3N1ZSB3aXRoXHJcbiAgLy8gU2FzcyAzLjMsIGNoYW5nZSB0aGlzIGxpbmUgaW4gYEBpZiBpbS1sb2coLi4pIHt9YCBpbnN0ZWFkLlxyXG4gICRfOiBpbS1sb2coJ05vIG9wZXJhdG9yIGZvdW5kIGluIGAjeyRleHByZXNzaW9ufWAuJyk7XHJcbn1cclxuXHJcblxyXG4vLy9cclxuLy8vIEdldCBkaW1lbnNpb24gb2YgYW4gZXhwcmVzc2lvbiwgYmFzZWQgb24gYSBmb3VuZCBvcGVyYXRvclxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCBkaW1lbnNpb24gZnJvbVxyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRvcGVyYXRvciAtIE9wZXJhdG9yIGZyb20gYCRleHByZXNzaW9uYFxyXG4vLy9cclxuLy8vIEByZXR1cm4ge1N0cmluZ30gLSBgd2lkdGhgIG9yIGBoZWlnaHRgIChvciBwb3RlbnRpYWxseSBhbnl0aGluZyBlbHNlKVxyXG4vLy9cclxuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLWRpbWVuc2lvbigkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKSB7XHJcbiAgJG9wZXJhdG9yLWluZGV4OiBzdHItaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XHJcbiAgJHBhcnNlZC1kaW1lbnNpb246IHN0ci1zbGljZSgkZXhwcmVzc2lvbiwgMCwgJG9wZXJhdG9yLWluZGV4IC0gMSk7XHJcbiAgJGRpbWVuc2lvbjogJ3dpZHRoJztcclxuXHJcbiAgQGlmIHN0ci1sZW5ndGgoJHBhcnNlZC1kaW1lbnNpb24pID4gMCB7XHJcbiAgICAkZGltZW5zaW9uOiAkcGFyc2VkLWRpbWVuc2lvbjtcclxuICB9XHJcblxyXG4gIEByZXR1cm4gJGRpbWVuc2lvbjtcclxufVxyXG5cclxuXHJcbi8vL1xyXG4vLy8gR2V0IGRpbWVuc2lvbiBwcmVmaXggYmFzZWQgb24gYW4gb3BlcmF0b3JcclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG9wZXJhdG9yIC0gT3BlcmF0b3JcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gYG1pbmAgb3IgYG1heGBcclxuLy8vXHJcbkBmdW5jdGlvbiBnZXQtZXhwcmVzc2lvbi1wcmVmaXgoJG9wZXJhdG9yKSB7XHJcbiAgQHJldHVybiBpZihpbmRleCgoJzwnLCAnPD0nLCAn4omkJyksICRvcGVyYXRvciksICdtYXgnLCAnbWluJyk7XHJcbn1cclxuXHJcblxyXG4vLy9cclxuLy8vIEdldCB2YWx1ZSBvZiBhbiBleHByZXNzaW9uLCBiYXNlZCBvbiBhIGZvdW5kIG9wZXJhdG9yXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRleHByZXNzaW9uIC0gRXhwcmVzc2lvbiB0byBleHRyYWN0IHZhbHVlIGZyb21cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkb3BlcmF0b3IgLSBPcGVyYXRvciBmcm9tIGAkZXhwcmVzc2lvbmBcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gQSBudW1lcmljIHZhbHVlXHJcbi8vL1xyXG5AZnVuY3Rpb24gZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xyXG4gICRvcGVyYXRvci1pbmRleDogc3RyLWluZGV4KCRleHByZXNzaW9uLCAkb3BlcmF0b3IpO1xyXG4gICR2YWx1ZTogc3RyLXNsaWNlKCRleHByZXNzaW9uLCAkb3BlcmF0b3ItaW5kZXggKyBzdHItbGVuZ3RoKCRvcGVyYXRvcikpO1xyXG5cclxuICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkdmFsdWUpIHtcclxuICAgICR2YWx1ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICR2YWx1ZSk7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICAkdmFsdWU6IHRvLW51bWJlcigkdmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgJGludGVydmFsOiBtYXAtZ2V0KCR1bml0LWludGVydmFscywgdW5pdCgkdmFsdWUpKTtcclxuXHJcbiAgQGlmIG5vdCAkaW50ZXJ2YWwge1xyXG4gICAgLy8gSXQgaXMgbm90IHBvc3NpYmxlIHRvIGluY2x1ZGUgYSBtaXhpbiBpbnNpZGUgYSBmdW5jdGlvbiwgc28gd2UgaGF2ZSB0b1xyXG4gICAgLy8gcmVseSBvbiB0aGUgYGltLWxvZyguLilgIGZ1bmN0aW9uIHJhdGhlciB0aGFuIHRoZSBgbG9nKC4uKWAgbWl4aW4uIEJlY2F1c2VcclxuICAgIC8vIGZ1bmN0aW9ucyBjYW5ub3QgYmUgY2FsbGVkIGFueXdoZXJlIGluIFNhc3MsIHdlIG5lZWQgdG8gaGFjayB0aGUgY2FsbCBpblxyXG4gICAgLy8gYSBkdW1teSB2YXJpYWJsZSwgc3VjaCBhcyBgJF9gLiBJZiBhbnlib2R5IGV2ZXIgcmFpc2UgYSBzY29waW5nIGlzc3VlIHdpdGhcclxuICAgIC8vIFNhc3MgMy4zLCBjaGFuZ2UgdGhpcyBsaW5lIGluIGBAaWYgaW0tbG9nKC4uKSB7fWAgaW5zdGVhZC5cclxuICAgICRfOiBpbS1sb2coJ1Vua25vd24gdW5pdCBgI3t1bml0KCR2YWx1ZSl9YC4nKTtcclxuICB9XHJcblxyXG4gIEBpZiAkb3BlcmF0b3IgPT0gJz4nIHtcclxuICAgICR2YWx1ZTogJHZhbHVlICsgJGludGVydmFsO1xyXG4gIH0gQGVsc2UgaWYgJG9wZXJhdG9yID09ICc8JyB7XHJcbiAgICAkdmFsdWU6ICR2YWx1ZSAtICRpbnRlcnZhbDtcclxuICB9XHJcblxyXG4gIEByZXR1cm4gJHZhbHVlO1xyXG59XHJcblxyXG5cclxuLy8vXHJcbi8vLyBQYXJzZSBhbiBleHByZXNzaW9uIHRvIHJldHVybiBhIHZhbGlkIG1lZGlhLXF1ZXJ5IGV4cHJlc3Npb25cclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJGV4cHJlc3Npb24gLSBFeHByZXNzaW9uIHRvIHBhcnNlXHJcbi8vL1xyXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIFZhbGlkIG1lZGlhIHF1ZXJ5XHJcbi8vL1xyXG5AZnVuY3Rpb24gcGFyc2UtZXhwcmVzc2lvbigkZXhwcmVzc2lvbikge1xyXG4gIC8vIElmIGl0IGlzIHBhcnQgb2YgJG1lZGlhLWV4cHJlc3Npb25zLCBpdCBoYXMgbm8gb3BlcmF0b3JcclxuICAvLyB0aGVuIHRoZXJlIGlzIG5vIG5lZWQgdG8gZ28gYW55IGZ1cnRoZXIsIGp1c3QgcmV0dXJuIHRoZSB2YWx1ZVxyXG4gIEBpZiBtYXAtaGFzLWtleSgkbWVkaWEtZXhwcmVzc2lvbnMsICRleHByZXNzaW9uKSB7XHJcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1lZGlhLWV4cHJlc3Npb25zLCAkZXhwcmVzc2lvbik7XHJcbiAgfVxyXG5cclxuICAkb3BlcmF0b3I6IGdldC1leHByZXNzaW9uLW9wZXJhdG9yKCRleHByZXNzaW9uKTtcclxuICAkZGltZW5zaW9uOiBnZXQtZXhwcmVzc2lvbi1kaW1lbnNpb24oJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XHJcbiAgJHByZWZpeDogZ2V0LWV4cHJlc3Npb24tcHJlZml4KCRvcGVyYXRvcik7XHJcbiAgJHZhbHVlOiBnZXQtZXhwcmVzc2lvbi12YWx1ZSgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKTtcclxuXHJcbiAgQHJldHVybiAnKCN7JHByZWZpeH0tI3skZGltZW5zaW9ufTogI3skdmFsdWV9KSc7XHJcbn1cclxuXHJcbi8vL1xyXG4vLy8gU2xpY2UgYCRsaXN0YCBiZXR3ZWVuIGAkc3RhcnRgIGFuZCBgJGVuZGAgaW5kZXhlc1xyXG4vLy9cclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxyXG4vLy9cclxuLy8vIEBwYXJhbSB7TGlzdH0gJGxpc3QgLSBMaXN0IHRvIHNsaWNlXHJcbi8vLyBAcGFyYW0ge051bWJlcn0gJHN0YXJ0IFsxXSAtIFN0YXJ0IGluZGV4XHJcbi8vLyBAcGFyYW0ge051bWJlcn0gJGVuZCBbbGVuZ3RoKCRsaXN0KV0gLSBFbmQgaW5kZXhcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtMaXN0fSBTbGljZWQgbGlzdFxyXG4vLy9cclxuQGZ1bmN0aW9uIHNsaWNlKCRsaXN0LCAkc3RhcnQ6IDEsICRlbmQ6IGxlbmd0aCgkbGlzdCkpIHtcclxuICBAaWYgbGVuZ3RoKCRsaXN0KSA8IDEgb3IgJHN0YXJ0ID4gJGVuZCB7XHJcbiAgICBAcmV0dXJuICgpO1xyXG4gIH1cclxuXHJcbiAgJHJlc3VsdDogKCk7XHJcblxyXG4gIEBmb3IgJGkgZnJvbSAkc3RhcnQgdGhyb3VnaCAkZW5kIHtcclxuICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCBudGgoJGxpc3QsICRpKSk7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICRyZXN1bHQ7XHJcbn1cclxuXHJcbi8vLy9cclxuLy8vIFN0cmluZyB0byBudW1iZXIgY29udmVydGVyXHJcbi8vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxyXG4vLy8vXHJcblxyXG5cclxuLy8vXHJcbi8vLyBDYXN0cyBhIHN0cmluZyBpbnRvIGEgbnVtYmVyXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtTdHJpbmcgfCBOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGJlIHBhcnNlZFxyXG4vLy9cclxuLy8vIEByZXR1cm4ge051bWJlcn1cclxuLy8vXHJcbkBmdW5jdGlvbiB0by1udW1iZXIoJHZhbHVlKSB7XHJcbiAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnbnVtYmVyJyB7XHJcbiAgICBAcmV0dXJuICR2YWx1ZTtcclxuICB9IEBlbHNlIGlmIHR5cGUtb2YoJHZhbHVlKSAhPSAnc3RyaW5nJyB7XHJcbiAgICAkXzogaW0tbG9nKCdWYWx1ZSBmb3IgYHRvLW51bWJlcmAgc2hvdWxkIGJlIGEgbnVtYmVyIG9yIGEgc3RyaW5nLicpO1xyXG4gIH1cclxuXHJcbiAgJGZpcnN0LWNoYXJhY3Rlcjogc3RyLXNsaWNlKCR2YWx1ZSwgMSwgMSk7XHJcbiAgJHJlc3VsdDogMDtcclxuICAkZGlnaXRzOiAwO1xyXG4gICRtaW51czogKCRmaXJzdC1jaGFyYWN0ZXIgPT0gJy0nKTtcclxuICAkbnVtYmVyczogKCcwJzogMCwgJzEnOiAxLCAnMic6IDIsICczJzogMywgJzQnOiA0LCAnNSc6IDUsICc2JzogNiwgJzcnOiA3LCAnOCc6IDgsICc5JzogOSk7XHJcblxyXG4gIC8vIFJlbW92ZSArLy0gc2lnbiBpZiBwcmVzZW50IGF0IGZpcnN0IGNoYXJhY3RlclxyXG4gIEBpZiAoJGZpcnN0LWNoYXJhY3RlciA9PSAnKycgb3IgJGZpcnN0LWNoYXJhY3RlciA9PSAnLScpIHtcclxuICAgICR2YWx1ZTogc3RyLXNsaWNlKCR2YWx1ZSwgMik7XHJcbiAgfVxyXG5cclxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIHN0ci1sZW5ndGgoJHZhbHVlKSB7XHJcbiAgICAkY2hhcmFjdGVyOiBzdHItc2xpY2UoJHZhbHVlLCAkaSwgJGkpO1xyXG5cclxuICAgIEBpZiBub3QgKGluZGV4KG1hcC1rZXlzKCRudW1iZXJzKSwgJGNoYXJhY3Rlcikgb3IgJGNoYXJhY3RlciA9PSAnLicpIHtcclxuICAgICAgQHJldHVybiB0by1sZW5ndGgoaWYoJG1pbnVzLCAtJHJlc3VsdCwgJHJlc3VsdCksIHN0ci1zbGljZSgkdmFsdWUsICRpKSlcclxuICAgIH1cclxuXHJcbiAgICBAaWYgJGNoYXJhY3RlciA9PSAnLicge1xyXG4gICAgICAkZGlnaXRzOiAxO1xyXG4gICAgfSBAZWxzZSBpZiAkZGlnaXRzID09IDAge1xyXG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICogMTAgKyBtYXAtZ2V0KCRudW1iZXJzLCAkY2hhcmFjdGVyKTtcclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICAkZGlnaXRzOiAkZGlnaXRzICogMTA7XHJcbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKyBtYXAtZ2V0KCRudW1iZXJzLCAkY2hhcmFjdGVyKSAvICRkaWdpdHM7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuIGlmKCRtaW51cywgLSRyZXN1bHQsICRyZXN1bHQpO1xyXG59XHJcblxyXG5cclxuLy8vXHJcbi8vLyBBZGQgYCR1bml0YCB0byBgJHZhbHVlYFxyXG4vLy9cclxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdmFsdWUgLSBWYWx1ZSB0byBhZGQgdW5pdCB0b1xyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICR1bml0IC0gU3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoZSB1bml0XHJcbi8vL1xyXG4vLy8gQHJldHVybiB7TnVtYmVyfSAtIGAkdmFsdWVgIGV4cHJlc3NlZCBpbiBgJHVuaXRgXHJcbi8vL1xyXG5AZnVuY3Rpb24gdG8tbGVuZ3RoKCR2YWx1ZSwgJHVuaXQpIHtcclxuICAkdW5pdHM6ICgncHgnOiAxcHgsICdjbSc6IDFjbSwgJ21tJzogMW1tLCAnJSc6IDElLCAnY2gnOiAxY2gsICdwYyc6IDFwYywgJ2luJzogMWluLCAnZW0nOiAxZW0sICdyZW0nOiAxcmVtLCAncHQnOiAxcHQsICdleCc6IDFleCwgJ3Z3JzogMXZ3LCAndmgnOiAxdmgsICd2bWluJzogMXZtaW4sICd2bWF4JzogMXZtYXgpO1xyXG5cclxuICBAaWYgbm90IGluZGV4KG1hcC1rZXlzKCR1bml0cyksICR1bml0KSB7XHJcbiAgICAkXzogaW0tbG9nKCdJbnZhbGlkIHVuaXQgYCN7JHVuaXR9YC4nKTtcclxuICB9XHJcblxyXG4gIEByZXR1cm4gJHZhbHVlICogbWFwLWdldCgkdW5pdHMsICR1bml0KTtcclxufVxyXG5cclxuLy8vXHJcbi8vLyBUaGlzIG1peGluIGFpbXMgYXQgcmVkZWZpbmluZyB0aGUgY29uZmlndXJhdGlvbiBqdXN0IGZvciB0aGUgc2NvcGUgb2ZcclxuLy8vIHRoZSBjYWxsLiBJdCBpcyBoZWxwZnVsIHdoZW4gaGF2aW5nIGEgY29tcG9uZW50IG5lZWRpbmcgYW4gZXh0ZW5kZWRcclxuLy8vIGNvbmZpZ3VyYXRpb24gc3VjaCBhcyBjdXN0b20gYnJlYWtwb2ludHMgKHJlZmVycmVkIHRvIGFzIHR3ZWFrcG9pbnRzKVxyXG4vLy8gZm9yIGluc3RhbmNlLlxyXG4vLy9cclxuLy8vIEBhdXRob3IgSHVnbyBHaXJhdWRlbFxyXG4vLy9cclxuLy8vIEBwYXJhbSB7TWFwfSAkdHdlYWtwb2ludHMgWygpXSAtIE1hcCBvZiB0d2Vha3BvaW50cyB0byBiZSBtZXJnZWQgd2l0aCBgJGJyZWFrcG9pbnRzYFxyXG4vLy8gQHBhcmFtIHtNYXB9ICR0d2Vhay1tZWRpYS1leHByZXNzaW9ucyBbKCldIC0gTWFwIG9mIHR3ZWFrZWQgbWVkaWEgZXhwcmVzc2lvbnMgdG8gYmUgbWVyZ2VkIHdpdGggYCRtZWRpYS1leHByZXNzaW9uYFxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBFeHRlbmQgdGhlIGdsb2JhbCBicmVha3BvaW50cyB3aXRoIGEgdHdlYWtwb2ludFxyXG4vLy8gIEBpbmNsdWRlIG1lZGlhLWNvbnRleHQoKCdjdXN0b20nOiA2NzhweCkpIHtcclxuLy8vICAgIC5mb28ge1xyXG4vLy8gICAgICBAaW5jbHVkZSBtZWRpYSgnPm1vYmlsZScsICc8PWN1c3RvbScpIHtcclxuLy8vICAgICAgIC8vIC4uLlxyXG4vLy8gICAgICB9XHJcbi8vLyAgICB9XHJcbi8vLyAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBFeHRlbmQgdGhlIGdsb2JhbCBtZWRpYSBleHByZXNzaW9ucyB3aXRoIGEgY3VzdG9tIG9uZVxyXG4vLy8gIEBpbmNsdWRlIG1lZGlhLWNvbnRleHQoJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zOiAoJ2FsbCc6ICdhbGwnKSkge1xyXG4vLy8gICAgLmZvbyB7XHJcbi8vLyAgICAgIEBpbmNsdWRlIG1lZGlhKCdhbGwnLCAnPm1vYmlsZScpIHtcclxuLy8vICAgICAgIC8vIC4uLlxyXG4vLy8gICAgICB9XHJcbi8vLyAgICB9XHJcbi8vLyAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBFeHRlbmQgYm90aCBjb25maWd1cmF0aW9uIG1hcHNcclxuLy8vICBAaW5jbHVkZSBtZWRpYS1jb250ZXh0KCgnY3VzdG9tJzogNjc4cHgpLCAoJ2FsbCc6ICdhbGwnKSkge1xyXG4vLy8gICAgLmZvbyB7XHJcbi8vLyAgICAgIEBpbmNsdWRlIG1lZGlhKCdhbGwnLCAnPm1vYmlsZScsICc8PWN1c3RvbScpIHtcclxuLy8vICAgICAgIC8vIC4uLlxyXG4vLy8gICAgICB9XHJcbi8vLyAgICB9XHJcbi8vLyAgfVxyXG4vLy9cclxuQG1peGluIG1lZGlhLWNvbnRleHQoJHR3ZWFrcG9pbnRzOiAoKSwgJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zOiAoKSkge1xyXG4gIC8vIFNhdmUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cclxuICAkZ2xvYmFsLWJyZWFrcG9pbnRzOiAkYnJlYWtwb2ludHM7XHJcbiAgJGdsb2JhbC1tZWRpYS1leHByZXNzaW9uczogJG1lZGlhLWV4cHJlc3Npb25zO1xyXG5cclxuICAvLyBVcGRhdGUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cclxuICAkYnJlYWtwb2ludHM6IG1hcC1tZXJnZSgkYnJlYWtwb2ludHMsICR0d2Vha3BvaW50cykgIWdsb2JhbDtcclxuICAkbWVkaWEtZXhwcmVzc2lvbnM6IG1hcC1tZXJnZSgkbWVkaWEtZXhwcmVzc2lvbnMsICR0d2Vhay1tZWRpYS1leHByZXNzaW9ucykgIWdsb2JhbDtcclxuXHJcbiAgQGNvbnRlbnQ7XHJcblxyXG4gIC8vIFJlc3RvcmUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cclxuICAkYnJlYWtwb2ludHM6ICRnbG9iYWwtYnJlYWtwb2ludHMgIWdsb2JhbDtcclxuICAkbWVkaWEtZXhwcmVzc2lvbnM6ICRnbG9iYWwtbWVkaWEtZXhwcmVzc2lvbnMgIWdsb2JhbDtcclxufVxyXG5cclxuLy8vL1xyXG4vLy8gaW5jbHVkZS1tZWRpYSBwdWJsaWMgZXhwb3NlZCBBUElcclxuLy8vIEBhdXRob3IgRWR1YXJkbyBCb3VjYXNcclxuLy8vIEBhY2Nlc3MgcHVibGljXHJcbi8vLy9cclxuXHJcblxyXG4vLy9cclxuLy8vIEdlbmVyYXRlcyBhIG1lZGlhIHF1ZXJ5IGJhc2VkIG9uIGEgbGlzdCBvZiBjb25kaXRpb25zXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAgICRjb25kaXRpb25zICAtIE1lZGlhIHF1ZXJ5IGNvbmRpdGlvbnNcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBhIHNpbmdsZSBzZXQgYnJlYWtwb2ludFxyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+bW9iaWxlJykgeyB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdpdGggdHdvIHNldCBicmVha3BvaW50c1xyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+bW9iaWxlJywgJzw9dGFibGV0JykgeyB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdpdGggY3VzdG9tIHZhbHVlc1xyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PTM1OHB4JywgJzw4NTBweCcpIHsgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIHNldCBicmVha3BvaW50cyB3aXRoIGN1c3RvbSB2YWx1ZXNcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPmRlc2t0b3AnLCAnPD0xMzUwcHgnKSB7IH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBhIHN0YXRpYyBleHByZXNzaW9uXHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJ3JldGluYTJ4JykgeyB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIE1peGluZyBldmVyeXRoaW5nXHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49MzUwcHgnLCAnPHRhYmxldCcsICdyZXRpbmEzeCcpIHsgfVxyXG4vLy9cclxuQG1peGluIG1lZGlhKCRjb25kaXRpb25zLi4uKSB7XHJcbiAgQGlmICgkaW0tbWVkaWEtc3VwcG9ydCBhbmQgbGVuZ3RoKCRjb25kaXRpb25zKSA9PSAwKSBvclxyXG4gICAgICAobm90ICRpbS1tZWRpYS1zdXBwb3J0IGFuZCBpbS1pbnRlcmNlcHRzLXN0YXRpYy1icmVha3BvaW50KCRjb25kaXRpb25zLi4uKSkge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfSBAZWxzZSBpZiAoJGltLW1lZGlhLXN1cHBvcnQgYW5kIGxlbmd0aCgkY29uZGl0aW9ucykgPiAwKSB7XHJcbiAgICBAbWVkaWEgI3t1bnF1b3RlKHBhcnNlLWV4cHJlc3Npb24obnRoKCRjb25kaXRpb25zLCAxKSkpfSB7XHJcbiAgICAgIC8vIFJlY3Vyc2l2ZSBjYWxsXHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhKHNsaWNlKCRjb25kaXRpb25zLCAyKS4uLikge1xyXG4gICAgICAgIEBjb250ZW50O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vLSBCdXR0b25zIHBhcnRpYWxcbltyb2xlPSdidXR0b24nXSB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJ2hvdmVyJywgJ2ZpbmUnKSB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG59XG5cbi5idG4geyBcbiAgICBkaXNwbGF5OiBmbGV4OyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgYWxpZ24taXRlbXM6IGNlbnRlcjsgZmxleC1iYXNpczogYXV0bzsgXG4gICAgXG4gICAgJi5kaXNhYmxlZCwgW2Rpc2FibGVkXSB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbn1cbiIsIi8vLSBQYXJ0aWFsIGZvciBTVkcgc3ByaXRlIGljb25zXHJcbi5pY29uIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47IGRpc3BsYXk6IGlubGluZS1ibG9jazsgd2lkdGg6IDFlbTsgaGVpZ2h0OiAxZW07IG1hcmdpbjogMDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgZm9udC1zaXplOiAxZW07IC8qIGRlZmF1bHQtc2l6ZSAqL1xyXG4gICAgZmlsbDogaW5oZXJpdDsgLyogZGVmYXVsdCBjb2xvciAqLyBcclxuICAgIGNvbG9yOiBpbmhlcml0OyAvKiBkZWZhdWx0IGNvbG9yIHdoZW4gY3VycmVudENvbG9yIGlzIHVzZWQgKi9cclxuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyBwb2ludGVyLWV2ZW50czogbm9uZTtcclxufVxyXG4iLCIuZm9vdGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb290ZXItZnMpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjg7IFxuXG4gICAgJl9fbG9nbyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICAgIH1cblxuICAgICZfX2xpbmtzIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB9XG5cbiAgICAmX19kaXNjbGFpbWVyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB9XG5cbiAgICAmX19yaWdodHMge1xuICAgICAgICBtYXJnaW4tdG9wOiAyZW07XG4gICAgfVxufVxuIiwiQGltcG9ydCBcInZhcmlhYmxlc1wiO1xuXG46cm9vdCB7XG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8dGFibGV0XCIpIHtcbiAgICAgICAgLS1sb2dvLWZzOiAxODBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIsIFwiPGRlc2t0b3BcIikge1xuICAgICAgICAtLWxvZ28tZnM6IDE4MHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcbiAgICAgICAgLS1sb2dvLWZzOiAxODBweDtcbiAgICB9XG59XG5cbi5oZWFkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBwYWRkaW5nLXRvcDogMWVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAxZW07XG5cbiAgICBbY2xhc3NePVwiY29udGFpbmVyXCJdIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cblxuICAgICZfX2xvZ28ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWxvZ28tZnMpO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPHRhYmxldFwiKSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0byA1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBoZWlnaHQ6IG1hcC1nZXQoJGhlYWRlciwgbG9nby1oZWlnaHQpO1xuICAgICAgICAgICAgY29sb3I6ICMyNzM3Nzk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jb250YWN0IHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8dGFibGV0XCIpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1oYXMtc2hhZG93IHtcbiAgICAgICAgYm94LXNoYWRvdzogbWFwLWdldCgkaGVhZGVyLCBzaGFkb3cpO1xuICAgIH1cbn1cblxuLm5hdiB7XG4gICAgQGluY2x1ZGUgdXNlci1zZWxlY3Q7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8dGFibGV0XCIpIHtcbiAgICAgICAgd2lkdGg6IG1hcC1kZWVwLWdldCgkYnVyZ2VyLCBtb2JpbGUsIHdpZHRoKTtcbiAgICAgICAgaGVpZ2h0OiBtYXAtZGVlcC1nZXQoJGJ1cmdlciwgbW9iaWxlLCBoZWlnaHQpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICZfX2NoZWNrYm94IHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuXG4gICAgICAgICY6Y2hlY2tlZCB+IC5tZW51LWxpc3Qge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8dGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAyMDBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19sYWJlbCB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdGV4dC1pbmRlbnQ6IDIwMCU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPHRhYmxldFwiKSB7XG4gICAgICAgICAgICB3aWR0aDogbWFwLWRlZXAtZ2V0KCRidXJnZXIsIG1vYmlsZSwgd2lkdGgpO1xuICAgICAgICAgICAgaGVpZ2h0OiBtYXAtZGVlcC1nZXQoJGJ1cmdlciwgbW9iaWxlLCBoZWlnaHQpO1xuICAgICAgICAgICAgcGFkZGluZzogI3ttYXAtZGVlcC1nZXQoJGJ1cmdlci1pY29uLCBtb2JpbGUsIGdhcCkgKiA2fSAje21hcC1kZWVwLWdldCgkYnVyZ2VyLWljb24sIG1vYmlsZSwgZ2FwKSAqIDMuNX07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZGVlcC1nZXQoJGJ1cmdlci1pY29uLCBtb2JpbGUsIGJnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgd2lkdGg6IG1hcC1kZWVwLWdldCgkYnVyZ2VyLWljb24sIGRlc2t0b3AsIHdpZHRoKTtcbiAgICAgICAgICAgIGhlaWdodDogbWFwLWRlZXAtZ2V0KCRidXJnZXItaWNvbiwgZGVza3RvcCwgd2lkdGgpO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IG1hcC1kZWVwLWdldCgkYnVyZ2VyLWljb24sIGRlc2t0b3AsIGdhcCkgLyAyO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCJob3ZlclwiLCBcImZpbmVcIikge1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYnVyZ2VyIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJGJ1cmdlci1pY29uLCBjb2xvcik7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IG1hcC1nZXQoJGJ1cmdlci1pY29uLCByYWRpdXMpO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPHRhYmxldFwiKSB7XG4gICAgICAgICAgICB3aWR0aDogbWFwLWRlZXAtZ2V0KCRidXJnZXItaWNvbiwgbW9iaWxlLCB3aWR0aCk7XG4gICAgICAgICAgICBoZWlnaHQ6IG1hcC1kZWVwLWdldCgkYnVyZ2VyLWljb24sIG1vYmlsZSwgaGVpZ2h0KTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgI3ttYXAtZGVlcC1nZXQoJGJ1cmdlci1pY29uLCBtb2JpbGUsIGhlaWdodCkgKyBtYXAtZGVlcC1nZXQoJGJ1cmdlci1pY29uLCBtb2JpbGUsIGdhcCkgKiAyfSAwIG1hcC1nZXQoJGJ1cmdlci1pY29uLCBjb2xvciksXG4gICAgICAgICAgICAgICAgMCAjeyhtYXAtZGVlcC1nZXQoJGJ1cmdlci1pY29uLCBtb2JpbGUsIGhlaWdodCkgKyBtYXAtZGVlcC1nZXQoJGJ1cmdlci1pY29uLCBtb2JpbGUsIGdhcCkpICogM30gMFxuICAgICAgICAgICAgICAgICAgICBtYXAtZ2V0KCRidXJnZXItaWNvbiwgY29sb3IpO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICB3aWR0aDogbWFwLWRlZXAtZ2V0KCRidXJnZXItaWNvbiwgZGVza3RvcCwgd2lkdGgpO1xuICAgICAgICAgICAgaGVpZ2h0OiBtYXAtZGVlcC1nZXQoJGJ1cmdlci1pY29uLCBkZXNrdG9wLCBoZWlnaHQpO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAje21hcC1kZWVwLWdldCgkYnVyZ2VyLWljb24sIGRlc2t0b3AsIGhlaWdodCkgKyBtYXAtZGVlcC1nZXQoJGJ1cmdlci1pY29uLCBkZXNrdG9wLCBnYXApfSAwIG1hcC1nZXQoJGJ1cmdlci1pY29uLCBjb2xvciksXG4gICAgICAgICAgICAgICAgMCAjeyhtYXAtZGVlcC1nZXQoJGJ1cmdlci1pY29uLCBkZXNrdG9wLCBoZWlnaHQpICsgbWFwLWRlZXAtZ2V0KCRidXJnZXItaWNvbiwgZGVza3RvcCwgZ2FwKSkgKiAyfSAwXG4gICAgICAgICAgICAgICAgICAgIG1hcC1nZXQoJGJ1cmdlci1pY29uLCBjb2xvcik7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5tZW51LWxpc3Qge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDI7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIjx0YWJsZXRcIikge1xuICAgICAgICBsZWZ0OiBjYWxjKHZhcigtLWdyaWQtZ3V0dGVyLXdpZHRoKSAvIC0yKTtcbiAgICAgICAgd2lkdGg6IG1hcC1kZWVwLWdldCgkbWVudSwgbW9iaWxlLCB3aWR0aCk7XG4gICAgICAgIG1pbi13aWR0aDogbWFwLWRlZXAtZ2V0KCRtZW51LCBtb2JpbGUsIG1pbi13aWR0aCk7XG4gICAgICAgIG1heC1oZWlnaHQ6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCA1MDBtcyBlYXNlLWluLW91dDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgdG9wOiBtYXAtZGVlcC1nZXQoJGJ1cmdlciwgZGVza3RvcCwgaGVpZ2h0KTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IG1hcC1kZWVwLWdldCgkbWVudSwgZGVza3RvcCwgd2lkdGgpO1xuICAgICAgICBib3gtc2hhZG93OiBtYXAtZGVlcC1nZXQoJG1lbnUsIGRlc2t0b3AsIHNoYWRvdyk7XG4gICAgfVxuXG4gICAgJl9faXRlbSB7XG4gICAgfVxuXG4gICAgJl9fbGluayB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xNTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWRlZXAtZ2V0KCRtZW51LCBiZywgaW5pdGlhbCk7XG5cbiAgICAgICAgJixcbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjp2aXNpdGVkIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRtZW51LCBjb2xvcik7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjx0YWJsZXRcIikge1xuICAgICAgICAgICAgcGFkZGluZzogbWFwLWRlZXAtZ2V0KCRtZW51LCBtb2JpbGUsIGlubmVyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOiBtYXAtZGVlcC1nZXQoJG1lbnUsIGRlc2t0b3AsIGlubmVyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiaG92ZXJcIiwgXCJmaW5lXCIpIHtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1kZWVwLWdldCgkbWVudSwgYmcsIGhvdmVyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vLSBmdW5jdGlvbmFsaXR5IHJlbGF0ZWQgbWl4aW5zXHJcbkBtaXhpbiB1c2VyLXNlbGVjdCB7XHJcblx0LXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcclxuXHQtbW96LXVzZXItc2VsZWN0OiBub25lO1xyXG5cdHVzZXItc2VsZWN0OiBub25lO1xyXG59IiwiQGltcG9ydCBcImRlZmF1bHRcIjtcbi8qIVxuICogc2NfQ1RBXG4gKi9cbi5jdGEtd3JhcCB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiBtYXAtZ2V0KCRjdGEtc2NoZW1hLCBjb2xvcik7XG4gICAgYmFja2dyb3VuZDogbWFwLWdldCgkY3RhLXNjaGVtYSwgd3JhcHBlckJhY2tncm91bmRDb2xvcik7XG5cbiAgICBzZWN0aW9uICYge1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjI1ZW07XG4gICAgfVxuXG4gICAgc2VjdGlvbiArICYge1xuICAgICAgICBwYWRkaW5nLXRvcDogMS41ZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxLjVlbTtcbiAgICB9XG5cbiAgICBbY2xhc3NePVwiY29udGFpbmVyXCJdIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgZ2FwOiB2YXIoLS1jdGFXcmFwR2FwLCAyZW0pO1xuICAgIH1cblxuICAgICYtLXN0aWNreSB7XG4gICAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogdmFyKC0tc3RpY2t5QmFySGVpZ2h0KTtcbiAgICAgICAgei1pbmRleDogOTk5O1xuXG4gICAgICAgIGJvZHkgPiAmIHtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIG1haW4gJiB7XG4gICAgICAgICAgICB0b3A6IGNhbGMoMTAwJSAtIHZhcigtLXN0aWNreUJhckhlaWdodCkpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICYgKyAqIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLXN0aWNreUJhckhlaWdodCkgKiAtMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmIH4gKjpsYXN0LWNoaWxkOm5vdCguYWJvdXREcikge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IGNhbGModmFyKC0tc3RpY2t5QmFySGVpZ2h0KSArIHZhcigtLXNlY3Rpb24taW5uZXIpKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYgfiAuYWJvdXREcjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zdGlja3lCYXJIZWlnaHQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IG1hcC1nZXQoJGN0YS1zY2hlbWEsIHRpdGxlRm9udFNpemUpO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjxtb2JpbGVcIikge1xuICAgICAgICAgICAgLS1jdGFUaXRsZUZvbnRTaXplOiAxNnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PW1vYmlsZVwiLCBcIjxtb2JpbGUtbWlkXCIpIHtcbiAgICAgICAgICAgIC0tY3RhVGl0bGVGb250U2l6ZTogMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1tb2JpbGUtbWlkXCIsIFwiPHRhYmxldFwiKSB7XG4gICAgICAgICAgICAtLWN0YVRpdGxlRm9udFNpemU6IDI0cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYnRuIHtcbiAgICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICAgIG1heC13aWR0aDogMzcwcHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAuaGlkZS10ZCB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXQtbWlkXCIpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaGlkZS1tdCB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPHRhYmxldC1taWRcIikge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJ0biB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IG1hcC1nZXQoJGN0YS1zdHJ1Y3R1cmUsIHBhZGRpbmcpO1xuICAgIGZvbnQtZmFtaWx5OiBtYXAtZ2V0KCRjdGEtc2NoZW1hLCBmb250RmFtaWx5KTtcbiAgICBmb250LXdlaWdodDogbWFwLWdldCgkY3RhLXNjaGVtYSwgZm9udFdlaWdodCk7XG4gICAgZm9udC1zaXplOiBtYXAtZ2V0KCRjdGEtc2NoZW1hLCBmb250U2l6ZSk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6IG1hcC1nZXQoJGN0YS1zY2hlbWEsIGNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kOiBtYXAtZGVlcC1nZXQoJGN0YS1zY2hlbWEsIGJnLCBpbml0aWFsKTtcbiAgICBib3JkZXItcmFkaXVzOiBtYXAtZ2V0KCRjdGEtc2NoZW1hLCByYWRpdXMpO1xuICAgIGJveC1zaGFkb3c6IG1hcC1nZXQoJGN0YS1zY2hlbWEsIHNoYWRvdyk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDE1MG1zIGVhc2UtaW4tb3V0O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJzxtb2JpbGUnKSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nLWlubGluZTogLjVlbTtcbiAgICB9XG5cbiAgICAmOm5vdChbaHJlZl0pIHtcbiAgICAgICAgJiwgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogbWFwLWdldCgkY3RhLXNjaGVtYSwgY29sb3IpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5kaXNhYmxlZCxcbiAgICBbZGlzYWJsZWRdIHtcbiAgICAgICAgZmlsdGVyOiBncmF5c2NhbGUoMSk7XG4gICAgfVxuXG4gICAgJjpob3ZlcixcbiAgICAmOnZpc2l0ZWQge1xuICAgICAgICBjb2xvcjogbWFwLWdldCgkY3RhLXNjaGVtYSwgY29sb3IpO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IG1hcC1kZWVwLWdldCgkY3RhLXNjaGVtYSwgYmcsIGhvdmVyKTtcbiAgICB9XG5cbiAgICAuaWNvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogbWFwLWdldCgkY3RhLXNjaGVtYSwgaWNvbi1zaXplKTtcbiAgICB9XG59XG4vKiFcbiAqICNFTkQgc2NfQ1RBXG4gKi8iLCJAaW1wb3J0IFwiZGVmYXVsdFwiO1xuLyohXG4gKiBzY19wb3BzY3JlZW5cbiAqL1xuLnBvcHNjcmVlbiB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6IDEwMDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgcGFkZGluZy1ibG9jazogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRwb3BzY3JlZW4sIGJhY2tncm91bmRDb2xvcik7XG5cbiAgICBbY2xhc3NePVwiY29udGFpbmVyXCJdIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLy8tIFBvcHNjcmVlbiBIZWFkZXJcbiAgICAmX19oZWFkZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nLWJsb2NrOiAxZW0gLjVlbTtcblxuICAgICAgICBbY2xhc3NePVwiY29udGFpbmVyXCJdIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2xvZ28ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc8dGFibGV0Jykge1xuICAgICAgICAgICAgd2lkdGg6IG1hcC1kZWVwLWdldCgkcG9wc2NyZWVuLCBsb2dvLXdpZHRoLCBtb2JpbGUpOyAgIFxuICAgICAgICAgICAgZm9udC1zaXplOiBtYXAtZGVlcC1nZXQoJHBvcHNjcmVlbiwgbG9nby13aWR0aCwgbW9iaWxlKTsgICBcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcsICc8ZGVza3RvcCcpIHtcbiAgICAgICAgICAgIHdpZHRoOiBtYXAtZGVlcC1nZXQoJHBvcHNjcmVlbiwgbG9nby13aWR0aCwgdGFibGV0KTsgICBcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogbWFwLWRlZXAtZ2V0KCRwb3BzY3JlZW4sIGxvZ28td2lkdGgsIHRhYmxldCk7ICAgXG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wJykge1xuICAgICAgICAgICAgd2lkdGg6IG1hcC1kZWVwLWdldCgkcG9wc2NyZWVuLCBsb2dvLXdpZHRoLCBkZXNrdG9wKTsgICBcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogbWFwLWRlZXAtZ2V0KCRwb3BzY3JlZW4sIGxvZ28td2lkdGgsIGRlc2t0b3ApOyAgIFxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgaGVpZ2h0OiBtYXAtZ2V0KCRwb3BzY3JlZW4sIGxvZ28taGVpZ2h0KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2Nsb3NlLWJ0biB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7ICAgICAgICAgICAgXG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICBmb250LXNpemU6IHZhcigtLXBvcHNjcmVlbi1jbG9zZUJ0bi1mcywgMS41ZW0pO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuXG4gICAgJiA+IFtjbGFzc149XCJjb250YWluZXJcIl0ge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBmbGV4OiAxIDEgMTAwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01dmgpO1xuICAgIH1cblxuICAgIC8vLSBwb3BzY3JlZW4gY29udGVudFxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPHRhYmxldCcpIHtcbiAgICAgICAgICAgIEBtZWRpYShtYXgtaGVpZ2h0OiA1MjBweCkge1xuICAgICAgICAgICAgICAgIGZsZXg6IDEgMSAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBtYXJnaW4tYmxvY2s6IDAgLjVlbTtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1wb3BzY3JlZW4tdGl0bGUtZnMsIDUwcHgpO1xuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tcG9wc2NyZWVuLXRpdGxlLXdnLCA4MDApO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1tYWluQ29sb3IpO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPG1vYmlsZVwiKSB7XG4gICAgICAgICAgICAtLXBvcHNjcmVlbi10aXRsZS1mczogMjRweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PW1vYmlsZVwiLCBcIjx0YWJsZXRcIikge1xuICAgICAgICAgICAgLS1wb3BzY3JlZW4tdGl0bGUtZnM6IDI2cHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIiwgXCI8ZGVza3RvcFwiKSB7XG4gICAgICAgICAgICBAbWVkaWEobWluLWhlaWdodDogOTkxcHgpIHtcbiAgICAgICAgICAgICAgICAtLXBvcHNjcmVlbi10aXRsZS1mczogMzhweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xuICAgICAgICAgICAgLS1wb3BzY3JlZW4tdGl0bGUtZnM6IDUwcHg7XG4gICAgICAgIH1cbiAgICBcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICBAbWVkaWEobWF4LWhlaWdodDogOTkwcHgpIHtcbiAgICAgICAgICAgICAgICAtLXBvcHNjcmVlbi10aXRsZS1mczogMzVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLXBvcHNjcmVlbi10aXRsZUluYy1mcywgMS45NWVtKTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXNlY29uZGFyeUNvbG9yKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2ltYWdlLXdyYXBwZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgZmxleDogMSAxIDEwMCU7XG5cbiAgICAgICAgcGljdHVyZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2ltYWdlIHtcbiAgICAgICAgbWF4LXdpZHRoOiB2YXIoLS1wb3BzY3JlZW4tc2Vjb25kSW1nLXcsIDYwdncpO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc8bW9iaWxlLW1pZCcpIHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bW9iaWxlLW1pZCcpIHtcbiAgICAgICAgICAgIC0tcG9wc2NyZWVuLXNlY29uZEltZy13OiAyNDBweDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpe1xuICAgICAgICAgICAgQG1lZGlhKG1heC1oZWlnaHQ6IDk5MHB4KSB7XG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMzV2aDtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB9ICAgICAgICAgICAgXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19mb290ZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjx0YWJsZXRcIikge1xuICAgICAgICAgICAgcGFkZGluZy1ibG9jazogMS4yNWVtO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICBAbWVkaWEobWF4LWhlaWdodDogOTkwcHgpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJsb2NrOiAxLjI1ZW07XG4gICAgICAgICAgICB9ICAgICAgICAgICAgXG4gICAgICAgICAgICBcbiAgICAgICAgICAgIEBtZWRpYShtaW4taGVpZ2h0OiA5OTFweCkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYmxvY2s6IDIuNWVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuLyohXG4gKiAjRU5EIHNjX3BvcHNjcmVlblxuICovIiwiLmJ0biB7XHJcbiAgICAtLWJ1dHRvbi1iZy1pbml0aWFsOiB2YXIoLS1DVEEpO1xyXG4gICAgLS1idXR0b24tYmctaG92ZXI6IGhzbCh2YXIoLS1DVEFfaCksIHZhcigtLUNUQV9zKSwgY2FsYyh2YXIoLS1DVEFfbCkgLSAzJSkpO1xyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpe1xyXG4gICAgICAgIEBtZWRpYShtYXgtaGVpZ2h0OiA5MDBweCkge1xyXG4gICAgICAgICAgICAucG9wc2NyZWVuICYge1xyXG4gICAgICAgICAgICAgICAgLS1idG4tZnM6IDI4cHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5wb3BzY3JlZW4tLXYwMiAmIHtcclxuICAgICAgICAgICAgICAgIC0tYnRuLWZzOiAyMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLnBvcHNjcmVlbiB7XHJcbiAgICAtLW1haW5Db2xvcjogdmFyKC0tdGl0bGVDb2xvcik7XHJcbiAgICAtLXBvcHNjcmVlbi1sb2dvV2lkdGhNb2I6IDkwcHg7XHJcbiAgICAtLXBvcHNjcmVlbi1sb2dvV2lkdGhUYWI6IDE1MHB4O1xyXG4gICAgLS1wb3BzY3JlZW4tbG9nb1dpZHRoRGVzazogMTcwcHg7XHJcbiAgICBcclxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPG1vYmlsZVwiKSB7XHJcbiAgICAgICAgLS1wb3BzY3JlZW4tdGl0bGUtZnM6IDI0cHg7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1tb2JpbGVcIiwgXCI8dGFibGV0XCIpIHtcclxuICAgICAgICAtLXBvcHNjcmVlbi10aXRsZS1mczogMjZweDtcclxuICAgIH1cclxuICAgIFxyXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiLCBcIjxkZXNrdG9wXCIpIHtcclxuICAgICAgICAtLXBvcHNjcmVlbi10aXRsZS1mczogMzhweDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKXtcclxuICAgICAgICBAbWVkaWEobWF4LWhlaWdodDogOTAwcHgpIHtcclxuICAgICAgICAgICAgLS1wb3BzY3JlZW4tbG9nb1dpZHRoRGVzazogMTUwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcbiAgICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XHJcbiAgICAgICAgLS1wb3BzY3JlZW4tdGl0bGUtZnM6IDUwcHg7XHJcbiAgICB9XHJcbiAgICBcclxuICAgICZfX2Nsb3NlLWJ0biB7XHJcbiAgICAgICAgJiwgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIC0tbWFpbkNvbG9yOiB2YXIoLS10aXRsZUNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fdGl0bGUge1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XHJcbiAgICAgICAgICAgIG9yZGVyOiAxO1xyXG4gICAgICAgICAgICBtYXJnaW4tYmxvY2s6IC41ZW0gMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9faW1hZ2Uge1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc8bW9iaWxlLW1pZCcpIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAzNHZ3O1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPj1tb2JpbGUtbWlkJykge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDE5MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKXtcclxuICAgICAgICAgICAgQG1lZGlhKG1heC1oZWlnaHQ6IDkwMHB4KSB7XHJcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAzMHZoO1xyXG4gICAgICAgICAgICB9ICAgICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vLSBwb3BzY3JlZW4gd2l0aCBtYWluIGFuZCBzZWNvbmQgaW1hZ2VzXHJcbiAgICAmLS12MDIge1xyXG4gICAgICAgICYgPiBbY2xhc3NePVwiY29udGFpbmVyXCJdIHtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ydmgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICAucG9wc2NyZWVuIHtcclxuICAgICAgICAgICAgJl9fdGl0bGUge1xyXG4gICAgICAgICAgICAgICAgb3JkZXI6IDE7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYmxvY2s6IC41ZW07XHJcbiAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpe1xyXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYShtYXgtaGVpZ2h0OiA5MDBweCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAtLXBvcHNjcmVlbi10aXRsZS1mczogMzBweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICZfX2ltYWdlLXdyYXBwZXIge1xyXG4gICAgICAgICAgICAgICAgJi0tc2Vjb25kIHtcclxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMztcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgLnBvcHNjcmVlbl9faW1hZ2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPG1vYmlsZS1taWQnKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAtLXBvcHNjcmVlbi1zZWNvbmRJbWctdzogNjB2dztcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bW9iaWxlLW1pZCcpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0tcG9wc2NyZWVuLXNlY29uZEltZy13OiAzMDBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jyl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEobWF4LWhlaWdodDogOTAwcHgpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAyNnZoO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSAgICBcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJl9faW1hZ2Uge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJzxtb2JpbGUtbWlkJykge1xyXG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMzR2dztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bW9iaWxlLW1pZCcpIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDE5MHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKXtcclxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEobWF4LWhlaWdodDogOTAwcHgpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMjJ2aDtcclxuICAgICAgICAgICAgICAgICAgICB9ICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJi0tbGFuZHNjYXBlIHtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPGRlc2t0b3AtbWlkJykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDc1dnc7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPj1kZXNrdG9wLW1pZCcpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyNXZ3O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jyl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBtZWRpYShtYXgtaGVpZ2h0OiA5MDBweCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMzJ2aDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJl9fZm9vdGVyIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59Il19 */
