﻿html{box-sizing:border-box}*,*::after,*::before{box-sizing:inherit}#page_top{animation:cloak-in 0.75s}body{-webkit-font-smoothing:antialiased}.display_flex_center{display:flex;justify-content:space-between;align-items:center}.display_flex_stretch{display:flex;flex-wrap:wrap;justify-content:space-between}.display_flex_stretch_bottom{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end}.display_flex_center_bottom{display:flex;justify-content:space-between;align-items:center;align-items:flex-end}.display_flex{display:flex;flex-wrap:wrap;justify-content:space-between}.display_row{flex-flow:row wrap}.formMain{font-family:游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;color:#444444;font-weight:500}.formMain img{width:100%;height:auto}@media screen and (min-width: 1201px){.formMain{font-size:16px}}@media print, screen and (max-width: 1200px){.formMain{font-size:1.6016vw}}@media screen and (max-width: 768px){.formMain{font-size:3.73333vw}}.formMain input,.formMain textarea,.formMain select,.formMain button{font-family:游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;font-weight:500}@media screen and (min-width: 1201px){.formMain input,.formMain textarea,.formMain select,.formMain button{font-size:16px}}@media print, screen and (max-width: 1200px){.formMain input,.formMain textarea,.formMain select,.formMain button{font-size:1.6016vw}}@media screen and (max-width: 768px){.formMain input,.formMain textarea,.formMain select,.formMain button{font-size:3.73333vw}}.formMain h1,.formMain h2,.formMain h3,.formMain h4,.formMain h5,.formMain h6,.formMain p{line-height:1;font-weight:500;display:block}#mintyou,.mintyou{font-family:游明朝 ,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS 明朝 E,Meiryo,serif}.tj{text-indent:-9999px;text-align:left;overflow:hidden;display:block;font-size:0.1em}@media screen and (min-width: 1201px){.wapper{width:1201px;margin-left:auto;margin-right:auto}}@media print, screen and (max-width: 1200px){.wapper{width:98%;margin-left:auto;margin-right:auto}}@media screen and (max-width: 768px){.wapper{width:100%;margin-left:auto;margin-right:auto}}ul,li,dd,dt,dh{list-style:none}svg{display:block}@media print, screen and (max-width: 1200px){.pc_only{display:block}}@media screen and (min-width: 1201px){.pc_only{display:block}}@media screen and (max-width: 768px){.pc_only{display:none}}@media screen and (min-width: 1201px){.sp_only{display:none}}@media print, screen and (max-width: 1200px){.sp_only{display:none}}@media screen and (max-width: 768px){.sp_only{display:block}}.t_center{text-align:center}.pc_order_0{order:0}@media screen and (max-width: 768px){.pc_order_0{order:unset}}.fw_0{font-wieght:0}.pc_order_1{order:1}@media screen and (max-width: 768px){.pc_order_1{order:unset}}.fw_100{font-wieght:100}.pc_order_2{order:2}@media screen and (max-width: 768px){.pc_order_2{order:unset}}.fw_200{font-wieght:200}.pc_order_3{order:3}@media screen and (max-width: 768px){.pc_order_3{order:unset}}.fw_300{font-wieght:300}.pc_order_4{order:4}@media screen and (max-width: 768px){.pc_order_4{order:unset}}.fw_400{font-wieght:400}.pc_order_5{order:5}@media screen and (max-width: 768px){.pc_order_5{order:unset}}.fw_500{font-wieght:500}.pc_order_6{order:6}@media screen and (max-width: 768px){.pc_order_6{order:unset}}.fw_600{font-wieght:600}.pc_order_7{order:7}@media screen and (max-width: 768px){.pc_order_7{order:unset}}.fw_700{font-wieght:700}.pc_order_8{order:8}@media screen and (max-width: 768px){.pc_order_8{order:unset}}.fw_800{font-wieght:800}.text_justify{text-align:justify;text-justify:inter-ideograph}.d_flex{display:flex}.d_block{display:block}.d_none{display:none}.d_contents{display:contents}.d_inline{display:inline}.d_grid{display:grid}.d_inlineBlock{display:inline-block}.d_inlineFlex{display:inline-flex}.d_inlineTable{display:inline-table}.j_between{justify-content:space-between}.j_start{justify-content:flex-start}.j_end{justify-content:flex-end}.j_center{justify-content:center}.j_around{justify-content:space-around}.j_baseline{justify-content:space-baseline}.j_firstBaseline{justify-content:first baseline}.j_firstBaseline{justify-content:last baseline}.j_left{justify-content:left}.j_right{justify-content:right}.j_safe{justify-content:safe}.ali_baseline{align-items:baseline}.ali_center{align-items:center}.ali_end{align-items:flex-end}.ali_start{align-items:flex-start}.ali_stretch{align-items:stretch}.ali_unset{align-items:unset}.alc_center{align-content:center}.alc_end{align-content:flex-end}.alc_around{align-content:space-around}.alc_between{align-content:space-between}.alc_stretch{align-content:stretch}.alc_unset{align-content:unset}.row{flex-flow:row wrap}.posti{position:sticky}.posta{position:static}.pore{position:relative}.poab{position:absolute}.pofix{position:fixed}html{box-sizing:border-box}*,*::after,*::before{box-sizing:inherit}.bg_FF92B0{background:#FF92B0}.bg_32C9E9{background:#32C9E9}.cl_fff{color:#FFF}.bg_4A756F{background:#4A756F}.bg_F6F6F6{background:#F6F6F6}.formTable .tdFormTable{width:76%}@media screen and (max-width: 768px){.formTable .tdFormTable{padding-top:14px;padding-bottom:25px;padding-left:0px;padding-right:0px;display:block;width:100%}}@media screen and (max-width: 768px) and (max-width: 1200px){.formTable .tdFormTable{padding:1.4% 0% 2.5% 0%}}.readPrivacyComfirm{display:none}.confirmBtmFx{width:81%;margin-top:64px;margin-bottom:0px;margin-left:auto;margin-right:auto}@media print, screen and (max-width: 1200px){.confirmBtmFx{margin-top:6.4%;margin-bottom:0%;margin-left:auto;margin-right:auto}}@media screen and (max-width: 768px){.confirmBtmFx{width:94.02%;margin-top:8%}}.backButtonWap{width:48.14%}@media screen and (max-width: 768px){.backButtonWap{width:100%}}.backButton{cursor:pointer;border:1px solid #4A756F;color:#4A756F;border-radius:4px;-webkit-border-radius:4px;-moz-border-radius:4px;overflow:hidden;display:inline-block;text-align:center;text-decoration:none;outline:none;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:all .3s;transition:all .3s;background-color:#fff;border:1px solid #4A756F;color:#4A756F;display:block;background-image:url(../img/backButtonArrow.svg);background-size:auto 38%;background-position:center left 6%;background-repeat:no-repeat;height:70px;width:100%;display:flex;justify-content:center;align-items:center;padding-top:0px;padding-bottom:0px;padding-left:21px;padding-right:0px}.backButton::before{position:absolute;z-index:-1;display:block;content:'';-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:all .3s;transition:all .3s}.backButton::after{position:absolute;z-index:-1;display:block;content:'';-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:all .3s;transition:all .3s}.backButton:hover{background-color:#4A756F;border-color:#4A756F;color:#fff}@media print, screen and (max-width: 1200px){.backButton{padding:0% 0% 0% 2.1%}}@media screen and (max-width: 768px){.backButton{height:17.06667vw;background-position:center left 7%}}.backButton:hover{background-image:url(../img/wh_arrow_left.svg);background-size:auto 38%;background-position:center left 6%;background-repeat:no-repeat}@media screen and (max-width: 768px){.backButton:hover{background-position:center left 7%}}.backButtonWap button.backButton{font-weight:600;padding:0}@media screen and (min-width: 1201px){.backButtonWap button.backButton{font-size:16px}}@media print, screen and (max-width: 1200px){.backButtonWap button.backButton{font-size:1.6016vw}}@media screen and (max-width: 768px){.backButtonWap button.backButton{font-size:4vw}}.submitButtonWap{width:48.14%}@media screen and (max-width: 768px){.submitButtonWap{width:100%;margin-top:5.77%;margin-bottom:0%;margin-left:auto;margin-right:auto}}.sendButton{cursor:pointer;border:none;color:#FFF;border-radius:4px;-webkit-border-radius:4px;-moz-border-radius:4px;overflow:hidden;display:inline-block;text-align:center;text-decoration:none;outline:none;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:all .3s;transition:all .3s;background-color:#4A756F;border:1px solid #4A756F;color:#fff;display:block;background-image:url(../img/wh_arrow.svg);background-size:auto 38%;background-position:center right 5%;background-repeat:no-repeat;height:70px;width:100%;display:flex;justify-content:center;align-items:center}.sendButton::before{position:absolute;z-index:-1;display:block;content:'';-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:all .3s;transition:all .3s}.sendButton::after{position:absolute;z-index:-1;display:block;content:'';-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:all .3s;transition:all .3s}.sendButton:hover{background-color:#333;border-color:#333;color:#fff}@media screen and (max-width: 768px){.sendButton{height:17.06667vw;background-position:center right 6%}}button.sendButton{font-weight:600}@media screen and (min-width: 1201px){button.sendButton{font-size:16px}}@media print, screen and (max-width: 1200px){button.sendButton{font-size:1.6016vw}}@media screen and (max-width: 768px){button.sendButton{font-size:4vw}}.nowConfrim.formCnt{margin-top:80px;margin-bottom:0px;margin-left:auto;margin-right:auto}@media print, screen and (max-width: 1200px){.nowConfrim.formCnt{margin-top:8%;margin-bottom:0%;margin-left:auto;margin-right:auto}}@media screen and (max-width: 768px){.nowConfrim.formCnt{margin-top:16.5%}}.nowConfrim .nowConfrim.formCnt th.thformTable.thformTable01{padding-top:20px;padding-bottom:0px;padding-left:20px;padding-right:0px}@media print, screen and (max-width: 1200px){.nowConfrim .nowConfrim.formCnt th.thformTable.thformTable01{padding:2% 0% 0% 2%}}@media screen and (max-width: 768px){.nowConfrim .nowConfrim.formCnt th.thformTable.thformTable01{padding:2.98% 0% 0.17% 0%}}.nowConfrim.formCnt .thformTable_nichiji{padding:1.3% 0 0 0%}@media screen and (max-width: 768px){.nowConfrim.formCnt .thformTable_nichiji{padding:2.98% 0% 0.17% 0%}}.nowConfrim.formCnt .thformTable_textarea{padding-top:20px;padding-bottom:0px;padding-left:20px;padding-right:0px}@media print, screen and (max-width: 1200px){.nowConfrim.formCnt .thformTable_textarea{padding:2% 0% 0% 2%}}@media screen and (max-width: 768px){.nowConfrim.formCnt .thformTable_textarea{padding:2.98% 0% 0.17% 0%}}.nowConfrim .formTable{margin-top:42px;margin-bottom:0px;margin-left:auto;margin-right:auto}@media print, screen and (max-width: 1200px){.nowConfrim .formTable{margin-top:4.2%;margin-bottom:0%;margin-left:auto;margin-right:auto}}@media screen and (max-width: 768px){.nowConfrim .formTable{margin:8.8% auto 0 auto}}.nowConfrim .formDetailSubdivisionKengaku{margin-top:42px;margin-bottom:0px;margin-left:auto;margin-right:auto}@media print, screen and (max-width: 1200px){.nowConfrim .formDetailSubdivisionKengaku{margin-top:4.2%;margin-bottom:0%;margin-left:auto;margin-right:auto}}@media screen and (max-width: 768px){.nowConfrim .formDetailSubdivisionKengaku{margin:8% auto 0 auto}}.nowConfrim .formDetailSubdivision{margin-top:42px;margin-bottom:0px;margin-left:auto;margin-right:auto}@media print, screen and (max-width: 1200px){.nowConfrim .formDetailSubdivision{margin-top:4.2%;margin-bottom:0%;margin-left:auto;margin-right:auto}}@media screen and (max-width: 768px){.nowConfrim .formDetailSubdivision{margin:11.5% auto 0 auto}}.nowConfrim .userForm{margin-top:42px;margin-bottom:0px;margin-left:auto;margin-right:auto}@media print, screen and (max-width: 1200px){.nowConfrim .userForm{margin-top:4.2%;margin-bottom:0%;margin-left:auto;margin-right:auto}}@media screen and (max-width: 768px){.nowConfrim .userForm{margin:11.5% auto 0 auto}}.nowConfrim .formTable td.tdformTable,.nowConfrim .formTable td.tdFormTable{padding-top:10.84px;padding-bottom:10.85px;padding-left:30px;padding-right:0px}@media print, screen and (max-width: 1200px){.nowConfrim .formTable td.tdformTable,.nowConfrim .formTable td.tdFormTable{padding:1.08% 0% 1.08% 3%}}@media screen and (min-width: 1201px){.nowConfrim .formTable td.tdformTable,.nowConfrim .formTable td.tdFormTable{font-size:15px}}@media print, screen and (max-width: 1200px){.nowConfrim .formTable td.tdformTable,.nowConfrim .formTable td.tdFormTable{font-size:1.5015vw}}@media screen and (max-width: 768px){.nowConfrim .formTable td.tdformTable,.nowConfrim .formTable td.tdFormTable{font-size:3.73333vw}}@media screen and (max-width: 768px){.nowConfrim .formTable td.tdformTable,.nowConfrim .formTable td.tdFormTable{padding:7% 0% 7.3% 0%}}@media screen and (max-width: 768px){.formTop p.txtformTopThanks{margin-top:8.9%}}.thanksButton{width:32.5%;margin-top:80px;margin-bottom:0px;margin-left:auto;margin-right:auto}@media print, screen and (max-width: 1200px){.thanksButton{margin-top:8%;margin-bottom:0%;margin-left:auto;margin-right:auto}}@media screen and (max-width: 768px){.thanksButton{width:93.46%;margin-top:16.83%}}.thanksButton a{padding-top:2px;padding-bottom:0px;padding-left:0px;padding-right:0px;border-radius:5px;cursor:pointer;border:none;color:#FFF;font-weight:600;overflow:hidden;display:inline-block;text-align:center;text-decoration:none;outline:none;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:all .3s;transition:all .3s;background-color:#4A756F;border:1px solid #4A756F;color:#fff;display:block;background-image:url(../img/wh_arrow.svg);background-size:auto 38%;background-position:center right 5%;background-repeat:no-repeat;height:70px;width:100%;display:flex;justify-content:center;align-items:center}@media print, screen and (max-width: 1200px){.thanksButton a{padding:.2% 0% 0% 0%}}@media screen and (min-width: 1201px){.thanksButton a{font-size:16px}}@media print, screen and (max-width: 1200px){.thanksButton a{font-size:1.6016vw}}@media screen and (max-width: 768px){.thanksButton a{font-size:4vw}}.thanksButton a::before{position:absolute;z-index:-1;display:block;content:'';-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:all .3s;transition:all .3s}.thanksButton a::after{position:absolute;z-index:-1;display:block;content:'';-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:all .3s;transition:all .3s}.thanksButton a:hover{background-color:#333;border-color:#333;color:#fff}@media screen and (max-width: 768px){.thanksButton a{height:17.06667vw;background-position:center right 6%}}.inqeryFvBtm{padding-top:16px;padding-bottom:16px;padding-left:0px;padding-right:0px}@media print, screen and (max-width: 1200px){.inqeryFvBtm{padding:1.6% 0% 1.6% 0%}}@media screen and (max-width: 768px){.inqeryFvBtm{padding:5.33% 0% 4.33% 0%}}.inqeryFvBtmWap{width:1007px;margin:auto}@media print, screen and (max-width: 1200px){.inqeryFvBtmWap{width:83.91%}}@media screen and (max-width: 768px){.inqeryFvBtmWap{width:89.33%}}.h2inqeryFvBtm{padding-top:6px;padding-bottom:6px;padding-left:0px;padding-right:0px}@media print, screen and (max-width: 1200px){.h2inqeryFvBtm{padding:.6% 0% .6% 0%}}@media screen and (max-width: 768px){.h2inqeryFvBtm{padding:1.49% 0% 0.8% 0%}}.txtinqeryFvBtm{width:91.95%;line-height:1.7}@media screen and (min-width: 1201px){.txtinqeryFvBtm{font-size:13px}}@media print, screen and (max-width: 1200px){.txtinqeryFvBtm{font-size:1.3013vw}}@media screen and (max-width: 768px){.txtinqeryFvBtm{font-size:2.93333vw}}@media screen and (max-width: 768px){.txtinqeryFvBtm{margin-top:3.5%;margin-bottom:0%;margin-left:auto;margin-right:auto;width:100%}}.formMain{margin-top:129px;margin-bottom:0px;margin-left:auto;margin-right:auto}@media print, screen and (max-width: 1200px){.formMain{margin-top:6.71%;margin-bottom:0%;margin-left:auto;margin-right:auto}}@media screen and (max-width: 768px){.formMain{margin-top:15.1%;margin-bottom:0%;margin-left:auto;margin-right:auto}}.formWap{width:83.33%;margin:auto}@media screen and (max-width: 768px){.formWap{width:89.33%;margin-top:0px;margin-bottom:0px;margin-left:auto;margin-right:auto}}@media screen and (max-width: 768px) and (max-width: 1200px){.formWap{margin-top:0%;margin-bottom:0%;margin-left:auto;margin-right:auto}}.formTop{width:100%}h1.h1formTop{font-weight:400}@media screen and (min-width: 1201px){h1.h1formTop{font-size:30px}}@media print, screen and (max-width: 1200px){h1.h1formTop{font-size:3.003vw}}@media screen and (max-width: 768px){h1.h1formTop{font-size:6.4vw}}p.txtformTop{line-height:1.6;margin-top:54px;margin-bottom:0px;margin-left:auto;margin-right:auto}@media screen and (min-width: 1201px){p.txtformTop{font-size:15px}}@media print, screen and (max-width: 1200px){p.txtformTop{font-size:1.5015vw}}@media screen and (max-width: 768px){p.txtformTop{font-size:3.2vw}}p.txtformTop::before{display:block;width:0;height:0;margin-top:calc((1 - 1.6) * .5em);content:""}p.txtformTop::after{display:block;width:0;height:0;margin-bottom:calc((1 - 1.6) * .5em);content:""}@media print, screen and (max-width: 1200px){p.txtformTop{margin-top:5.4%;margin-bottom:0%;margin-left:auto;margin-right:auto}}@media screen and (max-width: 768px){p.txtformTop{text-align:center;line-height:1.58333;margin-top:9%;margin-bottom:0%;margin-left:auto;margin-right:auto}p.txtformTop::before{display:block;width:0;height:0;margin-top:calc((1 - 1.58333) * .5em);content:""}p.txtformTop::after{display:block;width:0;height:0;margin-bottom:calc((1 - 1.58333) * .5em);content:""}}p.txtformTopThanks{margin-top:53px;margin-bottom:0px;margin-left:auto;margin-right:auto}@media print, screen and (max-width: 1200px){p.txtformTopThanks{margin-top:5.3%;margin-bottom:0%;margin-left:auto;margin-right:auto}}@media screen and (max-width: 768px){p.txtformTopThanks{margin-top:21.7%}}.PicformStep{width:36.7%;margin-top:59px;margin-bottom:0px;margin-left:auto;margin-right:auto}@media print, screen and (max-width: 1200px){.PicformStep{margin-top:5.9%;margin-bottom:0%;margin-left:auto;margin-right:auto}}@media screen and (max-width: 768px){.PicformStep{width:82.08%;margin-top:12.94%;margin-bottom:0%;margin-left:auto;margin-right:auto}}.PicformStep img{display:block;height:auto;width:100%}.formCnt{margin-top:84px;margin-bottom:0px;margin-left:auto;margin-right:auto}@media print, screen and (max-width: 1200px){.formCnt{margin-top:8.4%;margin-bottom:0%;margin-left:auto;margin-right:auto}}@media screen and (max-width: 768px){.formCnt{margin-top:17.9%;margin-bottom:0%;margin-left:auto;margin-right:auto}}.secFormDetailSubdivision{border-left:5px solid #00758E;padding-top:0px;padding-bottom:0px;padding-left:18px;padding-right:0px}@media print, screen and (max-width: 1200px){.secFormDetailSubdivision{padding:0% 0% 0% 1.8%}}@media screen and (max-width: 768px){.secFormDetailSubdivision{padding-top:2px;padding-bottom:2px;padding-left:10px;padding-right:0px}}@media screen and (max-width: 768px) and (max-width: 1200px){.secFormDetailSubdivision{padding:.53% 0% .53% 2.66%}}.formMain .h2secFormDetailSubdivision{font-weight:600;line-height:1.6}@media screen and (min-width: 1201px){.formMain .h2secFormDetailSubdivision{font-size:24px}}@media print, screen and (max-width: 1200px){.formMain .h2secFormDetailSubdivision{font-size:2.4024vw}}@media screen and (max-width: 768px){.formMain .h2secFormDetailSubdivision{font-size:5.33333vw}}.formMain .txtsecFormDetailSubdivision{margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;line-height:1.6}@media print, screen and (max-width: 1200px){.formMain .txtsecFormDetailSubdivision{margin:0% 0% 0% 0%}}@media screen and (min-width: 1201px){.formMain .txtsecFormDetailSubdivision{font-size:15px}}@media print, screen and (max-width: 1200px){.formMain .txtsecFormDetailSubdivision{font-size:1.5015vw}}@media screen and (max-width: 768px){.formMain .txtsecFormDetailSubdivision{font-size:3.2vw}}@media screen and (max-width: 768px){.formMain .txtsecFormDetailSubdivision{margin-top:4px;margin-bottom:0px;margin-left:0px;margin-right:0px}}@media screen and (max-width: 768px) and (max-width: 1200px){.formMain .txtsecFormDetailSubdivision{margin:1.06% 0% 0% 0%}}.formTable.formTable01{margin-top:42px;margin-bottom:0px;margin-left:auto;margin-right:auto;width:100%}@media print, screen and (max-width: 1200px){.formTable.formTable01{margin-top:4.2%;margin-bottom:0%;margin-left:auto;margin-right:auto}}@media screen and (max-width: 768px){.formTable.formTable01{margin-top:8.7%;margin-bottom:0%;margin-left:auto;margin-right:auto;display:block;width:91.04%}}.formTable{margin-top:50px;margin-bottom:0px;margin-left:auto;margin-right:auto;width:100%}@media print, screen and (max-width: 1200px){.formTable{margin-top:5%;margin-bottom:0%;margin-left:auto;margin-right:auto}}@media screen and (max-width: 768px){.formTable{margin:9% auto 0 auto;display:block;width:91.04%}}.formMain .thformTable{vertical-align:middle;width:26.1%;padding-top:0px;padding-bottom:0px;padding-left:20px;padding-right:0px}@media print, screen and (max-width: 1200px){.formMain .thformTable{padding:0% 0% 0% 2%}}@media print, screen and (max-width: 1200px){.formMain .thformTable{width:28.1%}}@media screen and (max-width: 768px){.formMain .thformTable{width:100%;display:block;padding:1.39% 0% 1.4% 0%;vertical-align:middle}}.formMain .thformTable_textarea{padding-top:27px;padding-bottom:0px;padding-left:20px;padding-right:0px;vertical-align:top}@media print, screen and (max-width: 1200px){.formMain .thformTable_textarea{padding:2.7% 0% 0% 2%}}@media screen and (max-width: 768px){.formMain .thformTable_textarea{padding:1.76% 0% 1% 0%}}h3.h3formTableFx{line-height:1.625;font-weight:600}@media screen and (min-width: 1201px){h3.h3formTableFx{font-size:16px}}@media print, screen and (max-width: 1200px){h3.h3formTableFx{font-size:1.6016vw}}@media screen and (max-width: 768px){h3.h3formTableFx{font-size:3.73333vw}}h3.h3formTableFx::before{display:block;width:0;height:0;margin-top:calc((1 - 1.625) * .5em);content:""}h3.h3formTableFx::after{display:block;width:0;height:0;margin-bottom:calc((1 - 1.625) * .5em);content:""}@media screen and (max-width: 768px){.formMain tbody,.formMain tr{display:block;width:100%}}.formMain .hissuformTableFx{width:17.62%;height:22px;display:flex;justify-content:center;align-items:center;border-radius:3px;-webkit-border-radius:3px;-moz-border-radius:3px;line-height:1.08333;letter-spacing:0.05em;font-weight:600;color:#FFF;background:#FF92B0}@media screen and (min-width: 1201px){.formMain .hissuformTableFx{font-size:12px}}@media print, screen and (max-width: 1200px){.formMain .hissuformTableFx{font-size:1.2012vw}}@media screen and (max-width: 768px){.formMain .hissuformTableFx{font-size:3.2vw}}.formMain .hissuformTableFx::before{display:block;width:0;height:0;margin-top:calc((1 - 1.08333) * .5em);content:""}.formMain .hissuformTableFx::after{display:block;width:0;height:0;margin-bottom:calc((1 - 1.08333) * .5em);content:""}@media screen and (max-width: 768px){.formMain .hissuformTableFx{width:13.83%;height:5.86667vw}}.formMain .niniformTableFx{width:17.62%;height:22px;display:flex;justify-content:center;align-items:center;border-radius:3px;-webkit-border-radius:3px;-moz-border-radius:3px;line-height:1.08333;letter-spacing:0.05em;font-weight:600;color:#FFF;background:#32C9E9}@media screen and (min-width: 1201px){.formMain .niniformTableFx{font-size:12px}}@media print, screen and (max-width: 1200px){.formMain .niniformTableFx{font-size:1.2012vw}}@media screen and (max-width: 768px){.formMain .niniformTableFx{font-size:3.2vw}}.formMain .niniformTableFx::before{display:block;width:0;height:0;margin-top:calc((1 - 1.08333) * .5em);content:""}.formMain .niniformTableFx::after{display:block;width:0;height:0;margin-bottom:calc((1 - 1.08333) * .5em);content:""}@media screen and (max-width: 768px){.formMain .niniformTableFx{width:13.83%;height:5.86667vw}}.formMain .tdformTable{width:76%;padding-top:10px;padding-bottom:10px;padding-left:30px;padding-right:0px;line-height:2}@media print, screen and (max-width: 1200px){.formMain .tdformTable{padding:1% 0% 1% 3%}}.formMain .tdformTable::before{display:block;width:0;height:0;margin-top:calc((1 - 2) * .5em);content:""}.formMain .tdformTable::after{display:block;width:0;height:0;margin-bottom:calc((1 - 2) * .5em);content:""}@media screen and (max-width: 768px){.formMain .tdformTable{padding:3.2% 0% 3.1% 0%;display:block;width:100%}}.tdformTable.tdformTable_radio{padding-top:15px;padding-bottom:15px;padding-left:30px;padding-right:0px}@media print, screen and (max-width: 1200px){.tdformTable.tdformTable_radio{padding:1.5% 0% 1.5% 3%}}@media screen and (max-width: 768px){.tdformTable.tdformTable_radio{padding:3.2% 0% 3.5% 0%}}.formMain .tdformTable:before,.formMain .tdformTable input:before,.formMain .tdformTable:after,.formMain .tdformTable input:after{display:none}::placeholder{color:#B0B0B0}.formSubdivisionGenre{width:100%}.titleFormSubdivision{border-bottom:1px solid #DEDEDE;aspect-ratio:1000/62;padding-top:0px;padding-bottom:0px;padding-left:20px;padding-right:20px}@media print, screen and (max-width: 1200px){.titleFormSubdivision{padding:0% 2% 0% 2%}}@media screen and (max-width: 768px){.titleFormSubdivision{display:block;aspect-ratio:335/62;padding:4.3% 4.47% 3.4% 4.47%}}h3.h3titleFormSubdivision{font-weight:700;margin-top:3px;margin-bottom:0px;margin-left:0px;margin-right:0px}@media screen and (min-width: 1201px){h3.h3titleFormSubdivision{font-size:18px}}@media print, screen and (max-width: 1200px){h3.h3titleFormSubdivision{font-size:1.8018vw}}@media screen and (max-width: 768px){h3.h3titleFormSubdivision{font-size:4vw}}@media print, screen and (max-width: 1200px){h3.h3titleFormSubdivision{margin:.3% 0% 0% 0%}}@media screen and (max-width: 768px){h3.h3titleFormSubdivision{width:100%}}.txttitleFormSubdivision{margin-top:0px;margin-bottom:0px;margin-left:30px;margin-right:0px}@media screen and (min-width: 1201px){.txttitleFormSubdivision{font-size:14px}}@media print, screen and (max-width: 1200px){.txttitleFormSubdivision{font-size:1.4014vw}}@media screen and (max-width: 768px){.txttitleFormSubdivision{font-size:3.2vw}}@media print, screen and (max-width: 1200px){.txttitleFormSubdivision{margin:0% 0% 0% 3%}}@media screen and (max-width: 768px){.txttitleFormSubdivision{width:100%;margin:2.3% 0% 0% 0%}}.liRadioFormTable{font-weight:600}@media screen and (min-width: 1201px){.liRadioFormTable{font-size:17px}}@media print, screen and (max-width: 1200px){.liRadioFormTable{font-size:1.7017vw}}@media screen and (max-width: 768px){.liRadioFormTable{font-size:3.73333vw}}.liRadioFormTable:nth-child(2){margin-top:8px;margin-bottom:0px;margin-left:0px;margin-right:0px}@media print, screen and (max-width: 1200px){.liRadioFormTable:nth-child(2){margin:.8% 0% 0% 0%}}@media screen and (max-width: 768px){.liRadioFormTable:nth-child(2){margin-top:10px;margin-bottom:0px;margin-left:0px;margin-right:0px}}@media screen and (max-width: 768px) and (max-width: 1200px){.liRadioFormTable:nth-child(2){margin:2.98% 0% 0% 0%}}.liGenreFormTable{margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:36px}@media screen and (min-width: 1201px){.liGenreFormTable{font-size:15px}}@media print, screen and (max-width: 1200px){.liGenreFormTable{font-size:1.5015vw}}@media screen and (max-width: 768px){.liGenreFormTable{font-size:3.73333vw}}@media print, screen and (max-width: 1200px){.liGenreFormTable{margin:0% 3.6% 0% 0%}}@media print, screen and (max-width: 1200px){.liGenreFormTable{width:25%}}@media screen and (max-width: 768px){.liGenreFormTable{width:43.5%;margin:0}}.formMain input.checkboxGenreFormTable,.formMain textarea,.formMain select,.formMain button{margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:6px}@media print, screen and (max-width: 1200px){.formMain input.checkboxGenreFormTable,.formMain textarea,.formMain select,.formMain button{margin:0% .6% 0% 0%}}@media screen and (max-width: 768px){.formMain input.checkboxGenreFormTable,.formMain textarea,.formMain select,.formMain button{margin:0% 1% 0% 0%}}.formMain input.chackReadPrivacy,.formMain textarea,.formMain select,.formMain button{margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:16px}@media print, screen and (max-width: 1200px){.formMain input.chackReadPrivacy,.formMain textarea,.formMain select,.formMain button{margin:0% 1.6% 0% 0%}}@media screen and (max-width: 768px){.formMain input.chackReadPrivacy,.formMain textarea,.formMain select,.formMain button{margin:0% 3.6% 0% 0%}}.txtGenreFormTable{letter-spacing:0.01em;font-feature-settings:"palt";margin-top:18px;margin-bottom:0px;margin-left:0px;margin-right:0px}@media screen and (min-width: 1201px){.txtGenreFormTable{font-size:14px}}@media print, screen and (max-width: 1200px){.txtGenreFormTable{font-size:1.4014vw}}@media screen and (max-width: 768px){.txtGenreFormTable{font-size:3.2vw}}@media print, screen and (max-width: 1200px){.txtGenreFormTable{margin:1.8% 0% 0% 0%}}@media screen and (max-width: 768px){.txtGenreFormTable{font-feature-settings:unset;margin-top:8px;margin-bottom:0px;margin-left:0px;margin-right:0px}}@media screen and (max-width: 768px) and (max-width: 1200px){.txtGenreFormTable{margin:2.38% 0% 0% 0%}}th.thformTable.thformTable01{padding-top:20px;padding-bottom:0px;padding-left:20px;padding-right:0px;vertical-align:top}@media print, screen and (max-width: 1200px){th.thformTable.thformTable01{padding:2% 0% 0% 2%}}@media screen and (max-width: 768px){th.thformTable.thformTable01{padding:4.98% 0% 5.17% 0%}}.form_err{margin-top:80px;margin-bottom:0px;margin-left:0px;margin-right:0px}@media print, screen and (max-width: 1200px){.form_err{margin:8% 0% 0% 0%}}@media screen and (max-width: 768px){.form_err{margin-top:70px;margin-bottom:0px;margin-left:0px;margin-right:0px}}@media screen and (max-width: 768px) and (max-width: 1200px){.form_err{margin:20.89% 0% 0% 0%}}.li_form_err{text-align:center;color:#FF0000}@media screen and (min-width: 1201px){.li_form_err{font-size:16px}}@media print, screen and (max-width: 1200px){.li_form_err{font-size:1.6016vw}}@media screen and (max-width: 768px){.li_form_err{font-size:3.73333vw}}.formDetailSubdivisionKengaku{margin-top:48px;margin-bottom:0px;margin-left:auto;margin-right:auto}@media print, screen and (max-width: 1200px){.formDetailSubdivisionKengaku{margin-top:4.8%;margin-bottom:0%;margin-left:auto;margin-right:auto}}@media screen and (max-width: 768px){.formDetailSubdivisionKengaku{margin:11.1% auto 0 auto}}.formDetailSubdivisionKengaku .tdFormTableSelectLxc{width:48.17%}@media screen and (max-width: 768px){.formDetailSubdivisionKengaku .tdFormTableSelectLxc{width:48.05%}}.tdFormTableSelectWap{width:75%}@media screen and (min-width: 1201px){.tdFormTableSelectWap{font-size:15px}}@media print, screen and (max-width: 1200px){.tdFormTableSelectWap{font-size:1.5015vw}}@media screen and (max-width: 768px){.tdFormTableSelectWap{font-size:3.73333vw}}@media screen and (max-width: 768px){.tdFormTableSelectWap{width:100%}}.tdFormTableSelectLxc{width:48.17%}@media screen and (max-width: 768px){.tdFormTableSelectLxc{width:48.05%}}@media screen and (min-width: 1201px){.selectW100{font-size:15px}}@media print, screen and (max-width: 1200px){.selectW100{font-size:1.5015vw}}@media screen and (max-width: 768px){.selectW100{font-size:3.2vw}}.tdFormTableSelectLxc .selectW100{height:56px;border:1px solid #C8C8C8;width:100%;padding-top:15px;padding-bottom:15px;padding-left:10px;padding-right:10px;border-radius:6px;-webkit-border-radius:6px;-moz-border-radius:6px}@media print, screen and (max-width: 1200px){.tdFormTableSelectLxc .selectW100{padding:5.68% 3.78% 5.68% 3.78%}}@media screen and (min-width: 1201px){.tdFormTableSelectLxc .selectW100{font-size:15px}}@media print, screen and (max-width: 1200px){.tdFormTableSelectLxc .selectW100{font-size:1.5015vw}}@media screen and (max-width: 768px){.tdFormTableSelectLxc .selectW100{font-size:3.2vw}}@media screen and (max-width: 768px){.tdFormTableSelectLxc .selectW100{height:13.33333vw;padding:5.24% 2.93% 5.24% 2.93%}}.selectYosan{width:50%;height:56px;padding-top:20px;padding-bottom:20px;padding-left:17px;padding-right:17px;border:1px solid #C8C8C8;border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px}@media print, screen and (max-width: 1200px){.selectYosan{padding:2.63% 2.23% 2.63% 2.23%}}@media screen and (max-width: 768px){.selectYosan{width:100%;height:13.33333vw}}.tdInputCalendar{position:relative}.tdInputCalendar .inputW100{border:1px solid #C8C8C8;width:100%;padding-top:16px;padding-bottom:16px;padding-left:17px;padding-right:17px;border-radius:6px;-webkit-border-radius:6px;-moz-border-radius:6px}@media screen and (min-width: 1201px){.tdInputCalendar .inputW100{font-size:16px}}@media print, screen and (max-width: 1200px){.tdInputCalendar .inputW100{font-size:1.6016vw}}@media screen and (max-width: 768px){.tdInputCalendar .inputW100{font-size:3.46667vw}}@media print, screen and (max-width: 1200px){.tdInputCalendar .inputW100{padding:6.06% 6.43% 6.06% 6.43%}}@media screen and (max-width: 768px){.tdInputCalendar .inputW100{height:13.33333vw;padding-top:0px;padding-bottom:0px;padding-left:12px;padding-right:12px}}@media screen and (max-width: 768px) and (max-width: 1200px){.tdInputCalendar .inputW100{padding:0% 7.45% 0% 7.45%}}.iconInputCalendar{position:absolute;right:6.6%;position:absolute;top:0;bottom:0;margin:auto;height:24px;width:9.09%}@media screen and (max-width: 768px){.iconInputCalendar{right:5%;height:6.4vw;width:14.9%}}.iconInputCalendar img{display:block;width:100%;height:auto}p.txtKengakuYoyaku{line-height:1.6;margin-top:17px;margin-bottom:0px;margin-left:0px;margin-right:0px}@media screen and (min-width: 1201px){p.txtKengakuYoyaku{font-size:15px}}@media print, screen and (max-width: 1200px){p.txtKengakuYoyaku{font-size:1.5015vw}}@media screen and (max-width: 768px){p.txtKengakuYoyaku{font-size:3.2vw}}p.txtKengakuYoyaku::before{display:block;width:0;height:0;margin-top:calc((1 - 1.6) * .5em);content:""}p.txtKengakuYoyaku::after{display:block;width:0;height:0;margin-bottom:calc((1 - 1.6) * .5em);content:""}@media print, screen and (max-width: 1200px){p.txtKengakuYoyaku{margin:2.23% 0% 0% 0%}}@media screen and (max-width: 768px){p.txtKengakuYoyaku{line-height:1.66667;margin-top:21.5px;margin-bottom:0px;margin-left:0px;margin-right:0px}p.txtKengakuYoyaku::before{display:block;width:0;height:0;margin-top:calc((1 - 1.66667) * .5em);content:""}p.txtKengakuYoyaku::after{display:block;width:0;height:0;margin-bottom:calc((1 - 1.66667) * .5em);content:""}}@media screen and (max-width: 768px) and (max-width: 1200px){p.txtKengakuYoyaku{margin:6.41% 0% 0% 0%}}.formCnt .thformTable_nichiji{padding-top:32px;padding-bottom:0px;padding-left:20px;padding-right:0px;vertical-align:top}@media print, screen and (max-width: 1200px){.formCnt .thformTable_nichiji{padding:3.2% 0% 0% 2%}}@media screen and (max-width: 768px){.formCnt .thformTable_nichiji{padding:4.76% 0% 0% 0%}}.formDetailSubdivision{margin-top:39px;margin-bottom:0px;margin-left:auto;margin-right:auto}@media print, screen and (max-width: 1200px){.formDetailSubdivision{margin-top:3.9%;margin-bottom:0%;margin-left:auto;margin-right:auto}}@media screen and (max-width: 768px){.formDetailSubdivision{margin-top:6.3%}}input.inputWName{width:51.8%;height:56px;padding-top:20px;padding-bottom:20px;padding-left:14px;padding-right:14px;border:1px solid #C8C8C8;border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px}@media screen and (min-width: 1201px){input.inputWName{font-size:15px}}@media print, screen and (max-width: 1200px){input.inputWName{font-size:1.5015vw}}@media screen and (max-width: 768px){input.inputWName{font-size:3.2vw}}@media print, screen and (max-width: 1200px){input.inputWName{padding:2.63% 1.84% 2.63% 1.84%}}@media screen and (max-width: 768px){input.inputWName{width:100%;height:13.33333vw;padding:2.63% 3.84% 2.63% 3.84%}}@media screen and (min-width: 1201px){.formMain input,.formMain textarea,.formMain select,.formMain button{font-size:15px}}@media print, screen and (max-width: 1200px){.formMain input,.formMain textarea,.formMain select,.formMain button{font-size:1.5015vw}}@media screen and (max-width: 768px){.formMain input,.formMain textarea,.formMain select,.formMain button{font-size:3.2vw}}.inputW100{width:100%;height:56px;padding-top:20px;padding-bottom:20px;padding-left:14px;padding-right:14px;border:1px solid #C8C8C8;border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px}@media print, screen and (max-width: 1200px){.inputW100{padding:2.63% 1.84% 2.63% 1.84%}}@media screen and (min-width: 1201px){.inputW100{font-size:15px}}@media print, screen and (max-width: 1200px){.inputW100{font-size:1.5015vw}}@media screen and (max-width: 768px){.inputW100{font-size:3.2vw}}@media screen and (max-width: 768px){.inputW100{height:13.33333vw;padding:2.63% 3.84% 2.63% 3.84%}}.inputPostCode{height:56px;width:51.8%;padding-top:20px;padding-bottom:20px;padding-left:14px;padding-right:14px;border:1px solid #C8C8C8;border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px}@media screen and (min-width: 1201px){.inputPostCode{font-size:15px}}@media print, screen and (max-width: 1200px){.inputPostCode{font-size:1.5015vw}}@media screen and (max-width: 768px){.inputPostCode{font-size:3.2vw}}@media print, screen and (max-width: 1200px){.inputPostCode{padding:2.63% 1.84% 2.63% 1.84%}}@media screen and (max-width: 768px){.inputPostCode{width:100%;height:13.33333vw;padding:2.63% 3.84% 2.63% 3.84%}}.tdformTable textarea{width:100%;height:200px;border:1px solid #C8C8C8;padding-top:13px;padding-bottom:13px;padding-left:14px;padding-right:14px;border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;line-height:1.75}@media screen and (min-width: 1201px){.tdformTable textarea{font-size:15px}}@media print, screen and (max-width: 1200px){.tdformTable textarea{font-size:1.5015vw}}@media screen and (max-width: 768px){.tdformTable textarea{font-size:3.2vw}}@media print, screen and (max-width: 1200px){.tdformTable textarea{padding:1.71% 1.84% 1.71% 1.84%}}.tdformTable textarea::before{display:block;width:0;height:0;margin-top:calc((1 - 1.75) * .5em);content:""}.tdformTable textarea::after{display:block;width:0;height:0;margin-bottom:calc((1 - 1.75) * .5em);content:""}@media screen and (max-width: 768px){.tdformTable textarea{padding:3.71% 3.84% 3.71% 3.84%;height:40vw}}.selectYosan{width:50.6%}@media screen and (max-width: 768px){.selectYosan{width:100%;height:13.33333vw}}.userForm{margin-top:39px;margin-bottom:0px;margin-left:auto;margin-right:auto}@media print, screen and (max-width: 1200px){.userForm{margin-top:3.9%;margin-bottom:0%;margin-left:auto;margin-right:auto}}@media screen and (max-width: 768px){.userForm{margin-top:6.7%;margin-bottom:0%;margin-left:auto;margin-right:auto}}.readPrivacy{margin-top:50px;margin-bottom:0px;margin-left:auto;margin-right:auto}@media print, screen and (max-width: 1200px){.readPrivacy{margin-top:5%;margin-bottom:0%;margin-left:auto;margin-right:auto}}@media screen and (max-width: 768px){.readPrivacy{width:91.04%;margin-top:21.5%;margin-bottom:0%;margin-left:auto;margin-right:auto}}.readPrivacyBox{border-radius:4px;-webkit-border-radius:4px;-moz-border-radius:4px;padding-top:33px;padding-bottom:0px;padding-left:29px;padding-right:29px;border:1px solid #444444;overflow:auto;height:248px;scrollbar-width:none}@media print, screen and (max-width: 1200px){.readPrivacyBox{padding:3.3% 2.9% 0% 2.9%}}@media print, screen and (max-width: 1200px){.readPrivacyBox{height:22vw}}@media screen and (max-width: 768px){.readPrivacyBox{padding:6.66% 4.6% 0% 4.6%;margin-top:21.1%;margin-bottom:0%;margin-left:auto;margin-right:auto;height:77.23333vw;margin:0 auto}}.readPrivacyBox:-webkit-scrollbar{display:none}.secReadPrivacyBox{margin-top:0px;margin-bottom:19px;margin-left:auto;margin-right:auto}@media print, screen and (max-width: 1200px){.secReadPrivacyBox{margin-top:0%;margin-bottom:1.9%;margin-left:auto;margin-right:auto}}@media screen and (max-width: 768px){.secReadPrivacyBox{margin-top:0%;margin-bottom:6.9%;margin-left:auto;margin-right:auto}}.readPrivacyBox .h2secReadPrivacyBox{line-height:1.6875;font-weight:600;line-height:1.7}@media screen and (min-width: 1201px){.readPrivacyBox .h2secReadPrivacyBox{font-size:16px}}@media print, screen and (max-width: 1200px){.readPrivacyBox .h2secReadPrivacyBox{font-size:1.6016vw}}@media screen and (max-width: 768px){.readPrivacyBox .h2secReadPrivacyBox{font-size:3.73333vw}}.readPrivacyBox .h2secReadPrivacyBox::before{display:block;width:0;height:0;margin-top:calc((1 - 1.6875) * .5em);content:""}.readPrivacyBox .h2secReadPrivacyBox::after{display:block;width:0;height:0;margin-bottom:calc((1 - 1.6875) * .5em);content:""}.readPrivacyBox .txtSecReadPrivacyBox{margin-top:22px;margin-bottom:0px;margin-left:auto;margin-right:auto;line-height:1.6}@media print, screen and (max-width: 1200px){.readPrivacyBox .txtSecReadPrivacyBox{margin-top:2.2%;margin-bottom:0%;margin-left:auto;margin-right:auto}}@media screen and (min-width: 1201px){.readPrivacyBox .txtSecReadPrivacyBox{font-size:14px}}@media print, screen and (max-width: 1200px){.readPrivacyBox .txtSecReadPrivacyBox{font-size:1.4014vw}}@media screen and (max-width: 768px){.readPrivacyBox .txtSecReadPrivacyBox{font-size:3.2vw}}@media screen and (max-width: 768px){.readPrivacyBox .txtSecReadPrivacyBox{margin-top:6%;margin-bottom:0%;margin-left:auto;margin-right:auto}}.readPrivacyBox .txtSecReadPrivacyBox a{color:#0077FF;text-decoration:underline}.chackReadPrivacywap{margin-top:41px;margin-bottom:0px;margin-left:auto;margin-right:auto;font-weight:600;text-align:center;width:37.2%;white-space:nowrap}@media print, screen and (max-width: 1200px){.chackReadPrivacywap{margin-top:4.1%;margin-bottom:0%;margin-left:auto;margin-right:auto}}@media screen and (min-width: 1201px){.chackReadPrivacywap{font-size:16px}}@media print, screen and (max-width: 1200px){.chackReadPrivacywap{font-size:1.6016vw}}@media screen and (max-width: 768px){.chackReadPrivacywap{font-size:3.73333vw}}@media print, screen and (max-width: 1200px){.chackReadPrivacywap{width:44.5%}}@media screen and (max-width: 768px){.chackReadPrivacywap{width:100%;margin-top:11.5%;margin-bottom:0%;margin-left:auto;margin-right:auto}}.chackReadPrivacywap p.hissuformTableFx{width:12.62%}@media screen and (max-width: 768px){.chackReadPrivacywap p.hissuformTableFx{width:15.83%}}.chackReadPrivacywap label{width:100%;justify-content:flex-start}.chackReadPrivacy{margin:auto 4% auto 0;font-feature-settings:"palt"}.formSubmitButtonWap{font-weight:600;margin-top:83px;margin-bottom:0px;margin-left:auto;margin-right:auto;width:39%}@media print, screen and (max-width: 1200px){.formSubmitButtonWap{margin-top:8.3%;margin-bottom:0%;margin-left:auto;margin-right:auto}}@media screen and (max-width: 768px){.formSubmitButtonWap{margin-top:15.8%;margin-bottom:0%;margin-left:auto;margin-right:auto;width:94.02%}}.formSubmitButton{cursor:pointer;border:none;color:#FFF;border-radius:4px;-webkit-border-radius:4px;-moz-border-radius:4px;overflow:hidden;display:inline-block;text-align:center;text-decoration:none;outline:none;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:all .3s;transition:all .3s;background-color:#4A756F;border:1px solid #4A756F;color:#fff;display:block;background-image:url(../img/wh_arrow.svg);background-size:auto 38%;background-position:center right 5%;background-repeat:no-repeat;height:70px;width:100%;display:flex;justify-content:center;align-items:center}.formSubmitButton::before{position:absolute;z-index:-1;display:block;content:'';-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:all .3s;transition:all .3s}.formSubmitButton::after{position:absolute;z-index:-1;display:block;content:'';-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:all .3s;transition:all .3s}.formSubmitButton:hover{background-color:#333;border-color:#333;color:#fff}@media print, screen and (max-width: 1200px){.formSubmitButton{height:7vw}}@media screen and (max-width: 768px){.formSubmitButton{background-position:center right 6%;height:17.06667vw}}input.formSubmitButton{font-weight:600}@media screen and (min-width: 1201px){input.formSubmitButton{font-size:16px}}@media print, screen and (max-width: 1200px){input.formSubmitButton{font-size:1.6016vw}}@media screen and (max-width: 768px){input.formSubmitButton{font-size:4vw}}

/*# sourceMappingURL=data:application/json;base64,ewoJInZlcnNpb24iOiAzLAoJImZpbGUiOiAiY3NzL2lucXVpcnkuY3NzIiwKCSJzb3VyY2VzIjogWwoJCSJzY3NzL2lucXVpcnkuc2NzcyIsCgkJInNjc3Mvc2Fzc19iYXNlL19taXhpbi5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL19ib3VyYm9uLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vc2V0dGluZ3MvX3ByZWZpeGVyLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vc2V0dGluZ3MvX3B4LXRvLWVtLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vc2V0dGluZ3MvX2Fzc2V0LXBpcGVsaW5lLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vZnVuY3Rpb25zL19hc3NpZ24taW5wdXRzLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vZnVuY3Rpb25zL19jb250YWlucy5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2Z1bmN0aW9ucy9fY29udGFpbnMtZmFsc3kuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9mdW5jdGlvbnMvX2lzLWxlbmd0aC5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2Z1bmN0aW9ucy9faXMtbGlnaHQuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9mdW5jdGlvbnMvX2lzLW51bWJlci5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2Z1bmN0aW9ucy9faXMtc2l6ZS5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2Z1bmN0aW9ucy9fcHgtdG8tZW0uc2NzcyIsCgkJInNjc3MvYm91cmJvbi9mdW5jdGlvbnMvX3B4LXRvLXJlbS5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2Z1bmN0aW9ucy9fc2hhZGUuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9mdW5jdGlvbnMvX3N0cmlwLXVuaXRzLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vZnVuY3Rpb25zL190aW50LnNjc3MiLAoJCSJzY3NzL2JvdXJib24vZnVuY3Rpb25zL190cmFuc2l0aW9uLXByb3BlcnR5LW5hbWUuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9mdW5jdGlvbnMvX3VucGFjay5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2Z1bmN0aW9ucy9fbW9kdWxhci1zY2FsZS5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2hlbHBlcnMvX2NvbnZlcnQtdW5pdHMuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9oZWxwZXJzL19kaXJlY3Rpb25hbC12YWx1ZXMuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9oZWxwZXJzL19mb250LXNvdXJjZS1kZWNsYXJhdGlvbi5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2hlbHBlcnMvX2dyYWRpZW50LXBvc2l0aW9ucy1wYXJzZXIuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9oZWxwZXJzL19saW5lYXItYW5nbGUtcGFyc2VyLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vaGVscGVycy9fbGluZWFyLWdyYWRpZW50LXBhcnNlci5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2hlbHBlcnMvX2xpbmVhci1wb3NpdGlvbnMtcGFyc2VyLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vaGVscGVycy9fbGluZWFyLXNpZGUtY29ybmVyLXBhcnNlci5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2hlbHBlcnMvX3JhZGlhbC1hcmctcGFyc2VyLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vaGVscGVycy9fcmFkaWFsLXBvc2l0aW9ucy1wYXJzZXIuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9oZWxwZXJzL19yYWRpYWwtZ3JhZGllbnQtcGFyc2VyLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vaGVscGVycy9fcmVuZGVyLWdyYWRpZW50cy5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2hlbHBlcnMvX3NoYXBlLXNpemUtc3RyaXBwZXIuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9oZWxwZXJzL19zdHItdG8tbnVtLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vY3NzMy9fYW5pbWF0aW9uLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vY3NzMy9fYXBwZWFyYW5jZS5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2NzczMvX2JhY2tmYWNlLXZpc2liaWxpdHkuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9jc3MzL19iYWNrZ3JvdW5kLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vY3NzMy9fYmFja2dyb3VuZC1pbWFnZS5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2NzczMvX2JvcmRlci1pbWFnZS5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2NzczMvX2NhbGMuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9jc3MzL19jb2x1bW5zLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vY3NzMy9fZmlsdGVyLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vY3NzMy9fZmxleC1ib3guc2NzcyIsCgkJInNjc3MvYm91cmJvbi9jc3MzL19mb250LWZhY2Uuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9jc3MzL19mb250LWZlYXR1cmUtc2V0dGluZ3Muc2NzcyIsCgkJInNjc3MvYm91cmJvbi9jc3MzL19oaWRwaS1tZWRpYS1xdWVyeS5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2NzczMvX2h5cGhlbnMuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9jc3MzL19pbWFnZS1yZW5kZXJpbmcuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9jc3MzL19rZXlmcmFtZXMuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9jc3MzL19saW5lYXItZ3JhZGllbnQuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9jc3MzL19wZXJzcGVjdGl2ZS5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2NzczMvX3BsYWNlaG9sZGVyLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vY3NzMy9fcmFkaWFsLWdyYWRpZW50LnNjc3MiLAoJCSJzY3NzL2JvdXJib24vY3NzMy9fc2VsZWN0aW9uLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vY3NzMy9fdGV4dC1kZWNvcmF0aW9uLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vY3NzMy9fdHJhbnNmb3JtLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vY3NzMy9fdHJhbnNpdGlvbi5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2NzczMvX3VzZXItc2VsZWN0LnNjc3MiLAoJCSJzY3NzL2JvdXJib24vYWRkb25zL19ib3JkZXItY29sb3Iuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9hZGRvbnMvX2JvcmRlci1yYWRpdXMuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9hZGRvbnMvX2JvcmRlci1zdHlsZS5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2FkZG9ucy9fYm9yZGVyLXdpZHRoLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vYWRkb25zL19idXR0b25zLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vYWRkb25zL19jbGVhcmZpeC5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2FkZG9ucy9fZWxsaXBzaXMuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9hZGRvbnMvX2ZvbnQtc3RhY2tzLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vYWRkb25zL19oaWRlLXRleHQuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9hZGRvbnMvX21hcmdpbi5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2FkZG9ucy9fcGFkZGluZy5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2FkZG9ucy9fcG9zaXRpb24uc2NzcyIsCgkJInNjc3MvYm91cmJvbi9hZGRvbnMvX3ByZWZpeGVyLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vYWRkb25zL19yZXRpbmEtaW1hZ2Uuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9hZGRvbnMvX3NpemUuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9hZGRvbnMvX3RleHQtaW5wdXRzLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vYWRkb25zL190aW1pbmctZnVuY3Rpb25zLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vYWRkb25zL190cmlhbmdsZS5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2FkZG9ucy9fd29yZC13cmFwLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vX2JvdXJib24tZGVwcmVjYXRlZC11cGNvbWluZy5zY3NzIiwKCQkic2Nzcy9uZWF0L19uZWF0LnNjc3MiLAoJCSJzY3NzL25lYXQvX25lYXQtaGVscGVycy5zY3NzIiwKCQkic2Nzcy9uZWF0L2Z1bmN0aW9ucy9fcHJpdmF0ZS5zY3NzIiwKCQkic2Nzcy9uZWF0L2Z1bmN0aW9ucy9fbmV3LWJyZWFrcG9pbnQuc2NzcyIsCgkJInNjc3MvbmVhdC9zZXR0aW5ncy9fZ3JpZC5zY3NzIiwKCQkic2Nzcy9uZWF0L3NldHRpbmdzL192aXN1YWwtZ3JpZC5zY3NzIiwKCQkic2Nzcy9uZWF0L3NldHRpbmdzL19kaXNhYmxlLXdhcm5pbmdzLnNjc3MiLAoJCSJzY3NzL25lYXQvZ3JpZC9fcHJpdmF0ZS5zY3NzIiwKCQkic2Nzcy9uZWF0L2dyaWQvX2JveC1zaXppbmcuc2NzcyIsCgkJInNjc3MvbmVhdC9ncmlkL19vbWVnYS5zY3NzIiwKCQkic2Nzcy9uZWF0L2dyaWQvX291dGVyLWNvbnRhaW5lci5zY3NzIiwKCQkic2Nzcy9uZWF0L2dyaWQvX3NwYW4tY29sdW1ucy5zY3NzIiwKCQkic2Nzcy9uZWF0L2dyaWQvX3Jvdy5zY3NzIiwKCQkic2Nzcy9uZWF0L2dyaWQvX3NoaWZ0LnNjc3MiLAoJCSJzY3NzL25lYXQvZ3JpZC9fcGFkLnNjc3MiLAoJCSJzY3NzL25lYXQvZ3JpZC9fZmlsbC1wYXJlbnQuc2NzcyIsCgkJInNjc3MvbmVhdC9ncmlkL19tZWRpYS5zY3NzIiwKCQkic2Nzcy9uZWF0L2dyaWQvX3RvLWRlcHJlY2F0ZS5zY3NzIiwKCQkic2Nzcy9uZWF0L2dyaWQvX3Zpc3VhbC1ncmlkLnNjc3MiLAoJCSJzY3NzL25lYXQvZ3JpZC9fZGlzcGxheS1jb250ZXh0LnNjc3MiLAoJCSJzY3NzL25lYXQvZ3JpZC9fZGlyZWN0aW9uLWNvbnRleHQuc2NzcyIsCgkJInNjc3MvX215c2V0dGluZy5zY3NzIiwKCQkic2Nzcy9zYXNzX2Jhc2UvX2NvZGluZ19ndWlkZWxpbmUuc2NzcyIsCgkJInNjc3Mvc2Fzc19iYXNlL19hbmltYXRlLnNjc3MiLAoJCSJzY3NzL19jb2xvci5zY3NzIiwKCQkic2Nzcy9MYXlvdXQvaW5kZXgvX2luZGV4LnNjc3MiLAoJCSJzY3NzL0xheW91dC9pbmRleC9fMDFfZm9ybVRvcC5zY3NzIiwKCQkic2Nzcy9MYXlvdXQvX2NvbmZpcm0uc2NzcyIsCgkJInNjc3MvTGF5b3V0L190aGFua3Muc2NzcyIsCgkJInNjc3MvTGF5b3V0L19oZWFkZXIuc2NzcyIsCgkJInNjc3MvQ29tcG9uZW50L2Zvcm0vX2Zvcm0uc2NzcyIsCgkJInNjc3MvQ29tcG9uZW50L2Zvcm0vXzAxX2Zvcm1TdWJkaXZpc2lvbkdlbnJlLnNjc3MiLAoJCSJzY3NzL0NvbXBvbmVudC9mb3JtL18wMl9mb3JtRGV0YWlsU3ViZGl2aXNpb24uc2NzcyIsCgkJInNjc3MvQ29tcG9uZW50L2Zvcm0vXzAzX2Zvcm1EZXRhaWxSZXF1ZXN0LnNjc3MiLAoJCSJzY3NzL0NvbXBvbmVudC9mb3JtL18wNF91c2VyRm9ybS5zY3NzIiwKCQkic2Nzcy9Db21wb25lbnQvZm9ybS9fMDVfcmVhZFByaXZhY3kuc2NzcyIsCgkJInNjc3MvQ29tcG9uZW50L2Zvcm0vXzA2X2Zvcm1CdG0uc2NzcyIKCV0sCgkic291cmNlc0NvbnRlbnQiOiBbCgkJIkBjaGFyc2V0IFwidXRmLThcIjtcclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbkZ1bmNpdG9uc1xyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5AaW1wb3J0ICdzYXNzX2Jhc2UvbWl4aW4nO1xyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuUnVsZVxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5AaW1wb3J0ICdzYXNzX2Jhc2UvY29kaW5nX2d1aWRlbGluZSc7XHJcbkBpbXBvcnQgJ3Nhc3NfYmFzZS9hbmltYXRlJztcclxuQGltcG9ydCAnX2NvbG9yJztcclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbkxheW91dFxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5AaW1wb3J0ICdMYXlvdXQvaW5kZXgvX2luZGV4JztcclxuQGltcG9ydCAnTGF5b3V0L19jb25maXJtJztcclxuQGltcG9ydCAnTGF5b3V0L190aGFua3MnO1xyXG5AaW1wb3J0ICdMYXlvdXQvX2hlYWRlcic7XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5PYmplY3RcclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbkNvbXBvbmVudFxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5AaW1wb3J0ICdDb21wb25lbnQvZm9ybS9fZm9ybSc7XHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG4iLAoJCSJAY2hhcnNldCBcInV0Zi04XCI7XG5AaW1wb3J0IFwiLi4vYm91cmJvbi9ib3VyYm9uXCI7XG5AaW1wb3J0IFwiLi4vbmVhdC9uZWF0XCI7XG5AaW1wb3J0IFwiLi4vbXlzZXR0aW5nXCI7XG5cbi8vUEPmmYJcbiRwYzogbmV3LWJyZWFrcG9pbnQobWluLXdpZHRoICRwY1NpemUgMTYpOy8vUEPmmYLvvIjln7rmnKzjg5njg7zjgrnvvIlcblxuLy/jgZPjgZPjgYvjgok1MHB444Ga44Gk44OW44Os44Kk44Kv44Od44Kk44Oz44OI44KS55m65YuVXG4kbWF4MTY1MCA6IG5ldy1icmVha3BvaW50KG1heC13aWR0aCAxNjUwcHggMTYpO1xuJG1heDE2MDAgOiBuZXctYnJlYWtwb2ludChtYXgtd2lkdGggMTYwMHB4IDE2KTtcbiRtYXgxNTAwIDogbmV3LWJyZWFrcG9pbnQobWF4LXdpZHRoIDE1MDBweCAxNik7XG4kbWF4MTQ1MCA6IG5ldy1icmVha3BvaW50KG1heC13aWR0aCAxNDUwcHggMTYpO1xuJG1heDE0MDAgOiBuZXctYnJlYWtwb2ludChtYXgtd2lkdGggMTQwMHB4IDE2KTtcbiRtYXgxMzUwIDogbmV3LWJyZWFrcG9pbnQobWF4LXdpZHRoIDEzNTBweCAxNik7XG4kbWF4MTMwMCA6IG5ldy1icmVha3BvaW50KG1heC13aWR0aCAxMzAwcHggMTYpO1xuJG1heDEyNTAgOiBuZXctYnJlYWtwb2ludChtYXgtd2lkdGggMTI1MHB4IDE2KTtcbiRtYXgxMjAwIDogbmV3LWJyZWFrcG9pbnQobWF4LXdpZHRoIDEyMDBweCAxNik7XG4kbWF4MTE1MCA6IG5ldy1icmVha3BvaW50KG1heC13aWR0aCAxMTUwcHggMTYpO1xuJG1heDExMDAgOiBuZXctYnJlYWtwb2ludChtYXgtd2lkdGggMTEwMHB4IDE2KTtcbiRtYXgxMDUwIDogbmV3LWJyZWFrcG9pbnQobWF4LXdpZHRoIDEwNTBweCA4KTtcbiRtYXgxMDAwIDogbmV3LWJyZWFrcG9pbnQobWF4LXdpZHRoIDEwMDBweCA4KTtcbiRtYXg5NTAgOiBuZXctYnJlYWtwb2ludChtYXgtd2lkdGggOTUwcHggOCk7XG4kbWF4OTAwIDogbmV3LWJyZWFrcG9pbnQobWF4LXdpZHRoIDkwMHB4IDgpO1xuJG1heDg1MCA6IG5ldy1icmVha3BvaW50KG1heC13aWR0aCA4NTBweCA4KTtcbiRtYXg4MDAgOiBuZXctYnJlYWtwb2ludChtYXgtd2lkdGggODAwcHggOCk7XG5cbi8v44K/44OW44Os44OD44OI5pmCXG4kdGFiOiBuZXctYnJlYWtwb2ludChtYXgtd2lkdGggJHRhYlNpemUgOCk7Ly/jgr/jg5bjg6zjg4Pjg4jmqKpcbiR0YWJfdGF0ZTogbmV3LWJyZWFrcG9pbnQobWF4LXdpZHRoICR0YWJUYXRlU2l6ZSA2KTsvL+OCv+ODluODrOODg+ODiOe4plxuXG4vL+OCueODnuODm+aZglxuJHNwOiBuZXctYnJlYWtwb2ludChtYXgtd2lkdGggJHNwU2l6ZSA0KTtcblxuJGd1dHRlcjogZ29sZGVuLXJhdGlvKDBlbSwgMCk7XG4kZmctZ3V0dGVyOiAkZ3V0dGVyO1xuXG4vL21peGlu44KS5oyH5a6aXG5AbWl4aW4gbWludHlvdSgkZm9udHNpemUpIHtcbiAgICBmb250LXNpemU6ICRmb250c2l6ZTtcbiAgICBmb250LWZhbWlseTpcIlJvYm90byBTbGFiXCIgLCBHYXJhbW9uZCAsIFwiVGltZXMgTmV3IFJvbWFuXCIgLCBcIua4uOaYjuacnVwiICwgXG4gICAgICAgIFwiWXUgTWluY2hvXCIgLCBcIua4uOaYjuacneS9k1wiICwgXCJZdU1pbmNob1wiICwgXCLjg5Ljg6njgq7jg47mmI7mnJ0gUHJvIFczXCIgLCBcbiAgICAgICAgXCJIaXJhZ2lubyBNaW5jaG8gUHJvXCIgLCBcIkhpcmFNaW5Qcm9OLVczXCIgLCBcIkhHU+aYjuacnUVcIiAsIFwi77yt77yzIO+8sOaYjuacnVwiICwgXCJNUyBQTWluY2hvXCIgLCBzZXJpZjtcbn1cbkBtaXhpbiBnb3NoaWNrKCRmb250c2l6ZSkge1xuICAgIGZvbnQtc2l6ZTogJGZvbnRzaXplO1xuICAgIGZvbnQtZmFtaWx5OkF2ZW5pciAsIFwiT3BlbiBTYW5zXCIgLCBcIkhlbHZldGljYSBOZXVlXCIgLCBIZWx2ZXRpY2EgLCBBcmlhbCAsXG4gICAgICAgIFZlcmRhbmEgLCBSb2JvdG8gLCBcIua4uOOCtOOCt+ODg+OCr1wiICwgXCJZdSBHb3RoaWNcIiAsIFwi5ri444K044K344OD44Kv5L2TXCIgLCBcIll1R290aGljXCIgLCBcbiAgICAgICAgXCLjg5Ljg6njgq7jg47op5LjgrQgUHJvIFczXCIgLCBcIkhpcmFnaW5vIEtha3UgR290aGljIFByb1wiICwgXCJNZWlyeW8gVUlcIiAsIFwi44Oh44Kk44Oq44KqXCIgLCBcbiAgICAgICAgTWVpcnlvICwgXCLvvK3vvLMg77yw44K044K344OD44KvXCIgLCBcIk1TIFBHb3RoaWNcIiAsIHNhbnMtc2VyaWY7XG59XG5AbWl4aW4gbWFydWdvc2hpY2soJGZvbnRzaXplKSB7XG4gICAgZm9udC1zaXplOiAkZm9udHNpemU7XG4gICAgZm9udC1mYW1pbHk6IFwi44OS44Op44Ku44OO5Li444K0IFBybyBXNFwiLFwi44OS44Op44Ku44OO5Li444K0IFByb1wiLFwiSGlyYWdpbm8gTWFydSBHb3RoaWMgUHJvXCIsXG4gICAgICAgIFwi44OS44Op44Ku44OO6KeS44K0IFBybyBXM1wiLFwiSGlyYWdpbm8gS2FrdSBHb3RoaWMgUHJvXCIsXCJIR+S4uO+9uu++nu+9vO+9r++9uE0tUFJPXCIsXCJIR01hcnVHb3RoaWNNUFJPXCI7XG59XG5cbkBtaXhpbiByc0ZvbnRTaXplKCRwY19zaXplOjBweCwkdGFiX3NpemU6MHZ3LCRzcF9zaXplOjB2dykge1xuICAgIEBpZiAkcGNfc2l6ZT09MHB4IHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHBjKXtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHBjX3NpemU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkcGMpe1xuICAgICAgICAgICAgZm9udC1zaXplOiAkcGNfc2l6ZStweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAaWYgJHRhYl9zaXplPT0wdncge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkdGFiKXtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHRhYl9zaXplO1xuICAgICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYil7XG4gICAgICAgICAgICBmb250LXNpemU6ICgoICR0YWJfc2l6ZSAvICR0YWJTaXplUHhOb25lICkgKiAxMDAwMHZ3ICkgLyAxMDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQGlmICRzcF9zaXplPT0wdncge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkc3Ape1xuICAgICAgICAgICAgZm9udC1zaXplOiAkc3Bfc2l6ZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCRzcCl7XG4gICAgICAgICAgICBmb250LXNpemU6ICgoICRzcF9zaXplIC8gMzc1ICkgKiAxMDAwMHZ3ICkgLyAxMDA7XG4gICAgICAgIH1cbiAgICB9XG59XG4vL+aXp+eJiFxuQG1peGluIHJzX2ZvbnRfc2l6ZSgkcGNfc2l6ZToxNnB4LCR0YWJfc2l6ZToxLjU2MjV2dywkc3Bfc2l6ZTo0LjI2NjY2NjY2NjY2NjY2N3Z3KSB7XG4gICAgQGlmICRwY19zaXplPT0xcmVtIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHBjKXtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHBjX3NpemU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkcGMpe1xuICAgICAgICAgICAgZm9udC1zaXplOiAkcGNfc2l6ZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAaWYgJHRhYl9zaXplPT0xLjU2MjV2dyB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWIpe1xuICAgICAgICAgICAgZm9udC1zaXplOiAkdGFiX3NpemU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkdGFiKXtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHRhYl9zaXplO1xuICAgICAgICB9XG4gICAgfVxuICAgIEBpZiAkc3Bfc2l6ZT09NC4yNjY2NjY2NjY2NjY2Njd2dyB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCRzcCl7XG4gICAgICAgICAgICBmb250LXNpemU6ICRzcF9zaXplO1xuICAgICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHNwKXtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHNwX3NpemU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtaXhpbiBzaGlubWludHlvdSgkcGNfc2l6ZToxcmVtLCR0YWJfc2l6ZToxLjI1dncsJHNwX3NpemU6M3Z3KSB7XG4gICAgZm9udC1mYW1pbHk6XCJzYW5zLXNlcmlmXCIsXCJTYXdhcmFiaSBNaW5jaG9cIixcIlJvYm90byBTbGFiXCIgLCBHYXJhbW9uZCAsIFwiVGltZXMgTmV3IFJvbWFuXCIgLCBcIua4uOaYjuacnVwiICwgXG4gICAgICAgIFwiWXUgTWluY2hvXCIgLCBcIua4uOaYjuacneS9k1wiICwgXCJZdU1pbmNob1wiICwgXCLjg5Ljg6njgq7jg47mmI7mnJ0gUHJvIFczXCIgLCBcbiAgICAgICAgXCJIaXJhZ2lubyBNaW5jaG8gUHJvXCIgLCBcIkhpcmFNaW5Qcm9OLVczXCIgLCBcIkhHU+aYjuacnUVcIiAsIFwi77yt77yzIO+8sOaYjuacnVwiICwgXCJNUyBQTWluY2hvXCIgLCBzZXJpZjtcbiAgICBAaWYgJHBjX3NpemU9PTBweCB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCRwYyl7XG4gICAgICAgICAgICBmb250LXNpemU6ICRwY19zaXplO1xuICAgICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHBjKXtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHBjX3NpemU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQGlmICR0YWJfc2l6ZT09MHZ3IHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYil7XG4gICAgICAgICAgICBmb250LXNpemU6ICR0YWJfc2l6ZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWIpe1xuICAgICAgICAgICAgZm9udC1zaXplOiAoKCAkdGFiX3NpemUgLyAkdGFiICkgKiAxMDAwMHZ3ICkgLyAxMDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQGlmICRzcF9zaXplPT0wdncge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkc3Ape1xuICAgICAgICAgICAgZm9udC1zaXplOiAkc3Bfc2l6ZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCRzcCl7XG4gICAgICAgICAgICBmb250LXNpemU6ICgoICRzcF9zaXplIC8gJHNwICkgKiAxMDAwMHZ3ICkgLyAxMDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtaXhpbiBzaGluZ29zaWNrKCRwY19zaXplOjFyZW0sJHRhYl9zaXplOjEuMjV2dywkc3Bfc2l6ZTozdncpIHtcbiAgICBmb250LWZhbWlseTogJ05vdG8gU2FucyBKYXBhbmVzZScsQXZlbmlyICwgXCJPcGVuIFNhbnNcIiAsIFwiSGVsdmV0aWNhIE5ldWVcIiAsIEhlbHZldGljYSAsIEFyaWFsICxcbiAgICAgICAgVmVyZGFuYSAsIFJvYm90byAsIFwi5ri444K044K344OD44KvXCIgLCBcIll1IEdvdGhpY1wiICwgXCLmuLjjgrTjgrfjg4Pjgq/kvZNcIiAsIFwiWXVHb3RoaWNcIiAsIFxuICAgICAgICBcIuODkuODqeOCruODjuinkuOCtCBQcm8gVzNcIiAsIFwiSGlyYWdpbm8gS2FrdSBHb3RoaWMgUHJvXCIgLCBcIk1laXJ5byBVSVwiICwgXCLjg6HjgqTjg6rjgqpcIiAsIFxuICAgICAgICBNZWlyeW8gLCBcIu+8re+8syDvvLDjgrTjgrfjg4Pjgq9cIiAsIFwiTVMgUEdvdGhpY1wiICwgc2Fucy1zZXJpZjtcbiAgICBAaWYgJHBjX3NpemU9PTBweCB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCRwYyl7XG4gICAgICAgICAgICBmb250LXNpemU6ICRwY19zaXplO1xuICAgICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHBjKXtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHBjX3NpemU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQGlmICR0YWJfc2l6ZT09MHZ3IHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYil7XG4gICAgICAgICAgICBmb250LXNpemU6ICR0YWJfc2l6ZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWIpe1xuICAgICAgICAgICAgZm9udC1zaXplOiAoKCAkdGFiX3NpemUgLyAkdGFiICkgKiAxMDAwMHZ3ICkgLyAxMDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQGlmICRzcF9zaXplPT0wdncge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkc3Ape1xuICAgICAgICAgICAgZm9udC1zaXplOiAkc3Bfc2l6ZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCRzcCl7XG4gICAgICAgICAgICBmb250LXNpemU6ICgoICRzcF9zaXplIC8gJHNwICkgKiAxMDAwMHZ3ICkgLyAxMDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtaXhpbiBpbWdjZW50ZXIge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgYXV0byAwIGF1dG87XG4gICAgcGFkZGluZzogMCAwcHggMCAwO1xufVxuQG1peGluIGthZG9tYXJ1KCRyYWRpdXMpIHtcbiAgICBib3JkZXItcmFkaXVzOiAkcmFkaXVzOyAgICAgICAgLyogQ1NTM+iNieahiCAqLyAgXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAkcmFkaXVzOyAgICAvKiBTYWZhcmksR29vZ2xlIENocm9tZeeUqCAqLyAgXG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiAkcmFkaXVzOyAgIC8qIEZpcmVmb3jnlKggKi8gIFxufVxuLy/jg4bjg7zjg5bjg6vnlKhcbkBtaXhpbiB0YWJsZXNldHRpbmcge1xuICAgIEBpbmNsdWRlIG1lZGlhKCRwYykge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKCR0YWIpIHtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYSgkc3ApIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cbkBtaXhpbiB0ZHNldHRpbmcoJHdpZHRoKSB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJHBjKSB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgIHdpZHRoOiAkd2lkdGg7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKCR0YWIpIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgd2lkdGg6ICR3aWR0aDtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG59XG5AbWl4aW4gd2FwcGVyX3NldHRpbmcoKSB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJHBjKSB7XG4gICAgICAgIHdpZHRoOiAkcGNfd2FwcGVyX3NpemU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OmF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDphdXRvO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYSgkdGFiKSB7XG4gICAgICAgIHdpZHRoOiA5OCU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OmF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDphdXRvO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYSgkc3ApIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OmF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDphdXRvO1xuICAgIH1cbn1cblxuQG1peGluIHdhcHBlcl9zZXR0aW5nMigpIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgkcGMpIHtcbiAgICAgICAgd2lkdGg6ICRwY19pbm5uZXJfd2FwcGVyX3NpemU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OmF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDphdXRvO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYSgkdGFiKSB7XG4gICAgICAgIHdpZHRoOiA5OCU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OmF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDphdXRvO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYSgkc3ApIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OmF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDphdXRvO1xuICAgIH1cbn1cblxuLy/jgrnjg57jg5vjga7jgajjgY3jgaDjgZHlh7rjgZnplqLmlbBcbkBtaXhpbiBzcF9vbmx5KCkge1xuICAgIEBpbmNsdWRlIG1lZGlhKCRwYykge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYSgkdGFiKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG5cbkBtaXhpbiBwY19vbmx5KCkge1xuICAgIEBpbmNsdWRlIG1lZGlhKCR0YWIpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKCRwYykge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG5AbWl4aW4gaW1nd2lkdGgoJHdpZHRoOjEwMCUpIHtcbiAgICBpbWcge1xuICAgICAgICB3aWR0aDokd2lkdGg7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG59XG5cblxuLy9AaW5jbHVkZSBvbnRlbmVyX3dpZHRoKOaoquW5heWfuua6luWApCzkvb/nlKjjgZnjgovopoHntKDjga7mqKrluYUpO1xuQG1peGluIG9udGVuZXJfd2lkdGgoICRwYXJlbnRQeFdpZHRoLCAkcHhXaWR0aCApe1xuICAgIHdpZHRoOiBmbG9vcigoKCAkcHhXaWR0aCAvICRwYXJlbnRQeFdpZHRoICkgKiAxMDAwMCUgKSkgLyAxMDA7XG59XG5cbkBtaXhpbiBvbnRlbmVyV1Z3KCAkcGFyZW50UHhXaWR0aCwgJHB4V2lkdGggKXtcbiAgICB3aWR0aDogZmxvb3IoKCggJHB4V2lkdGggLyAkcGFyZW50UHhXaWR0aCApICogMTAwMDB2dyApKSAvIDEwMDtcbn1cbkBtaXhpbiB3aWR0aFZ3KCRweFdpZHRoKXtcbiAgICB3aWR0aDogKCggJHB4V2lkdGggLyAxOTIwICkgKiAxMDAwMHZ3ICkgLyAxMDA7XG4gICAgaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiAkcHhXaWR0aCArIHB4O1xuICAgIH1cbn1cbkBtaXhpbiB3aWR0aFZ3U1AoJHB4V2lkdGgpe1xuICAgIHdpZHRoOiAoKCAkcHhXaWR0aCAvIDM3NSApICogMTAwMDB2dyApIC8gMTAwO1xuICAgIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogJHB4V2lkdGggKyBweDtcbiAgICB9XG59XG5AbWl4aW4gaGVpZ2h0VncoJHB4aGVpZ2h0KSB7XG4gICAgaGVpZ2h0OiAoKCAkcHhoZWlnaHQgLyAxOTIwICkgKiAxMDAwMHZ3ICkgLyAxMDA7XG59XG5AbWl4aW4gaGVpZ2h0VndTcCgkcHhoZWlnaHQpIHtcbiAgICBoZWlnaHQ6ICgoICRweGhlaWdodCAvIDM3NSApICogMTAwMDB2dyApIC8gMTAwO1xufVxuLy9AaW5jbHVkZSBtYXJnaW5QZXJjZW50KOaoquW5heWfuua6luWApCwgbWFyZ2luLXRvcO+8iHB477yJLCBtYXJnaW4tbGVmdO+8iHB477yJLCBtYXJnaW4tYm90dG9tKHB4KSwgbWFyZ2luLWJvdHRvbShweCkpO1xuQG1peGluIG1hcmdpblBlcmNlbnQoJHBhcmVudFB4V2lkdGgsICRtVG9wLCAkbVJpZ2h0LCAkbUJvdHRvbSwgJG1MZWZ0KXtcbiAgICBAaWYgJG1MZWZ0ID09IGF1dG8gYW5kICRtUmlnaHQgPT0gYXV0byB7XG4gICAgICAgIG1hcmdpbi10b3A6JG1Ub3AgKyAwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRtQm90dG9tICsgMHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkdGFiKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOmZsb29yKCgoJG1Ub3AgLyAkcGFyZW50UHhXaWR0aCkgKiAxMDAwMCUpKSAvIDEwMDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IGZsb29yKCgoJG1Cb3R0b20gLyAkcGFyZW50UHhXaWR0aCkgKiAxMDAwMCUpKSAvIDEwMDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICB9XG4gICAgfUBlbHNlaWYgJG1MZWZ0ID09IGF1dG97XG4gICAgICAgIG1hcmdpbi10b3A6JG1Ub3AgKyAwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRtQm90dG9tICsgMHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkbVJpZ2h0ICsgMHB4O1xuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkdGFiKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOmZsb29yKCgoJG1Ub3AgLyAkcGFyZW50UHhXaWR0aCkgKiAxMDAwMCUpKSAvIDEwMDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IGZsb29yKCgoJG1Cb3R0b20gLyAkcGFyZW50UHhXaWR0aCkgKiAxMDAwMCUpKSAvIDEwMDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBmbG9vcigoKCRtUmlnaHQgLyAkcGFyZW50UHhXaWR0aCkgKiAxMDAwMCUpKSAvIDEwMDtcbiAgICAgICAgfVxuICAgIH1AZWxzZWlmICRtUmlnaHQgPT0gYXV0b3tcbiAgICAgICAgbWFyZ2luLXRvcDokbVRvcCArIDBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJG1Cb3R0b20gKyAwcHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAkbUxlZnQgKyAwcHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYikge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYikge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6Zmxvb3IoKCgkbVRvcCAvICRwYXJlbnRQeFdpZHRoKSAqIDEwMDAwJSkpIC8gMTAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IGZsb29yKCgoJG1Cb3R0b20gLyAkcGFyZW50UHhXaWR0aCkgKiAxMDAwMCUpKSAvIDEwMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogZmxvb3IoKCgkbUxlZnQgLyAkcGFyZW50UHhXaWR0aCkgKiAxMDAwMCUpKSAvIDEwMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9QGVsc2Uge1xuICAgICAgICBtYXJnaW4tdG9wOiRtVG9wICsgMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkbUJvdHRvbSArIDBweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICRtTGVmdCArIDBweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkbVJpZ2h0ICsgMHB4O1xuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkdGFiKSB7XG4gICAgICAgICAgICBtYXJnaW4gOiBmbG9vcigoKCRtVG9wIC8gJHBhcmVudFB4V2lkdGgpICogMTAwMDAlKSkgLyAxMDAgZmxvb3IoKCgkbVJpZ2h0IC8gJHBhcmVudFB4V2lkdGgpICogMTAwMDAlKSkgLyAxMDAgZmxvb3IoKCgkbUJvdHRvbSAvICRwYXJlbnRQeFdpZHRoKSAqIDEwMDAwJSkpIC8gMTAwIGZsb29yKCgoJG1MZWZ0IC8gJHBhcmVudFB4V2lkdGgpICogMTAwMDAlKSkgLyAxMDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5AbWl4aW4gbWFyZ2luVncoJG1Ub3AsICRtUmlnaHQsICRtQm90dG9tLCAkbUxlZnQpIHtcbiAgICBAaWYgJG1MZWZ0ID09IGF1dG8gYW5kICRtUmlnaHQgPT0gYXV0byB7XG4gICAgICAgIG1hcmdpbi10b3A6KCgkbVRvcCAvIDE5MjApICogMTAwMDB2dykgLyAxMDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICgoJG1Cb3R0b20gLyAxOTIwKSAqIDEwMDAwdncpIC8gMTAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgICBAZWxzZWlmICRtTGVmdCA9PSBhdXRve1xuICAgICAgICBtYXJnaW4tdG9wOigoJG1Ub3AgLyAxOTIwKSAqIDEwMDAwdncpIC8gMTAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAoKCRtQm90dG9tIC8gMTkyMCkgKiAxMDAwMHZ3KSAvIDEwMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogKCgkbVJpZ2h0IC8gMTkyMCkgKiAxMDAwMHZ3KSAvIDEwMDtcbiAgICB9XG4gICAgQGVsc2VpZiAkbVJpZ2h0ID09IGF1dG97XG4gICAgICAgIG1hcmdpbi10b3A6KCgkbVRvcCAvIDE5MjApICogMTAwMDB2dykgLyAxMDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICgoJG1Cb3R0b20gLyAxOTIwKSAqIDEwMDAwdncpIC8gMTAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogKCgkbUxlZnQgLyAxOTIwKSAqIDEwMDAwdncpIC8gMTAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICAgbWFyZ2luIDogKCgkbVRvcCAvIDE5MjApICogMTAwMDB2dykgLyAxMDAgKCgkbVJpZ2h0IC8gMTkyMCkgKiAxMDAwMHZ3KSAvIDEwMCAoKCRtQm90dG9tIC8gMTkyMCkgKiAxMDAwMHZ3KSAvIDEwMCAoKCRtTGVmdCAvIDE5MjApICogMTAwMDB2dykgLyAxMDA7XG4gICAgfVxufVxuQG1peGluIG1hcmdpblZ3U3AoJG1Ub3AsICRtUmlnaHQsICRtQm90dG9tLCAkbUxlZnQpIHtcbiAgICBAaWYgJG1MZWZ0ID09IGF1dG8gYW5kICRtUmlnaHQgPT0gYXV0byB7XG4gICAgICAgIG1hcmdpbi10b3A6KCgkbVRvcCAvIDM3NSkgKiAxMDAwMHZ3KSAvIDEwMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogKCgkbUJvdHRvbSAvIDM3NSkgKiAxMDAwMHZ3KSAvIDEwMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB9XG4gICAgQGVsc2VpZiAkbUxlZnQgPT0gYXV0b3tcbiAgICAgICAgbWFyZ2luLXRvcDooKCRtVG9wIC8gMzc1KSAqIDEwMDAwdncpIC8gMTAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAoKCRtQm90dG9tIC8gMzc1KSAqIDEwMDAwdncpIC8gMTAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAoKCRtUmlnaHQgLyAzNzUpICogMTAwMDB2dykgLyAxMDA7XG4gICAgfVxuICAgIEBlbHNlaWYgJG1SaWdodCA9PSBhdXRve1xuICAgICAgICBtYXJnaW4tdG9wOigoJG1Ub3AgLyAzNzUpICogMTAwMDB2dykgLyAxMDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICgoJG1Cb3R0b20gLyAzNzUpICogMTAwMDB2dykgLyAxMDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAoKCRtTGVmdCAvIDM3NSkgKiAxMDAwMHZ3KSAvIDEwMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAgIG1hcmdpbiA6ICgoJG1Ub3AgLyAzNzUpICogMTAwMDB2dykgLyAxMDAgKCgkbVJpZ2h0IC8gMzc1KSAqIDEwMDAwdncpIC8gMTAwICgoJG1Cb3R0b20gLyAzNzUpICogMTAwMDB2dykgLyAxMDAgKCgkbUxlZnQgLyAzNzUpICogMTAwMDB2dykgLyAxMDA7XG4gICAgfVxufVxuXG5AbWl4aW4gYXJjaGl2ZXNfdWxfc2V0dGluZ3NfM2NsdW1lcygkd2FwcGVyX3NpemU6MTAwJSwkd2lkdGg6MTAwJSwkY2x1bWVfd2lkaHQ6MTAwJSwkZGVmb19tYXJnaW46MCUsJGRvdWJsZV9tYXJnaW46MCUpIHtcbiAgICB3aWR0aDogZmxvb3IoKCggJHdpZHRoIC8gJHdhcHBlcl9zaXplICkgKiAxMDAwMCUgKSkgLyAxMDA7XG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgLW1zLWZsZXgtd3JhcDogd3JhcDtcbiAgICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczpmbGV4LXN0YXJ0O1xuICAgIGxpIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICB3aWR0aDogJGNsdW1lX3dpZGh0O1xuICAgICAgICBtYXJnaW46ICRkZWZvX21hcmdpbjsgICAgICAgIFxuICAgIH1cbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDEye1xuICAgICAgICBAaWYgJGkgJSAzID09MiB7XG4gICAgICAgICAgICBsaTpudGgtY2hpbGQoI3skaX0pIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46ICRkb3VibGVfbWFyZ2luO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuQG1peGluIHBhZGRpbmdQZXJjZW50KCRwYXJlbnRQeFdpZHRoLCAkbVRvcCwgJG1SaWdodCwgJG1Cb3R0b20sICRtTGVmdCl7XG4gICAgQGlmICRtTGVmdCA9PSBhdXRvIG9yICRtUmlnaHQgPT0gYXV0byB7XG4gICAgICAgIHBhZGRpbmctdG9wOiRtVG9wICsgMHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogJG1Cb3R0b20gKyAwcHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMCArIDBweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMCArIDBweDtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYikge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6Zmxvb3IoKCgkbVRvcCAvICRwYXJlbnRQeFdpZHRoKSAqIDEwMDAwJSkpIC8gMTAwO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IGZsb29yKCgoJG1Cb3R0b20gLyAkcGFyZW50UHhXaWR0aCkgKiAxMDAwMCUpKSAvIDEwMDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIH1cblxuICAgIH1AZWxzZSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiRtVG9wICsgMHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogJG1Cb3R0b20gKyAwcHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJG1MZWZ0ICsgMHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkbVJpZ2h0ICsgMHB4O1xuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkdGFiKSB7XG4gICAgICAgICAgICBwYWRkaW5nIDogZmxvb3IoKCgkbVRvcCAvICRwYXJlbnRQeFdpZHRoKSAqIDEwMDAwJSkpIC8gMTAwIGZsb29yKCgoJG1SaWdodCAvICRwYXJlbnRQeFdpZHRoKSAqIDEwMDAwJSkpIC8gMTAwIGZsb29yKCgoJG1Cb3R0b20gLyAkcGFyZW50UHhXaWR0aCkgKiAxMDAwMCUpKSAvIDEwMCBmbG9vcigoKCRtTGVmdCAvICRwYXJlbnRQeFdpZHRoKSAqIDEwMDAwJSkpIC8gMTAwO1xuICAgICAgICB9ICAgICAgICBcbiAgICB9XG59XG5AbWl4aW4gcGFkZGluZ1Z3KCRtVG9wLCAkbVJpZ2h0LCAkbUJvdHRvbSwgJG1MZWZ0KSB7XG4gICAgQGlmICRtTGVmdCA9PSBhdXRvIGFuZCAkbVJpZ2h0ID09IGF1dG8ge1xuICAgICAgICBwYWRkaW5nLXRvcDooKCRtVG9wIC8gMTkyMCkgKiAxMDAwMHZ3KSAvIDEwMDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICgoJG1Cb3R0b20gLyAxOTIwKSAqIDEwMDAwdncpIC8gMTAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IGF1dG87XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IGF1dG87XG4gICAgfVxuICAgIEBlbHNlaWYgJG1MZWZ0ID09IGF1dG97XG4gICAgICAgIHBhZGRpbmctdG9wOigoJG1Ub3AgLyAxOTIwKSAqIDEwMDAwdncpIC8gMTAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogKCgkbUJvdHRvbSAvIDE5MjApICogMTAwMDB2dykgLyAxMDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogYXV0bztcbiAgICAgICAgcGFkZGluZy1yaWdodDogKCgkbVJpZ2h0IC8gMTkyMCkgKiAxMDAwMHZ3KSAvIDEwMDtcbiAgICB9XG4gICAgQGVsc2VpZiAkbVJpZ2h0ID09IGF1dG97XG4gICAgICAgIHBhZGRpbmctdG9wOigoJG1Ub3AgLyAxOTIwKSAqIDEwMDAwdncpIC8gMTAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogKCgkbUJvdHRvbSAvIDE5MjApICogMTAwMDB2dykgLyAxMDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogKCgkbUxlZnQgLyAxOTIwKSAqIDEwMDAwdncpIC8gMTAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAgIHBhZGRpbmcgOiAoKCRtVG9wIC8gMTkyMCkgKiAxMDAwMHZ3KSAvIDEwMCAoKCRtUmlnaHQgLyAxOTIwKSAqIDEwMDAwdncpIC8gMTAwICgoJG1Cb3R0b20gLyAxOTIwKSAqIDEwMDAwdncpIC8gMTAwICgoJG1MZWZ0IC8gMTkyMCkgKiAxMDAwMHZ3KSAvIDEwMDtcbiAgICB9XG59XG5AbWl4aW4gcGFkZGluZ1Z3U3AoJG1Ub3AsICRtUmlnaHQsICRtQm90dG9tLCAkbUxlZnQpIHtcbiAgICBAaWYgJG1MZWZ0ID09IGF1dG8gYW5kICRtUmlnaHQgPT0gYXV0byB7XG4gICAgICAgIHBhZGRpbmctdG9wOigoJG1Ub3AgLyAzNzUpICogMTAwMDB2dykgLyAxMDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAoKCRtQm90dG9tIC8gMzc1KSAqIDEwMDAwdncpIC8gMTAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IGF1dG87XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IGF1dG87XG4gICAgfVxuICAgIEBlbHNlaWYgJG1MZWZ0ID09IGF1dG97XG4gICAgICAgIHBhZGRpbmctdG9wOigoJG1Ub3AgLyAzNzUpICogMTAwMDB2dykgLyAxMDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAoKCRtQm90dG9tIC8gMzc1KSAqIDEwMDAwdncpIC8gMTAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IGF1dG87XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICgoJG1SaWdodCAvIDM3NSkgKiAxMDAwMHZ3KSAvIDEwMDtcbiAgICB9XG4gICAgQGVsc2VpZiAkbVJpZ2h0ID09IGF1dG97XG4gICAgICAgIHBhZGRpbmctdG9wOigoJG1Ub3AgLyAzNzUpICogMTAwMDB2dykgLyAxMDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAoKCRtQm90dG9tIC8gMzc1KSAqIDEwMDAwdncpIC8gMTAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICgoJG1MZWZ0IC8gMzc1KSAqIDEwMDAwdncpIC8gMTAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAgIHBhZGRpbmcgOiAoKCRtVG9wIC8gMzc1KSAqIDEwMDAwdncpIC8gMTAwICgoJG1SaWdodCAvIDM3NSkgKiAxMDAwMHZ3KSAvIDEwMCAoKCRtQm90dG9tIC8gMzc1KSAqIDEwMDAwdncpIC8gMTAwICgoJG1MZWZ0IC8gMzc1KSAqIDEwMDAwdncpIC8gMTAwO1xuICAgIH1cbn1cbkBtaXhpbiBsaW5laGVpZ2h0KCRmb250c2l6ZSwkbGluZWhlaWdodCl7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5laGVpZ2h0LyRmb250c2l6ZTtcbiAgICBAaW5jbHVkZSBsaW5lSGVpZ2h0Q3JvcCgkZm9udHNpemUsJGxpbmVoZWlnaHQpO1xufVxuQG1peGluIGxpbmVIZWlnaHRDcm9wKCRmb250c2l6ZSwkbGluZWhlaWdodCkge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBtYXJnaW4tdG9wOiBjYWxjKCgxIC0gI3skbGluZWhlaWdodC8kZm9udHNpemV9KSAqIC41ZW0pO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKCgxIC0gI3skbGluZWhlaWdodC8kZm9udHNpemV9KSAqIC41ZW0pO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgIH1cbn1cblxuQG1peGluIGNvbnRlbnRTZXQoKSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7ICAgIFxufVxuQG1peGluIHBvc2l0aW9uV0hDZW50ZXIoKSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7cmlnaHQ6IDA7dG9wOiAwO2JvdHRvbTogMDtcbiAgICBtYXJnaW46IGF1dG87XG59XG5AbWl4aW4gcG9zaXRpb25XQ2VudGVyKCkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO3JpZ2h0OiAwO1xuICAgIG1hcmdpbjogYXV0bztcbn1cbkBtaXhpbiBwb3NpdGlvbkhDZW50ZXIoKSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtib3R0b206IDA7XG4gICAgbWFyZ2luOiBhdXRvO1xufVxuXG5AbWl4aW4gZm9udFZ3KCRwYXJlbnRQeFdpZHRoLCRwY19zaXplOjE2cHgpe1xuICAgIGZvbnQtc2l6ZTogKCggJHBjX3NpemUgLyAkcGFyZW50UHhXaWR0aCApICogMTAwMDB2dyApIC8gMTAwO1xufVxuQG1peGluIGZvbnRWd1NwKCRwYXJlbnRQeFdpZHRoLCRwY19zaXplOjE2cHgpe1xuICAgIGZvbnQtc2l6ZTogKCggJHBjX3NpemUgLyAzNzUgKSAqIDEwMDAwdncgKSAvIDEwMDtcbn1cblxuQG1peGluIHdpZHRoQ2FsYygkd2FwICwgJHNpemUpIHtcbiAgICB3aWR0aDogY2FsYygkd2FwIC0gJHNpemUpO1xufSIsCgkJIi8vIEJvdXJib24gNC4yLjdcbi8vIGh0dHA6Ly9ib3VyYm9uLmlvXG4vLyBDb3B5cmlnaHQgMjAxMS0yMDE1IHRob3VnaHRib3QsIGluYy5cbi8vIE1JVCBMaWNlbnNlXG5cbkBpbXBvcnQgXCJzZXR0aW5ncy9wcmVmaXhlclwiO1xuQGltcG9ydCBcInNldHRpbmdzL3B4LXRvLWVtXCI7XG5AaW1wb3J0IFwic2V0dGluZ3MvYXNzZXQtcGlwZWxpbmVcIjtcblxuQGltcG9ydCBcImZ1bmN0aW9ucy9hc3NpZ24taW5wdXRzXCI7XG5AaW1wb3J0IFwiZnVuY3Rpb25zL2NvbnRhaW5zXCI7XG5AaW1wb3J0IFwiZnVuY3Rpb25zL2NvbnRhaW5zLWZhbHN5XCI7XG5AaW1wb3J0IFwiZnVuY3Rpb25zL2lzLWxlbmd0aFwiO1xuQGltcG9ydCBcImZ1bmN0aW9ucy9pcy1saWdodFwiO1xuQGltcG9ydCBcImZ1bmN0aW9ucy9pcy1udW1iZXJcIjtcbkBpbXBvcnQgXCJmdW5jdGlvbnMvaXMtc2l6ZVwiO1xuQGltcG9ydCBcImZ1bmN0aW9ucy9weC10by1lbVwiO1xuQGltcG9ydCBcImZ1bmN0aW9ucy9weC10by1yZW1cIjtcbkBpbXBvcnQgXCJmdW5jdGlvbnMvc2hhZGVcIjtcbkBpbXBvcnQgXCJmdW5jdGlvbnMvc3RyaXAtdW5pdHNcIjtcbkBpbXBvcnQgXCJmdW5jdGlvbnMvdGludFwiO1xuQGltcG9ydCBcImZ1bmN0aW9ucy90cmFuc2l0aW9uLXByb3BlcnR5LW5hbWVcIjtcbkBpbXBvcnQgXCJmdW5jdGlvbnMvdW5wYWNrXCI7XG5AaW1wb3J0IFwiZnVuY3Rpb25zL21vZHVsYXItc2NhbGVcIjtcblxuQGltcG9ydCBcImhlbHBlcnMvY29udmVydC11bml0c1wiO1xuQGltcG9ydCBcImhlbHBlcnMvZGlyZWN0aW9uYWwtdmFsdWVzXCI7XG5AaW1wb3J0IFwiaGVscGVycy9mb250LXNvdXJjZS1kZWNsYXJhdGlvblwiO1xuQGltcG9ydCBcImhlbHBlcnMvZ3JhZGllbnQtcG9zaXRpb25zLXBhcnNlclwiO1xuQGltcG9ydCBcImhlbHBlcnMvbGluZWFyLWFuZ2xlLXBhcnNlclwiO1xuQGltcG9ydCBcImhlbHBlcnMvbGluZWFyLWdyYWRpZW50LXBhcnNlclwiO1xuQGltcG9ydCBcImhlbHBlcnMvbGluZWFyLXBvc2l0aW9ucy1wYXJzZXJcIjtcbkBpbXBvcnQgXCJoZWxwZXJzL2xpbmVhci1zaWRlLWNvcm5lci1wYXJzZXJcIjtcbkBpbXBvcnQgXCJoZWxwZXJzL3JhZGlhbC1hcmctcGFyc2VyXCI7XG5AaW1wb3J0IFwiaGVscGVycy9yYWRpYWwtcG9zaXRpb25zLXBhcnNlclwiO1xuQGltcG9ydCBcImhlbHBlcnMvcmFkaWFsLWdyYWRpZW50LXBhcnNlclwiO1xuQGltcG9ydCBcImhlbHBlcnMvcmVuZGVyLWdyYWRpZW50c1wiO1xuQGltcG9ydCBcImhlbHBlcnMvc2hhcGUtc2l6ZS1zdHJpcHBlclwiO1xuQGltcG9ydCBcImhlbHBlcnMvc3RyLXRvLW51bVwiO1xuXG5AaW1wb3J0IFwiY3NzMy9hbmltYXRpb25cIjtcbkBpbXBvcnQgXCJjc3MzL2FwcGVhcmFuY2VcIjtcbkBpbXBvcnQgXCJjc3MzL2JhY2tmYWNlLXZpc2liaWxpdHlcIjtcbkBpbXBvcnQgXCJjc3MzL2JhY2tncm91bmRcIjtcbkBpbXBvcnQgXCJjc3MzL2JhY2tncm91bmQtaW1hZ2VcIjtcbkBpbXBvcnQgXCJjc3MzL2JvcmRlci1pbWFnZVwiO1xuQGltcG9ydCBcImNzczMvY2FsY1wiO1xuQGltcG9ydCBcImNzczMvY29sdW1uc1wiO1xuQGltcG9ydCBcImNzczMvZmlsdGVyXCI7XG5AaW1wb3J0IFwiY3NzMy9mbGV4LWJveFwiO1xuQGltcG9ydCBcImNzczMvZm9udC1mYWNlXCI7XG5AaW1wb3J0IFwiY3NzMy9mb250LWZlYXR1cmUtc2V0dGluZ3NcIjtcbkBpbXBvcnQgXCJjc3MzL2hpZHBpLW1lZGlhLXF1ZXJ5XCI7XG5AaW1wb3J0IFwiY3NzMy9oeXBoZW5zXCI7XG5AaW1wb3J0IFwiY3NzMy9pbWFnZS1yZW5kZXJpbmdcIjtcbkBpbXBvcnQgXCJjc3MzL2tleWZyYW1lc1wiO1xuQGltcG9ydCBcImNzczMvbGluZWFyLWdyYWRpZW50XCI7XG5AaW1wb3J0IFwiY3NzMy9wZXJzcGVjdGl2ZVwiO1xuQGltcG9ydCBcImNzczMvcGxhY2Vob2xkZXJcIjtcbkBpbXBvcnQgXCJjc3MzL3JhZGlhbC1ncmFkaWVudFwiO1xuQGltcG9ydCBcImNzczMvc2VsZWN0aW9uXCI7XG5AaW1wb3J0IFwiY3NzMy90ZXh0LWRlY29yYXRpb25cIjtcbkBpbXBvcnQgXCJjc3MzL3RyYW5zZm9ybVwiO1xuQGltcG9ydCBcImNzczMvdHJhbnNpdGlvblwiO1xuQGltcG9ydCBcImNzczMvdXNlci1zZWxlY3RcIjtcblxuQGltcG9ydCBcImFkZG9ucy9ib3JkZXItY29sb3JcIjtcbkBpbXBvcnQgXCJhZGRvbnMvYm9yZGVyLXJhZGl1c1wiO1xuQGltcG9ydCBcImFkZG9ucy9ib3JkZXItc3R5bGVcIjtcbkBpbXBvcnQgXCJhZGRvbnMvYm9yZGVyLXdpZHRoXCI7XG5AaW1wb3J0IFwiYWRkb25zL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJhZGRvbnMvY2xlYXJmaXhcIjtcbkBpbXBvcnQgXCJhZGRvbnMvZWxsaXBzaXNcIjtcbkBpbXBvcnQgXCJhZGRvbnMvZm9udC1zdGFja3NcIjtcbkBpbXBvcnQgXCJhZGRvbnMvaGlkZS10ZXh0XCI7XG5AaW1wb3J0IFwiYWRkb25zL21hcmdpblwiO1xuQGltcG9ydCBcImFkZG9ucy9wYWRkaW5nXCI7XG5AaW1wb3J0IFwiYWRkb25zL3Bvc2l0aW9uXCI7XG5AaW1wb3J0IFwiYWRkb25zL3ByZWZpeGVyXCI7XG5AaW1wb3J0IFwiYWRkb25zL3JldGluYS1pbWFnZVwiO1xuQGltcG9ydCBcImFkZG9ucy9zaXplXCI7XG5AaW1wb3J0IFwiYWRkb25zL3RleHQtaW5wdXRzXCI7XG5AaW1wb3J0IFwiYWRkb25zL3RpbWluZy1mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJhZGRvbnMvdHJpYW5nbGVcIjtcbkBpbXBvcnQgXCJhZGRvbnMvd29yZC13cmFwXCI7XG5cbkBpbXBvcnQgXCJib3VyYm9uLWRlcHJlY2F0ZWQtdXBjb21pbmdcIjtcbiIsCgkJIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIEdsb2JhbCB2YXJpYWJsZXMgdG8gZW5hYmxlIG9yIGRpc2FibGUgdmVuZG9yIHByZWZpeGVzXG5cbiRwcmVmaXgtZm9yLXdlYmtpdDogICAgdHJ1ZSAhZGVmYXVsdDtcbiRwcmVmaXgtZm9yLW1vemlsbGE6ICAgdHJ1ZSAhZGVmYXVsdDtcbiRwcmVmaXgtZm9yLW1pY3Jvc29mdDogdHJ1ZSAhZGVmYXVsdDtcbiRwcmVmaXgtZm9yLW9wZXJhOiAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRwcmVmaXgtZm9yLXNwZWM6ICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiIsCgkJIiRlbS1iYXNlOiAxNnB4ICFkZWZhdWx0O1xuIiwKCQkiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gQSBnbG9iYWwgc2V0dGluZyB0byBlbmFibGUgb3IgZGlzYWJsZSB0aGUgYCRhc3NldC1waXBlbGluZWAgdmFyaWFibGUgZm9yIGFsbCBmdW5jdGlvbnMgdGhhdCBhY2NlcHQgaXQuXG4vLy9cbi8vLyBAdHlwZSBCb29sXG5cbiRhc3NldC1waXBlbGluZTogZmFsc2UgIWRlZmF1bHQ7XG4iLAoJCSJAZnVuY3Rpb24gYXNzaWduLWlucHV0cygkaW5wdXRzLCAkcHNldWRvOiBudWxsKSB7XG4gICRsaXN0OiAoKTtcblxuICBAZWFjaCAkaW5wdXQgaW4gJGlucHV0cyB7XG4gICAgJGlucHV0OiB1bnF1b3RlKCRpbnB1dCk7XG4gICAgJGlucHV0OiBpZigkcHNldWRvLCAkaW5wdXQgKyBcIjpcIiArICRwc2V1ZG8sICRpbnB1dCk7XG4gICAgJGxpc3Q6IGFwcGVuZCgkbGlzdCwgJGlucHV0LCBjb21tYSk7XG4gIH1cblxuICBAcmV0dXJuICRsaXN0O1xufVxuIiwKCQkiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gQ2hlY2tzIGlmIGEgbGlzdCBjb250YWlucyBhIHZhbHVlKHMpLlxuLy8vXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge0xpc3R9ICRsaXN0XG4vLy8gICBUaGUgbGlzdCB0byBjaGVjayBhZ2FpbnN0LlxuLy8vXG4vLy8gQHBhcmFtIHtMaXN0fSAkdmFsdWVzXG4vLy8gICBBIHNpbmdsZSB2YWx1ZSBvciBsaXN0IG9mIHZhbHVlcyB0byBjaGVjayBmb3IuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIGNvbnRhaW5zKCRsaXN0LCAkdmFsdWUpXG4vLy9cbi8vLyBAcmV0dXJuIHtCb29sfVxuXG5AZnVuY3Rpb24gY29udGFpbnMoJGxpc3QsICR2YWx1ZXMuLi4pIHtcbiAgQGVhY2ggJHZhbHVlIGluICR2YWx1ZXMge1xuICAgIEBpZiB0eXBlLW9mKGluZGV4KCRsaXN0LCAkdmFsdWUpKSAhPSBcIm51bWJlclwiIHtcbiAgICAgIEByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiB0cnVlO1xufVxuIiwKCQkiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gQ2hlY2tzIGlmIGEgbGlzdCBkb2VzIG5vdCBjb250YWlucyBhIHZhbHVlLlxuLy8vXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge0xpc3R9ICRsaXN0XG4vLy8gICBUaGUgbGlzdCB0byBjaGVjayBhZ2FpbnN0LlxuLy8vXG4vLy8gQHJldHVybiB7Qm9vbH1cblxuQGZ1bmN0aW9uIGNvbnRhaW5zLWZhbHN5KCRsaXN0KSB7XG4gIEBlYWNoICRpdGVtIGluICRsaXN0IHtcbiAgICBAaWYgbm90ICRpdGVtIHtcbiAgICAgIEByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuIGZhbHNlO1xufVxuIiwKCQkiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gQ2hlY2tzIGZvciBhIHZhbGlkIENTUyBsZW5ndGguXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHZhbHVlXG5cbkBmdW5jdGlvbiBpcy1sZW5ndGgoJHZhbHVlKSB7XG4gIEByZXR1cm4gdHlwZS1vZigkdmFsdWUpICE9IFwibnVsbFwiIGFuZCAoc3RyLXNsaWNlKCR2YWx1ZSArIFwiXCIsIDEsIDQpID09IFwiY2FsY1wiXG4gICAgICAgb3IgaW5kZXgoYXV0byBpbmhlcml0IGluaXRpYWwgMCwgJHZhbHVlKVxuICAgICAgIG9yICh0eXBlLW9mKCR2YWx1ZSkgPT0gXCJudW1iZXJcIiBhbmQgbm90KHVuaXRsZXNzKCR2YWx1ZSkpKSk7XG59XG4iLAoJCSJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBQcm9ncmFtYXRpY2FsbHkgZGV0ZXJtaW5lcyB3aGV0aGVyIGEgY29sb3IgaXMgbGlnaHQgb3IgZGFyay5cbi8vL1xuLy8vIEBsaW5rIGh0dHA6Ly9yb2JvdHMudGhvdWdodGJvdC5jb20vY2xvc2VyLWxvb2stY29sb3ItbGlnaHRuZXNzXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yIChIZXgpfSAkY29sb3Jcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgaXMtbGlnaHQoJGNvbG9yKVxuLy8vXG4vLy8gQHJldHVybiB7Qm9vbH1cblxuQGZ1bmN0aW9uIGlzLWxpZ2h0KCRoZXgtY29sb3IpIHtcbiAgJC1sb2NhbC1yZWQ6IHJlZChyZ2JhKCRoZXgtY29sb3IsIDEpKTtcbiAgJC1sb2NhbC1ncmVlbjogZ3JlZW4ocmdiYSgkaGV4LWNvbG9yLCAxKSk7XG4gICQtbG9jYWwtYmx1ZTogYmx1ZShyZ2JhKCRoZXgtY29sb3IsIDEpKTtcbiAgJC1sb2NhbC1saWdodG5lc3M6ICgkLWxvY2FsLXJlZCAqIDAuMjEyNiArICQtbG9jYWwtZ3JlZW4gKiAwLjcxNTIgKyAkLWxvY2FsLWJsdWUgKiAwLjA3MjIpIC8gMjU1O1xuXG4gIEByZXR1cm4gJC1sb2NhbC1saWdodG5lc3MgPiAwLjY7XG59XG4iLAoJCSJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBDaGVja3MgZm9yIGEgdmFsaWQgbnVtYmVyLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZVxuLy8vXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBjb250YWluc1xuXG5AZnVuY3Rpb24gaXMtbnVtYmVyKCR2YWx1ZSkge1xuICBAcmV0dXJuIGNvbnRhaW5zKFwiMFwiIFwiMVwiIFwiMlwiIFwiM1wiIFwiNFwiIFwiNVwiIFwiNlwiIFwiN1wiIFwiOFwiIFwiOVwiIDAgMSAyIDMgNCA1IDYgNyA4IDksICR2YWx1ZSk7XG59XG4iLAoJCSJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBDaGVja3MgZm9yIGEgdmFsaWQgQ1NTIHNpemUuXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHZhbHVlXG4vLy9cbi8vLyBAcmVxdWlyZSB7ZnVuY3Rpb259IGNvbnRhaW5zXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBpcy1sZW5ndGhcblxuQGZ1bmN0aW9uIGlzLXNpemUoJHZhbHVlKSB7XG4gIEByZXR1cm4gaXMtbGVuZ3RoKCR2YWx1ZSlcbiAgICAgICAgICBvciBjb250YWlucyhcImZpbGxcIiBcImZpdC1jb250ZW50XCIgXCJtaW4tY29udGVudFwiIFwibWF4LWNvbnRlbnRcIiwgJHZhbHVlKTtcbn1cbiIsCgkJIi8vIENvbnZlcnQgcGl4ZWxzIHRvIGVtc1xuLy8gZWcuIGZvciBhIHJlbGF0aW9uYWwgdmFsdWUgb2YgMTJweCB3cml0ZSBlbSgxMikgd2hlbiB0aGUgcGFyZW50IGlzIDE2cHhcbi8vIGlmIHRoZSBwYXJlbnQgaXMgYW5vdGhlciB2YWx1ZSBzYXkgMjRweCB3cml0ZSBlbSgxMiwgMjQpXG5cbkBmdW5jdGlvbiBlbSgkcHh2YWwsICRiYXNlOiAkZW0tYmFzZSkge1xuICBAaWYgbm90IHVuaXRsZXNzKCRweHZhbCkge1xuICAgICRweHZhbDogc3RyaXAtdW5pdHMoJHB4dmFsKTtcbiAgfVxuICBAaWYgbm90IHVuaXRsZXNzKCRiYXNlKSB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXRzKCRiYXNlKTtcbiAgfVxuICBAcmV0dXJuICgkcHh2YWwgLyAkYmFzZSkgKiAxZW07XG59XG4iLAoJCSIvLyBDb252ZXJ0IHBpeGVscyB0byByZW1zXG4vLyBlZy4gZm9yIGEgcmVsYXRpb25hbCB2YWx1ZSBvZiAxMnB4IHdyaXRlIHJlbSgxMilcbi8vIEFzc3VtZXMgJGVtLWJhc2UgaXMgdGhlIGZvbnQtc2l6ZSBvZiA8aHRtbD5cblxuQGZ1bmN0aW9uIHJlbSgkcHh2YWwpIHtcbiAgQGlmIG5vdCB1bml0bGVzcygkcHh2YWwpIHtcbiAgICAkcHh2YWw6IHN0cmlwLXVuaXRzKCRweHZhbCk7XG4gIH1cblxuICAkYmFzZTogJGVtLWJhc2U7XG4gIEBpZiBub3QgdW5pdGxlc3MoJGJhc2UpIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdHMoJGJhc2UpO1xuICB9XG4gIEByZXR1cm4gKCRweHZhbCAvICRiYXNlKSAqIDFyZW07XG59XG4iLAoJCSJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBNaXhlcyBhIGNvbG9yIHdpdGggYmxhY2suXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3Jcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyIChQZXJjZW50YWdlKX0gJHBlcmNlbnRcbi8vLyAgIFRoZSBhbW91bnQgb2YgYmxhY2sgdG8gYmUgbWl4ZWQgaW4uXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogc2hhZGUoI2ZmYmI1MiwgNjAlKTtcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogIzY2NGEyMDtcbi8vLyAgIH1cbi8vL1xuLy8vIEByZXR1cm4ge0NvbG9yfVxuXG5AZnVuY3Rpb24gc2hhZGUoJGNvbG9yLCAkcGVyY2VudCkge1xuICBAcmV0dXJuIG1peCgjMDAwLCAkY29sb3IsICRwZXJjZW50KTtcbn1cbiIsCgkJIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFN0cmlwcyB0aGUgdW5pdCBmcm9tIGEgbnVtYmVyLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXIgKFdpdGggVW5pdCl9ICR2YWx1ZVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAkZGltZW5zaW9uOiBzdHJpcC11bml0cygxMGVtKTtcbi8vL1xuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcbi8vLyAgICRkaW1lbnNpb246IDEwO1xuLy8vXG4vLy8gQHJldHVybiB7TnVtYmVyIChVbml0bGVzcyl9XG5cbkBmdW5jdGlvbiBzdHJpcC11bml0cygkdmFsdWUpIHtcbiAgQHJldHVybiAoJHZhbHVlIC8gKCR2YWx1ZSAqIDAgKyAxKSk7XG59XG4iLAoJCSJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBNaXhlcyBhIGNvbG9yIHdpdGggd2hpdGUuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3Jcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyIChQZXJjZW50YWdlKX0gJHBlcmNlbnRcbi8vLyAgIFRoZSBhbW91bnQgb2Ygd2hpdGUgdG8gYmUgbWl4ZWQgaW4uXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogdGludCgjNmVjYWE2LCA0MCUpO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYThkZmM5O1xuLy8vICAgfVxuLy8vXG4vLy8gQHJldHVybiB7Q29sb3J9XG5cbkBmdW5jdGlvbiB0aW50KCRjb2xvciwgJHBlcmNlbnQpIHtcbiAgQHJldHVybiBtaXgoI2ZmZiwgJGNvbG9yLCAkcGVyY2VudCk7XG59XG4iLAoJCSIvLyBSZXR1cm4gdmVuZG9yLXByZWZpeGVkIHByb3BlcnR5IG5hbWVzIGlmIGFwcHJvcHJpYXRlXG4vLyBFeGFtcGxlOiB0cmFuc2l0aW9uLXByb3BlcnR5LW5hbWVzKCh0cmFuc2Zvcm0sIGNvbG9yLCBiYWNrZ3JvdW5kKSwgbW96KSAtPiAtbW96LXRyYW5zZm9ybSwgY29sb3IsIGJhY2tncm91bmRcbi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLy9cbkBmdW5jdGlvbiB0cmFuc2l0aW9uLXByb3BlcnR5LW5hbWVzKCRwcm9wcywgJHZlbmRvcjogZmFsc2UpIHtcbiAgJG5ldy1wcm9wczogKCk7XG5cbiAgQGVhY2ggJHByb3AgaW4gJHByb3BzIHtcbiAgICAkbmV3LXByb3BzOiBhcHBlbmQoJG5ldy1wcm9wcywgdHJhbnNpdGlvbi1wcm9wZXJ0eS1uYW1lKCRwcm9wLCAkdmVuZG9yKSwgY29tbWEpO1xuICB9XG5cbiAgQHJldHVybiAkbmV3LXByb3BzO1xufVxuXG5AZnVuY3Rpb24gdHJhbnNpdGlvbi1wcm9wZXJ0eS1uYW1lKCRwcm9wLCAkdmVuZG9yOiBmYWxzZSkge1xuICAvLyBwdXQgb3RoZXIgcHJvcGVydGllcyB0aGF0IG5lZWQgdG8gYmUgcHJlZml4ZWQgaGVyZSBhc3dlbGxcbiAgQGlmICR2ZW5kb3IgYW5kICRwcm9wID09IHRyYW5zZm9ybSB7XG4gICAgQHJldHVybiB1bnF1b3RlKCctJyskdmVuZG9yKyctJyskcHJvcCk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gJHByb3A7XG4gIH1cbn1cbiIsCgkJIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIENvbnZlcnRzIHNob3J0aGFuZCB0byB0aGUgNC12YWx1ZSBzeW50YXguXG4vLy9cbi8vLyBAcGFyYW0ge0xpc3R9ICRzaG9ydGhhbmRcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBtYXJnaW46IHVucGFjaygxZW0gMmVtKTtcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgbWFyZ2luOiAxZW0gMmVtIDFlbSAyZW07XG4vLy8gICB9XG5cbkBmdW5jdGlvbiB1bnBhY2soJHNob3J0aGFuZCkge1xuICBAaWYgbGVuZ3RoKCRzaG9ydGhhbmQpID09IDEge1xuICAgIEByZXR1cm4gbnRoKCRzaG9ydGhhbmQsIDEpIG50aCgkc2hvcnRoYW5kLCAxKSBudGgoJHNob3J0aGFuZCwgMSkgbnRoKCRzaG9ydGhhbmQsIDEpO1xuICB9IEBlbHNlIGlmIGxlbmd0aCgkc2hvcnRoYW5kKSA9PSAyIHtcbiAgICBAcmV0dXJuIG50aCgkc2hvcnRoYW5kLCAxKSBudGgoJHNob3J0aGFuZCwgMikgbnRoKCRzaG9ydGhhbmQsIDEpIG50aCgkc2hvcnRoYW5kLCAyKTtcbiAgfSBAZWxzZSBpZiBsZW5ndGgoJHNob3J0aGFuZCkgPT0gMyB7XG4gICAgQHJldHVybiBudGgoJHNob3J0aGFuZCwgMSkgbnRoKCRzaG9ydGhhbmQsIDIpIG50aCgkc2hvcnRoYW5kLCAzKSBudGgoJHNob3J0aGFuZCwgMik7XG4gIH0gQGVsc2Uge1xuICAgIEByZXR1cm4gJHNob3J0aGFuZDtcbiAgfVxufVxuIiwKCQkiLy8gU2NhbGluZyBWYXJpYWJsZXNcbiRnb2xkZW46ICAgICAgICAgICAxLjYxODtcbiRtaW5vci1zZWNvbmQ6ICAgICAxLjA2NztcbiRtYWpvci1zZWNvbmQ6ICAgICAxLjEyNTtcbiRtaW5vci10aGlyZDogICAgICAxLjI7XG4kbWFqb3ItdGhpcmQ6ICAgICAgMS4yNTtcbiRwZXJmZWN0LWZvdXJ0aDogICAxLjMzMztcbiRhdWdtZW50ZWQtZm91cnRoOiAxLjQxNDtcbiRwZXJmZWN0LWZpZnRoOiAgICAxLjU7XG4kbWlub3Itc2l4dGg6ICAgICAgMS42O1xuJG1ham9yLXNpeHRoOiAgICAgIDEuNjY3O1xuJG1pbm9yLXNldmVudGg6ICAgIDEuNzc4O1xuJG1ham9yLXNldmVudGg6ICAgIDEuODc1O1xuJG9jdGF2ZTogICAgICAgICAgIDI7XG4kbWFqb3ItdGVudGg6ICAgICAgMi41O1xuJG1ham9yLWVsZXZlbnRoOiAgIDIuNjY3O1xuJG1ham9yLXR3ZWxmdGg6ICAgIDM7XG4kZG91YmxlLW9jdGF2ZTogICAgNDtcblxuJG1vZHVsYXItc2NhbGUtcmF0aW86ICRwZXJmZWN0LWZvdXJ0aCAhZGVmYXVsdDtcbiRtb2R1bGFyLXNjYWxlLWJhc2U6IGVtKCRlbS1iYXNlKSAhZGVmYXVsdDtcblxuQGZ1bmN0aW9uIG1vZHVsYXItc2NhbGUoJGluY3JlbWVudCwgJHZhbHVlOiAkbW9kdWxhci1zY2FsZS1iYXNlLCAkcmF0aW86ICRtb2R1bGFyLXNjYWxlLXJhdGlvKSB7XG4gICR2MTogbnRoKCR2YWx1ZSwgMSk7XG4gICR2MjogbnRoKCR2YWx1ZSwgbGVuZ3RoKCR2YWx1ZSkpO1xuICAkdmFsdWU6ICR2MTtcblxuICAvLyBzY2FsZSAkdjIgdG8ganVzdCBhYm92ZSAkdjFcbiAgQHdoaWxlICR2MiA+ICR2MSB7XG4gICAgJHYyOiAoJHYyIC8gJHJhdGlvKTsgLy8gd2lsbCBiZSBvZmYtYnktMVxuICB9XG4gIEB3aGlsZSAkdjIgPCAkdjEge1xuICAgICR2MjogKCR2MiAqICRyYXRpbyk7IC8vIHdpbGwgZml4IG9mZi1ieS0xXG4gIH1cblxuICAvLyBjaGVjayBBRlRFUiBzY2FsaW5nICR2MiB0byBwcmV2ZW50IGRvdWJsZS1jb3VudGluZyBjb3JuZXItY2FzZVxuICAkZG91YmxlLXN0cmFuZGVkOiAkdjIgPiAkdjE7XG5cbiAgQGlmICRpbmNyZW1lbnQgPiAwIHtcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRpbmNyZW1lbnQge1xuICAgICAgQGlmICRkb3VibGUtc3RyYW5kZWQgYW5kICgkdjEgKiAkcmF0aW8pID4gJHYyIHtcbiAgICAgICAgJHZhbHVlOiAkdjI7XG4gICAgICAgICR2MjogKCR2MiAqICRyYXRpbyk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJHYxOiAoJHYxICogJHJhdGlvKTtcbiAgICAgICAgJHZhbHVlOiAkdjE7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRpbmNyZW1lbnQgPCAwIHtcbiAgICAvLyBhZGp1c3QgJHYyIHRvIGp1c3QgYmVsb3cgJHYxXG4gICAgQGlmICRkb3VibGUtc3RyYW5kZWQge1xuICAgICAgJHYyOiAoJHYyIC8gJHJhdGlvKTtcbiAgICB9XG5cbiAgICBAZm9yICRpIGZyb20gJGluY3JlbWVudCB0aHJvdWdoIC0xIHtcbiAgICAgIEBpZiAkZG91YmxlLXN0cmFuZGVkIGFuZCAoJHYxIC8gJHJhdGlvKSA8ICR2MiB7XG4gICAgICAgICR2YWx1ZTogJHYyO1xuICAgICAgICAkdjI6ICgkdjIgLyAkcmF0aW8pO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICR2MTogKCR2MSAvICRyYXRpbyk7XG4gICAgICAgICR2YWx1ZTogJHYxO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuIiwKCQkiLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovL1xuLy8gSGVscGVyIGZ1bmN0aW9uIGZvciBzdHItdG8tbnVtIGZuLlxuLy8gU291cmNlOiBodHRwOi8vc2Fzc21laXN0ZXIuY29tL2dpc3QvOTY0NzQwOFxuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovL1xuQGZ1bmN0aW9uIF9jb252ZXJ0LXVuaXRzKCRudW1iZXIsICR1bml0KSB7XG4gICRzdHJpbmdzOiBcInB4XCIsIFwiY21cIiwgXCJtbVwiLCBcIiVcIiwgXCJjaFwiLCBcInBpY2FcIiwgXCJpblwiLCBcImVtXCIsIFwicmVtXCIsIFwicHRcIiwgXCJwY1wiLCBcImV4XCIsIFwidndcIiwgXCJ2aFwiLCBcInZtaW5cIiwgXCJ2bWF4XCIsIFwiZGVnXCIsIFwicmFkXCIsIFwiZ3JhZFwiLCBcInR1cm5cIjtcbiAgJHVuaXRzOiAgIDFweCwgMWNtLCAxbW0sIDElLCAxY2gsIDFwaWNhLCAxaW4sIDFlbSwgMXJlbSwgMXB0LCAxcGMsIDFleCwgMXZ3LCAxdmgsIDF2bWluLCAxdm1heCwgMWRlZywgMXJhZCwgMWdyYWQsIDF0dXJuO1xuICAkaW5kZXg6IGluZGV4KCRzdHJpbmdzLCAkdW5pdCk7XG5cbiAgQGlmIG5vdCAkaW5kZXgge1xuICAgIEB3YXJuIFwiVW5rbm93biB1bml0IGAjeyR1bml0fWAuXCI7XG4gICAgQHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIEBpZiB0eXBlLW9mKCRudW1iZXIpICE9IFwibnVtYmVyXCIge1xuICAgIEB3YXJuIFwiYCN7JG51bWJlcn0gaXMgbm90IGEgbnVtYmVyYFwiO1xuICAgIEByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBAcmV0dXJuICRudW1iZXIgKiBudGgoJHVuaXRzLCAkaW5kZXgpO1xufVxuIiwKCQkiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gRGlyZWN0aW9uYWwtcHJvcGVydHkgbWl4aW5zIGFyZSBzaG9ydGhhbmRzIGZvciB3cml0aW5nIHByb3BlcnRpZXMgbGlrZSB0aGUgZm9sbG93aW5nXG4vLy9cbi8vLyBAaWdub3JlIFlvdSBjYW4gYWxzbyB1c2UgYGZhbHNlYCBpbnN0ZWFkIG9mIGBudWxsYC5cbi8vL1xuLy8vIEBwYXJhbSB7TGlzdH0gJHZhbHNcbi8vLyAgIExpc3Qgb2YgZGlyZWN0aW9uYWwgdmFsdWVzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgYm9yZGVyLXN0eWxlKGRvdHRlZCBudWxsKTtcbi8vLyAgICAgQGluY2x1ZGUgbWFyZ2luKG51bGwgMCAxMHB4KTtcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogZG90dGVkO1xuLy8vICAgICBib3JkZXItdG9wLXN0eWxlOiBkb3R0ZWQ7XG4vLy8gICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4vLy8gICAgIG1hcmdpbi1sZWZ0OiAwO1xuLy8vICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4vLy8gICB9XG4vLy9cbi8vLyBAcmVxdWlyZSB7ZnVuY3Rpb259IGNvbnRhaW5zLWZhbHN5XG4vLy9cbi8vLyBAcmV0dXJuIHtMaXN0fVxuXG5AZnVuY3Rpb24gY29sbGFwc2UtZGlyZWN0aW9uYWxzKCR2YWxzKSB7XG4gICRvdXRwdXQ6IG51bGw7XG5cbiAgJGE6IG50aCgkdmFscywgMSk7XG4gICRiOiBpZihsZW5ndGgoJHZhbHMpIDwgMiwgJGEsIG50aCgkdmFscywgMikpO1xuICAkYzogaWYobGVuZ3RoKCR2YWxzKSA8IDMsICRhLCBudGgoJHZhbHMsIDMpKTtcbiAgJGQ6IGlmKGxlbmd0aCgkdmFscykgPCAyLCAkYSwgbnRoKCR2YWxzLCBpZihsZW5ndGgoJHZhbHMpIDwgNCwgMiwgNCkpKTtcblxuICBAaWYgJGEgPT0gMCB7ICRhOiAwOyB9XG4gIEBpZiAkYiA9PSAwIHsgJGI6IDA7IH1cbiAgQGlmICRjID09IDAgeyAkYzogMDsgfVxuICBAaWYgJGQgPT0gMCB7ICRkOiAwOyB9XG5cbiAgQGlmICRhID09ICRiIGFuZCAkYSA9PSAkYyBhbmQgJGEgPT0gJGQgeyAkb3V0cHV0OiAkYTsgICAgICAgICAgfVxuICBAZWxzZSBpZiAkYSA9PSAkYyBhbmQgJGIgPT0gJGQgICAgICAgICB7ICRvdXRwdXQ6ICRhICRiOyAgICAgICB9XG4gIEBlbHNlIGlmICRiID09ICRkICAgICAgICAgICAgICAgICAgICAgIHsgJG91dHB1dDogJGEgJGIgJGM7ICAgIH1cbiAgQGVsc2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyAkb3V0cHV0OiAkYSAkYiAkYyAkZDsgfVxuXG4gIEByZXR1cm4gJG91dHB1dDtcbn1cblxuLy8vIE91dHB1dCBkaXJlY3Rpb25hbCBwcm9wZXJ0aWVzLCBmb3IgaW5zdGFuY2UgYG1hcmdpbmAuXG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkcHJlXG4vLy8gICBQcmVmaXggdG8gdXNlXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzdWZcbi8vLyAgIFN1ZmZpeCB0byB1c2Vcbi8vLyBAcGFyYW0ge0xpc3R9ICR2YWxzXG4vLy8gICBMaXN0IG9mIHZhbHVlc1xuLy8vXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBjb2xsYXBzZS1kaXJlY3Rpb25hbHNcbi8vLyBAcmVxdWlyZSB7ZnVuY3Rpb259IGNvbnRhaW5zLWZhbHN5XG5cbkBtaXhpbiBkaXJlY3Rpb25hbC1wcm9wZXJ0eSgkcHJlLCAkc3VmLCAkdmFscykge1xuICAvLyBQcm9wZXJ0eSBOYW1lc1xuICAkdG9wOiAgICAkcHJlICsgXCItdG9wXCIgICAgKyBpZigkc3VmLCBcIi0jeyRzdWZ9XCIsIFwiXCIpO1xuICAkYm90dG9tOiAkcHJlICsgXCItYm90dG9tXCIgKyBpZigkc3VmLCBcIi0jeyRzdWZ9XCIsIFwiXCIpO1xuICAkbGVmdDogICAkcHJlICsgXCItbGVmdFwiICAgKyBpZigkc3VmLCBcIi0jeyRzdWZ9XCIsIFwiXCIpO1xuICAkcmlnaHQ6ICAkcHJlICsgXCItcmlnaHRcIiAgKyBpZigkc3VmLCBcIi0jeyRzdWZ9XCIsIFwiXCIpO1xuICAkYWxsOiAgICAkcHJlICsgICAgICAgICAgICAgaWYoJHN1ZiwgXCItI3skc3VmfVwiLCBcIlwiKTtcblxuICAkdmFsczogY29sbGFwc2UtZGlyZWN0aW9uYWxzKCR2YWxzKTtcblxuICBAaWYgY29udGFpbnMtZmFsc3koJHZhbHMpIHtcbiAgICBAaWYgbnRoKCR2YWxzLCAxKSB7ICN7JHRvcH06IG50aCgkdmFscywgMSk7IH1cblxuICAgIEBpZiBsZW5ndGgoJHZhbHMpID09IDEge1xuICAgICAgQGlmIG50aCgkdmFscywgMSkgeyAjeyRyaWdodH06IG50aCgkdmFscywgMSk7IH1cbiAgICB9IEBlbHNlIHtcbiAgICAgIEBpZiBudGgoJHZhbHMsIDIpIHsgI3skcmlnaHR9OiBudGgoJHZhbHMsIDIpOyB9XG4gICAgfVxuXG4gICAgQGlmIGxlbmd0aCgkdmFscykgPT0gMiB7XG4gICAgICBAaWYgbnRoKCR2YWxzLCAxKSB7ICN7JGJvdHRvbX06IG50aCgkdmFscywgMSk7IH1cbiAgICAgIEBpZiBudGgoJHZhbHMsIDIpIHsgI3skbGVmdH06ICAgbnRoKCR2YWxzLCAyKTsgfVxuICAgIH0gQGVsc2UgaWYgbGVuZ3RoKCR2YWxzKSA9PSAzIHtcbiAgICAgIEBpZiBudGgoJHZhbHMsIDMpIHsgI3skYm90dG9tfTogbnRoKCR2YWxzLCAzKTsgfVxuICAgICAgQGlmIG50aCgkdmFscywgMikgeyAjeyRsZWZ0fTogICBudGgoJHZhbHMsIDIpOyB9XG4gICAgfSBAZWxzZSBpZiBsZW5ndGgoJHZhbHMpID09IDQge1xuICAgICAgQGlmIG50aCgkdmFscywgMykgeyAjeyRib3R0b219OiBudGgoJHZhbHMsIDMpOyB9XG4gICAgICBAaWYgbnRoKCR2YWxzLCA0KSB7ICN7JGxlZnR9OiAgIG50aCgkdmFscywgNCk7IH1cbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgICN7JGFsbH06ICR2YWxzO1xuICB9XG59XG4iLAoJCSIvLyBVc2VkIGZvciBjcmVhdGluZyB0aGUgc291cmNlIHN0cmluZyBmb3IgZm9udHMgdXNpbmcgQGZvbnQtZmFjZVxuLy8gUmVmZXJlbmNlOiBodHRwOi8vZ29vLmdsL1J1MWJLUFxuXG5AZnVuY3Rpb24gZm9udC11cmwtcHJlZml4ZXIoJGFzc2V0LXBpcGVsaW5lKSB7XG4gIEBpZiAkYXNzZXQtcGlwZWxpbmUgPT0gdHJ1ZSB7XG4gICAgQHJldHVybiBmb250LXVybDtcbiAgfSBAZWxzZSB7XG4gICAgQHJldHVybiB1cmw7XG4gIH1cbn1cblxuQGZ1bmN0aW9uIGZvbnQtc291cmNlLWRlY2xhcmF0aW9uKFxuICAkZm9udC1mYW1pbHksXG4gICRmaWxlLXBhdGgsXG4gICRhc3NldC1waXBlbGluZSxcbiAgJGZpbGUtZm9ybWF0cyxcbiAgJGZvbnQtdXJsKSB7XG5cbiAgJHNyYzogKCk7XG5cbiAgJGZvcm1hdHMtbWFwOiAoXG4gICAgZW90OiAgIFwiI3skZmlsZS1wYXRofS5lb3Q/I2llZml4XCIgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksXG4gICAgd29mZjI6IFwiI3skZmlsZS1wYXRofS53b2ZmMlwiIGZvcm1hdChcIndvZmYyXCIpLFxuICAgIHdvZmY6ICBcIiN7JGZpbGUtcGF0aH0ud29mZlwiIGZvcm1hdChcIndvZmZcIiksXG4gICAgdHRmOiAgIFwiI3skZmlsZS1wYXRofS50dGZcIiBmb3JtYXQoXCJ0cnVldHlwZVwiKSxcbiAgICBzdmc6ICAgXCIjeyRmaWxlLXBhdGh9LnN2ZyMjeyRmb250LWZhbWlseX1cIiBmb3JtYXQoXCJzdmdcIilcbiAgKTtcblxuICBAZWFjaCAka2V5LCAkdmFsdWVzIGluICRmb3JtYXRzLW1hcCB7XG4gICAgQGlmIGNvbnRhaW5zKCRmaWxlLWZvcm1hdHMsICRrZXkpIHtcbiAgICAgICRmaWxlLXBhdGg6IG50aCgkdmFsdWVzLCAxKTtcbiAgICAgICRmb250LWZvcm1hdDogbnRoKCR2YWx1ZXMsIDIpO1xuXG4gICAgICBAaWYgJGFzc2V0LXBpcGVsaW5lID09IHRydWUge1xuICAgICAgICAkc3JjOiBhcHBlbmQoJHNyYywgZm9udC11cmwoJGZpbGUtcGF0aCkgJGZvbnQtZm9ybWF0LCBjb21tYSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJHNyYzogYXBwZW5kKCRzcmMsIHVybCgkZmlsZS1wYXRoKSAkZm9udC1mb3JtYXQsIGNvbW1hKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRzcmM7XG59XG4iLAoJCSJAZnVuY3Rpb24gX2dyYWRpZW50LXBvc2l0aW9ucy1wYXJzZXIoJGdyYWRpZW50LXR5cGUsICRncmFkaWVudC1wb3NpdGlvbnMpIHtcbiAgQGlmICRncmFkaWVudC1wb3NpdGlvbnNcbiAgYW5kICgkZ3JhZGllbnQtdHlwZSA9PSBsaW5lYXIpXG4gIGFuZCAodHlwZS1vZigkZ3JhZGllbnQtcG9zaXRpb25zKSAhPSBjb2xvcikge1xuICAgICRncmFkaWVudC1wb3NpdGlvbnM6IF9saW5lYXItcG9zaXRpb25zLXBhcnNlcigkZ3JhZGllbnQtcG9zaXRpb25zKTtcbiAgfVxuICBAZWxzZSBpZiAkZ3JhZGllbnQtcG9zaXRpb25zXG4gIGFuZCAoJGdyYWRpZW50LXR5cGUgPT0gcmFkaWFsKVxuICBhbmQgKHR5cGUtb2YoJGdyYWRpZW50LXBvc2l0aW9ucykgIT0gY29sb3IpIHtcbiAgICAkZ3JhZGllbnQtcG9zaXRpb25zOiBfcmFkaWFsLXBvc2l0aW9ucy1wYXJzZXIoJGdyYWRpZW50LXBvc2l0aW9ucyk7XG4gIH1cbiAgQHJldHVybiAkZ3JhZGllbnQtcG9zaXRpb25zO1xufVxuIiwKCQkiLy8gUHJpdmF0ZSBmdW5jdGlvbiBmb3IgbGluZWFyLWdyYWRpZW50LXBhcnNlclxuQGZ1bmN0aW9uIF9saW5lYXItYW5nbGUtcGFyc2VyKCRpbWFnZSwgJGZpcnN0LXZhbCwgJHByZWZpeCwgJHN1ZmZpeCkge1xuICAkb2Zmc2V0OiBudWxsO1xuICAkdW5pdC1zaG9ydDogIHN0ci1zbGljZSgkZmlyc3QtdmFsLCBzdHItbGVuZ3RoKCRmaXJzdC12YWwpIC0gMiwgc3RyLWxlbmd0aCgkZmlyc3QtdmFsKSk7XG4gICR1bml0LWxvbmc6ICAgc3RyLXNsaWNlKCRmaXJzdC12YWwsIHN0ci1sZW5ndGgoJGZpcnN0LXZhbCkgLSAzLCBzdHItbGVuZ3RoKCRmaXJzdC12YWwpKTtcblxuICBAaWYgKCR1bml0LWxvbmcgPT0gXCJncmFkXCIpIG9yXG4gICAgICAoJHVuaXQtbG9uZyA9PSBcInR1cm5cIikge1xuICAgICRvZmZzZXQ6IGlmKCR1bml0LWxvbmcgPT0gXCJncmFkXCIsIC0xMDBncmFkICogMywgLTAuNzV0dXJuKTtcbiAgfVxuXG4gIEBlbHNlIGlmICgkdW5pdC1zaG9ydCA9PSBcImRlZ1wiKSBvclxuICAgICAgICAgICAoJHVuaXQtc2hvcnQgPT0gXCJyYWRcIikge1xuICAgICRvZmZzZXQ6IGlmKCR1bml0LXNob3J0ID09IFwiZGVnXCIsIC05MCAqIDMsIDEuNnJhZCk7XG4gIH1cblxuICBAaWYgJG9mZnNldCB7XG4gICAgJG51bTogX3N0ci10by1udW0oJGZpcnN0LXZhbCk7XG5cbiAgICBAcmV0dXJuIChcbiAgICAgIHdlYmtpdC1pbWFnZTogLXdlYmtpdC0gKyAkcHJlZml4ICsgKCRvZmZzZXQgLSAkbnVtKSArICRzdWZmaXgsXG4gICAgICBzcGVjLWltYWdlOiAkaW1hZ2VcbiAgICApO1xuICB9XG59XG4iLAoJCSJAZnVuY3Rpb24gX2xpbmVhci1ncmFkaWVudC1wYXJzZXIoJGltYWdlKSB7XG4gICRpbWFnZTogdW5xdW90ZSgkaW1hZ2UpO1xuICAkZ3JhZGllbnRzOiAoKTtcbiAgJHN0YXJ0OiBzdHItaW5kZXgoJGltYWdlLCBcIihcIik7XG4gICRlbmQ6IHN0ci1pbmRleCgkaW1hZ2UsIFwiLFwiKTtcbiAgJGZpcnN0LXZhbDogc3RyLXNsaWNlKCRpbWFnZSwgJHN0YXJ0ICsgMSwgJGVuZCAtIDEpO1xuXG4gICRwcmVmaXg6IHN0ci1zbGljZSgkaW1hZ2UsIDEsICRzdGFydCk7XG4gICRzdWZmaXg6IHN0ci1zbGljZSgkaW1hZ2UsICRlbmQsIHN0ci1sZW5ndGgoJGltYWdlKSk7XG5cbiAgJGhhcy1tdWx0aXBsZS12YWxzOiBzdHItaW5kZXgoJGZpcnN0LXZhbCwgXCIgXCIpO1xuICAkaGFzLXNpbmdsZS1wb3NpdGlvbjogdW5xdW90ZShfcG9zaXRpb24tZmxpcHBlcigkZmlyc3QtdmFsKSArIFwiXCIpO1xuICAkaGFzLWFuZ2xlOiBpcy1udW1iZXIoc3RyLXNsaWNlKCRmaXJzdC12YWwsIDEsIDEpKTtcblxuICBAaWYgJGhhcy1tdWx0aXBsZS12YWxzIHtcbiAgICAkZ3JhZGllbnRzOiBfbGluZWFyLXNpZGUtY29ybmVyLXBhcnNlcigkaW1hZ2UsICRmaXJzdC12YWwsICRwcmVmaXgsICRzdWZmaXgsICRoYXMtbXVsdGlwbGUtdmFscyk7XG4gIH1cblxuICBAZWxzZSBpZiAkaGFzLXNpbmdsZS1wb3NpdGlvbiAhPSBcIlwiIHtcbiAgICAkcG9zOiB1bnF1b3RlKCRoYXMtc2luZ2xlLXBvc2l0aW9uICsgXCJcIik7XG5cbiAgICAkZ3JhZGllbnRzOiAoXG4gICAgICB3ZWJraXQtaW1hZ2U6IC13ZWJraXQtICsgJGltYWdlLFxuICAgICAgc3BlYy1pbWFnZTogJHByZWZpeCArIFwidG8gXCIgKyAkcG9zICsgJHN1ZmZpeFxuICAgICk7XG4gIH1cblxuICBAZWxzZSBpZiAkaGFzLWFuZ2xlIHtcbiAgICAvLyBSb3RhdGUgZGVncmVlIGZvciB3ZWJraXRcbiAgICAkZ3JhZGllbnRzOiBfbGluZWFyLWFuZ2xlLXBhcnNlcigkaW1hZ2UsICRmaXJzdC12YWwsICRwcmVmaXgsICRzdWZmaXgpO1xuICB9XG5cbiAgQGVsc2Uge1xuICAgICRncmFkaWVudHM6IChcbiAgICAgIHdlYmtpdC1pbWFnZTogLXdlYmtpdC0gKyAkaW1hZ2UsXG4gICAgICBzcGVjLWltYWdlOiAkaW1hZ2VcbiAgICApO1xuICB9XG5cbiAgQHJldHVybiAkZ3JhZGllbnRzO1xufVxuIiwKCQkiQGZ1bmN0aW9uIF9saW5lYXItcG9zaXRpb25zLXBhcnNlcigkcG9zKSB7XG4gICR0eXBlOiB0eXBlLW9mKG50aCgkcG9zLCAxKSk7XG4gICRzcGVjOiBudWxsO1xuICAkZGVncmVlOiBudWxsO1xuICAkc2lkZTogbnVsbDtcbiAgJGNvcm5lcjogbnVsbDtcbiAgJGxlbmd0aDogbGVuZ3RoKCRwb3MpO1xuICAvLyBQYXJzZSBTaWRlIGFuZCBjb3JuZXIgcG9zaXRpb25zXG4gIEBpZiAoJGxlbmd0aCA+IDEpIHtcbiAgICBAaWYgbnRoKCRwb3MsIDEpID09IFwidG9cIiB7IC8vIE5ld2VyIHN5bnRheFxuICAgICAgJHNpZGU6IG50aCgkcG9zLCAyKTtcblxuICAgICAgQGlmICRsZW5ndGggPT0gMiB7IC8vIGVnLiB0byB0b3BcbiAgICAgICAgLy8gU3dhcCBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcbiAgICAgICAgJGRlZ3JlZTogX3Bvc2l0aW9uLWZsaXBwZXIobnRoKCRwb3MsIDIpKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICRsZW5ndGggPT0gMyB7IC8vIGVnLiB0byB0b3AgbGVmdFxuICAgICAgICAkY29ybmVyOiBudGgoJHBvcywgMyk7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIGlmICRsZW5ndGggPT0gMiB7IC8vIE9sZGVyIHN5bnRheCAoXCJ0b3AgbGVmdFwiKVxuICAgICAgJHNpZGU6IF9wb3NpdGlvbi1mbGlwcGVyKG50aCgkcG9zLCAxKSk7XG4gICAgICAkY29ybmVyOiBfcG9zaXRpb24tZmxpcHBlcihudGgoJHBvcywgMikpO1xuICAgIH1cblxuICAgIEBpZiAoXCIjeyRzaWRlfSAjeyRjb3JuZXJ9XCIgPT0gXCJsZWZ0IHRvcFwiKSBvciAoXCIjeyRzaWRlfSAjeyRjb3JuZXJ9XCIgPT0gXCJ0b3AgbGVmdFwiKSB7XG4gICAgICAkZGVncmVlOiBfcG9zaXRpb24tZmxpcHBlcigjeyRzaWRlfSkgX3Bvc2l0aW9uLWZsaXBwZXIoI3skY29ybmVyfSk7XG4gICAgfVxuICAgIEBlbHNlIGlmIChcIiN7JHNpZGV9ICN7JGNvcm5lcn1cIiA9PSBcInJpZ2h0IHRvcFwiKSBvciAoXCIjeyRzaWRlfSAjeyRjb3JuZXJ9XCIgPT0gXCJ0b3AgcmlnaHRcIikge1xuICAgICAgJGRlZ3JlZTogX3Bvc2l0aW9uLWZsaXBwZXIoI3skc2lkZX0pIF9wb3NpdGlvbi1mbGlwcGVyKCN7JGNvcm5lcn0pO1xuICAgIH1cbiAgICBAZWxzZSBpZiAoXCIjeyRzaWRlfSAjeyRjb3JuZXJ9XCIgPT0gXCJyaWdodCBib3R0b21cIikgb3IgKFwiI3skc2lkZX0gI3skY29ybmVyfVwiID09IFwiYm90dG9tIHJpZ2h0XCIpIHtcbiAgICAgICRkZWdyZWU6IF9wb3NpdGlvbi1mbGlwcGVyKCN7JHNpZGV9KSBfcG9zaXRpb24tZmxpcHBlcigjeyRjb3JuZXJ9KTtcbiAgICB9XG4gICAgQGVsc2UgaWYgKFwiI3skc2lkZX0gI3skY29ybmVyfVwiID09IFwibGVmdCBib3R0b21cIikgb3IgKFwiI3skc2lkZX0gI3skY29ybmVyfVwiID09IFwiYm90dG9tIGxlZnRcIikge1xuICAgICAgJGRlZ3JlZTogX3Bvc2l0aW9uLWZsaXBwZXIoI3skc2lkZX0pIF9wb3NpdGlvbi1mbGlwcGVyKCN7JGNvcm5lcn0pO1xuICAgIH1cbiAgICAkc3BlYzogdG8gJHNpZGUgJGNvcm5lcjtcbiAgfVxuICBAZWxzZSBpZiAkbGVuZ3RoID09IDEge1xuICAgIC8vIFN3YXAgZm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5XG4gICAgQGlmICR0eXBlID09IHN0cmluZyB7XG4gICAgICAkZGVncmVlOiAkcG9zO1xuICAgICAgJHNwZWM6IHRvIF9wb3NpdGlvbi1mbGlwcGVyKCRwb3MpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkZGVncmVlOiAtMjcwIC0gJHBvczsgLy9yb3RhdGUgdGhlIGdyYWRpZW50IG9wcG9zaXRlIGZyb20gc3BlY1xuICAgICAgJHNwZWM6ICRwb3M7XG4gICAgfVxuICB9XG4gICRkZWdyZWU6IHVucXVvdGUoJGRlZ3JlZSArIFwiLFwiKTtcbiAgJHNwZWM6ICAgdW5xdW90ZSgkc3BlYyArIFwiLFwiKTtcbiAgQHJldHVybiAkZGVncmVlICRzcGVjO1xufVxuXG5AZnVuY3Rpb24gX3Bvc2l0aW9uLWZsaXBwZXIoJHBvcykge1xuICBAcmV0dXJuIGlmKCRwb3MgPT0gbGVmdCwgcmlnaHQsIG51bGwpXG4gICAgICAgICBpZigkcG9zID09IHJpZ2h0LCBsZWZ0LCBudWxsKVxuICAgICAgICAgaWYoJHBvcyA9PSB0b3AsIGJvdHRvbSwgbnVsbClcbiAgICAgICAgIGlmKCRwb3MgPT0gYm90dG9tLCB0b3AsIG51bGwpO1xufVxuIiwKCQkiLy8gUHJpdmF0ZSBmdW5jdGlvbiBmb3IgbGluZWFyLWdyYWRpZW50LXBhcnNlclxuQGZ1bmN0aW9uIF9saW5lYXItc2lkZS1jb3JuZXItcGFyc2VyKCRpbWFnZSwgJGZpcnN0LXZhbCwgJHByZWZpeCwgJHN1ZmZpeCwgJGhhcy1tdWx0aXBsZS12YWxzKSB7XG4gICR2YWwtMTogc3RyLXNsaWNlKCRmaXJzdC12YWwsIDEsICRoYXMtbXVsdGlwbGUtdmFscyAtIDEpO1xuICAkdmFsLTI6IHN0ci1zbGljZSgkZmlyc3QtdmFsLCAkaGFzLW11bHRpcGxlLXZhbHMgKyAxLCBzdHItbGVuZ3RoKCRmaXJzdC12YWwpKTtcbiAgJHZhbC0zOiBudWxsO1xuICAkaGFzLXZhbC0zOiBzdHItaW5kZXgoJHZhbC0yLCBcIiBcIik7XG5cbiAgQGlmICRoYXMtdmFsLTMge1xuICAgICR2YWwtMzogc3RyLXNsaWNlKCR2YWwtMiwgJGhhcy12YWwtMyArIDEsIHN0ci1sZW5ndGgoJHZhbC0yKSk7XG4gICAgJHZhbC0yOiBzdHItc2xpY2UoJHZhbC0yLCAxLCAkaGFzLXZhbC0zIC0gMSk7XG4gIH1cblxuICAkcG9zOiBfcG9zaXRpb24tZmxpcHBlcigkdmFsLTEpIF9wb3NpdGlvbi1mbGlwcGVyKCR2YWwtMikgX3Bvc2l0aW9uLWZsaXBwZXIoJHZhbC0zKTtcbiAgJHBvczogdW5xdW90ZSgkcG9zICsgXCJcIik7XG5cbiAgLy8gVXNlIG9sZCBzcGVjIGZvciB3ZWJraXRcbiAgQGlmICR2YWwtMSA9PSBcInRvXCIge1xuICAgIEByZXR1cm4gKFxuICAgICAgd2Via2l0LWltYWdlOiAtd2Via2l0LSArICRwcmVmaXggKyAkcG9zICsgJHN1ZmZpeCxcbiAgICAgIHNwZWMtaW1hZ2U6ICRpbWFnZVxuICAgICk7XG4gIH1cblxuICAvLyBCcmluZyB0aGUgY29kZSB1cCB0byBzcGVjXG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIChcbiAgICAgIHdlYmtpdC1pbWFnZTogLXdlYmtpdC0gKyAkaW1hZ2UsXG4gICAgICBzcGVjLWltYWdlOiAkcHJlZml4ICsgXCJ0byBcIiArICRwb3MgKyAkc3VmZml4XG4gICAgKTtcbiAgfVxufVxuIiwKCQkiQGZ1bmN0aW9uIF9yYWRpYWwtYXJnLXBhcnNlcigkZzEsICRnMiwgJHBvcywgJHNoYXBlLXNpemUpIHtcbiAgQGVhY2ggJHZhbHVlIGluICRnMSwgJGcyIHtcbiAgICAkZmlyc3QtdmFsOiBudGgoJHZhbHVlLCAxKTtcbiAgICAkcG9zLXR5cGU6ICB0eXBlLW9mKCRmaXJzdC12YWwpO1xuICAgICRzcGVjLWF0LWluZGV4OiBudWxsO1xuXG4gICAgLy8gRGV0ZXJtaW5lIGlmIHNwZWMgd2FzIHBhc3NlZCB0byBtaXhpblxuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gbGlzdCB7XG4gICAgICAkc3BlYy1hdC1pbmRleDogaWYoaW5kZXgoJHZhbHVlLCBhdCksIGluZGV4KCR2YWx1ZSwgYXQpLCBmYWxzZSk7XG4gICAgfVxuICAgIEBpZiAkc3BlYy1hdC1pbmRleCB7XG4gICAgICBAaWYgJHNwZWMtYXQtaW5kZXggPiAxIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAoJHNwZWMtYXQtaW5kZXggLSAxKSB7XG4gICAgICAgICAgJHNoYXBlLXNpemU6ICRzaGFwZS1zaXplIG50aCgkdmFsdWUsICRpKTtcbiAgICAgICAgfVxuICAgICAgICBAZm9yICRpIGZyb20gKCRzcGVjLWF0LWluZGV4ICsgMSkgdGhyb3VnaCBsZW5ndGgoJHZhbHVlKSB7XG4gICAgICAgICAgJHBvczogJHBvcyBudGgoJHZhbHVlLCAkaSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICRzcGVjLWF0LWluZGV4ID09IDEge1xuICAgICAgICBAZm9yICRpIGZyb20gKCRzcGVjLWF0LWluZGV4ICsgMSkgdGhyb3VnaCBsZW5ndGgoJHZhbHVlKSB7XG4gICAgICAgICAgJHBvczogJHBvcyBudGgoJHZhbHVlLCAkaSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICRnMTogbnVsbDtcbiAgICB9XG5cbiAgICAvLyBJZiBub3Qgc3BlYyBjYWxjdWxhdGUgY29ycmVjdCB2YWx1ZXNcbiAgICBAZWxzZSB7XG4gICAgICBAaWYgKCRwb3MtdHlwZSAhPSBjb2xvcikgb3IgKCRmaXJzdC12YWwgIT0gXCJ0cmFuc3BhcmVudFwiKSB7XG4gICAgICAgIEBpZiAoJHBvcy10eXBlID09IG51bWJlcilcbiAgICAgICAgb3IgKCRmaXJzdC12YWwgPT0gXCJjZW50ZXJcIilcbiAgICAgICAgb3IgKCRmaXJzdC12YWwgPT0gXCJ0b3BcIilcbiAgICAgICAgb3IgKCRmaXJzdC12YWwgPT0gXCJyaWdodFwiKVxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcImJvdHRvbVwiKVxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcImxlZnRcIikge1xuXG4gICAgICAgICAgJHBvczogJHZhbHVlO1xuXG4gICAgICAgICAgQGlmICRwb3MgPT0gJGcxIHtcbiAgICAgICAgICAgICRnMTogbnVsbDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAZWxzZSBpZlxuICAgICAgICAgICAoJGZpcnN0LXZhbCA9PSBcImVsbGlwc2VcIilcbiAgICAgICAgb3IgKCRmaXJzdC12YWwgPT0gXCJjaXJjbGVcIilcbiAgICAgICAgb3IgKCRmaXJzdC12YWwgPT0gXCJjbG9zZXN0LXNpZGVcIilcbiAgICAgICAgb3IgKCRmaXJzdC12YWwgPT0gXCJjbG9zZXN0LWNvcm5lclwiKVxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcImZhcnRoZXN0LXNpZGVcIilcbiAgICAgICAgb3IgKCRmaXJzdC12YWwgPT0gXCJmYXJ0aGVzdC1jb3JuZXJcIilcbiAgICAgICAgb3IgKCRmaXJzdC12YWwgPT0gXCJjb250YWluXCIpXG4gICAgICAgIG9yICgkZmlyc3QtdmFsID09IFwiY292ZXJcIikge1xuXG4gICAgICAgICAgJHNoYXBlLXNpemU6ICR2YWx1ZTtcblxuICAgICAgICAgIEBpZiAkdmFsdWUgPT0gJGcxIHtcbiAgICAgICAgICAgICRnMTogbnVsbDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAZWxzZSBpZiAkdmFsdWUgPT0gJGcyIHtcbiAgICAgICAgICAgICRnMjogbnVsbDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQHJldHVybiAkZzEsICRnMiwgJHBvcywgJHNoYXBlLXNpemU7XG59XG4iLAoJCSJAZnVuY3Rpb24gX3JhZGlhbC1wb3NpdGlvbnMtcGFyc2VyKCRncmFkaWVudC1wb3MpIHtcbiAgJHNoYXBlLXNpemU6IG50aCgkZ3JhZGllbnQtcG9zLCAxKTtcbiAgJHBvczogICAgICAgIG50aCgkZ3JhZGllbnQtcG9zLCAyKTtcbiAgJHNoYXBlLXNpemUtc3BlYzogX3NoYXBlLXNpemUtc3RyaXBwZXIoJHNoYXBlLXNpemUpO1xuXG4gICRwcmUtc3BlYzogdW5xdW90ZShpZigkcG9zLCBcIiN7JHBvc30sIFwiLCBudWxsKSlcbiAgICAgICAgICAgICB1bnF1b3RlKGlmKCRzaGFwZS1zaXplLCBcIiN7JHNoYXBlLXNpemV9LFwiLCBudWxsKSk7XG4gICRwb3Mtc3BlYzogaWYoJHBvcywgXCJhdCAjeyRwb3N9XCIsIG51bGwpO1xuXG4gICRzcGVjOiBcIiN7JHNoYXBlLXNpemUtc3BlY30gI3skcG9zLXNwZWN9XCI7XG5cbiAgLy8gQWRkIGNvbW1hXG4gIEBpZiAoJHNwZWMgIT0gXCIgIFwiKSB7XG4gICAgJHNwZWM6IFwiI3skc3BlY30sXCI7XG4gIH1cblxuICBAcmV0dXJuICRwcmUtc3BlYyAkc3BlYztcbn1cbiIsCgkJIkBmdW5jdGlvbiBfcmFkaWFsLWdyYWRpZW50LXBhcnNlcigkaW1hZ2UpIHtcbiAgJGltYWdlOiB1bnF1b3RlKCRpbWFnZSk7XG4gICRncmFkaWVudHM6ICgpO1xuICAkc3RhcnQ6IHN0ci1pbmRleCgkaW1hZ2UsIFwiKFwiKTtcbiAgJGVuZDogc3RyLWluZGV4KCRpbWFnZSwgXCIsXCIpO1xuICAkZmlyc3QtdmFsOiBzdHItc2xpY2UoJGltYWdlLCAkc3RhcnQgKyAxLCAkZW5kIC0gMSk7XG5cbiAgJHByZWZpeDogc3RyLXNsaWNlKCRpbWFnZSwgMSwgJHN0YXJ0KTtcbiAgJHN1ZmZpeDogc3RyLXNsaWNlKCRpbWFnZSwgJGVuZCwgc3RyLWxlbmd0aCgkaW1hZ2UpKTtcblxuICAkaXMtc3BlYy1zeW50YXg6IHN0ci1pbmRleCgkZmlyc3QtdmFsLCBcImF0XCIpO1xuXG4gIEBpZiAkaXMtc3BlYy1zeW50YXggYW5kICRpcy1zcGVjLXN5bnRheCA+IDEge1xuICAgICRrZXl3b3JkOiBzdHItc2xpY2UoJGZpcnN0LXZhbCwgMSwgJGlzLXNwZWMtc3ludGF4IC0gMik7XG4gICAgJHBvczogc3RyLXNsaWNlKCRmaXJzdC12YWwsICRpcy1zcGVjLXN5bnRheCArIDMsIHN0ci1sZW5ndGgoJGZpcnN0LXZhbCkpO1xuICAgICRwb3M6IGFwcGVuZCgkcG9zLCAka2V5d29yZCwgY29tbWEpO1xuXG4gICAgJGdyYWRpZW50czogKFxuICAgICAgd2Via2l0LWltYWdlOiAtd2Via2l0LSArICRwcmVmaXggKyAkcG9zICsgJHN1ZmZpeCxcbiAgICAgIHNwZWMtaW1hZ2U6ICRpbWFnZVxuICAgICk7XG4gIH1cblxuICBAZWxzZSBpZiAkaXMtc3BlYy1zeW50YXggPT0gMSB7XG4gICAgJHBvczogc3RyLXNsaWNlKCRmaXJzdC12YWwsICRpcy1zcGVjLXN5bnRheCArIDMsIHN0ci1sZW5ndGgoJGZpcnN0LXZhbCkpO1xuXG4gICAgJGdyYWRpZW50czogKFxuICAgICAgd2Via2l0LWltYWdlOiAtd2Via2l0LSArICRwcmVmaXggKyAkcG9zICsgJHN1ZmZpeCxcbiAgICAgIHNwZWMtaW1hZ2U6ICRpbWFnZVxuICAgICk7XG4gIH1cblxuICBAZWxzZSBpZiBzdHItaW5kZXgoJGltYWdlLCBcImNvdmVyXCIpIG9yIHN0ci1pbmRleCgkaW1hZ2UsIFwiY29udGFpblwiKSB7XG4gICAgQHdhcm4gXCJSYWRpYWwtZ3JhZGllbnQgbmVlZHMgdG8gYmUgdXBkYXRlZCB0byBjb25mb3JtIHRvIGxhdGVzdCBzcGVjLlwiO1xuXG4gICAgJGdyYWRpZW50czogKFxuICAgICAgd2Via2l0LWltYWdlOiBudWxsLFxuICAgICAgc3BlYy1pbWFnZTogJGltYWdlXG4gICAgKTtcbiAgfVxuXG4gIEBlbHNlIHtcbiAgICAkZ3JhZGllbnRzOiAoXG4gICAgICB3ZWJraXQtaW1hZ2U6IC13ZWJraXQtICsgJGltYWdlLFxuICAgICAgc3BlYy1pbWFnZTogJGltYWdlXG4gICAgKTtcbiAgfVxuXG4gIEByZXR1cm4gJGdyYWRpZW50cztcbn1cbiIsCgkJIi8vIFVzZXIgZm9yIGxpbmVhciBhbmQgcmFkaWFsIGdyYWRpZW50cyB3aXRoaW4gYmFja2dyb3VuZC1pbWFnZSBvciBib3JkZXItaW1hZ2UgcHJvcGVydGllc1xuXG5AZnVuY3Rpb24gX3JlbmRlci1ncmFkaWVudHMoJGdyYWRpZW50LXBvc2l0aW9ucywgJGdyYWRpZW50cywgJGdyYWRpZW50LXR5cGUsICR2ZW5kb3I6IGZhbHNlKSB7XG4gICRwcmUtc3BlYzogbnVsbDtcbiAgJHNwZWM6IG51bGw7XG4gICR2ZW5kb3ItZ3JhZGllbnRzOiBudWxsO1xuICBAaWYgJGdyYWRpZW50LXR5cGUgPT0gbGluZWFyIHtcbiAgICBAaWYgJGdyYWRpZW50LXBvc2l0aW9ucyB7XG4gICAgICAkcHJlLXNwZWM6IG50aCgkZ3JhZGllbnQtcG9zaXRpb25zLCAxKTtcbiAgICAgICRzcGVjOiAgICAgbnRoKCRncmFkaWVudC1wb3NpdGlvbnMsIDIpO1xuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkZ3JhZGllbnQtdHlwZSA9PSByYWRpYWwge1xuICAgICRwcmUtc3BlYzogbnRoKCRncmFkaWVudC1wb3NpdGlvbnMsIDEpO1xuICAgICRzcGVjOiAgICAgbnRoKCRncmFkaWVudC1wb3NpdGlvbnMsIDIpO1xuICB9XG5cbiAgQGlmICR2ZW5kb3Ige1xuICAgICR2ZW5kb3ItZ3JhZGllbnRzOiAtI3skdmVuZG9yfS0jeyRncmFkaWVudC10eXBlfS1ncmFkaWVudCgjeyRwcmUtc3BlY30gJGdyYWRpZW50cyk7XG4gIH1cbiAgQGVsc2UgaWYgJHZlbmRvciA9PSBmYWxzZSB7XG4gICAgJHZlbmRvci1ncmFkaWVudHM6IFwiI3skZ3JhZGllbnQtdHlwZX0tZ3JhZGllbnQoI3skc3BlY30gI3skZ3JhZGllbnRzfSlcIjtcbiAgICAkdmVuZG9yLWdyYWRpZW50czogdW5xdW90ZSgkdmVuZG9yLWdyYWRpZW50cyk7XG4gIH1cbiAgQHJldHVybiAkdmVuZG9yLWdyYWRpZW50cztcbn1cbiIsCgkJIkBmdW5jdGlvbiBfc2hhcGUtc2l6ZS1zdHJpcHBlcigkc2hhcGUtc2l6ZSkge1xuICAkc2hhcGUtc2l6ZS1zcGVjOiBudWxsO1xuICBAZWFjaCAkdmFsdWUgaW4gJHNoYXBlLXNpemUge1xuICAgIEBpZiAoJHZhbHVlID09IFwiY292ZXJcIikgb3IgKCR2YWx1ZSA9PSBcImNvbnRhaW5cIikge1xuICAgICAgJHZhbHVlOiBudWxsO1xuICAgIH1cbiAgICAkc2hhcGUtc2l6ZS1zcGVjOiBcIiN7JHNoYXBlLXNpemUtc3BlY30gI3skdmFsdWV9XCI7XG4gIH1cbiAgQHJldHVybiAkc2hhcGUtc2l6ZS1zcGVjO1xufVxuIiwKCQkiLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovL1xuLy8gSGVscGVyIGZ1bmN0aW9uIGZvciBsaW5lYXIvcmFkaWFsLWdyYWRpZW50LXBhcnNlcnMuXG4vLyBTb3VyY2U6IGh0dHA6Ly9zYXNzbWVpc3Rlci5jb20vZ2lzdC85NjQ3NDA4XG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vXG5AZnVuY3Rpb24gX3N0ci10by1udW0oJHN0cmluZykge1xuICAvLyBNYXRyaWNlc1xuICAkc3RyaW5nczogXCIwXCIgXCIxXCIgXCIyXCIgXCIzXCIgXCI0XCIgXCI1XCIgXCI2XCIgXCI3XCIgXCI4XCIgXCI5XCI7XG4gICRudW1iZXJzOiAgMCAgIDEgICAyICAgMyAgIDQgICA1ICAgNiAgIDcgICA4ICAgOTtcblxuICAvLyBSZXN1bHRcbiAgJHJlc3VsdDogMDtcbiAgJGRpdmlkZXI6IDA7XG4gICRtaW51czogZmFsc2U7XG5cbiAgLy8gTG9vcGluZyB0aHJvdWdoIGFsbCBjaGFyYWN0ZXJzXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggc3RyLWxlbmd0aCgkc3RyaW5nKSB7XG4gICAgJGNoYXJhY3Rlcjogc3RyLXNsaWNlKCRzdHJpbmcsICRpLCAkaSk7XG4gICAgJGluZGV4OiBpbmRleCgkc3RyaW5ncywgJGNoYXJhY3Rlcik7XG5cbiAgICBAaWYgJGNoYXJhY3RlciA9PSBcIi1cIiB7XG4gICAgICAkbWludXM6IHRydWU7XG4gICAgfVxuXG4gICAgQGVsc2UgaWYgJGNoYXJhY3RlciA9PSBcIi5cIiB7XG4gICAgICAkZGl2aWRlcjogMTtcbiAgICB9XG5cbiAgICBAZWxzZSB7XG4gICAgICBAaWYgbm90ICRpbmRleCB7XG4gICAgICAgICRyZXN1bHQ6IGlmKCRtaW51cywgJHJlc3VsdCAqIC0xLCAkcmVzdWx0KTtcbiAgICAgICAgQHJldHVybiBfY29udmVydC11bml0cygkcmVzdWx0LCBzdHItc2xpY2UoJHN0cmluZywgJGkpKTtcbiAgICAgIH1cblxuICAgICAgJG51bWJlcjogbnRoKCRudW1iZXJzLCAkaW5kZXgpO1xuXG4gICAgICBAaWYgJGRpdmlkZXIgPT0gMCB7XG4gICAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMDtcbiAgICAgIH1cblxuICAgICAgQGVsc2Uge1xuICAgICAgICAvLyBNb3ZlIHRoZSBkZWNpbWFsIGRvdCB0byB0aGUgbGVmdFxuICAgICAgICAkZGl2aWRlcjogJGRpdmlkZXIgKiAxMDtcbiAgICAgICAgJG51bWJlcjogJG51bWJlciAvICRkaXZpZGVyO1xuICAgICAgfVxuXG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICsgJG51bWJlcjtcbiAgICB9XG4gIH1cbiAgQHJldHVybiBpZigkbWludXMsICRyZXN1bHQgKiAtMSwgJHJlc3VsdCk7XG59XG4iLAoJCSIvLyBodHRwOi8vd3d3LnczLm9yZy9UUi9jc3MzLWFuaW1hdGlvbnMvI3RoZS1hbmltYXRpb24tbmFtZS1wcm9wZXJ0eS1cbi8vIEVhY2ggb2YgdGhlc2UgbWl4aW5zIHN1cHBvcnQgY29tbWEgc2VwYXJhdGVkIGxpc3RzIG9mIHZhbHVlcywgd2hpY2ggYWxsb3dzIGRpZmZlcmVudCB0cmFuc2l0aW9ucyBmb3IgaW5kaXZpZHVhbCBwcm9wZXJ0aWVzIHRvIGJlIGRlc2NyaWJlZCBpbiBhIHNpbmdsZSBzdHlsZSBydWxlLiBFYWNoIHZhbHVlIGluIHRoZSBsaXN0IGNvcnJlc3BvbmRzIHRvIHRoZSB2YWx1ZSBhdCB0aGF0IHNhbWUgcG9zaXRpb24gaW4gdGhlIG90aGVyIHByb3BlcnRpZXMuXG5cbkBtaXhpbiBhbmltYXRpb24oJGFuaW1hdGlvbnMuLi4pIHtcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYW5pbWF0aW9uLCAkYW5pbWF0aW9ucywgd2Via2l0IG1veiBzcGVjKTtcbn1cblxuQG1peGluIGFuaW1hdGlvbi1uYW1lKCRuYW1lcy4uLikge1xuICBAaW5jbHVkZSBwcmVmaXhlcihhbmltYXRpb24tbmFtZSwgJG5hbWVzLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5AbWl4aW4gYW5pbWF0aW9uLWR1cmF0aW9uKCR0aW1lcy4uLikge1xuICBAaW5jbHVkZSBwcmVmaXhlcihhbmltYXRpb24tZHVyYXRpb24sICR0aW1lcywgd2Via2l0IG1veiBzcGVjKTtcbn1cblxuQG1peGluIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24oJG1vdGlvbnMuLi4pIHtcbiAgLy8gZWFzZSB8IGxpbmVhciB8IGVhc2UtaW4gfCBlYXNlLW91dCB8IGVhc2UtaW4tb3V0XG4gIEBpbmNsdWRlIHByZWZpeGVyKGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24sICRtb3Rpb25zLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5AbWl4aW4gYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCgkdmFsdWVzLi4uKSB7XG4gIC8vIGluZmluaXRlIHwgPG51bWJlcj5cbiAgQGluY2x1ZGUgcHJlZml4ZXIoYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCwgJHZhbHVlcywgd2Via2l0IG1veiBzcGVjKTtcbn1cblxuQG1peGluIGFuaW1hdGlvbi1kaXJlY3Rpb24oJGRpcmVjdGlvbnMuLi4pIHtcbiAgLy8gbm9ybWFsIHwgYWx0ZXJuYXRlXG4gIEBpbmNsdWRlIHByZWZpeGVyKGFuaW1hdGlvbi1kaXJlY3Rpb24sICRkaXJlY3Rpb25zLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5AbWl4aW4gYW5pbWF0aW9uLXBsYXktc3RhdGUoJHN0YXRlcy4uLikge1xuICAvLyBydW5uaW5nIHwgcGF1c2VkXG4gIEBpbmNsdWRlIHByZWZpeGVyKGFuaW1hdGlvbi1wbGF5LXN0YXRlLCAkc3RhdGVzLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5AbWl4aW4gYW5pbWF0aW9uLWRlbGF5KCR0aW1lcy4uLikge1xuICBAaW5jbHVkZSBwcmVmaXhlcihhbmltYXRpb24tZGVsYXksICR0aW1lcywgd2Via2l0IG1veiBzcGVjKTtcbn1cblxuQG1peGluIGFuaW1hdGlvbi1maWxsLW1vZGUoJG1vZGVzLi4uKSB7XG4gIC8vIG5vbmUgfCBmb3J3YXJkcyB8IGJhY2t3YXJkcyB8IGJvdGhcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYW5pbWF0aW9uLWZpbGwtbW9kZSwgJG1vZGVzLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuIiwKCQkiQG1peGluIGFwcGVhcmFuY2UoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHByZWZpeGVyKGFwcGVhcmFuY2UsICR2YWx1ZSwgd2Via2l0IG1veiBtcyBvIHNwZWMpO1xufVxuIiwKCQkiQG1peGluIGJhY2tmYWNlLXZpc2liaWxpdHkoJHZpc2liaWxpdHkpIHtcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYmFja2ZhY2UtdmlzaWJpbGl0eSwgJHZpc2liaWxpdHksIHdlYmtpdCBzcGVjKTtcbn1cbiIsCgkJIi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLy9cbi8vIEJhY2tncm91bmQgcHJvcGVydHkgZm9yIGFkZGluZyBtdWx0aXBsZSBiYWNrZ3JvdW5kcyB1c2luZyBzaG9ydGhhbmRcbi8vIG5vdGF0aW9uLlxuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovL1xuXG5AbWl4aW4gYmFja2dyb3VuZCgkYmFja2dyb3VuZHMuLi4pIHtcbiAgJHdlYmtpdC1iYWNrZ3JvdW5kczogKCk7XG4gICRzcGVjLWJhY2tncm91bmRzOiAoKTtcblxuICBAZWFjaCAkYmFja2dyb3VuZCBpbiAkYmFja2dyb3VuZHMge1xuICAgICR3ZWJraXQtYmFja2dyb3VuZDogKCk7XG4gICAgJHNwZWMtYmFja2dyb3VuZDogKCk7XG4gICAgJGJhY2tncm91bmQtdHlwZTogdHlwZS1vZigkYmFja2dyb3VuZCk7XG5cbiAgICBAaWYgJGJhY2tncm91bmQtdHlwZSA9PSBzdHJpbmcgb3IgJGJhY2tncm91bmQtdHlwZSA9PSBsaXN0IHtcbiAgICAgICRiYWNrZ3JvdW5kLXN0cjogaWYoJGJhY2tncm91bmQtdHlwZSA9PSBsaXN0LCBudGgoJGJhY2tncm91bmQsIDEpLCAkYmFja2dyb3VuZCk7XG5cbiAgICAgICR1cmwtc3RyOiAgICAgICBzdHItc2xpY2UoJGJhY2tncm91bmQtc3RyLCAxLCAzKTtcbiAgICAgICRncmFkaWVudC10eXBlOiBzdHItc2xpY2UoJGJhY2tncm91bmQtc3RyLCAxLCA2KTtcblxuICAgICAgQGlmICR1cmwtc3RyID09IFwidXJsXCIge1xuICAgICAgICAkd2Via2l0LWJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICAgICAgICAkc3BlYy1iYWNrZ3JvdW5kOiAgICRiYWNrZ3JvdW5kO1xuICAgICAgfVxuXG4gICAgICBAZWxzZSBpZiAkZ3JhZGllbnQtdHlwZSA9PSBcImxpbmVhclwiIHtcbiAgICAgICAgJGdyYWRpZW50czogX2xpbmVhci1ncmFkaWVudC1wYXJzZXIoXCIjeyRiYWNrZ3JvdW5kfVwiKTtcbiAgICAgICAgJHdlYmtpdC1iYWNrZ3JvdW5kOiBtYXAtZ2V0KCRncmFkaWVudHMsIHdlYmtpdC1pbWFnZSk7XG4gICAgICAgICRzcGVjLWJhY2tncm91bmQ6ICAgbWFwLWdldCgkZ3JhZGllbnRzLCBzcGVjLWltYWdlKTtcbiAgICAgIH1cblxuICAgICAgQGVsc2UgaWYgJGdyYWRpZW50LXR5cGUgPT0gXCJyYWRpYWxcIiB7XG4gICAgICAgICRncmFkaWVudHM6IF9yYWRpYWwtZ3JhZGllbnQtcGFyc2VyKFwiI3skYmFja2dyb3VuZH1cIik7XG4gICAgICAgICR3ZWJraXQtYmFja2dyb3VuZDogbWFwLWdldCgkZ3JhZGllbnRzLCB3ZWJraXQtaW1hZ2UpO1xuICAgICAgICAkc3BlYy1iYWNrZ3JvdW5kOiAgIG1hcC1nZXQoJGdyYWRpZW50cywgc3BlYy1pbWFnZSk7XG4gICAgICB9XG5cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJHdlYmtpdC1iYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgICAgICAgJHNwZWMtYmFja2dyb3VuZDogICAkYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAZWxzZSB7XG4gICAgICAkd2Via2l0LWJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICAgICAgJHNwZWMtYmFja2dyb3VuZDogICAkYmFja2dyb3VuZDtcbiAgICB9XG5cbiAgICAkd2Via2l0LWJhY2tncm91bmRzOiBhcHBlbmQoJHdlYmtpdC1iYWNrZ3JvdW5kcywgJHdlYmtpdC1iYWNrZ3JvdW5kLCBjb21tYSk7XG4gICAgJHNwZWMtYmFja2dyb3VuZHM6ICAgYXBwZW5kKCRzcGVjLWJhY2tncm91bmRzLCAgICRzcGVjLWJhY2tncm91bmQsICAgY29tbWEpO1xuICB9XG5cbiAgYmFja2dyb3VuZDogJHdlYmtpdC1iYWNrZ3JvdW5kcztcbiAgYmFja2dyb3VuZDogJHNwZWMtYmFja2dyb3VuZHM7XG59XG4iLAoJCSIvLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vXG4vLyBCYWNrZ3JvdW5kLWltYWdlIHByb3BlcnR5IGZvciBhZGRpbmcgbXVsdGlwbGUgYmFja2dyb3VuZCBpbWFnZXMgd2l0aFxuLy8gZ3JhZGllbnRzLCBvciBmb3Igc3RyaW5naW5nIG11bHRpcGxlIGdyYWRpZW50cyB0b2dldGhlci5cbi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLy9cblxuQG1peGluIGJhY2tncm91bmQtaW1hZ2UoJGltYWdlcy4uLikge1xuICAkd2Via2l0LWltYWdlczogKCk7XG4gICRzcGVjLWltYWdlczogKCk7XG5cbiAgQGVhY2ggJGltYWdlIGluICRpbWFnZXMge1xuICAgICR3ZWJraXQtaW1hZ2U6ICgpO1xuICAgICRzcGVjLWltYWdlOiAoKTtcblxuICAgIEBpZiAodHlwZS1vZigkaW1hZ2UpID09IHN0cmluZykge1xuICAgICAgJHVybC1zdHI6ICAgICAgIHN0ci1zbGljZSgkaW1hZ2UsIDEsIDMpO1xuICAgICAgJGdyYWRpZW50LXR5cGU6IHN0ci1zbGljZSgkaW1hZ2UsIDEsIDYpO1xuXG4gICAgICBAaWYgJHVybC1zdHIgPT0gXCJ1cmxcIiB7XG4gICAgICAgICR3ZWJraXQtaW1hZ2U6ICRpbWFnZTtcbiAgICAgICAgJHNwZWMtaW1hZ2U6ICAgJGltYWdlO1xuICAgICAgfVxuXG4gICAgICBAZWxzZSBpZiAkZ3JhZGllbnQtdHlwZSA9PSBcImxpbmVhclwiIHtcbiAgICAgICAgJGdyYWRpZW50czogX2xpbmVhci1ncmFkaWVudC1wYXJzZXIoJGltYWdlKTtcbiAgICAgICAgJHdlYmtpdC1pbWFnZTogIG1hcC1nZXQoJGdyYWRpZW50cywgd2Via2l0LWltYWdlKTtcbiAgICAgICAgJHNwZWMtaW1hZ2U6ICAgIG1hcC1nZXQoJGdyYWRpZW50cywgc3BlYy1pbWFnZSk7XG4gICAgICB9XG5cbiAgICAgIEBlbHNlIGlmICRncmFkaWVudC10eXBlID09IFwicmFkaWFsXCIge1xuICAgICAgICAkZ3JhZGllbnRzOiBfcmFkaWFsLWdyYWRpZW50LXBhcnNlcigkaW1hZ2UpO1xuICAgICAgICAkd2Via2l0LWltYWdlOiBtYXAtZ2V0KCRncmFkaWVudHMsIHdlYmtpdC1pbWFnZSk7XG4gICAgICAgICRzcGVjLWltYWdlOiAgIG1hcC1nZXQoJGdyYWRpZW50cywgc3BlYy1pbWFnZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJHdlYmtpdC1pbWFnZXM6IGFwcGVuZCgkd2Via2l0LWltYWdlcywgJHdlYmtpdC1pbWFnZSwgY29tbWEpO1xuICAgICRzcGVjLWltYWdlczogICBhcHBlbmQoJHNwZWMtaW1hZ2VzLCAgICRzcGVjLWltYWdlLCAgIGNvbW1hKTtcbiAgfVxuXG4gIGJhY2tncm91bmQtaW1hZ2U6ICR3ZWJraXQtaW1hZ2VzO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAkc3BlYy1pbWFnZXM7XG59XG4iLAoJCSJAbWl4aW4gYm9yZGVyLWltYWdlKCRib3JkZXJzLi4uKSB7XG4gICR3ZWJraXQtYm9yZGVyczogKCk7XG4gICRzcGVjLWJvcmRlcnM6ICgpO1xuXG4gIEBlYWNoICRib3JkZXIgaW4gJGJvcmRlcnMge1xuICAgICR3ZWJraXQtYm9yZGVyOiAoKTtcbiAgICAkc3BlYy1ib3JkZXI6ICgpO1xuICAgICRib3JkZXItdHlwZTogdHlwZS1vZigkYm9yZGVyKTtcblxuICAgIEBpZiAkYm9yZGVyLXR5cGUgPT0gc3RyaW5nIG9yIGxpc3Qge1xuICAgICAgJGJvcmRlci1zdHI6IGlmKCRib3JkZXItdHlwZSA9PSBsaXN0LCBudGgoJGJvcmRlciwgMSksICRib3JkZXIpO1xuXG4gICAgICAkdXJsLXN0cjogICAgICAgc3RyLXNsaWNlKCRib3JkZXItc3RyLCAxLCAzKTtcbiAgICAgICRncmFkaWVudC10eXBlOiBzdHItc2xpY2UoJGJvcmRlci1zdHIsIDEsIDYpO1xuXG4gICAgICBAaWYgJHVybC1zdHIgPT0gXCJ1cmxcIiB7XG4gICAgICAgICR3ZWJraXQtYm9yZGVyOiAkYm9yZGVyO1xuICAgICAgICAkc3BlYy1ib3JkZXI6ICAgJGJvcmRlcjtcbiAgICAgIH1cblxuICAgICAgQGVsc2UgaWYgJGdyYWRpZW50LXR5cGUgPT0gXCJsaW5lYXJcIiB7XG4gICAgICAgICRncmFkaWVudHM6IF9saW5lYXItZ3JhZGllbnQtcGFyc2VyKFwiI3skYm9yZGVyfVwiKTtcbiAgICAgICAgJHdlYmtpdC1ib3JkZXI6IG1hcC1nZXQoJGdyYWRpZW50cywgd2Via2l0LWltYWdlKTtcbiAgICAgICAgJHNwZWMtYm9yZGVyOiAgIG1hcC1nZXQoJGdyYWRpZW50cywgc3BlYy1pbWFnZSk7XG4gICAgICB9XG5cbiAgICAgIEBlbHNlIGlmICRncmFkaWVudC10eXBlID09IFwicmFkaWFsXCIge1xuICAgICAgICAkZ3JhZGllbnRzOiBfcmFkaWFsLWdyYWRpZW50LXBhcnNlcihcIiN7JGJvcmRlcn1cIik7XG4gICAgICAgICR3ZWJraXQtYm9yZGVyOiBtYXAtZ2V0KCRncmFkaWVudHMsIHdlYmtpdC1pbWFnZSk7XG4gICAgICAgICRzcGVjLWJvcmRlcjogICBtYXAtZ2V0KCRncmFkaWVudHMsIHNwZWMtaW1hZ2UpO1xuICAgICAgfVxuXG4gICAgICBAZWxzZSB7XG4gICAgICAgICR3ZWJraXQtYm9yZGVyOiAkYm9yZGVyO1xuICAgICAgICAkc3BlYy1ib3JkZXI6ICAgJGJvcmRlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAZWxzZSB7XG4gICAgICAkd2Via2l0LWJvcmRlcjogJGJvcmRlcjtcbiAgICAgICRzcGVjLWJvcmRlcjogICAkYm9yZGVyO1xuICAgIH1cblxuICAgICR3ZWJraXQtYm9yZGVyczogYXBwZW5kKCR3ZWJraXQtYm9yZGVycywgJHdlYmtpdC1ib3JkZXIsIGNvbW1hKTtcbiAgICAkc3BlYy1ib3JkZXJzOiAgIGFwcGVuZCgkc3BlYy1ib3JkZXJzLCAgICRzcGVjLWJvcmRlciwgICBjb21tYSk7XG4gIH1cblxuICAtd2Via2l0LWJvcmRlci1pbWFnZTogJHdlYmtpdC1ib3JkZXJzO1xuICAgICAgICAgIGJvcmRlci1pbWFnZTogJHNwZWMtYm9yZGVycztcbiAgICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xufVxuXG4vL0V4YW1wbGVzOlxuLy8gQGluY2x1ZGUgYm9yZGVyLWltYWdlKHVybChcImltYWdlLnBuZ1wiKSk7XG4vLyBAaW5jbHVkZSBib3JkZXItaW1hZ2UodXJsKFwiaW1hZ2UucG5nXCIpIDIwIHN0cmV0Y2gpO1xuLy8gQGluY2x1ZGUgYm9yZGVyLWltYWdlKGxpbmVhci1ncmFkaWVudCg0NWRlZywgb3JhbmdlLCB5ZWxsb3cpKTtcbi8vIEBpbmNsdWRlIGJvcmRlci1pbWFnZShsaW5lYXItZ3JhZGllbnQoNDVkZWcsIG9yYW5nZSwgeWVsbG93KSBzdHJldGNoKTtcbi8vIEBpbmNsdWRlIGJvcmRlci1pbWFnZShsaW5lYXItZ3JhZGllbnQoNDVkZWcsIG9yYW5nZSwgeWVsbG93KSAyMCAzMCA0MCA1MCBzdHJldGNoIHJvdW5kKTtcbi8vIEBpbmNsdWRlIGJvcmRlci1pbWFnZShyYWRpYWwtZ3JhZGllbnQodG9wLCBjb3Zlciwgb3JhbmdlLCB5ZWxsb3csIG9yYW5nZSkpO1xuIiwKCQkiQG1peGluIGNhbGMoJHByb3BlcnR5LCAkdmFsdWUpIHtcbiAgI3skcHJvcGVydHl9OiAtd2Via2l0LWNhbGMoI3skdmFsdWV9KTtcbiAgI3skcHJvcGVydHl9OiBjYWxjKCN7JHZhbHVlfSk7XG59XG4iLAoJCSJAbWl4aW4gY29sdW1ucygkYXJnOiBhdXRvKSB7XG4gIC8vIDxjb2x1bW4tY291bnQ+IHx8IDxjb2x1bW4td2lkdGg+XG4gIEBpbmNsdWRlIHByZWZpeGVyKGNvbHVtbnMsICRhcmcsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG5cbkBtaXhpbiBjb2x1bW4tY291bnQoJGludDogYXV0bykge1xuICAvLyBhdXRvIHx8IGludGVnZXJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoY29sdW1uLWNvdW50LCAkaW50LCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5AbWl4aW4gY29sdW1uLWdhcCgkbGVuZ3RoOiBub3JtYWwpIHtcbiAgLy8gbm9ybWFsIHx8IGxlbmd0aFxuICBAaW5jbHVkZSBwcmVmaXhlcihjb2x1bW4tZ2FwLCAkbGVuZ3RoLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5AbWl4aW4gY29sdW1uLWZpbGwoJGFyZzogYXV0bykge1xuICAvLyBhdXRvIHx8IGxlbmd0aFxuICBAaW5jbHVkZSBwcmVmaXhlcihjb2x1bW4tZmlsbCwgJGFyZywgd2Via2l0IG1veiBzcGVjKTtcbn1cblxuQG1peGluIGNvbHVtbi1ydWxlKCRhcmcpIHtcbiAgLy8gPGJvcmRlci13aWR0aD4gfHwgPGJvcmRlci1zdHlsZT4gfHwgPGNvbG9yPlxuICBAaW5jbHVkZSBwcmVmaXhlcihjb2x1bW4tcnVsZSwgJGFyZywgd2Via2l0IG1veiBzcGVjKTtcbn1cblxuQG1peGluIGNvbHVtbi1ydWxlLWNvbG9yKCRjb2xvcikge1xuICBAaW5jbHVkZSBwcmVmaXhlcihjb2x1bW4tcnVsZS1jb2xvciwgJGNvbG9yLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5AbWl4aW4gY29sdW1uLXJ1bGUtc3R5bGUoJHN0eWxlOiBub25lKSB7XG4gIC8vIG5vbmUgfCBoaWRkZW4gfCBkYXNoZWQgfCBkb3R0ZWQgfCBkb3VibGUgfCBncm9vdmUgfCBpbnNldCB8IGluc2V0IHwgb3V0c2V0IHwgcmlkZ2UgfCBzb2xpZFxuICBAaW5jbHVkZSBwcmVmaXhlcihjb2x1bW4tcnVsZS1zdHlsZSwgJHN0eWxlLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5AbWl4aW4gY29sdW1uLXJ1bGUtd2lkdGggKCR3aWR0aDogbm9uZSkge1xuICBAaW5jbHVkZSBwcmVmaXhlcihjb2x1bW4tcnVsZS13aWR0aCwgJHdpZHRoLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5AbWl4aW4gY29sdW1uLXNwYW4oJGFyZzogbm9uZSkge1xuICAvLyBub25lIHx8IGFsbFxuICBAaW5jbHVkZSBwcmVmaXhlcihjb2x1bW4tc3BhbiwgJGFyZywgd2Via2l0IG1veiBzcGVjKTtcbn1cblxuQG1peGluIGNvbHVtbi13aWR0aCgkbGVuZ3RoOiBhdXRvKSB7XG4gIC8vIGF1dG8gfHwgbGVuZ3RoXG4gIEBpbmNsdWRlIHByZWZpeGVyKGNvbHVtbi13aWR0aCwgJGxlbmd0aCwgd2Via2l0IG1veiBzcGVjKTtcbn1cbiIsCgkJIkBtaXhpbiBmaWx0ZXIoJGZ1bmN0aW9uOiBub25lKSB7XG4gIC8vIDxmaWx0ZXItZnVuY3Rpb24+IFs8ZmlsdGVyLWZ1bmN0aW9uXSogfCBub25lXG4gIEBpbmNsdWRlIHByZWZpeGVyKGZpbHRlciwgJGZ1bmN0aW9uLCB3ZWJraXQgc3BlYyk7XG59XG4iLAoJCSIvLyBDU1MzIEZsZXhpYmxlIEJveCBNb2RlbCBhbmQgcHJvcGVydHkgZGVmYXVsdHNcblxuLy8gQ3VzdG9tIHNob3J0aGFuZCBub3RhdGlvbiBmb3IgZmxleGJveFxuQG1peGluIGJveCgkb3JpZW50OiBpbmxpbmUtYXhpcywgJHBhY2s6IHN0YXJ0LCAkYWxpZ246IHN0cmV0Y2gpIHtcbiAgQGluY2x1ZGUgZGlzcGxheS1ib3g7XG4gIEBpbmNsdWRlIGJveC1vcmllbnQoJG9yaWVudCk7XG4gIEBpbmNsdWRlIGJveC1wYWNrKCRwYWNrKTtcbiAgQGluY2x1ZGUgYm94LWFsaWduKCRhbGlnbik7XG59XG5cbkBtaXhpbiBkaXNwbGF5LWJveCB7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBkaXNwbGF5OiAtbW96LWJveDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7IC8vIElFIDEwXG4gIGRpc3BsYXk6IGJveDtcbn1cblxuQG1peGluIGJveC1vcmllbnQoJG9yaWVudDogaW5saW5lLWF4aXMpIHtcbi8vIGhvcml6b250YWx8dmVydGljYWx8aW5saW5lLWF4aXN8YmxvY2stYXhpc3xpbmhlcml0XG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1vcmllbnQsICRvcmllbnQsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG5cbkBtaXhpbiBib3gtcGFjaygkcGFjazogc3RhcnQpIHtcbi8vIHN0YXJ0fGVuZHxjZW50ZXJ8anVzdGlmeVxuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtcGFjaywgJHBhY2ssIHdlYmtpdCBtb3ogc3BlYyk7XG4gIC1tcy1mbGV4LXBhY2s6ICRwYWNrOyAvLyBJRSAxMFxufVxuXG5AbWl4aW4gYm94LWFsaWduKCRhbGlnbjogc3RyZXRjaCkge1xuLy8gc3RhcnR8ZW5kfGNlbnRlcnxiYXNlbGluZXxzdHJldGNoXG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1hbGlnbiwgJGFsaWduLCB3ZWJraXQgbW96IHNwZWMpO1xuICAtbXMtZmxleC1hbGlnbjogJGFsaWduOyAvLyBJRSAxMFxufVxuXG5AbWl4aW4gYm94LWRpcmVjdGlvbigkZGlyZWN0aW9uOiBub3JtYWwpIHtcbi8vIG5vcm1hbHxyZXZlcnNlfGluaGVyaXRcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LWRpcmVjdGlvbiwgJGRpcmVjdGlvbiwgd2Via2l0IG1veiBzcGVjKTtcbiAgLW1zLWZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uOyAvLyBJRSAxMFxufVxuXG5AbWl4aW4gYm94LWxpbmVzKCRsaW5lczogc2luZ2xlKSB7XG4vLyBzaW5nbGV8bXVsdGlwbGVcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LWxpbmVzLCAkbGluZXMsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG5cbkBtaXhpbiBib3gtb3JkaW5hbC1ncm91cCgkaW50OiAxKSB7XG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1vcmRpbmFsLWdyb3VwLCAkaW50LCB3ZWJraXQgbW96IHNwZWMpO1xuICAtbXMtZmxleC1vcmRlcjogJGludDsgLy8gSUUgMTBcbn1cblxuQG1peGluIGJveC1mbGV4KCR2YWx1ZTogMCkge1xuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtZmxleCwgJHZhbHVlLCB3ZWJraXQgbW96IHNwZWMpO1xuICAtbXMtZmxleDogJHZhbHVlOyAvLyBJRSAxMFxufVxuXG5AbWl4aW4gYm94LWZsZXgtZ3JvdXAoJGludDogMSkge1xuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtZmxleC1ncm91cCwgJGludCwgd2Via2l0IG1veiBzcGVjKTtcbn1cblxuLy8gQ1NTMyBGbGV4aWJsZSBCb3ggTW9kZWwgYW5kIHByb3BlcnR5IGRlZmF1bHRzXG4vLyBVbmlmaWVkIGF0dHJpYnV0ZXMgZm9yIDIwMDksIDIwMTEsIGFuZCAyMDEyIGZsYXZvdXJzLlxuXG4vLyAyMDA5IC0gZGlzcGxheSAoYm94IHwgaW5saW5lLWJveClcbi8vIDIwMTEgLSBkaXNwbGF5IChmbGV4Ym94IHwgaW5saW5lLWZsZXhib3gpXG4vLyAyMDEyIC0gZGlzcGxheSAoZmxleCB8IGlubGluZS1mbGV4KVxuQG1peGluIGRpc3BsYXkoJHZhbHVlKSB7XG4vLyBmbGV4IHwgaW5saW5lLWZsZXhcbiAgQGlmICR2YWx1ZSA9PSBcImZsZXhcIiB7XG4gICAgLy8gMjAwOVxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgIGRpc3BsYXk6IC1tb3otYm94O1xuICAgIGRpc3BsYXk6IGJveDtcblxuICAgIC8vIDIwMTJcbiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgZGlzcGxheTogLW1vei1mbGV4O1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OyAvLyAyMDExIChJRSAxMClcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9IEBlbHNlIGlmICR2YWx1ZSA9PSBcImlubGluZS1mbGV4XCIge1xuICAgIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWJveDtcbiAgICBkaXNwbGF5OiAtbW96LWlubGluZS1ib3g7XG4gICAgZGlzcGxheTogaW5saW5lLWJveDtcblxuICAgIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWZsZXg7XG4gICAgZGlzcGxheTogLW1vei1pbmxpbmUtZmxleDtcbiAgICBkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3g7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIH0gQGVsc2Uge1xuICAgIGRpc3BsYXk6ICR2YWx1ZTtcbiAgfVxufVxuXG4vLyAyMDA5IC0gYm94LWZsZXggKGludGVnZXIpXG4vLyAyMDExIC0gZmxleCAoZGVjaW1hbCB8IHdpZHRoIGRlY2ltYWwpXG4vLyAyMDEyIC0gZmxleCAoaW50ZWdlciBpbnRlZ2VyIHdpZHRoKVxuQG1peGluIGZsZXgoJHZhbHVlKSB7XG5cbiAgLy8gR3JhYiBmbGV4LWdyb3cgZm9yIG9sZGVyIGJyb3dzZXJzLlxuICAkZmxleC1ncm93OiBudGgoJHZhbHVlLCAxKTtcblxuICAvLyAyMDA5XG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1mbGV4LCAkZmxleC1ncm93LCB3ZWJraXQgbW96IHNwZWMpO1xuXG4gIC8vIDIwMTEgKElFIDEwKSwgMjAxMlxuICBAaW5jbHVkZSBwcmVmaXhlcihmbGV4LCAkdmFsdWUsIHdlYmtpdCBtb3ogbXMgc3BlYyk7XG59XG5cbi8vIDIwMDkgLSBib3gtb3JpZW50ICggaG9yaXpvbnRhbCB8IHZlcnRpY2FsIHwgaW5saW5lLWF4aXMgfCBibG9jay1heGlzKVxuLy8gICAgICAtIGJveC1kaXJlY3Rpb24gKG5vcm1hbCB8IHJldmVyc2UpXG4vLyAyMDExIC0gZmxleC1kaXJlY3Rpb24gKHJvdyB8IHJvdy1yZXZlcnNlIHwgY29sdW1uIHwgY29sdW1uLXJldmVyc2UpXG4vLyAyMDEyIC0gZmxleC1kaXJlY3Rpb24gKHJvdyB8IHJvdy1yZXZlcnNlIHwgY29sdW1uIHwgY29sdW1uLXJldmVyc2UpXG5AbWl4aW4gZmxleC1kaXJlY3Rpb24oJHZhbHVlOiByb3cpIHtcblxuICAvLyBBbHQgdmFsdWVzLlxuICAkdmFsdWUtMjAwOTogJHZhbHVlO1xuICAkdmFsdWUtMjAxMTogJHZhbHVlO1xuICAkZGlyZWN0aW9uOiBub3JtYWw7XG5cbiAgQGlmICR2YWx1ZSA9PSByb3cge1xuICAgICR2YWx1ZS0yMDA5OiBob3Jpem9udGFsO1xuICB9IEBlbHNlIGlmICR2YWx1ZSA9PSBcInJvdy1yZXZlcnNlXCIge1xuICAgICR2YWx1ZS0yMDA5OiBob3Jpem9udGFsO1xuICAgICRkaXJlY3Rpb246IHJldmVyc2U7XG4gIH0gQGVsc2UgaWYgJHZhbHVlID09IGNvbHVtbiB7XG4gICAgJHZhbHVlLTIwMDk6IHZlcnRpY2FsO1xuICB9IEBlbHNlIGlmICR2YWx1ZSA9PSBcImNvbHVtbi1yZXZlcnNlXCIge1xuICAgICR2YWx1ZS0yMDA5OiB2ZXJ0aWNhbDtcbiAgICAkZGlyZWN0aW9uOiByZXZlcnNlO1xuICB9XG5cbiAgLy8gMjAwOVxuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtb3JpZW50LCAkdmFsdWUtMjAwOSwgd2Via2l0IG1veiBzcGVjKTtcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LWRpcmVjdGlvbiwgJGRpcmVjdGlvbiwgd2Via2l0IG1veiBzcGVjKTtcblxuICAvLyAyMDEyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGZsZXgtZGlyZWN0aW9uLCAkdmFsdWUsIHdlYmtpdCBtb3ogc3BlYyk7XG5cbiAgLy8gMjAxMSAoSUUgMTApXG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogJHZhbHVlO1xufVxuXG4vLyAyMDA5IC0gYm94LWxpbmVzIChzaW5nbGUgfCBtdWx0aXBsZSlcbi8vIDIwMTEgLSBmbGV4LXdyYXAgKG5vd3JhcCB8IHdyYXAgfCB3cmFwLXJldmVyc2UpXG4vLyAyMDEyIC0gZmxleC13cmFwIChub3dyYXAgfCB3cmFwIHwgd3JhcC1yZXZlcnNlKVxuQG1peGluIGZsZXgtd3JhcCgkdmFsdWU6IG5vd3JhcCkge1xuICAvLyBBbHQgdmFsdWVzXG4gICRhbHQtdmFsdWU6ICR2YWx1ZTtcbiAgQGlmICR2YWx1ZSA9PSBub3dyYXAge1xuICAgICRhbHQtdmFsdWU6IHNpbmdsZTtcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gd3JhcCB7XG4gICAgJGFsdC12YWx1ZTogbXVsdGlwbGU7XG4gIH0gQGVsc2UgaWYgJHZhbHVlID09IFwid3JhcC1yZXZlcnNlXCIge1xuICAgICRhbHQtdmFsdWU6IG11bHRpcGxlO1xuICB9XG5cbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LWxpbmVzLCAkYWx0LXZhbHVlLCB3ZWJraXQgbW96IHNwZWMpO1xuICBAaW5jbHVkZSBwcmVmaXhlcihmbGV4LXdyYXAsICR2YWx1ZSwgd2Via2l0IG1veiBtcyBzcGVjKTtcbn1cblxuLy8gMjAwOSAtIFRPRE86IHBhcnNlIHZhbHVlcyBpbnRvIGZsZXgtZGlyZWN0aW9uL2ZsZXgtd3JhcFxuLy8gMjAxMSAtIFRPRE86IHBhcnNlIHZhbHVlcyBpbnRvIGZsZXgtZGlyZWN0aW9uL2ZsZXgtd3JhcFxuLy8gMjAxMiAtIGZsZXgtZmxvdyAoZmxleC1kaXJlY3Rpb24gfHwgZmxleC13cmFwKVxuQG1peGluIGZsZXgtZmxvdygkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcHJlZml4ZXIoZmxleC1mbG93LCAkdmFsdWUsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG5cbi8vIDIwMDkgLSBib3gtb3JkaW5hbC1ncm91cCAoaW50ZWdlcilcbi8vIDIwMTEgLSBmbGV4LW9yZGVyIChpbnRlZ2VyKVxuLy8gMjAxMiAtIG9yZGVyIChpbnRlZ2VyKVxuQG1peGluIG9yZGVyKCRpbnQ6IDApIHtcbiAgLy8gMjAwOVxuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtb3JkaW5hbC1ncm91cCwgJGludCwgd2Via2l0IG1veiBzcGVjKTtcblxuICAvLyAyMDEyXG4gIEBpbmNsdWRlIHByZWZpeGVyKG9yZGVyLCAkaW50LCB3ZWJraXQgbW96IHNwZWMpO1xuXG4gIC8vIDIwMTEgKElFIDEwKVxuICAtbXMtZmxleC1vcmRlcjogJGludDtcbn1cblxuLy8gMjAxMiAtIGZsZXgtZ3JvdyAobnVtYmVyKVxuQG1peGluIGZsZXgtZ3JvdygkbnVtYmVyOiAwKSB7XG4gIEBpbmNsdWRlIHByZWZpeGVyKGZsZXgtZ3JvdywgJG51bWJlciwgd2Via2l0IG1veiBzcGVjKTtcbiAgLW1zLWZsZXgtcG9zaXRpdmU6ICRudW1iZXI7XG59XG5cbi8vIDIwMTIgLSBmbGV4LXNocmluayAobnVtYmVyKVxuQG1peGluIGZsZXgtc2hyaW5rKCRudW1iZXI6IDEpIHtcbiAgQGluY2x1ZGUgcHJlZml4ZXIoZmxleC1zaHJpbmssICRudW1iZXIsIHdlYmtpdCBtb3ogc3BlYyk7XG4gIC1tcy1mbGV4LW5lZ2F0aXZlOiAkbnVtYmVyO1xufVxuXG4vLyAyMDEyIC0gZmxleC1iYXNpcyAobnVtYmVyKVxuQG1peGluIGZsZXgtYmFzaXMoJHdpZHRoOiBhdXRvKSB7XG4gIEBpbmNsdWRlIHByZWZpeGVyKGZsZXgtYmFzaXMsICR3aWR0aCwgd2Via2l0IG1veiBzcGVjKTtcbiAgLW1zLWZsZXgtcHJlZmVycmVkLXNpemU6ICR3aWR0aDtcbn1cblxuLy8gMjAwOSAtIGJveC1wYWNrIChzdGFydCB8IGVuZCB8IGNlbnRlciB8IGp1c3RpZnkpXG4vLyAyMDExIC0gZmxleC1wYWNrIChzdGFydCB8IGVuZCB8IGNlbnRlciB8IGp1c3RpZnkpXG4vLyAyMDEyIC0ganVzdGlmeS1jb250ZW50IChmbGV4LXN0YXJ0IHwgZmxleC1lbmQgfCBjZW50ZXIgfCBzcGFjZS1iZXR3ZWVuIHwgc3BhY2UtYXJvdW5kKVxuQG1peGluIGp1c3RpZnktY29udGVudCgkdmFsdWU6IGZsZXgtc3RhcnQpIHtcblxuICAvLyBBbHQgdmFsdWVzLlxuICAkYWx0LXZhbHVlOiAkdmFsdWU7XG4gIEBpZiAkdmFsdWUgPT0gXCJmbGV4LXN0YXJ0XCIge1xuICAgICRhbHQtdmFsdWU6IHN0YXJ0O1xuICB9IEBlbHNlIGlmICR2YWx1ZSA9PSBcImZsZXgtZW5kXCIge1xuICAgICRhbHQtdmFsdWU6IGVuZDtcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gXCJzcGFjZS1iZXR3ZWVuXCIge1xuICAgICRhbHQtdmFsdWU6IGp1c3RpZnk7XG4gIH0gQGVsc2UgaWYgJHZhbHVlID09IFwic3BhY2UtYXJvdW5kXCIge1xuICAgICRhbHQtdmFsdWU6IGRpc3RyaWJ1dGU7XG4gIH1cblxuICAvLyAyMDA5XG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1wYWNrLCAkYWx0LXZhbHVlLCB3ZWJraXQgbW96IHNwZWMpO1xuXG4gIC8vIDIwMTJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoanVzdGlmeS1jb250ZW50LCAkdmFsdWUsIHdlYmtpdCBtb3ogbXMgbyBzcGVjKTtcblxuICAvLyAyMDExIChJRSAxMClcbiAgLW1zLWZsZXgtcGFjazogJGFsdC12YWx1ZTtcbn1cblxuLy8gMjAwOSAtIGJveC1hbGlnbiAoc3RhcnQgfCBlbmQgfCBjZW50ZXIgfCBiYXNlbGluZSB8IHN0cmV0Y2gpXG4vLyAyMDExIC0gZmxleC1hbGlnbiAoc3RhcnQgfCBlbmQgfCBjZW50ZXIgfCBiYXNlbGluZSB8IHN0cmV0Y2gpXG4vLyAyMDEyIC0gYWxpZ24taXRlbXMgKGZsZXgtc3RhcnQgfCBmbGV4LWVuZCB8IGNlbnRlciB8IGJhc2VsaW5lIHwgc3RyZXRjaClcbkBtaXhpbiBhbGlnbi1pdGVtcygkdmFsdWU6IHN0cmV0Y2gpIHtcblxuICAkYWx0LXZhbHVlOiAkdmFsdWU7XG5cbiAgQGlmICR2YWx1ZSA9PSBcImZsZXgtc3RhcnRcIiB7XG4gICAgJGFsdC12YWx1ZTogc3RhcnQ7XG4gIH0gQGVsc2UgaWYgJHZhbHVlID09IFwiZmxleC1lbmRcIiB7XG4gICAgJGFsdC12YWx1ZTogZW5kO1xuICB9XG5cbiAgLy8gMjAwOVxuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtYWxpZ24sICRhbHQtdmFsdWUsIHdlYmtpdCBtb3ogc3BlYyk7XG5cbiAgLy8gMjAxMlxuICBAaW5jbHVkZSBwcmVmaXhlcihhbGlnbi1pdGVtcywgJHZhbHVlLCB3ZWJraXQgbW96IG1zIG8gc3BlYyk7XG5cbiAgLy8gMjAxMSAoSUUgMTApXG4gIC1tcy1mbGV4LWFsaWduOiAkYWx0LXZhbHVlO1xufVxuXG4vLyAyMDExIC0gZmxleC1pdGVtLWFsaWduIChhdXRvIHwgc3RhcnQgfCBlbmQgfCBjZW50ZXIgfCBiYXNlbGluZSB8IHN0cmV0Y2gpXG4vLyAyMDEyIC0gYWxpZ24tc2VsZiAoYXV0byB8IGZsZXgtc3RhcnQgfCBmbGV4LWVuZCB8IGNlbnRlciB8IGJhc2VsaW5lIHwgc3RyZXRjaClcbkBtaXhpbiBhbGlnbi1zZWxmKCR2YWx1ZTogYXV0bykge1xuXG4gICR2YWx1ZS0yMDExOiAkdmFsdWU7XG4gIEBpZiAkdmFsdWUgPT0gXCJmbGV4LXN0YXJ0XCIge1xuICAgICR2YWx1ZS0yMDExOiBzdGFydDtcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gXCJmbGV4LWVuZFwiIHtcbiAgICAkdmFsdWUtMjAxMTogZW5kO1xuICB9XG5cbiAgLy8gMjAxMlxuICBAaW5jbHVkZSBwcmVmaXhlcihhbGlnbi1zZWxmLCAkdmFsdWUsIHdlYmtpdCBtb3ogc3BlYyk7XG5cbiAgLy8gMjAxMSAoSUUgMTApXG4gIC1tcy1mbGV4LWl0ZW0tYWxpZ246ICR2YWx1ZS0yMDExO1xufVxuXG4vLyAyMDExIC0gZmxleC1saW5lLXBhY2sgKHN0YXJ0IHwgZW5kIHwgY2VudGVyIHwganVzdGlmeSB8IGRpc3RyaWJ1dGUgfCBzdHJldGNoKVxuLy8gMjAxMiAtIGFsaWduLWNvbnRlbnQgKGZsZXgtc3RhcnQgfCBmbGV4LWVuZCB8IGNlbnRlciB8IHNwYWNlLWJldHdlZW4gfCBzcGFjZS1hcm91bmQgfCBzdHJldGNoKVxuQG1peGluIGFsaWduLWNvbnRlbnQoJHZhbHVlOiBzdHJldGNoKSB7XG5cbiAgJHZhbHVlLTIwMTE6ICR2YWx1ZTtcbiAgQGlmICR2YWx1ZSA9PSBcImZsZXgtc3RhcnRcIiB7XG4gICAgJHZhbHVlLTIwMTE6IHN0YXJ0O1xuICB9IEBlbHNlIGlmICR2YWx1ZSA9PSBcImZsZXgtZW5kXCIge1xuICAgICR2YWx1ZS0yMDExOiBlbmQ7XG4gIH0gQGVsc2UgaWYgJHZhbHVlID09IFwic3BhY2UtYmV0d2VlblwiIHtcbiAgICAkdmFsdWUtMjAxMToganVzdGlmeTtcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gXCJzcGFjZS1hcm91bmRcIiB7XG4gICAgJHZhbHVlLTIwMTE6IGRpc3RyaWJ1dGU7XG4gIH1cblxuICAvLyAyMDEyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGFsaWduLWNvbnRlbnQsICR2YWx1ZSwgd2Via2l0IG1veiBzcGVjKTtcblxuICAvLyAyMDExIChJRSAxMClcbiAgLW1zLWZsZXgtbGluZS1wYWNrOiAkdmFsdWUtMjAxMTtcbn1cbiIsCgkJIkBtaXhpbiBmb250LWZhY2UoXG4gICRmb250LWZhbWlseSxcbiAgJGZpbGUtcGF0aCxcbiAgJHdlaWdodDogbm9ybWFsLFxuICAkc3R5bGU6IG5vcm1hbCxcbiAgJGFzc2V0LXBpcGVsaW5lOiAkYXNzZXQtcGlwZWxpbmUsXG4gICRmaWxlLWZvcm1hdHM6IGVvdCB3b2ZmMiB3b2ZmIHR0ZiBzdmcpIHtcblxuICAkZm9udC11cmwtcHJlZml4OiBmb250LXVybC1wcmVmaXhlcigkYXNzZXQtcGlwZWxpbmUpO1xuXG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHk7XG4gICAgZm9udC1zdHlsZTogJHN0eWxlO1xuICAgIGZvbnQtd2VpZ2h0OiAkd2VpZ2h0O1xuXG4gICAgc3JjOiBmb250LXNvdXJjZS1kZWNsYXJhdGlvbihcbiAgICAgICRmb250LWZhbWlseSxcbiAgICAgICRmaWxlLXBhdGgsXG4gICAgICAkYXNzZXQtcGlwZWxpbmUsXG4gICAgICAkZmlsZS1mb3JtYXRzLFxuICAgICAgJGZvbnQtdXJsLXByZWZpeFxuICAgICk7XG4gIH1cbn1cbiIsCgkJIkBtaXhpbiBmb250LWZlYXR1cmUtc2V0dGluZ3MoJHNldHRpbmdzLi4uKSB7XG4gIEBpZiBsZW5ndGgoJHNldHRpbmdzKSA9PSAwIHsgJHNldHRpbmdzOiBub25lOyB9XG4gIEBpbmNsdWRlIHByZWZpeGVyKGZvbnQtZmVhdHVyZS1zZXR0aW5ncywgJHNldHRpbmdzLCB3ZWJraXQgbW96IG1zIHNwZWMpO1xufVxuIiwKCQkiLy8gSGlEUEkgbWl4aW4uIERlZmF1bHQgdmFsdWUgc2V0IHRvIDEuMyB0byB0YXJnZXQgR29vZ2xlIE5leHVzIDcgKGh0dHA6Ly9iamFuZ28uY29tL2FydGljbGVzL21pbi1kZXZpY2UtcGl4ZWwtcmF0aW8vKVxuQG1peGluIGhpZHBpKCRyYXRpbzogMS4zKSB7XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogJHJhdGlvKSxcbiAgb25seSBzY3JlZW4gYW5kIChtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86ICRyYXRpbyksXG4gIG9ubHkgc2NyZWVuIGFuZCAoLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogI3skcmF0aW99LzEpLFxuICBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiByb3VuZCgkcmF0aW8gKiA5NmRwaSkpLFxuICBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAkcmF0aW8gKiAxZHBweCkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLAoJCSJAbWl4aW4gaHlwaGVucygkaHlwaGVuYXRpb246IG5vbmUpIHtcbiAgLy8gbm9uZSB8IG1hbnVhbCB8IGF1dG9cbiAgQGluY2x1ZGUgcHJlZml4ZXIoaHlwaGVucywgJGh5cGhlbmF0aW9uLCB3ZWJraXQgbW96IG1zIHNwZWMpO1xufVxuIiwKCQkiQG1peGluIGltYWdlLXJlbmRlcmluZyAoJG1vZGU6YXV0bykge1xuXG4gIEBpZiAoJG1vZGUgPT0gY3Jpc3AtZWRnZXMpIHtcbiAgICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBuZWFyZXN0LW5laWdoYm9yOyAvLyBJRTgrXG4gICAgaW1hZ2UtcmVuZGVyaW5nOiAtbW96LWNyaXNwLWVkZ2VzO1xuICAgIGltYWdlLXJlbmRlcmluZzogLW8tY3Jpc3AtZWRnZXM7XG4gICAgaW1hZ2UtcmVuZGVyaW5nOiAtd2Via2l0LW9wdGltaXplLWNvbnRyYXN0O1xuICAgIGltYWdlLXJlbmRlcmluZzogY3Jpc3AtZWRnZXM7XG4gIH1cblxuICBAZWxzZSB7XG4gICAgaW1hZ2UtcmVuZGVyaW5nOiAkbW9kZTtcbiAgfVxufVxuIiwKCQkiLy8gQWRkcyBrZXlmcmFtZXMgYmxvY2tzIGZvciBzdXBwb3J0ZWQgcHJlZml4ZXMsIHJlbW92aW5nIHJlZHVuZGFudCBwcmVmaXhlcyBpbiB0aGUgYmxvY2sncyBjb250ZW50XG5AbWl4aW4ga2V5ZnJhbWVzKCRuYW1lKSB7XG4gICRvcmlnaW5hbC1wcmVmaXgtZm9yLXdlYmtpdDogICAgJHByZWZpeC1mb3Itd2Via2l0O1xuICAkb3JpZ2luYWwtcHJlZml4LWZvci1tb3ppbGxhOiAgICRwcmVmaXgtZm9yLW1vemlsbGE7XG4gICRvcmlnaW5hbC1wcmVmaXgtZm9yLW1pY3Jvc29mdDogJHByZWZpeC1mb3ItbWljcm9zb2Z0O1xuICAkb3JpZ2luYWwtcHJlZml4LWZvci1vcGVyYTogICAgICRwcmVmaXgtZm9yLW9wZXJhO1xuICAkb3JpZ2luYWwtcHJlZml4LWZvci1zcGVjOiAgICAgICRwcmVmaXgtZm9yLXNwZWM7XG5cbiAgQGlmICRvcmlnaW5hbC1wcmVmaXgtZm9yLXdlYmtpdCB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1wcmVmaXgtZm9yLWFsbCgpO1xuICAgICRwcmVmaXgtZm9yLXdlYmtpdDogdHJ1ZSAhZ2xvYmFsO1xuICAgIEAtd2Via2l0LWtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cblxuICBAaWYgJG9yaWdpbmFsLXByZWZpeC1mb3ItbW96aWxsYSB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1wcmVmaXgtZm9yLWFsbCgpO1xuICAgICRwcmVmaXgtZm9yLW1vemlsbGE6IHRydWUgIWdsb2JhbDtcbiAgICBALW1vei1rZXlmcmFtZXMgI3skbmFtZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgJHByZWZpeC1mb3Itd2Via2l0OiAgICAkb3JpZ2luYWwtcHJlZml4LWZvci13ZWJraXQgICAgIWdsb2JhbDtcbiAgJHByZWZpeC1mb3ItbW96aWxsYTogICAkb3JpZ2luYWwtcHJlZml4LWZvci1tb3ppbGxhICAgIWdsb2JhbDtcbiAgJHByZWZpeC1mb3ItbWljcm9zb2Z0OiAkb3JpZ2luYWwtcHJlZml4LWZvci1taWNyb3NvZnQgIWdsb2JhbDtcbiAgJHByZWZpeC1mb3Itb3BlcmE6ICAgICAkb3JpZ2luYWwtcHJlZml4LWZvci1vcGVyYSAgICAgIWdsb2JhbDtcbiAgJHByZWZpeC1mb3Itc3BlYzogICAgICAkb3JpZ2luYWwtcHJlZml4LWZvci1zcGVjICAgICAgIWdsb2JhbDtcblxuICBAaWYgJG9yaWdpbmFsLXByZWZpeC1mb3Itc3BlYyB7XG4gICAgQGtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsCgkJIkBtaXhpbiBsaW5lYXItZ3JhZGllbnQoJHBvcywgJGcxLCAkZzI6IG51bGwsXG4gICAgICAgICAgICAgICAgICAgICAgICRnMzogbnVsbCwgJGc0OiBudWxsLFxuICAgICAgICAgICAgICAgICAgICAgICAkZzU6IG51bGwsICRnNjogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgICAgJGc3OiBudWxsLCAkZzg6IG51bGwsXG4gICAgICAgICAgICAgICAgICAgICAgICRnOTogbnVsbCwgJGcxMDogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgICAgJGZhbGxiYWNrOiBudWxsKSB7XG4gIC8vIERldGVjdCB3aGF0IHR5cGUgb2YgdmFsdWUgZXhpc3RzIGluICRwb3NcbiAgJHBvcy10eXBlOiB0eXBlLW9mKG50aCgkcG9zLCAxKSk7XG4gICRwb3Mtc3BlYzogbnVsbDtcbiAgJHBvcy1kZWdyZWU6IG51bGw7XG5cbiAgLy8gSWYgJHBvcyBpcyBtaXNzaW5nIGZyb20gbWl4aW4sIHJlYXNzaWduIHZhcnMgYW5kIGFkZCBkZWZhdWx0IHBvc2l0aW9uXG4gIEBpZiAoJHBvcy10eXBlID09IGNvbG9yKSBvciAobnRoKCRwb3MsIDEpID09IFwidHJhbnNwYXJlbnRcIikgIHtcbiAgICAkZzEwOiAkZzk7ICRnOTogJGc4OyAkZzg6ICRnNzsgJGc3OiAkZzY7ICRnNjogJGc1O1xuICAgICRnNTogJGc0OyAkZzQ6ICRnMzsgJGczOiAkZzI7ICRnMjogJGcxOyAkZzE6ICRwb3M7XG4gICAgJHBvczogbnVsbDtcbiAgfVxuXG4gIEBpZiAkcG9zIHtcbiAgICAkcG9zaXRpb25zOiBfbGluZWFyLXBvc2l0aW9ucy1wYXJzZXIoJHBvcyk7XG4gICAgJHBvcy1kZWdyZWU6IG50aCgkcG9zaXRpb25zLCAxKTtcbiAgICAkcG9zLXNwZWM6ICAgbnRoKCRwb3NpdGlvbnMsIDIpO1xuICB9XG5cbiAgJGZ1bGw6ICRnMSwgJGcyLCAkZzMsICRnNCwgJGc1LCAkZzYsICRnNywgJGc4LCAkZzksICRnMTA7XG5cbiAgLy8gU2V0ICRnMSBhcyB0aGUgZGVmYXVsdCBmYWxsYmFjayBjb2xvclxuICAkZmFsbGJhY2stY29sb3I6IG50aCgkZzEsIDEpO1xuXG4gIC8vIElmICRmYWxsYmFjayBpcyBhIGNvbG9yIHVzZSB0aGF0IGNvbG9yIGFzIHRoZSBmYWxsYmFjayBjb2xvclxuICBAaWYgKHR5cGUtb2YoJGZhbGxiYWNrKSA9PSBjb2xvcikgb3IgKCRmYWxsYmFjayA9PSBcInRyYW5zcGFyZW50XCIpIHtcbiAgICAkZmFsbGJhY2stY29sb3I6ICRmYWxsYmFjaztcbiAgfVxuXG4gIGJhY2tncm91bmQtY29sb3I6ICRmYWxsYmFjay1jb2xvcjtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoJHBvcy1kZWdyZWUgJGZ1bGwpOyAvLyBTYWZhcmkgNS4xKywgQ2hyb21lXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVucXVvdGUoXCJsaW5lYXItZ3JhZGllbnQoI3skcG9zLXNwZWN9I3skZnVsbH0pXCIpO1xufVxuIiwKCQkiQG1peGluIHBlcnNwZWN0aXZlKCRkZXB0aDogbm9uZSkge1xuICAvLyBub25lIHwgPGxlbmd0aD5cbiAgQGluY2x1ZGUgcHJlZml4ZXIocGVyc3BlY3RpdmUsICRkZXB0aCwgd2Via2l0IG1veiBzcGVjKTtcbn1cblxuQG1peGluIHBlcnNwZWN0aXZlLW9yaWdpbigkdmFsdWU6IDUwJSA1MCUpIHtcbiAgQGluY2x1ZGUgcHJlZml4ZXIocGVyc3BlY3RpdmUtb3JpZ2luLCAkdmFsdWUsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG4iLAoJCSJAbWl4aW4gcGxhY2Vob2xkZXIge1xuICAkcGxhY2Vob2xkZXJzOiBcIjotd2Via2l0LWlucHV0XCIgXCI6LW1velwiIFwiLW1velwiIFwiLW1zLWlucHV0XCI7XG4gIEBlYWNoICRwbGFjZWhvbGRlciBpbiAkcGxhY2Vob2xkZXJzIHtcbiAgICAmOiN7JHBsYWNlaG9sZGVyfS1wbGFjZWhvbGRlciB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsCgkJIi8vIFJlcXVpcmVzIFNhc3MgMy4xK1xuQG1peGluIHJhZGlhbC1ncmFkaWVudCgkZzEsICRnMixcbiAgICAgICAgICAgICAgICAgICAgICAgJGczOiBudWxsLCAkZzQ6IG51bGwsXG4gICAgICAgICAgICAgICAgICAgICAgICRnNTogbnVsbCwgJGc2OiBudWxsLFxuICAgICAgICAgICAgICAgICAgICAgICAkZzc6IG51bGwsICRnODogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgICAgJGc5OiBudWxsLCAkZzEwOiBudWxsLFxuICAgICAgICAgICAgICAgICAgICAgICAkcG9zOiBudWxsLFxuICAgICAgICAgICAgICAgICAgICAgICAkc2hhcGUtc2l6ZTogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgICAgJGZhbGxiYWNrOiBudWxsKSB7XG5cbiAgJGRhdGE6IF9yYWRpYWwtYXJnLXBhcnNlcigkZzEsICRnMiwgJHBvcywgJHNoYXBlLXNpemUpO1xuICAkZzE6ICBudGgoJGRhdGEsIDEpO1xuICAkZzI6ICBudGgoJGRhdGEsIDIpO1xuICAkcG9zOiBudGgoJGRhdGEsIDMpO1xuICAkc2hhcGUtc2l6ZTogbnRoKCRkYXRhLCA0KTtcblxuICAkZnVsbDogJGcxLCAkZzIsICRnMywgJGc0LCAkZzUsICRnNiwgJGc3LCAkZzgsICRnOSwgJGcxMDtcblxuICAvLyBTdHJpcCBkZXByZWNhdGVkIGNvdmVyL2NvbnRhaW4gZm9yIHNwZWNcbiAgJHNoYXBlLXNpemUtc3BlYzogX3NoYXBlLXNpemUtc3RyaXBwZXIoJHNoYXBlLXNpemUpO1xuXG4gIC8vIFNldCAkZzEgYXMgdGhlIGRlZmF1bHQgZmFsbGJhY2sgY29sb3JcbiAgJGZpcnN0LWNvbG9yOiBudGgoJGZ1bGwsIDEpO1xuICAkZmFsbGJhY2stY29sb3I6IG50aCgkZmlyc3QtY29sb3IsIDEpO1xuXG4gIEBpZiAodHlwZS1vZigkZmFsbGJhY2spID09IGNvbG9yKSBvciAoJGZhbGxiYWNrID09IFwidHJhbnNwYXJlbnRcIikge1xuICAgICRmYWxsYmFjay1jb2xvcjogJGZhbGxiYWNrO1xuICB9XG5cbiAgLy8gQWRkIENvbW1hcyBhbmQgc3BhY2VzXG4gICRzaGFwZS1zaXplOiBpZigkc2hhcGUtc2l6ZSwgXCIjeyRzaGFwZS1zaXplfSwgXCIsIG51bGwpO1xuICAkcG9zOiAgICAgICAgaWYoJHBvcywgXCIjeyRwb3N9LCBcIiwgbnVsbCk7XG4gICRwb3Mtc3BlYzogICBpZigkcG9zLCBcImF0ICN7JHBvc31cIiwgbnVsbCk7XG4gICRzaGFwZS1zaXplLXNwZWM6IGlmKCgkc2hhcGUtc2l6ZS1zcGVjICE9IFwiIFwiKSBhbmQgKCRwb3MgPT0gbnVsbCksIFwiI3skc2hhcGUtc2l6ZS1zcGVjfSwgXCIsIFwiI3skc2hhcGUtc2l6ZS1zcGVjfSBcIik7XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogICRmYWxsYmFjay1jb2xvcjtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQoI3skcG9zfSN7JHNoYXBlLXNpemV9I3skZnVsbH0pO1xuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoI3skc2hhcGUtc2l6ZS1zcGVjfSN7JHBvcy1zcGVjfSN7JGZ1bGx9KTtcbn1cbiIsCgkJIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIE91dHB1dHMgdGhlIHNwZWMgYW5kIHByZWZpeGVkIHZlcnNpb25zIG9mIHRoZSBgOjpzZWxlY3Rpb25gIHBzZXVkby1lbGVtZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtCb29sfSAkY3VycmVudC1zZWxlY3RvciBbZmFsc2VdXG4vLy8gICBJZiBzZXQgdG8gYHRydWVgLCBpdCB0YWtlcyB0aGUgY3VycmVudCBlbGVtZW50IGludG8gY29uc2lkZXJhdGlvbi5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBzZWxlY3Rpb24odHJ1ZSkge1xuLy8vICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmJiNTI7XG4vLy8gICAgIH1cbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50OjotbW96LXNlbGVjdGlvbiB7XG4vLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmJiNTI7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC5lbGVtZW50OjpzZWxlY3Rpb24ge1xuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZiYjUyO1xuLy8vICAgfVxuXG5AbWl4aW4gc2VsZWN0aW9uKCRjdXJyZW50LXNlbGVjdG9yOiBmYWxzZSkge1xuICBAaWYgJGN1cnJlbnQtc2VsZWN0b3Ige1xuICAgICY6Oi1tb3otc2VsZWN0aW9uIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICAgICY6OnNlbGVjdGlvbiB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIDo6LW1vei1zZWxlY3Rpb24ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuXG4gICAgOjpzZWxlY3Rpb24ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG4iLAoJCSJAbWl4aW4gdGV4dC1kZWNvcmF0aW9uKCR2YWx1ZSkge1xuLy8gPHRleHQtZGVjb3JhdGlvbi1saW5lPiB8fCA8dGV4dC1kZWNvcmF0aW9uLXN0eWxlPiB8fCA8dGV4dC1kZWNvcmF0aW9uLWNvbG9yPlxuICBAaW5jbHVkZSBwcmVmaXhlcih0ZXh0LWRlY29yYXRpb24sICR2YWx1ZSwgbW96KTtcbn1cblxuQG1peGluIHRleHQtZGVjb3JhdGlvbi1saW5lKCRsaW5lOiBub25lKSB7XG4vLyBub25lIHx8IHVuZGVybGluZSB8fCBvdmVybGluZSB8fCBsaW5lLXRocm91Z2hcbiAgQGluY2x1ZGUgcHJlZml4ZXIodGV4dC1kZWNvcmF0aW9uLWxpbmUsICRsaW5lLCBtb3opO1xufVxuXG5AbWl4aW4gdGV4dC1kZWNvcmF0aW9uLXN0eWxlKCRzdHlsZTogc29saWQpIHtcbi8vIHNvbGlkIHx8IGRvdWJsZSB8fCBkb3R0ZWQgfHwgZGFzaGVkIHx8IHdhdnlcbiAgQGluY2x1ZGUgcHJlZml4ZXIodGV4dC1kZWNvcmF0aW9uLXN0eWxlLCAkc3R5bGUsIG1veiB3ZWJraXQpO1xufVxuXG5AbWl4aW4gdGV4dC1kZWNvcmF0aW9uLWNvbG9yKCRjb2xvcjogY3VycmVudENvbG9yKSB7XG4vLyBjdXJyZW50Q29sb3IgfHwgPGNvbG9yPlxuICBAaW5jbHVkZSBwcmVmaXhlcih0ZXh0LWRlY29yYXRpb24tY29sb3IsICRjb2xvciwgbW96KTtcbn1cbiIsCgkJIkBtaXhpbiB0cmFuc2Zvcm0oJHByb3BlcnR5OiBub25lKSB7XG4gIC8vIG5vbmUgfCA8dHJhbnNmb3JtLWZ1bmN0aW9uPlxuICBAaW5jbHVkZSBwcmVmaXhlcih0cmFuc2Zvcm0sICRwcm9wZXJ0eSwgd2Via2l0IG1veiBtcyBvIHNwZWMpO1xufVxuXG5AbWl4aW4gdHJhbnNmb3JtLW9yaWdpbigkYXhlczogNTAlKSB7XG4gIC8vIHgtYXhpcyAtIGxlZnQgfCBjZW50ZXIgfCByaWdodCAgfCBsZW5ndGggfCAlXG4gIC8vIHktYXhpcyAtIHRvcCAgfCBjZW50ZXIgfCBib3R0b20gfCBsZW5ndGggfCAlXG4gIC8vIHotYXhpcyAtICAgICAgICAgICAgICAgICAgICAgICAgICBsZW5ndGhcbiAgQGluY2x1ZGUgcHJlZml4ZXIodHJhbnNmb3JtLW9yaWdpbiwgJGF4ZXMsIHdlYmtpdCBtb3ogbXMgbyBzcGVjKTtcbn1cblxuQG1peGluIHRyYW5zZm9ybS1zdHlsZSgkc3R5bGU6IGZsYXQpIHtcbiAgQGluY2x1ZGUgcHJlZml4ZXIodHJhbnNmb3JtLXN0eWxlLCAkc3R5bGUsIHdlYmtpdCBtb3ogbXMgbyBzcGVjKTtcbn1cbiIsCgkJIi8vIFNob3J0aGFuZCBtaXhpbi4gU3VwcG9ydHMgbXVsdGlwbGUgcGFyZW50aGVzZXMtZGVsaW1pbmF0ZWQgdmFsdWVzIGZvciBlYWNoIHZhcmlhYmxlLlxuLy8gRXhhbXBsZTogQGluY2x1ZGUgdHJhbnNpdGlvbiAoYWxsIDJzIGVhc2UtaW4tb3V0KTtcbi8vICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24gKG9wYWNpdHkgMXMgZWFzZS1pbiAycywgd2lkdGggMnMgZWFzZS1vdXQpO1xuLy8gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1wcm9wZXJ0eSAodHJhbnNmb3JtLCBvcGFjaXR5KTtcblxuQG1peGluIHRyYW5zaXRpb24oJHByb3BlcnRpZXMuLi4pIHtcbiAgLy8gRml4IGZvciB2ZW5kb3ItcHJlZml4IHRyYW5zZm9ybSBwcm9wZXJ0eVxuICAkbmVlZHMtcHJlZml4ZXM6IGZhbHNlO1xuICAkd2Via2l0OiAoKTtcbiAgJG1vejogKCk7XG4gICRzcGVjOiAoKTtcblxuICAvLyBDcmVhdGUgbGlzdHMgZm9yIHZlbmRvci1wcmVmaXhlZCB0cmFuc2Zvcm1cbiAgQGVhY2ggJGxpc3QgaW4gJHByb3BlcnRpZXMge1xuICAgIEBpZiBudGgoJGxpc3QsIDEpID09IFwidHJhbnNmb3JtXCIge1xuICAgICAgJG5lZWRzLXByZWZpeGVzOiB0cnVlO1xuICAgICAgJGxpc3QxOiAtd2Via2l0LXRyYW5zZm9ybTtcbiAgICAgICRsaXN0MjogLW1vei10cmFuc2Zvcm07XG4gICAgICAkbGlzdDM6ICgpO1xuXG4gICAgICBAZWFjaCAkdmFyIGluICRsaXN0IHtcbiAgICAgICAgJGxpc3QzOiBqb2luKCRsaXN0MywgJHZhcik7XG5cbiAgICAgICAgQGlmICR2YXIgIT0gXCJ0cmFuc2Zvcm1cIiB7XG4gICAgICAgICAgJGxpc3QxOiBqb2luKCRsaXN0MSwgJHZhcik7XG4gICAgICAgICAgJGxpc3QyOiBqb2luKCRsaXN0MiwgJHZhcik7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJHdlYmtpdDogYXBwZW5kKCR3ZWJraXQsICRsaXN0MSk7XG4gICAgICAkbW96OiAgICBhcHBlbmQoJG1veiwgICAgJGxpc3QyKTtcbiAgICAgICRzcGVjOiAgIGFwcGVuZCgkc3BlYywgICAkbGlzdDMpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJHdlYmtpdDogYXBwZW5kKCR3ZWJraXQsICRsaXN0LCBjb21tYSk7XG4gICAgICAkbW96OiAgICBhcHBlbmQoJG1veiwgICAgJGxpc3QsIGNvbW1hKTtcbiAgICAgICRzcGVjOiAgIGFwcGVuZCgkc3BlYywgICAkbGlzdCwgY29tbWEpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkbmVlZHMtcHJlZml4ZXMge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogJHdlYmtpdDtcbiAgICAgICAtbW96LXRyYW5zaXRpb246ICRtb3o7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAkc3BlYztcbiAgfSBAZWxzZSB7XG4gICAgQGlmIGxlbmd0aCgkcHJvcGVydGllcykgPj0gMSB7XG4gICAgICBAaW5jbHVkZSBwcmVmaXhlcih0cmFuc2l0aW9uLCAkcHJvcGVydGllcywgd2Via2l0IG1veiBzcGVjKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRwcm9wZXJ0aWVzOiBhbGwgMC4xNXMgZWFzZS1vdXQgMHM7XG4gICAgICBAaW5jbHVkZSBwcmVmaXhlcih0cmFuc2l0aW9uLCAkcHJvcGVydGllcywgd2Via2l0IG1veiBzcGVjKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHRyYW5zaXRpb24tcHJvcGVydHkoJHByb3BlcnRpZXMuLi4pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2l0aW9uLXByb3BlcnR5LW5hbWVzKCRwcm9wZXJ0aWVzLCBcIndlYmtpdFwiKTtcbiAgICAgLW1vei10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2l0aW9uLXByb3BlcnR5LW5hbWVzKCRwcm9wZXJ0aWVzLCBcIm1velwiKTtcbiAgICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2l0aW9uLXByb3BlcnR5LW5hbWVzKCRwcm9wZXJ0aWVzLCBmYWxzZSk7XG59XG5cbkBtaXhpbiB0cmFuc2l0aW9uLWR1cmF0aW9uKCR0aW1lcy4uLikge1xuICBAaW5jbHVkZSBwcmVmaXhlcih0cmFuc2l0aW9uLWR1cmF0aW9uLCAkdGltZXMsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG5cbkBtaXhpbiB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbigkbW90aW9ucy4uLikge1xuICAvLyBlYXNlIHwgbGluZWFyIHwgZWFzZS1pbiB8IGVhc2Utb3V0IHwgZWFzZS1pbi1vdXQgfCBjdWJpYy1iZXppZXIoKVxuICBAaW5jbHVkZSBwcmVmaXhlcih0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgJG1vdGlvbnMsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG5cbkBtaXhpbiB0cmFuc2l0aW9uLWRlbGF5KCR0aW1lcy4uLikge1xuICBAaW5jbHVkZSBwcmVmaXhlcih0cmFuc2l0aW9uLWRlbGF5LCAkdGltZXMsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG4iLAoJCSJAbWl4aW4gdXNlci1zZWxlY3QoJHZhbHVlOiBub25lKSB7XG4gIEBpbmNsdWRlIHByZWZpeGVyKHVzZXItc2VsZWN0LCAkdmFsdWUsIHdlYmtpdCBtb3ogbXMgc3BlYyk7XG59XG4iLAoJCSJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBQcm92aWRlcyBhIHF1aWNrIG1ldGhvZCBmb3IgdGFyZ2V0aW5nIGBib3JkZXItY29sb3JgIG9uIHNwZWNpZmljIHNpZGVzIG9mIGEgYm94LiBVc2UgYSBgbnVsbGAgdmFsdWUgdG8g4oCcc2tpcOKAnSBhIHNpZGUuXG4vLy9cbi8vLyBAcGFyYW0ge0FyZ2xpc3R9ICR2YWxzXG4vLy8gICBMaXN0IG9mIGFyZ3VtZW50c1xuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIGJvcmRlci1jb2xvcigjYTYwYjU1ICM3NmNkOWMgbnVsbCAjZThhZTFhKTtcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICNlOGFlMWE7XG4vLy8gICAgIGJvcmRlci1yaWdodC1jb2xvcjogIzc2Y2Q5Yztcbi8vLyAgICAgYm9yZGVyLXRvcC1jb2xvcjogI2E2MGI1NTtcbi8vLyAgIH1cbi8vL1xuLy8vIEByZXF1aXJlIHttaXhpbn0gZGlyZWN0aW9uYWwtcHJvcGVydHlcbi8vL1xuLy8vIEBvdXRwdXQgYGJvcmRlci1jb2xvcmBcblxuQG1peGluIGJvcmRlci1jb2xvcigkdmFscy4uLikge1xuICBAaW5jbHVkZSBkaXJlY3Rpb25hbC1wcm9wZXJ0eShib3JkZXIsIGNvbG9yLCAkdmFscy4uLik7XG59XG4iLAoJCSIiLAoJCSJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBQcm92aWRlcyBhIHF1aWNrIG1ldGhvZCBmb3IgdGFyZ2V0aW5nIGBib3JkZXItc3R5bGVgIG9uIHNwZWNpZmljIHNpZGVzIG9mIGEgYm94LiBVc2UgYSBgbnVsbGAgdmFsdWUgdG8g4oCcc2tpcOKAnSBhIHNpZGUuXG4vLy9cbi8vLyBAcGFyYW0ge0FyZ2xpc3R9ICR2YWxzXG4vLy8gICBMaXN0IG9mIGFyZ3VtZW50c1xuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIGJvcmRlci1zdHlsZShkYXNoZWQgbnVsbCBzb2xpZCk7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuLy8vICAgICBib3JkZXItdG9wLXN0eWxlOiBkYXNoZWQ7XG4vLy8gICB9XG4vLy9cbi8vLyBAcmVxdWlyZSB7bWl4aW59IGRpcmVjdGlvbmFsLXByb3BlcnR5XG4vLy9cbi8vLyBAb3V0cHV0IGBib3JkZXItc3R5bGVgXG5cbkBtaXhpbiBib3JkZXItc3R5bGUoJHZhbHMuLi4pIHtcbiAgQGluY2x1ZGUgZGlyZWN0aW9uYWwtcHJvcGVydHkoYm9yZGVyLCBzdHlsZSwgJHZhbHMuLi4pO1xufVxuIiwKCQkiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gUHJvdmlkZXMgYSBxdWljayBtZXRob2QgZm9yIHRhcmdldGluZyBgYm9yZGVyLXdpZHRoYCBvbiBzcGVjaWZpYyBzaWRlcyBvZiBhIGJveC4gVXNlIGEgYG51bGxgIHZhbHVlIHRvIOKAnHNraXDigJ0gYSBzaWRlLlxuLy8vXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAkdmFsc1xuLy8vICAgTGlzdCBvZiBhcmd1bWVudHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBib3JkZXItd2lkdGgoMWVtIG51bGwgMjBweCk7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDIwcHg7XG4vLy8gICAgIGJvcmRlci10b3Atd2lkdGg6IDFlbTtcbi8vLyAgIH1cbi8vL1xuLy8vIEByZXF1aXJlIHttaXhpbn0gZGlyZWN0aW9uYWwtcHJvcGVydHlcbi8vL1xuLy8vIEBvdXRwdXQgYGJvcmRlci13aWR0aGBcblxuQG1peGluIGJvcmRlci13aWR0aCgkdmFscy4uLikge1xuICBAaW5jbHVkZSBkaXJlY3Rpb25hbC1wcm9wZXJ0eShib3JkZXIsIHdpZHRoLCAkdmFscy4uLik7XG59XG4iLAoJCSJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBHZW5lcmF0ZXMgdmFyaWFibGVzIGZvciBhbGwgYnV0dG9ucy4gUGxlYXNlIG5vdGUgdGhhdCB5b3UgbXVzdCB1c2UgaW50ZXJwb2xhdGlvbiBvbiB0aGUgdmFyaWFibGU6IGAjeyRhbGwtYnV0dG9uc31gLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAjeyRhbGwtYnV0dG9uc30ge1xuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjAwO1xuLy8vICAgfVxuLy8vXG4vLy8gICAjeyRhbGwtYnV0dG9ucy1mb2N1c30sXG4vLy8gICAjeyRhbGwtYnV0dG9ucy1ob3Zlcn0ge1xuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGYwO1xuLy8vICAgfVxuLy8vXG4vLy8gICAjeyRhbGwtYnV0dG9ucy1hY3RpdmV9IHtcbi8vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwZjtcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcbi8vLyAgIGJ1dHRvbixcbi8vLyAgIGlucHV0W3R5cGU9XCJidXR0b25cIl0sXG4vLy8gICBpbnB1dFt0eXBlPVwicmVzZXRcIl0sXG4vLy8gICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbi8vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwMDtcbi8vLyAgIH1cbi8vL1xuLy8vICAgYnV0dG9uOmZvY3VzLFxuLy8vICAgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpmb2N1cyxcbi8vLyAgIGlucHV0W3R5cGU9XCJyZXNldFwiXTpmb2N1cyxcbi8vLyAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06Zm9jdXMsXG4vLy8gICBidXR0b246aG92ZXIsXG4vLy8gICBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOmhvdmVyLFxuLy8vICAgaW5wdXRbdHlwZT1cInJlc2V0XCJdOmhvdmVyLFxuLy8vICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpob3ZlciB7XG4vLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICMwZjA7XG4vLy8gICB9XG4vLy9cbi8vLyAgIGJ1dHRvbjphY3RpdmUsXG4vLy8gICBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOmFjdGl2ZSxcbi8vLyAgIGlucHV0W3R5cGU9XCJyZXNldFwiXTphY3RpdmUsXG4vLy8gICBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmFjdGl2ZSB7XG4vLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGY7XG4vLy8gICB9XG4vLy9cbi8vLyBAcmVxdWlyZSBhc3NpZ24taW5wdXRzXG4vLy9cbi8vLyBAdHlwZSBMaXN0XG4vLy9cbi8vLyBAdG9kbyBSZW1vdmUgZG91YmxlIGFzc2lnbmVkIHZhcmlhYmxlcyAoTGluZXMgNTnigJM2MikgaW4gdjUuMC4wXG5cbiRidXR0b25zLWxpc3Q6ICdidXR0b24nLFxuICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJidXR0b25cIl0nLFxuICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJyZXNldFwiXScsXG4gICAgICAgICAgICAgICAnaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSc7XG5cbiRhbGwtYnV0dG9uczogICAgICAgIGFzc2lnbi1pbnB1dHMoJGJ1dHRvbnMtbGlzdCk7XG4kYWxsLWJ1dHRvbnMtYWN0aXZlOiBhc3NpZ24taW5wdXRzKCRidXR0b25zLWxpc3QsIGFjdGl2ZSk7XG4kYWxsLWJ1dHRvbnMtZm9jdXM6ICBhc3NpZ24taW5wdXRzKCRidXR0b25zLWxpc3QsIGZvY3VzKTtcbiRhbGwtYnV0dG9ucy1ob3ZlcjogIGFzc2lnbi1pbnB1dHMoJGJ1dHRvbnMtbGlzdCwgaG92ZXIpO1xuXG4kYWxsLWJ1dHRvbi1pbnB1dHM6ICAgICAgICAkYWxsLWJ1dHRvbnM7XG4kYWxsLWJ1dHRvbi1pbnB1dHMtYWN0aXZlOiAkYWxsLWJ1dHRvbnMtYWN0aXZlO1xuJGFsbC1idXR0b24taW5wdXRzLWZvY3VzOiAgJGFsbC1idXR0b25zLWZvY3VzO1xuJGFsbC1idXR0b24taW5wdXRzLWhvdmVyOiAgJGFsbC1idXR0b25zLWhvdmVyO1xuIiwKCQkiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gUHJvdmlkZXMgYW4gZWFzeSB3YXkgdG8gaW5jbHVkZSBhIGNsZWFyZml4IGZvciBjb250YWluaW5nIGZsb2F0cy5cbi8vL1xuLy8vIEBsaW5rIGh0dHA6Ly9jc3Ntb2pvLmNvbS9sYXRlc3RfbmV3X2NsZWFyZml4X3NvX2Zhci9cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50OjphZnRlciB7XG4vLy8gICAgIGNsZWFyOiBib3RoO1xuLy8vICAgICBjb250ZW50OiBcIlwiO1xuLy8vICAgICBkaXNwbGF5OiB0YWJsZTtcbi8vLyAgIH1cblxuQG1peGluIGNsZWFyZml4IHtcbiAgJjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG4gIH1cbn1cbiIsCgkJIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFRydW5jYXRlcyB0ZXh0IGFuZCBhZGRzIGFuIGVsbGlwc2lzIHRvIHJlcHJlc2VudCBvdmVyZmxvdy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWzEwMCVdXG4vLy8gICBNYXgtd2lkdGggZm9yIHRoZSBzdHJpbmcgdG8gcmVzcGVjdCBiZWZvcmUgYmVpbmcgdHJ1bmNhdGVkXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgZWxsaXBzaXM7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbi8vLyAgICAgbWF4LXdpZHRoOiAxMDAlO1xuLy8vICAgICBvdmVyZmxvdzogaGlkZGVuO1xuLy8vICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbi8vLyAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbi8vLyAgICAgd29yZC13cmFwOiBub3JtYWw7XG4vLy8gICB9XG5cbkBtaXhpbiBlbGxpcHNpcygkd2lkdGg6IDEwMCUpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6ICR3aWR0aDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xufVxuIiwKCQkiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gR2VvcmdpYSBmb250IHN0YWNrLlxuLy8vXG4vLy8gQHR5cGUgTGlzdFxuXG4kZ2VvcmdpYTogXCJHZW9yZ2lhXCIsIFwiQ2FtYnJpYVwiLCBcIlRpbWVzIE5ldyBSb21hblwiLCBcIlRpbWVzXCIsIHNlcmlmO1xuXG4vLy8gSGVsdmV0aWNhIGZvbnQgc3RhY2suXG4vLy9cbi8vLyBAdHlwZSBMaXN0XG5cbiRoZWx2ZXRpY2E6IFwiSGVsdmV0aWNhIE5ldWVcIiwgXCJIZWx2ZXRpY2FcIiwgXCJSb2JvdG9cIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuXG4vLy8gTHVjaWRhIEdyYW5kZSBmb250IHN0YWNrLlxuLy8vXG4vLy8gQHR5cGUgTGlzdFxuXG4kbHVjaWRhLWdyYW5kZTogXCJMdWNpZGEgR3JhbmRlXCIsIFwiVGFob21hXCIsIFwiVmVyZGFuYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG5cbi8vLyBNb25vc3BhY2UgZm9udCBzdGFjay5cbi8vL1xuLy8vIEB0eXBlIExpc3RcblxuJG1vbm9zcGFjZTogXCJCaXRzdHJlYW0gVmVyYSBTYW5zIE1vbm9cIiwgXCJDb25zb2xhc1wiLCBcIkNvdXJpZXJcIiwgbW9ub3NwYWNlO1xuXG4vLy8gVmVyZGFuYSBmb250IHN0YWNrLlxuLy8vXG4vLy8gQHR5cGUgTGlzdFxuXG4kdmVyZGFuYTogXCJWZXJkYW5hXCIsIFwiR2VuZXZhXCIsIHNhbnMtc2VyaWY7XG4iLAoJCSIvLy8gSGlkZXMgdGhlIHRleHQgaW4gYW4gZWxlbWVudCwgY29tbW9ubHkgdXNlZCB0byBzaG93IGFuIGltYWdlLiBTb21lIGVsZW1lbnRzIHdpbGwgbmVlZCBibG9jay1sZXZlbCBzdHlsZXMgYXBwbGllZC5cbi8vL1xuLy8vIEBsaW5rIGh0dHA6Ly96ZWxkbWFuLmNvbS8yMDEyLzAzLzAxL3JlcGxhY2luZy10aGUtOTk5OXB4LWhhY2stbmV3LWltYWdlLXJlcGxhY2VtZW50XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgaGlkZS10ZXh0O1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBvdmVyZmxvdzogaGlkZGVuO1xuLy8vICAgICB0ZXh0LWluZGVudDogMTAxJTtcbi8vLyAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbi8vLyAgIH1cbi8vL1xuLy8vIEB0b2RvIFJlbW92ZSBoZWlnaHQgYXJndW1lbnQgaW4gdjUuMC4wXG5cbkBtaXhpbiBoaWRlLXRleHQoJGhlaWdodDogbnVsbCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWluZGVudDogMTAxJTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICBAaWYgJGhlaWdodCB7XG4gICAgQHdhcm4gXCJUaGUgYGhpZGUtdGV4dGAgbWl4aW4gaGFzIGNoYW5nZWQgYW5kIG5vIGxvbmdlciByZXF1aXJlcyBhIGhlaWdodC4gVGhlIGhlaWdodCBhcmd1bWVudCB3aWxsIG5vIGxvbmdlciBiZSBhY2NlcHRlZCBpbiB2NS4wLjBcIjtcbiAgfVxufVxuIiwKCQkiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gUHJvdmlkZXMgYSBxdWljayBtZXRob2QgZm9yIHRhcmdldGluZyBgbWFyZ2luYCBvbiBzcGVjaWZpYyBzaWRlcyBvZiBhIGJveC4gVXNlIGEgYG51bGxgIHZhbHVlIHRvIOKAnHNraXDigJ0gYSBzaWRlLlxuLy8vXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAkdmFsc1xuLy8vICAgTGlzdCBvZiBhcmd1bWVudHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBtYXJnaW4obnVsbCAxMHB4IDNlbSAyMHZoKTtcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgbWFyZ2luLWJvdHRvbTogM2VtO1xuLy8vICAgICBtYXJnaW4tbGVmdDogMjB2aDtcbi8vLyAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuLy8vICAgfVxuLy8vXG4vLy8gQHJlcXVpcmUge21peGlufSBkaXJlY3Rpb25hbC1wcm9wZXJ0eVxuLy8vXG4vLy8gQG91dHB1dCBgbWFyZ2luYFxuXG5AbWl4aW4gbWFyZ2luKCR2YWxzLi4uKSB7XG4gIEBpbmNsdWRlIGRpcmVjdGlvbmFsLXByb3BlcnR5KG1hcmdpbiwgZmFsc2UsICR2YWxzLi4uKTtcbn1cbiIsCgkJIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFByb3ZpZGVzIGEgcXVpY2sgbWV0aG9kIGZvciB0YXJnZXRpbmcgYHBhZGRpbmdgIG9uIHNwZWNpZmljIHNpZGVzIG9mIGEgYm94LiBVc2UgYSBgbnVsbGAgdmFsdWUgdG8g4oCcc2tpcOKAnSBhIHNpZGUuXG4vLy9cbi8vLyBAcGFyYW0ge0FyZ2xpc3R9ICR2YWxzXG4vLy8gICBMaXN0IG9mIGFyZ3VtZW50c1xuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIHBhZGRpbmcoMTJ2aCBudWxsIDEwcHggNSUpO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbi8vLyAgICAgcGFkZGluZy1sZWZ0OiA1JTtcbi8vLyAgICAgcGFkZGluZy10b3A6IDEydmg7XG4vLy8gICB9XG4vLy9cbi8vLyBAcmVxdWlyZSB7bWl4aW59IGRpcmVjdGlvbmFsLXByb3BlcnR5XG4vLy9cbi8vLyBAb3V0cHV0IGBwYWRkaW5nYFxuXG5AbWl4aW4gcGFkZGluZygkdmFscy4uLikge1xuICBAaW5jbHVkZSBkaXJlY3Rpb25hbC1wcm9wZXJ0eShwYWRkaW5nLCBmYWxzZSwgJHZhbHMuLi4pO1xufVxuIiwKCQkiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gUHJvdmlkZXMgYSBxdWljayBtZXRob2QgZm9yIHNldHRpbmcgYW4gZWxlbWVudOKAmXMgcG9zaXRpb24uIFVzZSBhIGBudWxsYCB2YWx1ZSB0byDigJxza2lw4oCdIGEgc2lkZS5cbi8vL1xuLy8vIEBwYXJhbSB7UG9zaXRpb259ICRwb3NpdGlvbiBbcmVsYXRpdmVdXG4vLy8gICBBIENTUyBwb3NpdGlvbiB2YWx1ZVxuLy8vXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAkY29vcmRpbmF0ZXMgW251bGwgbnVsbCBudWxsIG51bGxdXG4vLy8gICBMaXN0IG9mIHZhbHVlcyB0aGF0IGNvcnJlc3BvbmQgdG8gdGhlIDQtdmFsdWUgc3ludGF4IGZvciB0aGUgZWRnZXMgb2YgYSBib3hcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgMCBudWxsIG51bGwgMTBlbSk7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIGxlZnQ6IDEwZW07XG4vLy8gICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbi8vLyAgICAgdG9wOiAwO1xuLy8vICAgfVxuLy8vXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBpcy1sZW5ndGhcbi8vLyBAcmVxdWlyZSB7ZnVuY3Rpb259IHVucGFja1xuXG5AbWl4aW4gcG9zaXRpb24oJHBvc2l0aW9uOiByZWxhdGl2ZSwgJGNvb3JkaW5hdGVzOiBudWxsIG51bGwgbnVsbCBudWxsKSB7XG4gIEBpZiB0eXBlLW9mKCRwb3NpdGlvbikgPT0gbGlzdCB7XG4gICAgJGNvb3JkaW5hdGVzOiAkcG9zaXRpb247XG4gICAgJHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gICRjb29yZGluYXRlczogdW5wYWNrKCRjb29yZGluYXRlcyk7XG5cbiAgJG9mZnNldHM6IChcbiAgICB0b3A6ICAgIG50aCgkY29vcmRpbmF0ZXMsIDEpLFxuICAgIHJpZ2h0OiAgbnRoKCRjb29yZGluYXRlcywgMiksXG4gICAgYm90dG9tOiBudGgoJGNvb3JkaW5hdGVzLCAzKSxcbiAgICBsZWZ0OiAgIG50aCgkY29vcmRpbmF0ZXMsIDQpXG4gICk7XG5cbiAgcG9zaXRpb246ICRwb3NpdGlvbjtcblxuICBAZWFjaCAkb2Zmc2V0LCAkdmFsdWUgaW4gJG9mZnNldHMge1xuICAgIEBpZiBpcy1sZW5ndGgoJHZhbHVlKSB7XG4gICAgICAjeyRvZmZzZXR9OiAkdmFsdWU7XG4gICAgfVxuICB9XG59XG4iLAoJCSJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBBIG1peGluIGZvciBnZW5lcmF0aW5nIHZlbmRvciBwcmVmaXhlcyBvbiBub24tc3RhbmRhcmRpemVkIHByb3BlcnRpZXMuXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHByb3BlcnR5XG4vLy8gICBQcm9wZXJ0eSB0byBwcmVmaXhcbi8vL1xuLy8vIEBwYXJhbSB7Kn0gJHZhbHVlXG4vLy8gICBWYWx1ZSB0byB1c2Vcbi8vL1xuLy8vIEBwYXJhbSB7TGlzdH0gJHByZWZpeGVzXG4vLy8gICBQcmVmaXhlcyB0byBkZWZpbmVcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBwcmVmaXhlcihib3JkZXItcmFkaXVzLCAxMHB4LCB3ZWJraXQgbXMgc3BlYyk7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMTBweDtcbi8vLyAgICAgLW1vei1ib3JkZXItcmFkaXVzOiAxMHB4O1xuLy8vICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuLy8vICAgfVxuLy8vXG4vLy8gQHJlcXVpcmUge3ZhcmlhYmxlfSAkcHJlZml4LWZvci13ZWJraXRcbi8vLyBAcmVxdWlyZSB7dmFyaWFibGV9ICRwcmVmaXgtZm9yLW1vemlsbGFcbi8vLyBAcmVxdWlyZSB7dmFyaWFibGV9ICRwcmVmaXgtZm9yLW1pY3Jvc29mdFxuLy8vIEByZXF1aXJlIHt2YXJpYWJsZX0gJHByZWZpeC1mb3Itb3BlcmFcbi8vLyBAcmVxdWlyZSB7dmFyaWFibGV9ICRwcmVmaXgtZm9yLXNwZWNcblxuQG1peGluIHByZWZpeGVyKCRwcm9wZXJ0eSwgJHZhbHVlLCAkcHJlZml4ZXMpIHtcbiAgQGVhY2ggJHByZWZpeCBpbiAkcHJlZml4ZXMge1xuICAgIEBpZiAkcHJlZml4ID09IHdlYmtpdCB7XG4gICAgICBAaWYgJHByZWZpeC1mb3Itd2Via2l0IHtcbiAgICAgICAgLXdlYmtpdC0jeyRwcm9wZXJ0eX06ICR2YWx1ZTtcbiAgICAgIH1cbiAgICB9IEBlbHNlIGlmICRwcmVmaXggPT0gbW96IHtcbiAgICAgIEBpZiAkcHJlZml4LWZvci1tb3ppbGxhIHtcbiAgICAgICAgLW1vei0jeyRwcm9wZXJ0eX06ICR2YWx1ZTtcbiAgICAgIH1cbiAgICB9IEBlbHNlIGlmICRwcmVmaXggPT0gbXMge1xuICAgICAgQGlmICRwcmVmaXgtZm9yLW1pY3Jvc29mdCB7XG4gICAgICAgIC1tcy0jeyRwcm9wZXJ0eX06ICR2YWx1ZTtcbiAgICAgIH1cbiAgICB9IEBlbHNlIGlmICRwcmVmaXggPT0gbyB7XG4gICAgICBAaWYgJHByZWZpeC1mb3Itb3BlcmEge1xuICAgICAgICAtby0jeyRwcm9wZXJ0eX06ICR2YWx1ZTtcbiAgICAgIH1cbiAgICB9IEBlbHNlIGlmICRwcmVmaXggPT0gc3BlYyB7XG4gICAgICBAaWYgJHByZWZpeC1mb3Itc3BlYyB7XG4gICAgICAgICN7JHByb3BlcnR5fTogJHZhbHVlO1xuICAgICAgfVxuICAgIH0gQGVsc2UgIHtcbiAgICAgIEB3YXJuIFwiVW5yZWNvZ25pemVkIHByZWZpeDogI3skcHJlZml4fVwiO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZGlzYWJsZS1wcmVmaXgtZm9yLWFsbCgpIHtcbiAgJHByZWZpeC1mb3Itd2Via2l0OiAgICBmYWxzZSAhZ2xvYmFsO1xuICAkcHJlZml4LWZvci1tb3ppbGxhOiAgIGZhbHNlICFnbG9iYWw7XG4gICRwcmVmaXgtZm9yLW1pY3Jvc29mdDogZmFsc2UgIWdsb2JhbDtcbiAgJHByZWZpeC1mb3Itb3BlcmE6ICAgICBmYWxzZSAhZ2xvYmFsO1xuICAkcHJlZml4LWZvci1zcGVjOiAgICAgIGZhbHNlICFnbG9iYWw7XG59XG4iLAoJCSJAbWl4aW4gcmV0aW5hLWltYWdlKCRmaWxlbmFtZSwgJGJhY2tncm91bmQtc2l6ZSwgJGV4dGVuc2lvbjogcG5nLCAkcmV0aW5hLWZpbGVuYW1lOiBudWxsLCAkcmV0aW5hLXN1ZmZpeDogXzJ4LCAkYXNzZXQtcGlwZWxpbmU6ICRhc3NldC1waXBlbGluZSkge1xuICBAaWYgJGFzc2V0LXBpcGVsaW5lIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBpbWFnZS11cmwoXCIjeyRmaWxlbmFtZX0uI3skZXh0ZW5zaW9ufVwiKTtcbiAgfSBAZWxzZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogICAgICAgdXJsKFwiI3skZmlsZW5hbWV9LiN7JGV4dGVuc2lvbn1cIik7XG4gIH1cblxuICBAaW5jbHVkZSBoaWRwaSB7XG4gICAgQGlmICRhc3NldC1waXBlbGluZSB7XG4gICAgICBAaWYgJHJldGluYS1maWxlbmFtZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGltYWdlLXVybChcIiN7JHJldGluYS1maWxlbmFtZX0uI3skZXh0ZW5zaW9ufVwiKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBpbWFnZS11cmwoXCIjeyRmaWxlbmFtZX0jeyRyZXRpbmEtc3VmZml4fS4jeyRleHRlbnNpb259XCIpO1xuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgQGlmICRyZXRpbmEtZmlsZW5hbWUge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIjeyRyZXRpbmEtZmlsZW5hbWV9LiN7JGV4dGVuc2lvbn1cIik7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiI3skZmlsZW5hbWV9I3skcmV0aW5hLXN1ZmZpeH0uI3skZXh0ZW5zaW9ufVwiKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBiYWNrZ3JvdW5kLXNpemU6ICRiYWNrZ3JvdW5kLXNpemU7XG4gIH1cbn1cbiIsCgkJIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFNldHMgdGhlIGB3aWR0aGAgYW5kIGBoZWlnaHRgIG9mIHRoZSBlbGVtZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtMaXN0fSAkc2l6ZVxuLy8vICAgQSBsaXN0IG9mIGF0IG1vc3QgMiBzaXplIHZhbHVlcy5cbi8vL1xuLy8vICAgSWYgdGhlcmUgaXMgb25seSBhIHNpbmdsZSB2YWx1ZSBpbiBgJHNpemVgIGl0IGlzIHVzZWQgZm9yIGJvdGggd2lkdGggYW5kIGhlaWdodC4gQWxsIHVuaXRzIGFyZSBzdXBwb3J0ZWQuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5maXJzdC1lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgc2l6ZSgyZW0pO1xuLy8vICAgfVxuLy8vXG4vLy8gICAuc2Vjb25kLWVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBzaXplKGF1dG8gMTBlbSk7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICAuZmlyc3QtZWxlbWVudCB7XG4vLy8gICAgIHdpZHRoOiAyZW07XG4vLy8gICAgIGhlaWdodDogMmVtO1xuLy8vICAgfVxuLy8vXG4vLy8gICAuc2Vjb25kLWVsZW1lbnQge1xuLy8vICAgICB3aWR0aDogYXV0bztcbi8vLyAgICAgaGVpZ2h0OiAxMGVtO1xuLy8vICAgfVxuLy8vXG4vLy8gQHRvZG8gUmVmYWN0b3IgaW4gNS4wLjAgdG8gdXNlIGEgY29tbWEtc2VwYXJhdGVkIGFyZ3VtZW50XG5cbkBtaXhpbiBzaXplKCR2YWx1ZSkge1xuICAkd2lkdGg6IG50aCgkdmFsdWUsIDEpO1xuICAkaGVpZ2h0OiAkd2lkdGg7XG5cbiAgQGlmIGxlbmd0aCgkdmFsdWUpID4gMSB7XG4gICAgJGhlaWdodDogbnRoKCR2YWx1ZSwgMik7XG4gIH1cblxuICBAaWYgaXMtc2l6ZSgkaGVpZ2h0KSB7XG4gICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICB9IEBlbHNlIHtcbiAgICBAd2FybiBcImAjeyRoZWlnaHR9YCBpcyBub3QgYSB2YWxpZCBsZW5ndGggZm9yIHRoZSBgJGhlaWdodGAgcGFyYW1ldGVyIGluIHRoZSBgc2l6ZWAgbWl4aW4uXCI7XG4gIH1cblxuICBAaWYgaXMtc2l6ZSgkd2lkdGgpIHtcbiAgICB3aWR0aDogJHdpZHRoO1xuICB9IEBlbHNlIHtcbiAgICBAd2FybiBcImAjeyR3aWR0aH1gIGlzIG5vdCBhIHZhbGlkIGxlbmd0aCBmb3IgdGhlIGAkd2lkdGhgIHBhcmFtZXRlciBpbiB0aGUgYHNpemVgIG1peGluLlwiO1xuICB9XG59XG4iLAoJCSJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBHZW5lcmF0ZXMgdmFyaWFibGVzIGZvciBhbGwgdGV4dC1iYXNlZCBpbnB1dHMuIFBsZWFzZSBub3RlIHRoYXQgeW91IG11c3QgdXNlIGludGVycG9sYXRpb24gb24gdGhlIHZhcmlhYmxlOiBgI3skYWxsLXRleHQtaW5wdXRzfWAuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgICN7JGFsbC10ZXh0LWlucHV0c30ge1xuLy8vICAgICBib3JkZXI6IDFweCBzb2xpZCAjZjAwO1xuLy8vICAgfVxuLy8vXG4vLy8gICAjeyRhbGwtdGV4dC1pbnB1dHMtZm9jdXN9LFxuLy8vICAgI3skYWxsLXRleHQtaW5wdXRzLWhvdmVyfSB7XG4vLy8gICAgIGJvcmRlcjogMXB4IHNvbGlkICMwZjA7XG4vLy8gICB9XG4vLy9cbi8vLyAgICN7JGFsbC10ZXh0LWlucHV0cy1hY3RpdmV9IHtcbi8vLyAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwZjtcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcbi8vLyAgIGlucHV0W3R5cGU9XCJjb2xvclwiXSxcbi8vLyAgIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxuLy8vICAgaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdLFxuLy8vICAgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuLy8vICAgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuLy8vICAgaW5wdXRbdHlwZT1cIm1vbnRoXCJdLFxuLy8vICAgaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbi8vLyAgIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbi8vLyAgIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG4vLy8gICBpbnB1dFt0eXBlPVwidGVsXCJdLFxuLy8vICAgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4vLy8gICBpbnB1dFt0eXBlPVwidGltZVwiXSxcbi8vLyAgIGlucHV0W3R5cGU9XCJ1cmxcIl0sXG4vLy8gICBpbnB1dFt0eXBlPVwid2Vla1wiXSxcbi8vLyAgIHRleHRhcmVhIHtcbi8vLyAgICAgYm9yZGVyOiAxcHggc29saWQgI2YwMDtcbi8vLyAgIH1cbi8vL1xuLy8vICAgaW5wdXRbdHlwZT1cImNvbG9yXCJdOmZvY3VzLFxuLy8vICAgaW5wdXRbdHlwZT1cImRhdGVcIl06Zm9jdXMsXG4vLy8gICBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl06Zm9jdXMsXG4vLy8gICBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl06Zm9jdXMsXG4vLy8gICBpbnB1dFt0eXBlPVwiZW1haWxcIl06Zm9jdXMsXG4vLy8gICBpbnB1dFt0eXBlPVwibW9udGhcIl06Zm9jdXMsXG4vLy8gICBpbnB1dFt0eXBlPVwibnVtYmVyXCJdOmZvY3VzLFxuLy8vICAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOmZvY3VzLFxuLy8vICAgaW5wdXRbdHlwZT1cInNlYXJjaFwiXTpmb2N1cyxcbi8vLyAgIGlucHV0W3R5cGU9XCJ0ZWxcIl06Zm9jdXMsXG4vLy8gICBpbnB1dFt0eXBlPVwidGV4dFwiXTpmb2N1cyxcbi8vLyAgIGlucHV0W3R5cGU9XCJ0aW1lXCJdOmZvY3VzLFxuLy8vICAgaW5wdXRbdHlwZT1cInVybFwiXTpmb2N1cyxcbi8vLyAgIGlucHV0W3R5cGU9XCJ3ZWVrXCJdOmZvY3VzLFxuLy8vICAgdGV4dGFyZWE6Zm9jdXMsXG4vLy8gICBpbnB1dFt0eXBlPVwiY29sb3JcIl06aG92ZXIsXG4vLy8gICBpbnB1dFt0eXBlPVwiZGF0ZVwiXTpob3Zlcixcbi8vLyAgIGlucHV0W3R5cGU9XCJkYXRldGltZVwiXTpob3Zlcixcbi8vLyAgIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXTpob3Zlcixcbi8vLyAgIGlucHV0W3R5cGU9XCJlbWFpbFwiXTpob3Zlcixcbi8vLyAgIGlucHV0W3R5cGU9XCJtb250aFwiXTpob3Zlcixcbi8vLyAgIGlucHV0W3R5cGU9XCJudW1iZXJcIl06aG92ZXIsXG4vLy8gICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06aG92ZXIsXG4vLy8gICBpbnB1dFt0eXBlPVwic2VhcmNoXCJdOmhvdmVyLFxuLy8vICAgaW5wdXRbdHlwZT1cInRlbFwiXTpob3Zlcixcbi8vLyAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmhvdmVyLFxuLy8vICAgaW5wdXRbdHlwZT1cInRpbWVcIl06aG92ZXIsXG4vLy8gICBpbnB1dFt0eXBlPVwidXJsXCJdOmhvdmVyLFxuLy8vICAgaW5wdXRbdHlwZT1cIndlZWtcIl06aG92ZXIsXG4vLy8gICB0ZXh0YXJlYTpob3ZlciB7XG4vLy8gICAgIGJvcmRlcjogMXB4IHNvbGlkICMwZjA7XG4vLy8gICB9XG4vLy9cbi8vLyAgIGlucHV0W3R5cGU9XCJjb2xvclwiXTphY3RpdmUsXG4vLy8gICBpbnB1dFt0eXBlPVwiZGF0ZVwiXTphY3RpdmUsXG4vLy8gICBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl06YWN0aXZlLFxuLy8vICAgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdOmFjdGl2ZSxcbi8vLyAgIGlucHV0W3R5cGU9XCJlbWFpbFwiXTphY3RpdmUsXG4vLy8gICBpbnB1dFt0eXBlPVwibW9udGhcIl06YWN0aXZlLFxuLy8vICAgaW5wdXRbdHlwZT1cIm51bWJlclwiXTphY3RpdmUsXG4vLy8gICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06YWN0aXZlLFxuLy8vICAgaW5wdXRbdHlwZT1cInNlYXJjaFwiXTphY3RpdmUsXG4vLy8gICBpbnB1dFt0eXBlPVwidGVsXCJdOmFjdGl2ZSxcbi8vLyAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmFjdGl2ZSxcbi8vLyAgIGlucHV0W3R5cGU9XCJ0aW1lXCJdOmFjdGl2ZSxcbi8vLyAgIGlucHV0W3R5cGU9XCJ1cmxcIl06YWN0aXZlLFxuLy8vICAgaW5wdXRbdHlwZT1cIndlZWtcIl06YWN0aXZlLFxuLy8vICAgdGV4dGFyZWE6YWN0aXZlIHtcbi8vLyAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwZjtcbi8vLyAgIH1cbi8vL1xuLy8vIEByZXF1aXJlIGFzc2lnbi1pbnB1dHNcbi8vL1xuLy8vIEB0eXBlIExpc3RcblxuJHRleHQtaW5wdXRzLWxpc3Q6ICdpbnB1dFt0eXBlPVwiY29sb3JcIl0nLFxuICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwiZGF0ZVwiXScsXG4gICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJkYXRldGltZVwiXScsXG4gICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXScsXG4gICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJlbWFpbFwiXScsXG4gICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJtb250aFwiXScsXG4gICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJudW1iZXJcIl0nLFxuICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0nLFxuICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwic2VhcmNoXCJdJyxcbiAgICAgICAgICAgICAgICAgICAnaW5wdXRbdHlwZT1cInRlbFwiXScsXG4gICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJ0ZXh0XCJdJyxcbiAgICAgICAgICAgICAgICAgICAnaW5wdXRbdHlwZT1cInRpbWVcIl0nLFxuICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwidXJsXCJdJyxcbiAgICAgICAgICAgICAgICAgICAnaW5wdXRbdHlwZT1cIndlZWtcIl0nLFxuICAgICAgICAgICAgICAgICAgICdpbnB1dDpub3QoW3R5cGVdKScsXG4gICAgICAgICAgICAgICAgICAgJ3RleHRhcmVhJztcblxuJGFsbC10ZXh0LWlucHV0czogICAgICAgIGFzc2lnbi1pbnB1dHMoJHRleHQtaW5wdXRzLWxpc3QpO1xuJGFsbC10ZXh0LWlucHV0cy1hY3RpdmU6IGFzc2lnbi1pbnB1dHMoJHRleHQtaW5wdXRzLWxpc3QsIGFjdGl2ZSk7XG4kYWxsLXRleHQtaW5wdXRzLWZvY3VzOiAgYXNzaWduLWlucHV0cygkdGV4dC1pbnB1dHMtbGlzdCwgZm9jdXMpO1xuJGFsbC10ZXh0LWlucHV0cy1ob3ZlcjogIGFzc2lnbi1pbnB1dHMoJHRleHQtaW5wdXRzLWxpc3QsIGhvdmVyKTtcbiIsCgkJIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIENTUyBjdWJpYy1iZXppZXIgdGltaW5nIGZ1bmN0aW9ucy4gVGltaW5nIGZ1bmN0aW9ucyBjb3VydGVzeSBvZiBqcXVlcnkuZWFzaWUgKGdpdGh1Yi5jb20vamF1a2lhL2Vhc2llKVxuLy8vXG4vLy8gVGltaW5nIGZ1bmN0aW9ucyBhcmUgdGhlIHNhbWUgYXMgZGVtb2VkIGhlcmU6IGh0dHA6Ly9qcXVlcnl1aS5jb20vcmVzb3VyY2VzL2RlbW9zL2VmZmVjdC9lYXNpbmcuaHRtbFxuLy8vXG4vLy8gQHR5cGUgY3ViaWMtYmV6aWVyXG5cbiRlYXNlLWluLXF1YWQ6ICAgICAgY3ViaWMtYmV6aWVyKDAuNTUwLCAgMC4wODUsIDAuNjgwLCAwLjUzMCk7XG4kZWFzZS1pbi1jdWJpYzogICAgIGN1YmljLWJlemllcigwLjU1MCwgIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xuJGVhc2UtaW4tcXVhcnQ6ICAgICBjdWJpYy1iZXppZXIoMC44OTUsICAwLjAzMCwgMC42ODUsIDAuMjIwKTtcbiRlYXNlLWluLXF1aW50OiAgICAgY3ViaWMtYmV6aWVyKDAuNzU1LCAgMC4wNTAsIDAuODU1LCAwLjA2MCk7XG4kZWFzZS1pbi1zaW5lOiAgICAgIGN1YmljLWJlemllcigwLjQ3MCwgIDAuMDAwLCAwLjc0NSwgMC43MTUpO1xuJGVhc2UtaW4tZXhwbzogICAgICBjdWJpYy1iZXppZXIoMC45NTAsICAwLjA1MCwgMC43OTUsIDAuMDM1KTtcbiRlYXNlLWluLWNpcmM6ICAgICAgY3ViaWMtYmV6aWVyKDAuNjAwLCAgMC4wNDAsIDAuOTgwLCAwLjMzNSk7XG4kZWFzZS1pbi1iYWNrOiAgICAgIGN1YmljLWJlemllcigwLjYwMCwgLTAuMjgwLCAwLjczNSwgMC4wNDUpO1xuXG4kZWFzZS1vdXQtcXVhZDogICAgIGN1YmljLWJlemllcigwLjI1MCwgIDAuNDYwLCAwLjQ1MCwgMC45NDApO1xuJGVhc2Utb3V0LWN1YmljOiAgICBjdWJpYy1iZXppZXIoMC4yMTUsICAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcbiRlYXNlLW91dC1xdWFydDogICAgY3ViaWMtYmV6aWVyKDAuMTY1LCAgMC44NDAsIDAuNDQwLCAxLjAwMCk7XG4kZWFzZS1vdXQtcXVpbnQ6ICAgIGN1YmljLWJlemllcigwLjIzMCwgIDEuMDAwLCAwLjMyMCwgMS4wMDApO1xuJGVhc2Utb3V0LXNpbmU6ICAgICBjdWJpYy1iZXppZXIoMC4zOTAsICAwLjU3NSwgMC41NjUsIDEuMDAwKTtcbiRlYXNlLW91dC1leHBvOiAgICAgY3ViaWMtYmV6aWVyKDAuMTkwLCAgMS4wMDAsIDAuMjIwLCAxLjAwMCk7XG4kZWFzZS1vdXQtY2lyYzogICAgIGN1YmljLWJlemllcigwLjA3NSwgIDAuODIwLCAwLjE2NSwgMS4wMDApO1xuJGVhc2Utb3V0LWJhY2s6ICAgICBjdWJpYy1iZXppZXIoMC4xNzUsICAwLjg4NSwgMC4zMjAsIDEuMjc1KTtcblxuJGVhc2UtaW4tb3V0LXF1YWQ6ICBjdWJpYy1iZXppZXIoMC40NTUsICAwLjAzMCwgMC41MTUsIDAuOTU1KTtcbiRlYXNlLWluLW91dC1jdWJpYzogY3ViaWMtYmV6aWVyKDAuNjQ1LCAgMC4wNDUsIDAuMzU1LCAxLjAwMCk7XG4kZWFzZS1pbi1vdXQtcXVhcnQ6IGN1YmljLWJlemllcigwLjc3MCwgIDAuMDAwLCAwLjE3NSwgMS4wMDApO1xuJGVhc2UtaW4tb3V0LXF1aW50OiBjdWJpYy1iZXppZXIoMC44NjAsICAwLjAwMCwgMC4wNzAsIDEuMDAwKTtcbiRlYXNlLWluLW91dC1zaW5lOiAgY3ViaWMtYmV6aWVyKDAuNDQ1LCAgMC4wNTAsIDAuNTUwLCAwLjk1MCk7XG4kZWFzZS1pbi1vdXQtZXhwbzogIGN1YmljLWJlemllcigxLjAwMCwgIDAuMDAwLCAwLjAwMCwgMS4wMDApO1xuJGVhc2UtaW4tb3V0LWNpcmM6ICBjdWJpYy1iZXppZXIoMC43ODUsICAwLjEzNSwgMC4xNTAsIDAuODYwKTtcbiRlYXNlLWluLW91dC1iYWNrOiAgY3ViaWMtYmV6aWVyKDAuNjgwLCAtMC41NTAsIDAuMjY1LCAxLjU1MCk7XG4iLAoJCSJAbWl4aW4gdHJpYW5nbGUoJHNpemUsICRjb2xvciwgJGRpcmVjdGlvbikge1xuICAkd2lkdGg6IG50aCgkc2l6ZSwgMSk7XG4gICRoZWlnaHQ6IG50aCgkc2l6ZSwgbGVuZ3RoKCRzaXplKSk7XG4gICRmb3JlZ3JvdW5kLWNvbG9yOiBudGgoJGNvbG9yLCAxKTtcbiAgJGJhY2tncm91bmQtY29sb3I6IGlmKGxlbmd0aCgkY29sb3IpID09IDIsIG50aCgkY29sb3IsIDIpLCB0cmFuc3BhcmVudCk7XG4gIGhlaWdodDogMDtcbiAgd2lkdGg6IDA7XG5cbiAgQGlmICgkZGlyZWN0aW9uID09IHVwKSBvciAoJGRpcmVjdGlvbiA9PSBkb3duKSBvciAoJGRpcmVjdGlvbiA9PSByaWdodCkgb3IgKCRkaXJlY3Rpb24gPT0gbGVmdCkge1xuICAgICR3aWR0aDogJHdpZHRoIC8gMjtcbiAgICAkaGVpZ2h0OiBpZihsZW5ndGgoJHNpemUpID4gMSwgJGhlaWdodCwgJGhlaWdodC8yKTtcblxuICAgIEBpZiAkZGlyZWN0aW9uID09IHVwIHtcbiAgICAgIGJvcmRlci1ib3R0b206ICRoZWlnaHQgc29saWQgJGZvcmVncm91bmQtY29sb3I7XG4gICAgICBib3JkZXItbGVmdDogJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xuICAgICAgYm9yZGVyLXJpZ2h0OiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XG4gICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHJpZ2h0IHtcbiAgICAgIGJvcmRlci1ib3R0b206ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICAgIGJvcmRlci1sZWZ0OiAkaGVpZ2h0IHNvbGlkICRmb3JlZ3JvdW5kLWNvbG9yO1xuICAgICAgYm9yZGVyLXRvcDogJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xuICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBkb3duIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XG4gICAgICBib3JkZXItcmlnaHQ6ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICAgIGJvcmRlci10b3A6ICRoZWlnaHQgc29saWQgJGZvcmVncm91bmQtY29sb3I7XG4gICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IGxlZnQge1xuICAgICAgYm9yZGVyLWJvdHRvbTogJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xuICAgICAgYm9yZGVyLXJpZ2h0OiAkaGVpZ2h0IHNvbGlkICRmb3JlZ3JvdW5kLWNvbG9yO1xuICAgICAgYm9yZGVyLXRvcDogJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xuICAgIH1cbiAgfSBAZWxzZSBpZiAoJGRpcmVjdGlvbiA9PSB1cC1yaWdodCkgb3IgKCRkaXJlY3Rpb24gPT0gdXAtbGVmdCkge1xuICAgIGJvcmRlci10b3A6ICRoZWlnaHQgc29saWQgJGZvcmVncm91bmQtY29sb3I7XG5cbiAgICBAaWYgJGRpcmVjdGlvbiA9PSB1cC1yaWdodCB7XG4gICAgICBib3JkZXItbGVmdDogICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gdXAtbGVmdCB7XG4gICAgICBib3JkZXItcmlnaHQ6ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICB9XG4gIH0gQGVsc2UgaWYgKCRkaXJlY3Rpb24gPT0gZG93bi1yaWdodCkgb3IgKCRkaXJlY3Rpb24gPT0gZG93bi1sZWZ0KSB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGhlaWdodCBzb2xpZCAkZm9yZWdyb3VuZC1jb2xvcjtcblxuICAgIEBpZiAkZGlyZWN0aW9uID09IGRvd24tcmlnaHQge1xuICAgICAgYm9yZGVyLWxlZnQ6ICAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XG4gICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IGRvd24tbGVmdCB7XG4gICAgICBib3JkZXItcmlnaHQ6ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICB9XG4gIH0gQGVsc2UgaWYgKCRkaXJlY3Rpb24gPT0gaW5zZXQtdXApIHtcbiAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kLWNvbG9yICRiYWNrZ3JvdW5kLWNvbG9yICRmb3JlZ3JvdW5kLWNvbG9yO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAkaGVpZ2h0ICR3aWR0aDtcbiAgfSBAZWxzZSBpZiAoJGRpcmVjdGlvbiA9PSBpbnNldC1kb3duKSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkZm9yZWdyb3VuZC1jb2xvciAkYmFja2dyb3VuZC1jb2xvciAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogJGhlaWdodCAkd2lkdGg7XG4gIH0gQGVsc2UgaWYgKCRkaXJlY3Rpb24gPT0gaW5zZXQtcmlnaHQpIHtcbiAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kLWNvbG9yICRiYWNrZ3JvdW5kLWNvbG9yICRiYWNrZ3JvdW5kLWNvbG9yICRmb3JlZ3JvdW5kLWNvbG9yO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAkd2lkdGggJGhlaWdodDtcbiAgfSBAZWxzZSBpZiAoJGRpcmVjdGlvbiA9PSBpbnNldC1sZWZ0KSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZC1jb2xvciAkZm9yZWdyb3VuZC1jb2xvciAkYmFja2dyb3VuZC1jb2xvciAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogJHdpZHRoICRoZWlnaHQ7XG4gIH1cbn1cbiIsCgkJIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFByb3ZpZGVzIGFuIGVhc3kgd2F5IHRvIGNoYW5nZSB0aGUgYHdvcmQtd3JhcGAgcHJvcGVydHkuXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHdyYXAgW2JyZWFrLXdvcmRdXG4vLy8gICBWYWx1ZSBmb3IgdGhlIGB3b3JkLWJyZWFrYCBwcm9wZXJ0eS5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLndyYXBwZXIge1xuLy8vICAgICBAaW5jbHVkZSB3b3JkLXdyYXAoYnJlYWstd29yZCk7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICAud3JhcHBlciB7XG4vLy8gICAgIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG4vLy8gICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbi8vLyAgICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuLy8vICAgfVxuXG5AbWl4aW4gd29yZC13cmFwKCR3cmFwOiBicmVhay13b3JkKSB7XG4gIG92ZXJmbG93LXdyYXA6ICR3cmFwO1xuICB3b3JkLXdyYXA6ICR3cmFwO1xuXG4gIEBpZiAkd3JhcCA9PSBicmVhay13b3JkIHtcbiAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gIH0gQGVsc2Uge1xuICAgIHdvcmQtYnJlYWs6ICR3cmFwO1xuICB9XG59XG4iLAoJCSIvLyBUaGUgZm9sbG93aW5nIGZlYXR1cmVzIGhhdmUgYmVlbiBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQgaW4gdGhlIG5leHQgTUFKT1IgdmVyc2lvbiByZWxlYXNlXG5cbkBtaXhpbiBpbmxpbmUtYmxvY2sge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgQHdhcm4gXCJUaGUgaW5saW5lLWJsb2NrIG1peGluIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgbmV4dCBtYWpvciB2ZXJzaW9uIHJlbGVhc2VcIjtcbn1cblxuQG1peGluIGJ1dHRvbiAoJHN0eWxlOiBzaW1wbGUsICRiYXNlLWNvbG9yOiAjNDI5NGYwLCAkdGV4dC1zaXplOiBpbmhlcml0LCAkcGFkZGluZzogN3B4IDE4cHgpIHtcblxuICBAaWYgdHlwZS1vZigkc3R5bGUpID09IHN0cmluZyBhbmQgdHlwZS1vZigkYmFzZS1jb2xvcikgPT0gY29sb3Ige1xuICAgIEBpbmNsdWRlIGJ1dHRvbnN0eWxlKCRzdHlsZSwgJGJhc2UtY29sb3IsICR0ZXh0LXNpemUsICRwYWRkaW5nKTtcbiAgfVxuXG4gIEBpZiB0eXBlLW9mKCRzdHlsZSkgPT0gc3RyaW5nIGFuZCB0eXBlLW9mKCRiYXNlLWNvbG9yKSA9PSBudW1iZXIge1xuICAgICRwYWRkaW5nOiAkdGV4dC1zaXplO1xuICAgICR0ZXh0LXNpemU6ICRiYXNlLWNvbG9yO1xuICAgICRiYXNlLWNvbG9yOiAjNDI5NGYwO1xuXG4gICAgQGlmICRwYWRkaW5nID09IGluaGVyaXQge1xuICAgICAgJHBhZGRpbmc6IDdweCAxOHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJ1dHRvbnN0eWxlKCRzdHlsZSwgJGJhc2UtY29sb3IsICR0ZXh0LXNpemUsICRwYWRkaW5nKTtcbiAgfVxuXG4gIEBpZiB0eXBlLW9mKCRzdHlsZSkgPT0gY29sb3IgYW5kIHR5cGUtb2YoJGJhc2UtY29sb3IpID09IGNvbG9yIHtcbiAgICAkYmFzZS1jb2xvcjogJHN0eWxlO1xuICAgICRzdHlsZTogc2ltcGxlO1xuICAgIEBpbmNsdWRlIGJ1dHRvbnN0eWxlKCRzdHlsZSwgJGJhc2UtY29sb3IsICR0ZXh0LXNpemUsICRwYWRkaW5nKTtcbiAgfVxuXG4gIEBpZiB0eXBlLW9mKCRzdHlsZSkgPT0gY29sb3IgYW5kIHR5cGUtb2YoJGJhc2UtY29sb3IpID09IG51bWJlciB7XG4gICAgJHBhZGRpbmc6ICR0ZXh0LXNpemU7XG4gICAgJHRleHQtc2l6ZTogJGJhc2UtY29sb3I7XG4gICAgJGJhc2UtY29sb3I6ICRzdHlsZTtcbiAgICAkc3R5bGU6IHNpbXBsZTtcblxuICAgIEBpZiAkcGFkZGluZyA9PSBpbmhlcml0IHtcbiAgICAgICRwYWRkaW5nOiA3cHggMThweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBidXR0b25zdHlsZSgkc3R5bGUsICRiYXNlLWNvbG9yLCAkdGV4dC1zaXplLCAkcGFkZGluZyk7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkc3R5bGUpID09IG51bWJlciB7XG4gICAgJHBhZGRpbmc6ICRiYXNlLWNvbG9yO1xuICAgICR0ZXh0LXNpemU6ICRzdHlsZTtcbiAgICAkYmFzZS1jb2xvcjogIzQyOTRmMDtcbiAgICAkc3R5bGU6IHNpbXBsZTtcblxuICAgIEBpZiAkcGFkZGluZyA9PSAjNDI5NGYwIHtcbiAgICAgICRwYWRkaW5nOiA3cHggMThweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBidXR0b25zdHlsZSgkc3R5bGUsICRiYXNlLWNvbG9yLCAkdGV4dC1zaXplLCAkcGFkZGluZyk7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgfVxuXG4gIEB3YXJuIFwiVGhlIGJ1dHRvbiBtaXhpbiBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQgaW4gdGhlIG5leHQgbWFqb3IgdmVyc2lvbiByZWxlYXNlXCI7XG59XG5cbi8vIFNlbGVjdG9yIFN0eWxlIEJ1dHRvblxuQG1peGluIGJ1dHRvbnN0eWxlKCR0eXBlLCAkYi1jb2xvciwgJHQtc2l6ZSwgJHBhZCkge1xuICAvLyBHcmF5c2NhbGUgYnV0dG9uXG4gIEBpZiAkdHlwZSA9PSBzaW1wbGUgYW5kICRiLWNvbG9yID09IGdyYXlzY2FsZSgkYi1jb2xvcikge1xuICAgIEBpbmNsdWRlIHNpbXBsZSgkYi1jb2xvciwgdHJ1ZSwgJHQtc2l6ZSwgJHBhZCk7XG4gIH1cblxuICBAaWYgJHR5cGUgPT0gc2hpbnkgYW5kICRiLWNvbG9yID09IGdyYXlzY2FsZSgkYi1jb2xvcikge1xuICAgIEBpbmNsdWRlIHNoaW55KCRiLWNvbG9yLCB0cnVlLCAkdC1zaXplLCAkcGFkKTtcbiAgfVxuXG4gIEBpZiAkdHlwZSA9PSBwaWxsIGFuZCAkYi1jb2xvciA9PSBncmF5c2NhbGUoJGItY29sb3IpIHtcbiAgICBAaW5jbHVkZSBwaWxsKCRiLWNvbG9yLCB0cnVlLCAkdC1zaXplLCAkcGFkKTtcbiAgfVxuXG4gIEBpZiAkdHlwZSA9PSBmbGF0IGFuZCAkYi1jb2xvciA9PSBncmF5c2NhbGUoJGItY29sb3IpIHtcbiAgICBAaW5jbHVkZSBmbGF0KCRiLWNvbG9yLCB0cnVlLCAkdC1zaXplLCAkcGFkKTtcbiAgfVxuXG4gIC8vIENvbG9yZWQgYnV0dG9uXG4gIEBpZiAkdHlwZSA9PSBzaW1wbGUge1xuICAgIEBpbmNsdWRlIHNpbXBsZSgkYi1jb2xvciwgZmFsc2UsICR0LXNpemUsICRwYWQpO1xuICB9XG5cbiAgQGVsc2UgaWYgJHR5cGUgPT0gc2hpbnkge1xuICAgIEBpbmNsdWRlIHNoaW55KCRiLWNvbG9yLCBmYWxzZSwgJHQtc2l6ZSwgJHBhZCk7XG4gIH1cblxuICBAZWxzZSBpZiAkdHlwZSA9PSBwaWxsIHtcbiAgICBAaW5jbHVkZSBwaWxsKCRiLWNvbG9yLCBmYWxzZSwgJHQtc2l6ZSwgJHBhZCk7XG4gIH1cblxuICBAZWxzZSBpZiAkdHlwZSA9PSBmbGF0IHtcbiAgICBAaW5jbHVkZSBmbGF0KCRiLWNvbG9yLCBmYWxzZSwgJHQtc2l6ZSwgJHBhZCk7XG4gIH1cbn1cblxuLy8gU2ltcGxlIEJ1dHRvblxuQG1peGluIHNpbXBsZSgkYmFzZS1jb2xvciwgJGdyYXlzY2FsZTogZmFsc2UsICR0ZXh0c2l6ZTogaW5oZXJpdCwgJHBhZGRpbmc6IDdweCAxOHB4KSB7XG4gICRjb2xvcjogICAgICAgICBoc2woMCwgMCwgMTAwJSk7XG4gICRib3JkZXI6ICAgICAgICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRzYXR1cmF0aW9uOiAgOSUsICAkbGlnaHRuZXNzOiAtMTQlKTtcbiAgJGluc2V0LXNoYWRvdzogIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246IC04JSwgICRsaWdodG5lc3M6ICAxNSUpO1xuICAkc3RvcC1ncmFkaWVudDogYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkc2F0dXJhdGlvbjogIDklLCAgJGxpZ2h0bmVzczogLTExJSk7XG4gICR0ZXh0LXNoYWRvdzogICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRzYXR1cmF0aW9uOiAgMTUlLCAkbGlnaHRuZXNzOiAtMTglKTtcblxuICBAaWYgaXMtbGlnaHQoJGJhc2UtY29sb3IpIHtcbiAgICAkY29sb3I6ICAgICAgIGhzbCgwLCAwLCAyMCUpO1xuICAgICR0ZXh0LXNoYWRvdzogYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkc2F0dXJhdGlvbjogMTAlLCAkbGlnaHRuZXNzOiA0JSk7XG4gIH1cblxuICBAaWYgJGdyYXlzY2FsZSA9PSB0cnVlIHtcbiAgICAkYm9yZGVyOiAgICAgICAgZ3JheXNjYWxlKCRib3JkZXIpO1xuICAgICRpbnNldC1zaGFkb3c6ICBncmF5c2NhbGUoJGluc2V0LXNoYWRvdyk7XG4gICAgJHN0b3AtZ3JhZGllbnQ6IGdyYXlzY2FsZSgkc3RvcC1ncmFkaWVudCk7XG4gICAgJHRleHQtc2hhZG93OiAgIGdyYXlzY2FsZSgkdGV4dC1zaGFkb3cpO1xuICB9XG5cbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIDAgJGluc2V0LXNoYWRvdztcbiAgY29sb3I6ICRjb2xvcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6ICR0ZXh0c2l6ZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIEBpbmNsdWRlIGxpbmVhci1ncmFkaWVudCAoJGJhc2UtY29sb3IsICRzdG9wLWdyYWRpZW50KTtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IDAgMXB4IDAgJHRleHQtc2hhZG93O1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuXG4gICY6aG92ZXI6bm90KDpkaXNhYmxlZCkge1xuICAgICRiYXNlLWNvbG9yLWhvdmVyOiAgICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRzYXR1cmF0aW9uOiAtNCUsICRsaWdodG5lc3M6IC01JSk7XG4gICAgJGluc2V0LXNoYWRvdy1ob3ZlcjogIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246IC03JSwgJGxpZ2h0bmVzczogIDUlKTtcbiAgICAkc3RvcC1ncmFkaWVudC1ob3ZlcjogYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkc2F0dXJhdGlvbjogIDglLCAkbGlnaHRuZXNzOiAtMTQlKTtcblxuICAgIEBpZiAkZ3JheXNjYWxlID09IHRydWUge1xuICAgICAgJGJhc2UtY29sb3ItaG92ZXI6ICAgIGdyYXlzY2FsZSgkYmFzZS1jb2xvci1ob3Zlcik7XG4gICAgICAkaW5zZXQtc2hhZG93LWhvdmVyOiAgZ3JheXNjYWxlKCRpbnNldC1zaGFkb3ctaG92ZXIpO1xuICAgICAgJHN0b3AtZ3JhZGllbnQtaG92ZXI6IGdyYXlzY2FsZSgkc3RvcC1ncmFkaWVudC1ob3Zlcik7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbGluZWFyLWdyYWRpZW50ICgkYmFzZS1jb2xvci1ob3ZlciwgJHN0b3AtZ3JhZGllbnQtaG92ZXIpO1xuXG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCAwICRpbnNldC1zaGFkb3ctaG92ZXI7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgJjphY3RpdmU6bm90KDpkaXNhYmxlZCksXG4gICY6Zm9jdXM6bm90KDpkaXNhYmxlZCkge1xuICAgICRib3JkZXItYWN0aXZlOiAgICAgICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRzYXR1cmF0aW9uOiA5JSwgJGxpZ2h0bmVzczogLTE0JSk7XG4gICAgJGluc2V0LXNoYWRvdy1hY3RpdmU6IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246IDclLCAkbGlnaHRuZXNzOiAtMTclKTtcblxuICAgIEBpZiAkZ3JheXNjYWxlID09IHRydWUge1xuICAgICAgJGJvcmRlci1hY3RpdmU6ICAgICAgIGdyYXlzY2FsZSgkYm9yZGVyLWFjdGl2ZSk7XG4gICAgICAkaW5zZXQtc2hhZG93LWFjdGl2ZTogZ3JheXNjYWxlKCRpbnNldC1zaGFkb3ctYWN0aXZlKTtcbiAgICB9XG5cbiAgICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWFjdGl2ZTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgOHB4IDRweCAkaW5zZXQtc2hhZG93LWFjdGl2ZSwgaW5zZXQgMCAwIDhweCA0cHggJGluc2V0LXNoYWRvdy1hY3RpdmU7XG4gIH1cbn1cblxuLy8gU2hpbnkgQnV0dG9uXG5AbWl4aW4gc2hpbnkoJGJhc2UtY29sb3IsICRncmF5c2NhbGU6IGZhbHNlLCAkdGV4dHNpemU6IGluaGVyaXQsICRwYWRkaW5nOiA3cHggMThweCkge1xuICAkY29sb3I6ICAgICAgICAgaHNsKDAsIDAsIDEwMCUpO1xuICAkYm9yZGVyOiAgICAgICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkcmVkOiAtMTE3LCAkZ3JlZW46IC0xMTEsICRibHVlOiAtODEpO1xuICAkYm9yZGVyLWJvdHRvbTogYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkcmVkOiAtMTI2LCAkZ3JlZW46IC0xMjcsICRibHVlOiAtMTIyKTtcbiAgJGZvdXJ0aC1zdG9wOiAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHJlZDogLTc5LCAgJGdyZWVuOiAtNzAsICAkYmx1ZTogLTQ2KTtcbiAgJGluc2V0LXNoYWRvdzogIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHJlZDogIDM3LCAgJGdyZWVuOiAgMjksICAkYmx1ZTogIDEyKTtcbiAgJHNlY29uZC1zdG9wOiAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHJlZDogLTU2LCAgJGdyZWVuOiAtNTAsICAkYmx1ZTogLTMzKTtcbiAgJHRleHQtc2hhZG93OiAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHJlZDogLTE0MCwgJGdyZWVuOiAtMTQxLCAkYmx1ZTogLTExNCk7XG4gICR0aGlyZC1zdG9wOiAgICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRyZWQ6IC04NiwgICRncmVlbjogLTc1LCAgJGJsdWU6IC00OCk7XG5cbiAgQGlmIGlzLWxpZ2h0KCRiYXNlLWNvbG9yKSB7XG4gICAgJGNvbG9yOiAgICAgICBoc2woMCwgMCwgMjAlKTtcbiAgICAkdGV4dC1zaGFkb3c6IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246IDEwJSwgJGxpZ2h0bmVzczogNCUpO1xuICB9XG5cbiAgQGlmICRncmF5c2NhbGUgPT0gdHJ1ZSB7XG4gICAgJGJvcmRlcjogICAgICAgIGdyYXlzY2FsZSgkYm9yZGVyKTtcbiAgICAkYm9yZGVyLWJvdHRvbTogZ3JheXNjYWxlKCRib3JkZXItYm90dG9tKTtcbiAgICAkZm91cnRoLXN0b3A6ICAgZ3JheXNjYWxlKCRmb3VydGgtc3RvcCk7XG4gICAgJGluc2V0LXNoYWRvdzogIGdyYXlzY2FsZSgkaW5zZXQtc2hhZG93KTtcbiAgICAkc2Vjb25kLXN0b3A6ICAgZ3JheXNjYWxlKCRzZWNvbmQtc3RvcCk7XG4gICAgJHRleHQtc2hhZG93OiAgIGdyYXlzY2FsZSgkdGV4dC1zaGFkb3cpO1xuICAgICR0aGlyZC1zdG9wOiAgICBncmF5c2NhbGUoJHRoaXJkLXN0b3ApO1xuICB9XG5cbiAgQGluY2x1ZGUgbGluZWFyLWdyYWRpZW50KHRvcCwgJGJhc2UtY29sb3IgMCUsICRzZWNvbmQtc3RvcCA1MCUsICR0aGlyZC1zdG9wIDUwJSwgJGZvdXJ0aC1zdG9wIDEwMCUpO1xuXG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXI7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLWJvdHRvbTtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIDAgJGluc2V0LXNoYWRvdztcbiAgY29sb3I6ICRjb2xvcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6ICR0ZXh0c2l6ZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IDAgLTFweCAxcHggJHRleHQtc2hhZG93O1xuXG4gICY6aG92ZXI6bm90KDpkaXNhYmxlZCkge1xuICAgICRmaXJzdC1zdG9wLWhvdmVyOiAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkcmVkOiAtMTMsICRncmVlbjogLTE1LCAkYmx1ZTogLTE4KTtcbiAgICAkc2Vjb25kLXN0b3AtaG92ZXI6IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHJlZDogLTY2LCAkZ3JlZW46IC02MiwgJGJsdWU6IC01MSk7XG4gICAgJHRoaXJkLXN0b3AtaG92ZXI6ICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRyZWQ6IC05MywgJGdyZWVuOiAtODUsICRibHVlOiAtNjYpO1xuICAgICRmb3VydGgtc3RvcC1ob3ZlcjogYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkcmVkOiAtODYsICRncmVlbjogLTgwLCAkYmx1ZTogLTYzKTtcblxuICAgIEBpZiAkZ3JheXNjYWxlID09IHRydWUge1xuICAgICAgJGZpcnN0LXN0b3AtaG92ZXI6ICBncmF5c2NhbGUoJGZpcnN0LXN0b3AtaG92ZXIpO1xuICAgICAgJHNlY29uZC1zdG9wLWhvdmVyOiBncmF5c2NhbGUoJHNlY29uZC1zdG9wLWhvdmVyKTtcbiAgICAgICR0aGlyZC1zdG9wLWhvdmVyOiAgZ3JheXNjYWxlKCR0aGlyZC1zdG9wLWhvdmVyKTtcbiAgICAgICRmb3VydGgtc3RvcC1ob3ZlcjogZ3JheXNjYWxlKCRmb3VydGgtc3RvcC1ob3Zlcik7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbGluZWFyLWdyYWRpZW50KHRvcCwgJGZpcnN0LXN0b3AtaG92ZXIgIDAlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRzZWNvbmQtc3RvcC1ob3ZlciA1MCUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHRoaXJkLXN0b3AtaG92ZXIgIDUwJSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZm91cnRoLXN0b3AtaG92ZXIgMTAwJSk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgJjphY3RpdmU6bm90KDpkaXNhYmxlZCksXG4gICY6Zm9jdXM6bm90KDpkaXNhYmxlZCkge1xuICAgICRpbnNldC1zaGFkb3ctYWN0aXZlOiBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRyZWQ6IC0xMTEsICRncmVlbjogLTExNiwgJGJsdWU6IC0xMjIpO1xuXG4gICAgQGlmICRncmF5c2NhbGUgPT0gdHJ1ZSB7XG4gICAgICAkaW5zZXQtc2hhZG93LWFjdGl2ZTogZ3JheXNjYWxlKCRpbnNldC1zaGFkb3ctYWN0aXZlKTtcbiAgICB9XG5cbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMjBweCAwICRpbnNldC1zaGFkb3ctYWN0aXZlO1xuICB9XG59XG5cbi8vIFBpbGwgQnV0dG9uXG5AbWl4aW4gcGlsbCgkYmFzZS1jb2xvciwgJGdyYXlzY2FsZTogZmFsc2UsICR0ZXh0c2l6ZTogaW5oZXJpdCwgJHBhZGRpbmc6IDdweCAxOHB4KSB7XG4gICRjb2xvcjogICAgICAgICBoc2woMCwgMCwgMTAwJSk7XG4gICRib3JkZXItYm90dG9tOiBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6ICA4LCAkc2F0dXJhdGlvbjogLTExJSwgJGxpZ2h0bmVzczogLTI2JSk7XG4gICRib3JkZXItc2lkZXM6ICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6ICA0LCAkc2F0dXJhdGlvbjogLTIxJSwgJGxpZ2h0bmVzczogLTIxJSk7XG4gICRib3JkZXItdG9wOiAgICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6IC0xLCAkc2F0dXJhdGlvbjogLTMwJSwgJGxpZ2h0bmVzczogLTE1JSk7XG4gICRpbnNldC1zaGFkb3c6ICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6IC0xLCAkc2F0dXJhdGlvbjogLTElLCAgJGxpZ2h0bmVzczogIDclKTtcbiAgJHN0b3AtZ3JhZGllbnQ6IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJGh1ZTogIDgsICRzYXR1cmF0aW9uOiAgMTQlLCAkbGlnaHRuZXNzOiAtMTAlKTtcbiAgJHRleHQtc2hhZG93OiAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJGh1ZTogIDUsICRzYXR1cmF0aW9uOiAtMTklLCAkbGlnaHRuZXNzOiAtMTUlKTtcblxuICBAaWYgaXMtbGlnaHQoJGJhc2UtY29sb3IpIHtcbiAgICAkY29sb3I6ICAgICAgIGhzbCgwLCAwLCAyMCUpO1xuICAgICR0ZXh0LXNoYWRvdzogYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkc2F0dXJhdGlvbjogMTAlLCAkbGlnaHRuZXNzOiA0JSk7XG4gIH1cblxuICBAaWYgJGdyYXlzY2FsZSA9PSB0cnVlIHtcbiAgICAkYm9yZGVyLWJvdHRvbTogZ3JheXNjYWxlKCRib3JkZXItYm90dG9tKTtcbiAgICAkYm9yZGVyLXNpZGVzOiAgZ3JheXNjYWxlKCRib3JkZXItc2lkZXMpO1xuICAgICRib3JkZXItdG9wOiAgICBncmF5c2NhbGUoJGJvcmRlci10b3ApO1xuICAgICRpbnNldC1zaGFkb3c6ICBncmF5c2NhbGUoJGluc2V0LXNoYWRvdyk7XG4gICAgJHN0b3AtZ3JhZGllbnQ6IGdyYXlzY2FsZSgkc3RvcC1ncmFkaWVudCk7XG4gICAgJHRleHQtc2hhZG93OiAgIGdyYXlzY2FsZSgkdGV4dC1zaGFkb3cpO1xuICB9XG5cbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci10b3A7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlci10b3AgJGJvcmRlci1zaWRlcyAkYm9yZGVyLWJvdHRvbTtcbiAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCAwICRpbnNldC1zaGFkb3c7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAkdGV4dHNpemU7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBAaW5jbHVkZSBsaW5lYXItZ3JhZGllbnQgKCRiYXNlLWNvbG9yLCAkc3RvcC1ncmFkaWVudCk7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IDAgLTFweCAxcHggJHRleHQtc2hhZG93O1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuXG4gICY6aG92ZXI6bm90KDpkaXNhYmxlZCkge1xuICAgICRiYXNlLWNvbG9yLWhvdmVyOiAgICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkbGlnaHRuZXNzOiAtNC41JSk7XG4gICAgJGJvcmRlci1ib3R0b206ICAgICAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJGh1ZTogIDgsICRzYXR1cmF0aW9uOiAgMTMuNSUsICRsaWdodG5lc3M6IC0zMiUpO1xuICAgICRib3JkZXItc2lkZXM6ICAgICAgICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6ICA0LCAkc2F0dXJhdGlvbjogLTIlLCAgICAkbGlnaHRuZXNzOiAtMjclKTtcbiAgICAkYm9yZGVyLXRvcDogICAgICAgICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiAtMSwgJHNhdHVyYXRpb246IC0xNyUsICAgJGxpZ2h0bmVzczogLTIxJSk7XG4gICAgJGluc2V0LXNoYWRvdy1ob3ZlcjogIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgICAgICAgICAgICRzYXR1cmF0aW9uOiAtMSUsICAgICRsaWdodG5lc3M6ICAzJSk7XG4gICAgJHN0b3AtZ3JhZGllbnQtaG92ZXI6IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJGh1ZTogIDgsICRzYXR1cmF0aW9uOiAtNCUsICAgICRsaWdodG5lc3M6IC0xNS41JSk7XG4gICAgJHRleHQtc2hhZG93LWhvdmVyOiAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJGh1ZTogIDUsICRzYXR1cmF0aW9uOiAtNSUsICAgICRsaWdodG5lc3M6IC0yMiUpO1xuXG4gICAgQGlmICRncmF5c2NhbGUgPT0gdHJ1ZSB7XG4gICAgICAkYmFzZS1jb2xvci1ob3ZlcjogICAgZ3JheXNjYWxlKCRiYXNlLWNvbG9yLWhvdmVyKTtcbiAgICAgICRib3JkZXItYm90dG9tOiAgICAgICBncmF5c2NhbGUoJGJvcmRlci1ib3R0b20pO1xuICAgICAgJGJvcmRlci1zaWRlczogICAgICAgIGdyYXlzY2FsZSgkYm9yZGVyLXNpZGVzKTtcbiAgICAgICRib3JkZXItdG9wOiAgICAgICAgICBncmF5c2NhbGUoJGJvcmRlci10b3ApO1xuICAgICAgJGluc2V0LXNoYWRvdy1ob3ZlcjogIGdyYXlzY2FsZSgkaW5zZXQtc2hhZG93LWhvdmVyKTtcbiAgICAgICRzdG9wLWdyYWRpZW50LWhvdmVyOiBncmF5c2NhbGUoJHN0b3AtZ3JhZGllbnQtaG92ZXIpO1xuICAgICAgJHRleHQtc2hhZG93LWhvdmVyOiAgIGdyYXlzY2FsZSgkdGV4dC1zaGFkb3ctaG92ZXIpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGxpbmVhci1ncmFkaWVudCAoJGJhc2UtY29sb3ItaG92ZXIsICRzdG9wLWdyYWRpZW50LWhvdmVyKTtcblxuICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci10b3A7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLXRvcCAkYm9yZGVyLXNpZGVzICRib3JkZXItYm90dG9tO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgMCAkaW5zZXQtc2hhZG93LWhvdmVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0ZXh0LXNoYWRvdzogMCAtMXB4IDFweCAkdGV4dC1zaGFkb3ctaG92ZXI7XG4gIH1cblxuICAmOmFjdGl2ZTpub3QoOmRpc2FibGVkKSxcbiAgJjpmb2N1czpub3QoOmRpc2FibGVkKSB7XG4gICAgJGFjdGl2ZS1jb2xvcjogICAgICAgICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6IDQsICAkc2F0dXJhdGlvbjogLTEyJSwgICRsaWdodG5lc3M6IC0xMCUpO1xuICAgICRib3JkZXItYWN0aXZlOiAgICAgICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiA2LCAgJHNhdHVyYXRpb246IC0yLjUlLCAkbGlnaHRuZXNzOiAtMzAlKTtcbiAgICAkYm9yZGVyLWJvdHRvbS1hY3RpdmU6IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJGh1ZTogMTEsICRzYXR1cmF0aW9uOiAgNiUsICAgJGxpZ2h0bmVzczogLTMxJSk7XG4gICAgJGluc2V0LXNoYWRvdy1hY3RpdmU6ICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6IDksICAkc2F0dXJhdGlvbjogIDIlLCAgICRsaWdodG5lc3M6IC0yMS41JSk7XG4gICAgJHRleHQtc2hhZG93LWFjdGl2ZTogICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6IDUsICAkc2F0dXJhdGlvbjogLTEyJSwgICRsaWdodG5lc3M6IC0yMS41JSk7XG5cbiAgICBAaWYgJGdyYXlzY2FsZSA9PSB0cnVlIHtcbiAgICAgICRhY3RpdmUtY29sb3I6ICAgICAgICAgZ3JheXNjYWxlKCRhY3RpdmUtY29sb3IpO1xuICAgICAgJGJvcmRlci1hY3RpdmU6ICAgICAgICBncmF5c2NhbGUoJGJvcmRlci1hY3RpdmUpO1xuICAgICAgJGJvcmRlci1ib3R0b20tYWN0aXZlOiBncmF5c2NhbGUoJGJvcmRlci1ib3R0b20tYWN0aXZlKTtcbiAgICAgICRpbnNldC1zaGFkb3ctYWN0aXZlOiAgZ3JheXNjYWxlKCRpbnNldC1zaGFkb3ctYWN0aXZlKTtcbiAgICAgICR0ZXh0LXNoYWRvdy1hY3RpdmU6ICAgZ3JheXNjYWxlKCR0ZXh0LXNoYWRvdy1hY3RpdmUpO1xuICAgIH1cblxuICAgIGJhY2tncm91bmQ6ICRhY3RpdmUtY29sb3I7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1hY3RpdmU7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItYm90dG9tLWFjdGl2ZTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgNnB4IDNweCAkaW5zZXQtc2hhZG93LWFjdGl2ZTtcbiAgICB0ZXh0LXNoYWRvdzogMCAtMXB4IDFweCAkdGV4dC1zaGFkb3ctYWN0aXZlO1xuICB9XG59XG5cbi8vIEZsYXQgQnV0dG9uXG5AbWl4aW4gZmxhdCgkYmFzZS1jb2xvciwgJGdyYXlzY2FsZTogZmFsc2UsICR0ZXh0c2l6ZTogaW5oZXJpdCwgJHBhZGRpbmc6IDdweCAxOHB4KSB7XG4gICRjb2xvcjogICAgICAgICBoc2woMCwgMCwgMTAwJSk7XG5cbiAgQGlmIGlzLWxpZ2h0KCRiYXNlLWNvbG9yKSB7XG4gICAgJGNvbG9yOiAgICAgICBoc2woMCwgMCwgMjAlKTtcbiAgfVxuXG4gIGJhY2tncm91bmQtY29sb3I6ICRiYXNlLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJvcmRlcjogMDtcbiAgY29sb3I6ICRjb2xvcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6ICR0ZXh0c2l6ZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG5cbiAgJjpob3Zlcjpub3QoOmRpc2FibGVkKXtcbiAgICAkYmFzZS1jb2xvci1ob3ZlcjogICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkc2F0dXJhdGlvbjogNCUsICRsaWdodG5lc3M6IDUlKTtcblxuICAgIEBpZiAkZ3JheXNjYWxlID09IHRydWUge1xuICAgICAgJGJhc2UtY29sb3ItaG92ZXI6IGdyYXlzY2FsZSgkYmFzZS1jb2xvci1ob3Zlcik7XG4gICAgfVxuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhc2UtY29sb3ItaG92ZXI7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgJjphY3RpdmU6bm90KDpkaXNhYmxlZCksXG4gICY6Zm9jdXM6bm90KDpkaXNhYmxlZCkge1xuICAgICRiYXNlLWNvbG9yLWFjdGl2ZTogYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkc2F0dXJhdGlvbjogLTQlLCAkbGlnaHRuZXNzOiAtNSUpO1xuXG4gICAgQGlmICRncmF5c2NhbGUgPT0gdHJ1ZSB7XG4gICAgICAkYmFzZS1jb2xvci1hY3RpdmU6IGdyYXlzY2FsZSgkYmFzZS1jb2xvci1hY3RpdmUpO1xuICAgIH1cblxuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYXNlLWNvbG9yLWFjdGl2ZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cblxuLy8gRmxleGlibGUgZ3JpZFxuQGZ1bmN0aW9uIGZsZXgtZ3JpZCgkY29sdW1ucywgJGNvbnRhaW5lci1jb2x1bW5zOiAkZmctbWF4LWNvbHVtbnMpIHtcbiAgJHdpZHRoOiAkY29sdW1ucyAqICRmZy1jb2x1bW4gKyAoJGNvbHVtbnMgLSAxKSAqICRmZy1ndXR0ZXI7XG4gICRjb250YWluZXItd2lkdGg6ICRjb250YWluZXItY29sdW1ucyAqICRmZy1jb2x1bW4gKyAoJGNvbnRhaW5lci1jb2x1bW5zIC0gMSkgKiAkZmctZ3V0dGVyO1xuICBAcmV0dXJuIHBlcmNlbnRhZ2UoJHdpZHRoIC8gJGNvbnRhaW5lci13aWR0aCk7XG5cbiAgQHdhcm4gXCJUaGUgZmxleC1ncmlkIGZ1bmN0aW9uIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgbmV4dCBtYWpvciB2ZXJzaW9uIHJlbGVhc2VcIjtcbn1cblxuLy8gRmxleGlibGUgZ3V0dGVyXG5AZnVuY3Rpb24gZmxleC1ndXR0ZXIoJGNvbnRhaW5lci1jb2x1bW5zOiAkZmctbWF4LWNvbHVtbnMsICRndXR0ZXI6ICRmZy1ndXR0ZXIpIHtcbiAgJGNvbnRhaW5lci13aWR0aDogJGNvbnRhaW5lci1jb2x1bW5zICogJGZnLWNvbHVtbiArICgkY29udGFpbmVyLWNvbHVtbnMgLSAxKSAqICRmZy1ndXR0ZXI7XG4gIEByZXR1cm4gcGVyY2VudGFnZSgkZ3V0dGVyIC8gJGNvbnRhaW5lci13aWR0aCk7XG5cbiAgQHdhcm4gXCJUaGUgZmxleC1ndXR0ZXIgZnVuY3Rpb24gaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IG1ham9yIHZlcnNpb24gcmVsZWFzZVwiO1xufVxuXG5AZnVuY3Rpb24gZ3JpZC13aWR0aCgkbikge1xuICBAcmV0dXJuICRuICogJGd3LWNvbHVtbiArICgkbiAtIDEpICogJGd3LWd1dHRlcjtcblxuICBAd2FybiBcIlRoZSBncmlkLXdpZHRoIGZ1bmN0aW9uIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgbmV4dCBtYWpvciB2ZXJzaW9uIHJlbGVhc2VcIjtcbn1cblxuQGZ1bmN0aW9uIGdvbGRlbi1yYXRpbygkdmFsdWUsICRpbmNyZW1lbnQpIHtcbiAgQHJldHVybiBtb2R1bGFyLXNjYWxlKCRpbmNyZW1lbnQsICR2YWx1ZSwgJHJhdGlvOiAkZ29sZGVuKTtcblxuICBAd2FybiBcIlRoZSBnb2xkZW4tcmF0aW8gZnVuY3Rpb24gaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IG1ham9yIHZlcnNpb24gcmVsZWFzZS4gUGxlYXNlIHVzZSB0aGUgbW9kdWxhci1zY2FsZSBmdW5jdGlvbiwgaW5zdGVhZC5cIjtcbn1cblxuQG1peGluIGJveC1zaXppbmcoJGJveCkge1xuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtc2l6aW5nLCAkYm94LCB3ZWJraXQgbW96IHNwZWMpO1xuXG4gIEB3YXJuIFwiVGhlIGJveC1zaXppbmcgbWl4aW4gaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IG1ham9yIHZlcnNpb24gcmVsZWFzZS4gVGhpcyBwcm9wZXJ0eSBjYW4gbm93IGJlIHVzZWQgdW4tcHJlZml4ZWQuXCI7XG59XG4iLAoJCSIvLyBOZWF0IDEuNy40XG4vLyBodHRwOi8vbmVhdC5ib3VyYm9uLmlvXG4vLyBDb3B5cmlnaHQgMjAxMi0yMDE1IHRob3VnaHRib3QsIGluYy5cbi8vIE1JVCBMaWNlbnNlXG5cbi8vIEhlbHBlcnNcbkBpbXBvcnQgXCJuZWF0LWhlbHBlcnNcIjtcblxuLy8gR3JpZFxuQGltcG9ydCBcImdyaWQvcHJpdmF0ZVwiO1xuQGltcG9ydCBcImdyaWQvYm94LXNpemluZ1wiO1xuQGltcG9ydCBcImdyaWQvb21lZ2FcIjtcbkBpbXBvcnQgXCJncmlkL291dGVyLWNvbnRhaW5lclwiO1xuQGltcG9ydCBcImdyaWQvc3Bhbi1jb2x1bW5zXCI7XG5AaW1wb3J0IFwiZ3JpZC9yb3dcIjtcbkBpbXBvcnQgXCJncmlkL3NoaWZ0XCI7XG5AaW1wb3J0IFwiZ3JpZC9wYWRcIjtcbkBpbXBvcnQgXCJncmlkL2ZpbGwtcGFyZW50XCI7XG5AaW1wb3J0IFwiZ3JpZC9tZWRpYVwiO1xuQGltcG9ydCBcImdyaWQvdG8tZGVwcmVjYXRlXCI7XG5AaW1wb3J0IFwiZ3JpZC92aXN1YWwtZ3JpZFwiO1xuQGltcG9ydCBcImdyaWQvZGlzcGxheS1jb250ZXh0XCI7XG5AaW1wb3J0IFwiZ3JpZC9kaXJlY3Rpb24tY29udGV4dFwiO1xuIiwKCQkiLy8gRnVuY3Rpb25zXG5AaW1wb3J0IFwiZnVuY3Rpb25zL3ByaXZhdGVcIjtcbkBpbXBvcnQgXCJmdW5jdGlvbnMvbmV3LWJyZWFrcG9pbnRcIjtcblxuLy8gU2V0dGluZ3NcbkBpbXBvcnQgXCJzZXR0aW5ncy9ncmlkXCI7XG5AaW1wb3J0IFwic2V0dGluZ3MvdmlzdWFsLWdyaWRcIjtcbkBpbXBvcnQgXCJzZXR0aW5ncy9kaXNhYmxlLXdhcm5pbmdzXCI7XG4iLAoJCSIvLyBOb3QgZnVuY3Rpb24gZm9yIExpYnNhc3MgY29tcGF0aWJpbGl0eVxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MvbGlic2Fzcy9pc3N1ZXMvMzY4XG5AZnVuY3Rpb24gaXMtbm90KCR2YWx1ZSkge1xuICBAcmV0dXJuIGlmKCR2YWx1ZSwgZmFsc2UsIHRydWUpO1xufVxuXG4vLyBDaGVja3MgaWYgYSBudW1iZXIgaXMgZXZlblxuQGZ1bmN0aW9uIGlzLWV2ZW4oJGludCkge1xuICBAcmV0dXJuICRpbnQgJSAyID09IDA7XG59XG5cbi8vIENoZWNrcyBpZiBhbiBlbGVtZW50IGJlbG9uZ3MgdG8gYSBsaXN0IG9yIG5vdFxuQGZ1bmN0aW9uIGJlbG9uZ3MtdG8oJHRlc3RlZC1pdGVtLCAkbGlzdCkge1xuICBAcmV0dXJuIGlzLW5vdChub3QtYmVsb25ncy10bygkdGVzdGVkLWl0ZW0sICRsaXN0KSk7XG59XG5cbkBmdW5jdGlvbiBub3QtYmVsb25ncy10bygkdGVzdGVkLWl0ZW0sICRsaXN0KSB7XG4gIEByZXR1cm4gaXMtbm90KGluZGV4KCRsaXN0LCAkdGVzdGVkLWl0ZW0pKTtcbn1cblxuLy8gQ29udGFpbnMgZGlzcGxheSB2YWx1ZVxuQGZ1bmN0aW9uIGNvbnRhaW5zLWRpc3BsYXktdmFsdWUoJHF1ZXJ5KSB7XG4gIEByZXR1cm4gYmVsb25ncy10byh0YWJsZSwgJHF1ZXJ5KVxuICAgICAgIG9yIGJlbG9uZ3MtdG8oYmxvY2ssICRxdWVyeSlcbiAgICAgICBvciBiZWxvbmdzLXRvKGlubGluZS1ibG9jaywgJHF1ZXJ5KVxuICAgICAgIG9yIGJlbG9uZ3MtdG8oaW5saW5lLCAkcXVlcnkpO1xufVxuXG4vLyBQYXJzZXMgdGhlIGZpcnN0IGFyZ3VtZW50IG9mIHNwYW4tY29sdW1ucygpXG5AZnVuY3Rpb24gY29udGFpbmVyLXNwYW4oJHNwYW46ICRzcGFuKSB7XG4gIEBpZiBsZW5ndGgoJHNwYW4pID09IDMge1xuICAgICRjb250YWluZXItY29sdW1uczogbnRoKCRzcGFuLCAzKTtcbiAgICBAcmV0dXJuICRjb250YWluZXItY29sdW1ucztcbiAgfSBAZWxzZSBpZiBsZW5ndGgoJHNwYW4pID09IDIge1xuICAgICRjb250YWluZXItY29sdW1uczogbnRoKCRzcGFuLCAyKTtcbiAgICBAcmV0dXJuICRjb250YWluZXItY29sdW1ucztcbiAgfVxuXG4gIEByZXR1cm4gJGdyaWQtY29sdW1ucztcbn1cblxuQGZ1bmN0aW9uIGNvbnRhaW5lci1zaGlmdCgkc2hpZnQ6ICRzaGlmdCkge1xuICAkcGFyZW50LWNvbHVtbnM6ICRncmlkLWNvbHVtbnMgIWRlZmF1bHQgIWdsb2JhbDtcblxuICBAaWYgbGVuZ3RoKCRzaGlmdCkgPT0gMyB7XG4gICAgJGNvbnRhaW5lci1jb2x1bW5zOiBudGgoJHNoaWZ0LCAzKTtcbiAgICBAcmV0dXJuICRjb250YWluZXItY29sdW1ucztcbiAgfSBAZWxzZSBpZiBsZW5ndGgoJHNoaWZ0KSA9PSAyIHtcbiAgICAkY29udGFpbmVyLWNvbHVtbnM6IG50aCgkc2hpZnQsIDIpO1xuICAgIEByZXR1cm4gJGNvbnRhaW5lci1jb2x1bW5zO1xuICB9XG5cbiAgQHJldHVybiAkcGFyZW50LWNvbHVtbnM7XG59XG5cbi8vIEdlbmVyYXRlcyBhIHN0cmlwZWQgYmFja2dyb3VuZFxuQGZ1bmN0aW9uIGdyYWRpZW50LXN0b3BzKCRncmlkLWNvbHVtbnMsICRjb2xvcjogJHZpc3VhbC1ncmlkLWNvbG9yKSB7XG4gICR0cmFuc3BhcmVudDogdHJhbnNwYXJlbnQ7XG5cbiAgJGNvbHVtbi13aWR0aDogZmxleC1ncmlkKDEsICRncmlkLWNvbHVtbnMpO1xuICAkZ3V0dGVyLXdpZHRoOiBmbGV4LWd1dHRlcigkZ3JpZC1jb2x1bW5zKTtcbiAgJGNvbHVtbi1vZmZzZXQ6ICRjb2x1bW4td2lkdGg7XG5cbiAgJHZhbHVlczogKCR0cmFuc3BhcmVudCAwLCAkY29sb3IgMCk7XG5cbiAgQGZvciAkaSBmcm9tIDEgdG8gJGdyaWQtY29sdW1ucyoyIHtcbiAgICBAaWYgaXMtZXZlbigkaSkge1xuICAgICAgJHZhbHVlczogYXBwZW5kKCR2YWx1ZXMsICR0cmFuc3BhcmVudCAkY29sdW1uLW9mZnNldCwgY29tbWEpO1xuICAgICAgJHZhbHVlczogYXBwZW5kKCR2YWx1ZXMsICRjb2xvciAkY29sdW1uLW9mZnNldCwgY29tbWEpO1xuICAgICAgJGNvbHVtbi1vZmZzZXQ6ICRjb2x1bW4tb2Zmc2V0ICsgJGNvbHVtbi13aWR0aDtcbiAgICB9IEBlbHNlIHtcbiAgICAgICR2YWx1ZXM6IGFwcGVuZCgkdmFsdWVzLCAkY29sb3IgJGNvbHVtbi1vZmZzZXQsIGNvbW1hKTtcbiAgICAgICR2YWx1ZXM6IGFwcGVuZCgkdmFsdWVzLCAkdHJhbnNwYXJlbnQgJGNvbHVtbi1vZmZzZXQsIGNvbW1hKTtcbiAgICAgICRjb2x1bW4tb2Zmc2V0OiAkY29sdW1uLW9mZnNldCArICRndXR0ZXItd2lkdGg7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkdmFsdWVzO1xufVxuXG4vLyBMYXlvdXQgZGlyZWN0aW9uXG5AZnVuY3Rpb24gZ2V0LWRpcmVjdGlvbigkbGF5b3V0LCAkZGVmYXVsdCkge1xuICAkZGlyZWN0aW9uOiBudWxsO1xuXG4gIEBpZiB0by11cHBlci1jYXNlKCRsYXlvdXQpID09IFwiTFRSXCIgb3IgdG8tdXBwZXItY2FzZSgkbGF5b3V0KSA9PSBcIlJUTFwiIHtcbiAgICAkZGlyZWN0aW9uOiBkaXJlY3Rpb24tZnJvbS1sYXlvdXQoJGxheW91dCk7XG4gIH0gQGVsc2Uge1xuICAgICRkaXJlY3Rpb246IGRpcmVjdGlvbi1mcm9tLWxheW91dCgkZGVmYXVsdCk7XG4gIH1cblxuICBAcmV0dXJuICRkaXJlY3Rpb247XG59XG5cbkBmdW5jdGlvbiBkaXJlY3Rpb24tZnJvbS1sYXlvdXQoJGxheW91dCkge1xuICAkZGlyZWN0aW9uOiBudWxsO1xuXG4gIEBpZiB0by11cHBlci1jYXNlKCRsYXlvdXQpID09IFwiTFRSXCIge1xuICAgICRkaXJlY3Rpb246IHJpZ2h0O1xuICB9IEBlbHNlIHtcbiAgICAkZGlyZWN0aW9uOiBsZWZ0O1xuICB9XG5cbiAgQHJldHVybiAkZGlyZWN0aW9uO1xufVxuXG5AZnVuY3Rpb24gZ2V0LW9wcG9zaXRlLWRpcmVjdGlvbigkZGlyZWN0aW9uKSB7XG4gICRvcHBvc2l0ZS1kaXJlY3Rpb246IGxlZnQ7XG5cbiAgQGlmICRkaXJlY3Rpb24gPT0gXCJsZWZ0XCIge1xuICAgICRvcHBvc2l0ZS1kaXJlY3Rpb246IHJpZ2h0O1xuICB9XG5cbiAgQHJldHVybiAkb3Bwb3NpdGUtZGlyZWN0aW9uO1xufVxuIiwKCQkiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gUmV0dXJucyBhIG1lZGlhIGNvbnRleHQgKG1lZGlhIHF1ZXJ5IC8gZ3JpZCBjb250ZXh0KSB0aGF0IGNhbiBiZSBzdG9yZWQgaW4gYSB2YXJpYWJsZSBhbmQgcGFzc2VkIHRvIGBtZWRpYSgpYCBhcyBhIHNpbmdsZS1rZXl3b3JkIGFyZ3VtZW50LiBNZWRpYSBjb250ZXh0cyBkZWZpbmVkIHVzaW5nIGBuZXctYnJlYWtwb2ludGAgYXJlIHVzZWQgYnkgdGhlIHZpc3VhbCBncmlkLCBhcyBsb25nIGFzIHRoZXkgYXJlIGRlZmluZWQgYmVmb3JlIGltcG9ydGluZyBOZWF0LlxuLy8vXG4vLy8gQHBhcmFtIHtMaXN0fSAkcXVlcnlcbi8vLyAgIEEgbGlzdCBvZiBtZWRpYSBxdWVyeSBmZWF0dXJlcyBhbmQgdmFsdWVzLiBFYWNoIGAkZmVhdHVyZWAgc2hvdWxkIGhhdmUgYSBjb3JyZXNwb25kaW5nIGAkdmFsdWVgLlxuLy8vXG4vLy8gICBJZiB0aGVyZSBpcyBvbmx5IGEgc2luZ2xlIGAkdmFsdWVgIGluIGAkcXVlcnlgLCBgJGRlZmF1bHQtZmVhdHVyZWAgaXMgZ29pbmcgdG8gYmUgdXNlZC5cbi8vL1xuLy8vICAgVGhlIG51bWJlciBvZiB0b3RhbCBjb2x1bW5zIGluIHRoZSBncmlkIGNhbiBiZSBzZXQgYnkgcGFzc2luZyBgJGNvbHVtbnNgIGF0IHRoZSBlbmQgb2YgdGhlIGxpc3QgKG92ZXJyaWRlcyBgJHRvdGFsLWNvbHVtbnNgKS4gRm9yIGEgbGlzdCBvZiB2YWxpZCB2YWx1ZXMgZm9yIGAkZmVhdHVyZWAsIGNsaWNrIFtoZXJlXShodHRwOi8vd3d3LnczLm9yZy9UUi9jc3MzLW1lZGlhcXVlcmllcy8jbWVkaWExKS5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyICh1bml0bGVzcyl9ICR0b3RhbC1jb2x1bW5zIFskZ3JpZC1jb2x1bW5zXVxuLy8vICAgLSBOdW1iZXIgb2YgY29sdW1ucyB0byB1c2UgaW4gdGhlIG5ldyBncmlkIGNvbnRleHQuIENhbiBiZSBzZXQgYXMgYSBzaG9ydGhhbmQgaW4gdGhlIGZpcnN0IHBhcmFtZXRlci5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgJG1vYmlsZTogbmV3LWJyZWFrcG9pbnQobWF4LXdpZHRoIDQ4MHB4IDQpO1xuLy8vXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIG1lZGlhKCRtb2JpbGUpIHtcbi8vLyAgICAgICBAaW5jbHVkZSBzcGFuLWNvbHVtbnMoNCk7XG4vLy8gICAgIH1cbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcbi8vLyAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4vLy8gICAgIC5lbGVtZW50IHtcbi8vLyAgICAgICBkaXNwbGF5OiBibG9jaztcbi8vLyAgICAgICBmbG9hdDogbGVmdDtcbi8vLyAgICAgICBtYXJnaW4tcmlnaHQ6IDcuNDIyOTclO1xuLy8vICAgICAgIHdpZHRoOiAxMDAlO1xuLy8vICAgICB9XG4vLy8gICAgIC5lbGVtZW50Omxhc3QtY2hpbGQge1xuLy8vICAgICAgIG1hcmdpbi1yaWdodDogMDtcbi8vLyAgICAgfVxuLy8vICAgfVxuXG5AZnVuY3Rpb24gbmV3LWJyZWFrcG9pbnQoJHF1ZXJ5OiAkZmVhdHVyZSAkdmFsdWUgJGNvbHVtbnMsICR0b3RhbC1jb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gIEBpZiBsZW5ndGgoJHF1ZXJ5KSA9PSAxIHtcbiAgICAkcXVlcnk6ICRkZWZhdWx0LWZlYXR1cmUgbnRoKCRxdWVyeSwgMSkgJHRvdGFsLWNvbHVtbnM7XG4gIH0gQGVsc2UgaWYgaXMtZXZlbihsZW5ndGgoJHF1ZXJ5KSkge1xuICAgICRxdWVyeTogYXBwZW5kKCRxdWVyeSwgJHRvdGFsLWNvbHVtbnMpO1xuICB9XG5cbiAgQGlmIGlzLW5vdChiZWxvbmdzLXRvKCRxdWVyeSwgJHZpc3VhbC1ncmlkLWJyZWFrcG9pbnRzKSkge1xuICAgICR2aXN1YWwtZ3JpZC1icmVha3BvaW50czogYXBwZW5kKCR2aXN1YWwtZ3JpZC1icmVha3BvaW50cywgJHF1ZXJ5LCBjb21tYSkgIWdsb2JhbDtcbiAgfVxuXG4gIEByZXR1cm4gJHF1ZXJ5O1xufVxuIiwKCQkiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gU2V0cyB0aGUgcmVsYXRpdmUgd2lkdGggb2YgYSBzaW5nbGUgZ3JpZCBjb2x1bW4uIFRoZSB1bml0IHVzZWQgc2hvdWxkIGJlIHRoZSBzYW1lIG9uZSB1c2VkIHRvIGRlZmluZSBgJGd1dHRlcmAuIFRvIGxlYXJuIG1vcmUgYWJvdXQgYG1vZHVsYXItc2NhbGUoKWAgc2VlIFtCb3VyYm9uIGRvY3NdKGh0dHA6Ly9ib3VyYm9uLmlvL2RvY3MvI21vZHVsYXItc2NhbGUpLiBTZXQgd2l0aCBhIGAhZ2xvYmFsYCBmbGFnLlxuLy8vXG4vLy8gQHR5cGUgTnVtYmVyIChVbml0KVxuXG4kY29sdW1uOiBtb2R1bGFyLXNjYWxlKDMsIDFlbSwgJGdvbGRlbikgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIHRoZSByZWxhdGl2ZSB3aWR0aCBvZiBhIHNpbmdsZSBncmlkIGd1dHRlci4gVGhlIHVuaXQgdXNlZCBzaG91bGQgYmUgdGhlIHNhbWUgb25lIHVzZWQgdG8gZGVmaW5lIGAkY29sdW1uYC4gVG8gbGVhcm4gbW9yZSBhYm91dCBgbW9kdWxhci1zY2FsZSgpYCBzZWUgW0JvdXJib24gZG9jc10oaHR0cDovL2JvdXJib24uaW8vZG9jcy8jbW9kdWxhci1zY2FsZSkuIFNldCB3aXRoIHRoZSBgIWdsb2JhbGAgZmxhZy5cbi8vL1xuLy8vIEB0eXBlIE51bWJlciAoVW5pdClcblxuJGd1dHRlcjogbW9kdWxhci1zY2FsZSgxLCAxZW0sICRnb2xkZW4pICFkZWZhdWx0O1xuXG4vLy8gU2V0cyB0aGUgdG90YWwgbnVtYmVyIG9mIGNvbHVtbnMgaW4gdGhlIGdyaWQuIEl0cyB2YWx1ZSBjYW4gYmUgb3ZlcnJpZGRlbiBpbnNpZGUgYSBtZWRpYSBxdWVyeSB1c2luZyB0aGUgYG1lZGlhKClgIG1peGluLiBTZXQgd2l0aCB0aGUgYCFnbG9iYWxgIGZsYWcuXG4vLy9cbi8vLyBAdHlwZSBOdW1iZXIgKFVuaXRsZXNzKVxuXG4kZ3JpZC1jb2x1bW5zOiAxMiAhZGVmYXVsdDtcblxuLy8vIFNldHMgdGhlIG1heC13aWR0aCBwcm9wZXJ0eSBvZiB0aGUgZWxlbWVudCB0aGF0IGluY2x1ZGVzIGBvdXRlci1jb250YWluZXIoKWAuIFNldCB3aXRoIHRoZSBgIWdsb2JhbGAgZmxhZy5cbi8vL1xuLy8vIEB0eXBlIE51bWJlciAoVW5pdClcbi8vL1xuJG1heC13aWR0aDogMTIwMHB4ICFkZWZhdWx0O1xuXG4vLy8gV2hlbiBzZXQgdG8gdHJ1ZSwgaXQgc2V0cyB0aGUgYm94LXNpemluZyBwcm9wZXJ0eSBvZiBhbGwgZWxlbWVudHMgdG8gYGJvcmRlci1ib3hgLiBTZXQgd2l0aCBhIGAhZ2xvYmFsYCBmbGFnLlxuLy8vXG4vLy8gQHR5cGUgQm9vbFxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgaHRtbCB7XG4vLy8gICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cbi8vL1xuLy8vICAgKiwgKjo6YWZ0ZXIsICo6OmJlZm9yZSB7XG4vLy8gICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG4vLy8gICB9XG5cbiRib3JkZXItYm94LXNpemluZzogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgdGhlIGRlZmF1bHQgW21lZGlhIGZlYXR1cmVdKGh0dHA6Ly93d3cudzMub3JnL1RSL2NzczMtbWVkaWFxdWVyaWVzLyNtZWRpYSkgdGhhdCBgbWVkaWEoKWAgYW5kIGBuZXctYnJlYWtwb2ludCgpYCByZXZlcnQgdG8gd2hlbiBvbmx5IGEgYnJlYWtwb2ludCB2YWx1ZSBpcyBwYXNzZWQuIFNldCB3aXRoIGEgYCFnbG9iYWxgIGZsYWcuXG4vLy9cbi8vLyBAdHlwZSBTdHJpbmdcblxuJGRlZmF1bHQtZmVhdHVyZTogbWluLXdpZHRoOyAvLyBEZWZhdWx0IEBtZWRpYSBmZWF0dXJlIGZvciB0aGUgYnJlYWtwb2ludCgpIG1peGluXG5cbi8vL1NldHMgdGhlIGRlZmF1bHQgbGF5b3V0IGRpcmVjdGlvbiBvZiB0aGUgZ3JpZC4gQ2FuIGJlIGBMVFJgIG9yIGBSVExgLiBTZXQgd2l0aCBhIGAhZ2xvYmFsYCBmbGFnLlxuLy8vXG4vLy9AdHlwZSBTdHJpbmdcblxuJGRlZmF1bHQtbGF5b3V0LWRpcmVjdGlvbjogTFRSICFkZWZhdWx0O1xuIiwKCQkiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gRGlzcGxheXMgdGhlIHZpc3VhbCBncmlkIHdoZW4gc2V0IHRvIHRydWUuIFRoZSBvdmVybGFpZCBncmlkIG1heSBiZSBmZXcgcGl4ZWxzIG9mZiBkZXBlbmRpbmcgb24gdGhlIGJyb3dzZXIncyByZW5kZXJpbmcgZW5naW5lIGFuZCBwaXhlbCByb3VuZGluZyBhbGdvcml0aG0uIFNldCB3aXRoIHRoZSBgIWdsb2JhbGAgZmxhZy5cbi8vL1xuLy8vIEB0eXBlIEJvb2xcblxuJHZpc3VhbC1ncmlkOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgdGhlIHZpc3VhbCBncmlkIGNvbG9yLiBTZXQgd2l0aCBgIWdsb2JhbGAgZmxhZy5cbi8vL1xuLy8vIEB0eXBlIENvbG9yXG5cbiR2aXN1YWwtZ3JpZC1jb2xvcjogI2VlZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgdGhlIGB6LWluZGV4YCBwcm9wZXJ0eSBvZiB0aGUgdmlzdWFsIGdyaWQuIENhbiBiZSBgYmFja2AgKGJlaGluZCBjb250ZW50KSBvciBgZnJvbnRgIChpbiBmcm9udCBvZiBjb250ZW50KS4gU2V0IHdpdGggYCFnbG9iYWxgIGZsYWcuXG4vLy9cbi8vLyBAdHlwZSBTdHJpbmdcblxuJHZpc3VhbC1ncmlkLWluZGV4OiBiYWNrICFkZWZhdWx0O1xuXG4vLy8gU2V0cyB0aGUgb3BhY2l0eSBwcm9wZXJ0eSBvZiB0aGUgdmlzdWFsIGdyaWQuIFNldCB3aXRoIGAhZ2xvYmFsYCBmbGFnLlxuLy8vXG4vLy8gQHR5cGUgTnVtYmVyICh1bml0bGVzcylcblxuJHZpc3VhbC1ncmlkLW9wYWNpdHk6IDAuNCAhZGVmYXVsdDtcblxuJHZpc3VhbC1ncmlkLWJyZWFrcG9pbnRzOiAoKSAhZGVmYXVsdDtcbiIsCgkJIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIERpc2FibGUgYWxsIGRlcHJlY2F0aW9uIHdhcm5pbmdzLiBEZWZhdWx0cyB0byBgZmFsc2VgLiBTZXQgd2l0aCBhIGAhZ2xvYmFsYCBmbGFnLlxuLy8vXG4vLy8gQHR5cGUgQm9vbFxuXG4kZGlzYWJsZS13YXJuaW5nczogZmFsc2UgIWRlZmF1bHQ7XG5cbkBtaXhpbiAtbmVhdC13YXJuKCRtZXNzYWdlKSB7XG4gIEBpZiAkZGlzYWJsZS13YXJuaW5ncyA9PSBmYWxzZSB7XG4gICAgQHdhcm4gXCIjeyRtZXNzYWdlfVwiO1xuICB9XG59XG4iLAoJCSIkcGFyZW50LWNvbHVtbnM6ICRncmlkLWNvbHVtbnMgIWRlZmF1bHQ7XG4kZmctY29sdW1uOiAkY29sdW1uO1xuJGZnLWd1dHRlcjogJGd1dHRlcjtcbiRmZy1tYXgtY29sdW1uczogJGdyaWQtY29sdW1ucztcbiRjb250YWluZXItZGlzcGxheS10YWJsZTogZmFsc2UgIWRlZmF1bHQ7XG4kbGF5b3V0LWRpcmVjdGlvbjogTFRSICFkZWZhdWx0O1xuXG5AZnVuY3Rpb24gZmxleC1ncmlkKCRjb2x1bW5zLCAkY29udGFpbmVyLWNvbHVtbnM6ICRmZy1tYXgtY29sdW1ucykge1xuICAkd2lkdGg6ICRjb2x1bW5zICogJGZnLWNvbHVtbiArICgkY29sdW1ucyAtIDEpICogJGZnLWd1dHRlcjtcbiAgJGNvbnRhaW5lci13aWR0aDogJGNvbnRhaW5lci1jb2x1bW5zICogJGZnLWNvbHVtbiArICgkY29udGFpbmVyLWNvbHVtbnMgLSAxKSAqICRmZy1ndXR0ZXI7XG4gIEByZXR1cm4gcGVyY2VudGFnZSgkd2lkdGggLyAkY29udGFpbmVyLXdpZHRoKTtcbn1cblxuQGZ1bmN0aW9uIGZsZXgtZ3V0dGVyKCRjb250YWluZXItY29sdW1uczogJGZnLW1heC1jb2x1bW5zLCAkZ3V0dGVyOiAkZmctZ3V0dGVyKSB7XG4gICRjb250YWluZXItd2lkdGg6ICRjb250YWluZXItY29sdW1ucyAqICRmZy1jb2x1bW4gKyAoJGNvbnRhaW5lci1jb2x1bW5zIC0gMSkgKiAkZmctZ3V0dGVyO1xuICBAcmV0dXJuIHBlcmNlbnRhZ2UoJGd1dHRlciAvICRjb250YWluZXItd2lkdGgpO1xufVxuXG5AZnVuY3Rpb24gZ3JpZC13aWR0aCgkbikge1xuICBAcmV0dXJuICRuICogJGd3LWNvbHVtbiArICgkbiAtIDEpICogJGd3LWd1dHRlcjtcbn1cblxuQGZ1bmN0aW9uIGdldC1wYXJlbnQtY29sdW1ucygkY29sdW1ucykge1xuICBAaWYgJGNvbHVtbnMgIT0gJGdyaWQtY29sdW1ucyB7XG4gICAgJHBhcmVudC1jb2x1bW5zOiAkY29sdW1ucyAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkcGFyZW50LWNvbHVtbnM6ICRncmlkLWNvbHVtbnMgIWdsb2JhbDtcbiAgfVxuXG4gIEByZXR1cm4gJHBhcmVudC1jb2x1bW5zO1xufVxuXG5AZnVuY3Rpb24gaXMtZGlzcGxheS10YWJsZSgkY29udGFpbmVyLWlzLWRpc3BsYXktdGFibGUsICRkaXNwbGF5KSB7XG4gIEByZXR1cm4gJGNvbnRhaW5lci1pcy1kaXNwbGF5LXRhYmxlID09IHRydWUgb3IgJGRpc3BsYXkgPT0gdGFibGU7XG59XG4iLAoJCSJAY2hhcnNldCBcIlVURi04XCI7XG5cbkBpZiAkYm9yZGVyLWJveC1zaXppbmcgPT0gdHJ1ZSB7XG4gIGh0bWwgeyAvLyBodHRwOi8vYml0Lmx5LzFxazJ0VlJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG5cbiAgKiB7XG4gICAgJixcbiAgICAmOjphZnRlcixcbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm94LXNpemluZzogaW5oZXJpdDtcbiAgICB9XG4gIH1cbn1cbiIsCgkJIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFJlbW92ZXMgdGhlIGVsZW1lbnQncyBndXR0ZXIgbWFyZ2luLCByZWdhcmRsZXNzIG9mIGl0cyBwb3NpdGlvbiBpbiB0aGUgZ3JpZCBoaWVyYXJjaHkgb3IgZGlzcGxheSBwcm9wZXJ0eS4gSXQgY2FuIHRhcmdldCBhIHNwZWNpZmljIGVsZW1lbnQsIG9yIGV2ZXJ5IGBudGgtY2hpbGRgIG9jY3VycmVuY2UuIFdvcmtzIG9ubHkgd2l0aCBgYmxvY2tgIGxheW91dHMuXG4vLy9cbi8vLyBAcGFyYW0ge0xpc3R9ICRxdWVyeSBbYmxvY2tdXG4vLy8gICBMaXN0IG9mIGFyZ3VtZW50cy4gU3VwcG9ydGVkIGFyZ3VtZW50cyBhcmUgYG50aC1jaGlsZGAgc2VsZWN0b3JzICh0YXJnZXRzIGEgc3BlY2lmaWMgcHNldWRvIGVsZW1lbnQpIGFuZCBgYXV0b2AgKHRhcmdldHMgYGxhc3QtY2hpbGRgKS5cbi8vL1xuLy8vICAgV2hlbiBwYXNzZWQgYW4gYG50aC1jaGlsZGAgYXJndW1lbnQgb2YgdHlwZSBgKm5gIHdpdGggYGJsb2NrYCBkaXNwbGF5LCB0aGUgb21lZ2EgbWl4aW4gYXV0b21hdGljYWxseSBhZGRzIGEgY2xlYXIgdG8gdGhlIGAqbisxYCB0aCBlbGVtZW50LiBOb3RlIHRoYXQgY29tcG9zaXRlIGFyZ3VtZW50cyBzdWNoIGFzIGAybisxYCBkbyBub3Qgc3VwcG9ydCB0aGlzIGZlYXR1cmUuXG4vLy9cbi8vLyAgICoqRGVwcmVjYXRpb24gd2FybmluZyoqOiBUaGUgb21lZ2EgbWl4aW4gd2lsbCBubyBsb25nZXIgdGFrZSBhIGAkZGlyZWN0aW9uYCBhcmd1bWVudC4gVG8gY2hhbmdlIHRoZSBsYXlvdXQgZGlyZWN0aW9uLCB1c2UgYHJvdygkZGlyZWN0aW9uKWAgb3Igc2V0IGAkZGVmYXVsdC1sYXlvdXQtZGlyZWN0aW9uYCBpbnN0ZWFkLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIG9tZWdhO1xuLy8vICAgfVxuLy8vXG4vLy8gICAubnRoLWVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBvbWVnYSg0bik7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIG1hcmdpbi1yaWdodDogMDtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLm50aC1lbGVtZW50Om50aC1jaGlsZCg0bikge1xuLy8vICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC5udGgtZWxlbWVudDpudGgtY2hpbGQoNG4rMSkge1xuLy8vICAgICBjbGVhcjogbGVmdDtcbi8vLyAgIH1cblxuQG1peGluIG9tZWdhKCRxdWVyeTogYmxvY2ssICRkaXJlY3Rpb246IGRlZmF1bHQpIHtcbiAgJHRhYmxlOiBiZWxvbmdzLXRvKHRhYmxlLCAkcXVlcnkpO1xuICAkYXV0bzogYmVsb25ncy10byhhdXRvLCAkcXVlcnkpO1xuXG4gIEBpZiAkZGlyZWN0aW9uICE9IGRlZmF1bHQge1xuICAgIEBpbmNsdWRlIC1uZWF0LXdhcm4oXCJUaGUgb21lZ2EgbWl4aW4gd2lsbCBubyBsb25nZXIgdGFrZSBhICRkaXJlY3Rpb24gYXJndW1lbnQuIFRvIGNoYW5nZSB0aGUgbGF5b3V0IGRpcmVjdGlvbiwgdXNlIHRoZSBkaXJlY3Rpb24oKXsuLi59IG1peGluLlwiKTtcbiAgfSBAZWxzZSB7XG4gICAgJGRpcmVjdGlvbjogZ2V0LWRpcmVjdGlvbigkbGF5b3V0LWRpcmVjdGlvbiwgJGRlZmF1bHQtbGF5b3V0LWRpcmVjdGlvbik7XG4gIH1cblxuICBAaWYgJHRhYmxlIHtcbiAgICBAaW5jbHVkZSAtbmVhdC13YXJuKFwiVGhlIG9tZWdhIG1peGluIG5vIGxvbmdlciByZW1vdmVzIHBhZGRpbmcgaW4gdGFibGUgbGF5b3V0cy5cIik7XG4gIH1cblxuICBAaWYgbGVuZ3RoKCRxdWVyeSkgPT0gMSB7XG4gICAgQGlmICRhdXRvIHtcbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi0jeyRkaXJlY3Rpb259OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBlbHNlIGlmIGNvbnRhaW5zLWRpc3BsYXktdmFsdWUoJHF1ZXJ5KSBhbmQgJHRhYmxlID09IGZhbHNlIHtcbiAgICAgIG1hcmdpbi0jeyRkaXJlY3Rpb259OiAwO1xuICAgIH1cblxuICAgIEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIG50aC1jaGlsZCgkcXVlcnksICRkaXJlY3Rpb24pO1xuICAgIH1cbiAgfSBAZWxzZSBpZiBsZW5ndGgoJHF1ZXJ5KSA9PSAyIHtcbiAgICBAaWYgJGF1dG8ge1xuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLSN7JGRpcmVjdGlvbn06IDA7XG4gICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBudGgtY2hpbGQobnRoKCRxdWVyeSwgMSksICRkaXJlY3Rpb24pO1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGluY2x1ZGUgLW5lYXQtd2FybihcIlRvbyBtYW55IGFyZ3VtZW50cyBwYXNzZWQgdG8gdGhlIG9tZWdhKCkgbWl4aW4uXCIpO1xuICB9XG59XG5cbkBtaXhpbiBudGgtY2hpbGQoJHF1ZXJ5LCAkZGlyZWN0aW9uKSB7XG4gICRvcHBvc2l0ZS1kaXJlY3Rpb246IGdldC1vcHBvc2l0ZS1kaXJlY3Rpb24oJGRpcmVjdGlvbik7XG5cbiAgJjpudGgtY2hpbGQoI3skcXVlcnl9KSB7XG4gICAgbWFyZ2luLSN7JGRpcmVjdGlvbn06IDA7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkcXVlcnkpID09IG51bWJlciBhbmQgdW5pdCgkcXVlcnkpID09IFwiblwiIHtcbiAgICAmOm50aC1jaGlsZCgjeyRxdWVyeX0rMSkge1xuICAgICAgY2xlYXI6ICRvcHBvc2l0ZS1kaXJlY3Rpb247XG4gICAgfVxuICB9XG59XG4iLAoJCSJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBNYWtlcyBhbiBlbGVtZW50IGEgb3V0ZXIgY29udGFpbmVyIGJ5IGNlbnRlcmluZyBpdCBpbiB0aGUgdmlld3BvcnQsIGNsZWFyaW5nIGl0cyBmbG9hdHMsIGFuZCBzZXR0aW5nIGl0cyBgbWF4LXdpZHRoYC5cbi8vLyBBbHRob3VnaCBvcHRpb25hbCwgdXNpbmcgYG91dGVyLWNvbnRhaW5lcmAgaXMgcmVjb21tZW5kZWQuIFRoZSBtaXhpbiBjYW4gYmUgY2FsbGVkIG9uIG1vcmUgdGhhbiBvbmUgZWxlbWVudCBwZXIgcGFnZSwgYXMgbG9uZyBhcyB0aGV5IGFyZSBub3QgbmVzdGVkLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXIgW3VuaXRdfSAkbG9jYWwtbWF4LXdpZHRoIFskbWF4LXdpZHRoXVxuLy8vICAgTWF4IHdpZHRoIHRvIGJlIGFwcGxpZWQgdG8gdGhlIGVsZW1lbnQuIENhbiBiZSBhIHBlcmNlbnRhZ2Ugb3IgYSBtZWFzdXJlLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIG91dGVyLWNvbnRhaW5lcigxMDAlKTtcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgKnpvb206IDE7XG4vLy8gICAgIG1heC13aWR0aDogMTAwJTtcbi8vLyAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4vLy8gICAgIG1hcmdpbi1yaWdodDogYXV0bztcbi8vLyAgIH1cbi8vL1xuLy8vICAgLmVsZW1lbnQ6YmVmb3JlLCAuZWxlbWVudDphZnRlciB7XG4vLy8gICAgIGNvbnRlbnQ6IFwiIFwiO1xuLy8vICAgICBkaXNwbGF5OiB0YWJsZTtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLmVsZW1lbnQ6YWZ0ZXIge1xuLy8vICAgICBjbGVhcjogYm90aDtcbi8vLyAgIH1cblxuQG1peGluIG91dGVyLWNvbnRhaW5lcigkbG9jYWwtbWF4LXdpZHRoOiAkbWF4LXdpZHRoKSB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBtYXgtd2lkdGg6ICRsb2NhbC1tYXgtd2lkdGg7XG4gIG1hcmdpbjoge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IGF1dG87XG4gIH1cbn1cbiIsCgkJIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFNwZWNpZmllcyB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgYW4gZWxlbWVudCBzaG91bGQgc3Bhbi4gSWYgdGhlIHNlbGVjdG9yIGlzIG5lc3RlZCB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgb2YgaXRzIHBhcmVudCBlbGVtZW50IHNob3VsZCBiZSBwYXNzZWQgYXMgYW4gYXJndW1lbnQgYXMgd2VsbC5cbi8vL1xuLy8vIEBwYXJhbSB7TGlzdH0gJHNwYW5cbi8vLyAgIEEgbGlzdCBjb250YWluaW5nIGAkY29sdW1uc2AsIHRoZSB1bml0bGVzcyBudW1iZXIgb2YgY29sdW1ucyB0aGUgZWxlbWVudCBzcGFucyAocmVxdWlyZWQpLCBhbmQgYCRjb250YWluZXItY29sdW1uc2AsIHRoZSBudW1iZXIgb2YgY29sdW1ucyB0aGUgcGFyZW50IGVsZW1lbnQgc3BhbnMgKG9wdGlvbmFsKS5cbi8vL1xuLy8vICAgSWYgb25seSBvbmUgdmFsdWUgaXMgcGFzc2VkLCBpdCBpcyBhc3N1bWVkIHRoYXQgaXQncyBgJGNvbHVtbnNgIGFuZCB0aGF0IHRoYXQgYCRjb250YWluZXItY29sdW1uc2AgaXMgZXF1YWwgdG8gYCRncmlkLWNvbHVtbnNgLCB0aGUgdG90YWwgbnVtYmVyIG9mIGNvbHVtbnMgaW4gdGhlIGdyaWQuXG4vLy9cbi8vLyAgIFRoZSB2YWx1ZXMgY2FuIGJlIHNlcGFyYXRlZCB3aXRoIGFueSBzdHJpbmcgc3VjaCBhcyBgb2ZgLCBgL2AsIGV0Yy5cbi8vL1xuLy8vICAgYCRjb2x1bW5zYCBhbHNvIGFjY2VwdHMgZGVjaW1hbHMgZm9yIHdoZW4gaXQncyBuZWNlc3NhcnkgdG8gYnJlYWsgb3V0IG9mIHRoZSBzdGFuZGFyZCBncmlkLiBFLmcuIFBhc3NpbmcgYDIuNGAgaW4gYSBzdGFuZGFyZCAxMiBjb2x1bW4gZ3JpZCB3aWxsIGRpdmlkZSB0aGUgcm93IGludG8gNSBjb2x1bW5zLlxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRkaXNwbGF5IFtibG9ja11cbi8vLyAgIFNldHMgdGhlIGRpc3BsYXkgcHJvcGVydHkgb2YgdGhlIGVsZW1lbnQuIEJ5IGRlZmF1bHQgaXQgc2V0cyB0aGUgZGlzcGxheSBwcm9wZXJ0eSBvZiB0aGUgZWxlbWVudCB0byBgYmxvY2tgLlxuLy8vXG4vLy8gICBJZiBwYXNzZWQgYGJsb2NrLWNvbGxhcHNlYCwgaXQgYWxzbyByZW1vdmVzIHRoZSBtYXJnaW4gZ3V0dGVyIGJ5IGFkZGluZyBpdCB0byB0aGUgZWxlbWVudCB3aWR0aC5cbi8vL1xuLy8vICAgSWYgcGFzc2VkIGB0YWJsZWAsIGl0IHNldHMgdGhlIGRpc3BsYXkgcHJvcGVydHkgdG8gYHRhYmxlLWNlbGxgIGFuZCBjYWxjdWxhdGVzIHRoZSB3aWR0aCBvZiB0aGUgZWxlbWVudCB3aXRob3V0IHRha2luZyBndXR0ZXJzIGludG8gY29uc2lkZXJhdGlvbi4gVGhlIHJlc3VsdCBkb2VzIG5vdCBhbGlnbiB3aXRoIHRoZSBibG9jay1iYXNlZCBncmlkLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIHNwYW4tY29sdW1ucyg2KTtcbi8vL1xuLy8vICAgIC5uZXN0ZWQtZWxlbWVudCB7XG4vLy8gICAgICBAaW5jbHVkZSBzcGFuLWNvbHVtbnMoMiBvZiA2KTtcbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgZGlzcGxheTogYmxvY2s7XG4vLy8gICAgIGZsb2F0OiBsZWZ0O1xuLy8vICAgICBtYXJnaW4tcmlnaHQ6IDIuMzU3NjUlO1xuLy8vICAgICB3aWR0aDogNDguODIxMTclO1xuLy8vICAgfVxuLy8vXG4vLy8gICAuZWxlbWVudDpsYXN0LWNoaWxkIHtcbi8vLyAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuLy8vICAgfVxuLy8vXG4vLy8gICAuZWxlbWVudCAubmVzdGVkLWVsZW1lbnQge1xuLy8vICAgICBkaXNwbGF5OiBibG9jaztcbi8vLyAgICAgZmxvYXQ6IGxlZnQ7XG4vLy8gICAgIG1hcmdpbi1yaWdodDogNC44MjkxNiU7XG4vLy8gICAgIHdpZHRoOiAzMC4xMTM4OSU7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC5lbGVtZW50IC5uZXN0ZWQtZWxlbWVudDpsYXN0LWNoaWxkIHtcbi8vLyAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuLy8vICAgfVxuXG5AbWl4aW4gc3Bhbi1jb2x1bW5zKCRzcGFuOiAkY29sdW1ucyBvZiAkY29udGFpbmVyLWNvbHVtbnMsICRkaXNwbGF5OiBibG9jaykge1xuICAkY29sdW1uczogbnRoKCRzcGFuLCAxKTtcbiAgJGNvbnRhaW5lci1jb2x1bW5zOiBjb250YWluZXItc3Bhbigkc3Bhbik7XG5cbiAgJHBhcmVudC1jb2x1bW5zOiBnZXQtcGFyZW50LWNvbHVtbnMoJGNvbnRhaW5lci1jb2x1bW5zKSAhZ2xvYmFsO1xuXG4gICRkaXJlY3Rpb246IGdldC1kaXJlY3Rpb24oJGxheW91dC1kaXJlY3Rpb24sICRkZWZhdWx0LWxheW91dC1kaXJlY3Rpb24pO1xuICAkb3Bwb3NpdGUtZGlyZWN0aW9uOiBnZXQtb3Bwb3NpdGUtZGlyZWN0aW9uKCRkaXJlY3Rpb24pO1xuXG4gICRkaXNwbGF5LXRhYmxlOiBpcy1kaXNwbGF5LXRhYmxlKCRjb250YWluZXItZGlzcGxheS10YWJsZSwgJGRpc3BsYXkpO1xuXG4gIEBpZiAkZGlzcGxheS10YWJsZSAge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoJGNvbHVtbnMgLyAkY29udGFpbmVyLWNvbHVtbnMpO1xuICB9IEBlbHNlIHtcbiAgICBmbG9hdDogI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTtcblxuICAgIEBpZiAkZGlzcGxheSAhPSBuby1kaXNwbGF5IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIEBpZiAkZGlzcGxheSA9PSBjb2xsYXBzZSB7XG4gICAgICBAaW5jbHVkZSAtbmVhdC13YXJuKFwiVGhlICdjb2xsYXBzZScgYXJndW1lbnQgd2lsbCBiZSBkZXByZWNhdGVkLiBVc2UgJ2Jsb2NrLWNvbGxhcHNlJyBpbnN0ZWFkLlwiKTtcbiAgICB9XG5cbiAgICBAaWYgJGRpc3BsYXkgPT0gY29sbGFwc2Ugb3IgJGRpc3BsYXkgPT0gYmxvY2stY29sbGFwc2Uge1xuICAgICAgd2lkdGg6IGZsZXgtZ3JpZCgkY29sdW1ucywgJGNvbnRhaW5lci1jb2x1bW5zKSArIGZsZXgtZ3V0dGVyKCRjb250YWluZXItY29sdW1ucyk7XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIHdpZHRoOiBmbGV4LWdyaWQoJGNvbHVtbnMsICRjb250YWluZXItY29sdW1ucyk7XG4gICAgICB9XG5cbiAgICB9IEBlbHNlIHtcbiAgICAgIG1hcmdpbi0jeyRkaXJlY3Rpb259OiBmbGV4LWd1dHRlcigkY29udGFpbmVyLWNvbHVtbnMpO1xuICAgICAgd2lkdGg6IGZsZXgtZ3JpZCgkY29sdW1ucywgJGNvbnRhaW5lci1jb2x1bW5zKTtcblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLSN7JGRpcmVjdGlvbn06IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLAoJCSJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBEZXNpZ25hdGVzIHRoZSBlbGVtZW50IGFzIGEgcm93IG9mIGNvbHVtbnMgaW4gdGhlIGdyaWQgbGF5b3V0LiBJdCBjbGVhcnMgdGhlIGZsb2F0cyBvbiB0aGUgZWxlbWVudCBhbmQgc2V0cyBpdHMgZGlzcGxheSBwcm9wZXJ0eS4gUm93cyBjYW4ndCBiZSBuZXN0ZWQsIGJ1dCB0aGVyZSBjYW4gYmUgbW9yZSB0aGFuIG9uZSByb3cgZWxlbWVudOKAlHdpdGggZGlmZmVyZW50IGRpc3BsYXkgcHJvcGVydGllc+KAlHBlciBsYXlvdXQuXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGRpc3BsYXkgW2RlZmF1bHRdXG4vLy8gIFNldHMgdGhlIGRpc3BsYXkgcHJvcGVydHkgb2YgdGhlIGVsZW1lbnQgYW5kIHRoZSBkaXNwbGF5IGNvbnRleHQgdGhhdCB3aWxsIGJlIHVzZWQgYnkgaXRzIGNoaWxkcmVuLiBDYW4gYmUgYGJsb2NrYCBvciBgdGFibGVgLlxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRkaXJlY3Rpb24gWyRkZWZhdWx0LWxheW91dC1kaXJlY3Rpb25dXG4vLy8gIFNldHMgdGhlIGxheW91dCBkaXJlY3Rpb24uIENhbiBiZSBgTFRSYCAobGVmdC10by1yaWdodCkgb3IgYFJUTGAgKHJpZ2h0LXRvLWxlZnQpLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gIC5lbGVtZW50IHtcbi8vLyAgICBAaW5jbHVkZSByb3coKTtcbi8vLyAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAuZWxlbWVudCB7XG4vLy8gICAgKnpvb206IDE7XG4vLy8gICAgZGlzcGxheTogYmxvY2s7XG4vLy8gIH1cbi8vL1xuLy8vIC5lbGVtZW50OmJlZm9yZSwgLmVsZW1lbnQ6YWZ0ZXIge1xuLy8vICAgY29udGVudDogXCIgXCI7XG4vLy8gICBkaXNwbGF5OiB0YWJsZTtcbi8vLyB9XG4vLy9cbi8vLyAuZWxlbWVudDphZnRlciB7XG4vLy8gICBjbGVhcjogYm90aDtcbi8vLyB9XG5cbkBtaXhpbiByb3coJGRpc3BsYXk6IGRlZmF1bHQsICRkaXJlY3Rpb246ICRkZWZhdWx0LWxheW91dC1kaXJlY3Rpb24pIHtcbiAgQGlmICRkaXJlY3Rpb24gIT0gJGRlZmF1bHQtbGF5b3V0LWRpcmVjdGlvbiB7XG4gICAgQGluY2x1ZGUgLW5lYXQtd2FybihcIlRoZSAkZGlyZWN0aW9uIGFyZ3VtZW50IHdpbGwgYmUgZGVwcmVjYXRlZCBpbiBmdXR1cmUgdmVyc2lvbnMgaW4gZmF2b3Igb2YgdGhlIGRpcmVjdGlvbigpey4uLn0gbWl4aW4uXCIpO1xuICB9XG5cbiAgJGxheW91dC1kaXJlY3Rpb246ICRkaXJlY3Rpb24gIWdsb2JhbDtcblxuICBAaWYgJGRpc3BsYXkgIT0gZGVmYXVsdCB7XG4gICAgQGluY2x1ZGUgLW5lYXQtd2FybihcIlRoZSAkZGlzcGxheSBhcmd1bWVudCB3aWxsIGJlIGRlcHJlY2F0ZWQgaW4gZnV0dXJlIHZlcnNpb25zIGluIGZhdm9yIG9mIHRoZSBkaXNwbGF5KCl7Li4ufSBtaXhpbi5cIik7XG4gIH1cblxuICBAaWYgJGRpc3BsYXkgPT0gdGFibGUge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIEBpbmNsdWRlIGZpbGwtcGFyZW50O1xuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gICAgJGNvbnRhaW5lci1kaXNwbGF5LXRhYmxlOiB0cnVlICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICRjb250YWluZXItZGlzcGxheS10YWJsZTogZmFsc2UgIWdsb2JhbDtcbiAgfVxufVxuIiwKCQkiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gVHJhbnNsYXRlcyBhbiBlbGVtZW50IGhvcml6b250YWxseSBieSBhIG51bWJlciBvZiBjb2x1bW5zLiBQb3NpdGl2ZSBhcmd1bWVudHMgc2hpZnQgdGhlIGVsZW1lbnQgdG8gdGhlIGFjdGl2ZSBsYXlvdXQgZGlyZWN0aW9uLCB3aGlsZSBuZWdhdGl2ZSBvbmVzIHNoaWZ0IGl0IHRvIHRoZSBvcHBvc2l0ZSBkaXJlY3Rpb24uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlciAodW5pdGxlc3MpfSAkbi1jb2x1bW5zIFsxXVxuLy8vICAgTnVtYmVyIG9mIGNvbHVtbnMgYnkgd2hpY2ggdGhlIGVsZW1lbnQgc2hpZnRzLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIHNoaWZ0KC0zKTtcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBvdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgbWFyZ2luLWxlZnQ6IC0yNS41ODk0MSU7XG4vLy8gICB9XG5cbkBtaXhpbiBzaGlmdCgkbi1jb2x1bW5zOiAxKSB7XG4gIEBpbmNsdWRlIHNoaWZ0LWluLWNvbnRleHQoJG4tY29sdW1ucyk7XG59XG5cbi8vLyBUcmFuc2xhdGVzIGFuIGVsZW1lbnQgaG9yaXpvbnRhbGx5IGJ5IGEgbnVtYmVyIG9mIGNvbHVtbnMsIGluIGEgc3BlY2lmaWMgbmVzdGluZyBjb250ZXh0LlxuLy8vXG4vLy8gQHBhcmFtIHtMaXN0fSAkc2hpZnRcbi8vLyAgIEEgbGlzdCBjb250YWluaW5nIHRoZSBudW1iZXIgb2YgY29sdW1ucyB0byBzaGlmdCAoYCRjb2x1bW5zYCkgYW5kIHRoZSBudW1iZXIgb2YgY29sdW1ucyBvZiB0aGUgcGFyZW50IGVsZW1lbnQgKGAkY29udGFpbmVyLWNvbHVtbnNgKS5cbi8vL1xuLy8vICAgVGhlIHR3byB2YWx1ZXMgY2FuIGJlIHNlcGFyYXRlZCB3aXRoIGFueSBzdHJpbmcgc3VjaCBhcyBgb2ZgLCBgL2AsIGV0Yy5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBzaGlmdCgtMyBvZiA2KTtcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBvdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgbWFyZ2luLWxlZnQ6IC01Mi40MTQ1OCU7XG4vLy8gICB9XG5cbkBtaXhpbiBzaGlmdC1pbi1jb250ZXh0KCRzaGlmdDogJGNvbHVtbnMgb2YgJGNvbnRhaW5lci1jb2x1bW5zKSB7XG4gICRuLWNvbHVtbnM6IG50aCgkc2hpZnQsIDEpO1xuICAkcGFyZW50LWNvbHVtbnM6IGNvbnRhaW5lci1zaGlmdCgkc2hpZnQpICFnbG9iYWw7XG5cbiAgJGRpcmVjdGlvbjogZ2V0LWRpcmVjdGlvbigkbGF5b3V0LWRpcmVjdGlvbiwgJGRlZmF1bHQtbGF5b3V0LWRpcmVjdGlvbik7XG4gICRvcHBvc2l0ZS1kaXJlY3Rpb246IGdldC1vcHBvc2l0ZS1kaXJlY3Rpb24oJGRpcmVjdGlvbik7XG5cbiAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06ICRuLWNvbHVtbnMgKiBmbGV4LWdyaWQoMSwgJHBhcmVudC1jb2x1bW5zKSArICRuLWNvbHVtbnMgKiBmbGV4LWd1dHRlcigkcGFyZW50LWNvbHVtbnMpO1xuXG4gIC8vIFJlc2V0IG5lc3RpbmcgY29udGV4dFxuICAkcGFyZW50LWNvbHVtbnM6ICRncmlkLWNvbHVtbnMgIWdsb2JhbDtcbn1cbiIsCgkJIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIEFkZHMgcGFkZGluZyB0byB0aGUgZWxlbWVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TGlzdH0gJHBhZGRpbmcgW2ZsZXgtZ3V0dGVyKCldXG4vLy8gICBBIGxpc3Qgb2YgcGFkZGluZyB2YWx1ZShzKSB0byB1c2UuIFBhc3NpbmcgYGRlZmF1bHRgIGluIHRoZSBsaXN0IHdpbGwgcmVzdWx0IGluIHVzaW5nIHRoZSBndXR0ZXIgd2lkdGggYXMgYSBwYWRkaW5nIHZhbHVlLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIHBhZCgzMHB4IC0yMHB4IDEwcHggZGVmYXVsdCk7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIHBhZGRpbmc6IDMwcHggLTIwcHggMTBweCAyLjM1NzY1JTtcbi8vLyAgIH1cblxuQG1peGluIHBhZCgkcGFkZGluZzogZmxleC1ndXR0ZXIoKSkge1xuICAkcGFkZGluZy1saXN0OiBudWxsO1xuICBAZWFjaCAkdmFsdWUgaW4gJHBhZGRpbmcge1xuICAgICR2YWx1ZTogaWYoJHZhbHVlID09ICdkZWZhdWx0JywgZmxleC1ndXR0ZXIoKSwgJHZhbHVlKTtcbiAgICAkcGFkZGluZy1saXN0OiBqb2luKCRwYWRkaW5nLWxpc3QsICR2YWx1ZSk7XG4gIH1cbiAgcGFkZGluZzogJHBhZGRpbmctbGlzdDtcbn1cbiIsCgkJIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIEZvcmNlcyB0aGUgZWxlbWVudCB0byBmaWxsIGl0cyBwYXJlbnQgY29udGFpbmVyLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIGZpbGwtcGFyZW50O1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICB3aWR0aDogMTAwJTtcbi8vLyAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbi8vLyAgIH1cblxuQG1peGluIGZpbGwtcGFyZW50KCkge1xuICB3aWR0aDogMTAwJTtcblxuICBAaWYgJGJvcmRlci1ib3gtc2l6aW5nID09IGZhbHNlIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG59XG4iLAoJCSJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBPdXRwdXRzIGEgbWVkaWEtcXVlcnkgYmxvY2sgd2l0aCBhbiBvcHRpb25hbCBncmlkIGNvbnRleHQgKHRoZSB0b3RhbCBudW1iZXIgb2YgY29sdW1ucyB1c2VkIGluIHRoZSBncmlkKS5cbi8vL1xuLy8vIEBwYXJhbSB7TGlzdH0gJHF1ZXJ5XG4vLy8gICBBIGxpc3Qgb2YgbWVkaWEgcXVlcnkgZmVhdHVyZXMgYW5kIHZhbHVlcywgd2hlcmUgZWFjaCBgJGZlYXR1cmVgIHNob3VsZCBoYXZlIGEgY29ycmVzcG9uZGluZyBgJHZhbHVlYC5cbi8vLyAgIEZvciBhIGxpc3Qgb2YgdmFsaWQgdmFsdWVzIGZvciBgJGZlYXR1cmVgLCBjbGljayBbaGVyZV0oaHR0cDovL3d3dy53My5vcmcvVFIvY3NzMy1tZWRpYXF1ZXJpZXMvI21lZGlhMSkuXG4vLy9cbi8vLyAgIElmIHRoZXJlIGlzIG9ubHkgYSBzaW5nbGUgYCR2YWx1ZWAgaW4gYCRxdWVyeWAsIGAkZGVmYXVsdC1mZWF0dXJlYCBpcyBnb2luZyB0byBiZSB1c2VkLlxuLy8vXG4vLy8gICBUaGUgbnVtYmVyIG9mIHRvdGFsIGNvbHVtbnMgaW4gdGhlIGdyaWQgY2FuIGJlIHNldCBieSBwYXNzaW5nIGAkY29sdW1uc2AgYXQgdGhlIGVuZCBvZiB0aGUgbGlzdCAob3ZlcnJpZGVzIGAkdG90YWwtY29sdW1uc2ApLlxuLy8vXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlciAodW5pdGxlc3MpfSAkdG90YWwtY29sdW1ucyBbJGdyaWQtY29sdW1uc11cbi8vLyAgIC0gTnVtYmVyIG9mIGNvbHVtbnMgdG8gdXNlIGluIHRoZSBuZXcgZ3JpZCBjb250ZXh0LiBDYW4gYmUgc2V0IGFzIGEgc2hvcnRoYW5kIGluIHRoZSBmaXJzdCBwYXJhbWV0ZXIuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5yZXNwb25zaXZlLWVsZW1lbnQge1xuLy8vICAgICAgQGluY2x1ZGUgbWVkaWEoNzY5cHgpIHtcbi8vLyAgICAgICAgQGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDYpO1xuLy8vICAgICAgfVxuLy8vICAgfVxuLy8vXG4vLy8gIC5uZXctY29udGV4dC1lbGVtZW50IHtcbi8vLyAgICBAaW5jbHVkZSBtZWRpYShtaW4td2lkdGggMzIwcHggbWF4LXdpZHRoIDQ4MHB4LCA2KSB7XG4vLy8gICAgICBAaW5jbHVkZSBzcGFuLWNvbHVtbnMoNik7XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OXB4KSB7XG4vLy8gICAgLnJlc3BvbnNpdmUtZWxlbWVudCB7XG4vLy8gICAgICBkaXNwbGF5OiBibG9jaztcbi8vLyAgICAgIGZsb2F0OiBsZWZ0O1xuLy8vICAgICAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbi8vLyAgICAgIHdpZHRoOiA0OC44MjExNyU7XG4vLy8gICAgfVxuLy8vXG4vLy8gICAgLnJlc3BvbnNpdmUtZWxlbWVudDpsYXN0LWNoaWxkIHtcbi8vLyAgICAgIG1hcmdpbi1yaWdodDogMDtcbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuLy8vICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4vLy8gICAgLm5ldy1jb250ZXh0LWVsZW1lbnQge1xuLy8vICAgICAgZGlzcGxheTogYmxvY2s7XG4vLy8gICAgICBmbG9hdDogbGVmdDtcbi8vLyAgICAgIG1hcmdpbi1yaWdodDogNC44MjkxNiU7XG4vLy8gICAgICB3aWR0aDogMTAwJTtcbi8vLyAgICB9XG4vLy9cbi8vLyAgICAubmV3LWNvbnRleHQtZWxlbWVudDpsYXN0LWNoaWxkIHtcbi8vLyAgICAgIG1hcmdpbi1yaWdodDogMDtcbi8vLyAgICB9XG4vLy8gIH1cblxuQG1peGluIG1lZGlhKCRxdWVyeTogJGZlYXR1cmUgJHZhbHVlICRjb2x1bW5zLCAkdG90YWwtY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICBAaWYgbGVuZ3RoKCRxdWVyeSkgPT0gMSB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKCRkZWZhdWx0LWZlYXR1cmU6IG50aCgkcXVlcnksIDEpKSB7XG4gICAgICAkZGVmYXVsdC1ncmlkLWNvbHVtbnM6ICRncmlkLWNvbHVtbnM7XG4gICAgICAkZ3JpZC1jb2x1bW5zOiAkdG90YWwtY29sdW1ucyAhZ2xvYmFsO1xuICAgICAgQGNvbnRlbnQ7XG4gICAgICAkZ3JpZC1jb2x1bW5zOiAkZGVmYXVsdC1ncmlkLWNvbHVtbnMgIWdsb2JhbDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgICRsb29wLXRvOiBsZW5ndGgoJHF1ZXJ5KTtcbiAgICAkbWVkaWEtcXVlcnk6IFwic2NyZWVuIGFuZCBcIjtcbiAgICBAaWYoJHF1ZXJ5PT0kdGFiKSB7XG4gICAgICAgICRtZWRpYS1xdWVyeTogXCJwcmludCxzY3JlZW4gYW5kIFwiO1xuICAgIH1cbiAgICAkZGVmYXVsdC1ncmlkLWNvbHVtbnM6ICRncmlkLWNvbHVtbnM7XG4gICAgJGdyaWQtY29sdW1uczogJHRvdGFsLWNvbHVtbnMgIWdsb2JhbDtcblxuICAgIEBpZiBpcy1ub3QoaXMtZXZlbihsZW5ndGgoJHF1ZXJ5KSkpIHtcbiAgICAgICRncmlkLWNvbHVtbnM6IG50aCgkcXVlcnksICRsb29wLXRvKSAhZ2xvYmFsO1xuICAgICAgJGxvb3AtdG86ICRsb29wLXRvIC0gMTtcbiAgICB9XG5cbiAgICAkaTogMTtcbiAgICBAd2hpbGUgJGkgPD0gJGxvb3AtdG8ge1xuICAgICAgJG1lZGlhLXF1ZXJ5OiAkbWVkaWEtcXVlcnkgKyBcIihcIiArIG50aCgkcXVlcnksICRpKSArIFwiOiBcIiArIG50aCgkcXVlcnksICRpICsgMSkgKyBcIikgXCI7XG5cbiAgICAgIEBpZiAoJGkgKyAxKSAhPSAkbG9vcC10byB7XG4gICAgICAgICRtZWRpYS1xdWVyeTogJG1lZGlhLXF1ZXJ5ICsgXCJhbmQgXCI7XG4gICAgICB9XG5cbiAgICAgICRpOiAkaSArIDI7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JG1lZGlhLXF1ZXJ5fSB7XG4gICAgICBAY29udGVudDtcbiAgICAgICRncmlkLWNvbHVtbnM6ICRkZWZhdWx0LWdyaWQtY29sdW1ucyAhZ2xvYmFsO1xuICAgIH1cbiAgfVxufVxuIiwKCQkiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG5AbWl4aW4gYnJlYWtwb2ludCgkcXVlcnk6JGZlYXR1cmUgJHZhbHVlICRjb2x1bW5zLCAkdG90YWwtY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICBAaW5jbHVkZSAtbmVhdC13YXJuKFwiVGhlIGJyZWFrcG9pbnQoKSBtaXhpbiB3YXMgcmVuYW1lZCB0byBtZWRpYSgpIGluIE5lYXQgMS4wLiBQbGVhc2UgdXBkYXRlIHlvdXIgcHJvamVjdCB3aXRoIHRoZSBuZXcgc3ludGF4IGJlZm9yZSB0aGUgbmV4dCB2ZXJzaW9uIGJ1bXAuXCIpO1xuXG4gIEBpZiBsZW5ndGgoJHF1ZXJ5KSA9PSAxIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoJGRlZmF1bHQtZmVhdHVyZTogbnRoKCRxdWVyeSwgMSkpIHtcbiAgICAgICRkZWZhdWx0LWdyaWQtY29sdW1uczogJGdyaWQtY29sdW1ucztcbiAgICAgICRncmlkLWNvbHVtbnM6ICR0b3RhbC1jb2x1bW5zO1xuICAgICAgQGNvbnRlbnQ7XG4gICAgICAkZ3JpZC1jb2x1bW5zOiAkZGVmYXVsdC1ncmlkLWNvbHVtbnM7XG4gICAgfVxuICB9IEBlbHNlIGlmIGxlbmd0aCgkcXVlcnkpID09IDIge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChudGgoJHF1ZXJ5LCAxKTogbnRoKCRxdWVyeSwgMikpIHtcbiAgICAgICRkZWZhdWx0LWdyaWQtY29sdW1uczogJGdyaWQtY29sdW1ucztcbiAgICAgICRncmlkLWNvbHVtbnM6ICR0b3RhbC1jb2x1bW5zO1xuICAgICAgQGNvbnRlbnQ7XG4gICAgICAkZ3JpZC1jb2x1bW5zOiAkZGVmYXVsdC1ncmlkLWNvbHVtbnM7XG4gICAgfVxuICB9IEBlbHNlIGlmIGxlbmd0aCgkcXVlcnkpID09IDMge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChudGgoJHF1ZXJ5LCAxKTogbnRoKCRxdWVyeSwgMikpIHtcbiAgICAgICRkZWZhdWx0LWdyaWQtY29sdW1uczogJGdyaWQtY29sdW1ucztcbiAgICAgICRncmlkLWNvbHVtbnM6IG50aCgkcXVlcnksIDMpO1xuICAgICAgQGNvbnRlbnQ7XG4gICAgICAkZ3JpZC1jb2x1bW5zOiAkZGVmYXVsdC1ncmlkLWNvbHVtbnM7XG4gICAgfVxuICB9IEBlbHNlIGlmIGxlbmd0aCgkcXVlcnkpID09IDQge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChudGgoJHF1ZXJ5LCAxKTogbnRoKCRxdWVyeSwgMikpIGFuZCAobnRoKCRxdWVyeSwgMyk6IG50aCgkcXVlcnksIDQpKSB7XG4gICAgICAkZGVmYXVsdC1ncmlkLWNvbHVtbnM6ICRncmlkLWNvbHVtbnM7XG4gICAgICAkZ3JpZC1jb2x1bW5zOiAkdG90YWwtY29sdW1ucztcbiAgICAgIEBjb250ZW50O1xuICAgICAgJGdyaWQtY29sdW1uczogJGRlZmF1bHQtZ3JpZC1jb2x1bW5zO1xuICAgIH1cbiAgfSBAZWxzZSBpZiBsZW5ndGgoJHF1ZXJ5KSA9PSA1IHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobnRoKCRxdWVyeSwgMSk6IG50aCgkcXVlcnksIDIpKSBhbmQgKG50aCgkcXVlcnksIDMpOiBudGgoJHF1ZXJ5LCA0KSkge1xuICAgICAgJGRlZmF1bHQtZ3JpZC1jb2x1bW5zOiAkZ3JpZC1jb2x1bW5zO1xuICAgICAgJGdyaWQtY29sdW1uczogbnRoKCRxdWVyeSwgNSk7XG4gICAgICBAY29udGVudDtcbiAgICAgICRncmlkLWNvbHVtbnM6ICRkZWZhdWx0LWdyaWQtY29sdW1ucztcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBpbmNsdWRlIC1uZWF0LXdhcm4oXCJXcm9uZyBudW1iZXIgb2YgYXJndW1lbnRzIGZvciBicmVha3BvaW50KCkuIFJlYWQgdGhlIGRvY3VtZW50YXRpb24gZm9yIG1vcmUgZGV0YWlscy5cIik7XG4gIH1cbn1cblxuQG1peGluIG50aC1vbWVnYSgkbnRoLCAkZGlzcGxheTogYmxvY2ssICRkaXJlY3Rpb246IGRlZmF1bHQpIHtcbiAgQGluY2x1ZGUgLW5lYXQtd2FybihcIlRoZSBudGgtb21lZ2EoKSBtaXhpbiBpcyBkZXByZWNhdGVkLiBQbGVhc2UgdXNlIG9tZWdhKCkgaW5zdGVhZC5cIik7XG4gIEBpbmNsdWRlIG9tZWdhKCRudGggJGRpc3BsYXksICRkaXJlY3Rpb24pO1xufVxuXG4vLy8gUmVzZXRzIHRoZSBhY3RpdmUgZGlzcGxheSBwcm9wZXJ0eSB0byBgYmxvY2tgLiBQYXJ0aWN1bGFybHkgdXNlZnVsIHdoZW4gY2hhbmdpbmcgdGhlIGRpc3BsYXkgcHJvcGVydHkgaW4gYSBzaW5nbGUgcm93LlxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIHJvdyh0YWJsZSk7XG4vLy8gICAgIC8vIENvbnRleHQgY2hhbmdlZCB0byB0YWJsZSBkaXNwbGF5XG4vLy8gICB9XG4vLy9cbi8vLyAgIEBpbmNsdWRlIHJlc2V0LWRpc3BsYXk7XG4vLy8gICAvLyBDb250ZXh0IGlzIHJlc2V0IHRvIGJsb2NrIGRpc3BsYXlcblxuQG1peGluIHJlc2V0LWRpc3BsYXkge1xuICAkY29udGFpbmVyLWRpc3BsYXktdGFibGU6IGZhbHNlICFnbG9iYWw7XG4gIEBpbmNsdWRlIC1uZWF0LXdhcm4oXCJSZXNldHRpbmcgJGRpc3BsYXkgd2lsbCBiZSBkZXByZWNhdGVkIGluIGZ1dHVyZSB2ZXJzaW9ucyBpbiBmYXZvciBvZiB0aGUgZGlzcGxheSgpey4uLn0gbWl4aW4uXCIpO1xufVxuXG4vLy8gUmVzZXRzIHRoZSBhY3RpdmUgbGF5b3V0IGRpcmVjdGlvbiB0byB0aGUgZGVmYXVsdCB2YWx1ZSBzZXQgaW4gYCRkZWZhdWx0LWxheW91dC1kaXJlY3Rpb25gLiBQYXJ0aWN1bGFybHkgdXNlZnVsIHdoZW4gY2hhbmdpbmcgdGhlIGxheW91dCBkaXJlY3Rpb24gaW4gYSBzaW5nbGUgcm93LlxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIHJvdygkZGlyZWN0aW9uOiBSVEwpO1xuLy8vICAgICAvLyBDb250ZXh0IGNoYW5nZWQgdG8gcmlnaHQtdG8tbGVmdFxuLy8vICAgfVxuLy8vXG4vLy8gICBAaW5jbHVkZSByZXNldC1sYXlvdXQtZGlyZWN0aW9uO1xuLy8vICAgLy8gQ29udGV4dCBpcyByZXNldCB0byBsZWZ0LXRvLXJpZ2h0XG5cbkBtaXhpbiByZXNldC1sYXlvdXQtZGlyZWN0aW9uIHtcbiAgJGxheW91dC1kaXJlY3Rpb246ICRkZWZhdWx0LWxheW91dC1kaXJlY3Rpb24gIWdsb2JhbDtcbiAgQGluY2x1ZGUgLW5lYXQtd2FybihcIlJlc2V0dGluZyAkZGlyZWN0aW9uIHdpbGwgYmUgZGVwcmVjYXRlZCBpbiBmdXR1cmUgdmVyc2lvbnMgaW4gZmF2b3Igb2YgdGhlIGRpcmVjdGlvbigpey4uLn0gbWl4aW4uXCIpO1xufVxuXG4vLy8gUmVzZXRzIGJvdGggdGhlIGFjdGl2ZSBsYXlvdXQgZGlyZWN0aW9uIGFuZCB0aGUgYWN0aXZlIGRpc3BsYXkgcHJvcGVydHkuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgcm93KHRhYmxlLCBSVEwpO1xuLy8vICAgICAvLyBDb250ZXh0IGNoYW5nZWQgdG8gdGFibGUgdGFibGUgYW5kIHJpZ2h0LXRvLWxlZnRcbi8vLyAgIH1cbi8vL1xuLy8vICAgQGluY2x1ZGUgcmVzZXQtYWxsO1xuLy8vICAgLy8gQ29udGV4dCBpcyByZXNldCB0byBibG9jayBkaXNwbGF5IGFuZCBsZWZ0LXRvLXJpZ2h0XG5cbkBtaXhpbiByZXNldC1hbGwge1xuICBAaW5jbHVkZSByZXNldC1kaXNwbGF5O1xuICBAaW5jbHVkZSByZXNldC1sYXlvdXQtZGlyZWN0aW9uO1xufVxuIiwKCQkiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tZ3JhZGllbnQoJHZhbHVlcy4uLikge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAkdmFsdWVzKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgJHZhbHVlcyk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQobGVmdCwgJHZhbHVlcyk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCAkdmFsdWVzKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdW5xdW90ZShcImxpbmVhci1ncmFkaWVudCh0byBsZWZ0LCAjeyR2YWx1ZXN9KVwiKTtcbn1cblxuQGlmICR2aXN1YWwtZ3JpZCA9PSB0cnVlIG9yICR2aXN1YWwtZ3JpZCA9PSB5ZXMge1xuICBib2R5OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3JhZGllbnQoZ3JhZGllbnQtc3RvcHMoJGdyaWQtY29sdW1ucykpO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG1heC13aWR0aDogJG1heC13aWR0aDtcbiAgICBvcGFjaXR5OiAkdmlzdWFsLWdyaWQtb3BhY2l0eTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaWYgJHZpc3VhbC1ncmlkLWluZGV4ID09IGJhY2sge1xuICAgICAgei1pbmRleDogLTE7XG4gICAgfVxuXG4gICAgQGVsc2UgaWYgJHZpc3VhbC1ncmlkLWluZGV4ID09IGZyb250IHtcbiAgICAgIHotaW5kZXg6IDk5OTk7XG4gICAgfVxuXG4gICAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gJHZpc3VhbC1ncmlkLWJyZWFrcG9pbnRzIHtcbiAgICAgIEBpZiAkYnJlYWtwb2ludCB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCRicmVha3BvaW50KSB7XG4gICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3JhZGllbnQoZ3JhZGllbnQtc3RvcHMoJGdyaWQtY29sdW1ucykpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLAoJCSJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBDaGFuZ2VzIHRoZSBkaXNwbGF5IHByb3BlcnR5IHVzZWQgYnkgb3RoZXIgbWl4aW5zIGNhbGxlZCBpbiB0aGUgY29kZSBibG9jayBhcmd1bWVudC5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZGlzcGxheSBbYmxvY2tdXG4vLy8gICBEaXNwbGF5IHZhbHVlIHRvIGJlIHVzZWQgd2l0aGluIHRoZSBibG9jay4gQ2FuIGJlIGB0YWJsZWAgb3IgYGJsb2NrYC5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIEBpbmNsdWRlIGRpc3BsYXktY29udGV4dCh0YWJsZSkge1xuLy8vICAgIC5kaXNwbGF5LXRhYmxlIHtcbi8vLyAgICAgIEBpbmNsdWRlIHNwYW4tY29sdW1ucyg2KTtcbi8vLyAgICAgfVxuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzXG4vLy8gICAuZGlzcGxheS10YWJsZSB7XG4vLy8gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuLy8vICAgICAgLi4uXG4vLy8gICB9XG5cbkBtaXhpbiBkaXNwbGF5LWNvbnRleHQoJGRpc3BsYXk6IGJsb2NrKSB7XG4gICRzY29wZS1kaXNwbGF5OiAkY29udGFpbmVyLWRpc3BsYXktdGFibGU7XG4gICRjb250YWluZXItZGlzcGxheS10YWJsZTogJGRpc3BsYXkgPT0gdGFibGUgIWdsb2JhbDtcblxuICBAY29udGVudDtcblxuICAkY29udGFpbmVyLWRpc3BsYXktdGFibGU6ICRzY29wZS1kaXNwbGF5ICFnbG9iYWw7XG59XG4iLAoJCSJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBDaGFuZ2VzIHRoZSBkaXJlY3Rpb24gcHJvcGVydHkgdXNlZCBieSBvdGhlciBtaXhpbnMgY2FsbGVkIGluIHRoZSBjb2RlIGJsb2NrIGFyZ3VtZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRkaXJlY3Rpb24gW2xlZnQtdG8tcmlnaHRdXG4vLy8gICBMYXlvdXQgZGlyZWN0aW9uIHRvIGJlIHVzZWQgd2l0aGluIHRoZSBibG9jay4gQ2FuIGJlIGBsZWZ0LXRvLXJpZ2h0YCBvciBgcmlnaHQtdG8tbGVmdGAuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIEBpbmNsdWRlIGRpcmVjdGlvbi1jb250ZXh0KHJpZ2h0LXRvLWxlZnQpIHtcbi8vLyAgICAucmlnaHQtdG8tbGVmdC1ibG9jayB7XG4vLy8gICAgICBAaW5jbHVkZSBzcGFuLWNvbHVtbnMoNik7XG4vLy8gICAgIH1cbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcbi8vLyAgIC5yaWdodC10by1sZWZ0LWJsb2NrIHtcbi8vLyAgICAgZmxvYXQ6IHJpZ2h0O1xuLy8vICAgICAgLi4uXG4vLy8gICB9XG5cbkBtaXhpbiBkaXJlY3Rpb24tY29udGV4dCgkZGlyZWN0aW9uOiBsZWZ0LXRvLXJpZ2h0KSB7XG4gICRzY29wZS1kaXJlY3Rpb246ICRsYXlvdXQtZGlyZWN0aW9uO1xuXG4gIEBpZiB0by1sb3dlci1jYXNlKCRkaXJlY3Rpb24pID09IFwibGVmdC10by1yaWdodFwiIHtcbiAgICAkbGF5b3V0LWRpcmVjdGlvbjogTFRSICFnbG9iYWw7XG4gIH0gQGVsc2UgaWYgdG8tbG93ZXItY2FzZSgkZGlyZWN0aW9uKSA9PSBcInJpZ2h0LXRvLWxlZnRcIiB7XG4gICAgJGxheW91dC1kaXJlY3Rpb246IFJUTCAhZ2xvYmFsO1xuICB9XG5cbiAgQGNvbnRlbnQ7XG5cbiAgJGxheW91dC1kaXJlY3Rpb246ICRzY29wZS1kaXJlY3Rpb24gIWdsb2JhbDtcbn1cbiIsCgkJIkBjaGFyc2V0IFwidXRmLThcIjtcclxuXHJcbi8v4pag55S75YOP44Gu44OR44K577yIV1Djga5VUkzjgpLoqJjovInjgZnjgovvvIlcclxuJGltZ3Bhc3MgOiBcIlwiO1xyXG5cclxuLy/ilqDmqKrluYXjga7oqK3lrppcclxuJHBjU2l6ZToxMjAxcHg7XHJcbiR0YWJTaXplOjEyMDBweDtcclxuJHRhYlRhdGVTaXplOjc2OXB4Oy8v44GT44GT44Gv5LiN5YuV44Gg44Go5oCd44GGXHJcbiRzcFNpemU6NzY4cHg7Ly/jgZPjgZPjga/kuI3li5XjgaDjgajmgJ3jgYZcclxuLy/jgZPjgZPjgoLlpInmm7TjgZfjgabjgbvjgZfjgYRcclxuJHBjU2l6ZVB4Tm9uZToxMDAwO1xyXG4kdGFiU2l6ZVB4Tm9uZTo5OTk7XHJcbiR0YWJUYXRlU2l6ZVB4Tm9uZTo3Njk7Ly/jgZPjgZPjga/kuI3li5XjgaDjgajmgJ3jgYZcclxuJHNwU2l6ZVB4Tm9uZTo3Njg7Ly/jgZPjgZPjga/kuI3li5XjgaDjgajmgJ3jgYZcclxuXHJcblxyXG4kcGNfd2FwcGVyX3NpemU6JHBjU2l6ZTtcclxuJHBjX3dhcHBlcl9zaXplX3B4OiRwY1NpemVQeE5vbmU7XHJcblxyXG4vL+ODmuODvOOCuOWGheOBp+OCs+ODs+ODhuODs+ODhOW5heOBjOWkieOCj+OBo+OBpuOBhOOCi+WgtOWQiOOBr+OBk+OCjOOBp+iqv+evgOOCguWPr+iDve+8iOS9v+OBhuOBk+OBqOOBr+OBvuOBmueEoeOBhO+8iVxyXG4kcGNfaW5ubmVyX3dhcHBlcl9zaXplIDogOTYwcHg7XHJcbiIsCgkJIkBjaGFyc2V0IFwidXRmLThcIjtcclxuXHJcblxyXG4jcGFnZV90b3Age1xyXG4gIGFuaW1hdGlvbjogY2xvYWstaW4gMC43NXM7XHJcbn1cclxuXHJcbmJvZHkge1xyXG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbn1cclxuXHJcbi5kaXNwbGF5X2ZsZXhfY2VudGVyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcbi5kaXNwbGF5X2ZsZXhfc3RyZXRjaCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG59XHJcbi5kaXNwbGF5X2ZsZXhfc3RyZXRjaF9ib3R0b20ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcclxufVxyXG4uZGlzcGxheV9mbGV4X2NlbnRlcl9ib3R0b20ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IFxyXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xyXG59XHJcbi5kaXNwbGF5X2ZsZXgge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDsgXHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbn1cclxuLmRpc3BsYXlfcm93IHtcclxuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XHJcbn1cclxuLmZvcm1NYWluIHtcclxuICAgIGZvbnQtZmFtaWx5OiDmuLjjgrTjgrfjg4Pjgq/kvZMsICdZdSBHb3RoaWMnLCBZdUdvdGhpYywgJ+ODkuODqeOCruODjuinkuOCtOOCt+ODg+OCryBQcm8nLCAnSGlyYWdpbm8gS2FrdSBHb3RoaWMgUHJvJywg44Oh44Kk44Oq44KqLCBNZWlyeW8sIE9zYWthLCAn77yt77yzIO+8sOOCtOOCt+ODg+OCrycsICdNUyBQR290aGljJywgc2Fucy1zZXJpZjtcclxuICAgIEBpbmNsdWRlIGltZ3dpZHRoKCk7XHJcbiAgICBAaW5jbHVkZSByc0ZvbnRTaXplKDE2LDE2LDE0KTtcclxuICAgIGNvbG9yOiAjNDQ0NDQ0O1xyXG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG4uZm9ybU1haW4gIHtcclxuICAgIGlucHV0LHRleHRhcmVhLHNlbGVjdCxidXR0b24ge1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiDmuLjjgrTjgrfjg4Pjgq/kvZMsICdZdSBHb3RoaWMnLCBZdUdvdGhpYywgJ+ODkuODqeOCruODjuinkuOCtOOCt+ODg+OCryBQcm8nLCAnSGlyYWdpbm8gS2FrdSBHb3RoaWMgUHJvJywg44Oh44Kk44Oq44KqLCBNZWlyeW8sIE9zYWthLCAn77yt77yzIO+8sOOCtOOCt+ODg+OCrycsICdNUyBQR290aGljJywgc2Fucy1zZXJpZjtcclxuICAgICAgICBAaW5jbHVkZSByc0ZvbnRTaXplKDE2LDE2LDE0KTtcclxuICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgfVxyXG4gICAgaDEsaDIsaDMsaDQsaDUsaDYscHtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG59XHJcblxyXG4jbWludHlvdSwubWludHlvdSB7XHJcbiAgICBmb250LWZhbWlseTog5ri45piO5pydICxcIll1IE1pbmNob1wiLFl1TWluY2hvLFwiSGlyYWdpbm8gTWluY2hvIFByb05cIixcIkhpcmFnaW5vIE1pbmNobyBQcm9cIixIR1Mg5piO5pydIEUsTWVpcnlvLHNlcmlmO1xyXG59XHJcbi50aiB7XHJcbiAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBmb250LXNpemU6IDAuMWVtO1xyXG59XHJcblxyXG4ud2FwcGVyIHtcclxuICAgIEBpbmNsdWRlIHdhcHBlcl9zZXR0aW5nKCk7ICAgIFxyXG59XHJcbi8v5Z+65pys6Kit5a6aXHJcbnVsLGxpLGRkLGR0LGRoIHtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbn1cclxuc3ZnIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4ucGNfb25seSB7XHJcbiAgICBAaW5jbHVkZSBwY19vbmx5KCk7XHJcbn1cclxuLnNwX29ubHkge1xyXG4gICAgQGluY2x1ZGUgc3Bfb25seSgpO1xyXG59XHJcblxyXG4udF9jZW50ZXIge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG5AZm9yICRpIGZyb20gMCB0aHJvdWdoIDgge1xyXG4gICAgLnBjX29yZGVyXyN7JGl9IHtcclxuICAgICAgICBvcmRlcjogJGk7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHNwKSB7XHJcbiAgICAgICAgICAgIG9yZGVyOiB1bnNldDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuZndfI3skaSoxMDB9IHtcclxuICAgICAgICBmb250LXdpZWdodDokaSoxMDA7XHJcbiAgICB9XHJcbn1cclxuLnRleHRfanVzdGlmeSB7XHJcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xyXG4gICAgdGV4dC1qdXN0aWZ5OiBpbnRlci1pZGVvZ3JhcGg7ICAgIFxyXG59XHJcbi5kX2ZsZXgge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxufVxyXG4uZF9ibG9jayB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxufVxyXG4uZF9ub25lIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuLmRfY29udGVudHMge1xyXG4gICAgZGlzcGxheTogY29udGVudHM7XHJcbn1cclxuLmRfaW5saW5lIHtcclxuICAgIGRpc3BsYXk6IGlubGluZTtcclxufVxyXG4uZF9ncmlkIHtcclxuICAgIGRpc3BsYXk6IGdyaWQ7XHJcbn1cclxuLmRfaW5saW5lQmxvY2sge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG59XHJcbi5kX2lubGluZUZsZXgge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbn1cclxuLmRfaW5saW5lVGFibGUge1xyXG4gICAgZGlzcGxheTogaW5saW5lLXRhYmxlO1xyXG59XHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbmp1c3RpZnktY29udGVudFxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4ual9iZXR3ZWVuIHtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgICAgXHJcbn1cclxuLmpfc3RhcnQge1xyXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG59XHJcbi5qX2VuZCB7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG59XHJcbi5qX2NlbnRlciB7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG4ual9hcm91bmQge1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XHJcbn1cclxuLmpfYmFzZWxpbmUge1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iYXNlbGluZTtcclxufVxyXG4ual9maXJzdEJhc2VsaW5lIHtcclxuICAgIGp1c3RpZnktY29udGVudDogZmlyc3QgYmFzZWxpbmU7XHJcbn1cclxuLmpfZmlyc3RCYXNlbGluZSB7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGxhc3QgYmFzZWxpbmU7XHJcbn1cclxuLmpfbGVmdCB7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGxlZnQ7XHJcbn1cclxuLmpfcmlnaHQge1xyXG4gICAganVzdGlmeS1jb250ZW50OiByaWdodDtcclxufVxyXG4ual9zYWZlIHtcclxuICAgIGp1c3RpZnktY29udGVudDogc2FmZTtcclxufVxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5hbGlnbi1pdGVtc1xyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4uYWxpX2Jhc2VsaW5lIHtcclxuICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcclxufVxyXG4uYWxpX2NlbnRlciB7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcbi5hbGlfZW5kIHtcclxuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcclxufVxyXG4uYWxpX3N0YXJ0IHtcclxuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG59XHJcbi5hbGlfc3RyZXRjaCB7XHJcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcclxufVxyXG4uYWxpX3Vuc2V0IHtcclxuICAgIGFsaWduLWl0ZW1zOiB1bnNldDtcclxufVxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5hbGlnbi1jb250ZW50XHJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbi5hbGNfY2VudGVyIHtcclxuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG4uYWxjX2VuZCB7XHJcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LWVuZDtcclxufVxyXG4uYWxjX2Fyb3VuZCB7XHJcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQ7XHJcbn1cclxuLmFsY19iZXR3ZWVuIHtcclxuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbn1cclxuLmFsY19zdHJldGNoIHtcclxuICAgIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2g7XHJcbn1cclxuLmFsY191bnNldCB7XHJcbiAgICBhbGlnbi1jb250ZW50OiB1bnNldDtcclxufVxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5yb3dcclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuLnJvdyB7XHJcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xyXG59XHJcbi5wb3N0aSB7XHJcbiAgICBwb3NpdGlvbjpzdGlja3k7XHJcbn1cclxuLnBvc3RhIHtcclxuICAgIHBvc2l0aW9uOnN0YXRpYztcclxufVxyXG4ucG9yZSB7XHJcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxufVxyXG4ucG9hYiB7XHJcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcclxufVxyXG4ucG9maXgge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG59IiwKCQkiQGNoYXJzZXQgXCJ1dGYtOFwiO1xyXG5AaW1wb3J0ICdtaXhpbic7XHJcblxyXG4vL+ODnOOCv+ODs+OCouOCr+OCt+ODp+ODs+mWi+Wni1xyXG4vL+ODm+ODkOODvOOBmeOCi+OBqOS4reOBrueUu+WDj+OBjOW6g+OBjOOCi1xyXG5AbWl4aW4gaG92ZXJfaW1nX3NjYWxlKCkge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGltZyB7XHJcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSAwLjI1cyBsaW5lYXI7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjI1cyBsaW5lYXI7XHJcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogLW8tdHJhbnNmb3JtIDAuMjVzIGxpbmVhcjtcclxuICAgICAgICAtbXMtdHJhbnNpdGlvbjogLW1zLXRyYW5zZm9ybSAwLjI1cyBsaW5lYXI7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjVzIGxpbmVhcjtcclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMik7XHJcbiAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxLjIpO1xyXG4gICAgICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEuMik7XHJcbiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEuMik7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcclxuICAgICAgICB9XHJcbiAgICB9ICAgIFxyXG59XHJcblxyXG5cclxuLy9DU1MoaHR0cDovL3d3dy5ueHdvcmxkLm5ldC90aXBzL2Nzcy1vbmx5LWJ1dHRvbi1kZXNpZ24tYW5kLWhvdmVyLWVmZmVjdHMuaHRtbOWPgueFpylcclxuQG1peGluIGJ1dHRvbmJhc2UoKSB7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3M7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzO1xyXG4gICAgJjo6YmVmb3JlIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0ei1pbmRleDogLTE7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0Y29udGVudDogJyc7XHJcblx0LXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cdC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cdC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcztcclxuXHR0cmFuc2l0aW9uOiBhbGwgLjNzO1xyXG4gICAgfVxyXG4gICAgJjo6YWZ0ZXIge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR6LWluZGV4OiAtMTtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHRjb250ZW50OiAnJztcclxuXHQtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblx0LW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblx0LXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzO1xyXG5cdHRyYW5zaXRpb246IGFsbCAuM3M7XHJcbiAgICB9XHJcbn1cclxuQG1peGluIGJ1dHRvbnR5cGUwMSgkYmFzZWJhY2tjb2xvciwkYmFzZXRleHRjb2xvciwkaG92ZXJiYWNrY29sb3IsJGhvdmVydGV4dGNvbG9yKSB7XHJcbiAgICBAaW5jbHVkZSBidXR0b25iYXNlKCk7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFzZWJhY2tjb2xvcjtcclxuICAgIGNvbG9yOiAkYmFzZXRleHRjb2xvcjtcclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3ZlcmJhY2tjb2xvcjtcclxuICAgICAgICBjb2xvcjogJGhvdmVydGV4dGNvbG9yO1xyXG4gICAgfVxyXG59XHJcbi8v44Ob44Ov44OD44Go6IOM5pmv44Gu6Imy44KS5aSJ5pu044GZ44KL44CCXHJcbkBtaXhpbiBidXR0b250eXBlMDIoJGJhc2ViYWNrY29sb3IsJGJhc2Vib2RlcmNvbG9yLCRiYXNlYm9kZXJweCwkYmFzZXRleHRjb2xvciwkaG92ZXJiYWNrY29sb3IsJGhvdmVyYm9kZXJjb2xvciwkaG92ZXJ0ZXh0Y29sb3IpIHtcclxuICAgIEBpbmNsdWRlIGJ1dHRvbmJhc2UoKTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYXNlYmFja2NvbG9yO1xyXG4gICAgYm9yZGVyOiAkYmFzZWJvZGVycHggc29saWQgJGJhc2Vib2RlcmNvbG9yO1xyXG4gICAgY29sb3I6ICRiYXNldGV4dGNvbG9yO1xyXG4gICAgJjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJGhvdmVyYmFja2NvbG9yO1xyXG5cdGJvcmRlci1jb2xvcjogJGhvdmVyYm9kZXJjb2xvcjtcclxuXHRjb2xvcjogJGhvdmVydGV4dGNvbG9yO1xyXG4gICAgfVxyXG59XHJcbi8v6IOM5pmv44Kr44Op44O844GM5bem5Y+z44Gr5YiG44GL44KM44Gm44GE44GPXHJcbkBtaXhpbiBidXR0b250eXBlMDMoJGJhc2ViYWNrY29sb3IsJGJhc2Vib2RlcmNvbG9yLCRiYXNlYm9kZXJweCwkYmFzZXRleHRjb2xvciwkaG92ZXJiYWNrY29sb3IsJGhvdmVyYm9kZXJjb2xvciwkaG92ZXJ0ZXh0Y29sb3IpIHtcclxuICAgIEBpbmNsdWRlIGJ1dHRvbmJhc2UoKTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDI7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFzZWJhY2tjb2xvcjtcclxuICAgIGJvcmRlcjogJGJhc2Vib2RlcnB4IHNvbGlkICRiYXNlYm9kZXJjb2xvcjtcclxuICAgIGNvbG9yOiAkYmFzZXRleHRjb2xvcjtcclxuICAgICY6aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRob3ZlcmJhY2tjb2xvcjtcclxuXHRib3JkZXItY29sb3I6ICRob3ZlcmJvZGVyY29sb3I7XHJcblx0Y29sb3I6ICRob3ZlcnRleHRjb2xvcjtcclxuICAgIH1cclxuICAgICY6OmJlZm9yZXtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhc2ViYWNrY29sb3I7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICB9XHJcbiAgICAmOjphZnRlciB7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYXNlYmFja2NvbG9yO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICB9XHJcbiAgICAmOmhvdmVyOjpiZWZvcmUge1xyXG4gICAgICAgIHdpZHRoOiAwO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3ZlcmJhY2tjb2xvcjtcclxuICAgIH1cclxuICAgICY6aG92ZXI6OmFmdGVyIHtcclxuICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXJiYWNrY29sb3I7XHJcbiAgICB9XHJcbn1cclxuLy/og4zmma/jgqvjg6njg7zjgYzkuIrkuIvjgavliIbjgYvjgozjgabjgYTjgY9cclxuQG1peGluIGJ1dHRvbnR5cGUwNCgkYmFzZWJhY2tjb2xvciwkYmFzZWJvZGVyY29sb3IsJGJhc2Vib2RlcnB4LCRiYXNldGV4dGNvbG9yLCRob3ZlcmJhY2tjb2xvciwkaG92ZXJib2RlcmNvbG9yLCRob3ZlcnRleHRjb2xvcikge1xyXG4gICAgQGluY2x1ZGUgYnV0dG9uYmFzZSgpO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYXNlYmFja2NvbG9yO1xyXG4gICAgYm9yZGVyOiAkYmFzZWJvZGVycHggc29saWQgJGJhc2Vib2RlcmNvbG9yO1xyXG4gICAgY29sb3I6ICRiYXNldGV4dGNvbG9yO1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyYmFja2NvbG9yO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogJGhvdmVyYm9kZXJjb2xvcjtcclxuICAgICAgICBjb2xvcjogJGhvdmVydGV4dGNvbG9yO1xyXG4gICAgfVxyXG4gICAgJjo6YmVmb3JlIHtcclxuXHRsZWZ0OiAwO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGhlaWdodDogNTAlO1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRiYXNlYmFja2NvbG9yO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgIH1cclxuICAgICY6OmFmdGVyIHtcclxuXHRsZWZ0OiAwO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGhlaWdodDogNTAlO1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRiYXNlYmFja2NvbG9yO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgIH1cclxuICAgICY6aG92ZXI6OmJlZm9yZSB7XHJcbiAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3ZlcmJhY2tjb2xvcjtcclxuICAgIH1cclxuICAgICY6aG92ZXI6OmFmdGVyIHtcclxuICAgICAgICBoZWlnaHQ6IDA7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyYmFja2NvbG9yO1xyXG4gICAgfVxyXG59XHJcbi8v5paH5a2X6ZaT6ZqU44KS5bqD44GS44KLXHJcbkBtaXhpbiBidXR0b250eXBlMDUoJGJhc2ViYWNrY29sb3IsJGJhc2V0ZXh0Y29sb3IpIHtcclxuICAgIEBpbmNsdWRlIGJ1dHRvbmJhc2UoKTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYXNlYmFja2NvbG9yO1xyXG4gICAgY29sb3I6ICRiYXNldGV4dGNvbG9yO1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDVweDtcclxuICAgIH1cclxufVxyXG4vL+S4iuOBi+OCieiDjOaZr+OBjOOBmeOCi+OBo+OBqOmZjeOCiuOBpuOBj+OCi1xyXG5AbWl4aW4gYnV0dG9udHlwZTA2KCRiYXNlYmFja2NvbG9yLCRiYXNlYm9kZXJjb2xvciwkYmFzZWJvZGVycHgsJGJhc2V0ZXh0Y29sb3IsJGhvdmVyYmFja2NvbG9yLCRob3ZlcnRleHRjb2xvcikge1xyXG4gICAgQGluY2x1ZGUgYnV0dG9uYmFzZSgpO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYXNlYmFja2NvbG9yO1xyXG4gICAgYm9yZGVyOiAkYmFzZWJvZGVycHggc29saWQgJGJhc2Vib2RlcmNvbG9yO1xyXG4gICAgY29sb3I6ICRiYXNldGV4dGNvbG9yO1xyXG4gICAgbGluZS1oZWlnaHQ6IDUwcHg7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgY29sb3I6ICRob3ZlcnRleHRjb2xvcjtcclxuICAgIH1cclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgICB0b3A6IC0xMDAlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgIH1cclxuICAgICY6aG92ZXI6OmFmdGVyIHtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyYmFja2NvbG9yO1xyXG4gICAgfVxyXG59XHJcbi8v5aWl44GL44KJ6IOM5pmv44KS44G144KP44Gj44Go6KGo56S644GV44Gb44KLICMxXHJcbkBtaXhpbiBidXR0b250eXBlMTEoJGJhc2ViYWNrY29sb3IsJGJhc2Vib2RlcmNvbG9yLCRiYXNlYm9kZXJweCwkYmFzZXRleHRjb2xvciwkaG92ZXJiYWNrY29sb3IsJGhvdmVydGV4dGNvbG9yKSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAyO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhc2ViYWNrY29sb3I7XHJcbiAgICBib3JkZXI6ICRiYXNlYm9kZXJweCBzb2xpZCAkYmFzZWJvZGVyY29sb3I7XHJcbiAgICBjb2xvcjogJGJhc2V0ZXh0Y29sb3I7XHJcbiAgICBsaW5lLWhlaWdodDogNTBweDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogJGhvdmVydGV4dGNvbG9yO1xyXG4gICAgfVxyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLjUpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLjUpO1xyXG4gICAgfVxyXG4gICAgJjpob3Zlcjo6YWZ0ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRob3ZlcmJhY2tjb2xvcjtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgIH1cclxufVxyXG4vL+WlpeOBi+OCieiDjOaZr+OCkuOBteOCj+OBo+OBqOihqOekuuOBleOBm+OCiyAjMlxyXG5AbWl4aW4gYnV0dG9udHlwZTEyKCRiYXNlYmFja2NvbG9yLCRiYXNlYm9kZXJjb2xvciwkYmFzZWJvZGVycHgsJGJhc2V0ZXh0Y29sb3IsJGhvdmVyYmFja2NvbG9yLCRob3ZlcnRleHRjb2xvcikge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYXNlYmFja2NvbG9yO1xyXG4gICAgYm9yZGVyOiAkYmFzZWJvZGVycHggc29saWQgJGJhc2Vib2RlcmNvbG9yO1xyXG4gICAgY29sb3I6ICRiYXNldGV4dGNvbG9yO1xyXG4gICAgbGluZS1oZWlnaHQ6IDUwcHg7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgY29sb3I6ICRob3ZlcnRleHRjb2xvcjtcclxuICAgIH1cclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC41KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC41KTtcclxuICAgIH1cclxuICAgICY6aG92ZXI6OmFmdGVyIHsgICAgICAgIFxyXG5cdC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgyKSByb3RhdGUoMTgwZGVnKTtcclxuXHR0cmFuc2Zvcm06IHNjYWxlKDIpIHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRob3ZlcmJhY2tjb2xvcjtcclxuICAgIH1cclxufVxyXG4vL+S4iuOBi+OCieODkeOCv+ODg+OBqOimgee0oOOBjOiQveOBoeOBpuOBj+OCi1xyXG5AbWl4aW4gYnV0dG9udHlwZTEzKCRiYXNlYmFja2NvbG9yLCRiYXNlYm9kZXJjb2xvciwkYmFzZWJvZGVycHgsJGJhc2V0ZXh0Y29sb3IsJGhvdmVydGV4dGNvbG9yKSB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHotaW5kZXg6IDI7XHJcblx0Ym9yZGVyOiAkYmFzZWJvZGVycHggc29saWQgJGJhc2Vib2RlcmNvbG9yO1xyXG5cdGNvbG9yOiAkYmFzZXRleHRjb2xvcjtcclxuXHRsaW5lLWhlaWdodDogNTBweDtcclxuXHQtd2Via2l0LXBlcnNwZWN0aXZlOiAzMDBweDtcclxuXHRwZXJzcGVjdGl2ZTogMzAwcHg7XHJcblx0LXdlYmtpdC10cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xyXG5cdHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogJGhvdmVydGV4dGNvbG9yO1xyXG4gICAgfVxyXG4gICAgJjo6YWZ0ZXIge1xyXG5cdHRvcDogMDtcclxuXHRsZWZ0OiAwO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRiYWNrZ3JvdW5kOiAkYmFzZWJhY2tjb2xvcjtcclxuXHQtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciB0b3A7XHJcblx0dHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIHRvcDtcclxuXHQtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWCg5MGRlZyk7XHJcblx0dHJhbnNmb3JtOiByb3RhdGVYKDkwZGVnKTtcclxuXHRvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG4gICAgJjpob3Zlcjo6YWZ0ZXIgeyAgICAgICAgXHJcblx0LXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVgoMCk7XHJcblx0dHJhbnNmb3JtOiByb3RhdGVYKDApO1xyXG5cdG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbn1cclxuQG1peGluIGJ1dHRvbnR5cGUxNCgkYmFzZWJhY2tjb2xvciwkYmFzZWJvZGVyY29sb3IsJGJhc2Vib2RlcnB4LCRiYXNldGV4dGNvbG9yLCRob3ZlcmJhY2tjb2xvciwkaG92ZXJib2RlcmNvbG9yLCRob3ZlcnRleHRjb2xvcikge1xyXG4gICAgYm9yZGVyOiAkYmFzZWJvZGVycHggc29saWQgJGJhc2Vib2RlcmNvbG9yO1xyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4yNXM7XHJcbiAgICBiYWNrZ3JvdW5kOiAkYmFzZWJhY2tjb2xvcjtcclxuICAgIGNvbG9yOiAkYmFzZXRleHRjb2xvcjtcclxuICAgIHotaW5kZXg6IDI7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICY6YWZ0ZXJ7XHJcbiAgICAgICAgY29udGVudDonJztcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB6LWluZGV4OiAtMjtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBsZWZ0OiAwJTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgd2lkdGg6IDE1MCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxNTAlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRiYXNlYmFja2NvbG9yO1xyXG4gICAgfVxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC41cztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogLTUlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICB3aWR0aDogMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRob3ZlcmJhY2tjb2xvcjtcclxuICAgIH1cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICBjb2xvcjogJGhvdmVydGV4dGNvbG9yO1xyXG4gICAgICAgIGJvcmRlcjogJGJhc2Vib2RlcnB4IHNvbGlkICRob3ZlcmJvZGVyY29sb3I7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMTAlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5AbWl4aW4gYnV0dG9udHlwZTE0X2thaSgkYmFzZWJhY2tjb2xvciwkYmFzZWJvZGVyY29sb3IsJGJhc2Vib2RlcnB4LCRiYXNldGV4dGNvbG9yLCRob3ZlcmJhY2tjb2xvciwkaG92ZXJib2RlcmNvbG9yLCRob3ZlcnRleHRjb2xvcikge1xyXG4gICAgYm9yZGVyOiAkYmFzZWJvZGVycHggc29saWQgJGJhc2Vib2RlcmNvbG9yO1xyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4yNXM7XHJcbiAgICBiYWNrZ3JvdW5kOiAkYmFzZWJhY2tjb2xvcjtcclxuICAgIGNvbG9yOiAkYmFzZXRleHRjb2xvcjtcclxuICAgIHotaW5kZXg6IDI7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGxlZnQ6IC01JTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgd2lkdGg6IDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkaG92ZXJiYWNrY29sb3I7XHJcbiAgICB9XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRiYXNlYmFja2NvbG9yO1xyXG4gICAgICAgIGNvbG9yOiAkaG92ZXJ0ZXh0Y29sb3I7XHJcbiAgICAgICAgYm9yZGVyOiAkYmFzZWJvZGVycHggc29saWQgJGhvdmVyYm9kZXJjb2xvcjtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgd2lkdGg6IDExMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuQG1peGluIGJ1dHRvbnR5cGUxNSgkYmFzZWJhY2tjb2xvciwkYmFzZWJvZGVyY29sb3IsJGJhc2Vib2RlcnB4LCRiYXNldGV4dGNvbG9yLCRob3ZlcmJhY2tjb2xvciwkaG92ZXJib2RlcmNvbG9yLCRob3ZlcnRleHRjb2xvcikge1xyXG4gICAgYm9yZGVyOiAkYmFzZWJvZGVycHggc29saWQgJGJhc2Vib2RlcmNvbG9yO1xyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4yNXM7XHJcbiAgICBiYWNrZ3JvdW5kOiAkYmFzZWJhY2tjb2xvcjtcclxuICAgIGNvbG9yOiAkYmFzZXRleHRjb2xvcjtcclxuICAgIHotaW5kZXg6IDI7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGxlZnQ6IDAlOyByaWdodDogMDtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgd2lkdGg6IDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkaG92ZXJiYWNrY29sb3I7XHJcbiAgICB9XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIGNvbG9yOiAkaG92ZXJ0ZXh0Y29sb3I7XHJcbiAgICAgICAgYm9yZGVyOiAkYmFzZWJvZGVycHggc29saWQgJGhvdmVyYm9kZXJjb2xvcjtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gYnV0dG9udHlwZTE4KCRiYXNlYmFja2NvbG9yLCRiYXNlYm9kZXJjb2xvciwkYmFzZWJvZGVycHgsJGJhc2V0ZXh0Y29sb3IsJGhvdmVyYmFja2NvbG9yLCRob3ZlcmJvZGVyY29sb3IsJGhvdmVydGV4dGNvbG9yKSB7XHJcbiAgICBib3JkZXI6ICRiYXNlYm9kZXJweCBzb2xpZCAkYmFzZWJvZGVyY29sb3I7XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjI1cztcclxuICAgIGJhY2tncm91bmQ6ICRiYXNlYmFja2NvbG9yO1xyXG4gICAgY29sb3I6ICRiYXNldGV4dGNvbG9yO1xyXG4gICAgei1pbmRleDogMjtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC41cztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAwJTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkaG92ZXJiYWNrY29sb3I7XHJcbiAgICB9XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIGNvbG9yOiAkaG92ZXJ0ZXh0Y29sb3I7XHJcbiAgICAgICAgYm9yZGVyOiAkYmFzZWJvZGVycHggc29saWQgJGhvdmVyYm9kZXJjb2xvcjtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbkBtaXhpbiBidXR0b250eXBlMTRfa2FpKCRiYXNlYmFja2NvbG9yLCRiYXNlYm9kZXJjb2xvciwkYmFzZWJvZGVycHgsJGJhc2V0ZXh0Y29sb3IsJGhvdmVyYmFja2NvbG9yLCRob3ZlcmJvZGVyY29sb3IsJGhvdmVydGV4dGNvbG9yKSB7XHJcbiAgICBib3JkZXI6ICRiYXNlYm9kZXJweCBzb2xpZCAkYmFzZWJvZGVyY29sb3I7XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjI1cztcclxuICAgIGJhY2tncm91bmQ6ICRiYXNlYmFja2NvbG9yO1xyXG4gICAgY29sb3I6ICRiYXNldGV4dGNvbG9yO1xyXG4gICAgei1pbmRleDogMjtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC41cztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogLTUlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICB3aWR0aDogMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRob3ZlcmJhY2tjb2xvcjtcclxuICAgIH1cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGJhc2ViYWNrY29sb3I7XHJcbiAgICAgICAgY29sb3I6ICRob3ZlcnRleHRjb2xvcjtcclxuICAgICAgICBib3JkZXI6ICRiYXNlYm9kZXJweCBzb2xpZCAkaG92ZXJib2RlcmNvbG9yO1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICB3aWR0aDogMTEwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLy/jg5zjgr/jg7PjgqLjgq/jgrfjg6fjg7PntYLkuoZcclxuXHJcbkBtaXhpbiBhbmltYXRpb25fYmFzZSgpIHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcclxuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XHJcbiAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xyXG4gICAgJi5pbmZpbml0ZSB7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcclxuICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcclxuICAgIH1cclxuICAgICYuaGluZ2Uge1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAycztcclxuICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDJzO1xyXG4gICAgfVxyXG4gICAgJi5mbGlwT3V0WCxcclxuICAgICYuZmxpcE91dFksXHJcbiAgICAmLmJvdW5jZUluLFxyXG4gICAgJi5ib3VuY2VPdXQge1xyXG4gICAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogLjc1cztcclxuICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAuNzVzO1xyXG4gICAgfVxyXG59XHJcblxyXG4vL2JvdW5jZeOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX2JvdW5jZSgpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlIHtcclxuICAgICAgZnJvbSwgMjAlLCA1MyUsIDgwJSwgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDQwJSwgNDMlIHtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNTAsIDAuODU1LCAwLjA2MCk7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzU1LCAwLjA1MCwgMC44NTUsIDAuMDYwKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwcHgsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA3MCUge1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzU1LCAwLjA1MCwgMC44NTUsIDAuMDYwKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUwLCAwLjg1NSwgMC4wNjApO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTVweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTVweCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDkwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsLTRweCwwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsLTRweCwwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGtleWZyYW1lcyBib3VuY2Uge1xyXG4gICAgICBmcm9tLCAyMCUsIDUzJSwgODAlLCB0byB7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNDAlLCA0MyUge1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzU1LCAwLjA1MCwgMC44NTUsIDAuMDYwKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUwLCAwLjg1NSwgMC4wNjApO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzBweCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDcwJSB7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUwLCAwLjg1NSwgMC4wNjApO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNTAsIDAuODU1LCAwLjA2MCk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xNXB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xNXB4LCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgOTAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwtNHB4LDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwtNHB4LDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2U7XHJcbiAgICBhbmltYXRpb24tbmFtZTogYm91bmNlO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcclxufVxyXG5cclxuLy9mbGFzaOOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX2ZsYXNoKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsYXNoO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZsYXNoO1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIGZsYXNoIHtcclxuICAgICAgZnJvbSwgNTAlLCB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgMjUlLCA3NSUge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIGZsYXNoIHtcclxuICAgICAgZnJvbSwgNTAlLCB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgMjUlLCA3NSUge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9wdWxzZeOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX3B1bHNlKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHB1bHNlO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHB1bHNlO1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIHB1bHNlIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA1MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIDEuMDUsIDEuMDUpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAxLjA1LCAxLjA1KTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgcHVsc2Uge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDUwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgMS4wNSwgMS4wNSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIDEuMDUsIDEuMDUpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vcnViYmVyQmFuZOOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX3J1YmJlckJhbmQoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcnViYmVyQmFuZDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBydWJiZXJCYW5kO1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIHJ1YmJlckJhbmQge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDMwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4yNSwgMC43NSwgMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMjUsIDAuNzUsIDEpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA0MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNzUsIDEuMjUsIDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjc1LCAxLjI1LCAxKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNTAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjE1LCAwLjg1LCAxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xNSwgMC44NSwgMSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDY1JSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjk1LCAxLjA1LCAxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjk1LCAxLjA1LCAxKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNzUlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAuOTUsIDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAuOTUsIDEpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAa2V5ZnJhbWVzIHJ1YmJlckJhbmQge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDMwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4yNSwgMC43NSwgMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMjUsIDAuNzUsIDEpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA0MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNzUsIDEuMjUsIDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjc1LCAxLjI1LCAxKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNTAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjE1LCAwLjg1LCAxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xNSwgMC44NSwgMSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDY1JSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjk1LCAxLjA1LCAxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjk1LCAxLjA1LCAxKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNzUlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAuOTUsIDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAuOTUsIDEpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vc2hha2Xjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9zaGFrZSgpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzaGFrZTtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBzaGFrZTtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBzaGFrZSB7XHJcbiAgICAgIGZyb20sIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgMTAlLCAzMCUsIDUwJSwgNzAlLCA5MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDIwJSwgNDAlLCA2MCUsIDgwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIHNoYWtlIHtcclxuICAgICAgZnJvbSwgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAxMCUsIDMwJSwgNTAlLCA3MCUsIDkwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgMjAlLCA0MCUsIDYwJSwgODAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL2hlYWRTaGFrZeOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX2hlYWRTaGFrZSgpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xyXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBoZWFkU2hha2U7XHJcbiAgICBhbmltYXRpb24tbmFtZTogaGVhZFNoYWtlOyAgICBcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBoZWFkU2hha2Uge1xyXG4gICAgICAwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gICAgICB9XHJcbiAgICAgIDYuNSUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC02cHgpIHJvdGF0ZVkoLTlkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNnB4KSByb3RhdGVZKC05ZGVnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgMTguNSUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCkgcm90YXRlWSg3ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXB4KSByb3RhdGVZKDdkZWcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAzMS41JSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlWSgtNWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZVkoLTVkZWcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA0My41JSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnB4KSByb3RhdGVZKDNkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpIHJvdGF0ZVkoM2RlZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDUwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAa2V5ZnJhbWVzIGhlYWRTaGFrZSB7XHJcbiAgICAgIDAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDYuNSUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC02cHgpIHJvdGF0ZVkoLTlkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNnB4KSByb3RhdGVZKC05ZGVnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgMTguNSUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCkgcm90YXRlWSg3ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXB4KSByb3RhdGVZKDdkZWcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAzMS41JSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlWSgtNWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZVkoLTVkZWcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA0My41JSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnB4KSByb3RhdGVZKDNkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpIHJvdGF0ZVkoM2RlZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDUwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vc3dpbmfjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9zd2luZygpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgY2VudGVyO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc3dpbmc7XHJcbiAgICBhbmltYXRpb24tbmFtZTogc3dpbmc7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgc3dpbmcge1xyXG4gICAgICAyMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAxNWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAxNWRlZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDQwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC0xMGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtMTBkZWcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA2MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDVkZWcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA4MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAwZGVnKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgc3dpbmcge1xyXG4gICAgICAyMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAxNWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAxNWRlZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDQwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC0xMGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtMTBkZWcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA2MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDVkZWcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA4MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAwZGVnKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL3RhZGHjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl90YWRhKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHRhZGE7XHJcbiAgICBhbmltYXRpb24tbmFtZTogdGFkYTtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyB0YWRhIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAxMCUsIDIwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjksIC45LCAuOSkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguOSwgLjksIC45KSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDMwJSwgNTAlLCA3MCUsIDkwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZTNkKDAsIDAsIDEsIDNkZWcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA0MCUsIDYwJSwgODAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgdGFkYSB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgMTAlLCAyMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC45LCAuOSwgLjkpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjksIC45LCAuOSkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAzMCUsIDUwJSwgNzAlLCA5MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZTNkKDAsIDAsIDEsIDNkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKSByb3RhdGUzZCgwLCAwLCAxLCAzZGVnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNDAlLCA2MCUsIDgwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy93b2JibGXjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl93b2JibGUoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogd29iYmxlO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHdvYmJsZTtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyB3b2JibGUge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDE1JSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC01ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC01ZGVnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgMzAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAzZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDQ1JSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNjAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAyZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgMmRlZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDc1JSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTFkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMWRlZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIHdvYmJsZSB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgMTUlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTVkZWcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAzMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDNkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAzZGVnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNDUlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTE1JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTE1JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA2MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDJkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAyZGVnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNzUlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0xZGVnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL3dvYmJsZeOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX2plbGxvKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGplbGxvO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGplbGxvO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgamVsbG8ge1xyXG4gICAgICBmcm9tLCAxMS4xJSwgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgMjIuMiUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtMTIuNWRlZykgc2tld1koLTEyLjVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2tld1goLTEyLjVkZWcpIHNrZXdZKC0xMi41ZGVnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgMzMuMyUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCg2LjI1ZGVnKSBza2V3WSg2LjI1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKDYuMjVkZWcpIHNrZXdZKDYuMjVkZWcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA0NC40JSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC0zLjEyNWRlZykgc2tld1koLTMuMTI1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKC0zLjEyNWRlZykgc2tld1koLTMuMTI1ZGVnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNTUuNSUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgxLjU2MjVkZWcpIHNrZXdZKDEuNTYyNWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgxLjU2MjVkZWcpIHNrZXdZKDEuNTYyNWRlZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDY2LjYlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTAuNzgxMjVkZWcpIHNrZXdZKC0wLjc4MTI1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKC0wLjc4MTI1ZGVnKSBza2V3WSgtMC43ODEyNWRlZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDc3LjclIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goMC4zOTA2MjVkZWcpIHNrZXdZKDAuMzkwNjI1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKDAuMzkwNjI1ZGVnKSBza2V3WSgwLjM5MDYyNWRlZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDg4LjglIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTAuMTk1MzEyNWRlZykgc2tld1koLTAuMTk1MzEyNWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgtMC4xOTUzMTI1ZGVnKSBza2V3WSgtMC4xOTUzMTI1ZGVnKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgamVsbG8ge1xyXG4gICAgICBmcm9tLCAxMS4xJSwgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgMjIuMiUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtMTIuNWRlZykgc2tld1koLTEyLjVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2tld1goLTEyLjVkZWcpIHNrZXdZKC0xMi41ZGVnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgMzMuMyUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCg2LjI1ZGVnKSBza2V3WSg2LjI1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKDYuMjVkZWcpIHNrZXdZKDYuMjVkZWcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA0NC40JSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC0zLjEyNWRlZykgc2tld1koLTMuMTI1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKC0zLjEyNWRlZykgc2tld1koLTMuMTI1ZGVnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNTUuNSUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgxLjU2MjVkZWcpIHNrZXdZKDEuNTYyNWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgxLjU2MjVkZWcpIHNrZXdZKDEuNTYyNWRlZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDY2LjYlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTAuNzgxMjVkZWcpIHNrZXdZKC0wLjc4MTI1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKC0wLjc4MTI1ZGVnKSBza2V3WSgtMC43ODEyNWRlZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDc3LjclIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goMC4zOTA2MjVkZWcpIHNrZXdZKDAuMzkwNjI1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKDAuMzkwNjI1ZGVnKSBza2V3WSgwLjM5MDYyNWRlZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDg4LjglIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTAuMTk1MzEyNWRlZykgc2tld1koLTAuMTk1MzEyNWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgtMC4xOTUzMTI1ZGVnKSBza2V3WSgtMC4xOTUzMTI1ZGVnKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL2JvdW5jZUlu44Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fYm91bmNlSW4oKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlSW47XHJcbiAgICBhbmltYXRpb24tbmFtZTogYm91bmNlSW47XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlSW4ge1xyXG4gICAgICBmcm9tLCAyMCUsIDQwJSwgNjAlLCA4MCUsIHRvIHtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgMCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAyMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNDAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguOSwgLjksIC45KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjksIC45LCAuOSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDYwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjAzLCAxLjAzLCAxLjAzKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4wMywgMS4wMywgMS4wMyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDgwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjk3LCAuOTcsIC45Nyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC45NywgLjk3LCAuOTcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIGJvdW5jZUluIHtcclxuICAgICAgZnJvbSwgMjAlLCA0MCUsIDYwJSwgODAlLCB0byB7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDAlIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgMjAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDQwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjksIC45LCAuOSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC45LCAuOSwgLjkpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA2MCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4wMywgMS4wMywgMS4wMyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDMsIDEuMDMsIDEuMDMpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA4MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC45NywgLjk3LCAuOTcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguOTcsIC45NywgLjk3KTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vYm91bmNlSW5Eb3du44Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fYm91bmNlSW5Eb3duKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluRG93bjtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbkRvd247XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlSW5Eb3duIHtcclxuICAgICAgZnJvbSwgNjAlLCA3NSUsIDkwJSwgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwMDBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzAwMHB4LCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNjAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyNXB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDI1cHgsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA3NSUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDkwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDVweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1cHgsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyBib3VuY2VJbkRvd24ge1xyXG4gICAgICBmcm9tLCA2MCUsIDc1JSwgOTAlLCB0byB7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDAlIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzAwMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMDAwcHgsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA2MCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDI1cHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjVweCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDc1JSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgOTAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNXB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDVweCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9ib3VuY2VJbkxlZnTjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9ib3VuY2VJbkxlZnQoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlSW5MZWZ0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluTGVmdDtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VJbkxlZnQge1xyXG4gICAgICBmcm9tLCA2MCUsIDc1JSwgOTAlLCB0byB7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDAlIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMzAwMHB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0zMDAwcHgsIDAsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA2MCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDI1cHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjVweCwgMCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDc1JSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgOTAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoNXB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDVweCwgMCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIGJvdW5jZUluTGVmdCB7XHJcbiAgICAgIGZyb20sIDYwJSwgNzUlLCA5MCUsIHRvIHtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgMCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0zMDAwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTMwMDBweCwgMCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDYwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjVweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyNXB4LCAwLCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNzUlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA5MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg1cHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoNXB4LCAwLCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL2JvdW5jZUluUmlnaHTjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9ib3VuY2VJblJpZ2h0KCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluUmlnaHQ7XHJcbiAgICBhbmltYXRpb24tbmFtZTogYm91bmNlSW5SaWdodDtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VJblJpZ2h0IHtcclxuICAgICAgZnJvbSwgNjAlLCA3NSUsIDkwJSwgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgzMDAwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMzAwMHB4LCAwLCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNjAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjVweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjVweCwgMCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDc1JSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDkwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01cHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTVweCwgMCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIGJvdW5jZUluUmlnaHQge1xyXG4gICAgICBmcm9tLCA2MCUsIDc1JSwgOTAlLCB0byB7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDMwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgzMDAwcHgsIDAsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA2MCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNXB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNXB4LCAwLCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNzUlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgOTAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTVweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNXB4LCAwLCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL2JvdW5jZUluVXDjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9ib3VuY2VJblVwKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluVXA7XHJcbiAgICBhbmltYXRpb24tbmFtZTogYm91bmNlSW5VcDtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VJblVwIHtcclxuICAgICAgZnJvbSwgNjAlLCA3NSUsIDkwJSwgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAzMDAwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMzAwMHB4LCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNjAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDc1JSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDkwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01cHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTVweCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgYm91bmNlSW5VcCB7XHJcbiAgICAgIGZyb20sIDYwJSwgNzUlLCA5MCUsIHRvIHtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMzAwMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDMwMDBweCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDYwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA3NSUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA5MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNXB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01cHgsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9ib3VuY2VPdXTjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9ib3VuY2VPdXQoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlT3V0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dDtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VPdXQge1xyXG4gICAgICAyMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC45LCAuOSwgLjkpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguOSwgLjksIC45KTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNTAlLCA1NSUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIGJvdW5jZU91dCB7XHJcbiAgICAgIDIwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjksIC45LCAuOSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC45LCAuOSwgLjkpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA1MCUsIDU1JSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL2JvdW5jZU91dERvd27jga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9ib3VuY2VPdXREb3duKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dERvd247XHJcbiAgICBhbmltYXRpb24tbmFtZTogYm91bmNlT3V0RG93bjtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VPdXREb3duIHtcclxuICAgICAgMjAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNDAlLCA0NSUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyBib3VuY2VPdXREb3duIHtcclxuICAgICAgMjAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNDAlLCA0NSUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vYm91bmNlT3V0TGVmdOOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX2JvdW5jZU91dExlZnQoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlT3V0TGVmdDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRMZWZ0O1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZU91dExlZnQge1xyXG4gICAgICAyMCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjBweCwgMCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyBib3VuY2VPdXRMZWZ0IHtcclxuICAgICAgMjAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMHB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwcHgsIDAsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL2JvdW5jZU91dExlZnTjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9ib3VuY2VPdXRSaWdodCgpe1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dFJpZ2h0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dFJpZ2h0O1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZU91dFJpZ2h0IHtcclxuICAgICAgMjAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjBweCwgMCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgYm91bmNlT3V0UmlnaHQge1xyXG4gICAgICAyMCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMHB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMHB4LCAwLCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vYm91bmNlT3V0VXDjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9ib3VuY2VPdXRVcCgpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRVcDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRVcDtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VPdXRVcCB7XHJcbiAgICAgIDIwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNDAlLCA0NSUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjBweCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyBib3VuY2VPdXRVcCB7XHJcbiAgICAgIDIwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNDAlLCA0NSUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjBweCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vZmFkZUlu44Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fZmFkZUluKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbjtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW47XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIGZhZGVJbiB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vZmFkZUlu44Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fZmFkZUluRG93bigpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Eb3duO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd247XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluRG93biB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyBmYWRlSW5Eb3duIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9mYWRlSW5Eb3duQmln44Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fZmFkZUluRG93bkJpZygpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Eb3duQmlnO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd25CaWc7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluRG93bkJpZyB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgZmFkZUluRG93bkJpZyB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL2ZhZGVJbkxlZnTjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9mYWRlSW5MZWZ0KCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnQ7XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZUluTGVmdDtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5MZWZ0IHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIEBrZXlmcmFtZXMgZmFkZUluTGVmdCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vZmFkZUluTGVmdOOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX2ZhZGVJbkxlZnRCaWcoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluTGVmdEJpZztcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5MZWZ0QmlnO1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkxlZnRCaWcge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIGZhZGVJbkxlZnRCaWcge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9mYWRlSW5SaWdodOOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX2ZhZGVJblJpZ2h0KCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJblJpZ2h0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJblJpZ2h0O1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJblJpZ2h0IHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyBmYWRlSW5SaWdodCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL2ZhZGVJblJpZ2h0Qmln44Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fZmFkZUluUmlnaHRCaWcoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHRCaWc7XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHRCaWc7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluUmlnaHRCaWcge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyBmYWRlSW5SaWdodEJpZyB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9mYWRlSW5VcOOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX2ZhZGVJblVwKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJblVwO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJblVwO1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJblVwIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyBmYWRlSW5VcCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL2ZhZGVJblVwQmln44Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fZmFkZUluVXBCaWcoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluVXBCaWc7XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZUluVXBCaWc7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluVXBCaWcge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyBmYWRlSW5VcEJpZyB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9mYWRlT3V044Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fZmFkZU91dCgpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyBmYWRlT3V0IHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9mYWRlT3V0RG93buOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX2ZhZGVPdXREb3duKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXREb3duO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXREb3duO1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXREb3duIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIGZhZGVPdXREb3duIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9mYWRlT3V0RG93bkJpZ+OBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX2ZhZGVPdXREb3duQmlnKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXREb3duQmlnO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXREb3duQmlnO1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXREb3duQmlnIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyBmYWRlT3V0RG93bkJpZyB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL2ZhZGVPdXRMZWZ044Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fZmFkZU91dExlZnQoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dExlZnQ7XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZU91dExlZnQ7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dExlZnQge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyBmYWRlT3V0TGVmdCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9mYWRlT3V0TGVmdEJpZ+OBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX2ZhZGVPdXRMZWZ0QmlnKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRMZWZ0QmlnO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRMZWZ0QmlnO1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRMZWZ0QmlnIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIGZhZGVPdXRMZWZ0QmlnIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9mYWRlT3V0UmlnaHTjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9mYWRlT3V0UmlnaHQoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dFJpZ2h0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRSaWdodDtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0UmlnaHQge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgZmFkZU91dFJpZ2h0IHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIFxyXG59XHJcblxyXG4vL2ZhZGVPdXRSaWdodEJpZ+OBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX2ZhZGVPdXRSaWdodEJpZygpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0UmlnaHRCaWc7XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZU91dFJpZ2h0QmlnO1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRSaWdodEJpZyB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgZmFkZU91dFJpZ2h0QmlnIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vZmFkZU91dFVw44Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fZmFkZU91dFVwKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRVcDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0VXA7ICAgIFxyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRVcCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIGZhZGVPdXRVcCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9mYWRlT3V0VXBCaWfjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9mYWRlT3V0VXBCaWcoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dFVwQmlnO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRVcEJpZztcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0VXBCaWcge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgZmFkZU91dFVwQmlnIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9mbGlw44Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fZmxpcCgpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmxpcDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBmbGlwO1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIGZsaXAge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0zNjBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0zNjBkZWcpO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDQwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE5MGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgdHJhbnNsYXRlM2QoMCwgMCwgMTUwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xOTBkZWcpO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDUwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE3MGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgdHJhbnNsYXRlM2QoMCwgMCwgMTUwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xNzBkZWcpO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA4MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCguOTUsIC45NSwgLjk1KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZTNkKC45NSwgLjk1LCAuOTUpO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGtleWZyYW1lcyBmbGlwIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMzYwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMzYwZGVnKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xyXG4gICAgICB9XHJcblxyXG4gICAgICA0MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgdHJhbnNsYXRlM2QoMCwgMCwgMTUwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xOTBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHRyYW5zbGF0ZTNkKDAsIDAsIDE1MHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTkwZGVnKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xyXG4gICAgICB9XHJcblxyXG4gICAgICA1MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgdHJhbnNsYXRlM2QoMCwgMCwgMTUwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xNzBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHRyYW5zbGF0ZTNkKDAsIDAsIDE1MHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTcwZGVnKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgICAgfVxyXG5cclxuICAgICAgODAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoLjk1LCAuOTUsIC45NSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCguOTUsIC45NSwgLjk1KTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9mbGlwSW5Y44Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fZmxpcEluWCgpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcclxuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsaXBJblg7XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmxpcEluWDtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBmbGlwSW5YIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCA5MGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgOTBkZWcpO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDQwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtMjBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC0yMGRlZyk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDYwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAxMGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgMTBkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDgwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtNWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTVkZWcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgZmxpcEluWCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgOTBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA0MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtMjBkZWcpO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA2MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgMTBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDEwZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA4MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC01ZGVnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9mbGlwSW5Z44Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fZmxpcEluWSgpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcclxuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsaXBJblk7XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmxpcEluWTtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBmbGlwSW5ZIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDQwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMjBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0yMGRlZyk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDYwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAxMGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgMTBkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDgwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtNWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTVkZWcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgZmxpcEluWSB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDkwZGVnKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA0MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTIwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMjBkZWcpO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA2MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgMTBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDEwZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA4MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC01ZGVnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9mbGlwT3V0WOOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX2ZsaXBPdXRYKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsaXBPdXRYO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZsaXBPdXRYO1xyXG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XHJcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgZmxpcE91dFgge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAzMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtMjBkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCA5MGRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgZmxpcE91dFgge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAzMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtMjBkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCA5MGRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL2ZsaXBPdXRZ44Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fZmxpcE91dFkoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XHJcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmbGlwT3V0WTtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBmbGlwT3V0WTtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBmbGlwT3V0WSB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDMwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xNWRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDkwZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyBmbGlwT3V0WSB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDMwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xNWRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDkwZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vbGlnaHRTcGVlZElu44Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fbGlnaHRTcGVlZEluKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGxpZ2h0U3BlZWRJbjtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBsaWdodFNwZWVkSW47XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xyXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgbGlnaHRTcGVlZEluIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKC0zMGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBza2V3WCgtMzBkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDYwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDIwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKDIwZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA4MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtNWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgtNWRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyBsaWdodFNwZWVkSW4ge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goLTMwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKC0zMGRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgNjAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goMjBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2tld1goMjBkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDgwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC01ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKC01ZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuICAgIH0gICAgXHJcbn1cclxuXHJcbi8vbGlnaHRTcGVlZE91dOOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX2xpZ2h0U3BlZWRPdXQoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogbGlnaHRTcGVlZE91dDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBsaWdodFNwZWVkT3V0O1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBsaWdodFNwZWVkT3V0IHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBza2V3WCgzMGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBza2V3WCgzMGRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgbGlnaHRTcGVlZE91dCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goMzBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goMzBkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9yb3RhdGVJbuOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX3JvdGF0ZUluKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluO1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZUluIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtMjAwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC0yMDBkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIHJvdGF0ZUluIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtMjAwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC0yMDBkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9yb3RhdGVJbkRvd25MZWZ044Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fcm90YXRlSW5Eb3duTGVmdCgpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVJbkRvd25MZWZ0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluRG93bkxlZnQ7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlSW5Eb3duTGVmdCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyByb3RhdGVJbkRvd25MZWZ0IHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9yb3RhdGVJbkRvd25SaWdodOOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX3JvdGF0ZUluRG93blJpZ2h0KCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluRG93blJpZ2h0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluRG93blJpZ2h0O1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZUluRG93blJpZ2h0IHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgcm90YXRlSW5Eb3duUmlnaHQge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vcm90YXRlSW5VcExlZnTjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9yb3RhdGVJblVwTGVmdCgpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVJblVwTGVmdDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVJblVwTGVmdDtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVJblVwTGVmdCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgcm90YXRlSW5VcExlZnQge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9yb3RhdGVJblVwUmlnaHTjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9yb3RhdGVJblVwUmlnaHQoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlSW5VcFJpZ2h0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluVXBSaWdodDtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVJblVwUmlnaHQge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC05MGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtOTBkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIHJvdGF0ZUluVXBSaWdodCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTkwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC05MGRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxufVxyXG5cclxuLy9yb3RhdGVPdXTjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9yb3RhdGVPdXQoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlT3V0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dDtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVPdXQge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMjAwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDIwMGRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgcm90YXRlT3V0IHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDIwMGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAyMDBkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9yb3RhdGVPdXTjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9yb3RhdGVPdXREb3duTGVmdCgpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXREb3duTGVmdDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXREb3duTGVmdDtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVPdXREb3duTGVmdCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyByb3RhdGVPdXREb3duTGVmdCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vcm90YXRlT3V0RG93blJpZ2h044Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fcm90YXRlT3V0RG93blJpZ2h0KCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dERvd25SaWdodDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXREb3duUmlnaHQ7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlT3V0RG93blJpZ2h0IHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIHJvdGF0ZU91dERvd25SaWdodCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vcm90YXRlT3V0RG93blJpZ2h044Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fcm90YXRlT3V0VXBMZWZ0KCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dFVwTGVmdDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXRVcExlZnQ7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlT3V0VXBMZWZ0IHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgcm90YXRlT3V0VXBMZWZ0IHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL3JvdGF0ZU91dERvd25SaWdodOOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX3JvdGF0ZU91dFVwUmlnaHQoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlT3V0VXBSaWdodDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXRVcFJpZ2h0O1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZU91dFVwUmlnaHQge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgOTBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgOTBkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIHJvdGF0ZU91dFVwUmlnaHQge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgOTBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgOTBkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIH1cclxuICAgIH0gICAgXHJcbn1cclxuXHJcbi8vaGluZ2Xjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9oaW5nZSgpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBoaW5nZTtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBoaW5nZTtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBoaW5nZSB7XHJcbiAgICAgIDAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDIwJSwgNjAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgODBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgODBkZWcpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcclxuICAgICAgfVxyXG5cclxuICAgICAgNDAlLCA4MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA2MGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA2MGRlZyk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNzAwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNzAwcHgsIDApO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIGhpbmdlIHtcclxuICAgICAgMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcclxuICAgICAgfVxyXG5cclxuICAgICAgMjAlLCA2MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA4MGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA4MGRlZyk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xyXG4gICAgICB9XHJcblxyXG4gICAgICA0MCUsIDgwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDYwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDYwZGVnKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA3MDBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA3MDBweCwgMCk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL3JvbGxJbuOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX3JvbGxJbigpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb2xsSW47XHJcbiAgICBhbmltYXRpb24tbmFtZTogcm9sbEluO1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIHJvbGxJbiB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMTIwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMTIwZGVnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyByb2xsSW4ge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTEyMGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTEyMGRlZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL3JvbGxPdXTjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9yb2xsT3V0KCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvbGxPdXQ7XHJcbiAgICBhbmltYXRpb24tbmFtZTogcm9sbE91dDtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyByb2xsT3V0IHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDEyMGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAxMjBkZWcpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyByb2xsT3V0IHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDEyMGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAxMjBkZWcpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vem9vbUlu44Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fem9vbUluKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21JbjtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiB6b29tSW47XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgem9vbUluIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDUwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgem9vbUluIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDUwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL3pvb21JbkRvd27jga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl96b29tSW5Eb3duKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21JbkRvd247XHJcbiAgICBhbmltYXRpb24tbmFtZTogem9vbUluRG93bjtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyB6b29tSW5Eb3duIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAtMTAwMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgLTEwMDBweCwgMCk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDYwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCA2MHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyB6b29tSW5Eb3duIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAtMTAwMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgLTEwMDBweCwgMCk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDYwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCA2MHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vem9vbUluTGVmdOOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX3pvb21JbkxlZnQoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbUluTGVmdDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiB6b29tSW5MZWZ0O1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIHpvb21JbkxlZnQge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKC0xMDAwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgtMTAwMHB4LCAwLCAwKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNjAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIHpvb21JbkxlZnQge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKC0xMDAwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgtMTAwMHB4LCAwLCAwKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNjAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy96b29tSW5SaWdodOOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX3pvb21JblJpZ2h0KCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21JblJpZ2h0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHpvb21JblJpZ2h0O1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIHpvb21JblJpZ2h0IHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgxMDAwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgxMDAwcHgsIDAsIDApO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA2MCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyB6b29tSW5SaWdodCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMTAwMHB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMTAwMHB4LCAwLCAwKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNjAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL3pvb21JblVw44Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fem9vbUluVXAoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbUluVXA7XHJcbiAgICBhbmltYXRpb24tbmFtZTogem9vbUluVXA7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgem9vbUluVXAge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIDEwMDBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIDEwMDBweCwgMCk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDYwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDAsIC02MHB4LCAwKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIHpvb21JblVwIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAxMDAwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAxMDAwcHgsIDApO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA2MCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vem9vbU91dOOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX3pvb21PdXQoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbU91dDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiB6b29tT3V0O1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIHpvb21PdXQge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA1MCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgem9vbU91dCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDUwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vem9vbU91dERvd27jga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl96b29tT3V0RG93bigpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tT3V0RG93bjtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiB6b29tT3V0RG93bjtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyB6b29tT3V0RG93biB7XHJcbiAgICAgIDQwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDAsIC02MHB4LCAwKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIHpvb21PdXREb3duIHtcclxuICAgICAgNDAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDAsIC02MHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL3pvb21PdXRMZWZ044Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fem9vbU91dExlZnQoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbU91dExlZnQ7XHJcbiAgICBhbmltYXRpb24tbmFtZTogem9vbU91dExlZnQ7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgem9vbU91dExlZnQge1xyXG4gICAgICA0MCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoNDJweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDQycHgsIDAsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLjEpIHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLjEpIHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBjZW50ZXI7XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBjZW50ZXI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIHpvb21PdXRMZWZ0IHtcclxuICAgICAgNDAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDQycHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCg0MnB4LCAwLCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC4xKSB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC4xKSB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgY2VudGVyO1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgY2VudGVyO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vem9vbU91dFJpZ2h044Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fem9vbU91dFJpZ2h0KCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21PdXRSaWdodDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiB6b29tT3V0UmlnaHQ7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgem9vbU91dFJpZ2h0IHtcclxuICAgICAgNDAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKC00MnB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoLTQycHgsIDAsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLjEpIHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSguMSkgdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGNlbnRlcjtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBjZW50ZXI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIHpvb21PdXRSaWdodCB7XHJcbiAgICAgIDQwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgtNDJweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKC00MnB4LCAwLCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC4xKSB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLjEpIHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBjZW50ZXI7XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgY2VudGVyO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vem9vbU91dFVw44Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fem9vbU91dFVwKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21PdXRVcDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiB6b29tT3V0VXA7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgem9vbU91dFVwIHtcclxuICAgICAgNDAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCA2MHB4LCAwKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgem9vbU91dFVwIHtcclxuICAgICAgNDAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCA2MHB4LCAwKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL3NsaWRlSW5Eb3du44Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fc2xpZGVJbkRvd24oKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVJbkRvd247XHJcbiAgICBhbmltYXRpb24tbmFtZTogc2xpZGVJbkRvd247XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVJbkRvd24ge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xyXG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgc2xpZGVJbkRvd24ge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xyXG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL3NsaWRlSW5MZWZ044Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fc2xpZGVJbkxlZnQoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVJbkxlZnQ7XHJcbiAgICBhbmltYXRpb24tbmFtZTogc2xpZGVJbkxlZnQ7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVJbkxlZnQge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xyXG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgc2xpZGVJbkxlZnQge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xyXG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL3NsaWRlSW5MZWZ044Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fc2xpZGVJbkxlZnQoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVJblJpZ2h0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5SaWdodDtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBzbGlkZUluUmlnaHQge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcclxuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIHNsaWRlSW5SaWdodCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xyXG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL3NsaWRlSW5VcOOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX3NsaWRlSW5VcCgpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzbGlkZUluVXA7XHJcbiAgICBhbmltYXRpb24tbmFtZTogc2xpZGVJblVwO1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlSW5VcCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xyXG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgc2xpZGVJblVwIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vc2xpZGVPdXREb3du44Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fc2xpZGVPdXREb3duKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0RG93bjtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dERvd247XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVPdXREb3duIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIHNsaWRlT3V0RG93biB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vc2xpZGVPdXRMZWZ044Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fc2xpZGVPdXRMZWZ0KCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0TGVmdDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dExlZnQ7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVPdXRMZWZ0IHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgc2xpZGVPdXRMZWZ0IHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL3NsaWRlT3V0UmlnaHTjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9zbGlkZU91dFJpZ2h0KCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0UmlnaHQ7XHJcbiAgICBhbmltYXRpb24tbmFtZTogc2xpZGVPdXRSaWdodDtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBzbGlkZU91dFJpZ2h0IHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIHNsaWRlT3V0UmlnaHQge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL3NsaWRlT3V0VXDjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9zbGlkZU91dFVwKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0VXA7XHJcbiAgICBhbmltYXRpb24tbmFtZTogc2xpZGVPdXRVcDtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBzbGlkZU91dFVwIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgc2xpZGVPdXRVcCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy/jg5vjg6/jg4Pjgajog4zmma/jga7oibLjgpLlpInmm7TjgZnjgovjgIJcclxuQG1peGluIGJ1dHRvbnR5cGUwMigkYmFzZWJhY2tjb2xvciwkYmFzZWJvZGVyY29sb3IsJGJhc2Vib2RlcnB4LCRiYXNldGV4dGNvbG9yLCRob3ZlcmJhY2tjb2xvciwkaG92ZXJib2RlcmNvbG9yLCRob3ZlcnRleHRjb2xvcikge1xyXG4gICAgQGluY2x1ZGUgYnV0dG9uYmFzZSgpO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhc2ViYWNrY29sb3I7XHJcbiAgICBib3JkZXI6ICRiYXNlYm9kZXJweCBzb2xpZCAkYmFzZWJvZGVyY29sb3I7XHJcbiAgICBjb2xvcjogJGJhc2V0ZXh0Y29sb3I7XHJcbiAgICAmOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXJiYWNrY29sb3I7XHJcblx0Ym9yZGVyLWNvbG9yOiAkaG92ZXJib2RlcmNvbG9yO1xyXG5cdGNvbG9yOiAkaG92ZXJ0ZXh0Y29sb3I7XHJcbiAgICB9XHJcbn1cclxuIiwKCQkiLmJnX0ZGOTJCMCB7XG4gICAgYmFja2dyb3VuZDogI0ZGOTJCMDtcbn1cbi5iZ18zMkM5RTkge1xuICAgIGJhY2tncm91bmQ6ICMzMkM5RTk7XG59XG4uY2xfZmZmIHtcbiAgICBjb2xvcjogI0ZGRjtcbn1cbi5iZ180QTc1NkYge1xuICAgIGJhY2tncm91bmQ6ICM0QTc1NkY7XG59XG4uYmdfRjZGNkY2IHtcbiAgICBiYWNrZ3JvdW5kOiAjRjZGNkY2O1xufSIsCgkJIkBpbXBvcnQgJ18wMV9mb3JtVG9wJzsiLAoJCSIvKlxuVG8gY2hhbmdlIHRoaXMgbGljZW5zZSBoZWFkZXIsIGNob29zZSBMaWNlbnNlIEhlYWRlcnMgaW4gUHJvamVjdCBQcm9wZXJ0aWVzLlxuVG8gY2hhbmdlIHRoaXMgdGVtcGxhdGUgZmlsZSwgY2hvb3NlIFRvb2xzIHwgVGVtcGxhdGVzXG5hbmQgb3BlbiB0aGUgdGVtcGxhdGUgaW4gdGhlIGVkaXRvci5cbiovXG4vKlxuICAgIENyZWF0ZWQgb24gOiAyMDIyLzA5LzA1LCAxMzoyOTowNVxuICAgIEF1dGhvciAgICAgOiBTUEctMTEwNVxuKi9cblxuXG4iLAoJCSIuZm9ybVRhYmxlIC50ZEZvcm1UYWJsZSB7XHJcbiAgICBAaW5jbHVkZSBvbnRlbmVyX3dpZHRoKDEwMDAgLCA3NjApO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKXtcclxuICAgICAgICBAaW5jbHVkZSBwYWRkaW5nUGVyY2VudCgxMDAwICwgMTQgLCAwICwgMjUgLCAwKTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxufVxyXG4ucmVhZFByaXZhY3lDb21maXJtIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuLmNvbmZpcm1CdG1GeCB7XHJcbiAgICBAaW5jbHVkZSBvbnRlbmVyX3dpZHRoKDEwMDAgLCA4MTApO1xyXG4gICAgQGluY2x1ZGUgbWFyZ2luUGVyY2VudCgxMDAwICwgNjQgLCBhdXRvICwgMCAsIGF1dG8pO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKSB7XHJcbiAgICAgICAgQGluY2x1ZGUgb250ZW5lcl93aWR0aCgzMzUgLCAzMTUpO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDglO1xyXG4gICAgfVxyXG59XHJcbi5iYWNrQnV0dG9uV2FwIHtcclxuICAgIEBpbmNsdWRlIG9udGVuZXJfd2lkdGgoODEwICwgMzkwKTtcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCkge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG59XHJcbi5iYWNrQnV0dG9uIHtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICM0QTc1NkY7XHJcbiAgICBjb2xvcjogIzRBNzU2RjtcclxuICAgIEBpbmNsdWRlIGthZG9tYXJ1KDRweCk7XHJcbiAgICBAaW5jbHVkZSBidXR0b250eXBlMDIoI2ZmZiwjNEE3NTZGLDFweCwjNEE3NTZGLCM0QTc1NkYsIzRBNzU2RiwjRkZGKTsgXHJcbiAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9iYWNrQnV0dG9uQXJyb3cuc3ZnKTtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAzOCU7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgbGVmdCA2JTtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBoZWlnaHQ6IDcwcHg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgQGluY2x1ZGUgcGFkZGluZ1BlcmNlbnQoMTAwMCAsIDAgLCAwICwgMCAsIDIxKTtcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCl7XHJcbiAgICAgICAgQGluY2x1ZGUgaGVpZ2h0VndTcCg2NCk7XHJcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGxlZnQgNyU7XHJcbiAgICB9XHJcbiAgICAmOmhvdmVye1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvd2hfYXJyb3dfbGVmdC5zdmcpO1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAzOCU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGxlZnQgNiU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkc3Ape1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgbGVmdCA3JTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLmJhY2tCdXR0b25XYXAgYnV0dG9uLmJhY2tCdXR0b24ge1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgIEBpbmNsdWRlIHJzRm9udFNpemUoMTYgLCAxNiAsIDE1KTtcclxuICAgIHBhZGRpbmc6IDA7XHJcbn1cclxuLnN1Ym1pdEJ1dHRvbldhcCB7XHJcbiAgICBAaW5jbHVkZSBvbnRlbmVyX3dpZHRoKDgxMCAsIDM5MCk7XHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkc3ApIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBtYXJnaW4tdG9wOiA1Ljc3JTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwJTtcclxuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zZW5kQnV0dG9uIHtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGNvbG9yOiAjRkZGO1xyXG4gICAgQGluY2x1ZGUga2Fkb21hcnUoNHB4KTtcclxuICAgIEBpbmNsdWRlIGJ1dHRvbnR5cGUwMigjNEE3NTZGLCM0QTc1NkYsMXB4LCNGRkYsIzMzMywjMzMzLCNGRkYpOyBkaXNwbGF5OmJsb2NrO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy93aF9hcnJvdy5zdmcpO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDM4JTtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciByaWdodCA1JTtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBoZWlnaHQ6IDcwcHg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkc3Ape1xyXG4gICAgICAgIEBpbmNsdWRlIGhlaWdodFZ3U3AoNjQpO1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciByaWdodCA2JTtcclxuICAgIH0gXHJcbn1cclxuYnV0dG9uLnNlbmRCdXR0b24ge1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgIEBpbmNsdWRlIHJzRm9udFNpemUoMTYgLCAxNiwgMTUpO1xyXG4gICAgXHJcbn1cclxuLm5vd0NvbmZyaW0uZm9ybUNudCB7XHJcbiAgICAgQGluY2x1ZGUgbWFyZ2luUGVyY2VudCgxMDAwICwgODAgLCBhdXRvICwgMCAsIGF1dG8pO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTYuNSU7XHJcbiAgICB9XHJcbn1cclxuLm5vd0NvbmZyaW0gLm5vd0NvbmZyaW0uZm9ybUNudCB0aC50aGZvcm1UYWJsZS50aGZvcm1UYWJsZTAxe1xyXG4gICAgXHJcbiAgICBAaW5jbHVkZSBwYWRkaW5nUGVyY2VudCgxMDAwICwgMjAgLCAwICwgMCAsIDIwKTtcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCl7XHJcbiAgICAgICAgcGFkZGluZzogMi45OCUgMCUgMC4xNyUgMCU7XHJcbiAgICB9XHJcbn0gXHJcbi5ub3dDb25mcmltLmZvcm1DbnQgLnRoZm9ybVRhYmxlX25pY2hpaml7XHJcbiAgICBwYWRkaW5nOiAxLjMlIDAgMCAwJTtcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCl7XHJcbiAgICAgICAgcGFkZGluZzogMi45OCUgMCUgMC4xNyUgMCU7XHJcbiAgICB9XHJcbn1cclxuLm5vd0NvbmZyaW0uZm9ybUNudCAudGhmb3JtVGFibGVfdGV4dGFyZWF7XHJcbiAgICBAaW5jbHVkZSBwYWRkaW5nUGVyY2VudCgxMDAwICwgMjAgLCAwICwgMCAsIDIwKTtcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCl7XHJcbiAgICAgICAgcGFkZGluZzogMi45OCUgMCUgMC4xNyUgMCU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5ub3dDb25mcmltIHtcclxuICAgIC5mb3JtVGFibGUge1xyXG4gICAgICAgIEBpbmNsdWRlIG1hcmdpblBlcmNlbnQoMTAwMCAsIDQyICwgYXV0byAsIDAgLCBhdXRvKTtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkc3Ape1xyXG4gICAgICAgICAgICBtYXJnaW46IDguOCUgYXV0byAwIGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmZvcm1EZXRhaWxTdWJkaXZpc2lvbktlbmdha3Uge1xyXG4gICAgICAgIEBpbmNsdWRlIG1hcmdpblBlcmNlbnQoMTAwMCAsIDQyICwgYXV0byAsIDAgLCBhdXRvKTtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkc3ApIHtcclxuICAgICAgICAgICAgbWFyZ2luOiA4JSBhdXRvIDAgYXV0bztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuZm9ybURldGFpbFN1YmRpdmlzaW9uIHtcclxuICAgICAgICBAaW5jbHVkZSBtYXJnaW5QZXJjZW50KDEwMDAgLCA0MiAsIGF1dG8gLCAwICwgYXV0byk7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHNwKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMTEuNSUgYXV0byAwIGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnVzZXJGb3JtIHtcclxuICAgICAgICBAaW5jbHVkZSBtYXJnaW5QZXJjZW50KDEwMDAgLCA0MiAsIGF1dG8gLCAwICwgYXV0byk7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHNwKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMTEuNSUgYXV0byAwIGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmZvcm1UYWJsZSB0ZC50ZGZvcm1UYWJsZSAsLmZvcm1UYWJsZSB0ZC50ZEZvcm1UYWJsZXtcclxuICAgICAgICBAaW5jbHVkZSBwYWRkaW5nUGVyY2VudCgxMDAwICwgMTAuODQgLCAwICwgMTAuODUgLCAzMCk7XHJcbiAgICAgICAgQGluY2x1ZGUgcnNGb250U2l6ZSgxNSAsIDE1ICwgMTQpO1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCRzcCkge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogNyUgMCUgNy4zJSAwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuIiwKCQkiXHJcbi5mb3JtVG9wIHAudHh0Zm9ybVRvcFRoYW5rc3tcclxuICAgICBAaW5jbHVkZSBtZWRpYSgkc3ApIHtcclxuICAgICAgICAgICAgIG1hcmdpbi10b3A6IDguOSU7XHJcbiAgICAgfVxyXG59XHJcblxyXG5cclxuLnRoYW5rc0J1dHRvbiB7XHJcbiAgICB3aWR0aDogMzIuNSU7XHJcbiAgICBAaW5jbHVkZSBtYXJnaW5QZXJjZW50KDEwMDAgLCA4MCAsIGF1dG8gLCAwICwgYXV0byk7XHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkc3ApIHtcclxuICAgICAgICAgICB3aWR0aDogOTMuNDYlO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDE2LjgzJTtcclxuICAgIH1cclxuICAgIGEge1xyXG4gICAgICAgICBAaW5jbHVkZSBwYWRkaW5nUGVyY2VudCgxMDAwICwgMiAsIDAgLCAwICwgMCk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgY29sb3I6ICNGRkY7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICBAaW5jbHVkZSByc0ZvbnRTaXplKDE2ICwgMTYgLCAxNSk7XHJcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9udHlwZTAyKCM0QTc1NkYsIzRBNzU2RiwxcHgsI0ZGRiwjMzMzLCMzMzMsI0ZGRik7IGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy93aF9hcnJvdy5zdmcpO1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAzOCU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHJpZ2h0IDUlO1xyXG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgaGVpZ2h0OiA3MHB4O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkc3Ape1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBoZWlnaHRWd1NwKDY0KTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHJpZ2h0IDYlO1xyXG4gICAgICAgIH0gXHJcbiAgICB9XHJcbn1cclxuXHJcbiIsCgkJIlxyXG4uaW5xZXJ5RnZCdG17XHJcbiAgICBAaW5jbHVkZSBwYWRkaW5nUGVyY2VudCgxMDAwICwgMTYgLCAwICwxNiAsIDApO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKXtcclxuICAgICAgICAgICAgcGFkZGluZzogNS4zMyUgMCUgNC4zMyUgMCU7XHJcbiAgICB9XHJcbiAgIFxyXG59XHJcbi5pbnFlcnlGdkJ0bVdhcHtcclxuICAgIHdpZHRoOiAxMDA3cHg7XHJcbiAgICBtYXJnaW46IGF1dG87XHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkdGFiKXtcclxuICAgICAgICBAaW5jbHVkZSBvbnRlbmVyX3dpZHRoKDEyMDAsMTAwNyk7XHJcbiAgICB9ICAgXHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkc3Ape1xyXG4gICAgICAgIEBpbmNsdWRlIG9udGVuZXJfd2lkdGgoMzc1LDMzNSk7XHJcbiAgICB9XHJcbn1cclxuLmgyaW5xZXJ5RnZCdG17XHJcbiAgICAgQGluY2x1ZGUgcGFkZGluZ1BlcmNlbnQoMTAwMCAsIDYgLCAwICw2ICwgMCk7XHJcbiAgICAgQGluY2x1ZGUgbWVkaWEoJHNwKXtcclxuICAgICAgICAgICAgIHBhZGRpbmc6IDEuNDklIDAlIDAuOCUgMCU7XHJcbiAgICAgICAgXHJcbiAgICB9XHJcbn1cclxuXHJcbi50eHRpbnFlcnlGdkJ0bXtcclxuICAgICBAaW5jbHVkZSBvbnRlbmVyX3dpZHRoKDEwMDcsOTI2KTtcclxuICAgICBAaW5jbHVkZSByc0ZvbnRTaXplKDEzICwgMTMgLCAxMSk7XHJcbiAgICAgbGluZS1oZWlnaHQ6IDEuNztcclxuICAgICBAaW5jbHVkZSBtZWRpYSgkc3Ape1xyXG4gICAgICAgICAgICAgbWFyZ2luLXRvcDogMy41JTtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMCU7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgIEBpbmNsdWRlIG9udGVuZXJfd2lkdGgoMzM1LDMzNSk7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4iLAoJCSJcclxuXHJcblxyXG4uZm9ybU1haW57XHJcbiAgICBAaW5jbHVkZSBtYXJnaW5QZXJjZW50KDE5MjAgLCAxMjkgLCBhdXRvICwgMCAsIGF1dG8pO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKXtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxNS4xJTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwJTtcclxuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICB9XHJcbn1cclxuLmZvcm1XYXAge1xyXG4gICAgIEBpbmNsdWRlIG9udGVuZXJfd2lkdGgoMTIwMCAsIDEwMDApO1xyXG4gICAgIG1hcmdpbjogYXV0bztcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCkge1xyXG4gICAgICAgIEBpbmNsdWRlIG9udGVuZXJfd2lkdGgoMzc1ICwgMzM1KTtcclxuICAgICAgICBAaW5jbHVkZSBtYXJnaW5QZXJjZW50KDM3NSAsIDAgLCBhdXRvICwgMCAsIGF1dG8pO1xyXG4gICAgfVxyXG59XHJcbi5mb3JtVG9wIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcbmgxLmgxZm9ybVRvcCB7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgQGluY2x1ZGUgcnNGb250U2l6ZSgzMCAsIDMwICwgMjQpO1xyXG59XHJcbnAudHh0Zm9ybVRvcCB7XHJcbiAgICBAaW5jbHVkZSByc0ZvbnRTaXplKDE1ICwgMTUgLCAxMik7XHJcbiAgICBAaW5jbHVkZSBsaW5laGVpZ2h0KDE1ICwgMjQpO1xyXG4gICAgQGluY2x1ZGUgbWFyZ2luUGVyY2VudCgxMDAwICwgNTQgLCBhdXRvICwgMCAsIGF1dG8pO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKSB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIEBpbmNsdWRlIGxpbmVoZWlnaHQoMTIgLCAxOSk7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogOSU7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCU7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgfVxyXG59XHJcbnAudHh0Zm9ybVRvcFRoYW5rc3tcclxuICAgIEBpbmNsdWRlIG1hcmdpblBlcmNlbnQoMTAwMCAsIDUzICwgYXV0byAsIDAgLCBhdXRvKTtcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCkge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDIxLjclO1xyXG4gICAgfVxyXG59XHJcbi5QaWNmb3JtU3RlcCB7XHJcbiAgICB3aWR0aDogMzYuNyU7XHJcbiAgICBAaW5jbHVkZSBtYXJnaW5QZXJjZW50KDEwMDAgLCA1OSwgYXV0byAsIDAgLCBhdXRvKTtcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCkge1xyXG4gICAgICAgIEBpbmNsdWRlIG9udGVuZXJfd2lkdGgoMzM1ICwgMjc1KTtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxMi45NCU7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCU7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgfVxyXG4gICAgaW1nIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbn1cclxuLmZvcm1DbnQge1xyXG4gICAgQGluY2x1ZGUgbWFyZ2luUGVyY2VudCgxMDAwICwgODQgLCBhdXRvICwgMCAsIGF1dG8pO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTcuOSU7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCU7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgfVxyXG59XHJcbi5zZWNGb3JtRGV0YWlsU3ViZGl2aXNpb257XHJcbiAgICBib3JkZXItbGVmdDogNXB4IHNvbGlkICMwMDc1OEU7XHJcbiAgICBAaW5jbHVkZSBwYWRkaW5nUGVyY2VudCgxMDAwICwgMCAsIDAgLCAwICwgMTgpO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKXtcclxuICAgICAgICAgQGluY2x1ZGUgcGFkZGluZ1BlcmNlbnQoMzc1ICwgMiAsIDAgLCAyICwgMTApO1xyXG4gICAgfVxyXG59XHJcbi5mb3JtTWFpbiAuaDJzZWNGb3JtRGV0YWlsU3ViZGl2aXNpb257XHJcbiAgICBAaW5jbHVkZSByc0ZvbnRTaXplKDI0ICwgMjQgLCAyMCk7XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcclxufVxyXG4uZm9ybU1haW4gLnR4dHNlY0Zvcm1EZXRhaWxTdWJkaXZpc2lvbntcclxuICAgIEBpbmNsdWRlIG1hcmdpblBlcmNlbnQoMTAwMCAsIDAgLCAwICwgMCAsIDApO1xyXG4gICAgQGluY2x1ZGUgcnNGb250U2l6ZSgxNSAsIDE1ICwgMTIpO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCl7XHJcbiAgICAgICAgIEBpbmNsdWRlIG1hcmdpblBlcmNlbnQoMzc1ICwgNCAsIDAgLCAwICwgMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8q44OG44O844OW44Or44Gu6Kit5a6aKi9cclxuLmZvcm1UYWJsZS5mb3JtVGFibGUwMXtcclxuICAgIEBpbmNsdWRlIG1hcmdpblBlcmNlbnQoMTAwMCAsIDQyICwgYXV0byAsIDAgLCBhdXRvKTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgIEBpbmNsdWRlIG1lZGlhKCRzcCl7XHJcbiAgICAgICAgIG1hcmdpbi10b3A6IDguNyU7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCU7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgQGluY2x1ZGUgb250ZW5lcl93aWR0aCgzMzUgLCAzMDUpO1xyXG4gICAgfVxyXG59XHJcbi5mb3JtVGFibGV7XHJcbiAgICBAaW5jbHVkZSBtYXJnaW5QZXJjZW50KDEwMDAgLCA1MCAsIGF1dG8gLCAwICwgYXV0byk7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgICBAaW5jbHVkZSBtZWRpYSgkc3Ape1xyXG4gICAgICAgIG1hcmdpbjogOSUgYXV0byAwIGF1dG87XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgQGluY2x1ZGUgb250ZW5lcl93aWR0aCgzMzUgLCAzMDUpO1xyXG4gICAgfVxyXG59XHJcbi5mb3JtTWFpbiAudGhmb3JtVGFibGV7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgQGluY2x1ZGUgb250ZW5lcl93aWR0aCgxMDAwICwgMjYxKTtcclxuICAgIEBpbmNsdWRlIHBhZGRpbmdQZXJjZW50KDEwMDAgLCAwICwgMCAsIDAgLCAyMCk7XHJcbiAgICBcclxuICAgIEBpbmNsdWRlIG1lZGlhKCR0YWIpe1xyXG4gICAgICAgIHdpZHRoOiAyOC4xJTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKXtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwYWRkaW5nOiAxLjM5JSAwJSAxLjQlIDAlO1xyXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICB9XHJcbn1cclxuLmZvcm1NYWluIC50aGZvcm1UYWJsZV90ZXh0YXJlYXtcclxuICAgIEBpbmNsdWRlIHBhZGRpbmdQZXJjZW50KDEwMDAgLCAyNyAsIDAgLCAwICwgMjApO1xyXG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCl7XHJcbiAgICAgICAgIHBhZGRpbmc6IDEuNzYlIDAlIDElIDAlO1xyXG4gICAgfVxyXG59XHJcbmgzLmgzZm9ybVRhYmxlRnh7XHJcbiAgICBAaW5jbHVkZSByc0ZvbnRTaXplKDE2ICwgMTYgLCAxNCk7XHJcbiAgICAgQGluY2x1ZGUgbGluZWhlaWdodCgxNiAsIDI2KTtcclxuICAgICBmb250LXdlaWdodDogNjAwO1xyXG59XHJcbi5mb3JtTWFpbiB7XHJcbiAgICB0Ym9keSx0cntcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkc3Ape1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5mb3JtTWFpbiAuaGlzc3Vmb3JtVGFibGVGeHtcclxuICAgIEBpbmNsdWRlIG9udGVuZXJfd2lkdGgoMjQ0ICwgNDMpO1xyXG4gICAgaGVpZ2h0OiAyMnB4O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIEBpbmNsdWRlIGthZG9tYXJ1KDNweCk7XHJcbiAgICBAaW5jbHVkZSByc0ZvbnRTaXplKDEyICwgMTIgLCAxMik7XHJcbiAgICBAaW5jbHVkZSBsaW5laGVpZ2h0KDEyICwgMTMpO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7IFxyXG4gICAgY29sb3I6ICNGRkY7XHJcbiAgICBiYWNrZ3JvdW5kOiAjRkY5MkIwO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKXtcclxuICAgICAgICB3aWR0aDogMTMuODMlO1xyXG4gICAgICAgIEBpbmNsdWRlIGhlaWdodFZ3U3AoMjIpO1xyXG4gICAgfVxyXG59XHJcbi5mb3JtTWFpbiAubmluaWZvcm1UYWJsZUZ4e1xyXG4gICAgQGluY2x1ZGUgb250ZW5lcl93aWR0aCgyNDQgLCA0Myk7XHJcbiAgICBoZWlnaHQ6IDIycHg7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgQGluY2x1ZGUga2Fkb21hcnUoM3B4KTtcclxuICAgIEBpbmNsdWRlIHJzRm9udFNpemUoMTIgLCAxMiAsIDEyKTtcclxuICAgIEBpbmNsdWRlIGxpbmVoZWlnaHQoMTIgLCAxMyk7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDsgXHJcbiAgICBjb2xvcjogI0ZGRjtcclxuICAgIGJhY2tncm91bmQ6ICMzMkM5RTk7IFxyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKXtcclxuICAgICAgICB3aWR0aDogMTMuODMlO1xyXG4gICAgICAgIEBpbmNsdWRlIGhlaWdodFZ3U3AoMjIpO1xyXG4gICAgfVxyXG59XHJcbi5mb3JtTWFpbiAudGRmb3JtVGFibGV7XHJcbiAgICBAaW5jbHVkZSBvbnRlbmVyX3dpZHRoKDEwMDAgLCA3NjApO1xyXG4gICAgQGluY2x1ZGUgcGFkZGluZ1BlcmNlbnQoMTAwMCAsIDEwICwgMCAsIDEwICwgMzApO1xyXG4gICAgQGluY2x1ZGUgbGluZWhlaWdodCgxNiAsIDMyKTtcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCl7XHJcbiAgICAgICAgcGFkZGluZzogMy4yJSAwJSAzLjElIDAlO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG59XHJcbi50ZGZvcm1UYWJsZS50ZGZvcm1UYWJsZV9yYWRpbyB7XHJcbiAgICBAaW5jbHVkZSBwYWRkaW5nUGVyY2VudCgxMDAwICwgMTUgLCAwICwgMTUgLCAzMCk7XHJcbiAgICBcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCl7XHJcbiAgICAgICAgcGFkZGluZzogMy4yJSAwJSAzLjUlIDAlO1xyXG4gICAgfVxyXG59XHJcbi5mb3JtTWFpbiAudGRmb3JtVGFibGU6YmVmb3JlLC5mb3JtTWFpbiAudGRmb3JtVGFibGUgaW5wdXQ6YmVmb3JlLC5mb3JtTWFpbiAudGRmb3JtVGFibGU6YWZ0ZXIsLmZvcm1NYWluIC50ZGZvcm1UYWJsZSBpbnB1dDphZnRlcntcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcblxyXG5cclxuXHJcblxyXG5AaW1wb3J0ICdfMDFfZm9ybVN1YmRpdmlzaW9uR2VucmUnO1xyXG5AaW1wb3J0ICdfMDJfZm9ybURldGFpbFN1YmRpdmlzaW9uJztcclxuQGltcG9ydCAnXzAzX2Zvcm1EZXRhaWxSZXF1ZXN0JztcclxuQGltcG9ydCAnXzA0X3VzZXJGb3JtJztcclxuQGltcG9ydCAnXzA1X3JlYWRQcml2YWN5JztcclxuQGltcG9ydCAnXzA2X2Zvcm1CdG0nOyIsCgkJIjo6cGxhY2Vob2xkZXIge1xyXG4gIGNvbG9yOiAjQjBCMEIwO1xyXG59XHJcbi5mb3JtU3ViZGl2aXNpb25HZW5yZSB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxufVxyXG4udGl0bGVGb3JtU3ViZGl2aXNpb24ge1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNERURFREU7XHJcbiAgICBhc3BlY3QtcmF0aW86IDEwMDAvNjI7XHJcbiAgICBAaW5jbHVkZSBwYWRkaW5nUGVyY2VudCgxMDAwICwgMCAsIDIwICwgMCAsIDIwKTtcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCkge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGFzcGVjdC1yYXRpbzogMzM1LzYyO1xyXG4gICAgICAgIHBhZGRpbmc6IDQuMyUgNC40NyUgMy40JSA0LjQ3JTtcclxuICAgIH1cclxufVxyXG5oMy5oM3RpdGxlRm9ybVN1YmRpdmlzaW9uIHtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBAaW5jbHVkZSByc0ZvbnRTaXplKDE4ICwgMTggLCAxNSk7XHJcbiAgICBAaW5jbHVkZSBtYXJnaW5QZXJjZW50KDEwMDAgLCAzICwgMCAsIDAgLCAwKTtcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCkge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG59XHJcbi50eHR0aXRsZUZvcm1TdWJkaXZpc2lvbiB7XHJcbiAgICBAaW5jbHVkZSByc0ZvbnRTaXplKDE0ICwgMTQgLCAxMik7XHJcbiAgICBAaW5jbHVkZSBtYXJnaW5QZXJjZW50KDEwMDAgLCAwICwgMCAsIDAgLCAzMCk7XHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkc3ApIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBtYXJnaW46IDIuMyUgMCUgMCUgMCU7XHJcbiAgICB9XHJcbn1cclxuLmxpUmFkaW9Gb3JtVGFibGUge1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgIEBpbmNsdWRlIHJzRm9udFNpemUoMTcgLCAxNyAsIDE0KTtcclxuICAgICY6bnRoLWNoaWxkKDIpIHtcclxuICAgICAgICBAaW5jbHVkZSBtYXJnaW5QZXJjZW50KDEwMDAgLCA4ICwgMCAsIDAgLCAwKTtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkc3ApIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbWFyZ2luUGVyY2VudCgzMzUgLCAxMCAsIDAgLCAwICwgMCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5saUdlbnJlRm9ybVRhYmxlIHtcclxuICAgIEBpbmNsdWRlIHJzRm9udFNpemUoMTUgLCAxNSAsIDE0KTtcclxuICAgIEBpbmNsdWRlIG1hcmdpblBlcmNlbnQoMTAwMCAsIDAgLCAzNiAsIDAgLCAwKTtcclxuICAgIFxyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHRhYikge1xyXG4gICAgICAgIHdpZHRoOiAyNSU7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCkge1xyXG4gICAgICAgIHdpZHRoOiA0My41JTtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcbn1cclxuLmZvcm1NYWluIGlucHV0LmNoZWNrYm94R2VucmVGb3JtVGFibGUsIC5mb3JtTWFpbiB0ZXh0YXJlYSwgLmZvcm1NYWluIHNlbGVjdCwgLmZvcm1NYWluIGJ1dHRvbiB7XHJcbiAgICBAaW5jbHVkZSBtYXJnaW5QZXJjZW50KDEwMDAgLCAwICwgNiAsIDAgLCAwKTtcclxuICAgIFxyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKSB7XHJcbiAgICAgICAgbWFyZ2luOiAwJSAxJSAwJSAwJTtcclxuICAgIH1cclxufVxyXG4uZm9ybU1haW4gaW5wdXQuY2hhY2tSZWFkUHJpdmFjeSwgLmZvcm1NYWluIHRleHRhcmVhLCAuZm9ybU1haW4gc2VsZWN0LCAuZm9ybU1haW4gYnV0dG9uIHtcclxuICAgIEBpbmNsdWRlIG1hcmdpblBlcmNlbnQoMTAwMCAsIDAgLCAxNiAsIDAgLCAwKTtcclxuICAgIFxyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKSB7XHJcbiAgICAgICAgbWFyZ2luOiAwJSAzLjYlIDAlIDAlO1xyXG4gICAgfVxyXG59XHJcbi50eHRHZW5yZUZvcm1UYWJsZSB7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wMWVtO1xyXG4gICAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiBcInBhbHRcIjtcclxuICAgIEBpbmNsdWRlIHJzRm9udFNpemUoMTQgLCAxNCAsIDEyKTtcclxuICAgIEBpbmNsdWRlIG1hcmdpblBlcmNlbnQoMTAwMCAsIDE4ICwgMCAsIDAgLCAwKTtcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCkge1xyXG4gICAgICAgIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogdW5zZXQ7XHJcbiAgICAgICAgQGluY2x1ZGUgbWFyZ2luUGVyY2VudCgzMzUgLCA4ICwgMCAsIDAgLCAwKTtcclxuICAgIH1cclxufVxyXG50aC50aGZvcm1UYWJsZS50aGZvcm1UYWJsZTAxIHtcclxuICAgIEBpbmNsdWRlIHBhZGRpbmdQZXJjZW50KDEwMDAgLCAyMCAsIDAgLCAwICwgMjApO1xyXG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCl7XHJcbiAgICAgICAgcGFkZGluZzogNC45OCUgMCUgNS4xNyUgMCU7XHJcbiAgICB9XHJcbn1cclxuLmZvcm1fZXJyICB7XHJcbiAgICBAaW5jbHVkZSBtYXJnaW5QZXJjZW50KDEwMDAgLCA4MCAsIDAgLCAwICwgMCk7XHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkc3ApIHtcclxuICAgICAgICBAaW5jbHVkZSBtYXJnaW5QZXJjZW50KDMzNSAsIDcwICwgMCAsIDAgLCAwKTtcclxuICAgIH1cclxufVxyXG4ubGlfZm9ybV9lcnIge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgY29sb3I6ICNGRjAwMDA7XHJcbiAgICBAaW5jbHVkZSByc0ZvbnRTaXplKDE2ICwgMTYgLCAxNCk7XHJcbn0iLAoJCSIuZm9ybURldGFpbFN1YmRpdmlzaW9uS2VuZ2FrdSB7XHJcbiAgICBAaW5jbHVkZSBtYXJnaW5QZXJjZW50KDEwMDAsIDQ4LCBhdXRvLCAwLCBhdXRvKTtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkc3ApIHtcclxuICAgICAgICBtYXJnaW46IDExLjElIGF1dG8gMCBhdXRvO1xyXG4gICAgfVxyXG5cclxuICAgIC50ZEZvcm1UYWJsZVNlbGVjdEx4YyB7XHJcbiAgICAgICAgd2lkdGg6IDQ4LjE3JTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHNwKSB7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IDQ4LjA1JTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi50ZEZvcm1UYWJsZVNlbGVjdFdhcCB7XHJcbiAgICB3aWR0aDogNzUlO1xyXG4gICAgQGluY2x1ZGUgcnNGb250U2l6ZSgxNSwgMTUsIDE0KTtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkc3ApIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxufVxyXG5cclxuLnRkRm9ybVRhYmxlU2VsZWN0THhjIHtcclxuICAgIHdpZHRoOiA0OC4xNyU7XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKSB7XHJcbiAgICAgICAgd2lkdGg6IDQ4LjA1JTtcclxuICAgIH1cclxufVxyXG5cclxuLnNlbGVjdFcxMDAge1xyXG4gICAgQGluY2x1ZGUgcnNGb250U2l6ZSgxNSwgMTUsIDEyKTtcclxufVxyXG5cclxuLnRkRm9ybVRhYmxlU2VsZWN0THhjIHtcclxuICAgIC5zZWxlY3RXMTAwIHtcclxuICAgICAgICBoZWlnaHQ6IDU2cHg7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI0M4QzhDODtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBAaW5jbHVkZSBwYWRkaW5nUGVyY2VudCgyNjQsIDE1LCAxMCwgMTUsIDEwKTtcclxuICAgICAgICBAaW5jbHVkZSBrYWRvbWFydSg2cHgpO1xyXG4gICAgICAgIEBpbmNsdWRlIHJzRm9udFNpemUoMTUsIDE1LCAxMik7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCRzcCkge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBoZWlnaHRWd1NwKDUwKTtcclxuICAgICAgICAgICAgcGFkZGluZzogNS4yNCUgMi45MyUgNS4yNCUgMi45MyU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uc2VsZWN0WW9zYW4ge1xyXG4gICAgQGluY2x1ZGUgb250ZW5lcl93aWR0aCg3MjgsIDM2NCk7XHJcbiAgICBoZWlnaHQ6IDU2cHg7XHJcbiAgICBAaW5jbHVkZSBwYWRkaW5nUGVyY2VudCg3NjAsIDIwLCAxNywgMjAsIDE3KTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNDOEM4Qzg7XHJcbiAgICBAaW5jbHVkZSBrYWRvbWFydSg1cHgpO1xyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCkge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIEBpbmNsdWRlIGhlaWdodFZ3U3AoNTApO1xyXG4gICAgfVxyXG59XHJcblxyXG4udGRJbnB1dENhbGVuZGFyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAuaW5wdXRXMTAwIHtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjQzhDOEM4O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIEBpbmNsdWRlIHJzRm9udFNpemUoMTYsIDE2LCAxMyk7XHJcbiAgICAgICAgQGluY2x1ZGUgcGFkZGluZ1BlcmNlbnQoMjY0LCAxNiwgMTcsIDE2LCAxNyk7XHJcbiAgICAgICAgQGluY2x1ZGUga2Fkb21hcnUoNnB4KTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHNwKSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGhlaWdodFZ3U3AoNTApO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBwYWRkaW5nUGVyY2VudCgxNjEsIDAsIDEyLCAwLCAxMik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uaWNvbklucHV0Q2FsZW5kYXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgcmlnaHQ6IDYuNiU7XHJcbiAgICBAaW5jbHVkZSBwb3NpdGlvbkhDZW50ZXIoKTtcclxuICAgIGhlaWdodDogMjRweDtcclxuICAgIEBpbmNsdWRlIG9udGVuZXJfd2lkdGgoMjY0LCAyNCk7XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKSB7XHJcbiAgICAgICAgcmlnaHQ6IDUlO1xyXG4gICAgICAgIEBpbmNsdWRlIGhlaWdodFZ3U3AoMjQpO1xyXG4gICAgICAgIEBpbmNsdWRlIG9udGVuZXJfd2lkdGgoMTYxLCAyNCk7XHJcbiAgICB9XHJcblxyXG4gICAgaW1nIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICB9XHJcbn1cclxuXHJcbnAudHh0S2VuZ2FrdVlveWFrdSB7XHJcbiAgICBAaW5jbHVkZSByc0ZvbnRTaXplKDE1LCAxNSwgMTIpO1xyXG4gICAgQGluY2x1ZGUgbGluZWhlaWdodCgxNSwgMjQpO1xyXG4gICAgQGluY2x1ZGUgbWFyZ2luUGVyY2VudCg3NjAsIDE3LCAwLCAwLCAwKTtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkc3ApIHtcclxuICAgICAgICBAaW5jbHVkZSBsaW5laGVpZ2h0KDEyLCAyMCk7XHJcbiAgICAgICAgQGluY2x1ZGUgbWFyZ2luUGVyY2VudCgzMzUsIDIxLjUsIDAsIDAsIDApO1xyXG4gICAgfVxyXG59XHJcblxyXG4uZm9ybUNudCAudGhmb3JtVGFibGVfbmljaGlqaSB7XHJcbiAgICBAaW5jbHVkZSBwYWRkaW5nUGVyY2VudCgxMDAwLCAzMiwgMCwgMCwgMjApO1xyXG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkc3ApIHtcclxuICAgICAgICBwYWRkaW5nOiA0Ljc2JSAwJSAwJSAwJTtcclxuICAgIH1cclxufSIsCgkJIi5mb3JtRGV0YWlsU3ViZGl2aXNpb24ge1xyXG4gICAgQGluY2x1ZGUgbWFyZ2luUGVyY2VudCgxMDAwICwgMzkgLCBhdXRvICwgMCAsIGF1dG8pO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNi4zJTtcclxuICAgIH1cclxufSIsCgkJImlucHV0LmlucHV0V05hbWV7XHJcbiAgICB3aWR0aDogNTEuOCU7XHJcbiAgICBoZWlnaHQ6IDU2cHg7XHJcbiAgICBAaW5jbHVkZSByc0ZvbnRTaXplKDE1ICwgMTUgLCAxMik7XHJcbiAgICBAaW5jbHVkZSBwYWRkaW5nUGVyY2VudCg3NjAgLCAyMCAsIDE0ICwgMjAgLCAxNCk7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjQzhDOEM4O1xyXG4gICAgQGluY2x1ZGUga2Fkb21hcnUoNXB4KTtcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCl7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgQGluY2x1ZGUgaGVpZ2h0VndTcCg1MCk7XHJcbiAgICAgICAgcGFkZGluZzogMi42MyUgMy44NCUgMi42MyUgMy44NCU7XHJcbiAgICB9XHJcbn1cclxuLmZvcm1NYWluIGlucHV0LCAuZm9ybU1haW4gdGV4dGFyZWEsIC5mb3JtTWFpbiBzZWxlY3QsIC5mb3JtTWFpbiBidXR0b24ge1xyXG4gICAgQGluY2x1ZGUgcnNGb250U2l6ZSgxNSAsIDE1ICwgMTIpO1xyXG59XHJcbi5pbnB1dFcxMDAge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDU2cHg7XHJcbiAgICBAaW5jbHVkZSBwYWRkaW5nUGVyY2VudCg3NjAgLCAyMCAsIDE0ICwgMjAgLCAxNCk7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjQzhDOEM4O1xyXG4gICAgQGluY2x1ZGUga2Fkb21hcnUoNXB4KTtcclxuICAgIEBpbmNsdWRlIHJzRm9udFNpemUoMTUgLCAxNSAsIDEyKTtcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCkge1xyXG4gICAgICAgIEBpbmNsdWRlIGhlaWdodFZ3U3AoNTApO1xyXG4gICAgICAgIHBhZGRpbmc6IDIuNjMlIDMuODQlIDIuNjMlIDMuODQlO1xyXG4gICAgfVxyXG59XHJcbi5pbnB1dFBvc3RDb2RlIHtcclxuICAgIGhlaWdodDogNTZweDtcclxuICAgIHdpZHRoOiA1MS44JTtcclxuICAgIEBpbmNsdWRlIHJzRm9udFNpemUoMTUgLCAxNSAsIDEyKTtcclxuICAgIEBpbmNsdWRlIHBhZGRpbmdQZXJjZW50KDc2MCAsIDIwICwgMTQgLCAyMCAsIDE0KTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNDOEM4Qzg7XHJcbiAgICBAaW5jbHVkZSBrYWRvbWFydSg1cHgpO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKXtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBAaW5jbHVkZSBoZWlnaHRWd1NwKDUwKTtcclxuICAgICAgICBwYWRkaW5nOiAyLjYzJSAzLjg0JSAyLjYzJSAzLjg0JTtcclxuICAgIH1cclxufVxyXG4udGRmb3JtVGFibGUgdGV4dGFyZWF7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMjAwcHg7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjQzhDOEM4O1xyXG4gICAgQGluY2x1ZGUgcnNGb250U2l6ZSgxNSAsIDE1ICwgMTIpO1xyXG4gICAgQGluY2x1ZGUgcGFkZGluZ1BlcmNlbnQoNzYwICwgMTMgLCAxNCAsIDEzICwgMTQpO1xyXG4gICAgQGluY2x1ZGUga2Fkb21hcnUoNXB4KTtcclxuICAgIEBpbmNsdWRlIGxpbmVoZWlnaHQoMTYgLCAyOCk7XHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkc3Ape1xyXG4gICAgICAgIHBhZGRpbmc6IDMuNzElIDMuODQlIDMuNzElIDMuODQlO1xyXG4gICAgICAgIEBpbmNsdWRlIGhlaWdodFZ3U3AoMTUwKTtcclxuICAgIH1cclxufVxyXG4uc2VsZWN0WW9zYW57XHJcbiAgICB3aWR0aDogNTAuNiU7XHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkc3Ape1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIEBpbmNsdWRlIGhlaWdodFZ3U3AoNTApO1xyXG4gICAgfVxyXG59XHJcbi51c2VyRm9ybSB7XHJcbiAgICBAaW5jbHVkZSBtYXJnaW5QZXJjZW50KDEwMDAgLCAzOSAsIGF1dG8gLCAwICwgYXV0byk7XHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkc3ApIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA2LjclO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAlO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgIH1cclxufVxyXG5cclxuXHJcbiIsCgkJIi5yZWFkUHJpdmFjeSB7XHJcbiAgICBAaW5jbHVkZSBtYXJnaW5QZXJjZW50KDEwMDAgLCA1MCAsIGF1dG8gLCAwICwgYXV0byk7XHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkc3Ape1xyXG4gICAgICAgIEBpbmNsdWRlIG9udGVuZXJfd2lkdGgoMzM1ICwgMzA1KTtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyMS41JTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwJTtcclxuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICB9XHJcbn1cclxuLnJlYWRQcml2YWN5Qm94IHtcclxuICAgIEBpbmNsdWRlIGthZG9tYXJ1KDRweCk7XHJcbiAgICBAaW5jbHVkZSBwYWRkaW5nUGVyY2VudCgxMDAwICwgMzMgLCAyOSAsIDAgLCAyOSk7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjNDQ0NDQ0O1xyXG4gICAgb3ZlcmZsb3c6IGF1dG87XHJcbiAgICBoZWlnaHQ6IDI0OHB4O1xyXG4gICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHRhYil7XHJcbiAgICAgICAgaGVpZ2h0OiAyMnZ3O1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKXtcclxuICAgICAgICBwYWRkaW5nOiA2LjY2JSA0LjYlIDAlIDQuNiU7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMjEuMSU7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCU7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgICAgIGhlaWdodDogNzcuMjMzMzN2dztcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIH1cclxuICAgICY6LXdlYmtpdC1zY3JvbGxiYXJ7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxufVxyXG4uc2VjUmVhZFByaXZhY3lCb3gge1xyXG4gICAgQGluY2x1ZGUgbWFyZ2luUGVyY2VudCgxMDAwICwgMCAsIGF1dG8gLCAxOSAsIGF1dG8pO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKXtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwJTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA2LjklO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgIH1cclxufVxyXG4ucmVhZFByaXZhY3lCb3ggLmgyc2VjUmVhZFByaXZhY3lCb3h7XHJcbiAgIEBpbmNsdWRlIHJzRm9udFNpemUoMTYgLCAxNiAsIDE0KTsgXHJcbiAgIEBpbmNsdWRlIGxpbmVoZWlnaHQoMTYgLCAyNyk7XHJcbiAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgIGxpbmUtaGVpZ2h0OiAxLjc7XHJcbn1cclxuLnJlYWRQcml2YWN5Qm94IC50eHRTZWNSZWFkUHJpdmFjeUJveHtcclxuICAgIEBpbmNsdWRlIG1hcmdpblBlcmNlbnQoMTAwMCAsIDIyICwgYXV0byAsIDAgLCBhdXRvKTtcclxuICAgQGluY2x1ZGUgcnNGb250U2l6ZSgxNCAsIDE0ICwgMTIpO1xyXG4gICBsaW5lLWhlaWdodDogMS42O1xyXG4gICBAaW5jbHVkZSBtZWRpYSgkc3Ape1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDYlO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAlO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgfVxyXG4gICBhIHtcclxuICAgICAgIGNvbG9yOiAjMDA3N0ZGO1xyXG4gICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgIH1cclxufVxyXG5cclxuXHJcbi5jaGFja1JlYWRQcml2YWN5d2FwIHtcclxuICAgIEBpbmNsdWRlIG1hcmdpblBlcmNlbnQoMTAwMCAsIDQxICwgYXV0byAsIDAgLCBhdXRvKTtcclxuICAgIEBpbmNsdWRlIHJzRm9udFNpemUoMTYgLCAxNiAsIDE0KTtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB3aWR0aDogMzcuMiU7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHRhYil7XHJcbiAgICAgICAgd2lkdGg6IDQ0LjUlO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKXtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxMS41JTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwJTtcclxuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICB9XHJcbiAgICBwLmhpc3N1Zm9ybVRhYmxlRngge1xyXG4gICAgICAgd2lkdGg6IDEyLjYyJTtcclxuICAgICAgIEBpbmNsdWRlIG1lZGlhKCRzcCkge1xyXG4gICAgICAgICAgICB3aWR0aDogMTUuODMlO1xyXG4gICAgICAgfVxyXG4gICAgfVxyXG4gICAgbGFiZWx7XHJcbiAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgIH1cclxufVxyXG4uY2hhY2tSZWFkUHJpdmFjeXtcclxuICAgIG1hcmdpbjogYXV0byA0JSBhdXRvIDA7XHJcbiAgICBmb250LWZlYXR1cmUtc2V0dGluZ3M6IFwicGFsdFwiO1xyXG59XHJcblxyXG5cclxuXHJcbiIsCgkJIi5mb3JtU3VibWl0QnV0dG9uV2Fwe1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgIEBpbmNsdWRlIG1hcmdpblBlcmNlbnQoMTAwMCAsIDgzICwgYXV0byAsIDAgLCBhdXRvKTsgXHJcbiAgICBAaW5jbHVkZSBvbnRlbmVyX3dpZHRoKDEwMDAgLCAzOTApO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKXtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxNS44JTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwJTtcclxuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgQGluY2x1ZGUgb250ZW5lcl93aWR0aCgzMzUgLCAzMTUpO1xyXG4gICAgfVxyXG59XHJcbi5mb3JtU3VibWl0QnV0dG9ue1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgY29sb3I6ICNGRkY7XHJcbiAgICBAaW5jbHVkZSBrYWRvbWFydSg0cHgpO1xyXG4gICAgQGluY2x1ZGUgYnV0dG9udHlwZTAyKCM0QTc1NkYsIzRBNzU2RiwxcHgsI0ZGRiwjMzMzLCMzMzMsI0ZGRik7IGRpc3BsYXk6YmxvY2s7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL3doX2Fycm93LnN2Zyk7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMzglO1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHJpZ2h0IDUlO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIGhlaWdodDogNzBweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIFxyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHRhYil7XHJcbiAgICAgICAgaGVpZ2h0OiA3dnc7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCl7XHJcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHJpZ2h0IDYlO1xyXG4gICAgICAgIEBpbmNsdWRlIGhlaWdodFZ3U3AoNjQpO1xyXG4gICAgfSBcclxufVxyXG5pbnB1dC5mb3JtU3VibWl0QnV0dG9uIHtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICBAaW5jbHVkZSByc0ZvbnRTaXplKDE2ICwgMTYgLCAxNSk7XHJcbn1cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuIgoJXSwKCSJuYW1lcyI6IFtdLAoJIm1hcHBpbmdzIjogIkF3RkdFLEFBQUEsSUFBSSxBQUFDLENBQ0gsVUFBVSxDQUFFLFVBQVUsQ0FDdkIsQUFFRCxBQUNFLENBREQsQ0FBRCxDQUFDLEFBRUUsT0FBTyxDQUZWLENBQUMsQUFHRSxRQUFRLEFBQUMsQ0FDUixVQUFVLENBQUUsT0FBTyxDQUNwQixBY1RMLEFBQUEsU0FBUyxBQUFDLENBQ1IsU0FBUyxDQUFFLGNBQWMsQ0FDMUIsQUFFRCxBQUFBLElBQUksQUFBQyxDQUNELHNCQUFzQixDQUFFLFdBQVcsQ0FDdEMsQUFFRCxBQUFBLG9CQUFvQixBQUFDLENBQ2pCLE9BQU8sQ0FBRSxJQUFJLENBQ2IsZUFBZSxDQUFFLGFBQWEsQ0FDOUIsV0FBVyxDQUFFLE1BQU0sQ0FDdEIsQUFDRCxBQUFBLHFCQUFxQixBQUFDLENBQ2xCLE9BQU8sQ0FBRSxJQUFJLENBQ2IsU0FBUyxDQUFFLElBQUksQ0FDZixlQUFlLENBQUUsYUFBYSxDQUNqQyxBQUNELEFBQUEsNEJBQTRCLEFBQUMsQ0FDekIsT0FBTyxDQUFFLElBQUksQ0FDYixTQUFTLENBQUUsSUFBSSxDQUNmLGVBQWUsQ0FBRSxhQUFhLENBQzlCLFdBQVcsQ0FBRSxRQUFRLENBQ3hCLEFBQ0QsQUFBQSwyQkFBMkIsQUFBQyxDQUN4QixPQUFPLENBQUUsSUFBSSxDQUNiLGVBQWUsQ0FBRSxhQUFhLENBQzlCLFdBQVcsQ0FBRSxNQUFNLENBQ25CLFdBQVcsQ0FBRSxRQUFRLENBQ3hCLEFBQ0QsQUFBQSxhQUFhLEFBQUMsQ0FDVixPQUFPLENBQUUsSUFBSSxDQUNiLFNBQVMsQ0FBRSxJQUFJLENBQ2YsZUFBZSxDQUFFLGFBQWEsQ0FDakMsQUFDRCxBQUFBLFlBQVksQUFBQyxDQUNULFNBQVMsQ0FBRSxRQUFRLENBQ3RCLEFBQ0QsQUFBQSxTQUFTLEFBQUMsQ0FDTixXQUFXLENBQUUsK0pBQStKLENBRzVLLEtBQUssQ0FBRSxPQUFPLENBQ2QsV0FBVyxDQUFFLEdBQUcsQ0FDbkIsQUFORCxBckdpUUksU3FHalFLLENyR2lRTCxHQUFHLEFBQUMsQ0FDQSxLQUFLLENBRlUsSUFBSSxDQUduQixNQUFNLENBQUUsSUFBSSxDQUNmLEErRnBORCxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNLEVNaER4QyxBQUFBLFNBQVMsQUFBQyxDckd3QkUsU0FBUyxDQUFFLElBQVcsQ3FHbEJqQyxDTjBDRyxNQUFNLENBQUMsS0FBSyxFQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTSxFTWhEOUMsQUFBQSxTQUFTLEFBQUMsQ3JHa0NFLFNBQVMsQ0FBRSxRQUFpRCxDcUc1QnZFLENOMENHLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUssRU1oRHZDLEFBQUEsU0FBUyxBQUFDLENyRzRDRSxTQUFTLENBQUUsU0FBcUMsQ3FHdEMzRCxDQUNELEFBQ0ksU0FESyxDQUNMLEtBQUssQ0FEVCxTQUFTLENBQ0MsUUFBUSxDQURsQixTQUFTLENBQ1UsTUFBTSxDQUR6QixTQUFTLENBQ2lCLE1BQU0sQUFBQyxDQUN6QixXQUFXLENBQUUsK0pBQStKLENBRTVLLFdBQVcsQ0FBRSxHQUFHLENBQ25CLEFOb0NELE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU0sRU16Q3hDLEFBQ0ksU0FESyxDQUNMLEtBQUssQ0FEVCxTQUFTLENBQ0MsUUFBUSxDQURsQixTQUFTLENBQ1UsTUFBTSxDQUR6QixTQUFTLENBQ2lCLE1BQU0sQUFBQyxDckdnQnJCLFNBQVMsQ0FBRSxJQUFXLENxR1o3QixDTm9DRCxNQUFNLENBQUMsS0FBSyxFQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTSxFTXpDOUMsQUFDSSxTQURLLENBQ0wsS0FBSyxDQURULFNBQVMsQ0FDQyxRQUFRLENBRGxCLFNBQVMsQ0FDVSxNQUFNLENBRHpCLFNBQVMsQ0FDaUIsTUFBTSxBQUFDLENyRzBCckIsU0FBUyxDQUFFLFFBQWlELENxR3RCbkUsQ05vQ0QsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSyxFTXpDdkMsQUFDSSxTQURLLENBQ0wsS0FBSyxDQURULFNBQVMsQ0FDQyxRQUFRLENBRGxCLFNBQVMsQ0FDVSxNQUFNLENBRHpCLFNBQVMsQ0FDaUIsTUFBTSxBQUFDLENyR29DckIsU0FBUyxDQUFFLFNBQXFDLENxR2hDdkQsQ0FMTCxBQU1JLFNBTkssQ0FNTCxFQUFFLENBTk4sU0FBUyxDQU1GLEVBQUUsQ0FOVCxTQUFTLENBTUMsRUFBRSxDQU5aLFNBQVMsQ0FNSSxFQUFFLENBTmYsU0FBUyxDQU1PLEVBQUUsQ0FObEIsU0FBUyxDQU1VLEVBQUUsQ0FOckIsU0FBUyxDQU1hLENBQUMsQUFBQSxDQUNmLFdBQVcsQ0FBRSxDQUFDLENBQ2QsV0FBVyxDQUFFLEdBQUcsQ0FDaEIsT0FBTyxDQUFFLEtBQUssQ0FDakIsQUFHTCxBQUFBLFFBQVEsQ0FBQyxRQUFRLEFBQUMsQ0FDZCxXQUFXLENBQUUsaUdBQWlHLENBQ2pILEFBQ0QsQUFBQSxHQUFHLEFBQUMsQ0FDQSxXQUFXLENBQUUsT0FBTyxDQUNwQixVQUFVLENBQUUsSUFBSSxDQUNoQixRQUFRLENBQUUsTUFBTSxDQUNoQixPQUFPLENBQUUsS0FBSyxDQUNkLFNBQVMsQ0FBRSxLQUFLLENBQ25CLEFObUJHLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU0sRU1qQnhDLEFBQUEsT0FBTyxBQUFDLENyR3NLQSxLQUFLLENvR3hPTCxNQUFNLENwR3lPTixXQUFXLENBQUMsSUFBSSxDQUNoQixZQUFZLENBQUMsSUFBSSxDcUd0S3hCLENOZUcsTUFBTSxDQUFDLEtBQUssRUFBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU0sRU1qQjlDLEFBQUEsT0FBTyxBQUFDLENyRzJLQSxLQUFLLENBQUUsR0FBRyxDQUNWLFdBQVcsQ0FBQyxJQUFJLENBQ2hCLFlBQVksQ0FBQyxJQUFJLENxRzNLeEIsQ05lRyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLLEVNakJ2QyxBQUFBLE9BQU8sQUFBQyxDckdnTEEsS0FBSyxDQUFFLElBQUksQ0FDWCxXQUFXLENBQUMsSUFBSSxDQUNoQixZQUFZLENBQUMsSUFBSSxDcUdoTHhCLENBRUQsQUFBQSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxBQUFDLENBQ1gsVUFBVSxDQUFFLElBQUksQ0FDbkIsQUFDRCxBQUFBLEdBQUcsQUFBQyxDQUNBLE9BQU8sQ0FBRSxLQUFLLENBQ2pCLEFOUUcsTUFBTSxDQUFDLEtBQUssRUFBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU0sRU1OOUMsQUFBQSxRQUFRLEFBQUMsQ3JHNE1ELE9BQU8sQ0FBRSxLQUFLLENxRzFNckIsQ05JRyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNLEVNTnhDLEFBQUEsUUFBUSxBQUFDLENyRytNRCxPQUFPLENBQUUsS0FBSyxDcUc3TXJCLENOSUcsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSyxFTU52QyxBQUFBLFFBQVEsQUFBQyxDckdrTkQsT0FBTyxDQUFFLElBQUksQ3FHaE5wQixDTklHLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU0sRU1IeEMsQUFBQSxRQUFRLEFBQUMsQ3JHNkxELE9BQU8sQ0FBRSxJQUFJLENxRzNMcEIsQ05DRyxNQUFNLENBQUMsS0FBSyxFQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTSxFTUg5QyxBQUFBLFFBQVEsQUFBQyxDckdnTUQsT0FBTyxDQUFFLElBQUksQ3FHOUxwQixDTkNHLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUssRU1IdkMsQUFBQSxRQUFRLEFBQUMsQ3JHbU1ELE9BQU8sQ0FBRSxLQUFLLENxR2pNckIsQ0FFRCxBQUFBLFNBQVMsQUFBQyxDQUNOLFVBQVUsQ0FBRSxNQUFNLENBQ3JCLEFBR0csQUFBQSxXQUFXLEFBQUssQ0FDWixLQUFLLENBRkEsQ0FBQyxDQU1ULEFOWEQsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSyxFTU1uQyxBQUFBLFdBQVcsQUFBSyxDQUdSLEtBQUssQ0FBRSxLQUFLLENBRW5CLENBQ0QsQUFBQSxLQUFLLEFBQVMsQ0FDVixXQUFXLENBUk4sQ0FBQyxDQVNULEFBUkQsQUFBQSxXQUFXLEFBQUssQ0FDWixLQUFLLENBRkEsQ0FBQyxDQU1ULEFOWEQsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSyxFTU1uQyxBQUFBLFdBQVcsQUFBSyxDQUdSLEtBQUssQ0FBRSxLQUFLLENBRW5CLENBQ0QsQUFBQSxPQUFPLEFBQU8sQ0FDVixXQUFXLENBUk4sR0FBQyxDQVNULEFBUkQsQUFBQSxXQUFXLEFBQUssQ0FDWixLQUFLLENBRkEsQ0FBQyxDQU1ULEFOWEQsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSyxFTU1uQyxBQUFBLFdBQVcsQUFBSyxDQUdSLEtBQUssQ0FBRSxLQUFLLENBRW5CLENBQ0QsQUFBQSxPQUFPLEFBQU8sQ0FDVixXQUFXLENBUk4sR0FBQyxDQVNULEFBUkQsQUFBQSxXQUFXLEFBQUssQ0FDWixLQUFLLENBRkEsQ0FBQyxDQU1ULEFOWEQsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSyxFTU1uQyxBQUFBLFdBQVcsQUFBSyxDQUdSLEtBQUssQ0FBRSxLQUFLLENBRW5CLENBQ0QsQUFBQSxPQUFPLEFBQU8sQ0FDVixXQUFXLENBUk4sR0FBQyxDQVNULEFBUkQsQUFBQSxXQUFXLEFBQUssQ0FDWixLQUFLLENBRkEsQ0FBQyxDQU1ULEFOWEQsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSyxFTU1uQyxBQUFBLFdBQVcsQUFBSyxDQUdSLEtBQUssQ0FBRSxLQUFLLENBRW5CLENBQ0QsQUFBQSxPQUFPLEFBQU8sQ0FDVixXQUFXLENBUk4sR0FBQyxDQVNULEFBUkQsQUFBQSxXQUFXLEFBQUssQ0FDWixLQUFLLENBRkEsQ0FBQyxDQU1ULEFOWEQsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSyxFTU1uQyxBQUFBLFdBQVcsQUFBSyxDQUdSLEtBQUssQ0FBRSxLQUFLLENBRW5CLENBQ0QsQUFBQSxPQUFPLEFBQU8sQ0FDVixXQUFXLENBUk4sR0FBQyxDQVNULEFBUkQsQUFBQSxXQUFXLEFBQUssQ0FDWixLQUFLLENBRkEsQ0FBQyxDQU1ULEFOWEQsTUFBTSxDQUFDLE1BQU0s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 */