html{font-family:sans-serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}h1{font-size:2em;margin:0.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace, monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0}input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{height:auto}input[type="search"]{-webkit-appearance:textfield;box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:0.35em 0.625em 0.75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:bold}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}@font-face{font-family:'NeuzeitSLTStd-Book';src:url('fonts/2E82F0_0_0.eot');src:url('fonts/2E82F0_0_0.eot?#iefix') format('embedded-opentype'),url('fonts/2E82F0_0_0.woff2') format('woff2'),url('fonts/2E82F0_0_0.woff') format('woff'),url('fonts/2E82F0_0_0.ttf') format('truetype');}@font-face{font-family:'arial_monospaced_mt_stdRg';src:url('fonts/arial_monospaced_mt_std_regular-webfont.eot');src:url('fonts/arial_monospaced_mt_std_regular-webfont.eot?#iefix') format('embedded-opentype'),url('fonts/arial_monospaced_mt_std_regular-webfont.woff2') format('woff2'),url('fonts/arial_monospaced_mt_std_regular-webfont.woff') format('woff'),url('fonts/arial_monospaced_mt_std_regular-webfont.ttf') format('truetype'),url('fonts/arial_monospaced_mt_std_regular-webfont.svg#arial_monospaced_mt_stdRg') format('svg');font-weight:normal;font-style:normal;}*,*:before,*:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.screen-reader-text{clip:rect(1px, 1px, 1px, 1px);position:absolute !important;height:1px;width:1px;overflow:hidden}.screen-reader-text:hover,.screen-reader-text:active,.screen-reader-text:focus{background-color:#f1f1f1;border-radius:3px;box-shadow:0 0 2px 2px rgba(0,0,0,0.6);clip:auto !important;color:#21759b;display:block;font-size:14px;font-size:0.875rem;font-weight:bold;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}.alignleft{display:inline;float:left;margin-right:1.5em}.alignright{display:inline;float:right;margin-left:1.5em}.aligncenter{display:block;margin-left:auto;margin-right:auto}.clear:before,.clear:after,.entry-content:before,.entry-content:after,.comment-content:before,.comment-content:after,.site-header:before,.site-header:after,.site-content:before,.site-content:after,.site-footer:before,.site-footer:after{content:"";display:table}.clear:after,.entry-content:after,.comment-content:after,.site-header:after,.site-content:after,.site-footer:after{clear:both}.infinite-scroll .posts-navigation,.infinite-scroll.neverending .site-footer{display:none}.infinity-end.neverending .site-footer{display:block}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited{color:#EB6F27;text-decoration:none}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#EB6F27;text-decoration:none}.ui-widget{font-family:"NeuzeitSLTStd-Book",sans-serif;font-size:1.1em}.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{border-top-left-radius:0px}.ui-corner-all,.ui-corner-top,.ui-corner-right,.ui-corner-tr{border-top-right-radius:0px}.ui-corner-all,.ui-corner-bottom,.ui-corner-left,.ui-corner-bl{border-bottom-left-radius:0px}.ui-corner-all,.ui-corner-bottom,.ui-corner-right,.ui-corner-br{border-bottom-right-radius:0px}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default{border:1px solid #EB6F27;background-color:#ffffff;font-weight:normal}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active{border:none;background-color:#ffffff;font-weight:normal}.ui-accordion .ui-accordion-icons{padding-left:0em}.ui-accordion .ui-accordion-header{display:block;cursor:pointer;position:relative;margin:26px 0px 0px;padding-top:0.7rem;padding-bottom:0.7rem;outline:none;padding-left:0.50761%;min-height:0px;font-size:100%;color:#EB6F27;text-transform:capitalize}@media (min-width: 46rem){.ui-accordion .ui-accordion-header{padding-top:1rem;padding-bottom:1rem;}}.ui-accordion-header{width:100%;float:left;margin-left:0;margin-right:0}.ui-accordion-header>a{width:90.81633%;float:left;margin-right:1.02041%;margin-left:0}.ui-accordion-header>span{width:8.16327%;float:right;margin-right:0;margin-right:0;float:right;position:absolute;top:50%;transform:translateY(-50%)}.ui-icon-triangle-1-e{display:none}.accordion-arrow svg{padding-right:0;width:90%;height:auto}.ui-accordion-header[aria-selected="true"] .accordion-arrow svg{transform:rotateX(180deg)}.ui-accordion .ui-accordion-content{padding:0;padding-left:0;padding-right:0;padding-top:2.27273%;background-color:#ffffff}.ui-widget-content{border:none;background:#ffffff;color:inherit}.accordion-content{padding-left:0.50761% !important;padding-right:0.50761% !important}.main-navigation{}.main-navigation ul{display:none}.main-navigation ul ul{}.main-navigation ul ul ul{}.main-navigation ul ul li{}.main-navigation ul ul a{}.main-navigation ul li:hover>ul,.main-navigation ul li.focus>ul{}.main-navigation li{}.main-navigation a{}.menu-toggle,.main-navigation.toggled ul{display:block}@media screen and (min-width: 80rem){.menu-toggle{display:none}.main-navigation ul{display:block}}.site-main .comment-navigation,.site-main .posts-navigation,.site-main .post-navigation{margin:0 0 1.5em;overflow:hidden}.comment-navigation .nav-previous,.posts-navigation .nav-previous,.post-navigation .nav-previous{float:left;width:50%}.comment-navigation .nav-next,.posts-navigation .nav-next,.post-navigation .nav-next{float:right;text-align:right;width:50%}.menu-item:first-letter{text-transform:capitalize}.menu-wp_nav_menu-container [aria-expanded="true"] li{width:100%;text-align:left;margin-left:0px;border:1px solid;background-color:#fff}.menu-item-object-page{width:12.90323%;float:left;margin-right:1.6129%;margin-left:1.6129%;margin-right:0}@media (min-width: 80rem){#primary-menu li:nth-child(1){padding-left:0}#primary-menu li:nth-child(2){padding-left:0}#primary-menu li:nth-child(3){padding-left:7%}#primary-menu li:nth-child(4){padding-left:5%}#primary-menu li:nth-child(5){text-align:right}#primary-menu li:nth-child(6){text-align:right}}#site-navigation #kontakt{display:none}#site-navigation.toggled #kontakt{display:block}.qtranxs-lang-menu{width:12.90323%;float:left;margin-right:1.6129%;margin-right:14.51613%}.qtranxs-lang-menu .sub-menu{padding:0px;margin:0px}@media (min-width: 845px){.qtranxs-lang-menu .sub-menu{display:inline;}}.qtranxs-lang-menu .sub-menu>li:nth-child(1){float:right !important}.main-navigation.toggled .qtranxs-lang-menu .sub-menu>li:nth-child(1){padding:0px !important;margin:0px !important;float:left !important;border:none !important;width:auto !important}.qtranxs-lang-menu-item{width:auto}.main-navigation .qtranxs-lang-menu>a:nth-child(1){margin-left:3px;float:right !important;width:auto}.main-navigation.toggled .qtranxs-lang-menu>a:nth-child(1){float:left !important;margin:0px !important}.qtranxs-lang-menu[aria-haspopup="true"]>a{color:#EB6F27;margin-right:4px !important;margin-right:0px !important;margin-left:4px !important}.qtranxs-lang-menu[aria-haspopup="true"]>a:after{content:""}.qtranxs-lang-menu[aria-haspopup="true"]>a:before{content:" / ";color:#333333}.main-navigation.toggled .qtranxs-lang-menu[aria-haspopup="true"]>a{margin-right:4px !important}.main-navigation.toggled .qtranxs-lang-menu[aria-haspopup="true"]>a:after{content:" / ";color:#333333}.main-navigation.toggled .qtranxs-lang-menu[aria-haspopup="true"]>a:before{content:""}.menu-item-has-children{color:#333333 !important}.menu-wp_footer_menu-container .menu-item{width:100%;float:right;margin-right:0}@media (min-width: 845px){.menu-wp_footer_menu-container .menu-item{width:18.18182%;float:left;margin-right:2.27273%;margin-right:20.45455%;margin-left:2.27273%;}}.menu-wp_footer_menu-container .menu-item:nth-child(1){display:none}@media (min-width: 845px){.menu-wp_footer_menu-container .menu-item:nth-child(1){display:block;margin-left:0;text-align:left;}}.menu-wp_footer_menu-container .menu-item:nth-child(2){display:none}@media (min-width: 845px){.menu-wp_footer_menu-container .menu-item:nth-child(2){display:block;text-align:left;}}.menu-wp_footer_menu-container .menu-item:nth-child(3){margin-right:0}header .menu-wp_nav_menu-container a{color:#333333;width:100%;float:left;text-transform:capitalize}header .menu-wp_nav_menu-container a:hover{color:#EB6F27}header .menu-wp_nav_menu-container .current_page_item a{color:#EB6F27}header .current-menu-item a{color:#EB6F27 !important}footer .menu-wp_footer_menu-container a{color:#333333}footer .menu-wp_footer_menu-container a:hover{color:#EB6F27}footer .menu-wp_footer_menu-container .current_page_item a{color:#EB6F27}footer .current-menu-item a{color:#EB6F27 !important}.id22-menu a{text-transform:lowercase !important}.bxslider-item{vertical-align:middle;display:inline-block;float:none !important;width:101%}.bxslider-item img{width:100%}.bxslider-item img:hover{cursor:pointer}.bxslider.auto .bxslider-item img:hover{cursor:default}.bx-controls{margin-top:1.40845%}.bx-controls svg{width:100%;height:auto}.bx-prev,.bx-next,.bxprev,.bxnext,.accordion-arrow{cursor:pointer;stroke:#EB6F27;stroke-width:8}@media (min-width: 46rem){.bx-prev,.bx-next,.bxprev,.bxnext,.accordion-arrow{stroke-width:4;}}.bx-prev svg,.bxprev svg{padding-left:5.88235%}.bx-next svg,.bxnext svg{padding-right:5.88235%}.home .bx-prev{width:18.18182%;float:left;margin-right:2.27273%}.home .bx-next{width:18.18182%;float:right;margin-right:0}#accordion .bxprev{width:12.90323%;float:left;margin-right:1.6129%}#accordion .bxnext{width:12.90323%;float:right;margin-right:0}.bxslider.manual .bxslider-item{vertical-align:middle;display:inline-block;float:none !important;width:101%;overflow:hidden;height:0 !important;padding-bottom:66%}img{max-height:none !important}.bxslider.auto .bxslider-item{overflow:hidden;height:0 !important;padding-bottom:50%}@media (min-width: 46rem){.bxslider.auto .bxslider-item{padding-bottom:35%;}}.type-news .article-img{position:relative;overflow:hidden;padding-bottom:27%}.type-news .article-img img{position:absolute;top:0;bottom:0;left:0;right:0;margin:auto}.single-news .article-img{position:relative;overflow:hidden;padding-bottom:66%}.single-news .article-img img{position:absolute;top:0;bottom:0;left:0;right:0;margin:auto}.randbox{margin-bottom:17.34694%}.sidebar_inhalt{margin-bottom:1rem}.randbox .list-items{line-height:1.3}.randbox .related-links li{margin-bottom:0}.post-type-archive .randbox .related-links .item{width:100%;float:left;margin-left:0;margin-right:0}.related-links{clear:both}.list-items{width:100%;float:left;margin-left:0;margin-right:0}.page-bildungsangebote .related-links .item,.page-id22 .related-links .item,.page-cohousing .related-links .item,.post-type-archive .related-links .item{width:17.34694%;float:left;margin-right:1.02041%;margin-right:9.18367%;margin-left:1.02041%}.page-bildungsangebote .related-links .item:nth-child(4n+1),.page-id22 .related-links .item:nth-child(4n+1),.page-cohousing .related-links .item:nth-child(4n+1),.post-type-archive .related-links .item:nth-child(4n+1){margin-left:0}.page-bildungsangebote .related-links .item:nth-child(4n+4),.page-id22 .related-links .item:nth-child(4n+4),.page-cohousing .related-links .item:nth-child(4n+4),.post-type-archive .related-links .item:nth-child(4n+4){margin-right:0}@media (min-width: 845px){.page-bildungsangebote .related-links .item,.page-id22 .related-links .item,.page-cohousing .related-links .item,.post-type-archive .related-links .item{width:12.90323%;float:left;margin-right:1.6129%;margin-right:14.51613%;margin-left:1.6129%;}.page-bildungsangebote .related-links .item:nth-child(4n+1),.page-id22 .related-links .item:nth-child(4n+1),.page-cohousing .related-links .item:nth-child(4n+1),.post-type-archive .related-links .item:nth-child(4n+1){margin-left:0}.page-bildungsangebote .related-links .item:nth-child(4n+2),.page-id22 .related-links .item:nth-child(4n+2),.page-cohousing .related-links .item:nth-child(4n+2),.post-type-archive .related-links .item:nth-child(4n+2){margin-left:1.2%}.page-bildungsangebote .related-links .item:nth-child(4n+3),.page-id22 .related-links .item:nth-child(4n+3),.page-cohousing .related-links .item:nth-child(4n+3),.post-type-archive .related-links .item:nth-child(4n+3){margin-left:1.8%}.page-bildungsangebote .related-links .item:nth-child(4n+4),.page-id22 .related-links .item:nth-child(4n+4),.page-cohousing .related-links .item:nth-child(4n+4),.post-type-archive .related-links .item:nth-child(4n+4){margin-right:0;margin-left:1.8%}}.past-projects .related-links .item,.small-offer .related-links .item,.small-theme .related-links .item,.page-bildungsangebote .publikationen .related-links .item,.artikel .related-links .item{width:26.53061%;float:left;margin-right:1.02041%;margin-right:9.18367%;margin-left:1.02041%}.past-projects .related-links .item:nth-child(3n+1),.small-offer .related-links .item:nth-child(3n+1),.small-theme .related-links .item:nth-child(3n+1),.page-bildungsangebote .publikationen .related-links .item:nth-child(3n+1),.artikel .related-links .item:nth-child(3n+1){margin-left:0}.past-projects .related-links .item:nth-child(3n+3),.small-offer .related-links .item:nth-child(3n+3),.small-theme .related-links .item:nth-child(3n+3),.page-bildungsangebote .publikationen .related-links .item:nth-child(3n+3),.artikel .related-links .item:nth-child(3n+3){margin-right:0}@media (min-width: 845px){.past-projects .related-links .item,.small-offer .related-links .item,.small-theme .related-links .item,.page-bildungsangebote .publikationen .related-links .item,.artikel .related-links .item{width:18.18182%;float:left;margin-right:2.27273%;margin-right:20.45455%;margin-left:2.27273%;}.past-projects .related-links .item:nth-child(3n+1),.small-offer .related-links .item:nth-child(3n+1),.small-theme .related-links .item:nth-child(3n+1),.page-bildungsangebote .publikationen .related-links .item:nth-child(3n+1),.artikel .related-links .item:nth-child(3n+1){margin-left:0;margin-right:21%}.past-projects .related-links .item:nth-child(3n+2),.small-offer .related-links .item:nth-child(3n+2),.small-theme .related-links .item:nth-child(3n+2),.page-bildungsangebote .publikationen .related-links .item:nth-child(3n+2),.artikel .related-links .item:nth-child(3n+2){margin-left:2.45%}.past-projects .related-links .item:nth-child(3n+3),.small-offer .related-links .item:nth-child(3n+3),.small-theme .related-links .item:nth-child(3n+3),.page-bildungsangebote .publikationen .related-links .item:nth-child(3n+3),.artikel .related-links .item:nth-child(3n+3){margin-right:0;margin-left:2.5%}}.past-projects .left-column .related-links .item,.post-type-archive-bildungsangebote .artikel .left-column .related-links .item,.small-offer .left-column .related-links .item,.small-theme .left-column .related-links .item{width:18.18182%;float:left;margin-right:2.27273%;margin-right:20.45455%}.past-projects .left-column .related-links .item:nth-child(3n+2),.post-type-archive-bildungsangebote .artikel .left-column .related-links .item:nth-child(3n+2),.small-offer .left-column .related-links .item:nth-child(3n+2),.small-theme .left-column .related-links .item:nth-child(3n+2){margin-left:2.27273%;margin-right:21.93878%}.past-projects .left-column .related-links .item:nth-child(3n+3),.post-type-archive-bildungsangebote .artikel .left-column .related-links .item:nth-child(3n+3),.small-offer .left-column .related-links .item:nth-child(3n+3),.small-theme .left-column .related-links .item:nth-child(3n+3){margin-right:0;margin-left:2.27273%}@media (min-width: 845px){.past-projects .left-column .related-links .item:nth-child(3n+1),.post-type-archive-bildungsangebote .artikel .left-column .related-links .item:nth-child(3n+1),.small-offer .left-column .related-links .item:nth-child(3n+1),.small-theme .left-column .related-links .item:nth-child(3n+1){margin-right:20.6%;width:17.3%;}}@media (min-width: 845px){.past-projects .right-column .related-links .item:nth-child(3n+3),.post-type-archive-bildungsangebote .artikel .right-column .related-links .item:nth-child(3n+3),.small-offer .right-column .related-links .item:nth-child(3n+3),.small-theme .right-column .related-links .item:nth-child(3n+3){width:17%;}}@media (min-width: 0px) and (max-width: 449px){.home .related-links .item:nth-child(2n+1){width:44.89796%;float:left;margin-right:1.02041%}.home .related-links .item:nth-child(2n+2){width:44.89796%;float:right;margin-right:0}}@media (min-width: 450px) and (max-width: 839px){.home .related-links .item{width:26.53061%;float:left;margin-right:1.02041%;margin-right:9.18367%;margin-left:1.02041%;}.home .related-links .item:nth-child(3n+1){margin-left:0}.home .related-links .item:nth-child(3n+3){margin-right:0}}@media (min-width: 840px) and (max-width: 960px){.home .related-links .item:nth-child(2n+1){width:38%;float:left;margin-left:0;margin-right:0}.home .related-links .item:nth-child(2n+2){width:39%;float:right;margin-right:0}}@media (min-width: 845px){.home .related-links .item{width:18.18182%;float:left;margin-right:2.27273%;margin-right:20.45455%;margin-left:2.27273%;}.home .related-links .item:nth-child(3n+1){margin-left:0}.home .related-links .item:nth-child(3n+2){}.home .related-links .item:nth-child(3n+3){margin-right:0}}#dates .related-links .item,#news .related-links .item{width:30.76923%;float:left;margin-right:3.84615%;margin-right:34.61538%;margin-left:3.84615%}#dates .related-links .item:nth-child(2n+1),#news .related-links .item:nth-child(2n+1){margin-left:0}#dates .related-links .item:nth-child(2n+2),#news .related-links .item:nth-child(2n+2){margin-right:0}.vorstandmitglieder .related-links h3{margin-bottom:0}.vorstandmitglieder .related-links .list-items{line-height:1.3}.vorstandmitglieder .related-links .item{margin-bottom:0}.vorstandmitglieder .related-links h3{margin-top:1rem}.vorstandmitglieder .vorstellung{margin-bottom:0}.related-content{display:none}@media (min-width: 46rem){.related-content{display:block;}.related-content .item{width:17.34694%;float:left;margin-right:1.02041%;margin-right:9.18367%;margin-left:1.02041%}.related-content .item:nth-child(4n+1){margin-left:0;width:17%;margin-right:9.3%}.related-content .item:nth-child(4n+2){width:17.4%;margin-right:9.4%}.related-content .item:nth-child(4n+3){width:17.55%;margin-right:9.3%}.related-content .item:nth-child(4n+4){margin-right:0;width:17%;margin-left:1%}}.page-archive .news .related-content{margin-top:2.85714%}.page-archive .news .related-content .item{width:48.57143%;float:left;margin-right:2.85714%;margin-left:0;min-height:3.5rem}.page-archive .news .related-content .item:nth-child(2n+2){margin-right:0}.page-archive .news .related-links .item{width:48.57143%;float:left;margin-right:2.85714%;margin-left:0}.page-archive .news .related-links .item:nth-child(2n+2){margin-right:0}#news .related-content{margin-top:3.84615%}#news .related-content .item{min-height:3.5rem;margin-left:3.84615%}#news .related-content .item:nth-child(2n+1){margin-left:0;margin-right:1.88679%;width:39%;float:left}#news .related-content .item:nth-child(2n+2){margin-right:0;margin-left:0;width:38%;float:left}@media (min-width: 46rem){.past-projects .left-column .related-content .item:nth-child(2n+1),.small-theme .left-column .related-content .item:nth-child(2n+1),.artikel .left-column .related-content .item:nth-child(2n+1),.post-type-archive-bildungsangebote .publikationen .left-column .related-links .item:nth-child(2n+1),.publikationen .left-column .related-content .item:nth-child(2n+1){width:38%;float:left;margin-left:0;margin-right:0}.past-projects .left-column .related-content .item:nth-child(2n+2),.small-theme .left-column .related-content .item:nth-child(2n+2),.artikel .left-column .related-content .item:nth-child(2n+2),.post-type-archive-bildungsangebote .publikationen .left-column .related-links .item:nth-child(2n+2),.publikationen .left-column .related-content .item:nth-child(2n+2){width:39%;float:right;margin-right:0}}.past-projects .right-column .related-content .item,.small-theme .right-column .related-content .item,.artikel .right-column .related-content .item,.post-type-archive-bildungsangebote .publikationen .right-column .related-links .item,.publikationen .right-column .related-content .item{}@media (min-width: 46rem){.past-projects .right-column .related-content .item:nth-child(2n+1),.small-theme .right-column .related-content .item:nth-child(2n+1),.artikel .right-column .related-content .item:nth-child(2n+1),.post-type-archive-bildungsangebote .publikationen .right-column .related-links .item:nth-child(2n+1),.publikationen .right-column .related-content .item:nth-child(2n+1){width:39%;float:left;margin-left:0;margin-right:0}.past-projects .right-column .related-content .item:nth-child(2n+2),.small-theme .right-column .related-content .item:nth-child(2n+2),.artikel .right-column .related-content .item:nth-child(2n+2),.post-type-archive-bildungsangebote .publikationen .right-column .related-links .item:nth-child(2n+2),.publikationen .right-column .related-content .item:nth-child(2n+2){width:38%;float:right;margin-right:0}}.sidebar{display:none}@media (min-width: 845px){.sidebar{display:block;}}.publikationen .related-content li.item,.small-theme .related-content li.item{margin-bottom:1.27551%}.related-content h3.section-title{background-color:#E0E0E0;margin-left:-0.55%}.related-content .list.section-title:before,.related-links .list.section-title:before{content:"+ "}.related-content .sub-item:before,.related-links .item:before{content:"> ";color:#EB6F27}.related-content .sub-item:hover:before,.related-links .item:hover:before{color:#333333}.related-links .item.back:before,.related-links .tem.back:hover:before{content:none}.single-news .related-links,.single-news .related-content{margin-top:2.27273%}.single-news .related-content .item{min-height:3.5rem;width:26.53061%;float:left;margin-right:1.02041%;margin-right:9.18367%;margin-left:1.02041%}.single-news .related-content .item:nth-child(2n+1){margin-left:0}.single-news .related-content .item:nth-child(2n+2){}@media (min-width: 845px){.single-news .related-content .item{margin-left:0;width:38.63636%;float:left;margin-right:2.27273%;}.single-news .related-content .item:nth-child(2n+2){margin-right:20.45455%}}.single-news .related-links .item{min-height:3.5rem;width:26.53061%;float:left;margin-right:1.02041%;margin-right:9.18367%;margin-left:1.02041%}.single-news .related-links .item:nth-child(2n+1){margin-left:0}.single-news .related-links .item:nth-child(2n+2){}@media (min-width: 845px){.single-news .related-links .item{margin-left:0;width:38.63636%;float:left;margin-right:2.27273%;}.single-news .related-links .item:nth-child(2n+2){margin-right:20.45455%}}.post-type-archive-projekte .row.partners .content .item{width:8.16327%;float:left;margin-right:1.02041%;margin-right:9.18367%;margin-left:1.02041%;height:10rem}.post-type-archive-projekte .row.partners .content .item:nth-child(6n+1){margin-left:0;width:7.8%}.post-type-archive-projekte .row.partners .content .item:nth-child(6n+2){width:8.2%;margin-right:9.4%}.post-type-archive-projekte .row.partners .content .item:nth-child(6n+3){margin-right:9.4%}.post-type-archive-projekte .row.partners .content .item:nth-child(6n+4){margin-right:9.4%}.post-type-archive-projekte .row.partners .content .item:nth-child(6n+5){margin-right:9.3%}.post-type-archive-projekte .row.partners .content .item:nth-child(6n+6){margin-right:0;width:7.7%}.home #partner .item{width:18.18182%;float:left;margin-right:2.27273%;margin-right:20.45455%;margin-left:2.27273%}.home #partner .item:nth-child(3n+1){margin-left:0}.home #partner .item:nth-child(3n+3){margin-right:0}.past-projects .partner .item,.publikationen .partner .item{width:18.18182%;float:left;margin-right:2.27273%;margin-left:2.27273%;margin-right:0}.past-projects .partner .item:nth-child(5n+1),.publikationen .partner .item:nth-child(5n+1){margin-left:0;width:18.4%}.past-projects .partner .item:nth-child(5n+3),.publikationen .partner .item:nth-child(5n+3){margin-left:2.5%}.past-projects .partner .item:nth-child(5n+4),.publikationen .partner .item:nth-child(5n+4){margin-left:2.5%}.past-projects .left-column .partner .item:nth-child(5n+1),.publikationen .left-column .partner .item:nth-child(5n+1){width:17.3%}.home #partner .item,.page-archive .partner-cat .item{height:15vh;margin-bottom:2.27273%}.home #partner img,.page-archive .partner-cat img{max-height:100%;max-width:100%;width:0;width:auto !important}.page-archive .partner-cat ul.list-items{text-align:center}img{max-height:100%;max-width:100%}.post-type-archive-projekte #partner .item{height:8.16327%;margin-bottom:1.6129%}.page-archive .partner-cat .item{width:30.76923%;float:left;margin-right:3.84615%;margin-right:34.61538%;margin-left:3.84615%}.page-archive .partner-cat .item:nth-child(2n+1){margin-left:0}.page-archive .partner-cat .item:nth-child(2n+2){margin-right:0}img.logo{-webkit-filter:grayscale(100%);filter:grayscale(100%);filter:gray;filter:url("data:image/svg+xml;utf8,<svg version='1.1' xmlns='http://www.w3.org/2000/svg' height='0'><filter id='greyscale'><feColorMatrix type='matrix' values='0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0' /></filter></svg>#greyscale")}img.logo:hover{-webkit-filter:grayscale(0%);filter:grayscale(0%);filter:url("data:image/svg+xml;utf8,<svg version='1.1' xmlns='http://www.w3.org/2000/svg' height='0'><filter id='greyscale'><feColorMatrix type='matrix' values='1 0 0 0 0, 0 1 0 0 0, 0 0 1 0 0, 0 0 0 1 0'/></filter></svg>#greyscale")}#news img{height:100%;max-width:100%}#highlights,#news,#dates{color:#333333}#highlights>article>div:nth-child(1n),#news>article>div:nth-child(1n),#dates>article>div:nth-child(1n){width:59.09091%;float:left;margin-right:2.27273%}#highlights>article>div:nth-child(2n),#news>article>div:nth-child(2n),#dates>article>div:nth-child(2n){width:38.63636%;float:right;margin-right:0}.mehr-link{font-family:"arial_monospaced_mt_stdRg",sans-serif;font-size:12px;font-size:0.75rem;line-height:1.45;text-transform:uppercase}.home .entry-date{display:none}.single-news-title{margin-top:0}.single-news-title>span:nth-child(1){color:#EB6F27}.single-news-title>span:nth-child(2){color:#EB6F27}.single-news-title .news.title:first-letter{text-transform:capitalize !important}html{box-sizing:border-box;overflow-x:hidden;max-width:100% !important}*,*:before,*:after{box-sizing:inherit}body{background:#E0E0E0;max-width:100% !important}blockquote,q{quotes:"" ""}blockquote:before,blockquote:after,q:before,q:after{content:""}hr{background-color:#ccc;border:0;height:1px;margin-bottom:1.5em}img{height:100%;max-width:100%;}.bxslider-item img{height:auto;max-width:100%;width:100%}embed,iframe,object{max-width:100%}article,section,div{float:left;width:100%}section{}div{}p{margin-top:0rem !important;margin-bottom:0rem !important}dfn,cite,em,i{font-style:italic}blockquote{margin:0 1.5em}address{margin:0 0 1.5em}pre{background:#eee;font-family:"Courier 10 Pitch",Courier,monospace;font-size:15px;font-size:0.9375rem;line-height:1.6;margin-bottom:1.6em;max-width:100%;overflow:auto;padding:1.6em}code,kbd,tt,var{font-family:Monaco,Consolas,"Andale Mono","DejaVu Sans Mono",monospace;font-size:15px;font-size:0.9375rem}abbr,acronym{border-bottom:1px dotted #666;cursor:help}mark,ins{background:#fff9c0;text-decoration:none}big{font-size:125%}button{border:medium none;background-color:transparent;float:right;width:auto}.embed-container{position:relative;padding-bottom:56.25%;height:0;overflow:hidden;max-width:100%;height:auto}.embed-container iframe,.embed-container object,.embed-container embed{position:absolute;top:0;left:0;width:100%;height:100%}h1,h2,h3,h4,h5,h6{clear:both}.content-title,.ui-accordion .ui-accordion-header{font-family:"NeuzeitSLTStd-Book",sans-serif;line-height:1.2;font-weight:normal;margin-top:0rem;margin-bottom:1rem}.vorstand-main .content-title{margin-bottom:3.57143%}.content-title{font-size:16px;font-size:1rem}@media (min-width: 46rem){.content-title{font-size:25.6px;font-size:1.6rem;}}.ui-accordion .ui-accordion-header{margin-top:1rem;margin-bottom:0rem;font-size:25.6px;font-size:1.6rem}.ui-accordion .ui-accordion-header:nth-child(1){margin-top:0rem}@media (min-width: 46rem){.ui-accordion .ui-accordion-header{font-size:38.4px;font-size:2.4rem;}}h2:first-letter{text-transform:capitalize !important}.ui-accordion-header a:first-letter{text-transform:capitalize !important}.home h2.content-title{font-size:25.6px;font-size:1.6rem}@media (min-width: 46rem){.home h2.content-title{font-size:38.4px;font-size:2.4rem;}}h3{font-family:"arial_monospaced_mt_stdRg",sans-serif;font-size:12px;font-size:0.75rem;line-height:1.45;text-transform:uppercase;font-weight:normal;margin-top:0rem;margin-bottom:0rem}.page-archive h3{font-family:"NeuzeitSLTStd-Book",sans-serif;font-size:12px;font-size:0.75rem;line-height:1.35;text-transform:none}@media (min-width: 46rem){.page-archive h3{font-size:16px;font-size:1rem;}}.page-archive .news h3{margin-bottom:2.85714%}.page-archive .news .beschreibungstext{margin-bottom:2.85714%}h3.index-title{margin-bottom:0.75rem;letter-spacing:0.02rem}.aside h3{margin-bottom:1rem}.aside-title span{text-transform:none}.header-news-article{margin-bottom:1rem !important}.header-news-article .aside-title{margin-bottom:0;letter-spacing:0.02rem}.header-news-article .aside-title-article{text-transform:none;margin-bottom:0;letter-spacing:0.02rem}.header-news-article .aside-title-article a{color:#333333}.header-news-article .aside-title-article:first-letter{text-transform:capitalize !important}h3.section-title{margin-bottom:0.5rem;letter-spacing:0.02rem}ul.anfahrt h3.section-title,ul.kontakt h3.section-title{margin-bottom:0rem;margin-top:1.5rem}#carousel-warp h3.section-title{margin-bottom:-0.25rem}.related-content h3{margin-bottom:0;color:#EB6F27}.content-title.article{color:#EB6F27;font-size:2.4rem}.single-news-title{font-weight:normal}a{text-decoration:none;color:#EB6F27}a:visited{color:#EB6F27}a:hover,a:active{color:#333333}a:focus{outline:0}a:hover,a:active{outline:0}a.homelink,a.homelink:hover,a.homelink:visited{color:#333333}ul{list-style:none;margin:0;padding-left:0}li{margin-bottom:0}.related-links li,.related-content li{margin-bottom:0.25rem}table{margin:0 0 1.5em;width:100%}body,button,input,select,textarea,.ui-widget{color:#333333;font-family:"NeuzeitSLTStd-Book",sans-serif;font-size:16px;font-size:1rem;line-height:1.35}.aside,.list-items{font-family:"arial_monospaced_mt_stdRg",sans-serif;font-size:12px;font-size:0.75rem;line-height:1.45}.list-items{text-transform:uppercase}#kontakt .list-items{text-transform:none}.big{line-height:1.3;font-size:16px;font-size:1rem}@media (min-width: 46rem){.big{font-size:25.6px;font-size:1.6rem;}}.bigger{line-height:1.2;font-size:25.6px;font-size:1.6rem}@media (min-width: 46rem){.bigger{font-size:38.4px;font-size:2.4rem;}}.name,.vorname{text-transform:capitalize}section#news,section#dates,section#highlight{font-family:"arial_monospaced_mt_stdRg",sans-serif}.container{max-width:100%;margin-left:auto;margin-right:auto}.container:after{content:" ";display:block;clear:both}#page{margin-bottom:0}#content{min-height:90vh}#main{padding-top:5.88235%}#main,header,footer{padding-left:1.02041%;padding-right:1.02041%}.single-news article{}@media (min-width: 845px){.single-news article>div:nth-child(1){width:44.89796%;float:left;margin-right:1.02041%}.single-news article>div:nth-child(2){width:44.89796%;float:right;margin-right:0}}.beschreibung>div{}@media (min-width: 46rem){.beschreibung>div{width:41.93548%;float:left;margin-right:1.6129%;}.beschreibung>div:nth-child(2){width:41.93548%;float:right;margin-right:0}}.site-header{margin-top:0.50761%;margin-bottom:0.50761%}.site-header .site-title{display:none}@media (min-width: 845px){.site-header .site-title{display:block;margin-top:0px;margin-bottom:0px;line-height:1.1;}}.logo-mlf{max-width:17.34694%}.site-header button.menu-toggle{border:none;float:right;text-align:right}.site-header button.menu-toggle span{display:none}.main-navigation.toggled .menu-inner-wrap{margin-top:1.8%;background-color:#E0E0E0}@media (min-width: 845px){.main-navigation.toggled .menu-inner-wrap{padding-bottom:8.16327%;background-color:#E0E0E0;}}@media (min-width: 845px){.main-navigation.toggled.stick .menu-inner-wrap{padding-top:6.45% !important;padding-bottom:8.16327%;margin-top:8.16327% !important;background-color:#E0E0E0;}}#site-navigation.toggled #kontakt{padding-top:8.16327%}.menu-wp_nav_menu-container [aria-expanded="true"] li{width:100%;text-align:left;margin-left:0px;border:1px solid;margin-bottom:5px;background-color:#fff;padding:2.27273%}.menu-wp_nav_menu-container [aria-expanded="false"] li.extra{display:none}.menu-wp_nav_menu-container [aria-expanded="true"] li.extra{display:block}header{overflow:hidden}header .third-left{position:absolute;width:81.63265%;float:left;margin-right:1.02041%}@media (min-width: 845px){header .third-left{position:unset;width:35.71429%;float:left;margin-right:1.02041%;}}header .third-left::after{clear:both}header .third-right{float:right;width:auto}@media (min-width: 845px){header .third-right{width:63.26531%;float:right;margin-right:0;}}nav,.site-title,.homelink{float:left;width:100%}button{outline:none}.third-left .stick1,.third-right .stick,.menu-toggle-close.stick{position:fixed;top:0px;z-index:9999999;padding-top:0.50761%;padding-bottom:1.02041%}.third-left .stick1{background-color:#E0E0E0;width:100%;float:left;margin-left:0;margin-right:0;left:0px;padding-left:1.02041%;padding-right:0%}@media {.third-left .stick1{padding-bottom:2.27273%;}}@media (min-width: 845px){.third-left .stick1{padding-bottom:1.02041%;width:36% !important;}}.third-right .stick{right:0px;margin-right:0%;padding-right:1.02041%;padding-left:1.02041%;background-color:transparent}@media (min-width: 845px){.third-right .stick{background-color:#E0E0E0;width:64% !important;}}.stick.menu-toggle-close{background-color:#E0E0E0;right:0px;width:4%;padding-right:1.02041%;padding-left:1.02041%}@media (min-width: 46rem){.stick.menu-toggle-close{width:64%;}}.menu-toggle{padding-right:0}.menu-toggle.stick{margin-bottom:0%;background-color:#E0E0E0}@media (min-width: 0px) and (max-width: 330px){.menu-toggle.stick{width:19%;}}.menu-toggle-close{text-align:right;padding-right:0}.main-navigation.toggled{margin-top:0%}.main-navigation.toggled.stick{margin-top:1.4rem}@media (min-width: 845px){.main-navigation.toggled.stick{margin-top:-5.5%;}}.main-navigation.toggled.stick .menu-inner-wrap{padding-bottom:8.16327%}footer{border-top:1px solid #EB6F27;overflow:hidden;padding-top:0.25316%}footer div{margin-bottom:0}#colophon .row>div:nth-child(1){width:72.44898%;float:left;margin-right:1.02041%}@media (min-width: 845px){#colophon .row>div:nth-child(1){width:44.89796%;float:left;margin-right:1.02041%;}}#colophon .row>div:nth-child(2){width:17.34694%;float:right;margin-right:0}@media (min-width: 845px){#colophon .row>div:nth-child(2){width:44.89796%;float:right;margin-right:0;}}.index-page-intro{margin-bottom:5.88235%;width:100%;float:left;margin-left:0;margin-right:0}@media (min-width: 845px){.index-page-intro{width:72.44898%;float:right;margin-right:0;}}.index-page-intro>div{color:#EB6F27}.index-page-content{margin-bottom:5.88235%}@media (min-width: 845px){.page-uber-mich .row>div.col-left,.accordion-content .row>div.col-left{width:63.26531%;float:left;margin-right:1.02041%}.page-uber-mich .row>div.col-right,.accordion-content .row>div.col-right{width:26.53061%;float:right;margin-right:0;padding-left:0.25316%}}.masonry:after{content:" ";display:block;clear:both}.masonry__gutter{display:none}@media (min-width: 46rem){.masonry__gutter{display:block;width:10.20408%;}}.masonry__column{width:100%}@media (min-width: 46rem){.masonry__column{width:44.89796%;}}.masonry__item{width:100%}@media (min-width: 46rem){.masonry__item{width:44.89796%;}}.small-masonry .masonry__gutter{width:0}@media (min-width: 46rem){.small-masonry .masonry__gutter{width:16.4%;}}.small-masonry .masonry__column{width:100%}@media (min-width: 46rem){.small-masonry .masonry__column{width:41.77083%;}}.small-masonry .masonry__item{width:100%}@media (min-width: 46rem){.small-masonry .masonry__item{width:41.77083%;}}.vorstand.small-masonry .left-column{}.vorstand.small-masonry .left-column .article-img{margin-left:-2%;width:101.5%}.vorstand.small-masonry .right-column{margin-left:-0.35%;width:42.4%}.vorstand.small-masonry .right-column .article-img{}.large-masonry .left-column{}.large-masonry .left-column .article-img{margin-left:-1.2%;width:101%}.large-masonry .right-column{margin-left:0.1%}.large-masonry .right-column .article-img{margin-right:-1.5%;width:101%}.large-masonry .publikationen .right-column .article-img{padding-left:20.7%;padding-right:20.7%}.large-masonry .publikationen .left-column .article-img{padding-left:20.8%;padding-right:20.6%}.masonry>article h2,.masonry>article .einfuhrungstext,.masonry>article .beschreibungstext,.masonry>article .publication-details,.masonry>article .related-links,.masonry2>article h2,.masonry2>article .einfuhrungstext,.masonry2>article .beschreibungstext,.masonry2>article .publication-details,.masonry2>article .related-links,.masonry3>article h2,.masonry3>article .einfuhrungstext,.masonry3>article .beschreibungstext,.masonry3>article .publication-details,.masonry3>article .related-links,.masonry4>article h2,.masonry4>article .einfuhrungstext,.masonry4>article .beschreibungstext,.masonry4>article .publication-details,.masonry4>article .related-links{margin-bottom:3.57143%}.masonry>article .presse,.masonry>article .partner,.masonry2>article .presse,.masonry2>article .partner,.masonry3>article .presse,.masonry3>article .partner,.masonry4>article .presse,.masonry4>article .partner{display:none}@media (min-width: 845px){.masonry>article .presse,.masonry>article .partner,.masonry2>article .presse,.masonry2>article .partner,.masonry3>article .presse,.masonry3>article .partner,.masonry4>article .presse,.masonry4>article .partner{display:block;margin-bottom:3.57143%;}}.masonry>article .article-img,.masonry2>article .article-img,.masonry3>article .article-img,.masonry4>article .article-img{margin-bottom:5.86735%}.accordion-content.past-projects article>h2{margin-bottom:1.27551%}.accordion-content .row.intro{margin-bottom:3.57143%}#accordion .intro .related-links{margin-top:1.6129%}.row.main .content{margin-bottom:5.86735%}.team.accordion-content .row.main .col-left,.zuhause.accordion-content .row.main .col-left{padding-left:0 !important}.accordion-content #bxslider-img{margin-bottom:8.16327%;margin-left:-0.5%;width:101%}@media (min-width: 46rem){.accordion-content #bxslider-img{margin-left:-0.75%;}}.accordion-content .bx-controls{}.accordion-content .article-img{margin-bottom:3.57143%}.accordion-content .content-item{margin-bottom:5.86735%}.vorstand .content-item{margin-bottom:8.16327%}.accordion-content .row.presse,.accordion-content .row.partners{display:none}@media (min-width: 46rem){.accordion-content .row.presse,.accordion-content .row.partners{display:block;margin-bottom:3.57143%;}}.related-content h3{background-color:#E0E0E0;padding-top:0.50761%;padding-bottom:0.50761%}.related-content .list-items{padding-top:0.50761%;padding-bottom:0.50761%;line-height:1.3}.related-content li{margin-bottom:0}.large-masonry .related-content .list-items{padding:0}.institut.content{margin-bottom:3.57143%}.accordion-content .row.main .vorstand>.content-item{padding-left:0 !important}.vorstand .vorstellung{margin-bottom:1.40845%}.vorstand .related-links h3{margin-top:2.85714% !important}.engagement .beschreibungstext{margin-bottom:3.57143%}.vorstand h3.section-title{margin-bottom:0}.vorstand-img{margin-bottom:2.27273%}.accordion-content .row.related{display:none}@media (min-width: 845px){.accordion-content .row.related{display:block;margin-top:3.57143%;margin-bottom:5.86735%;}}.engagement .article-img{display:none}.accordion-content .content-item.engagement>.beschreibungstext,.accordion-content .content-item.engagement .related-links{margin-bottom:5.86735%}.accordion-content .section-related-block{margin-bottom:12.7551%}.artikel article .related-content h3,.publikationen article .related-content h3,.small-theme article .related-content h3{display:none}.publikationen article .article-img{display:block}.artikel article .related-links{margin-top:2.27273%;margin-bottom:2.27273%}.past-projects{background:#E0E0E0 !important}.page-uber-mich #image{margin-bottom:8.16327%;margin-left:-0.5%;width:101%}@media (min-width: 46rem){.page-uber-mich #image{margin-left:-0.75%;}}.page-uber-mich .row.main .content{margin-bottom:8.16327%}.page-uber-mich .content-item{margin-bottom:1.27551%}.post-type-archive-presse .presse>article{margin-bottom:5.86735%}.post-type-archive-presse .presse>h3,.post-type-archive-presse .presse .beschreibungstext{margin-bottom:0.3rem}@media (min-width: 845px){.home #main .half-left,.post-type-archive-presse #main .half-left{width:44.89796%;float:left;margin-right:1.02041%}.home #main .half-right,.post-type-archive-presse #main .half-right{width:44.89796%;float:right;margin-right:0}}.home .section{margin-bottom:26.53061%}.home #bxslider-img{margin-bottom:12.7551%}.home #vorstellung{margin-top:12.7551%}.home #kontakt,.home #partner,.home #news-feed{display:none}@media (min-width: 845px){.home #kontakt,.home #partner,.home #news-feed{display:block;}}.home #publications article{margin-bottom:8.16327%}.home #news-feed section{margin-bottom:8.16327%}.home article .related-links,.home .bxslider-item .related-links,.home #vorstellung .related-links{margin-top:2.27273%}.home .bxslider .related-links{margin-bottom:8.16327%}.home #kontakt-handy{margin-top:3.57143%}.page-impressum #content .row>div:nth-child(1){width:63.26531%;float:left;margin-right:1.02041%}.page-impressum #content .row>div:nth-child(2){width:26.53061%;float:right;margin-right:0;padding-left:0.25316%}.page-impressum h2.bigger{margin-bottom:0.50761% !important;color:#EB6F27}p.impressum-beschreibung{margin-bottom:3.57143% !important}.page-impressum .main-content .section-title{margin-bottom:0.50761% !important}.impressum{margin-top:3.57143%}ul.kontakt{color:#EB6F27}@media (min-width: 845px){.page-kontakt #main>div:nth-child(1){width:44.89796%;float:left;margin-right:1.02041%}.page-kontakt #main>div:nth-child(2){width:44.89796%;float:right;margin-right:0}} #karte{margin-top:2rem;margin-bottom:4rem;position:relative;overflow:hidden;}
/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInZlbmRvci9fbm9ybWFsaXplLnNjc3MiLCJiYXNlL19mb250cy5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9sYW5ndWFnZS9zdXN5L19ib3gtc2l6aW5nLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL3N1c3kvc2Fzcy9zdXN5L291dHB1dC9zdXBwb3J0L19yZW0uc2NzcyIsIm1vZHVsZXMvX2FjY2Vzc2liaWxpdHkuc2NzcyIsImJhc2UvX2NvbG9ycy5zY3NzIiwiYmFzZS9fbWl4aW5zLW1hc3Rlci5zY3NzIiwibW9kdWxlcy9fYWxpZ25tZW50cy5zY3NzIiwibW9kdWxlcy9fY2xlYXJpbmdzLnNjc3MiLCJtb2R1bGVzL19pbmZpbml0ZS1zY3JvbGwuc2NzcyIsIm1vZHVsZXMvX2FjY29yZGlvbi5zY3NzIiwiYmFzZS9fdHlwb2dyYXBoeS5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9sYW5ndWFnZS9zdXN5L19icmVha3BvaW50LXBsdWdpbi5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9sYW5ndWFnZS9zdXN5L19zcGFuLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL3N1c3kvc2Fzcy9zdXN5L291dHB1dC9mbG9hdC9fc3Bhbi5zY3NzIiwibW9kdWxlcy9fbWVudXMuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvc3VzeS9zYXNzL3N1c3kvbGFuZ3VhZ2Uvc3VzeS9fbWFyZ2lucy5zY3NzIiwibW9kdWxlcy9fc2xpZGVyLnNjc3MiLCJtb2R1bGVzL19yZWxhdGVkLnNjc3MiLCJtb2R1bGVzL19wYXJ0bmVycy5zY3NzIiwibW9kdWxlcy9fbmV3cy5zY3NzIiwiZWxlbWVudHMvX2VsZW1lbnRzLnNjc3MiLCJlbGVtZW50cy9faGVhZGluZ3Muc2NzcyIsImVsZW1lbnRzL19saW5rcy5zY3NzIiwiZWxlbWVudHMvX2xpc3RzLnNjc3MiLCJlbGVtZW50cy9fdGFibGVzLnNjc3MiLCJlbGVtZW50cy9fdHlwb2dyYXBoeS5zY3NzIiwibGF5b3V0L19ncmlkLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL3N1c3kvc2Fzcy9zdXN5L2xhbmd1YWdlL3N1c3kvX2NvbnRhaW5lci5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9vdXRwdXQvc2hhcmVkL19jb250YWluZXIuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvc3VzeS9zYXNzL3N1c3kvb3V0cHV0L3N1cHBvcnQvX2NsZWFyZml4LnNjc3MiLCJsYXlvdXQvX2hlYWRlci5zY3NzIiwibGF5b3V0L19mb290ZXIuc2NzcyIsInRlbXBsYXRlcy9faW5kZXgtcGFnZS5zY3NzIiwidGVtcGxhdGVzL19hYm91dC1wYWdlLnNjc3MiLCJ0ZW1wbGF0ZXMvX2FyY2hpdmUtcGFnZS5zY3NzIiwidGVtcGxhdGVzL19ob21lLXBhZ2Uuc2NzcyIsInRlbXBsYXRlcy9faW1wcmludC1wYWdlLnNjc3MiLCJ0ZW1wbGF0ZXMvX2tvbnRha3QtcGFnZS5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLEtBQ0MsWUFBYSxXQUNiLHlCQUEwQixLQUMxQixxQkFBMEIsTUFHM0IsS0FDQyxPQUFRLEdBR1QsUUFBUyxNQUFPLFFBQVMsV0FBWSxPQUFRLE9BQVEsT0FBUSxLQUFNLEtBQU0sSUFBSyxRQUFTLFFBWXRGLFFBQVMsT0FHVixNQUFPLE9BQVEsU0FBVSxNQUl4QixRQUFTLGFBQ1QsZUFBZ0IsVUFHakIsQUFBSyxBQUFLLHNCQUNULFFBQVMsS0FDVCxPQUFRLEdBR1QsU0FBVSxTQUVULFFBQVMsTUFHVixFQUNDLGlCQUFrQixhQUduQixBQUFDLFNBQVMsQUFBQyxRQUVWLFFBQVMsR0FHVixBQUFJLFlBQ0gsY0FBZSxZQUdoQixFQUFHLE9BRUYsWUFBYSxNQUdkLElBQ0MsV0FBWSxRQUdiLEdBQ0MsVUFBVyxJQUNYLE9BQVEsVUFHVCxLQUNDLFdBQVksS0FDWixNQUFPLE1BR1IsTUFDQyxVQUFX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VTZEaUIsVXdCdkVyQixnQkFBZ0IsU0FBUyxLQUFPLEFBQUcsaUJsQ1UvQixNVWlETSxVVmpETixNV09PLE1YUFAsYVVrRm1CLEV3QjFGWCxhQUFjLFVBSzFCLGdCQUFnQixBQUFFLFVBQ2pCLGNBQXdCLG9CQUN4QixNaENOeUIsU2dDUTFCLEFBQUMseUJBQ0EsY0FBdUIscUJBR3hCLGdCQUFnQixjQUFjLGVBQzdCLGNBQXdCLHFCQUV6QixXQUNDLFdBQVksVUM1QmIsQUFBRSxXQUNELE1qQ1d5QixTT3NDdEIsMEIwQnZDSixjQUFjLE1BQVEsQUFBRyxpQm5DUXJCLE1VaURNLFVWakROLE1XT3NDLEtYUHRDLGFVNkRpQixVeUJoRXJCLGNBQWMsTUFBUSxBQUFHLGlCbkNHckIsTVVpRE0sVVZqRE4sTVdPTyxNWFBQLGFVa0ZtQiIsImZpbGUiOiJzdHlsZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJodG1sIHtcblx0Zm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG5cdC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcblx0LW1zLXRleHQtc2l6ZS1hZGp1c3Q6ICAgICAxMDAlO1xufVxuXG5ib2R5IHtcblx0bWFyZ2luOiAwO1xufVxuXG5hcnRpY2xlLFxuYXNpZGUsXG5kZXRhaWxzLFxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbmZvb3RlcixcbmhlYWRlcixcbm1haW4sXG5tZW51LFxubmF2LFxuc2VjdGlvbixcbnN1bW1hcnkge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cblxuYXVkaW8sXG5jYW52YXMsXG5wcm9ncmVzcyxcbnZpZGVvIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHR2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG5cdGRpc3BsYXk6IG5vbmU7XG5cdGhlaWdodDogMDtcbn1cblxuW2hpZGRlbl0sXG50ZW1wbGF0ZSB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG5cbmEge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuYTphY3RpdmUsXG5hOmhvdmVyIHtcblx0b3V0bGluZTogMDtcbn1cblxuYWJiclt0aXRsZV0ge1xuXHRib3JkZXItYm90dG9tOiAxcHggZG90dGVkO1xufVxuXG5iLFxuc3Ryb25nIHtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbmRmbiB7XG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuaDEge1xuXHRmb250LXNpemU6IDJlbTtcblx0bWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxubWFyayB7XG5cdGJhY2tncm91bmQ6ICNmZjA7XG5cdGNvbG9yOiAjMDAwO1xufVxuXG5zbWFsbCB7XG5cdGZvbnQtc2l6ZTogODAlO1xufVxuXG5zdWIsXG5zdXAge1xuXHRmb250LXNpemU6IDc1JTtcblx0bGluZS1oZWlnaHQ6IDA7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0dmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdXAge1xuXHR0b3A6IC0wLjVlbTtcbn1cblxuc3ViIHtcblx0Ym90dG9tOiAtMC4yNWVtO1xufVxuXG5pbWcge1xuXHRib3JkZXI6IDA7XG59XG5cbnN2Zzpub3QoOnJvb3QpIHtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuZmlndXJlIHtcblx0bWFyZ2luOiAxZW0gNDBweDtcbn1cblxuaHIge1xuXHRib3gtc2l6aW5nOiBjb250ZW50LWJveDtcblx0aGVpZ2h0OiAwO1xufVxuXG5wcmUge1xuXHRvdmVyZmxvdzogYXV0bztcbn1cblxuY29kZSxcbmtiZCxcbnByZSxcbnNhbXAge1xuXHRmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG5cdGZvbnQtc2l6ZTogMWVtO1xufVxuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuXHRjb2xvcjogaW5oZXJpdDtcblx0Zm9udDogaW5oZXJpdDtcblx0bWFyZ2luOiAwO1xufVxuXG5idXR0b24ge1xuXHRvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuYnV0dG9uLFxuc2VsZWN0IHtcblx0dGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbmJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuXHQtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcblx0Y3Vyc29yOiBwb2ludGVyO1xufVxuXG5idXR0b25bZGlzYWJsZWRdLFxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xuXHRjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbmlucHV0OjotbW96LWZvY3VzLWlubmVyIHtcblx0Ym9yZGVyOiAwO1xuXHRwYWRkaW5nOiAwO1xufVxuXG5pbnB1dCB7XG5cdGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59XG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdHBhZGRpbmc6IDA7XG59XG5cbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcblx0aGVpZ2h0OiBhdXRvO1xufVxuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcblx0LXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG5cdGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xufVxuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG5cdC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuZmllbGRzZXQge1xuXHRib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuXHRtYXJnaW46IDAgMnB4O1xuXHRwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG59XG5cbmxlZ2VuZCB7XG5cdGJvcmRlcjogMDtcblx0cGFkZGluZzogMDtcbn1cblxudGV4dGFyZWEge1xuXHRvdmVyZmxvdzogYXV0bztcbn1cblxub3B0Z3JvdXAge1xuXHRmb250LXdlaWdodDogYm9sZDtcbn1cblxudGFibGUge1xuXHRib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuXHRib3JkZXItc3BhY2luZzogMDtcbn1cblxudGQsXG50aCB7XG5cdHBhZGRpbmc6IDA7XG59XG4iLCIvKiBOZXV6ZWl0U0xUU3RkLUJvb2sgKi9cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnTmV1emVpdFNMVFN0ZC1Cb29rJztcbiAgICBzcmM6IHVybCgnZm9udHMvMkU4MkYwXzBfMC5lb3QnKTtcbiAgICBzcmM6IHVybCgnZm9udHMvMkU4MkYwXzBfMC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgIHVybCgnZm9udHMvMkU4MkYwXzBfMC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICB1cmwoJ2ZvbnRzLzJFODJGMF8wXzAud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgIHVybCgnZm9udHMvMkU4MkYwXzBfMC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG59XG5cbi8qIEFyaWFsIE1vbm9zcGFjZWQgTVQgU1REIFJlZ3VsYXIgKi9cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnYXJpYWxfbW9ub3NwYWNlZF9tdF9zdGRSZyc7XG4gICAgc3JjOiB1cmwoJ2ZvbnRzL2FyaWFsX21vbm9zcGFjZWRfbXRfc3RkX3JlZ3VsYXItd2ViZm9udC5lb3QnKTtcbiAgICBzcmM6IHVybCgnZm9udHMvYXJpYWxfbW9ub3NwYWNlZF9tdF9zdGRfcmVndWxhci13ZWJmb250LmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgICAgICB1cmwoJ2ZvbnRzL2FyaWFsX21vbm9zcGFjZWRfbXRfc3RkX3JlZ3VsYXItd2ViZm9udC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgIHVybCgnZm9udHMvYXJpYWxfbW9ub3NwYWNlZF9tdF9zdGRfcmVndWxhci13ZWJmb250LndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICAgIHVybCgnZm9udHMvYXJpYWxfbW9ub3NwYWNlZF9tdF9zdGRfcmVndWxhci13ZWJmb250LnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICAgICAgIHVybCgnZm9udHMvYXJpYWxfbW9ub3NwYWNlZF9tdF9zdGRfcmVndWxhci13ZWJmb250LnN2ZyNhcmlhbF9tb25vc3BhY2VkX210X3N0ZFJnJykgZm9ybWF0KCdzdmcnKTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn0iLCIvLyBTdXN5IEJveCBTaXppbmdcbi8vID09PT09PT09PT09PT09PT09XG5cbi8vIEdsb2JhbCBCb3ggU2l6aW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxuLy8gU2V0IGEgYm94IG1vZGVsIGdsb2JhbGx5IG9uIGFsbCBlbGVtZW50cy5cbi8vIC0gWyRib3hdOiBib3JkZXItYm94IHwgY29udGVudC1ib3hcbi8vIC0gWyRpbmhlcml0XTogdHJ1ZSB8IGZhbHNlXG5AbWl4aW4gZ2xvYmFsLWJveC1zaXppbmcoXG4gICRib3g6IHN1c3ktZ2V0KGdsb2JhbC1ib3gtc2l6aW5nKSxcbiAgJGluaGVyaXQ6IGZhbHNlXG4pIHtcbiAgJGluc3BlY3Q6ICRib3g7XG5cbiAgQGlmICRpbmhlcml0IHtcbiAgICBAYXQtcm9vdCB7XG4gICAgICAgaHRtbCB7IEBpbmNsdWRlIG91dHB1dCgoYm94LXNpemluZzogJGJveCkpOyB9XG4gICAgICAgKiwgKjpiZWZvcmUsICo6YWZ0ZXIgeyBib3gtc2l6aW5nOiBpbmhlcml0OyB9XG4gICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgKiwgKjpiZWZvcmUsICo6YWZ0ZXIgeyBAaW5jbHVkZSBvdXRwdXQoKGJveC1zaXppbmc6ICRib3gpKTsgfVxuICB9XG5cbiAgQGluY2x1ZGUgc3VzeS1pbnNwZWN0KGdsb2JhbC1ib3gtc2l6aW5nLCAkaW5zcGVjdCk7XG4gIEBpbmNsdWRlIHVwZGF0ZS1ib3gtbW9kZWwoJGJveCk7XG59XG5cbi8vIEJvcmRlciBCb3ggU2l6aW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxuLy8gQSBsZWdhY3kgc2hvcnRjdXQuLi5cbi8vIC0gWyRpbmhlcml0XTogdHJ1ZSB8IGZhbHNlXG5AbWl4aW4gYm9yZGVyLWJveC1zaXppbmcoXG4gICRpbmhlcml0OiBmYWxzZVxuKSB7XG4gIEBpbmNsdWRlIGdsb2JhbC1ib3gtc2l6aW5nKGJvcmRlci1ib3gsICRpbmhlcml0KTtcbn1cblxuLy8gVXBkYXRlIEJveCBNb2RlbFxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuLy8gUFJJVkFURTogVXBkYXRlcyBnbG9iYWwgYm94IG1vZGVsIHNldHRpbmdcbkBtaXhpbiB1cGRhdGUtYm94LW1vZGVsKFxuICAkYm94XG4pIHtcbiAgQGlmICRib3ggIT0gc3VzeS1nZXQoZ2xvYmFsLWJveC1zaXppbmcpIHtcbiAgQGluY2x1ZGUgc3VzeS1zZXQoZ2xvYmFsLWJveC1zaXppbmcsICRib3gpO1xuICB9XG59XG4iLCIvLyByZW0gU3VwcG9ydFxuLy8gPT09PT09PT09PT1cblxuLy8gcmVtXG4vLyAtLS1cbi8vIENoZWNrIGZvciBhbiBleGlzdGluZyBzdXBwb3J0IG1peGluLCBvciBvdXRwdXQgZGlyZWN0bHkuXG4vLyAtICRwcm9wICA6IDxjc3MgcHJvcGVydHk+XG4vLyAtICR2YWwgICA6IDxjc3MgdmFsdWU+XG5AbWl4aW4gc3VzeS1yZW0oXG4gICRwcm9wLFxuICAkdmFsXG4pIHtcbiAgJF9yZXFzOiAoXG4gICAgdmFyaWFibGU6IHJoeXRobS11bml0IHJlbS13aXRoLXB4LWZhbGxiYWNrLFxuICAgIG1peGluOiByZW0sXG4gICk7XG4gIEBpZiBzdXN5LXN1cHBvcnQocmVtLCAkX3JlcXMsICR3YXJuOiBmYWxzZSkgYW5kICRyaHl0aG0tdW5pdCA9PSByZW0ge1xuICAgIEBpbmNsdWRlIHJlbSgkcHJvcCwgJHZhbCk7XG4gIH0gQGVsc2Uge1xuICAgICN7JHByb3B9OiAkdmFsO1xuICB9XG59XG4iLCIvKiBUZXh0IG1lYW50IG9ubHkgZm9yIHNjcmVlbiByZWFkZXJzLiAqL1xuLnNjcmVlbi1yZWFkZXItdGV4dCB7XG5cdGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcblx0cG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG5cdGhlaWdodDogMXB4O1xuXHR3aWR0aDogMXB4O1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXG5cdCY6aG92ZXIsXG5cdCY6YWN0aXZlLFxuXHQmOmZvY3VzIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfX2JhY2tncm91bmQtc2NyZWVuO1xuXHRcdGJvcmRlci1yYWRpdXM6IDNweDtcblx0XHRib3gtc2hhZG93OiAwIDAgMnB4IDJweCByZ2JhKDAsIDAsIDAsIDAuNik7XG5cdFx0Y2xpcDogYXV0byAhaW1wb3J0YW50O1xuXHRcdGNvbG9yOiAkY29sb3JfX3RleHQtc2NyZWVuO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSgwLjg3NSk7XG5cdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdGxlZnQ6IDVweDtcblx0XHRsaW5lLWhlaWdodDogbm9ybWFsO1xuXHRcdHBhZGRpbmc6IDE1cHggMjNweCAxNHB4O1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHR0b3A6IDVweDtcblx0XHR3aWR0aDogYXV0bztcblx0XHR6LWluZGV4OiAxMDAwMDA7IC8qIEFib3ZlIFdQIHRvb2xiYXIuICovXG5cdH1cbn0iLCIkY29sb3JfX2JhY2tncm91bmQtYm9keTogI0UwRTBFMC8qI2YzZjNmMyovO1xuJGNvbG9yX19iYWNrZ3JvdW5kLWFjY29yZGlvbjogI2ZmZmZmZjtcbiRjb2xvcl9fYmFja2dyb3VuZC1zY3JlZW46ICNmMWYxZjE7XG4kY29sb3JfX2JhY2tncm91bmQtaHI6ICNjY2M7XG4kY29sb3JfX2JhY2tncm91bmQtYnV0dG9uOiAjZTZlNmU2O1xuJGNvbG9yX19iYWNrZ3JvdW5kLXByZTogI2VlZTtcbiRjb2xvcl9fYmFja2dyb3VuZC1pbnM6ICNmZmY5YzA7XG5cbiRjb2xvcl9fdGV4dC1zY3JlZW46ICMyMTc1OWI7XG4kY29sb3JfX3RleHQtaW5wdXQ6ICM2NjY7XG4kY29sb3JfX3RleHQtaW5wdXQtZm9jdXM6ICMxMTE7XG5cbiRjb2xvcl9fbGluazogLyojRTA1RjE1Ki8gI0VCNkYyNztcbiRjb2xvcl9fbGluay12aXNpdGVkOiAjMDBiZDQ2O1xuJGNvbG9yX19saW5rLWhvdmVyOiAjMzMzMzMzLyojNDA0MDQwKi87XG4kY29sb3JfX3RleHQtbWFpbjogIzMzMzMzMy8qIzQwNDA0MCovO1xuXG4kY29sb3JfX2JvcmRlci1idXR0b246ICNjY2MgI2NjYyAjYmJiO1xuJGNvbG9yX19ib3JkZXItYnV0dG9uLWhvdmVyOiAjY2NjICNiYmIgI2FhYTtcbiRjb2xvcl9fYm9yZGVyLWJ1dHRvbi1mb2N1czogI2FhYSAjYmJiICNiYmI7XG4kY29sb3JfX2JvcmRlci1pbnB1dDogI2NjYztcbiRjb2xvcl9fYm9yZGVyLWFiYnI6ICM2NjY7IiwiLy8gUmVtIG91dHB1dCB3aXRoIHB4IGZhbGxiYWNrXG5AbWl4aW4gZm9udC1zaXplKCRzaXplVmFsdWU6IDEpIHtcblx0Zm9udC1zaXplOiAoJHNpemVWYWx1ZSAqIDE2KSAqIDFweDtcblx0Zm9udC1zaXplOiAkc2l6ZVZhbHVlICogMXJlbTtcbn1cblxuLy8gQ2VudGVyIGJsb2NrXG5AbWl4aW4gY2VudGVyLWJsb2NrIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi8vIENsZWFyZml4XG5AbWl4aW4gY2xlYXJmaXgoKSB7XG5cdGNvbnRlbnQ6IFwiXCI7XG5cdGRpc3BsYXk6IHRhYmxlO1xufVxuXG4vLyBDbGVhciBhZnRlciAobm90IGFsbCBjbGVhcmZpeCBuZWVkIHRoaXMgYWxzbylcbkBtaXhpbiBjbGVhcmZpeC1hZnRlcigpIHtcblx0Y2xlYXI6IGJvdGg7XG59XG4iLCIuYWxpZ25sZWZ0IHtcblx0ZGlzcGxheTogaW5saW5lO1xuXHRmbG9hdDogbGVmdDtcblx0bWFyZ2luLXJpZ2h0OiAxLjVlbTtcbn1cblxuLmFsaWducmlnaHQge1xuXHRkaXNwbGF5OiBpbmxpbmU7XG5cdGZsb2F0OiByaWdodDtcblx0bWFyZ2luLWxlZnQ6IDEuNWVtO1xufVxuXG4uYWxpZ25jZW50ZXIge1xuXHRAaW5jbHVkZSBjZW50ZXItYmxvY2s7XG59IiwiLmNsZWFyOmJlZm9yZSxcbi5jbGVhcjphZnRlcixcbi5lbnRyeS1jb250ZW50OmJlZm9yZSxcbi5lbnRyeS1jb250ZW50OmFmdGVyLFxuLmNvbW1lbnQtY29udGVudDpiZWZvcmUsXG4uY29tbWVudC1jb250ZW50OmFmdGVyLFxuLnNpdGUtaGVhZGVyOmJlZm9yZSxcbi5zaXRlLWhlYWRlcjphZnRlcixcbi5zaXRlLWNvbnRlbnQ6YmVmb3JlLFxuLnNpdGUtY29udGVudDphZnRlcixcbi5zaXRlLWZvb3RlcjpiZWZvcmUsXG4uc2l0ZS1mb290ZXI6YWZ0ZXIge1xuXHRAaW5jbHVkZSBjbGVhcmZpeDtcbn1cblxuLmNsZWFyOmFmdGVyLFxuLmVudHJ5LWNvbnRlbnQ6YWZ0ZXIsXG4uY29tbWVudC1jb250ZW50OmFmdGVyLFxuLnNpdGUtaGVhZGVyOmFmdGVyLFxuLnNpdGUtY29udGVudDphZnRlcixcbi5zaXRlLWZvb3RlcjphZnRlciB7XG5cdEBpbmNsdWRlIGNsZWFyZml4LWFmdGVyO1xufSIsIi8qIEdsb2JhbGx5IGhpZGRlbiBlbGVtZW50cyB3aGVuIEluZmluaXRlIFNjcm9sbCBpcyBzdXBwb3J0ZWQgYW5kIGluIHVzZS4gKi9cbi5pbmZpbml0ZS1zY3JvbGwgLnBvc3RzLW5hdmlnYXRpb24sIC8qIE9sZGVyIC8gTmV3ZXIgUG9zdHMgTmF2aWdhdGlvbiAoYWx3YXlzIGhpZGRlbikgKi9cbi5pbmZpbml0ZS1zY3JvbGwubmV2ZXJlbmRpbmcgLnNpdGUtZm9vdGVyIHsgLyogVGhlbWUgRm9vdGVyICh3aGVuIHNldCB0byBzY3JvbGxpbmcpICovXG5cdGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIFdoZW4gSW5maW5pdGUgU2Nyb2xsIGhhcyByZWFjaGVkIGl0cyBlbmQgd2UgbmVlZCB0byByZS1kaXNwbGF5IGVsZW1lbnRzIHRoYXQgd2VyZSBoaWRkZW4gKHZpYSAubmV2ZXJlbmRpbmcpIGJlZm9yZS4gKi9cbi5pbmZpbml0eS1lbmQubmV2ZXJlbmRpbmcgLnNpdGUtZm9vdGVyIHtcblx0ZGlzcGxheTogYmxvY2s7XG59IiwiLyogYWNjb3JkaW9uICovXG4vKiAqKioqKioqKiogKi9cblxuXG4vKiBqcXVlcnkgdWkgYWNjb3JkaW9uICovXG4vKiAqKioqKioqKioqKioqKioqKioqICovXG4udWktc3RhdGUtZGVmYXVsdCBhLCAudWktc3RhdGUtZGVmYXVsdCBhOmxpbmssIC51aS1zdGF0ZS1kZWZhdWx0IGE6dmlzaXRlZCB7XG4gICAgY29sb3I6ICRjb2xvcl9fbGluaztcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4udWktc3RhdGUtYWN0aXZlIGEsIC51aS1zdGF0ZS1hY3RpdmUgYTpsaW5rLCAudWktc3RhdGUtYWN0aXZlIGE6dmlzaXRlZCB7XG4gICAgY29sb3I6ICRjb2xvcl9fbGluaztcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4udWktd2lkZ2V0IHtcbiAgICBmb250LWZhbWlseTogJGZvbnRfX21haW47XG4gICAgZm9udC1zaXplOiAxLjFlbTtcbn1cblxuLnVpLWNvcm5lci1hbGwsIC51aS1jb3JuZXItdG9wLCAudWktY29ybmVyLWxlZnQsIC51aS1jb3JuZXItdGwge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDBweDtcbn1cbi51aS1jb3JuZXItYWxsLCAudWktY29ybmVyLXRvcCwgLnVpLWNvcm5lci1yaWdodCwgLnVpLWNvcm5lci10ciB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDBweDtcbn1cbi51aS1jb3JuZXItYWxsLCAudWktY29ybmVyLWJvdHRvbSwgLnVpLWNvcm5lci1sZWZ0LCAudWktY29ybmVyLWJsIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwcHg7XG59XG4udWktY29ybmVyLWFsbCwgLnVpLWNvcm5lci1ib3R0b20sIC51aS1jb3JuZXItcmlnaHQsIC51aS1jb3JuZXItYnIge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwcHg7XG59XG5cblxuXG4udWktc3RhdGUtZGVmYXVsdCwgXG4udWktd2lkZ2V0LWNvbnRlbnQgLnVpLXN0YXRlLWRlZmF1bHQsIFxuLnVpLXdpZGdldC1oZWFkZXIgLnVpLXN0YXRlLWRlZmF1bHQge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvcl9fbGluaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfX2JhY2tncm91bmQtYWNjb3JkaW9uO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG4udWktc3RhdGUtYWN0aXZlLCBcbi51aS13aWRnZXQtY29udGVudCAudWktc3RhdGUtYWN0aXZlLCBcbi51aS13aWRnZXQtaGVhZGVyIC51aS1zdGF0ZS1hY3RpdmUge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfX2JhY2tncm91bmQtYWNjb3JkaW9uIDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG4udWktYWNjb3JkaW9uIC51aS1hY2NvcmRpb24taWNvbnMge1xuICAgIHBhZGRpbmctbGVmdDogMGVtO1xufVxuLnVpLWFjY29yZGlvbiAudWktYWNjb3JkaW9uLWhlYWRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDI2cHggMHB4IDBweDtcbiAgICBwYWRkaW5nLXRvcDogMC43cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjdyZW07XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTsgICBcbiAgICB9XG4gICAgcGFkZGluZy1sZWZ0OiBndXR0ZXIoMjIpO1xuICAgIC8vcGFkZGluZy1yaWdodDogZ3V0dGVyKDIyKTtcbiAgICBtaW4taGVpZ2h0OiAwcHg7XG4gICAgZm9udC1zaXplOiAxMDAlO1xuICAgIGNvbG9yOiAkY29sb3JfX2xpbms7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG59XG4udWktYWNjb3JkaW9uLWhlYWRlciB7XG5cbiAgICBAaW5jbHVkZSBzcGFuKDExIG9mIDExKTtcbiAgICA+IGEge1xuICAgICAgICBAaW5jbHVkZSBzcGFuKDEwIG9mIDExKTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6MDtcbiAgICB9XG4gICAgPiBzcGFuIHtcbiAgICAgICAgQGluY2x1ZGUgc3BhbigxIG9mIDExIGxhc3QpO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6MDtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIH1cbn1cblxuXG4vKi51aS1hY2NvcmRpb24taGVhZGVyW2FyaWEtc2VsZWN0ZWQ9XCJmYWxzZVwiXSAudWktaWNvbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaW1hZ2VzL1BmZWlsX2dyw7xuX2lkXzIyXzIuc3ZnXCIpO1xuICAgIC8qYmFja2dyb3VuZC1zaXplOiA3cmVtIDIuNXJlbSAvKjhyZW0gMy41cmVtOyovXG4gICAvKiBiYWNrZ3JvdW5kLXNpemU6IDY1JSBhdXRvO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDI1JSA1MCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKSA7XG4gICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbn1cbi51aS1hY2NvcmRpb24taGVhZGVyW2FyaWEtc2VsZWN0ZWQ9XCJ0cnVlXCJdIC51aS1pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJpbWFnZXMvUGZlaWxfZ3LDvG5faWRfMjJfMi5zdmdcIik7XG4gICAgLypiYWNrZ3JvdW5kLXNpemU6IDEyMHB4IDQwcHggLyo4cmVtIDMuNXJlbTsqL1xuICAgIC8qYmFja2dyb3VuZC1zaXplOiA2NSUgYXV0bztcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA3NSUgNTAlO1xufSovXG5cbi8qLnVpLWljb24ge1xuICAgIGhlaWdodDogM3JlbTtcbn0qL1xuLnVpLWljb24tdHJpYW5nbGUtMS1lIHtcbiAgICAvKmJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsqL1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qLmFjY29yZGlvbi1hcnJvd3MgLmFycm93LXVwLFxuLmFjY29yZGlvbi1hcnJvd3MgLmFycm93LWRvd24ge1xuICAgIHdpZHRoOiAxMDAlO1xuaGVpZ2h0OiBhdXRvO1xuZmxvYXQ6IHJpZ2h0O1xuXG59XG4udWktYWNjb3JkaW9uLWhlYWRlclthcmlhLXNlbGVjdGVkPVwiZmFsc2VcIl0gLmFycm93LXVwIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuLnVpLWFjY29yZGlvbi1oZWFkZXJbYXJpYS1zZWxlY3RlZD1cInRydWVcIl0gLmFycm93LWRvd24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4qL1xuXG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gU1ZHIGFycm93c1xuLmFjY29yZGlvbi1hcnJvdyBzdmcge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDkwJTtcbmhlaWdodDogYXV0bztcbn1cblxuLnVpLWFjY29yZGlvbi1oZWFkZXJbYXJpYS1zZWxlY3RlZD1cInRydWVcIl0gLmFjY29yZGlvbi1hcnJvdyBzdmcge1xuICB0cmFuc2Zvcm06cm90YXRlWCgxODBkZWcpO1xufVxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuXG4udWktYWNjb3JkaW9uIC51aS1hY2NvcmRpb24tY29udGVudCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IC8qZ3V0dGVyKDIyKSovMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAvKmd1dHRlcigyMikqLzA7XG4gICAgcGFkZGluZy10b3A6IC8qMXJlbSovIGd1dHRlcig1KTtcbiAgICAvL2JhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIC8vbWFyZ2luLWJvdHRvbTogc3BhbigxKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfX2JhY2tncm91bmQtYWNjb3JkaW9uO1xufVxuLnVpLXdpZGdldC1jb250ZW50IHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yX19iYWNrZ3JvdW5kLWFjY29yZGlvbjtcbiAgICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLyoudWktc3RhdGUtYWN0aXZlIHtcbiAgICBtYXJnaW4tdG9wOiAtMS44cmVtICFpbXBvcnRhbnQ7XG59Ki9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgIHBhZGRpbmctbGVmdDogZ3V0dGVyKDIyKSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctcmlnaHQ6IGd1dHRlcigyMikgIWltcG9ydGFudDtcbn0iLCIkZm9udF9fbWFpbjogXCJOZXV6ZWl0U0xUU3RkLUJvb2tcIiwgc2Fucy1zZXJpZjtcbiRmb250X19hc2lkZTogXCJhcmlhbF9tb25vc3BhY2VkX210X3N0ZFJnXCIsIHNhbnMtc2VyaWY7XG4kZm9udF9fY29kZTogTW9uYWNvLCBDb25zb2xhcywgXCJBbmRhbGUgTW9ub1wiLCBcIkRlamFWdSBTYW5zIE1vbm9cIiwgbW9ub3NwYWNlO1xuJGZvbnRfX3ByZTogXCJDb3VyaWVyIDEwIFBpdGNoXCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcblxuJGZvbnRfX2xpbmUtaGVpZ2h0LWJvZHk6IDEuMzU7XG4kZm9udF9fbGluZS1oZWlnaHQtcHJlOiAxLjY7XG4kZm9udF9fbGluZS1oZWlnaHQtYXNpZGU6IDEuNDU7XG4kZm9udF9fbGluZS1oZWlnaHQtdGl0bGU6IDEuMjtcbiRmb250X19saW5lLWhlaWdodC1iaWc6IDEuMzsiLCIvLyBCcmVha3BvaW50IEludGVncmF0aW9uXG4vLyA9PT09PT09PT09PT09PT09PT09PT09XG5cbiRzdXN5LW1lZGlhOiAoKSAhZGVmYXVsdDtcbiRzdXN5LW1lZGlhLWZhbGxiYWNrOiBmYWxzZSAhZGVmYXVsdDtcblxuJF9zdXN5LW1lZGlhLWNvbnRleHQ6ICgpO1xuXG5cbi8vIFN1c3kgQnJlYWtwb2ludFxuLy8gLS0tLS0tLS0tLS0tLS0tXG4vLyBDaGFuZ2UgZ3JpZHMgYXQgZGlmZmVyZW50IG1lZGlhIHF1ZXJ5IGJyZWFrcG9pbnRzLlxuLy8gLSAkcXVlcnkgICAgIDogPG1pbi13aWR0aD4gWzxtYXgtd2lkdGg+XSB8IDxwcm9wZXJ0eT4gPHZhbHVlPiB8IDxtYXA+XG4vLyAtICRsYXlvdXQgICAgOiA8c2V0dGluZ3M+XG4vLyAtICRuby1xdWVyeSAgOiA8Ym9vbGVhbj4gfCA8c2VsZWN0b3I+XG5AbWl4aW4gc3VzeS1icmVha3BvaW50KFxuICAkcXVlcnksXG4gICRsYXlvdXQ6IGZhbHNlLFxuICAkbm8tcXVlcnk6ICRzdXN5LW1lZGlhLWZhbGxiYWNrXG4pIHtcbiAgQGluY2x1ZGUgc3VzeS1tZWRpYS1yb3V0ZXIoJHF1ZXJ5LCAkbm8tcXVlcnkpIHtcbiAgICBAaWYgJGxheW91dCB7XG4gICAgICBAaW5jbHVkZSB3aXRoLWxheW91dCgkbGF5b3V0KSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cblxuLy8gU3VzeSBNZWRpYVxuLy8gLS0tLS0tLS0tLVxuLy8gLSAkcXVlcnk6IDxtaW4td2lkdGg+IFs8bWF4LXdpZHRoPl0gfCA8cHJvcGVydHk+IDx2YWx1ZT5cbi8vIC0gJG5vLXF1ZXJ5OiA8Ym9vbGVhbj4gfCA8c2VsZWN0b3I+XG5AbWl4aW4gc3VzeS1tZWRpYShcbiAgJHF1ZXJ5LFxuICAkbm8tcXVlcnk6ICRzdXN5LW1lZGlhLWZhbGxiYWNrXG4pIHtcbiAgJG9sZC1jb250ZXh0OiAkX3N1c3ktbWVkaWEtY29udGV4dDtcbiAgJG5hbWU6IGlmKG1hcC1oYXMta2V5KCRzdXN5LW1lZGlhLCAkcXVlcnkpLCAkcXVlcnksIG51bGwpO1xuICAkcXVlcnk6IHN1c3ktZ2V0LW1lZGlhKCRxdWVyeSk7XG4gICRxdWVyeTogc3VzeS1wYXJzZS1tZWRpYSgkcXVlcnkpO1xuXG4gIEBpbmNsdWRlIHN1c3ktbWVkaWEtY29udGV4dCgkcXVlcnksICRuYW1lKTtcblxuICBAaWYgJG5vLXF1ZXJ5IGFuZCB0eXBlLW9mKCRuby1xdWVyeSkgIT0gc3RyaW5nIHtcbiAgICBAY29udGVudDtcbiAgfSBAZWxzZSB7XG4gICAgQG1lZGlhICN7c3VzeS1yZW5kZXItbWVkaWEoJHF1ZXJ5KX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuXG4gICAgQGlmIHR5cGUtb2YoJG5vLXF1ZXJ5KSA9PSBzdHJpbmcge1xuICAgICAgI3skbm8tcXVlcnl9ICYge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBzdXN5LW1lZGlhLWNvbnRleHQoJG9sZC1jb250ZXh0LCAkY2xlYW46IHRydWUpO1xufVxuXG5cbi8vIE1lZGlhIFJvdXRlclxuLy8gLS0tLS0tLS0tLS0tXG4vLyBSb3V0IG1lZGlhIGFyZ3VtZW50cyB0byB0aGUgY29ycmVjdCBtaXhpbi5cbkBtaXhpbiBzdXN5LW1lZGlhLXJvdXRlcihcbiAgJHF1ZXJ5LFxuICAkbm8tcXVlcnk6ICRzdXN5LW1lZGlhLWZhbGxiYWNrXG4pIHtcbiAgQGlmIHN1c3ktc3VwcG9ydChicmVha3BvaW50LCAobWl4aW46IGJyZWFrcG9pbnQpLCAkd2FybjogZmFsc2UpIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRxdWVyeSwgJG5vLXF1ZXJ5KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBpbmNsdWRlIHN1c3ktbWVkaWEoJHF1ZXJ5LCAkbm8tcXVlcnkpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFVwZGF0ZSBDb250ZXh0XG4vLyAtLS0tLS0tLS0tLS0tXG4vLyBTZXQgdGhlIG5ldyBtZWRpYSBjb250ZXh0XG5AbWl4aW4gc3VzeS1tZWRpYS1jb250ZXh0KFxuICAkcXVlcnksXG4gICRuYW1lOiBudWxsLFxuICAkY2xlYW46IGZhbHNlXG4pIHtcbiAgJHF1ZXJ5OiBtYXAtbWVyZ2UoKG5hbWU6ICRuYW1lKSwgJHF1ZXJ5KTtcblxuICBAaWYgJGNsZWFuIHtcbiAgICAkX3N1c3ktbWVkaWEtY29udGV4dDogJHF1ZXJ5ICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRfc3VzeS1tZWRpYS1jb250ZXh0OiBtYXAtbWVyZ2UoJF9zdXN5LW1lZGlhLWNvbnRleHQsICRxdWVyeSkgIWdsb2JhbDtcbiAgfVxufVxuXG5cbi8vIE1lZGlhIENvbnRleHRcbi8vIC0tLS0tLS0tLS0tLS1cbi8vIFJldHVybiB0aGUgZnVsbCBtZWRpYSBjb250ZXh0LCBvciBhIHNpbmdsZSBtZWRpYSBwcm9wZXJ0eSAoZS5nLiBtaW4td2lkdGgpXG5AZnVuY3Rpb24gc3VzeS1tZWRpYS1jb250ZXh0KFxuICAkcHJvcGVydHk6IGZhbHNlXG4pIHtcbiAgQGlmICRwcm9wZXJ0eSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRfc3VzeS1tZWRpYS1jb250ZXh0LCAkcHJvcGVydHkpO1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuICRfc3VzeS1tZWRpYS1jb250ZXh0O1xuICB9XG59XG5cblxuLy8gR2V0IE1lZGlhXG4vLyAtLS0tLS0tLS1cbi8vIFJldHVybiBhIG5hbWVkIG1lZGlhLXF1ZXJ5IGZyb20gJHN1c3ktbWVkaWEuXG4vLyAtICRuYW1lOiA8a2V5PlxuQGZ1bmN0aW9uIHN1c3ktZ2V0LW1lZGlhKFxuICAkbmFtZVxuKSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkc3VzeS1tZWRpYSwgJG5hbWUpIHtcbiAgICAkbWFwLXZhbHVlOiBtYXAtZ2V0KCRzdXN5LW1lZGlhLCAkbmFtZSk7XG4gICAgQGlmICgkbmFtZSA9PSAkbWFwLXZhbHVlKSB7XG4gICAgICAkbmFtZTogJG1hcC12YWx1ZTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRuYW1lOiBzdXN5LWdldC1tZWRpYSgkbWFwLXZhbHVlKTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRuYW1lO1xufVxuXG5cbi8vIFJlbmRlciBNZWRpYVxuLy8gLS0tLS0tLS0tLS0tXG4vLyBCdWlsZCBhIG1lZGlhLXF1ZXJ5IHN0cmluZyBmcm9tIHZhcmlvdXMgbWVkaWEgc2V0dGluZ3NcbkBmdW5jdGlvbiBzdXN5LXJlbmRlci1tZWRpYShcbiAgJHF1ZXJ5XG4pIHtcbiAgJG91dHB1dDogbnVsbDtcbiAgQGVhY2ggJHByb3BlcnR5LCAkdmFsdWUgaW4gJHF1ZXJ5IHtcbiAgICAkc3RyaW5nOiBudWxsO1xuXG4gICAgQGlmICRwcm9wZXJ0eSA9PSBtZWRpYSB7XG4gICAgICAkc3RyaW5nOiAkdmFsdWU7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkc3RyaW5nOiAnKCN7JHByb3BlcnR5fTogI3skdmFsdWV9KSc7XG4gICAgfVxuXG4gICAgJG91dHB1dDogaWYoJG91dHB1dCwgJyN7JG91dHB1dH0gYW5kICN7JHN0cmluZ30nLCAkc3RyaW5nKTtcbiAgfVxuXG4gIEByZXR1cm4gJG91dHB1dDtcbn1cblxuXG4vLyBQYXJzZSBNZWRpYVxuLy8gLS0tLS0tLS0tLS1cbi8vIFJldHVybiBwYXJzZWQgbWVkaWEtcXVlcnkgc2V0dGluZ3MgYmFzZWQgb24gc2hvcnRoYW5kXG5AZnVuY3Rpb24gc3VzeS1wYXJzZS1tZWRpYShcbiAgJHF1ZXJ5XG4pIHtcbiAgJG1xOiBudWxsO1xuICBAaWYgdHlwZS1vZigkcXVlcnkpID09IG1hcCB7XG4gICAgJG1xOiAkcXVlcnk7XG4gIH0gQGVsc2UgaWYgdHlwZS1vZigkcXVlcnkpID09IG51bWJlciB7XG4gICAgJG1xOiAobWluLXdpZHRoOiAkcXVlcnkpO1xuICB9IEBlbHNlIGlmIHR5cGUtb2YoJHF1ZXJ5KSA9PSBsaXN0IGFuZCBsZW5ndGgoJHF1ZXJ5KSA9PSAyIHtcbiAgICBAaWYgdHlwZS1vZihudGgoJHF1ZXJ5LCAxKSkgPT0gbnVtYmVyIHtcbiAgICAgICRtcTogKFxuICAgICAgICBtaW4td2lkdGg6IG1pbigkcXVlcnkuLi4pLFxuICAgICAgICBtYXgtd2lkdGg6IG1heCgkcXVlcnkuLi4pLFxuICAgICAgKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRtcTogKG50aCgkcXVlcnksIDEpOiBudGgoJHF1ZXJ5LCAyKSk7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAkbXE6IChtZWRpYTogJyN7JHF1ZXJ5fScpO1xuICB9XG5cbiAgQHJldHVybiAkbXE7XG59XG4iLCIvLyBTcGFuIFN5bnRheFxuLy8gPT09PT09PT09PT1cblxuLy8gU3BhbiBbbWl4aW5dXG4vLyAtLS0tLS0tLS0tLS1cbi8vIFNldCBhIHNwYW5uaW5nIGVsZW1lbnQgdXNpbmcgc2hvcnRoYW5kIHN5bnRheC5cbi8vIC0gJHNwYW4gIDogPHNwYW4+XG5AbWl4aW4gc3BhbihcbiAgJHNwYW5cbikge1xuICAkaW5zcGVjdDogJHNwYW47XG4gICRzcGFuOiBwYXJzZS1zcGFuKCRzcGFuKTtcbiAgJG91dHB1dDogc3Bhbi1tYXRoKCRzcGFuKTtcbiAgJG5lc3Rpbmc6IHN1c3ktZ2V0KHNwYW4sICRzcGFuKTtcbiAgJGNsZWFyOiBzdXN5LWdldChjbGVhciwgJHNwYW4pO1xuXG4gICRib3g6IHN1c3ktZ2V0KGJveC1zaXppbmcsICRzcGFuKTtcbiAgJGNvbnRlbnQtYm94OiBpZihzdXN5LWdldChnbG9iYWwtYm94LXNpemluZykgIT0gJ2JvcmRlci1ib3gnLCB0cnVlLCBmYWxzZSk7XG4gICRib3g6ICRib3ggb3IgaWYoaXMtaW5zaWRlKCRzcGFuKSBhbmQgJGNvbnRlbnQtYm94LCBib3JkZXItYm94LCBudWxsKTtcblxuICBAaWYgJGNsZWFyID09IGJyZWFrIHtcbiAgICBAaW5jbHVkZSBicmVhaztcbiAgfSBAZWxzZSBpZiAkY2xlYXIgPT0gbm9icmVhayB7XG4gICAgQGluY2x1ZGUgbm9icmVhaztcbiAgfVxuXG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChzcGFuLCAkaW5zcGVjdCk7XG4gIEBpbmNsdWRlIG91dHB1dCgoYm94LXNpemluZzogJGJveCkpO1xuICBAaW5jbHVkZSBmbG9hdC1zcGFuLW91dHB1dCgkb3V0cHV0Li4uKTtcblxuICBAaWYgdmFsaWQtY29sdW1ucygkbmVzdGluZywgc2lsZW50KSB7XG4gICAgQGluY2x1ZGUgbmVzdGVkKCRzcGFuKSB7IEBjb250ZW50OyB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIFNwYW4gW2Z1bmN0aW9uXVxuLy8gLS0tLS0tLS0tLS0tLS0tXG4vLyBSZXR1cm4gdGhlIHdpZHRoIG9mIGEgc3Bhbi5cbi8vIC0gJHNwYW4gIDogPHNwYW4+XG5AZnVuY3Rpb24gc3BhbihcbiAgJHNwYW5cbikge1xuICBAcmV0dXJuIGdldC1zcGFuLXdpZHRoKCRzcGFuKTtcbn1cblxuLy8gU3BhbiBNYXRoXG4vLyAtLS0tLS0tLS1cbi8vIEdldCBhbGwgdGhlIHNwYW4gcmVzdWx0cy5cbi8vIC0gJHNwYW46IDxtYXA+XG5AZnVuY3Rpb24gc3Bhbi1tYXRoKFxuICAkc3BhblxuKSB7XG4gICRuZXN0ICAgICAgICAgICAgIDogaWYoc3VzeS1nZXQocm9sZSwgJHNwYW4pID09IG5lc3QsIHRydWUsIGZhbHNlKTtcbiAgJHNwbGl0LW5lc3QgICAgICAgOiBpZihpcy1zcGxpdCgkc3BhbikgYW5kICRuZXN0LCB0cnVlLCBmYWxzZSk7XG4gICRlZGdlICAgICAgICAgICAgIDogZ2V0LWVkZ2UoJHNwYW4pO1xuICAkbG9jYXRpb24gICAgICAgICA6IGdldC1sb2NhdGlvbigkc3Bhbik7XG5cbiAgJGZsb2F0ICAgICAgICAgICAgOiBmcm9tO1xuICAkcGFkZGluZy1iZWZvcmUgICA6IG51bGw7XG4gICRwYWRkaW5nLWFmdGVyICAgIDogbnVsbDtcbiAgJG1hcmdpbi1iZWZvcmUgICAgOiBudWxsO1xuICAkbWFyZ2luLWFmdGVyICAgICA6IG51bGw7XG5cbiAgLy8gY2FsY3VsYXRlIHdpZHRoc1xuICAkc3ByZWFkOiBpbmRleChtYXAtdmFsdWVzKCRzcGFuKSwgc3ByZWFkKTtcbiAgJHNwYW46IGlmKCRzcGxpdC1uZXN0IGFuZCBub3QoJHNwcmVhZCksIG1hcC1tZXJnZSgkc3BhbiwgKHNwcmVhZDogd2lkZSkpLCAkc3Bhbik7XG4gICR3aWR0aDogZ2V0LXNwYW4td2lkdGgoJHNwYW4pO1xuICAkZ3V0dGVyczogZ2V0LWd1dHRlcnMoJHNwYW4pO1xuXG4gIC8vIGFwcGx5IGd1dHRlcnNcbiAgQGlmIGlzLWluc2lkZSgkc3Bhbikge1xuICAgIEBpZiBub3Qoc3VzeS1nZXQocm9sZSwgJHNwYW4pKSB7XG4gICAgICAkcGFkZGluZy1iZWZvcmU6IG1hcC1nZXQoJGd1dHRlcnMsIGJlZm9yZSk7XG4gICAgICAkcGFkZGluZy1hZnRlcjogbWFwLWdldCgkZ3V0dGVycywgYWZ0ZXIpO1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGlmIG5vdCgkc3BsaXQtbmVzdCkge1xuICAgICAgJG1hcmdpbi1iZWZvcmU6IG1hcC1nZXQoJGd1dHRlcnMsIGJlZm9yZSk7XG4gICAgICAkbWFyZ2luLWFmdGVyOiBtYXAtZ2V0KCRndXR0ZXJzLCBhZnRlcik7XG4gICAgfVxuICB9XG5cbiAgLy8gc3BlY2lhbCBtYXJnaW4gaGFuZGxpbmdcbiAgQGlmIHN1c3ktZ2V0KG91dHB1dCwgJHNwYW4pID09IGlzb2xhdGUgYW5kICRsb2NhdGlvbiB7XG4gICAgJG1hcmdpbi1iZWZvcmU6IGdldC1pc29sYXRpb24oJHNwYW4pO1xuICAgICRtYXJnaW4tYWZ0ZXI6IC0xMDAlO1xuICB9IEBlbHNlIGlmICRlZGdlIHtcbiAgICAkaXMtc3BsaXQ6IGlzLXNwbGl0KCRzcGFuKTtcbiAgICAkcG9zOiBzdXN5LWdldChndXR0ZXItcG9zaXRpb24sICRzcGFuKTtcblxuICAgIEBpZiAkZWRnZSA9PSBsYXN0IHtcbiAgICAgICRmbG9hdDogc3VzeS1nZXQobGFzdC1mbG93LCAkc3Bhbik7XG4gICAgfVxuXG4gICAgQGlmIG5vdCgkaXMtc3BsaXQpIHtcbiAgICAgIEBpZiAkZWRnZSA9PSBmdWxsIG9yICgkZWRnZSA9PSBmaXJzdCBhbmQgJHBvcyA9PSBiZWZvcmUpIHtcbiAgICAgICAgJG1hcmdpbi1iZWZvcmU6IDA7XG4gICAgICB9XG4gICAgICBAaWYgJGVkZ2UgPT0gZnVsbCBvciAoJGVkZ2UgPT0gbGFzdCBhbmQgJHBvcyA9PSBhZnRlcikge1xuICAgICAgICAkbWFyZ2luLWFmdGVyOiAwO1xuICAgICAgfVxuICAgIH1cblxuICB9XG5cbiAgQHJldHVybiAoXG4gICAgd2lkdGggICAgICAgICAgIDogJHdpZHRoLFxuICAgIGZsb2F0ICAgICAgICAgICA6ICRmbG9hdCxcbiAgICBtYXJnaW4tYmVmb3JlICAgOiAkbWFyZ2luLWJlZm9yZSxcbiAgICBtYXJnaW4tYWZ0ZXIgICAgOiAkbWFyZ2luLWFmdGVyLFxuICAgIHBhZGRpbmctYmVmb3JlICA6ICRwYWRkaW5nLWJlZm9yZSxcbiAgICBwYWRkaW5nLWFmdGVyICAgOiAkcGFkZGluZy1hZnRlcixcbiAgICBmbG93ICAgICAgICAgICAgOiBzdXN5LWdldChmbG93LCAkc3BhbiksXG4gICk7XG59XG5cbi8vIEdldCBTcGFuIFdpZHRoXG4vLyAtLS0tLS0tLS0tLS0tLVxuLy8gUmV0dXJuIHNwYW4gd2lkdGguXG4vLyAtICRzcGFuOiA8bWFwPlxuQGZ1bmN0aW9uIGdldC1zcGFuLXdpZHRoKFxuICAkc3BhblxuKSB7XG4gICRzcGFuICAgICA6IHBhcnNlLXNwYW4oJHNwYW4pO1xuXG4gICRuICAgICAgICA6IHN1c3ktZ2V0KHNwYW4sICRzcGFuKTtcbiAgJGxvY2F0aW9uIDogZ2V0LWxvY2F0aW9uKCRzcGFuKTtcbiAgJGNvbHVtbnMgIDogc3VzeS1nZXQoY29sdW1ucywgJHNwYW4pO1xuICAkZ3V0dGVycyAgOiBzdXN5LWdldChndXR0ZXJzLCAkc3Bhbik7XG4gICRzcHJlYWQgICA6IHN1c3ktZ2V0KHNwcmVhZCwgJHNwYW4pO1xuXG4gICRjb250ZXh0ICA6IG51bGw7XG4gICRzcGFuLXN1bSA6IG51bGw7XG4gICR3aWR0aCAgICA6IG51bGw7XG5cbiAgQGlmICRuID09ICdmdWxsJyB7XG4gICAgJHBvczogc3VzeS1nZXQoZ3V0dGVyLXBvc2l0aW9uLCAkc3Bhbik7XG4gICAgJHJvbGU6IHN1c3ktZ2V0KHJvbGUsICRzcGFuKTtcbiAgICAkbjogaWYoJHBvcyA9PSBzcGxpdCBhbmQgJHJvbGUgIT0gbmVzdCwgc3VzeS1jb3VudCgkY29sdW1ucyksIDEwMCUpO1xuICB9XG5cbiAgQGlmIHR5cGUtb2YoJG4pICE9IG51bWJlciB7XG4gICAgQHdhcm4gXCIoI3t0eXBlLW9mKCRuKX0pICN7JG59IGlzIG5vdCBhIHZhbGlkIHNwYW4uXCI7XG4gIH0gQGVsc2UgaWYgdW5pdGxlc3MoJG4pIHtcbiAgICAkY29udGV4dDogc3VzeS1zdW0oJGNvbHVtbnMsICRndXR0ZXJzLCBpZihpcy1zcGxpdCgkc3BhbiksIHdpZGUsIG5hcnJvdykpO1xuICAgICRzcHJlYWQ6IGlmKGlzLWluc2lkZSgkc3BhbiksICRzcHJlYWQgb3Igd2lkZSwgJHNwcmVhZCk7XG4gICAgJHNwYW4tc3VtOiBzdXN5KCRuLCAkbG9jYXRpb24sICRjb2x1bW5zLCAkZ3V0dGVycywgJHNwcmVhZCk7XG5cbiAgICAkX21hdGg6IHN1c3ktZ2V0KG1hdGgsICRzcGFuKTtcbiAgICAkX2NvbHVtbi13aWR0aDogc3VzeS1nZXQoY29sdW1uLXdpZHRoLCAkc3Bhbik7XG4gICAgQGlmICRfbWF0aCA9PSBzdGF0aWMge1xuICAgICAgJHdpZHRoOiAkc3Bhbi1zdW0gKiB2YWxpZC1jb2x1bW4tbWF0aCgkX21hdGgsICRfY29sdW1uLXdpZHRoKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICR3aWR0aDogcGVyY2VudGFnZSgkc3Bhbi1zdW0gLyAkY29udGV4dCk7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAkd2lkdGg6ICRuO1xuICB9XG5cbiAgQHJldHVybiAkd2lkdGg7XG59XG4iLCIvLyBGbG9hdCBTcGFuIEFQSVxuLy8gPT09PT09PT09PT09PT1cblxuLy8gRmxvYXQgU3BhbiBPdXRwdXRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG4vLyAtICR3aWR0aCAgICAgICAgICAgICA6IDxsZW5ndGg+XG4vLyAtIFskZmxvYXRdICAgICAgICAgICA6IGZyb20gfCB0b1xuLy8gLSBbJG1hcmdpbi1iZWZvcmVdICAgOiA8bGVuZ3RoPlxuLy8gLSBbJG1hcmdpbi1hZnRlcl0gICAgOiA8bGVuZ3RoPlxuLy8gLSBbJHBhZGRpbmctYmVmb3JlXSAgOiA8bGVuZ3RoPlxuLy8gLSBbJHBhZGRpbmctYWZ0ZXJdICAgOiA8bGVuZ3RoPlxuLy8gLSBbJGZsb3ddICAgICAgICAgICAgOiBsdHIgfCBydGxcbkBtaXhpbiBmbG9hdC1zcGFuLW91dHB1dChcbiAgJHdpZHRoLFxuICAkZmxvYXQgICAgICAgICAgICA6IGZyb20sXG4gICRtYXJnaW4tYmVmb3JlICAgIDogbnVsbCxcbiAgJG1hcmdpbi1hZnRlciAgICAgOiBudWxsLFxuICAkcGFkZGluZy1iZWZvcmUgICA6IG51bGwsXG4gICRwYWRkaW5nLWFmdGVyICAgIDogbnVsbCxcbiAgJGZsb3cgICAgICAgICAgICAgOiBtYXAtZ2V0KCRzdXN5LWRlZmF1bHRzLCBmbG93KVxuKSB7XG4gICR0byAgICAgOiB0bygkZmxvdyk7XG4gICRmcm9tICAgOiBmcm9tKCRmbG93KTtcblxuICAkb3V0cHV0OiAoXG4gICAgd2lkdGg6ICR3aWR0aCxcbiAgICBmbG9hdDogaWYoJGZsb2F0ID09IHRvLCAkdG8sIG51bGwpIG9yIGlmKCRmbG9hdCA9PSBmcm9tLCAkZnJvbSwgbnVsbCksXG4gICAgbWFyZ2luLSN7JGZyb219OiAkbWFyZ2luLWJlZm9yZSxcbiAgICBtYXJnaW4tI3skdG99OiAkbWFyZ2luLWFmdGVyLFxuICAgIHBhZGRpbmctI3skZnJvbX06ICRwYWRkaW5nLWJlZm9yZSxcbiAgICBwYWRkaW5nLSN7JHRvfTogJHBhZGRpbmctYWZ0ZXIsXG4gICk7XG5cbiAgQGluY2x1ZGUgb3V0cHV0KCRvdXRwdXQpO1xufVxuIiwiLm1haW4tbmF2aWdhdGlvbiB7XG5cdC8qY2xlYXI6IGJvdGg7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRmbG9hdDogbGVmdDtcblx0d2lkdGg6IDEwMCU7Ki9cblxuXHR1bCB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0XHQvKmxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdHBhZGRpbmctbGVmdDogMDsqL1xuXG5cdFx0dWwge1xuXHRcdFx0Lypib3gtc2hhZG93OiAwIDNweCAzcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuXHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7Ki9cblx0XHRcdC8qdG9wOiAxLjVlbTsqL1xuXHRcdFx0LypsZWZ0OiAtOTk5ZW07XG5cdFx0XHR6LWluZGV4OiA5OTk5OTsqL1xuXG5cdFx0XHR1bCB7XG5cdFx0XHRcdC8qbGVmdDogLTk5OWVtOyovXG5cdFx0XHRcdC8qdG9wOiAwOyovXG5cdFx0XHR9XG5cblx0XHRcdGxpIHtcblx0XHRcdFx0LyomOmhvdmVyID4gdWwsXG5cdFx0XHRcdCYuZm9jdXMgPiB1bCB7XG5cdFx0XHRcdFx0bGVmdDogMTAwJTtcblx0XHRcdFx0fSovXG5cdFx0XHR9XG5cblx0XHRcdGEge1xuXHRcdFx0XHQvKndpZHRoOiAyMDBweDsqL1xuXG5cdFx0XHR9XG5cblx0XHRcdDpob3ZlciA+IGEsXG5cdFx0XHQuZm9jdXMgPiBhIHtcblx0XHRcdH1cblxuXHRcdFx0YTpob3Zlcixcblx0XHRcdGEuZm9jdXMge1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdGxpOmhvdmVyID4gdWwsXG5cdFx0bGkuZm9jdXMgPiB1bCB7XG5cdFx0XHQvKmxlZnQ6IGF1dG87Ki9cblx0XHR9XG5cdH1cblx0bGkge1xuXHRcdC8qZmxvYXQ6IGxlZnQ7XG5wb3NpdGlvbjogcmVsYXRpdmU7XG5wYWRkaW5nOiA2cHggMTVweDtcbmJvcmRlcjogMXB4IHNvbGlkIHJlZDtcbm1hcmdpbi1yaWdodDogMjBweDtcbmJhY2tncm91bmQtY29sb3I6IHJlZDtcbmNvbG9yOiB3aGl0ZTsqL1xuXG5cdFx0Jjpob3ZlciA+IGEsXG5cdFx0Ji5mb2N1cyA+IGEge1xuXHRcdH1cblx0fVxuXHRhIHtcblx0XHQvKmRpc3BsYXk6IGJsb2NrO1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRjb2xvcjogcmdiKDI1NSwgMjU1LCAyNTUpOyovXG5cdH1cblxuXHQuY3VycmVudF9wYWdlX2l0ZW0gPiBhLFxuXHQuY3VycmVudC1tZW51LWl0ZW0gPiBhLFxuXHQuY3VycmVudF9wYWdlX2FuY2VzdG9yID4gYSB7XG5cdH1cbn1cblxuLyogU21hbGwgbWVudS4gKi9cbi5tZW51LXRvZ2dsZSxcbi5tYWluLW5hdmlnYXRpb24udG9nZ2xlZCB1bCB7XG5cdGRpc3BsYXk6IGJsb2NrOyBcbn1cbi8qLm1lbnUtdG9nZ2xlIHtcblx0bWFyZ2luLXRvcDogLTElO1xufSovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MHJlbSkge1xuXHQubWVudS10b2dnbGUge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblx0Lm1haW4tbmF2aWdhdGlvbiB1bCB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cbn1cblxuLmNvbW1lbnQtbmF2aWdhdGlvbixcbi5wb3N0cy1uYXZpZ2F0aW9uLFxuLnBvc3QtbmF2aWdhdGlvbiB7XG5cblx0LnNpdGUtbWFpbiAmIHtcblx0XHRtYXJnaW46IDAgMCAxLjVlbTtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHR9XG5cblx0JiAubmF2LXByZXZpb3VzIHtcblx0XHRmbG9hdDogbGVmdDtcblx0XHR3aWR0aDogNTAlO1xuXHR9XG5cblx0JiAubmF2LW5leHQge1xuXHRcdGZsb2F0OiByaWdodDtcblx0XHR0ZXh0LWFsaWduOiByaWdodDtcblx0XHR3aWR0aDogNTAlO1xuXHR9XG59XG5cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblx0SEVBREVSIC0gUHJpbWFyeSBtZW51XG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qIEdlbmVyYWwgbGF5b3V0ICovXG5cbi5tZW51LWl0ZW06Zmlyc3QtbGV0dGVyIHtcblx0dGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG59XG5cblxuLyogTW9iaWxlIG1lbnUgKi9cbi5tZW51LXdwX25hdl9tZW51LWNvbnRhaW5lciBbYXJpYS1leHBhbmRlZD1cInRydWVcIl0gbGkge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDBweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZDtcbiAgICBcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuXG59XG5cblxuLyogRGVza3RvcCBtZW51ICovXG5cbi5tZW51LWl0ZW0tb2JqZWN0LXBhZ2Uge1xuXHRAaW5jbHVkZSBzcGFuKDEgb2YgNyk7XG5cdC8vdGV4dC1hbGlnbjogbGVmdDtcblx0bWFyZ2luLWxlZnQ6IGd1dHRlcig3KTtcblx0bWFyZ2luLXJpZ2h0OiAwO1xuXHQvLyY6bGFzdC1vZi10eXBlIHtcblx0Ly9cdHRleHQtYWxpZ246IHJpZ2h0O1xuXHQvL31cbn1cblxuI3ByaW1hcnktbWVudSBsaSB7XG5cdEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCgkeGxhcmdlKSB7XG5cdCY6bnRoLWNoaWxkKDEpIHtcblx0XHRwYWRkaW5nLWxlZnQ6IDA7XG5cdH1cblx0JjpudGgtY2hpbGQoMikge1xuXHRcdHBhZGRpbmctbGVmdDogMDtcblx0fVxuXHQmOm50aC1jaGlsZCgzKSB7XG5cdFx0cGFkZGluZy1sZWZ0OiA3JTtcblx0fVxuXHQmOm50aC1jaGlsZCg0KSB7XG5cdFx0cGFkZGluZy1sZWZ0OiA1JTtcblx0fVxuXHQmOm50aC1jaGlsZCg1KSB7XG5cdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdH1cblx0JjpudGgtY2hpbGQoNikge1xuXHRcdHRleHQtYWxpZ246IHJpZ2h0O1xuXHR9XG59XG59XG5cblxuLyogU2hvdy9oaWRlIGV4dHJhIGNvbnRlbnQgKGtvbnRha3QpICovXG5cbiNzaXRlLW5hdmlnYXRpb24gI2tvbnRha3Qge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG4jc2l0ZS1uYXZpZ2F0aW9uLnRvZ2dsZWQgI2tvbnRha3Qge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cblxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblx0SEVBREVSIC0gTGFuZ3VhZ2Ugc3dpdGNoZXJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnF0cmFueHMtbGFuZy1tZW51IHtcblx0QGluY2x1ZGUgc3BhbigxIG9mIDcpO1xuXHRAaW5jbHVkZSBwb3N0KDEgb2YgNyk7XG59XG4ucXRyYW54cy1sYW5nLW1lbnUgLnN1Yi1tZW51IHtcblx0cGFkZGluZzogMHB4O1xuXHRtYXJnaW46IDBweDtcblx0QGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCRsYXJnZSkge1xuXHRkaXNwbGF5OiBpbmxpbmU7XG5cdH1cblx0PiBsaSB7XG5cdFx0JjpudGgtY2hpbGQoMSkge1xuXHRcdGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuXHRcdH1cbn1cbn1cbi5tYWluLW5hdmlnYXRpb24udG9nZ2xlZCAucXRyYW54cy1sYW5nLW1lbnUgLnN1Yi1tZW51IHtcblx0PiBsaSB7XG5cdFx0JjpudGgtY2hpbGQoMSkge1xuXHRcdHBhZGRpbmc6IDBweCAhaW1wb3J0YW50O1xuXHRcdG1hcmdpbjogMHB4ICFpbXBvcnRhbnQ7XG5cdFx0ZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcblx0XHRib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcblx0XHR3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuXHRcdH1cblx0fVxufVxuLnF0cmFueHMtbGFuZy1tZW51LWl0ZW0ge1xuXHR3aWR0aDogYXV0bztcbn1cbi5tYWluLW5hdmlnYXRpb24gLnF0cmFueHMtbGFuZy1tZW51IHtcblx0PiBhIHtcblx0XHQmOm50aC1jaGlsZCgxKSB7XG5cdFx0XHRtYXJnaW4tbGVmdDogM3B4O1xuXHRcdFx0ZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG5cdFx0XHR3aWR0aDogYXV0bztcblx0XHR9XG5cdH1cbn1cbi5tYWluLW5hdmlnYXRpb24udG9nZ2xlZCAucXRyYW54cy1sYW5nLW1lbnUge1xuXHQ+IGEge1xuXHRcdCY6bnRoLWNoaWxkKDEpIHtcblx0XHRcdGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG5cdFx0XHRtYXJnaW46IDBweCAhaW1wb3J0YW50O1xuXHRcdH1cblx0fVxufVxuLnF0cmFueHMtbGFuZy1tZW51W2FyaWEtaGFzcG9wdXA9XCJ0cnVlXCJdIHtcblx0PiBhIHtcblx0Y29sb3I6ICRjb2xvcl9fbGluaztcblx0bWFyZ2luLXJpZ2h0OiA0cHggIWltcG9ydGFudDtcblx0bWFyZ2luLXJpZ2h0OiAwcHggIWltcG9ydGFudDtcblx0bWFyZ2luLWxlZnQ6IDRweCAhaW1wb3J0YW50O1xuXHQmOmFmdGVyIHtcblx0XHRcdGNvbnRlbnQ6XCJcIjtcblx0fVxuXHQmOmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OlwiIC8gXCI7XG5cdFx0XHRjb2xvcjogJGNvbG9yX19saW5rLWhvdmVyO1xuXHR9XG59XG59XG5cblxuLm1haW4tbmF2aWdhdGlvbi50b2dnbGVkIC5xdHJhbnhzLWxhbmctbWVudVthcmlhLWhhc3BvcHVwPVwidHJ1ZVwiXSB7XG5cdD4gYSB7XG5cdG1hcmdpbi1yaWdodDogNHB4ICFpbXBvcnRhbnQ7XG5cdCY6YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6IFwiIC8gXCI7XG5cdFx0Y29sb3I6ICRjb2xvcl9fbGluay1ob3Zlcjtcblx0fVxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogXCJcIjtcblx0fVxufVxufVxuXG4ubWVudS1pdGVtLWhhcy1jaGlsZHJlbiB7XG5cdGNvbG9yOiAkY29sb3JfX2xpbmstaG92ZXIgIWltcG9ydGFudDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cdEZPT1RFUiAtIFNlY29uZGFyeSBtZW51XG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi5tZW51LXdwX2Zvb3Rlcl9tZW51LWNvbnRhaW5lciB7XG5cdC5tZW51LWl0ZW0ge1xuXHRcdEBpbmNsdWRlIHNwYW4oMiBvZiAyIGxhc3QpO1xuXHRcdEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCgkbGFyZ2UpIHtcblx0XHRAaW5jbHVkZSBzcGFuKDEgb2YgNSk7XG5cdFx0QGluY2x1ZGUgcG9zdCgxIG9mIDUpO1xuXHRcdG1hcmdpbi1sZWZ0OiBndXR0ZXIoNSk7XG5cdH1cblx0XHQmOm50aC1jaGlsZCgxKSB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0QGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCRsYXJnZSkge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHR9XG5cdFx0fVxuXHRcdCY6bnRoLWNoaWxkKDIpIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoJGxhcmdlKSB7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHR9XG5cdFx0fVxuXHRcdCY6bnRoLWNoaWxkKDMpIHtcblx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHR9XG5cdH1cbn1cblxuXG5cbi8qIENoYW5nZSBsaW5rIGNvbG9ycyBpbiBoZWFkZXIgYW5kIGZvb3RlciAqL1xuXG5oZWFkZXIgLm1lbnUtd3BfbmF2X21lbnUtY29udGFpbmVyIGEge1xuXHRjb2xvcjogJGNvbG9yX19saW5rLWhvdmVyIDtcblx0d2lkdGg6IDEwMCU7XG5cdGZsb2F0OiBsZWZ0O1xuXHR0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbn1cbmhlYWRlciAubWVudS13cF9uYXZfbWVudS1jb250YWluZXIgYTpob3ZlciB7XG5cdGNvbG9yOiAkY29sb3JfX2xpbmsgO1xufVxuaGVhZGVyIC5tZW51LXdwX25hdl9tZW51LWNvbnRhaW5lciAuY3VycmVudF9wYWdlX2l0ZW0gYSB7XG5cdGNvbG9yOiAkY29sb3JfX2xpbmsgO1xufVxuXG5oZWFkZXIgLmN1cnJlbnQtbWVudS1pdGVtIGEge1xuXHRjb2xvcjogJGNvbG9yX19saW5rICFpbXBvcnRhbnQ7XG59XG5cbmZvb3RlciAubWVudS13cF9mb290ZXJfbWVudS1jb250YWluZXIgYSB7XG5cdGNvbG9yOiAkY29sb3JfX2xpbmstaG92ZXIgO1xufVxuZm9vdGVyIC5tZW51LXdwX2Zvb3Rlcl9tZW51LWNvbnRhaW5lciBhOmhvdmVyIHtcblx0Y29sb3I6ICRjb2xvcl9fbGluayA7XG59XG5mb290ZXIgLm1lbnUtd3BfZm9vdGVyX21lbnUtY29udGFpbmVyIC5jdXJyZW50X3BhZ2VfaXRlbSBhIHtcblx0Y29sb3I6ICRjb2xvcl9fbGluayBcbn1cbmZvb3RlciAuY3VycmVudC1tZW51LWl0ZW0gYSB7XG5cdGNvbG9yOiAkY29sb3JfX2xpbmsgIWltcG9ydGFudDtcbn1cblxuLmlkMjItbWVudSBhIHtcblx0dGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZSAhaW1wb3J0YW50O1xufSIsIi8vIE1hcmdpbiBTeW50YXhcbi8vID09PT09PT09PT09PT1cblxuLy8gUHJlXG4vLyAtLS1cbi8vIEFkZCBzcGFubmluZy1tYXJnaW5zIGJlZm9yZSBhbiBlbGVtZW50LlxuLy8gLSAkc3BhbiAgOiA8c3Bhbj5cbkBtaXhpbiBwcmUoXG4gICRzcGFuXG4pIHtcbiAgJGluc3BlY3Q6ICRzcGFuO1xuICAkc3BhbiAgIDogbWFwLW1lcmdlKChzcHJlYWQ6IHdpZGUpLCBwYXJzZS1zcGFuKCRzcGFuKSk7XG4gICRmbG93ICAgOiBzdXN5LWdldChmbG93LCAkc3Bhbik7XG4gICRzcGxpdCAgOiBpZihzdXN5LWdldChndXR0ZXItcG9zaXRpb24sICRzcGFuKSA9PSBzcGxpdCwgdHJ1ZSwgZmFsc2UpO1xuICAkZ3V0dGVyIDogZ3V0dGVyKCRzcGFuKTtcbiAgJHNwYW4gICA6IHNwYW4oJHNwYW4pO1xuICAkd2lkdGggIDogaWYoJHNwbGl0IGFuZCAkZ3V0dGVyLCAkc3BhbiArICRndXR0ZXIsICRzcGFuKTtcblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3QocHJlLCAkaW5zcGVjdCk7XG4gIEBpbmNsdWRlIG1hcmdpbi1vdXRwdXQoJHdpZHRoLCBudWxsLCAkZmxvdyk7XG59XG5cbi8vIFBvc3Rcbi8vIC0tLS1cbi8vIEFkZCBzcGFubmluZy1tYXJnaW5zIGFmdGVyIGFuIGVsZW1lbnQuXG4vLyAtICRzcGFuICA6IDxzcGFuPlxuQG1peGluIHBvc3QoXG4gICRzcGFuXG4pIHtcbiAgJGluc3BlY3QgIDogJHNwYW47XG4gICRzcGFuICAgICA6IG1hcC1tZXJnZSgoc3ByZWFkOiB3aWRlKSwgcGFyc2Utc3Bhbigkc3BhbikpO1xuICAkZmxvdyAgICAgOiBzdXN5LWdldChmbG93LCAkc3Bhbik7XG4gICRzcGxpdCAgICA6IGlmKHN1c3ktZ2V0KGd1dHRlci1wb3NpdGlvbiwgJHNwYW4pID09IHNwbGl0LCB0cnVlLCBmYWxzZSk7XG4gICR3aWR0aCAgICA6IGlmKCRzcGxpdCwgc3Bhbigkc3BhbikgKyBndXR0ZXIoJHNwYW4pLCBzcGFuKCRzcGFuKSk7XG5cbiAgQGluY2x1ZGUgc3VzeS1pbnNwZWN0KHBvc3QsICRpbnNwZWN0KTtcbiAgQGluY2x1ZGUgbWFyZ2luLW91dHB1dChudWxsLCAkd2lkdGgsICRmbG93KTtcbn1cblxuLy8gUHVzaFxuLy8gLS0tLVxuLy8gU2ltcGxlIHN5bm9ueW1uIGZvciBwcmUuXG4vLyAtICRzcGFuICA6IDxzcGFuPlxuQG1peGluIHB1c2goXG4gICRzcGFuXG4pIHtcbiAgQGluY2x1ZGUgcHJlKCRzcGFuKTtcbn1cblxuLy8gUHVsbFxuLy8gLS0tLVxuLy8gQWRkIG5lZ2F0aXZlIHNwYW5uaW5nLW1hcmdpbnMgYmVmb3JlIGFuIGVsZW1lbnQuXG4vLyAtICRzcGFuICA6IDxzcGFuPlxuQG1peGluIHB1bGwoXG4gICRzcGFuXG4pIHtcbiAgJGluc3BlY3QgIDogJHNwYW47XG4gICRzcGFuICAgICA6IG1hcC1tZXJnZSgoc3ByZWFkOiB3aWRlKSwgcGFyc2Utc3Bhbigkc3BhbikpO1xuICAkZmxvdyAgICAgOiBzdXN5LWdldChmbG93LCAkc3Bhbik7XG4gICRzcGxpdCAgICA6IGlmKHN1c3ktZ2V0KGd1dHRlci1wb3NpdGlvbiwgJHNwYW4pID09IHNwbGl0LCB0cnVlLCBmYWxzZSk7XG4gICR3aWR0aCAgICA6IGlmKCRzcGxpdCwgMCAtIHNwYW4oJHNwYW4pICsgZ3V0dGVyKCRzcGFuKSwgMCAtIHNwYW4oJHNwYW4pKTtcblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3QocHVsbCwgJGluc3BlY3QpO1xuICBAaW5jbHVkZSBtYXJnaW4tb3V0cHV0KCR3aWR0aCwgbnVsbCwgJGZsb3cpO1xufVxuXG4vLyBTcXVpc2hcbi8vIC0tLS0tLVxuLy8gQWRkIHNwYW5uaW5nLW1hcmdpbnMgYmVmb3JlIGFuZCBhZnRlciBhbiBlbGVtZW50LlxuLy8gLSAkcHJlICAgICA6IDxzcGFuPlxuLy8gLSBbJHBvc3RdICA6IDxzcGFuPlxuQG1peGluIHNxdWlzaChcbiAgJHByZSxcbiAgJHBvc3Q6IGZhbHNlXG4pIHtcbiAgJGluc3BlY3QgICAgICA6ICgkcHJlLCAkcG9zdCk7XG4gICRwcmUgICAgICAgICAgOiBtYXAtbWVyZ2UoKHNwcmVhZDogd2lkZSksIHBhcnNlLXNwYW4oJHByZSkpO1xuXG4gIEBpZiAkcG9zdCB7XG4gICAgJHBvc3Q6IG1hcC1tZXJnZSgoc3ByZWFkOiB3aWRlKSwgcGFyc2Utc3BhbigkcG9zdCkpO1xuICB9IEBlbHNlIHtcbiAgICAkc3Bhbjogc3VzeS1nZXQoc3BhbiwgJHByZSk7XG4gICAgQGlmIGxlbmd0aCgkc3BhbikgPiAxIHtcbiAgICAgICRwcmU6IG1hcC1tZXJnZSgkcHJlLCAoc3BhbjogbnRoKCRzcGFuLCAxKSkpO1xuICAgICAgJHBvc3Q6IG1hcC1tZXJnZSgkcHJlLCAoc3BhbjogbnRoKCRzcGFuLCAyKSkpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJHBvc3Q6ICRwcmU7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgc3VzeS1pbnNwZWN0KHNxdWlzaCwgJGluc3BlY3QpO1xuICBAaW5jbHVkZSBwcmUoJHByZSk7XG4gIEBpbmNsdWRlIHBvc3QoJHBvc3QpO1xufVxuIiwiLyoqIGJ4c2xpZGVyIGN1c3RvbWl6YXRpb25cbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuI2J4c2xpZGVyIHt9XG5cbi5ieHNsaWRlciB7fVxuXG4uYnhzbGlkZXItaXRlbSB7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTAxJTtcbn1cbi5ieHNsaWRlci1pdGVtIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmJ4c2xpZGVyLWl0ZW0gaW1nOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmJ4c2xpZGVyLmF1dG8gLmJ4c2xpZGVyLWl0ZW0gaW1nOmhvdmVyIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuLyoqIFNsaWRlciBjb250cm9scyAocHJldiAtIG5leHQpXG4gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiBHZW5lcmFsIGxheW91dCAqL1xuXG4uYngtY29udHJvbHMge1xuICBtYXJnaW4tdG9wOiBndXR0ZXIoOCk7XG59XG4uYngtY29udHJvbHMgc3ZnIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cbi8qLmJ4LXByZXYge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJpbWFnZXMvUGZlaWxfZ3LDvG5faWRfMjJfMi5zdmdcIik7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG59XG4uYngtbmV4dCB7XG5iYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJpbWFnZXMvUGZlaWxfZ3LDvG5faWRfMjJfMi5zdmdcIik7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG59XG4qL1xuXG4vKiBDb250ZXh0IC0gaG9tZS1wYWdlICovXG5cbi8qLnRoaW4geyBcbiAgc3Ryb2tlOiMwMEJENDY7IFxuICBzdHJva2Utd2lkdGg6ODtcbiAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCRtZWRpdW0pIHtcbiAgc3Ryb2tlLXdpZHRoOjQ7XG59XG59Ki9cblxuLmJ4LXByZXYsXG4uYngtbmV4dCxcbi5ieHByZXYsXG4uYnhuZXh0LFxuLmFjY29yZGlvbi1hcnJvdyB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgc3Ryb2tlOiRjb2xvcl9fbGluazsgXG4gIHN0cm9rZS13aWR0aDo4O1xuICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoJG1lZGl1bSkge1xuICBzdHJva2Utd2lkdGg6NDtcbn1cbn1cblxuLmJ4LXByZXYgc3ZnLFxuLmJ4cHJldiBzdmcge1xucGFkZGluZy1sZWZ0OiBndXR0ZXIoMik7XG59XG4uYngtbmV4dCBzdmcsXG4uYnhuZXh0IHN2ZyB7XG5wYWRkaW5nLXJpZ2h0OiBndXR0ZXIoMik7XG59XG5cbi5ob21lIC5ieC1wcmV2IHtcbiAgQGluY2x1ZGUgc3BhbigxIG9mIDUpO1xuICAgIC8qYmFja2dyb3VuZC1zaXplOiAvKjhyZW0gMy41cmVtKi8gLyo5MCUgYXV0bztcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAlIDUwJTtcbiAgICBoZWlnaHQ6IDRyZW07Ki9cbn1cbi5ob21lIC5ieC1uZXh0IHtcbkBpbmNsdWRlIHNwYW4oMSBvZiA1IGxhc3QpO1xuLypiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwJSA1MCU7XG4gICAgYmFja2dyb3VuZC1zaXplOiAvKjhyZW0gMy41cmVtKi8gLyo5MCUgYXV0bztcbiAgaGVpZ2h0OiA0cmVtOyovXG59XG5cblxuLyogQ29udGV4dCAtIGluZGV4LXBhZ2VzICovXG5cbiNhY2NvcmRpb24gLmJ4cHJldiB7XG4gIEBpbmNsdWRlIHNwYW4oMSBvZiA3KTtcbiAgICAvKmJhY2tncm91bmQtcG9zaXRpb246IDAlIDUwJTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IC8qOHJlbSAzLjVyZW0qLyAvKjk0JSBhdXRvO1xuICAgIGhlaWdodDogNHJlbTsqL1xufVxuI2FjY29yZGlvbiAuYnhuZXh0IHtcbkBpbmNsdWRlIHNwYW4oMSBvZiA3IGxhc3QpO1xuLypiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwJSA1MCU7XG4gICAgYmFja2dyb3VuZC1zaXplOiAvKjhyZW0gMy41cmVtKi8gLyo5NCUgYXV0bztcbiAgaGVpZ2h0OiA0cmVtOyovXG59XG5cbi8qIFNsaWRlciAtIGZpeCBoZWlnaHQgKi9cbi5ieHNsaWRlci5tYW51YWwgLmJ4c2xpZGVyLWl0ZW0ge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDEwMSU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBoZWlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjYlO1xufVxuaW1nIHtcbiAgICBtYXgtaGVpZ2h0OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5ieHNsaWRlci5hdXRvIC5ieHNsaWRlci1pdGVtIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGhlaWdodDogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiA1MCU7XG4gICAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCRtZWRpdW0pIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzUlO1xuICB9XG4gIFxufVxuLnR5cGUtbmV3cyAuYXJ0aWNsZS1pbWcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmctYm90dG9tOiAyNyU7IC8qIGhlcmUgdGhlIGRlc2lyZWQgYXNwZWN0IHJhdGlvICovXG59XG4udHlwZS1uZXdzIC5hcnRpY2xlLWltZyBpbWcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgbWFyZ2luOiBhdXRvO1xufVxuXG4uc2luZ2xlLW5ld3MgLmFydGljbGUtaW1nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nLWJvdHRvbTogNjYlOyAvKiBoZXJlIHRoZSBkZXNpcmVkIGFzcGVjdCByYXRpbyAqL1xufVxuXG4uc2luZ2xlLW5ld3MgLmFydGljbGUtaW1nIGltZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBtYXJnaW46IGF1dG87XG59IiwiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vKiogICAgIHJlbGF0ZWQgbGlua3MgICAgICoqXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKiBHZW5lcmFsIHNldHRpbmdzXG5cdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4ucmFuZGJveCB7XG5cdG1hcmdpbi1ib3R0b206IHNwYW4oMik7XG59XG4uc2lkZWJhcl9pbmhhbHQge1xuXHRtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuLnJhbmRib3ggLmxpc3QtaXRlbXMge1xuXHRsaW5lLWhlaWdodDogMS4zO1xufVxuLnJhbmRib3ggLnJlbGF0ZWQtbGlua3MgbGkge1xuXHRtYXJnaW4tYm90dG9tOiAwO1xufVxuLnBvc3QtdHlwZS1hcmNoaXZlIC5yYW5kYm94IC5yZWxhdGVkLWxpbmtzIC5pdGVtIHtcblx0QGluY2x1ZGUgc3BhbihmdWxsKTtcbn1cblxuLnJlbGF0ZWQtbGlua3Mge1xuXHRjbGVhcjogYm90aDtcbn1cblxuLmxpc3QtaXRlbXMge1xuXHRAaW5jbHVkZSBzcGFuKGZ1bGwpO1xufVxuXG4vKiogQ29udGV4dDogYXNpZGVcblx0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKi5hc2lkZSAubGlzdC1pdGVtcyB7XG5cdG1hcmdpbi10b3A6IDFyZW07XG59Ki9cblxuLyoqIExheW91dDogNyBjb2xzIC0gUG9zdCB0eXBlIGFyY2hpdmUgdGVtcGxhdGVcblx0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKi5wYWdlLWJpbGR1bmdzYW5nZWJvdGUgLnJlbGF0ZWQtbGlua3MsKi9cbi5wYWdlLWJpbGR1bmdzYW5nZWJvdGUgLnJlbGF0ZWQtbGlua3MsXG4ucGFnZS1pZDIyIC5yZWxhdGVkLWxpbmtzLFxuLnBhZ2UtY29ob3VzaW5nIC5yZWxhdGVkLWxpbmtzLFxuLnBvc3QtdHlwZS1hcmNoaXZlIC5yZWxhdGVkLWxpbmtzIHtcblx0Lml0ZW0ge1xuXHRcdEBpbmNsdWRlIHNwYW4oMiBvZiAxMSk7XG5cdFx0QGluY2x1ZGUgcG9zdCgxIG9mIDExKTtcblx0XHRtYXJnaW4tbGVmdDogZ3V0dGVyKDExKTtcblx0XG5cdFx0JjpudGgtY2hpbGQoNG4rMSkge1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0fVxuXHRcblx0XHQmOm50aC1jaGlsZCg0bis0KSB7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0fVxuXHRcdEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCgkbGFyZ2UpIHtcblx0XHRAaW5jbHVkZSBzcGFuKDEgb2YgNyk7XG5cdFx0QGluY2x1ZGUgcG9zdCgxIG9mIDcpO1xuXHRcdG1hcmdpbi1sZWZ0OiBndXR0ZXIoNyk7XG5cdFxuXHRcdCY6bnRoLWNoaWxkKDRuKzEpIHtcblx0XHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHRcdH1cblx0XHQmOm50aC1jaGlsZCg0bisyKSB7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAxLjIlO1xuXHRcdFx0fVxuXHRcdCY6bnRoLWNoaWxkKDRuKzMpIHtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDEuOCU7XG5cdFx0XHR9XG5cdFx0JjpudGgtY2hpbGQoNG4rNCkge1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDEuOCU7XG5cdFx0fVxuXHR9XG59XG59XG5cblxuXG4vKiogTGF5b3V0OiA1IGNvbHMgXG5cdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4ucGFzdC1wcm9qZWN0cyAucmVsYXRlZC1saW5rcyxcbi5zbWFsbC1vZmZlciAucmVsYXRlZC1saW5rcyxcbi5zbWFsbC10aGVtZSAucmVsYXRlZC1saW5rcyxcbi5wYWdlLWJpbGR1bmdzYW5nZWJvdGUgLnB1Ymxpa2F0aW9uZW4gLnJlbGF0ZWQtbGlua3MsXG4uYXJ0aWtlbCAucmVsYXRlZC1saW5rcy8qLFxuLnNpbmdsZS1uZXdzIC5yZWxhdGVkLWxpbmtzKi8ge1xuXHQuaXRlbSB7XG5cdFx0QGluY2x1ZGUgc3BhbigzIG9mIDExKTtcblx0XHRAaW5jbHVkZSBwb3N0KDEgb2YgMTEpO1xuXHRcdG1hcmdpbi1sZWZ0OiBndXR0ZXIoMTEpO1xuXHRcblx0XHQmOm50aC1jaGlsZCgzbisxKSB7XG5cdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHR9XG5cdFxuXHRcdCY6bnRoLWNoaWxkKDNuKzMpIHtcblx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHR9XG5cdFx0QGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCRsYXJnZSkge1xuXHRcdEBpbmNsdWRlIHNwYW4oMSBvZiA1KTtcblx0XHRAaW5jbHVkZSBwb3N0KDEgb2YgNSk7XG5cdFx0bWFyZ2luLWxlZnQ6IGd1dHRlcig1KTtcblx0XG5cdFx0JjpudGgtY2hpbGQoM24rMSkge1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0XHQgICAgLyp3aWR0aDogMTclOyovXG4gICAgbWFyZ2luLXJpZ2h0OiAyMSU7XG5cdFx0fVxuXHRcdCY6bnRoLWNoaWxkKDNuKzIpIHtcblx0XHRcdG1hcmdpbi1sZWZ0OiAyLjQ1JTtcblxuXHRcdH1cblx0XG5cdFx0JjpudGgtY2hpbGQoM24rMykge1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDIuNSU7XG5cdFx0fVxuXHR9XG5cdH1cbn1cbi8qLnBhc3QtcHJvamVjdHMgLmxlZnQtY29sdW1uIC5yZWxhdGVkLWxpbmtzIHtcblx0JjpudGgtY2hpbGQoM24rMSkge1xuXHRcdHdpZHRoOiAxNyU7XG5cdH1cbn0qL1xuLnBhc3QtcHJvamVjdHMgLmxlZnQtY29sdW1uIC5yZWxhdGVkLWxpbmtzLFxuLyoucGFnZS1iaWxkdW5nc2FuZ2Vib3RlIC5wdWJsaWthdGlvbmVuIC5sZWZ0LWNvbHVtbiAucmVsYXRlZC1saW5rcywqL1xuLnBvc3QtdHlwZS1hcmNoaXZlLWJpbGR1bmdzYW5nZWJvdGUgLmFydGlrZWwgLmxlZnQtY29sdW1uIC5yZWxhdGVkLWxpbmtzLFxuLnNtYWxsLW9mZmVyIC5sZWZ0LWNvbHVtbiAucmVsYXRlZC1saW5rcyxcbi5zbWFsbC10aGVtZSAubGVmdC1jb2x1bW4gLnJlbGF0ZWQtbGlua3Mge1xuXHQuaXRlbSB7XG5cdFx0QGluY2x1ZGUgc3BhbigxIG9mIDUpO1xuXHRcdEBpbmNsdWRlIHBvc3QoMSBvZiA1KTtcblx0XHQmOm50aC1jaGlsZCgzbisyKSB7XG5cdFx0XHRtYXJnaW4tbGVmdDogZ3V0dGVyKDUpO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiBzcGFuKDIuNSk7XG5cdFx0fVxuXHRcdCY6bnRoLWNoaWxkKDNuKzMpIHtcblx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHRcdG1hcmdpbi1sZWZ0OiBndXR0ZXIoNSk7XG5cdFx0XHRcblx0XHR9XG5cdCY6bnRoLWNoaWxkKDNuKzEpIHtcblx0XHRAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoJGxhcmdlKSB7XG5tYXJnaW4tcmlnaHQ6IDIwLjYlO1xud2lkdGg6IDE3LjMlO1xufVxuXHR9XG59XG59XG4ucGFzdC1wcm9qZWN0cyAucmlnaHQtY29sdW1uIC5yZWxhdGVkLWxpbmtzLFxuLyoucGFnZS1iaWxkdW5nc2FuZ2Vib3RlIC5wdWJsaWthdGlvbmVuIC5yaWdodC1jb2x1bW4gLnJlbGF0ZWQtbGlua3MsKi9cbi5wb3N0LXR5cGUtYXJjaGl2ZS1iaWxkdW5nc2FuZ2Vib3RlIC5hcnRpa2VsIC5yaWdodC1jb2x1bW4gLnJlbGF0ZWQtbGlua3MsXG4uc21hbGwtb2ZmZXIgLnJpZ2h0LWNvbHVtbiAucmVsYXRlZC1saW5rcyxcbi5zbWFsbC10aGVtZSAucmlnaHQtY29sdW1uIC5yZWxhdGVkLWxpbmtzIHtcblx0Lml0ZW0ge1xuXHQmOm50aC1jaGlsZCgzbiszKSB7XG5cdFx0QGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCRsYXJnZSkge1xud2lkdGg6IDE3JTtcbn1cblx0fVxufVxufVxuXG5cbi5ob21lIC5yZWxhdGVkLWxpbmtzIHtcblx0Lml0ZW0ge1xuXHRcdEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCgkc21hbGxwYWlyKSB7XG5cdFx0JjpudGgtY2hpbGQoMm4rMSkge1xuXHRcdFx0QGluY2x1ZGUgc3Bhbig1IG9mIDExKTtcblx0XHR9XG5cdFxuXHRcdCY6bnRoLWNoaWxkKDJuKzIpIHtcblx0XHRcdEBpbmNsdWRlIHNwYW4oNSBvZiAxMSBsYXN0KTtcblx0XHR9XG5cdH1cblx0XHRAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoJHBldGl0cGFpcikge1xuXHRcdEBpbmNsdWRlIHNwYW4oMyBvZiAxMSk7XG5cdFx0QGluY2x1ZGUgcG9zdCgxIG9mIDExKTtcblx0XHRtYXJnaW4tbGVmdDogZ3V0dGVyKDExKTtcblx0XG5cdFx0JjpudGgtY2hpbGQoM24rMSkge1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0fVxuXHRcblx0XHQmOm50aC1jaGlsZCgzbiszKSB7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0fVxuXHR9XG5cdFx0QGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCRwYWlyKSB7XG5cdFx0XHQmOm50aC1jaGlsZCgybisxKSB7XG5cdFx0XHR3aWR0aDogMzglO1xuXHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHR9XG5cdFxuXHRcdCY6bnRoLWNoaWxkKDJuKzIpIHtcblx0XHRcdHdpZHRoOiAzOSU7XG5cdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0fVxuXHRcdH1cblx0XHRAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoJGxhcmdlKSB7XG5cdFx0QGluY2x1ZGUgc3BhbigxIG9mIDUpO1xuXHRcdEBpbmNsdWRlIHBvc3QoMSBvZiA1KTtcblx0XHRtYXJnaW4tbGVmdDogZ3V0dGVyKDUpO1xuXHRcblx0XHQmOm50aC1jaGlsZCgzbisxKSB7XG5cdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHRcdCAgICAvKndpZHRoOiAxNyU7Ki9cbiAgICAvKm1hcmdpbi1yaWdodDogMjElOyovXG5cdFx0fVxuXHRcdCY6bnRoLWNoaWxkKDNuKzIpIHtcblx0XHRcdC8qbWFyZ2luLWxlZnQ6IDIuNCU7Ki9cblx0XHR9XG5cdFxuXHRcdCY6bnRoLWNoaWxkKDNuKzMpIHtcblx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHRcdC8qbWFyZ2luLWxlZnQ6IDIuNSU7Ki9cblx0XHR9XG5cdH1cblx0fVxufVxuXG5cbi8qKiBMYXlvdXQ6IDMgY29scyBcblx0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qLnZvcnN0YW5kbWl0Z2xpZWRlciAucmVsYXRlZC1saW5rcywqL1xuI2RhdGVzIC5yZWxhdGVkLWxpbmtzLFxuI25ld3MgLnJlbGF0ZWQtbGlua3Mge1xuXHQuaXRlbSB7XG5cdFx0QGluY2x1ZGUgc3BhbigxIG9mIDMpO1xuXHRcdEBpbmNsdWRlIHBvc3QoMSBvZiAzKTtcblx0XHRtYXJnaW4tbGVmdDogZ3V0dGVyKDMpO1xuXHRcblx0XHQmOm50aC1jaGlsZCgybisxKSB7XG5cdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHR9XG5cdFxuXHRcdCY6bnRoLWNoaWxkKDJuKzIpIHtcblx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHR9XG5cdH1cbn1cbi52b3JzdGFuZG1pdGdsaWVkZXIgLnJlbGF0ZWQtbGlua3MgaDMge1xuXHRtYXJnaW4tYm90dG9tOiAwO1xufVxuLnZvcnN0YW5kbWl0Z2xpZWRlciAucmVsYXRlZC1saW5rcyAubGlzdC1pdGVtcyB7XG5cdGxpbmUtaGVpZ2h0OiAxLjM7XG59XG4udm9yc3RhbmRtaXRnbGllZGVyIC5yZWxhdGVkLWxpbmtzIC5pdGVtIHtcblx0bWFyZ2luLWJvdHRvbTogMDtcbn1cbi52b3JzdGFuZG1pdGdsaWVkZXIgLnJlbGF0ZWQtbGlua3Mge1xuXHRoMyB7XG5cdFx0bWFyZ2luLXRvcDogMXJlbTtcblx0XHR9XG5cdH1cbi52b3JzdGFuZG1pdGdsaWVkZXIgLnZvcnN0ZWxsdW5nIHtcblx0bWFyZ2luLWJvdHRvbTogMDtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLyoqICAgICByZWxhdGVkIGNvbnRlbnQgICAgICoqXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qKiBMYXlvdXQ6IDExIGNvbHMgXG5cdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4ucmVsYXRlZC1jb250ZW50IHtcblx0ZGlzcGxheTogbm9uZTtcblx0QGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCRtZWRpdW0pIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0Lml0ZW0ge1xuXHRcdEBpbmNsdWRlIHNwYW4oMiBvZiAxMSk7XG5cdFx0QGluY2x1ZGUgcG9zdCgxIG9mIDExKTtcblx0XHRtYXJnaW4tbGVmdDogZ3V0dGVyKDExKTtcblx0XG5cdFx0JjpudGgtY2hpbGQoNG4rMSkge1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0XHR3aWR0aDogMTclO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiA5LjMlO1xuXHRcdH1cblx0XHQmOm50aC1jaGlsZCg0bisyKSB7XG5cdFx0XHR3aWR0aDogMTcuNCU7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDkuNCU7XG5cdFx0fVxuXHRcdCY6bnRoLWNoaWxkKDRuKzMpIHtcblx0XHRcdHdpZHRoOiAxNy41NSU7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDkuMyU7XG5cdFx0fVxuXHRcdCY6bnRoLWNoaWxkKDRuKzQpIHtcblx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHRcdHdpZHRoOiAxNyU7XG5cdFx0XHRtYXJnaW4tbGVmdDogMSU7XG5cdFx0fVxuXHR9XG59XG59XG5cbi5wYWdlLWFyY2hpdmUgLm5ld3MgLnJlbGF0ZWQtY29udGVudCB7XG5cdG1hcmdpbi10b3A6IGd1dHRlcig0KTtcblx0Lml0ZW0ge1xuXHRcdEBpbmNsdWRlIHNwYW4oMiBvZiA0KTtcblx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHRtaW4taGVpZ2h0OiAzLjVyZW07XG5cdFx0JjpudGgtY2hpbGQoMm4rMikge1xuXHRcdFx0bWFyZ2luLXJpZ2h0OjA7XG5cdFx0fVxuXHR9XG59XG4ucGFnZS1hcmNoaXZlIC5uZXdzIC5yZWxhdGVkLWxpbmtzIHtcblx0Lml0ZW0ge1xuXHRcdEBpbmNsdWRlIHNwYW4oMiBvZiA0KTtcblx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHQmOm50aC1jaGlsZCgybisyKSB7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6MDtcblx0XHR9XG5cdH1cbn1cbiNuZXdzIC5yZWxhdGVkLWNvbnRlbnQge1xuXHRtYXJnaW4tdG9wOiBndXR0ZXIoMyk7XG5cdC5pdGVtIHtcblx0XHRcblx0XHRtaW4taGVpZ2h0OiAzLjVyZW07XG5cdFx0bWFyZ2luLWxlZnQ6IGd1dHRlcigzKTtcblxuXHRcblx0XHQmOm50aC1jaGlsZCgybisxKSB7XG5cdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHRcdG1hcmdpbi1yaWdodDogZ3V0dGVyKDYpO1xuXHRcdFx0d2lkdGg6IDM5JTtcblx0XHRcdGZsb2F0OiBsZWZ0O1xuXG5cdFx0fVxuXHRcblx0XHQmOm50aC1jaGlsZCgybisyKSB7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHRcdHdpZHRoOiAzOCU7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHR9XG5cdH1cbn1cblxuLnBhc3QtcHJvamVjdHMgLmxlZnQtY29sdW1uIC5yZWxhdGVkLWNvbnRlbnQsXG4uc21hbGwtdGhlbWUgLmxlZnQtY29sdW1uIC5yZWxhdGVkLWNvbnRlbnQsXG4uYXJ0aWtlbCAubGVmdC1jb2x1bW4gLnJlbGF0ZWQtY29udGVudCxcbi5wb3N0LXR5cGUtYXJjaGl2ZS1iaWxkdW5nc2FuZ2Vib3RlIC5wdWJsaWthdGlvbmVuIC5sZWZ0LWNvbHVtbiAucmVsYXRlZC1saW5rcyxcbi5wdWJsaWthdGlvbmVuIC5sZWZ0LWNvbHVtbiAucmVsYXRlZC1jb250ZW50IFxue1xuXHQuaXRlbSB7XG5cdFx0QGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCRtZWRpdW0pIHtcblx0XHRcdFxuXHRcdFxuXHRcblx0XHQmOm50aC1jaGlsZCgybisxKSB7XG5cdFx0XHR3aWR0aDogMzglO1xuXHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHR9XG5cdFxuXHRcdCY6bnRoLWNoaWxkKDJuKzIpIHtcblx0XHRcdHdpZHRoOiAzOSU7XG5cdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0fVxuXHR9XG59XG59XG5cbi5wYXN0LXByb2plY3RzIC5yaWdodC1jb2x1bW4gLnJlbGF0ZWQtY29udGVudCxcbi5zbWFsbC10aGVtZSAucmlnaHQtY29sdW1uIC5yZWxhdGVkLWNvbnRlbnQsXG4uYXJ0aWtlbCAucmlnaHQtY29sdW1uIC5yZWxhdGVkLWNvbnRlbnQsIC8qKioqKioqKioqKi9cbi5wb3N0LXR5cGUtYXJjaGl2ZS1iaWxkdW5nc2FuZ2Vib3RlIC5wdWJsaWthdGlvbmVuIC5yaWdodC1jb2x1bW4gLnJlbGF0ZWQtbGlua3MsXG4ucHVibGlrYXRpb25lbiAucmlnaHQtY29sdW1uIC5yZWxhdGVkLWNvbnRlbnQge1xuXHQuaXRlbSB7XG5cdFxuXHRcdC8qJjpudGgtY2hpbGQoMm4rMSkge1xuXHRcdFx0QGluY2x1ZGUgc3Bhbig1IG9mIDExKTtcblx0XHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHRcdFx0XG5cdFx0fVxuXHRcblx0XHQmOm50aC1jaGlsZCgybisyKSB7XG5cdFx0XHR3aWR0aDogMzglO1xuXHRcdFx0ZmxvYXQ6IHJpZ2h0O1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdH0qL1xuXHRcdEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCgkbWVkaXVtKSB7XG5cdFx0XG5cdFxuXHRcdCY6bnRoLWNoaWxkKDJuKzEpIHtcblx0XHRcdHdpZHRoOiAzOSU7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdH1cblx0XG5cdFx0JjpudGgtY2hpbGQoMm4rMikge1xuXHRcdFx0d2lkdGg6IDM4JTtcblx0XHRcdGZsb2F0OiByaWdodDtcblx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHR9XG5cdH1cbn1cbn1cbi5zaWRlYmFyIHtcblx0ZGlzcGxheTogbm9uZTtcblx0LypAaW5jbHVkZSBicmVha3BvaW50KDg1NnB4KSovIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCgkbGFyZ2UpIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxufVxuXG4ucHVibGlrYXRpb25lbiAucmVsYXRlZC1jb250ZW50LFxuLnNtYWxsLXRoZW1lIC5yZWxhdGVkLWNvbnRlbnQge1xuXHRsaS5pdGVtIHtcblx0XHRtYXJnaW4tYm90dG9tOiBzcGFuKDAuMjUpO1xuXHR9XG59XG5cbi5yZWxhdGVkLWNvbnRlbnQgaDMuc2VjdGlvbi10aXRsZSB7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9fYmFja2dyb3VuZC1ib2R5O1xuXHRtYXJnaW4tbGVmdDogLTAuNTUlO1xufVxuXG5cbi5yZWxhdGVkLWNvbnRlbnQgLmxpc3Quc2VjdGlvbi10aXRsZTpiZWZvcmUsXG4ucmVsYXRlZC1saW5rcyAubGlzdC5zZWN0aW9uLXRpdGxlOmJlZm9yZSB7XG4gICAgY29udGVudDogXCIrIFwiO1xufVxuLnJlbGF0ZWQtY29udGVudCAuc3ViLWl0ZW06YmVmb3JlLFxuLnJlbGF0ZWQtbGlua3MgLml0ZW06YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIj4gXCI7XG4gICAgY29sb3I6ICRjb2xvcl9fbGluayA7XG59XG4ucmVsYXRlZC1jb250ZW50IC5zdWItaXRlbTpob3ZlcjpiZWZvcmUsXG4ucmVsYXRlZC1saW5rcyAuaXRlbTpob3ZlcjpiZWZvcmUge1xuICAgIGNvbG9yOiAkY29sb3JfX2xpbmstaG92ZXI7XG59XG5cbi5yZWxhdGVkLWxpbmtzIC5pdGVtLmJhY2s6YmVmb3JlLFxuLnJlbGF0ZWQtbGlua3MgLnRlbS5iYWNrOmhvdmVyOmJlZm9yZSB7XG5cdGNvbnRlbnQ6IG5vbmU7XG59XG5cbi5zaW5nbGUtbmV3cyAucmVsYXRlZC1saW5rcyxcbi5zaW5nbGUtbmV3cyAucmVsYXRlZC1jb250ZW50IHtcblx0bWFyZ2luLXRvcDogZ3V0dGVyKDUpO1xufVxuXG4uc2luZ2xlLW5ld3MgLnJlbGF0ZWQtY29udGVudCB7XG5cdC5pdGVtIHtcblx0XHRtaW4taGVpZ2h0OiAzLjVyZW07XG5cdFx0QGluY2x1ZGUgc3BhbigzIG9mIDExKTtcblx0XHRAaW5jbHVkZSBwb3N0KDEgb2YgMTEpO1xuXHRcdG1hcmdpbi1sZWZ0OiBndXR0ZXIoMTEpO1xuXHRcblx0XHQmOm50aC1jaGlsZCgybisxKSB7XG5cdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHR9XG5cdFxuXHRcdCY6bnRoLWNoaWxkKDJuKzIpIHtcblx0XHRcdC8qbWFyZ2luLWxlZnQ6IDA7Ki9cblx0XHR9XG5cdFx0QGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCRsYXJnZSkge1xuXHRcdFxuXHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHRcdEBpbmNsdWRlIHNwYW4oMiBvZiA1KTtcblx0XHQmOm50aC1jaGlsZCgybisxKSB7XG5cdFx0XHRcblx0XHR9XG5cdFx0JjpudGgtY2hpbGQoMm4rMikge1xuXHRcdFx0QGluY2x1ZGUgcG9zdCgxIG9mIDUpO1xuXHRcdFx0XG5cdFx0fVxuXHR9XG59XG59XG5cbi5zaW5nbGUtbmV3cyAucmVsYXRlZC1saW5rcyB7XG5cdC5pdGVtIHtcblx0XHRtaW4taGVpZ2h0OiAzLjVyZW07XG5cdFx0QGluY2x1ZGUgc3BhbigzIG9mIDExKTtcblx0XHRAaW5jbHVkZSBwb3N0KDEgb2YgMTEpO1xuXHRcdG1hcmdpbi1sZWZ0OiBndXR0ZXIoMTEpO1xuXHRcblx0XHQmOm50aC1jaGlsZCgybisxKSB7XG5cdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHR9XG5cdFxuXHRcdCY6bnRoLWNoaWxkKDJuKzIpIHtcblx0XHRcdC8qbWFyZ2luLWxlZnQ6IDA7Ki9cblx0XHR9XG5cdFx0QGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCRsYXJnZSkge1xuXHRcdFxuXHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHRcdEBpbmNsdWRlIHNwYW4oMiBvZiA1KTtcblx0XHQmOm50aC1jaGlsZCgybisxKSB7XG5cdFx0XHRcblx0XHR9XG5cdFx0JjpudGgtY2hpbGQoMm4rMikge1xuXHRcdFx0QGluY2x1ZGUgcG9zdCgxIG9mIDUpO1xuXHRcdFx0XG5cdFx0fVxuXHR9XG59XG59IiwiLyoqIExheW91dDogNyBjb2xzIC0gUG9zdCB0eXBlIGFyY2hpdmUgdGVtcGxhdGVcclxuXHQtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi5wb3N0LXR5cGUtYXJjaGl2ZS1wcm9qZWt0ZSAucm93LnBhcnRuZXJzIC5jb250ZW50IHtcclxuXHQuaXRlbSB7XHJcblx0XHRAaW5jbHVkZSBzcGFuKDEgb2YgMTEpO1xyXG5cdFx0QGluY2x1ZGUgcG9zdCgxIG9mIDExKTtcclxuXHRcdG1hcmdpbi1sZWZ0OiBndXR0ZXIoMTEpO1xyXG5cdFx0aGVpZ2h0OiAxMHJlbTtcclxuXHJcblx0XHQmOm50aC1jaGlsZCg2bisxKSB7XHJcblx0XHRcdG1hcmdpbi1sZWZ0OiAwO1xyXG5cdFx0XHR3aWR0aDogNy44JTtcclxuXHRcdH1cclxuXHRcdCY6bnRoLWNoaWxkKDZuKzIpIHtcclxuXHRcdFx0d2lkdGg6IDguMiU7XHJcblx0XHRcdG1hcmdpbi1yaWdodDogOS40JTtcclxuXHRcdH1cclxuXHRcdCY6bnRoLWNoaWxkKDZuKzMpIHtcclxuXHRcdFx0bWFyZ2luLXJpZ2h0OiA5LjQlO1xyXG5cdFx0fVxyXG5cdFx0JjpudGgtY2hpbGQoNm4rNCkge1xyXG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDkuNCU7XHJcblx0XHR9XHJcblx0XHRcdFx0JjpudGgtY2hpbGQoNm4rNSkge1xyXG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDkuMyU7XHJcblx0XHR9XHJcblx0XHQmOm50aC1jaGlsZCg2bis2KSB7XHJcblx0XHRcdG1hcmdpbi1yaWdodDogMDtcclxuXHRcdFx0d2lkdGg6IDcuNyVcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi8qKiBMYXlvdXQ6IDUgY29sc1xyXG5cdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLmhvbWUgI3BhcnRuZXIge1xyXG5cdC5pdGVtIHtcclxuXHRcdEBpbmNsdWRlIHNwYW4oMSBvZiA1KTtcclxuXHRcdEBpbmNsdWRlIHBvc3QoMSBvZiA1KTtcclxuXHRcdG1hcmdpbi1sZWZ0OiBndXR0ZXIoNSk7XHJcblx0XHJcblx0XHQmOm50aC1jaGlsZCgzbisxKSB7XHJcblx0XHRcdG1hcmdpbi1sZWZ0OiAwO1xyXG5cdFx0fVxyXG5cdFxyXG5cdFx0JjpudGgtY2hpbGQoM24rMykge1xyXG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbi5wYXN0LXByb2plY3RzIC5wYXJ0bmVyLFxyXG4ucHVibGlrYXRpb25lbiAucGFydG5lciB7XHJcblx0Lml0ZW0ge1xyXG5cdFx0QGluY2x1ZGUgc3BhbigxIG9mIDUpO1xyXG5cdFx0bWFyZ2luLWxlZnQ6IGd1dHRlcig1KTtcclxuXHRcdG1hcmdpbi1yaWdodDogMDtcclxuXHRcclxuXHRcdCY6bnRoLWNoaWxkKDVuKzEpIHtcclxuXHRcdFx0bWFyZ2luLWxlZnQ6IDA7XHJcblx0XHRcdHdpZHRoOiAxOC40JTtcclxuXHRcdH1cclxuXHRcdCY6bnRoLWNoaWxkKDVuKzIpIHtcclxuXHJcblx0fVxyXG5cdFx0JjpudGgtY2hpbGQoNW4rMykge1xyXG5tYXJnaW4tbGVmdDogMi41JTtcclxuXHR9XHJcblx0XHQmOm50aC1jaGlsZCg1bis0KSB7XHJcbm1hcmdpbi1sZWZ0OiAyLjUlO1xyXG5cdH1cclxufVxyXG59XHJcbi5wYXN0LXByb2plY3RzIC5sZWZ0LWNvbHVtbiAucGFydG5lcixcclxuLnB1Ymxpa2F0aW9uZW4gLmxlZnQtY29sdW1uIC5wYXJ0bmVyIHtcclxuXHQuaXRlbSB7IFxyXG5cdFx0JjpudGgtY2hpbGQoNW4rMSkge1xyXG5cdFx0XHR3aWR0aDogMTcuMyU7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4uaG9tZSAjcGFydG5lcixcclxuLnBhZ2UtYXJjaGl2ZSAucGFydG5lci1jYXQge1xyXG5cdFx0Lml0ZW0ge1xyXG5cdFx0aGVpZ2h0OiAxNXZoO1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogZ3V0dGVyKDUpO1xyXG5cdFx0fVxyXG5cdFx0aW1nIHtcclxuXHRcdCAgICBtYXgtaGVpZ2h0OiAxMDAlO1xyXG5cdFx0ICAgIG1heC13aWR0aDogMTAwJTtcclxuXHRcdCAgICB3aWR0aDowO1xyXG5cdFx0ICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XHJcblx0XHR9XHJcbn1cclxuLnBhZ2UtYXJjaGl2ZSAucGFydG5lci1jYXQgdWwubGlzdC1pdGVtcyB7XHJcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdH1cclxuXHJcbmltZyB7XHJcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4ucG9zdC10eXBlLWFyY2hpdmUtcHJvamVrdGUgI3BhcnRuZXIgLml0ZW0ge1xyXG5cdFx0aGVpZ2h0OiBzcGFuKDEpO1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogZ3V0dGVyKDcpO1xyXG59XHJcblxyXG4vKiogTGF5b3V0OiAzIGNvbHMgLSBQb3N0IHR5cGUgYXJjaGl2ZSB0ZW1wbGF0ZVxyXG5cdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLnBhZ2UtYXJjaGl2ZSAucGFydG5lci1jYXQge1xyXG5cdC5pdGVtIHtcclxuXHRcdEBpbmNsdWRlIHNwYW4oMSBvZiAzKTtcclxuXHRcdEBpbmNsdWRlIHBvc3QoMSBvZiAzKTtcclxuXHRcdG1hcmdpbi1sZWZ0OiBndXR0ZXIoMyk7XHJcblx0XHJcblx0XHQmOm50aC1jaGlsZCgybisxKSB7XHJcblx0XHRcdG1hcmdpbi1sZWZ0OiAwO1xyXG5cdFx0fVxyXG5cdFxyXG5cdFx0JjpudGgtY2hpbGQoMm4rMikge1xyXG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4vKiBHcmF5c2NhbGUgcGFydG5lcnMgbG9nbyAqL1xyXG5pbWcubG9nb3tcclxuXHQtd2Via2l0LWZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xyXG5cdGZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xyXG5cdGZpbHRlcjogZ3JheTtcclxuXHRmaWx0ZXI6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgdmVyc2lvbj0nMS4xJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGhlaWdodD0nMCc+PGZpbHRlciBpZD0nZ3JleXNjYWxlJz48ZmVDb2xvck1hdHJpeCB0eXBlPSdtYXRyaXgnIHZhbHVlcz0nMC4zMzMzIDAuMzMzMyAwLjMzMzMgMCAwIDAuMzMzMyAwLjMzMzMgMC4zMzMzIDAgMCAwLjMzMzMgMC4zMzMzIDAuMzMzMyAwIDAgMCAwIDAgMSAwJyAvPjwvZmlsdGVyPjwvc3ZnPiNncmV5c2NhbGVcIik7XHJcbn1cclxuaW1nLmxvZ286aG92ZXIge1xyXG5cdC13ZWJraXQtZmlsdGVyOiBncmF5c2NhbGUoMCUpO1xyXG5cdGZpbHRlcjogZ3JheXNjYWxlKDAlKTtcclxuXHRmaWx0ZXI6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgdmVyc2lvbj0nMS4xJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGhlaWdodD0nMCc+PGZpbHRlciBpZD0nZ3JleXNjYWxlJz48ZmVDb2xvck1hdHJpeCB0eXBlPSdtYXRyaXgnIHZhbHVlcz0nMSAwIDAgMCAwLCAwIDEgMCAwIDAsIDAgMCAxIDAgMCwgMCAwIDAgMSAwJy8+PC9maWx0ZXI+PC9zdmc+I2dyZXlzY2FsZVwiKTtcclxufSIsIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuLyogTkVXUyBtb2R1bGUgKGhpZ2hsaWdodHMsIGRhdGVzLCBuZXdzKSAqL1xyXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcblxyXG4vKiBHZW5lcmFsIGxheW91dCAqL1xyXG5cclxuI25ld3MgaW1nIHtcclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuXHJcbi8qIENvbnRleHQgLSBORVdTIE9uIGhvbWUtcGFnZSAqL1xyXG5cclxuI2hpZ2hsaWdodHMsXHJcbiNuZXdzLFxyXG4jZGF0ZXMge1xyXG5cdGNvbG9yOiAkY29sb3JfX3RleHQtbWFpbjtcclxuXHQ+IGFydGljbGUge1xyXG5cdFx0PiBkaXYge1xyXG5cdFx0Ly8gZnJvbnQtcGFnZSAtIGxlZnQgY29sdW1uXHJcblx0XHQmOm50aC1jaGlsZCgxbikge1xyXG5cdFx0XHRAaW5jbHVkZSBzcGFuKDMgb2YgNSk7XHJcblx0XHRcdFxyXG5cdFx0fVxyXG5cclxuXHRcdC8vIGZyb250LXBhZ2UgLSByaWdodCBjb2x1bW5cclxuXHRcdCY6bnRoLWNoaWxkKDJuKSB7XHJcblx0XHRcdEBpbmNsdWRlIHNwYW4oMiBvZiA1IGxhc3QpO1xyXG5cdFx0fVxyXG5cdH1cclxuXHR9XHJcbn1cclxuXHJcbi5tZWhyLWxpbmsge1xyXG5cdGZvbnQtZmFtaWx5OiAkZm9udF9fYXNpZGU7XHJcblx0QGluY2x1ZGUgZm9udC1zaXplKDAuNzUpO1xyXG5cdGxpbmUtaGVpZ2h0OiAkZm9udF9fbGluZS1oZWlnaHQtYXNpZGU7XHJcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxufVxyXG5cclxuLmhvbWUgLmVudHJ5LWRhdGUge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi8qIENvbnRleHQgLSBPbiBzaW5nbGUgcGFnZSB0ZW1wbGF0ZSAqL1xyXG5cclxuLnNpbmdsZS1uZXdzLXRpdGxlIHtcclxuXHRtYXJnaW4tdG9wOiAwO1xyXG5cdD4gc3BhbiB7XHJcblx0XHQmOm50aC1jaGlsZCgxKSB7XHJcblx0XHRcdFx0Y29sb3I6ICRjb2xvcl9fbGluaztcclxuXHRcdFx0XHR9XHJcblx0XHQmOm50aC1jaGlsZCgyKSB7XHJcblx0XHRcdFx0Y29sb3I6ICRjb2xvcl9fbGluaztcclxuXHRcdFx0XHR9XHJcblx0fVxyXG59XHJcbi5zaW5nbGUtbmV3cy10aXRsZSAubmV3cy50aXRsZTpmaXJzdC1sZXR0ZXJ7XHJcblx0dGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemUgIWltcG9ydGFudDtcclxufSIsImh0bWwge1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRvdmVyZmxvdy14OiBoaWRkZW47XG5cdG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4qLFxuKjpiZWZvcmUsXG4qOmFmdGVyIHsgLyogSW5oZXJpdCBib3gtc2l6aW5nIHRvIG1ha2UgaXQgZWFzaWVyIHRvIGNoYW5nZSB0aGUgcHJvcGVydHkgZm9yIGNvbXBvbmVudHMgdGhhdCBsZXZlcmFnZSBvdGhlciBiZWhhdmlvcjsgc2VlIGh0dHA6Ly9jc3MtdHJpY2tzLmNvbS9pbmhlcml0aW5nLWJveC1zaXppbmctcHJvYmFibHktc2xpZ2h0bHktYmV0dGVyLWJlc3QtcHJhY3RpY2UvICovXG5cdGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cbmJvZHkge1xuXHRiYWNrZ3JvdW5kOiAkY29sb3JfX2JhY2tncm91bmQtYm9keTsgLyogRmFsbGJhY2sgZm9yIHdoZW4gdGhlcmUgaXMgbm8gY3VzdG9tIGJhY2tncm91bmQgY29sb3IgZGVmaW5lZC4gKi9cblx0bWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbmJsb2NrcXVvdGUsIHEge1xuXHRxdW90ZXM6IFwiXCIgXCJcIjtcblxuXHQmOmJlZm9yZSxcblx0JjphZnRlciB7XG5cdFx0Y29udGVudDogXCJcIjtcblx0fVxufVxuXG5ociB7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9fYmFja2dyb3VuZC1ocjtcblx0Ym9yZGVyOiAwO1xuXHRoZWlnaHQ6IDFweDtcblx0bWFyZ2luLWJvdHRvbTogMS41ZW07XG59XG5cbmltZyB7XG5cdGhlaWdodDogYXV0bzsgLyogTWFrZSBzdXJlIGltYWdlcyBhcmUgc2NhbGVkIGNvcnJlY3RseS4gKi9cblx0bWF4LXdpZHRoOiAxMDAlOyAvKiBBZGhlcmUgdG8gY29udGFpbmVyIHdpZHRoLiAqL1xuXHR3aWR0aDogMTAwJTtcbn1cblxuZW1iZWQsXG5pZnJhbWUsXG5vYmplY3Qge1xuXHRtYXgtd2lkdGg6IDEwMCU7IC8qIE1ha2Ugc3VyZSBlbWJlZHMgYW5kIGlmcmFtZXMgZml0IHRoZWlyIGNvbnRhaW5lcnMuICovXG59XG5cbmFydGljbGUsIHNlY3Rpb24sIGRpdiB7XG5cdGZsb2F0OiBsZWZ0O1xuXHR3aWR0aDogMTAwJTtcbn1cbnNlY3Rpb24ge1xuXHQvKm1hcmdpbi1ib3R0b206IDNyZW07Ki9cbn1cbmRpdiB7XG5cdC8qbWFyZ2luLWJvdHRvbTogMXJlbTsqL1xufVxuXG5wIHtcblx0bWFyZ2luLXRvcDogMHJlbSAhaW1wb3J0YW50O1xuXHRtYXJnaW4tYm90dG9tOiAwcmVtICFpbXBvcnRhbnQ7XG59XG5cblxuZGZuLCBjaXRlLCBlbSwgaSB7XG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuYmxvY2txdW90ZSB7XG5cdG1hcmdpbjogMCAxLjVlbTtcbn1cblxuYWRkcmVzcyB7XG5cdG1hcmdpbjogMCAwIDEuNWVtO1xufVxuXG5wcmUge1xuXHRiYWNrZ3JvdW5kOiAkY29sb3JfX2JhY2tncm91bmQtcHJlO1xuXHRmb250LWZhbWlseTogJGZvbnRfX3ByZTtcblx0QGluY2x1ZGUgZm9udC1zaXplKDAuOTM3NSk7XG5cdGxpbmUtaGVpZ2h0OiAkZm9udF9fbGluZS1oZWlnaHQtcHJlO1xuXHRtYXJnaW4tYm90dG9tOiAxLjZlbTtcblx0bWF4LXdpZHRoOiAxMDAlO1xuXHRvdmVyZmxvdzogYXV0bztcblx0cGFkZGluZzogMS42ZW07XG59XG5cbmNvZGUsIGtiZCwgdHQsIHZhciB7XG5cdGZvbnQtZmFtaWx5OiAkZm9udF9fY29kZTtcblx0QGluY2x1ZGUgZm9udC1zaXplKDAuOTM3NSk7XG59XG5cbmFiYnIsIGFjcm9ueW0ge1xuXHRib3JkZXItYm90dG9tOiAxcHggZG90dGVkICRjb2xvcl9fYm9yZGVyLWFiYnI7XG5cdGN1cnNvcjogaGVscDtcbn1cblxubWFyaywgaW5zIHtcblx0YmFja2dyb3VuZDogJGNvbG9yX19iYWNrZ3JvdW5kLWlucztcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5iaWcge1xuXHRmb250LXNpemU6IDEyNSU7XG59XG5cbmJ1dHRvbiB7XG5cdGJvcmRlcjogbWVkaXVtIG5vbmU7XG5iYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbmZsb2F0OiByaWdodDtcbndpZHRoOiBhdXRvO1xufVxuXG4vLyBSZXNwb25zaXZlIHZpZGVvIC0gQUNGIG9FbWJlZFxuXG4uZW1iZWQtY29udGFpbmVyIHsgXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlOyBcblx0XHRwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuXHRcdGhlaWdodDogMDtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdG1heC13aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IGF1dG87XG5cdH0gXG5cblx0LmVtYmVkLWNvbnRhaW5lciBpZnJhbWUsXG5cdC5lbWJlZC1jb250YWluZXIgb2JqZWN0LFxuXHQuZW1iZWQtY29udGFpbmVyIGVtYmVkIHsgXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMTAwJTtcblx0fSIsImgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuXHRjbGVhcjogYm90aDtcbn1cblxuLmNvbnRlbnQtdGl0bGUsXG4udWktYWNjb3JkaW9uIC51aS1hY2NvcmRpb24taGVhZGVyIHtcblx0Zm9udC1mYW1pbHk6ICRmb250X19tYWluO1xuXHRsaW5lLWhlaWdodDogJGZvbnRfX2xpbmUtaGVpZ2h0LXRpdGxlO1xuXHRmb250LXdlaWdodDogbm9ybWFsO1xuXHRtYXJnaW4tdG9wOiAwcmVtO1xuXHRtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuLnZvcnN0YW5kLW1haW4gLmNvbnRlbnQtdGl0bGUge1xuXHRtYXJnaW4tYm90dG9tOiBzcGFuKDAuNSk7XG59XG4uY29udGVudC10aXRsZSB7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZSgxKTtcblx0QGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCRtZWRpdW0pIHtcblx0XHRAaW5jbHVkZSBmb250LXNpemUoMS42KTtcblx0fVxufVxuLnVpLWFjY29yZGlvbiAudWktYWNjb3JkaW9uLWhlYWRlciB7XG5cdG1hcmdpbi10b3A6IDFyZW07XG5cdG1hcmdpbi1ib3R0b206IDByZW07XG5cdCY6bnRoLWNoaWxkKDEpIHtcblx0XHRtYXJnaW4tdG9wOiAwcmVtO1xuXHR9XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZSgxLjYpO1xuXHRAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoJG1lZGl1bSkge1xuXHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSgyLjQpO1xuXHR9XG59XG5cbmgyOmZpcnN0LWxldHRlciB7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplICFpbXBvcnRhbnQ7XG59XG4udWktYWNjb3JkaW9uLWhlYWRlciBhOmZpcnN0LWxldHRlciB7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplICFpbXBvcnRhbnQ7XG59XG4uaG9tZSBoMi5jb250ZW50LXRpdGxlIHtcblx0QGluY2x1ZGUgZm9udC1zaXplKDEuNik7XG5cdEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCgkbWVkaXVtKSB7XG5cdFx0QGluY2x1ZGUgZm9udC1zaXplKDIuNCk7XG5cdH1cbn1cblxuaDMge1xuXHRmb250LWZhbWlseTogJGZvbnRfX2FzaWRlO1xuXHRAaW5jbHVkZSBmb250LXNpemUoMC43NSk7XG5cdGxpbmUtaGVpZ2h0OiAkZm9udF9fbGluZS1oZWlnaHQtYXNpZGU7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdG1hcmdpbi10b3A6IDByZW07XG5cdG1hcmdpbi1ib3R0b206IDByZW07XG59XG4ucGFnZS1hcmNoaXZlIGgzIHtcblx0Zm9udC1mYW1pbHk6ICRmb250X19tYWluO1xuXHRAaW5jbHVkZSBmb250LXNpemUoMC43NSk7XG5cdGxpbmUtaGVpZ2h0OiAkZm9udF9fbGluZS1oZWlnaHQtYm9keTtcblx0dGV4dC10cmFuc2Zvcm06IG5vbmU7XG5cdEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCgkbWVkaXVtKSB7XG5cdFx0QGluY2x1ZGUgZm9udC1zaXplKDEpO1xuXHR9XG59XG4ucGFnZS1hcmNoaXZlIC5uZXdzIGgzIHtcblx0bWFyZ2luLWJvdHRvbTogZ3V0dGVyKDQpO1xufVxuLnBhZ2UtYXJjaGl2ZSAubmV3cyAuYmVzY2hyZWlidW5nc3RleHQge1xuXHRtYXJnaW4tYm90dG9tOiBndXR0ZXIoNCk7XG59XG5oMy5pbmRleC10aXRsZSB7XG5cdG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG5cdGxldHRlci1zcGFjaW5nOiAwLjAycmVtO1xufVxuXG4uYXNpZGUgaDMge1xuXHRtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuLmFzaWRlLXRpdGxlIHNwYW57XG5cdHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuLmhlYWRlci1uZXdzLWFydGljbGUge1xuXHRtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG59XG4uaGVhZGVyLW5ld3MtYXJ0aWNsZSAuYXNpZGUtdGl0bGV7XG5cdG1hcmdpbi1ib3R0b206IDA7XG5cdGxldHRlci1zcGFjaW5nOiAwLjAycmVtO1xufVxuLmhlYWRlci1uZXdzLWFydGljbGUgLmFzaWRlLXRpdGxlLWFydGljbGV7XG5cdHRleHQtdHJhbnNmb3JtOiBub25lO1xuXHRtYXJnaW4tYm90dG9tOiAwO1xuXHRsZXR0ZXItc3BhY2luZzogMC4wMnJlbTtcblx0YSB7XG5cdFx0Y29sb3I6ICRjb2xvcl9fdGV4dC1tYWluO1xuXHR9XG59XG5cblxuLmhlYWRlci1uZXdzLWFydGljbGUgLmFzaWRlLXRpdGxlLWFydGljbGU6Zmlyc3QtbGV0dGVye1xuXHR0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZSAhaW1wb3J0YW50O1xufVxuaDMuc2VjdGlvbi10aXRsZSB7XG5cdG1hcmdpbi1ib3R0b206IDAuNXJlbTtcblx0bGV0dGVyLXNwYWNpbmc6IDAuMDJyZW07XG59XG51bC5hbmZhaHJ0IGgzLnNlY3Rpb24tdGl0bGUsXG51bC5rb250YWt0IGgzLnNlY3Rpb24tdGl0bGUge1xuXHRtYXJnaW4tYm90dG9tOiAwcmVtO1xuXHRtYXJnaW4tdG9wOiAxLjVyZW07XG59XG4jY2Fyb3VzZWwtd2FycCBoMy5zZWN0aW9uLXRpdGxlIHtcblx0bWFyZ2luLWJvdHRvbTogLTAuMjVyZW07XG5cdH1cbi8qI3B1YmxpY2F0aW9ucyBoMy5zZWN0aW9uLXRpdGxlIHtcblx0bWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbn0qL1xuLnJlbGF0ZWQtY29udGVudCBoMyB7XG5cdG1hcmdpbi1ib3R0b206IDA7XG5cdGNvbG9yOiAkY29sb3JfX2xpbms7XG59XG5cbi5jb250ZW50LXRpdGxlLmFydGljbGUge1xuXHRjb2xvcjogJGNvbG9yX19saW5rO1xuXHRmb250LXNpemU6IDIuNHJlbTtcbn1cblxuLnNpbmdsZS1uZXdzLXRpdGxlIHtcblx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcbn0iLCJhIHtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRjb2xvcjogJGNvbG9yX19saW5rO1xuXG5cdCY6dmlzaXRlZCB7XG5cdFx0Y29sb3I6ICRjb2xvcl9fbGluaztcblx0fVxuXHQmOmhvdmVyLFxuXHQmOmFjdGl2ZSB7XG5cdFx0Y29sb3I6ICRjb2xvcl9fbGluay1ob3Zlcjtcblx0fVxuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lOiAwO1xuXHR9XG5cdCY6aG92ZXIsXG5cdCY6YWN0aXZlIHtcblx0XHRvdXRsaW5lOiAwO1xuXHR9XG59XG5cbmEuaG9tZWxpbmssXG5hLmhvbWVsaW5rOmhvdmVyLFxuYS5ob21lbGluazp2aXNpdGVkIHtcblx0Y29sb3I6ICRjb2xvcl9fdGV4dC1tYWluO1xufSIsInVsIHtcblx0bGlzdC1zdHlsZTogbm9uZTtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nLWxlZnQ6IDA7XG59XG5saSB7XG5cdG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5yZWxhdGVkLWxpbmtzIGxpLFxuLnJlbGF0ZWQtY29udGVudCBsaSB7XG5cdG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG59IiwidGFibGUge1xuXHRtYXJnaW46IDAgMCAxLjVlbTtcblx0d2lkdGg6IDEwMCU7XG59IiwiYm9keSxcbmJ1dHRvbixcbmlucHV0LFxuc2VsZWN0LFxudGV4dGFyZWEsXG4udWktd2lkZ2V0IHtcblx0Y29sb3I6ICRjb2xvcl9fdGV4dC1tYWluO1xuXHRmb250LWZhbWlseTogJGZvbnRfX21haW47XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZSgxKTtcblx0bGluZS1oZWlnaHQ6ICRmb250X19saW5lLWhlaWdodC1ib2R5O1xufVxuXG4uYXNpZGUsXG4ubGlzdC1pdGVtcyB7XG5cdGZvbnQtZmFtaWx5OiAkZm9udF9fYXNpZGU7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZSgwLjc1KTtcblx0bGluZS1oZWlnaHQ6ICRmb250X19saW5lLWhlaWdodC1hc2lkZTtcbn1cbi5saXN0LWl0ZW1zIHtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbiNrb250YWt0IC5saXN0LWl0ZW1zIHtcblx0dGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG4uYmlnIHtcblx0bGluZS1oZWlnaHQ6ICRmb250X19saW5lLWhlaWdodC1iaWc7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZSgxKTtcblx0QGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCRtZWRpdW0pIHtcblx0QGluY2x1ZGUgZm9udC1zaXplKDEuNik7XG5cdH1cblx0LyptYXJnaW4tYm90dG9tOiAxcmVtOyovXG59XG4uYmlnZ2VyIHtcblx0bGluZS1oZWlnaHQ6ICRmb250X19saW5lLWhlaWdodC10aXRsZTtcblx0QGluY2x1ZGUgZm9udC1zaXplKDEuNik7XG5cdEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCgkbWVkaXVtKSB7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZSgyLjQpO1xuXHR9XG59XG5cbi5uYW1lLFxuLnZvcm5hbWUge1xuXHR0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbn1cblxuc2VjdGlvbiNuZXdzLFxuc2VjdGlvbiNkYXRlcyxcbnNlY3Rpb24jaGlnaGxpZ2h0IHtcblx0Zm9udC1mYW1pbHk6ICRmb250X19hc2lkZTtcblxufSIsIi8qIExheW91dCBiYXNlZCBvbiBTdXN5IGdyaWQgKi9cblxuLmNvbnRhaW5lciB7XG5cdCBAaW5jbHVkZSBjb250YWluZXI7XG59XG4jcGFnZSB7XG5cdG1hcmdpbi1ib3R0b206IDA7XG59XG4jY29udGVudCB7XG5cdG1pbi1oZWlnaHQ6IDkwdmg7XG59XG4jbWFpbiB7XG5cdHBhZGRpbmctdG9wOiBndXR0ZXIoMik7XG59XG4jbWFpbixcbmhlYWRlcixcbmZvb3RlciB7XG5cdHBhZGRpbmctbGVmdDogZ3V0dGVyKDExKTtcblx0cGFkZGluZy1yaWdodDogZ3V0dGVyKDExKTtcbn1cblxuXG4vKioqKioqKioqKioqKioqKioqKipcbi8qIGZyb250LXBhZ2UgbGF5b3V0IFxuKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKiNjb2xvcGhvbiAucm93LCovXG4vKi5lbmdhZ2VtZW50LWxpc3RpbmcsKi9cbi5zaW5nbGUtbmV3cyBhcnRpY2xlIHtcblx0LypAaW5jbHVkZSBicmVha3BvaW50KDg1NnB4KSovIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCgkbGFyZ2UpIHtcblx0PiBkaXYge1xuXHRcdC8vIGZyb250LXBhZ2UgLSBsZWZ0IGNvbHVtblxuXHRcdCY6bnRoLWNoaWxkKDEpIHtcblx0XHRcdEBpbmNsdWRlIHNwYW4oNSBvZiAxMSk7XG5cdFx0XHRcblx0XHR9XG5cblx0XHQvLyBmcm9udC1wYWdlIC0gcmlnaHQgY29sdW1uXG5cdFx0JjpudGgtY2hpbGQoMikge1xuXHRcdFx0QGluY2x1ZGUgc3Bhbig1IG9mIDExIGxhc3QpO1xuXHRcdH1cblx0fVxufVxufVxuLyoqKioqKioqKioqKioqKipcbi8qIGFib3V0IHVzIHBhZ2VcbioqKioqKioqKioqKioqKioqL1xuXG4uYmVzY2hyZWlidW5nIHtcblx0PiBkaXYge1xuXHRcdC8qQGluY2x1ZGUgYnJlYWtwb2ludCg2NDBweCkqLyBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoJG1lZGl1bSkge1xuXHRcdC8vIGFib3V0IC0gbGVmdCBjb2x1bW5cblx0XHRAaW5jbHVkZSBzcGFuKDMgb2YgNyk7XG5cdFx0JjpudGgtY2hpbGQoMikge1xuXHRcdFx0QGluY2x1ZGUgc3BhbigzIG9mIDcgbGFzdCk7XG5cdFx0XHR9XG5cdFx0fVxufVxufSIsIi8vIENvbnRhaW5lciBTeW50YXhcbi8vID09PT09PT09PT09PT09PT1cblxuLy8gQ29udGFpbmVyIFttaXhpbl1cbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG4vLyBTZXQgYSBjb250YWluZXIgZWxlbWVudFxuLy8gLSBbJGxheW91dF0gIDogPHNldHRpbmdzPlxuQG1peGluIGNvbnRhaW5lcihcbiAgJGxheW91dDogJHN1c3lcbikge1xuICAkaW5zcGVjdCAgICA6ICRsYXlvdXQ7XG4gICRsYXlvdXQgICAgIDogcGFyc2UtZ3JpZCgkbGF5b3V0KTtcblxuICAkX3dpZHRoICAgICA6IGdldC1jb250YWluZXItd2lkdGgoJGxheW91dCk7XG4gICRfanVzdGlmeSAgIDogcGFyc2UtY29udGFpbmVyLXBvc2l0aW9uKHN1c3ktZ2V0KGNvbnRhaW5lci1wb3NpdGlvbiwgJGxheW91dCkpO1xuICAkX3Byb3BlcnR5ICA6IGlmKHN1c3ktZ2V0KG1hdGgsICRsYXlvdXQpID09IHN0YXRpYywgd2lkdGgsIG1heC13aWR0aCk7XG5cbiAgJF9ib3ggICAgICAgOiBzdXN5LWdldChib3gtc2l6aW5nLCAkbGF5b3V0KTtcblxuICBAaWYgJF9ib3gge1xuICAgIEBpbmNsdWRlIG91dHB1dCgoYm94LXNpemluZzogJF9ib3gpKTtcbiAgfVxuXG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChjb250YWluZXIsICRpbnNwZWN0KTtcbiAgQGluY2x1ZGUgZmxvYXQtY29udGFpbmVyKCRfd2lkdGgsICRfanVzdGlmeSwgJF9wcm9wZXJ0eSk7XG4gIEBpbmNsdWRlIHNob3ctZ3JpZCgkbGF5b3V0KTtcbn1cblxuLy8gQ29udGFpbmVyIFtmdW5jdGlvbl1cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBSZXR1cm4gY29udGFpbmVyIHdpZHRoXG4vLyAtIFskbGF5b3V0XSAgOiA8c2V0dGluZ3M+XG5AZnVuY3Rpb24gY29udGFpbmVyKFxuICAkbGF5b3V0OiAkc3VzeVxuKSB7XG4gICRsYXlvdXQ6IHBhcnNlLWdyaWQoJGxheW91dCk7XG4gIEByZXR1cm4gZ2V0LWNvbnRhaW5lci13aWR0aCgkbGF5b3V0KTtcbn1cblxuLy8gR2V0IENvbnRhaW5lciBXaWR0aFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQ2FsY3VsYXRlIHRoZSBjb250YWluZXIgd2lkdGhcbi8vIC0gWyRsYXlvdXRdOiA8c2V0dGluZ3M+XG5AZnVuY3Rpb24gZ2V0LWNvbnRhaW5lci13aWR0aChcbiAgJGxheW91dDogJHN1c3lcbikge1xuICAkbGF5b3V0ICAgICAgICAgOiBwYXJzZS1ncmlkKCRsYXlvdXQpO1xuICAkX3dpZHRoICAgICAgICAgOiBzdXN5LWdldChjb250YWluZXIsICRsYXlvdXQpO1xuICAkX2NvbHVtbi13aWR0aCAgOiBzdXN5LWdldChjb2x1bW4td2lkdGgsICRsYXlvdXQpO1xuICAkX21hdGggICAgICAgICAgOiBzdXN5LWdldChtYXRoLCAkbGF5b3V0KTtcblxuICBAaWYgbm90KCRfd2lkdGgpIG9yICRfd2lkdGggPT0gYXV0byB7XG4gICAgQGlmIHZhbGlkLWNvbHVtbi1tYXRoKCRfbWF0aCwgJF9jb2x1bW4td2lkdGgpIHtcbiAgICAgICRfY29sdW1ucyAgIDogc3VzeS1nZXQoY29sdW1ucywgJGxheW91dCk7XG4gICAgICAkX2d1dHRlcnMgICA6IHN1c3ktZ2V0KGd1dHRlcnMsICRsYXlvdXQpO1xuICAgICAgJF9zcHJlYWQgICAgOiBpZihpcy1zcGxpdCgkbGF5b3V0KSwgd2lkZSwgbmFycm93KTtcbiAgICAgICRfd2lkdGggICAgIDogc3VzeS1zdW0oJF9jb2x1bW5zLCAkX2d1dHRlcnMsICRfc3ByZWFkKSAqICRfY29sdW1uLXdpZHRoO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJF93aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRfd2lkdGg7XG59XG5cbi8vIFBhcnNlIENvbnRhaW5lciBQb3NpdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBQYXJzZSB0aGUgJGNvbnRhaW5lci1wb3NpdGlvbiBpbnRvIG1hcmdpbiB2YWx1ZXMuXG4vLyAtIFskanVzdGlmeV0gICA6IGxlZnQgfCBjZW50ZXIgfCByaWdodCB8IDxsZW5ndGg+IFs8bGVuZ3RoPl1cbkBmdW5jdGlvbiBwYXJzZS1jb250YWluZXItcG9zaXRpb24oXG4gICRqdXN0aWZ5OiBtYXAtZ2V0KCRzdXN5LWRlZmF1bHRzLCBjb250YWluZXItcG9zaXRpb24pXG4pIHtcbiAgJF9yZXR1cm46IGlmKCRqdXN0aWZ5ID09IGxlZnQsIDAsIGF1dG8pIGlmKCRqdXN0aWZ5ID09IHJpZ2h0LCAwLCBhdXRvKTtcblxuICBAaWYgbm90KGluZGV4KGxlZnQgcmlnaHQgY2VudGVyLCAkanVzdGlmeSkpIHtcbiAgICAkX3JldHVybjogbnRoKCRqdXN0aWZ5LCAxKTtcbiAgICAkX3JldHVybjogJF9yZXR1cm4gaWYobGVuZ3RoKCRqdXN0aWZ5KSA+IDEsIG50aCgkanVzdGlmeSwgMiksICRfcmV0dXJuKTtcbiAgfVxuXG4gIEByZXR1cm4gJF9yZXR1cm47XG59XG4iLCIvLyBTaGFyZWQgQ29udGFpbmVyIEFQSVxuLy8gPT09PT09PT09PT09PT09PT09PT1cblxuLy8gQ29udGFpbmVyIE91dHB1dFxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuLy8gLSBbJHdpZHRoXSAgICAgICAgIDogPGxlbmd0aD5cbi8vIC0gWyRqdXN0aWZ5XSAgICAgICA6IGxlZnQgfCBjZW50ZXIgfCByaWdodFxuLy8gLSBbJG1hdGhdICAgICAgICAgIDogZmx1aWQgfCBzdGF0aWNcbkBtaXhpbiBjb250YWluZXItb3V0cHV0KFxuICAkd2lkdGgsXG4gICRqdXN0aWZ5OiBhdXRvIGF1dG8sXG4gICRwcm9wZXJ0eTogbWF4LXdpZHRoXG4pIHtcbiAgJG91dHB1dDogKFxuICAgICN7JHByb3BlcnR5fTogJHdpZHRoIG9yIDEwMCUsXG4gICAgbWFyZ2luLWxlZnQ6IG50aCgkanVzdGlmeSwgMSksXG4gICAgbWFyZ2luLXJpZ2h0OiBudGgoJGp1c3RpZnksIDIpLFxuICApO1xuXG4gIEBpbmNsdWRlIG91dHB1dCgkb3V0cHV0KTtcbn1cbiIsIi8vIFN1c3kgRmFsbGJhY2sgQ2xlYXJmaXhcbi8vID09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBDbGVhcmZpeFxuLy8gLS0tLS0tLS1cbi8vIENoZWNrIGZvciBhbiBleGlzdGluZyBzdXBwb3J0IG1peGluLCBvciBwcm92aWRlIGEgc2ltcGxlIGZhbGxiYWNrLlxuQG1peGluIHN1c3ktY2xlYXJmaXgge1xuICBAaWYgc3VzeS1zdXBwb3J0KGNsZWFyZml4LCAobWl4aW46IGNsZWFyZml4KSkge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICB9IEBlbHNlIHtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG4gIH1cbn1cbiIsIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5cdEhFQURFUlxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcblxyXG4vKiogR2VuZXJhbFxyXG5cdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG4uc2l0ZS1oZWFkZXIge1xyXG5cdG1hcmdpbi10b3A6IGd1dHRlcigyMik7XHJcblx0bWFyZ2luLWJvdHRvbTogZ3V0dGVyKDIyKTtcclxufVxyXG5cclxuXHJcbi8qKiBMb2dvXHJcblx0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcbi5zaXRlLWhlYWRlciAuc2l0ZS10aXRsZSB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxuXHRAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoJGxhcmdlKSB7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdG1hcmdpbi10b3A6IDBweDtcclxuXHRcdG1hcmdpbi1ib3R0b206IDBweDtcclxuXHRcdGxpbmUtaGVpZ2h0OiAxLjE7XHJcblx0fVxyXG59XHJcblxyXG4ubG9nby1tbGYge1xyXG5cdG1heC13aWR0aDogc3BhbigyKTtcclxufVxyXG5cclxuLyoqIE5hbWVcclxuXHQtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuXHJcbi8qKiBNZW51IGljb24gKG9uIG1vYmlsZSB2aWV3KVxyXG5cdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG4uc2l0ZS1oZWFkZXIgYnV0dG9uLm1lbnUtdG9nZ2xlIHtcclxuICBib3JkZXI6IG5vbmU7XHJcbiAgZmxvYXQ6IHJpZ2h0O1xyXG4gIHRleHQtYWxpZ246IHJpZ2h0O1xyXG59XHJcblxyXG4uc2l0ZS1oZWFkZXIgYnV0dG9uLm1lbnUtdG9nZ2xlIHNwYW4ge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5tYWluLW5hdmlnYXRpb24udG9nZ2xlZCAubWVudS1pbm5lci13cmFwIHtcclxuXHRtYXJnaW4tdG9wOiAxLjglO1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9fYmFja2dyb3VuZC1ib2R5O1xyXG5cdEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCgkbGFyZ2UpIHtcclxuXHRcdC8vcGFkZGluZy10b3A6IHNwYW4oMSk7XHJcblx0XHRwYWRkaW5nLWJvdHRvbTogc3BhbigxKTtcclxuXHRcdC8vbWFyZ2luLXRvcDogc3BhbigxKTtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9fYmFja2dyb3VuZC1ib2R5O1xyXG5cdH1cclxufVxyXG5cclxuLm1haW4tbmF2aWdhdGlvbi50b2dnbGVkLnN0aWNrIC5tZW51LWlubmVyLXdyYXAge1xyXG5cdEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCgkbGFyZ2UpIHtcclxuXHRcdHBhZGRpbmctdG9wOiA2LjQ1JSAhaW1wb3J0YW50O1xyXG5cdFx0Ly9wYWRkaW5nLXRvcDogZ3V0dGVyKDMpICFpbXBvcnRhbnQ7XHJcblx0XHRwYWRkaW5nLWJvdHRvbTogc3BhbigxKTtcclxuXHRcdG1hcmdpbi10b3A6IHNwYW4oMSkgIWltcG9ydGFudDtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9fYmFja2dyb3VuZC1ib2R5O1xyXG5cdH1cclxufVxyXG5cclxuI3NpdGUtbmF2aWdhdGlvbi50b2dnbGVkICNrb250YWt0IHtcclxuXHRwYWRkaW5nLXRvcDogc3BhbigxKTtcdFxyXG59XHJcblxyXG5cclxuLyoqIE1lbnUgaXRlbXNcclxuXHQtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi5tZW51LXdwX25hdl9tZW51LWNvbnRhaW5lciBbYXJpYS1leHBhbmRlZD1cInRydWVcIl0gbGkge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgbWFyZ2luLWxlZnQ6IDBweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgIHBhZGRpbmc6IGd1dHRlcig1KTtcclxufVxyXG5cclxuXHJcbi8qKiBTaG93IGhpZGUgZXh0cmEgY29udGVudCAoY29udGFjdCBpbmZvICkgXHJcblx0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG4ubWVudS13cF9uYXZfbWVudS1jb250YWluZXIgW2FyaWEtZXhwYW5kZWQ9XCJmYWxzZVwiXSBsaS5leHRyYSB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG4ubWVudS13cF9uYXZfbWVudS1jb250YWluZXIgW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdIGxpLmV4dHJhIHtcclxuXHRkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuXHJcbi8qKiBOZXcgbWFya3VwXHJcblx0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuaGVhZGVyIHtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG5oZWFkZXIgLnRoaXJkLWxlZnQge1xyXG5wb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0QGluY2x1ZGUgc3Bhbig5IG9mIDExKTtcclxuXHRAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoJGxhcmdlKSB7XHJcblx0XHRwb3NpdGlvbjogdW5zZXQ7XHJcblxyXG5cdEBpbmNsdWRlIHNwYW4oNCBvZiAxMSk7XHJcbn1cclxuXHJcbn1cclxuXHJcbmhlYWRlciAudGhpcmQtbGVmdDo6YWZ0ZXIge1xyXG5jbGVhcjogYm90aDtcclxufVxyXG5cclxuaGVhZGVyIC50aGlyZC1yaWdodCB7XHJcblx0ZmxvYXQ6cmlnaHQ7XHJcblx0d2lkdGg6IGF1dG87XHJcblx0ICAvL0BpbmNsdWRlIHNwYW4oMiBvZiAxMSBsYXN0KTtcclxuXHRAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoJGxhcmdlKSB7XHJcblx0QGluY2x1ZGUgc3Bhbig3IG9mIDExIGxhc3QpO1xyXG59XHJcbn1cclxuXHJcbm5hdixcclxuLnNpdGUtdGl0bGUsXHJcbi5ob21lbGluayB7XHJcblx0ZmxvYXQ6IGxlZnQ7XHJcblx0d2lkdGg6IDEwMCU7XHJcblxyXG59XHJcblxyXG5idXR0b24ge1xyXG5cdG91dGxpbmU6IG5vbmU7XHJcbn1cclxuXHJcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5cdEhFQURFUiAtIFN0aWNreSBzdGF0ZVxyXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbi50aGlyZC1sZWZ0IC5zdGljazEsXHJcbi50aGlyZC1yaWdodCAuc3RpY2ssXHJcbi5tZW51LXRvZ2dsZS1jbG9zZS5zdGljayB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB0b3A6IDBweDtcclxuICAgIHotaW5kZXg6IDk5OTk5OTk7XHJcbiAgICBwYWRkaW5nLXRvcDogZ3V0dGVyKDIyKTtcclxuICAgIHBhZGRpbmctYm90dG9tOiBndXR0ZXIoMTEpO1xyXG59XHJcblxyXG4udGhpcmQtbGVmdCAuc3RpY2sxIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfX2JhY2tncm91bmQtYm9keTtcclxuXHQvL3BhZGRpbmctYm90dG9tOiBzcGFuKDEpO1xyXG5cdEBpbmNsdWRlIHNwYW4oMTEgb2YgMTEpO1xyXG4gICAgbGVmdDogMHB4O1xyXG4gICAgcGFkZGluZy1sZWZ0OiAxLjAyMDQxJTtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDAlO1xyXG4gICAgIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCgkc21hbGxwYWlyKSB7XHJcbiAgICBcdHBhZGRpbmctYm90dG9tOiBndXR0ZXIoNSk7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoJGxhcmdlKSB7XHJcbiAgICBcdHBhZGRpbmctYm90dG9tOiBndXR0ZXIoMTEpO1xyXG4gICAgXHR3aWR0aDogMzYlICFpbXBvcnRhbnQ7XHRcclxuXHR9XHJcbn1cclxuXHJcbi50aGlyZC1yaWdodCAuc3RpY2sge1xyXG4gICAgcmlnaHQ6IDBweDtcclxuICAgIG1hcmdpbi1yaWdodDogMCU7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiBndXR0ZXIoMTEpO1xyXG4gICAgcGFkZGluZy1sZWZ0OiBndXR0ZXIoMTEpO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgIFx0QGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCRsYXJnZSkge1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yX19iYWNrZ3JvdW5kLWJvZHk7XHJcblx0ICAgIHdpZHRoOiA2NCUgIWltcG9ydGFudDtcdFxyXG5cdH1cclxufVxyXG5cclxuLnN0aWNrLm1lbnUtdG9nZ2xlLWNsb3NlIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfX2JhY2tncm91bmQtYm9keTtcclxuXHRyaWdodDogMHB4O1xyXG4gICAgd2lkdGg6IDQlO1xyXG4gICAgcGFkZGluZy1yaWdodDogZ3V0dGVyKDExKTtcclxuICAgIHBhZGRpbmctbGVmdDogZ3V0dGVyKDExKTtcclxuXHRAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoJG1lZGl1bSkge1xyXG5cdFx0d2lkdGg6IDY0JTtcclxuXHR9XHJcbn1cclxuXHJcbi5tZW51LXRvZ2dsZSB7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG59XHJcblxyXG4ubWVudS10b2dnbGUuc3RpY2sge1xyXG5cdEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCgkcGV0aXQpIHtcclxuXHRcdHdpZHRoOiAxOSU7XHJcblx0fVxyXG4gICAgbWFyZ2luLWJvdHRvbTogMCU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfX2JhY2tncm91bmQtYm9keTtcclxufVxyXG5cclxuLm1lbnUtdG9nZ2xlLWNsb3NlIHtcclxuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgcGFkZGluZy1yaWdodDogMDtcclxufVxyXG5cclxuLm1haW4tbmF2aWdhdGlvbi50b2dnbGVkIHtcclxuXHRtYXJnaW4tdG9wOiAwJTtcclxufVxyXG5cclxuLm1haW4tbmF2aWdhdGlvbi50b2dnbGVkLnN0aWNrIHtcclxuXHRtYXJnaW4tdG9wOiAxLjRyZW07XHJcblxyXG5cdEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCgkbGFyZ2UpIHtcclxuXHRcdG1hcmdpbi10b3A6IC01LjUlO1xyXG5cdH1cclxufVxyXG5cclxuLm1haW4tbmF2aWdhdGlvbi50b2dnbGVkLnN0aWNrIC5tZW51LWlubmVyLXdyYXAge1xyXG5cdHBhZGRpbmctYm90dG9tOiBzcGFuKDEpO1xyXG59IiwiZm9vdGVyIHtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yX19saW5rO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0cGFkZGluZy10b3A6IGd1dHRlcig0NCk7XHJcblx0ZGl2IHtcclxuXHRcdG1hcmdpbi1ib3R0b206IDA7XHJcblx0fVxyXG59XHJcblxyXG4jY29sb3Bob24gLnJvdyB7XHJcblx0PiBkaXYge1xyXG5cdFx0Ly8gZnJvbnQtcGFnZSAtIGxlZnQgY29sdW1uXHJcblx0XHQmOm50aC1jaGlsZCgxKSB7XHJcblx0XHRcdEBpbmNsdWRlIHNwYW4oOCBvZiAxMSk7XHJcblx0XHRcdEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCgkbGFyZ2UpIHtcclxuXHRcdFx0QGluY2x1ZGUgc3Bhbig1IG9mIDExKTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdC8vIGZyb250LXBhZ2UgLSByaWdodCBjb2x1bW5cclxuXHRcdCY6bnRoLWNoaWxkKDIpIHtcclxuXHRcdFx0QGluY2x1ZGUgc3BhbigyIG9mIDExIGxhc3QpO1xyXG5cdFx0XHRAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoJGxhcmdlKSB7XHJcblx0XHRcdEBpbmNsdWRlIHNwYW4oNSBvZiAxMSBsYXN0KTtcclxuXHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn0iLCIvKiogR2VuZXJhbCBsYXlvdXQgaW5kZXggcGFnZXMgKGFjY29yZGlvbiBjb250ZW50KTogXHJcblx0YWJvdXQgdXMsIHByb2pla3RlLCB0aGVtZW4sIGJpbGR1bmdzYW5nZWJvdGVcclxuXHQtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLmluZGV4LXBhZ2UtaW50cm8ge1xyXG5cdG1hcmdpbi1ib3R0b206IGd1dHRlcigyKTtcclxuXHRAaW5jbHVkZSBzcGFuKGZ1bGwpO1xyXG5cdEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCgkbGFyZ2UpIHtcclxuXHRAaW5jbHVkZSBzcGFuKDggb2YgMTEgbGFzdCk7XHJcblx0fVxyXG5cdD4gZGl2IHtcclxuXHRcdGNvbG9yOiAkY29sb3JfX2xpbms7XHJcblx0fVxyXG59XHJcblxyXG4uaW5kZXgtcGFnZS1jb250ZW50IHtcclxuXHRtYXJnaW4tYm90dG9tOiBndXR0ZXIoMik7XHJcbn1cclxuXHJcbi8qKiBHZW5lcmFsIGxheW91dFxyXG5cdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4vKiAucm93IC5jb2wtbGVmdCAuY29sLXJpZ2h0Ki9cclxuXHJcbi5wYWdlLXViZXItbWljaCAucm93LFxyXG4uYWNjb3JkaW9uLWNvbnRlbnQgLnJvdyB7XHJcblx0PiBkaXYge1xyXG4gICAgICAgIEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCgkbGFyZ2UpIHtcclxuXHRcdCYuY29sLWxlZnQge1xyXG5cdFx0XHRAaW5jbHVkZSBzcGFuKDcgb2YgMTEpO1x0XHJcblx0XHR9XHJcblx0XHQmLmNvbC1yaWdodCB7XHJcblx0XHRcdEBpbmNsdWRlIHNwYW4oMyBvZiAxMSBsYXN0KTtcclxuXHRcdFx0cGFkZGluZy1sZWZ0OiBndXR0ZXIoNDQpO1xyXG4gICAgICAgICAgICAvKnBhZGRpbmctcmlnaHQ6IGd1dHRlcigyMik7Ki9cclxuXHRcdH1cclxuXHR9XHJcbn1cclxufVxyXG5cclxuXHJcbi8qKiBBY2NvcmRpb24gY29udGVudCAtIE1hc29ucnkgLSAyIGNvbHVtbnNcclxuXHQtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLm1hc29ucnkge1xyXG4gIEBpbmNsdWRlIHN1c3ktY2xlYXJmaXgoKTtcclxufVxyXG4vKiAyIG1hc29ucnkgY29scyBvdmVyIDExIHN1c3kgY29scyovXHJcbi5tYXNvbnJ5X19ndXR0ZXIge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcblx0QGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCRtZWRpdW0pIHtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG4gIHdpZHRoOiBndXR0ZXIoMTEpK3NwYW4oMSkrZ3V0dGVyKDExKTtcclxufVxyXG59XHJcbi5tYXNvbnJ5X19jb2x1bW4ge1xyXG5cdHdpZHRoOiBzcGFuKDExKTtcclxuXHRAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoJG1lZGl1bSkge1xyXG4gIHdpZHRoOiBzcGFuKDUpO1xyXG59XHJcbn1cclxuLm1hc29ucnlfX2l0ZW0ge1xyXG5cdHdpZHRoOiBzcGFuKDExKTtcclxuXHRAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoJG1lZGl1bSkge1xyXG4gIHdpZHRoOiBzcGFuKDUpO1xyXG59XHJcbn1cclxuXHJcbi8qIDIgbWFzb25yeSBjb2xzIG92ZXIgNyBzdXN5IGNvbHMqL1xyXG5cclxuLnNtYWxsLW1hc29ucnkgLm1hc29ucnlfX2d1dHRlciB7XHJcblx0d2lkdGg6MDtcclxuXHRAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoJG1lZGl1bSkge1xyXG4gIHdpZHRoOiAxNi40JTtcclxufVxyXG59XHJcbi5zbWFsbC1tYXNvbnJ5IC5tYXNvbnJ5X19jb2x1bW4ge1xyXG5cdHdpZHRoOiBzcGFuKGZ1bGwpO1xyXG5cdEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCgkbWVkaXVtKSB7XHJcbiAgd2lkdGg6IDQxLjc3MDgzJS8qc3BhbigzMy83KSovO1xyXG59XHJcbn1cclxuLnNtYWxsLW1hc29ucnkgLm1hc29ucnlfX2l0ZW0ge1xyXG5cdHdpZHRoOiBzcGFuKGZ1bGwpO1xyXG5cdEBpbmNsdWRlIHN1c3ktYnJlYWtwb2ludCgkbWVkaXVtKSB7XHJcbiAgd2lkdGg6IDQxLjc3MDgzJS8qc3BhbigzMy83KSovO1xyXG59XHJcbn1cclxuXHJcbi8qIE1hc29ucnkgLSBsZWZ0IC0gcmlnaHQgXCJjb2x1bW5cIiBwYWRkaW5nICovXHJcblxyXG4vKiBNYXNvbnJ5IGluIDcgb3V0IG9mIDExIGNvbHMgKi9cclxuLyogdm9yc3RhbmQgc3BlY2lmaWMgKi9cclxuXHJcbi52b3JzdGFuZC5zbWFsbC1tYXNvbnJ5IC5sZWZ0LWNvbHVtbiB7XHJcblx0LypwYWRkaW5nLWxlZnQ6IGd1dHRlcigxMSk7Ki9cclxuXHQuYXJ0aWNsZS1pbWcge1xyXG4gICAgbWFyZ2luLWxlZnQ6IC0yJTtcclxuICAgIHdpZHRoOiAxMDEuNSU7XHJcbn1cclxufVxyXG4udm9yc3RhbmQuc21hbGwtbWFzb25yeSAucmlnaHQtY29sdW1uIHtcclxuXHQvKnBhZGRpbmctcmlnaHQ6IGd1dHRlcigxMSk7Ki9cclxuXHRtYXJnaW4tbGVmdDogLTAuMzUlO1xyXG5cdHdpZHRoOiA0Mi40JTtcclxuXHQuYXJ0aWNsZS1pbWcge1xyXG4gICAgLyptYXJnaW4tcmlnaHQ6IDAlO1xyXG4gICAgd2lkdGg6IDEwMS41JTsqL1xyXG59XHJcbn1cclxuXHJcblxyXG4ubGFyZ2UtbWFzb25yeSAubGVmdC1jb2x1bW4ge1xyXG5cdC8qcGFkZGluZy1sZWZ0OiBndXR0ZXIoMTgpOyovXHJcblx0LmFydGljbGUtaW1nIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAtMS4yJTtcclxuICAgIHdpZHRoOiAxMDElO1xyXG59XHJcbn1cclxuLmxhcmdlLW1hc29ucnkgLnJpZ2h0LWNvbHVtbiB7XHJcblx0LypwYWRkaW5nLXJpZ2h0OiBndXR0ZXIoMTgpOyovXHJcblx0bWFyZ2luLWxlZnQ6IDAuMSU7XHJcblx0LmFydGljbGUtaW1nIHtcclxuICAgIG1hcmdpbi1yaWdodDogLTEuNSU7XHJcbiAgICB3aWR0aDogMTAxJTtcclxuICAgIFxyXG59XHJcbn1cclxuLmxhcmdlLW1hc29ucnkgLnB1Ymxpa2F0aW9uZW4gLnJpZ2h0LWNvbHVtbiB7XHJcblx0LmFydGljbGUtaW1nIHtcclxuXHRcdHBhZGRpbmctbGVmdDogMjAuNyU7XHJcblx0cGFkZGluZy1yaWdodDogMjAuNyU7XHJcblx0fVxyXG59XHJcbi5sYXJnZS1tYXNvbnJ5IC5wdWJsaWthdGlvbmVuIC5sZWZ0LWNvbHVtbiB7XHJcblx0LmFydGljbGUtaW1nIHtcclxuXHRcdHBhZGRpbmctbGVmdDogMjAuOCU7XHJcblx0cGFkZGluZy1yaWdodDogMjAuNiU7XHJcblx0fVxyXG59XHJcblxyXG4vKiogbWFzb25yeSBsYXlvdXQgXHJcblx0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG4vKiB0b3AgLSBib3R0b20gKi9cclxuXHJcbi5tYXNvbnJ5LFxyXG4ubWFzb25yeTIsXHJcbi5tYXNvbnJ5MyxcclxuLm1hc29ucnk0IHtcclxuXHQ+IGFydGljbGUge1xyXG5cdFx0aDIsXHJcblx0XHQuZWluZnVocnVuZ3N0ZXh0LFxyXG5cdFx0LmJlc2NocmVpYnVuZ3N0ZXh0LFxyXG5cdFx0LnB1YmxpY2F0aW9uLWRldGFpbHMsXHJcblx0XHQucmVsYXRlZC1saW5rcyxcclxuXHRcdFx0IHtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogc3BhbigwLjUpIDtcclxuXHRcdFx0fVxyXG5cdFx0LnByZXNzZSxcclxuXHRcdC5wYXJ0bmVyIHtcclxuXHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdFx0QGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCRsYXJnZSkge1xyXG5cdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogc3BhbigwLjUpIDtcclxuXHRcdH1cclxuXHRcdH1cclxuXHRcdC5hcnRpY2xlLWltZ1xyXG5cdFx0IHtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogc3BhbigwLjc1KSA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cclxuLmFjY29yZGlvbi1jb250ZW50LnBhc3QtcHJvamVjdHMgYXJ0aWNsZSB7XHJcblx0PiBoMixcclxuXHQvKi5iZXNjaHJlaWJ1bmdzdGV4dCovIHtcclxuXHRcdG1hcmdpbi1ib3R0b206IHNwYW4oMC4yNSkgO1xyXG5cdH1cclxufVxyXG5cclxuLyoqIC5yb3cgXHJcblx0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4vKiogLnJvdy5pbnRybyBcclxuXHQtLS0tLS0tLS0tICovXHJcblxyXG4uYWNjb3JkaW9uLWNvbnRlbnQgLnJvdy5pbnRybyB7XHJcblx0bWFyZ2luLWJvdHRvbTogc3BhbigwLjUpO1xyXG5cdH1cclxuXHJcbi8qLmFjY29yZGlvbi1jb250ZW50IC5yb3cuaW50cm8gLmNvbC1sZWZ0IHtcclxuXHRwYWRkaW5nLWxlZnQ6IGd1dHRlcigyMik7XHJcblx0fSovXHJcblxyXG4jYWNjb3JkaW9uIC5pbnRybyAucmVsYXRlZC1saW5rcyB7XHJcblx0bWFyZ2luLXRvcDogZ3V0dGVyKDcpO1xyXG59XHJcblxyXG4vKiogLnJvdy5tYWluIFxyXG5cdC0tLS0tLS0tLSAqL1xyXG5cclxuLnJvdy5tYWluIC5jb250ZW50IHtcclxuXHRtYXJnaW4tYm90dG9tOiBzcGFuKDAuNzUpO1xyXG59XHJcblxyXG4vKiBTbGlkZXIgaW1hZ2UgKi9cclxuLyouYWNjb3JkaW9uLWNvbnRlbnQgLnJvdy5tYWluIC5jb2wtbGVmdCB7XHJcblx0cGFkZGluZy1sZWZ0OiBndXR0ZXIoMjIpO1xyXG5cdH0qL1xyXG4udGVhbS5hY2NvcmRpb24tY29udGVudCAucm93Lm1haW4gLmNvbC1sZWZ0LFxyXG4uenVoYXVzZS5hY2NvcmRpb24tY29udGVudCAucm93Lm1haW4gLmNvbC1sZWZ0IHtcclxuXHRwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcclxuXHR9XHJcblxyXG4uYWNjb3JkaW9uLWNvbnRlbnQgI2J4c2xpZGVyLWltZyB7XHJcblx0bWFyZ2luLWJvdHRvbTogc3BhbigxKTtcclxuXHRtYXJnaW4tbGVmdDogLTAuNSU7XHJcblx0d2lkdGg6IDEwMSU7XHJcblx0QGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCRtZWRpdW0pIHtcclxuXHRcdG1hcmdpbi1sZWZ0OiAtMC43NSU7XHJcblx0fVxyXG59XHJcbi8qLmFjY29yZGlvbi1jb250ZW50LmVuZ2FnZW1lbnQgLnJvdy5tYWluLFxyXG4uYWNjb3JkaW9uLWNvbnRlbnQuY3VycmVudC1wcm9qZWN0IC5yb3cubWFpbiB7XHJcblx0bWFyZ2luLWJvdHRvbTogc3BhbigwLjUpO1xyXG59Ki9cclxuLmFjY29yZGlvbi1jb250ZW50IC5ieC1jb250cm9scyB7XHJcblx0LypwYWRkaW5nLWxlZnQ6IGd1dHRlcigxMSk7Ki9cclxufVxyXG5cclxuLyogSW1hZ2UgKi9cclxuLmFjY29yZGlvbi1jb250ZW50IC5hcnRpY2xlLWltZyB7XHJcblx0bWFyZ2luLWJvdHRvbTogc3BhbigwLjUpO1xyXG59XHJcblxyXG4vKiBDb250ZW50ICovXHJcblxyXG4uYWNjb3JkaW9uLWNvbnRlbnQgLmNvbnRlbnQtaXRlbSB7XHJcblx0bWFyZ2luLWJvdHRvbTogc3BhbigwLjc1KTtcclxufVxyXG4udm9yc3RhbmQgLmNvbnRlbnQtaXRlbSB7XHJcblx0bWFyZ2luLWJvdHRvbTogc3BhbigxKTtcclxufVxyXG5cclxuLyoqIC5yb3cuYXJjaGl2ZVxyXG5cdC0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLyouYWNjb3JkaW9uLWNvbnRlbnQgLnJvdy5hcmNoaXZlIHtcclxuXHRtYXJnaW4tYm90dG9tOiBzcGFuKDAuNzUpO1xyXG59Ki9cclxuXHJcbi8qKiAucm93LnBhcnRuZXJzXHJcblx0LS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLmFjY29yZGlvbi1jb250ZW50IC5yb3cucHJlc3NlLFxyXG4uYWNjb3JkaW9uLWNvbnRlbnQgLnJvdy5wYXJ0bmVycyB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxuXHRAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoJG1lZGl1bSkge1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0bWFyZ2luLWJvdHRvbTogc3BhbigwLjUpO1xyXG5cdC8qcGFkZGluZy1sZWZ0OiBndXR0ZXIoMjIpOyovXHJcbn1cclxufVxyXG5cclxuLyoqIC5yZWxhdGVkLWNvbnRlbnRcclxuXHQtLS0tLS0tLS0tLS0tLS0tICovXHJcbi8qLmFjY29yZGlvbi1jb250ZW50IC5yb3cucmVsYXRlZCAuY29sLWxlZnQge1xyXG5cdHBhZGRpbmctbGVmdDogZ3V0dGVyKDIyKTtcclxuXHR9XHJcbi5hY2NvcmRpb24tY29udGVudCAucm93LnJlbGF0ZWQgLmNvbC1yaWdodCB7XHJcblx0cGFkZGluZy1yaWdodDogZ3V0dGVyKDIyKSAhaW1wb3J0YW50O1xyXG5cdH0qL1xyXG4vKi5yZWxhdGVkLWNvbnRlbnQge1xyXG5cdG1hcmdpbi10b3A6IHNwYW4oMC41KTtcclxufSovXHJcbi5yZWxhdGVkLWNvbnRlbnQgaDMge1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9fYmFja2dyb3VuZC1ib2R5O1xyXG5cdHBhZGRpbmctdG9wOiBndXR0ZXIoMjIpO1xyXG5cdHBhZGRpbmctYm90dG9tOiBndXR0ZXIoMjIpO1xyXG59XHJcbi5yZWxhdGVkLWNvbnRlbnQgLmxpc3QtaXRlbXMge1xyXG5cdHBhZGRpbmctdG9wOiBndXR0ZXIoMjIpO1xyXG5cdHBhZGRpbmctYm90dG9tOiBndXR0ZXIoMjIpO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjM7XHJcbn1cclxuLnJlbGF0ZWQtY29udGVudCBsaSB7XHJcblx0bWFyZ2luLWJvdHRvbTogMDtcclxufVxyXG4ubGFyZ2UtbWFzb25yeSAucmVsYXRlZC1jb250ZW50IC5saXN0LWl0ZW1zIHtcclxuXHRwYWRkaW5nOiAwO1xyXG59XHJcblxyXG4vKiogU2VjdGlvbnMgc3BlY2lmaWNzXHJcblx0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi8qIEluc3RpdHV0ICovXHJcblxyXG4uaW5zdGl0dXQuY29udGVudCB7XHJcblx0bWFyZ2luLWJvdHRvbTogc3BhbigwLjUpO1xyXG59XHJcblxyXG4vKiBUZWFtIC0gVm9yc3RhbmQgc2VjdGlvbiovXHJcbi5hY2NvcmRpb24tY29udGVudCAucm93Lm1haW4gLnZvcnN0YW5kIHtcclxuXHQ+IC5jb250ZW50LWl0ZW0ge1xyXG5cdFx0cGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcbi52b3JzdGFuZCAudm9yc3RlbGx1bmcge1xyXG5cdG1hcmdpbi1ib3R0b206IGd1dHRlcig4KTtcclxufVxyXG4udm9yc3RhbmQgLnJlbGF0ZWQtbGlua3MgaDMge1xyXG5cdG1hcmdpbi10b3A6IGd1dHRlcig0KSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uZW5nYWdlbWVudCAuYmVzY2hyZWlidW5nc3RleHQge1xyXG5cdG1hcmdpbi1ib3R0b206IHNwYW4oMC41KTtcclxufVxyXG5cclxuXHJcbi52b3JzdGFuZCBoMy5zZWN0aW9uLXRpdGxlIHtcclxuXHRtYXJnaW4tYm90dG9tOiAwO1xyXG59XHJcbi52b3JzdGFuZC1pbWcge1xyXG5cdG1hcmdpbi1ib3R0b206IGd1dHRlcig1KTtcclxufVxyXG5cclxuLyogIEFib3V0IC0gVGVhbSAtIFJlbGF0ZWQgKi9cclxuXHJcbi5hY2NvcmRpb24tY29udGVudCAucm93LnJlbGF0ZWQge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcblx0QGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCRsYXJnZSkge1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0bWFyZ2luLXRvcDogc3BhbigwLjUpO1xyXG5cdG1hcmdpbi1ib3R0b206IHNwYW4oMC43NSk7XHJcbn1cclxufVxyXG5cclxuLyogRW5nYWdlbWVudCAtIExpc3RpbmcgKi9cclxuXHJcblxyXG4vKiBFbmdhZ2VtZW50IC0gY29udGVudCBsYXlvdXQgKi9cclxuLmVuZ2FnZW1lbnQgLmFydGljbGUtaW1nIHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4uYWNjb3JkaW9uLWNvbnRlbnQgLmNvbnRlbnQtaXRlbS5lbmdhZ2VtZW50IHtcclxuXHQ+IC5iZXNjaHJlaWJ1bmdzdGV4dCxcclxuXHQucmVsYXRlZC1saW5rcyB7XHJcblx0XHRtYXJnaW4tYm90dG9tOiBzcGFuKDAuNzUpO1xyXG5cdH1cclxufVxyXG5cclxuLyoqL1xyXG4uYWNjb3JkaW9uLWNvbnRlbnQgLnNlY3Rpb24tcmVsYXRlZC1ibG9jayB7XHJcblx0bWFyZ2luLWJvdHRvbTogc3BhbigxLjUpO1xyXG59XHJcblxyXG4vKiBwdWJsaWthdGlvbmVuICovXHJcblxyXG4uYXJ0aWtlbCBhcnRpY2xlLFxyXG4ucHVibGlrYXRpb25lbiBhcnRpY2xlLFxyXG4uc21hbGwtdGhlbWUgYXJ0aWNsZSB7XHJcblx0LnJlbGF0ZWQtY29udGVudCB7XHJcblx0XHRoMyB7XHJcblx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4ucHVibGlrYXRpb25lbiBhcnRpY2xlIC5hcnRpY2xlLWltZ3tcclxuXHRkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLyoqIEFydGlrZWxcclxuXHQtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG4uYXJ0aWtlbCBhcnRpY2xlIC5yZWxhdGVkLWxpbmtzIHtcclxuXHRtYXJnaW4tdG9wOiBndXR0ZXIoNSk7XHJcblx0bWFyZ2luLWJvdHRvbTogZ3V0dGVyKDUpO1xyXG59XHJcbi8qLmFydGlrZWwgYXJ0aWNsZSBoMiB7XHJcblx0Y29sb3I6ICRjb2xvcl9fbGluaztcclxuXHRAaW5jbHVkZSBmb250LXNpemUoMSk7XHJcblx0bWFyZ2luLWJvdHRvbTogMDtcclxufSovXHJcblxyXG5cclxuLyoqIFBhc3QgcGFzdC1wcm9qZWN0c1xyXG5cdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLnBhc3QtcHJvamVjdHMge1xyXG5cdGJhY2tncm91bmQ6ICRjb2xvcl9fYmFja2dyb3VuZC1ib2R5ICFpbXBvcnRhbnQ7XHJcbn0iLCIvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gIEFCT1VUIFBBR0UgXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5cclxuLnBhZ2UtdWJlci1taWNoICNpbWFnZSB7XHJcbiAgbWFyZ2luLWJvdHRvbTogc3BhbigxKTtcclxuICBtYXJnaW4tbGVmdDogLTAuNSU7XHJcbiAgd2lkdGg6IDEwMSU7XHJcbiAgQGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCRtZWRpdW0pIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAtMC43NSU7XHJcbiAgfVxyXG59XHJcblxyXG4ucGFnZS11YmVyLW1pY2ggLnJvdy5tYWluIC5jb250ZW50IHtcclxuICBtYXJnaW4tYm90dG9tOiBzcGFuKDEpO1xyXG59XHJcbi5wYWdlLXViZXItbWljaCAuY29udGVudC1pdGVtIHtcclxuICBtYXJnaW4tYm90dG9tOiBzcGFuKDAuMjUpO1xyXG59IiwiLyogcHJlc3NlIENQVCBhcmNoaXZlIHBhZ2UgICovXHJcblxyXG5cclxuLnBvc3QtdHlwZS1hcmNoaXZlLXByZXNzZSAucHJlc3NlIHtcclxuXHQ+IGFydGljbGUge1xyXG5cdG1hcmdpbi1ib3R0b206IHNwYW4oMC43NSk7XHJcblx0fVxyXG5cdD4gaDMsXHJcblx0LmJlc2NocmVpYnVuZ3N0ZXh0IHtcclxuXHRcdG1hcmdpbi1ib3R0b206IDAuM3JlbTtcclxuXHR9XHJcbn1cclxuIiwiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcclxuICBIT01FIFBBR0UgXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5cclxuLyoqIGhvbWVwYWdlIGxheW91dFxyXG5cdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG4vKi5ob21lICNtYWluIHtcclxuXHRAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoJGxhcmdlKSB7XHJcblx0XHQ+IGRpdiB7XHJcblx0XHRcdC8vIGZyb250LXBhZ2UgLSBsZWZ0IGNvbHVtblxyXG5cdFx0XHQmOm50aC1jaGlsZCgxKSB7XHJcblx0XHRcdFx0QGluY2x1ZGUgc3Bhbig1IG9mIDExKTtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Ly8gZnJvbnQtcGFnZSAtIHJpZ2h0IGNvbHVtblxyXG5cdFx0XHQmOm50aC1jaGlsZCgyKSB7XHJcblx0XHRcdFx0QGluY2x1ZGUgc3Bhbig1IG9mIDExIGxhc3QpO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59Ki9cclxuXHJcbi5ob21lICNtYWluLFxyXG4ucG9zdC10eXBlLWFyY2hpdmUtcHJlc3NlICNtYWluIHtcclxuXHRAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoJGxhcmdlKSB7XHJcblx0XHQuaGFsZi1sZWZ0IHtcclxuXHRcdFx0QGluY2x1ZGUgc3Bhbig1IG9mIDExKTtcclxuXHRcdFx0fVxyXG5cdFx0LmhhbGYtcmlnaHQge1xyXG5cdFx0XHRAaW5jbHVkZSBzcGFuKDUgb2YgMTEgbGFzdCk7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cclxuLyoqIGhvbWVwYWdlIFwic2VjdGlvbnNcIlxyXG5cdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG4uaG9tZSAuc2VjdGlvbiwge1xyXG5cdG1hcmdpbi1ib3R0b206IHNwYW4oMyk7IC8qIDM2JSAqL1xyXG59XHJcblxyXG4uaG9tZSAjYnhzbGlkZXItaW1nIHtcclxuXHRtYXJnaW4tYm90dG9tOiBzcGFuKDEuNSk7IC8qIDEyJSAqL1xyXG59XHJcbi5ob21lICN2b3JzdGVsbHVuZyB7XHJcblx0bWFyZ2luLXRvcDogc3BhbigxLjUpO1xyXG59XHJcblxyXG4uaG9tZSAja29udGFrdCxcclxuLmhvbWUgI3BhcnRuZXIsXHJcbi5ob21lICNuZXdzLWZlZWQge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcblx0QGluY2x1ZGUgc3VzeS1icmVha3BvaW50KCRsYXJnZSkge1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuLmhvbWUgI3B1YmxpY2F0aW9ucyBhcnRpY2xlIHtcclxuXHRtYXJnaW4tYm90dG9tOiBzcGFuKDEpO1xyXG59XHJcblxyXG4vKiogTmV3cyBmZWVkXHJcblx0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuLmhvbWUgI25ld3MtZmVlZCBzZWN0aW9uIHtcclxuXHRtYXJnaW4tYm90dG9tOiBzcGFuKDEpO1xyXG59XHJcblxyXG4vKiogUmVsYXRlZC1saW5rc1xyXG5cdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLmhvbWUgYXJ0aWNsZSAucmVsYXRlZC1saW5rcyxcclxuLmhvbWUgLmJ4c2xpZGVyLWl0ZW0gLnJlbGF0ZWQtbGlua3MsXHJcbi5ob21lICN2b3JzdGVsbHVuZyAucmVsYXRlZC1saW5rcyB7XHJcblx0bWFyZ2luLXRvcDogZ3V0dGVyKDUpO1xyXG59XHJcblxyXG4uaG9tZSAuYnhzbGlkZXIgLnJlbGF0ZWQtbGlua3Mge1xyXG5cdG1hcmdpbi1ib3R0b206IHNwYW4oMSk7XHJcbn1cclxuXHJcblxyXG4vKiogS29udGFrdCBcclxuXHQtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi5ob21lICNrb250YWt0LWhhbmR5IHtcclxuXHRtYXJnaW4tdG9wOiBzcGFuKDAuNSk7XHJcbn0iLCIucGFnZS1pbXByZXNzdW0gI2NvbnRlbnQgLnJvdyB7XHJcblx0PiBkaXYge1xyXG5cdFx0Ly8gbGVmdCBjb2x1bW4gKG1haW4tY29udGVudClcclxuXHRcdCY6bnRoLWNoaWxkKDEpIHtcclxuXHRcdFx0QGluY2x1ZGUgc3Bhbig3IG9mIDExKTtcclxuXHRcdFx0XHJcblx0XHR9XHJcblxyXG5cdFx0Ly8gcmlnaHQgY29sdW1uIChzaWRlYmFyKVxyXG5cdFx0JjpudGgtY2hpbGQoMikge1xyXG5cdFx0XHRAaW5jbHVkZSBzcGFuKDMgb2YgMTEgbGFzdCk7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogZ3V0dGVyKDQ0KTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5wYWdlLWltcHJlc3N1bSBoMi5iaWdnZXIge1xyXG5cdG1hcmdpbi1ib3R0b206IGd1dHRlcigyMikgIWltcG9ydGFudDtcclxuXHRjb2xvcjogJGNvbG9yX19saW5rO1xyXG59XHJcbnAuaW1wcmVzc3VtLWJlc2NocmVpYnVuZyB7XHJcblx0bWFyZ2luLWJvdHRvbTogc3BhbigwLjUpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5wYWdlLWltcHJlc3N1bSAubWFpbi1jb250ZW50IC5zZWN0aW9uLXRpdGxlIHtcclxuXHRtYXJnaW4tYm90dG9tOiBndXR0ZXIoMjIpICFpbXBvcnRhbnQ7XHJcbn1cclxuLmltcHJlc3N1bSB7XHJcblx0bWFyZ2luLXRvcDogc3BhbigwLjUpO1xyXG59XHJcbi8qLnBhZ2UtaW1wcmVzc3VtICNjb250ZW50IHtcclxuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJpbWFnZXMvaWRfMjJfbG9nb19ncsO8bi5zdmdcIik7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gODglO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA5JSA1MCU7XHJcbiBcclxuXHJcbn0qLyIsInVsLmtvbnRha3Qge1xyXG5cdGNvbG9yOiAkY29sb3JfX2xpbms7XHJcbn1cclxuXHJcbi8qKiBjb250YWN0IHBhZ2UgbGF5b3V0XHJcblx0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4ucGFnZS1rb250YWt0ICNtYWluIHtcclxuXHRAaW5jbHVkZSBzdXN5LWJyZWFrcG9pbnQoJGxhcmdlKSB7XHJcblx0XHQ+IGRpdiB7XHJcblx0XHRcdC8vIGZyb250LXBhZ2UgLSBsZWZ0IGNvbHVtblxyXG5cdFx0XHQmOm50aC1jaGlsZCgxKSB7XHJcblx0XHRcdFx0QGluY2x1ZGUgc3Bhbig1IG9mIDExKTtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Ly8gZnJvbnQtcGFnZSAtIHJpZ2h0IGNvbHVtblxyXG5cdFx0XHQmOm50aC1jaGlsZCgyKSB7XHJcblx0XHRcdFx0QGluY2x1ZGUgc3Bhbig1IG9mIDExIGxhc3QpO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59Il0sInNvdXJjZVJvb3QiOiIvc291cmNlLyJ9 */