﻿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;vertical-align:middle}@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:15px;padding-bottom:15px;padding-left:20px;padding-right:0px}@media print, screen and (max-width: 1200px){.formMain .thformTable{padding:1.5% 0% 1.5% 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;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}}@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;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}}@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:1.75}@media print, screen and (max-width: 1200px){.formMain .tdformTable{padding:1% 0% 1% 3%}}@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,ewoJInZlcnNpb24iOiAzLAoJImZpbGUiOiAiY3NzL2lucXVpcnkuY3NzIiwKCSJzb3VyY2VzIjogWwoJCSJzY3NzL2lucXVpcnkuc2NzcyIsCgkJInNjc3Mvc2Fzc19iYXNlL19taXhpbi5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL19ib3VyYm9uLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vc2V0dGluZ3MvX3ByZWZpeGVyLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vc2V0dGluZ3MvX3B4LXRvLWVtLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vc2V0dGluZ3MvX2Fzc2V0LXBpcGVsaW5lLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vZnVuY3Rpb25zL19hc3NpZ24taW5wdXRzLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vZnVuY3Rpb25zL19jb250YWlucy5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2Z1bmN0aW9ucy9fY29udGFpbnMtZmFsc3kuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9mdW5jdGlvbnMvX2lzLWxlbmd0aC5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2Z1bmN0aW9ucy9faXMtbGlnaHQuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9mdW5jdGlvbnMvX2lzLW51bWJlci5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2Z1bmN0aW9ucy9faXMtc2l6ZS5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2Z1bmN0aW9ucy9fcHgtdG8tZW0uc2NzcyIsCgkJInNjc3MvYm91cmJvbi9mdW5jdGlvbnMvX3B4LXRvLXJlbS5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2Z1bmN0aW9ucy9fc2hhZGUuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9mdW5jdGlvbnMvX3N0cmlwLXVuaXRzLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vZnVuY3Rpb25zL190aW50LnNjc3MiLAoJCSJzY3NzL2JvdXJib24vZnVuY3Rpb25zL190cmFuc2l0aW9uLXByb3BlcnR5LW5hbWUuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9mdW5jdGlvbnMvX3VucGFjay5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2Z1bmN0aW9ucy9fbW9kdWxhci1zY2FsZS5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2hlbHBlcnMvX2NvbnZlcnQtdW5pdHMuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9oZWxwZXJzL19kaXJlY3Rpb25hbC12YWx1ZXMuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9oZWxwZXJzL19mb250LXNvdXJjZS1kZWNsYXJhdGlvbi5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2hlbHBlcnMvX2dyYWRpZW50LXBvc2l0aW9ucy1wYXJzZXIuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9oZWxwZXJzL19saW5lYXItYW5nbGUtcGFyc2VyLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vaGVscGVycy9fbGluZWFyLWdyYWRpZW50LXBhcnNlci5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2hlbHBlcnMvX2xpbmVhci1wb3NpdGlvbnMtcGFyc2VyLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vaGVscGVycy9fbGluZWFyLXNpZGUtY29ybmVyLXBhcnNlci5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2hlbHBlcnMvX3JhZGlhbC1hcmctcGFyc2VyLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vaGVscGVycy9fcmFkaWFsLXBvc2l0aW9ucy1wYXJzZXIuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9oZWxwZXJzL19yYWRpYWwtZ3JhZGllbnQtcGFyc2VyLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vaGVscGVycy9fcmVuZGVyLWdyYWRpZW50cy5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2hlbHBlcnMvX3NoYXBlLXNpemUtc3RyaXBwZXIuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9oZWxwZXJzL19zdHItdG8tbnVtLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vY3NzMy9fYW5pbWF0aW9uLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vY3NzMy9fYXBwZWFyYW5jZS5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2NzczMvX2JhY2tmYWNlLXZpc2liaWxpdHkuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9jc3MzL19iYWNrZ3JvdW5kLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vY3NzMy9fYmFja2dyb3VuZC1pbWFnZS5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2NzczMvX2JvcmRlci1pbWFnZS5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2NzczMvX2NhbGMuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9jc3MzL19jb2x1bW5zLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vY3NzMy9fZmlsdGVyLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vY3NzMy9fZmxleC1ib3guc2NzcyIsCgkJInNjc3MvYm91cmJvbi9jc3MzL19mb250LWZhY2Uuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9jc3MzL19mb250LWZlYXR1cmUtc2V0dGluZ3Muc2NzcyIsCgkJInNjc3MvYm91cmJvbi9jc3MzL19oaWRwaS1tZWRpYS1xdWVyeS5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2NzczMvX2h5cGhlbnMuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9jc3MzL19pbWFnZS1yZW5kZXJpbmcuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9jc3MzL19rZXlmcmFtZXMuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9jc3MzL19saW5lYXItZ3JhZGllbnQuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9jc3MzL19wZXJzcGVjdGl2ZS5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2NzczMvX3BsYWNlaG9sZGVyLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vY3NzMy9fcmFkaWFsLWdyYWRpZW50LnNjc3MiLAoJCSJzY3NzL2JvdXJib24vY3NzMy9fc2VsZWN0aW9uLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vY3NzMy9fdGV4dC1kZWNvcmF0aW9uLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vY3NzMy9fdHJhbnNmb3JtLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vY3NzMy9fdHJhbnNpdGlvbi5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2NzczMvX3VzZXItc2VsZWN0LnNjc3MiLAoJCSJzY3NzL2JvdXJib24vYWRkb25zL19ib3JkZXItY29sb3Iuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9hZGRvbnMvX2JvcmRlci1yYWRpdXMuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9hZGRvbnMvX2JvcmRlci1zdHlsZS5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2FkZG9ucy9fYm9yZGVyLXdpZHRoLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vYWRkb25zL19idXR0b25zLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vYWRkb25zL19jbGVhcmZpeC5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2FkZG9ucy9fZWxsaXBzaXMuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9hZGRvbnMvX2ZvbnQtc3RhY2tzLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vYWRkb25zL19oaWRlLXRleHQuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9hZGRvbnMvX21hcmdpbi5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2FkZG9ucy9fcGFkZGluZy5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2FkZG9ucy9fcG9zaXRpb24uc2NzcyIsCgkJInNjc3MvYm91cmJvbi9hZGRvbnMvX3ByZWZpeGVyLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vYWRkb25zL19yZXRpbmEtaW1hZ2Uuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9hZGRvbnMvX3NpemUuc2NzcyIsCgkJInNjc3MvYm91cmJvbi9hZGRvbnMvX3RleHQtaW5wdXRzLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vYWRkb25zL190aW1pbmctZnVuY3Rpb25zLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vYWRkb25zL190cmlhbmdsZS5zY3NzIiwKCQkic2Nzcy9ib3VyYm9uL2FkZG9ucy9fd29yZC13cmFwLnNjc3MiLAoJCSJzY3NzL2JvdXJib24vX2JvdXJib24tZGVwcmVjYXRlZC11cGNvbWluZy5zY3NzIiwKCQkic2Nzcy9uZWF0L19uZWF0LnNjc3MiLAoJCSJzY3NzL25lYXQvX25lYXQtaGVscGVycy5zY3NzIiwKCQkic2Nzcy9uZWF0L2Z1bmN0aW9ucy9fcHJpdmF0ZS5zY3NzIiwKCQkic2Nzcy9uZWF0L2Z1bmN0aW9ucy9fbmV3LWJyZWFrcG9pbnQuc2NzcyIsCgkJInNjc3MvbmVhdC9zZXR0aW5ncy9fZ3JpZC5zY3NzIiwKCQkic2Nzcy9uZWF0L3NldHRpbmdzL192aXN1YWwtZ3JpZC5zY3NzIiwKCQkic2Nzcy9uZWF0L3NldHRpbmdzL19kaXNhYmxlLXdhcm5pbmdzLnNjc3MiLAoJCSJzY3NzL25lYXQvZ3JpZC9fcHJpdmF0ZS5zY3NzIiwKCQkic2Nzcy9uZWF0L2dyaWQvX2JveC1zaXppbmcuc2NzcyIsCgkJInNjc3MvbmVhdC9ncmlkL19vbWVnYS5zY3NzIiwKCQkic2Nzcy9uZWF0L2dyaWQvX291dGVyLWNvbnRhaW5lci5zY3NzIiwKCQkic2Nzcy9uZWF0L2dyaWQvX3NwYW4tY29sdW1ucy5zY3NzIiwKCQkic2Nzcy9uZWF0L2dyaWQvX3Jvdy5zY3NzIiwKCQkic2Nzcy9uZWF0L2dyaWQvX3NoaWZ0LnNjc3MiLAoJCSJzY3NzL25lYXQvZ3JpZC9fcGFkLnNjc3MiLAoJCSJzY3NzL25lYXQvZ3JpZC9fZmlsbC1wYXJlbnQuc2NzcyIsCgkJInNjc3MvbmVhdC9ncmlkL19tZWRpYS5zY3NzIiwKCQkic2Nzcy9uZWF0L2dyaWQvX3RvLWRlcHJlY2F0ZS5zY3NzIiwKCQkic2Nzcy9uZWF0L2dyaWQvX3Zpc3VhbC1ncmlkLnNjc3MiLAoJCSJzY3NzL25lYXQvZ3JpZC9fZGlzcGxheS1jb250ZXh0LnNjc3MiLAoJCSJzY3NzL25lYXQvZ3JpZC9fZGlyZWN0aW9uLWNvbnRleHQuc2NzcyIsCgkJInNjc3MvX215c2V0dGluZy5zY3NzIiwKCQkic2Nzcy9zYXNzX2Jhc2UvX2NvZGluZ19ndWlkZWxpbmUuc2NzcyIsCgkJInNjc3Mvc2Fzc19iYXNlL19hbmltYXRlLnNjc3MiLAoJCSJzY3NzL19jb2xvci5zY3NzIiwKCQkic2Nzcy9MYXlvdXQvX2NvbmZpcm0uc2NzcyIsCgkJInNjc3MvTGF5b3V0L190aGFua3Muc2NzcyIsCgkJInNjc3MvTGF5b3V0L19oZWFkZXIuc2NzcyIsCgkJInNjc3MvQ29tcG9uZW50L2Zvcm0vX2Zvcm0uc2NzcyIsCgkJInNjc3MvQ29tcG9uZW50L2Zvcm0vXzAxX2Zvcm1TdWJkaXZpc2lvbkdlbnJlLnNjc3MiLAoJCSJzY3NzL0NvbXBvbmVudC9mb3JtL18wMl9mb3JtRGV0YWlsU3ViZGl2aXNpb24uc2NzcyIsCgkJInNjc3MvQ29tcG9uZW50L2Zvcm0vXzAzX2Zvcm1EZXRhaWxSZXF1ZXN0LnNjc3MiLAoJCSJzY3NzL0NvbXBvbmVudC9mb3JtL18wNF91c2VyRm9ybS5zY3NzIiwKCQkic2Nzcy9Db21wb25lbnQvZm9ybS9fMDVfcmVhZFByaXZhY3kuc2NzcyIsCgkJInNjc3MvQ29tcG9uZW50L2Zvcm0vXzA2X2Zvcm1CdG0uc2NzcyIKCV0sCgkic291cmNlc0NvbnRlbnQiOiBbCgkJIkBjaGFyc2V0IFwidXRmLThcIjtcclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbkZ1bmNpdG9uc1xyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5AaW1wb3J0ICdzYXNzX2Jhc2UvbWl4aW4nO1xyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuUnVsZVxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5AaW1wb3J0ICdzYXNzX2Jhc2UvY29kaW5nX2d1aWRlbGluZSc7XHJcbkBpbXBvcnQgJ3Nhc3NfYmFzZS9hbmltYXRlJztcclxuQGltcG9ydCAnX2NvbG9yJztcclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbkxheW91dFxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4vL0BpbXBvcnQgJ0xheW91dC9pbmRleC9faW5kZXgnO1xyXG5AaW1wb3J0ICdMYXlvdXQvX2NvbmZpcm0nO1xyXG5AaW1wb3J0ICdMYXlvdXQvX3RoYW5rcyc7XHJcbkBpbXBvcnQgJ0xheW91dC9faGVhZGVyJztcclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbk9iamVjdFxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuQ29tcG9uZW50XHJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbkBpbXBvcnQgJ0NvbXBvbmVudC9mb3JtL19mb3JtJztcclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcbiIsCgkJIkBjaGFyc2V0IFwidXRmLThcIjtcclxuQGltcG9ydCBcIi4uL2JvdXJib24vYm91cmJvblwiO1xyXG5AaW1wb3J0IFwiLi4vbmVhdC9uZWF0XCI7XHJcbkBpbXBvcnQgXCIuLi9teXNldHRpbmdcIjtcclxuXHJcbi8vUEPmmYJcclxuJHBjOiBuZXctYnJlYWtwb2ludChtaW4td2lkdGggJHBjU2l6ZSAxNik7Ly9QQ+aZgu+8iOWfuuacrOODmeODvOOCue+8iVxyXG5cclxuLy/jgZPjgZPjgYvjgok1MHB444Ga44Gk44OW44Os44Kk44Kv44Od44Kk44Oz44OI44KS55m65YuVXHJcbiRtYXgxNjUwIDogbmV3LWJyZWFrcG9pbnQobWF4LXdpZHRoIDE2NTBweCAxNik7XHJcbiRtYXgxNjAwIDogbmV3LWJyZWFrcG9pbnQobWF4LXdpZHRoIDE2MDBweCAxNik7XHJcbiRtYXgxNTAwIDogbmV3LWJyZWFrcG9pbnQobWF4LXdpZHRoIDE1MDBweCAxNik7XHJcbiRtYXgxNDUwIDogbmV3LWJyZWFrcG9pbnQobWF4LXdpZHRoIDE0NTBweCAxNik7XHJcbiRtYXgxNDAwIDogbmV3LWJyZWFrcG9pbnQobWF4LXdpZHRoIDE0MDBweCAxNik7XHJcbiRtYXgxMzUwIDogbmV3LWJyZWFrcG9pbnQobWF4LXdpZHRoIDEzNTBweCAxNik7XHJcbiRtYXgxMzAwIDogbmV3LWJyZWFrcG9pbnQobWF4LXdpZHRoIDEzMDBweCAxNik7XHJcbiRtYXgxMjUwIDogbmV3LWJyZWFrcG9pbnQobWF4LXdpZHRoIDEyNTBweCAxNik7XHJcbiRtYXgxMjAwIDogbmV3LWJyZWFrcG9pbnQobWF4LXdpZHRoIDEyMDBweCAxNik7XHJcbiRtYXgxMTUwIDogbmV3LWJyZWFrcG9pbnQobWF4LXdpZHRoIDExNTBweCAxNik7XHJcbiRtYXgxMTAwIDogbmV3LWJyZWFrcG9pbnQobWF4LXdpZHRoIDExMDBweCAxNik7XHJcbiRtYXgxMDUwIDogbmV3LWJyZWFrcG9pbnQobWF4LXdpZHRoIDEwNTBweCA4KTtcclxuJG1heDEwMDAgOiBuZXctYnJlYWtwb2ludChtYXgtd2lkdGggMTAwMHB4IDgpO1xyXG4kbWF4OTUwIDogbmV3LWJyZWFrcG9pbnQobWF4LXdpZHRoIDk1MHB4IDgpO1xyXG4kbWF4OTAwIDogbmV3LWJyZWFrcG9pbnQobWF4LXdpZHRoIDkwMHB4IDgpO1xyXG4kbWF4ODUwIDogbmV3LWJyZWFrcG9pbnQobWF4LXdpZHRoIDg1MHB4IDgpO1xyXG4kbWF4ODAwIDogbmV3LWJyZWFrcG9pbnQobWF4LXdpZHRoIDgwMHB4IDgpO1xyXG5cclxuLy/jgr/jg5bjg6zjg4Pjg4jmmYJcclxuJHRhYjogbmV3LWJyZWFrcG9pbnQobWF4LXdpZHRoICR0YWJTaXplIDgpOy8v44K/44OW44Os44OD44OI5qiqXHJcbiR0YWJfdGF0ZTogbmV3LWJyZWFrcG9pbnQobWF4LXdpZHRoICR0YWJUYXRlU2l6ZSA2KTsvL+OCv+ODluODrOODg+ODiOe4plxyXG5cclxuLy/jgrnjg57jg5vmmYJcclxuJHNwOiBuZXctYnJlYWtwb2ludChtYXgtd2lkdGggJHNwU2l6ZSA0KTtcclxuXHJcbiRndXR0ZXI6IGdvbGRlbi1yYXRpbygwZW0sIDApO1xyXG4kZmctZ3V0dGVyOiAkZ3V0dGVyO1xyXG5cclxuLy9taXhpbuOCkuaMh+WumlxyXG5AbWl4aW4gbWludHlvdSgkZm9udHNpemUpIHtcclxuICAgIGZvbnQtc2l6ZTogJGZvbnRzaXplO1xyXG4gICAgZm9udC1mYW1pbHk6XCJSb2JvdG8gU2xhYlwiICwgR2FyYW1vbmQgLCBcIlRpbWVzIE5ldyBSb21hblwiICwgXCLmuLjmmI7mnJ1cIiAsIFxyXG4gICAgICAgIFwiWXUgTWluY2hvXCIgLCBcIua4uOaYjuacneS9k1wiICwgXCJZdU1pbmNob1wiICwgXCLjg5Ljg6njgq7jg47mmI7mnJ0gUHJvIFczXCIgLCBcclxuICAgICAgICBcIkhpcmFnaW5vIE1pbmNobyBQcm9cIiAsIFwiSGlyYU1pblByb04tVzNcIiAsIFwiSEdT5piO5pydRVwiICwgXCLvvK3vvLMg77yw5piO5pydXCIgLCBcIk1TIFBNaW5jaG9cIiAsIHNlcmlmO1xyXG59XHJcbkBtaXhpbiBnb3NoaWNrKCRmb250c2l6ZSkge1xyXG4gICAgZm9udC1zaXplOiAkZm9udHNpemU7XHJcbiAgICBmb250LWZhbWlseTpBdmVuaXIgLCBcIk9wZW4gU2Fuc1wiICwgXCJIZWx2ZXRpY2EgTmV1ZVwiICwgSGVsdmV0aWNhICwgQXJpYWwgLFxyXG4gICAgICAgIFZlcmRhbmEgLCBSb2JvdG8gLCBcIua4uOOCtOOCt+ODg+OCr1wiICwgXCJZdSBHb3RoaWNcIiAsIFwi5ri444K044K344OD44Kv5L2TXCIgLCBcIll1R290aGljXCIgLCBcclxuICAgICAgICBcIuODkuODqeOCruODjuinkuOCtCBQcm8gVzNcIiAsIFwiSGlyYWdpbm8gS2FrdSBHb3RoaWMgUHJvXCIgLCBcIk1laXJ5byBVSVwiICwgXCLjg6HjgqTjg6rjgqpcIiAsIFxyXG4gICAgICAgIE1laXJ5byAsIFwi77yt77yzIO+8sOOCtOOCt+ODg+OCr1wiICwgXCJNUyBQR290aGljXCIgLCBzYW5zLXNlcmlmO1xyXG59XHJcbkBtaXhpbiBtYXJ1Z29zaGljaygkZm9udHNpemUpIHtcclxuICAgIGZvbnQtc2l6ZTogJGZvbnRzaXplO1xyXG4gICAgZm9udC1mYW1pbHk6IFwi44OS44Op44Ku44OO5Li444K0IFBybyBXNFwiLFwi44OS44Op44Ku44OO5Li444K0IFByb1wiLFwiSGlyYWdpbm8gTWFydSBHb3RoaWMgUHJvXCIsXHJcbiAgICAgICAgXCLjg5Ljg6njgq7jg47op5LjgrQgUHJvIFczXCIsXCJIaXJhZ2lubyBLYWt1IEdvdGhpYyBQcm9cIixcIkhH5Li47726776e7728772v7724TS1QUk9cIixcIkhHTWFydUdvdGhpY01QUk9cIjtcclxufVxyXG5cclxuQG1peGluIHJzRm9udFNpemUoJHBjX3NpemU6MHB4LCR0YWJfc2l6ZTowdncsJHNwX3NpemU6MHZ3KSB7XHJcbiAgICBAaWYgJHBjX3NpemU9PTBweCB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHBjKXtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAkcGNfc2l6ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAZWxzZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHBjKXtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAkcGNfc2l6ZStweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAaWYgJHRhYl9zaXplPT0wdncge1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWIpe1xyXG4gICAgICAgICAgICBmb250LXNpemU6ICR0YWJfc2l6ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAZWxzZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYil7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogKCggJHRhYl9zaXplIC8gJHRhYlNpemVQeE5vbmUgKSAqIDEwMDAwdncgKSAvIDEwMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAaWYgJHNwX3NpemU9PTB2dyB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHNwKXtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAkc3Bfc2l6ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAZWxzZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHNwKXtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAoKCAkc3Bfc2l6ZSAvIDM3NSApICogMTAwMDB2dyApIC8gMTAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4vL+aXp+eJiFxyXG5AbWl4aW4gcnNfZm9udF9zaXplKCRwY19zaXplOjE2cHgsJHRhYl9zaXplOjEuNTYyNXZ3LCRzcF9zaXplOjQuMjY2NjY2NjY2NjY2NjY3dncpIHtcclxuICAgIEBpZiAkcGNfc2l6ZT09MXJlbSB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHBjKXtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAkcGNfc2l6ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAZWxzZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHBjKXtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAkcGNfc2l6ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAaWYgJHRhYl9zaXplPT0xLjU2MjV2dyB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYil7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHRhYl9zaXplO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBlbHNlIHtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkdGFiKXtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAkdGFiX3NpemU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGlmICRzcF9zaXplPT00LjI2NjY2NjY2NjY2NjY2N3Z3IHtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkc3Ape1xyXG4gICAgICAgICAgICBmb250LXNpemU6ICRzcF9zaXplO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBlbHNlIHtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkc3Ape1xyXG4gICAgICAgICAgICBmb250LXNpemU6ICRzcF9zaXplO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQG1peGluIHNoaW5taW50eW91KCRwY19zaXplOjFyZW0sJHRhYl9zaXplOjEuMjV2dywkc3Bfc2l6ZTozdncpIHtcclxuICAgIGZvbnQtZmFtaWx5Olwic2Fucy1zZXJpZlwiLFwiU2F3YXJhYmkgTWluY2hvXCIsXCJSb2JvdG8gU2xhYlwiICwgR2FyYW1vbmQgLCBcIlRpbWVzIE5ldyBSb21hblwiICwgXCLmuLjmmI7mnJ1cIiAsIFxyXG4gICAgICAgIFwiWXUgTWluY2hvXCIgLCBcIua4uOaYjuacneS9k1wiICwgXCJZdU1pbmNob1wiICwgXCLjg5Ljg6njgq7jg47mmI7mnJ0gUHJvIFczXCIgLCBcclxuICAgICAgICBcIkhpcmFnaW5vIE1pbmNobyBQcm9cIiAsIFwiSGlyYU1pblByb04tVzNcIiAsIFwiSEdT5piO5pydRVwiICwgXCLvvK3vvLMg77yw5piO5pydXCIgLCBcIk1TIFBNaW5jaG9cIiAsIHNlcmlmO1xyXG4gICAgQGlmICRwY19zaXplPT0wcHgge1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCRwYyl7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHBjX3NpemU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGVsc2Uge1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCRwYyl7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHBjX3NpemU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGlmICR0YWJfc2l6ZT09MHZ3IHtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkdGFiKXtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAkdGFiX3NpemU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGVsc2Uge1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWIpe1xyXG4gICAgICAgICAgICBmb250LXNpemU6ICgoICR0YWJfc2l6ZSAvICR0YWIgKSAqIDEwMDAwdncgKSAvIDEwMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAaWYgJHNwX3NpemU9PTB2dyB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHNwKXtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAkc3Bfc2l6ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAZWxzZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHNwKXtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAoKCAkc3Bfc2l6ZSAvICRzcCApICogMTAwMDB2dyApIC8gMTAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQG1peGluIHNoaW5nb3NpY2soJHBjX3NpemU6MXJlbSwkdGFiX3NpemU6MS4yNXZ3LCRzcF9zaXplOjN2dykge1xyXG4gICAgZm9udC1mYW1pbHk6ICdOb3RvIFNhbnMgSmFwYW5lc2UnLEF2ZW5pciAsIFwiT3BlbiBTYW5zXCIgLCBcIkhlbHZldGljYSBOZXVlXCIgLCBIZWx2ZXRpY2EgLCBBcmlhbCAsXHJcbiAgICAgICAgVmVyZGFuYSAsIFJvYm90byAsIFwi5ri444K044K344OD44KvXCIgLCBcIll1IEdvdGhpY1wiICwgXCLmuLjjgrTjgrfjg4Pjgq/kvZNcIiAsIFwiWXVHb3RoaWNcIiAsIFxyXG4gICAgICAgIFwi44OS44Op44Ku44OO6KeS44K0IFBybyBXM1wiICwgXCJIaXJhZ2lubyBLYWt1IEdvdGhpYyBQcm9cIiAsIFwiTWVpcnlvIFVJXCIgLCBcIuODoeOCpOODquOCqlwiICwgXHJcbiAgICAgICAgTWVpcnlvICwgXCLvvK3vvLMg77yw44K044K344OD44KvXCIgLCBcIk1TIFBHb3RoaWNcIiAsIHNhbnMtc2VyaWY7XHJcbiAgICBAaWYgJHBjX3NpemU9PTBweCB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHBjKXtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAkcGNfc2l6ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAZWxzZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHBjKXtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAkcGNfc2l6ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAaWYgJHRhYl9zaXplPT0wdncge1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWIpe1xyXG4gICAgICAgICAgICBmb250LXNpemU6ICR0YWJfc2l6ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAZWxzZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYil7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogKCggJHRhYl9zaXplIC8gJHRhYiApICogMTAwMDB2dyApIC8gMTAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBpZiAkc3Bfc2l6ZT09MHZ3IHtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkc3Ape1xyXG4gICAgICAgICAgICBmb250LXNpemU6ICRzcF9zaXplO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBlbHNlIHtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkc3Ape1xyXG4gICAgICAgICAgICBmb250LXNpemU6ICgoICRzcF9zaXplIC8gJHNwICkgKiAxMDAwMHZ3ICkgLyAxMDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gaW1nY2VudGVyIHtcclxuICAgIGhlaWdodDogYXV0bztcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luOiAwIGF1dG8gMCBhdXRvO1xyXG4gICAgcGFkZGluZzogMCAwcHggMCAwO1xyXG59XHJcbkBtaXhpbiBrYWRvbWFydSgkcmFkaXVzKSB7XHJcbiAgICBib3JkZXItcmFkaXVzOiAkcmFkaXVzOyAgICAgICAgLyogQ1NTM+iNieahiCAqLyAgXHJcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6ICRyYWRpdXM7ICAgIC8qIFNhZmFyaSxHb29nbGUgQ2hyb21l55SoICovICBcclxuICAgIC1tb3otYm9yZGVyLXJhZGl1czogJHJhZGl1czsgICAvKiBGaXJlZm9455SoICovICBcclxufVxyXG4vL+ODhuODvOODluODq+eUqFxyXG5AbWl4aW4gdGFibGVzZXR0aW5nIHtcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRwYykge1xyXG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHRhYikge1xyXG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbn1cclxuQG1peGluIHRkc2V0dGluZygkd2lkdGgpIHtcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRwYykge1xyXG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XHJcbiAgICAgICAgd2lkdGg6ICR3aWR0aDtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIG1lZGlhKCR0YWIpIHtcclxuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xyXG4gICAgICAgIHdpZHRoOiAkd2lkdGg7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkc3ApIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxufVxyXG5AbWl4aW4gd2FwcGVyX3NldHRpbmcoKSB7XHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkcGMpIHtcclxuICAgICAgICB3aWR0aDogJHBjX3dhcHBlcl9zaXplO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OmF1dG87XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OmF1dG87XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkdGFiKSB7XHJcbiAgICAgICAgd2lkdGg6IDk4JTtcclxuICAgICAgICBtYXJnaW4tbGVmdDphdXRvO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDphdXRvO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6YXV0bztcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6YXV0bztcclxuICAgIH1cclxufVxyXG5cclxuQG1peGluIHdhcHBlcl9zZXR0aW5nMigpIHtcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRwYykge1xyXG4gICAgICAgIHdpZHRoOiAkcGNfaW5ubmVyX3dhcHBlcl9zaXplO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OmF1dG87XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OmF1dG87XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkdGFiKSB7XHJcbiAgICAgICAgd2lkdGg6IDk4JTtcclxuICAgICAgICBtYXJnaW4tbGVmdDphdXRvO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDphdXRvO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6YXV0bztcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6YXV0bztcclxuICAgIH1cclxufVxyXG5cclxuLy/jgrnjg57jg5vjga7jgajjgY3jgaDjgZHlh7rjgZnplqLmlbBcclxuQG1peGluIHNwX29ubHkoKSB7XHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkcGMpIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHRhYikge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkc3ApIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxufVxyXG5cclxuQG1peGluIHBjX29ubHkoKSB7XHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkdGFiKSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkcGMpIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCkge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBpbWd3aWR0aCgkd2lkdGg6MTAwJSkge1xyXG4gICAgaW1nIHtcclxuICAgICAgICB3aWR0aDokd2lkdGg7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLy9AaW5jbHVkZSBvbnRlbmVyX3dpZHRoKOaoquW5heWfuua6luWApCzkvb/nlKjjgZnjgovopoHntKDjga7mqKrluYUpO1xyXG5AbWl4aW4gb250ZW5lcl93aWR0aCggJHBhcmVudFB4V2lkdGgsICRweFdpZHRoICl7XHJcbiAgICB3aWR0aDogZmxvb3IoKCggJHB4V2lkdGggLyAkcGFyZW50UHhXaWR0aCApICogMTAwMDAlICkpIC8gMTAwO1xyXG59XHJcblxyXG5AbWl4aW4gb250ZW5lcldWdyggJHBhcmVudFB4V2lkdGgsICRweFdpZHRoICl7XHJcbiAgICB3aWR0aDogZmxvb3IoKCggJHB4V2lkdGggLyAkcGFyZW50UHhXaWR0aCApICogMTAwMDB2dyApKSAvIDEwMDtcclxufVxyXG5AbWl4aW4gd2lkdGhWdygkcHhXaWR0aCl7XHJcbiAgICB3aWR0aDogKCggJHB4V2lkdGggLyAxOTIwICkgKiAxMDAwMHZ3ICkgLyAxMDA7XHJcbiAgICBpbWcge1xyXG4gICAgICAgIG1heC13aWR0aDogJHB4V2lkdGggKyBweDtcclxuICAgIH1cclxufVxyXG5AbWl4aW4gd2lkdGhWd1NQKCRweFdpZHRoKXtcclxuICAgIHdpZHRoOiAoKCAkcHhXaWR0aCAvIDM3NSApICogMTAwMDB2dyApIC8gMTAwO1xyXG4gICAgaW1nIHtcclxuICAgICAgICBtYXgtd2lkdGg6ICRweFdpZHRoICsgcHg7XHJcbiAgICB9XHJcbn1cclxuQG1peGluIGhlaWdodFZ3KCRweGhlaWdodCkge1xyXG4gICAgaGVpZ2h0OiAoKCAkcHhoZWlnaHQgLyAxOTIwICkgKiAxMDAwMHZ3ICkgLyAxMDA7XHJcbn1cclxuQG1peGluIGhlaWdodFZ3U3AoJHB4aGVpZ2h0KSB7XHJcbiAgICBoZWlnaHQ6ICgoICRweGhlaWdodCAvIDM3NSApICogMTAwMDB2dyApIC8gMTAwO1xyXG59XHJcbi8vQGluY2x1ZGUgbWFyZ2luUGVyY2VudCjmqKrluYXln7rmupblgKQsIG1hcmdpbi10b3DvvIhweO+8iSwgbWFyZ2luLWxlZnTvvIhweO+8iSwgbWFyZ2luLWJvdHRvbShweCksIG1hcmdpbi1ib3R0b20ocHgpKTtcclxuQG1peGluIG1hcmdpblBlcmNlbnQoJHBhcmVudFB4V2lkdGgsICRtVG9wLCAkbVJpZ2h0LCAkbUJvdHRvbSwgJG1MZWZ0KXtcclxuICAgIEBpZiAkbUxlZnQgPT0gYXV0byBhbmQgJG1SaWdodCA9PSBhdXRvIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiRtVG9wICsgMHB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRtQm90dG9tICsgMHB4O1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkdGFiKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6Zmxvb3IoKCgkbVRvcCAvICRwYXJlbnRQeFdpZHRoKSAqIDEwMDAwJSkpIC8gMTAwO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBmbG9vcigoKCRtQm90dG9tIC8gJHBhcmVudFB4V2lkdGgpICogMTAwMDAlKSkgLyAxMDA7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgfUBlbHNlaWYgJG1MZWZ0ID09IGF1dG97XHJcbiAgICAgICAgbWFyZ2luLXRvcDokbVRvcCArIDBweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAkbUJvdHRvbSArIDBweDtcclxuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRtUmlnaHQgKyAwcHg7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYikge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOmZsb29yKCgoJG1Ub3AgLyAkcGFyZW50UHhXaWR0aCkgKiAxMDAwMCUpKSAvIDEwMDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogZmxvb3IoKCgkbUJvdHRvbSAvICRwYXJlbnRQeFdpZHRoKSAqIDEwMDAwJSkpIC8gMTAwO1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBmbG9vcigoKCRtUmlnaHQgLyAkcGFyZW50UHhXaWR0aCkgKiAxMDAwMCUpKSAvIDEwMDtcclxuICAgICAgICB9XHJcbiAgICB9QGVsc2VpZiAkbVJpZ2h0ID09IGF1dG97XHJcbiAgICAgICAgbWFyZ2luLXRvcDokbVRvcCArIDBweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAkbUJvdHRvbSArIDBweDtcclxuICAgICAgICBtYXJnaW4tbGVmdDogJG1MZWZ0ICsgMHB4O1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkdGFiKSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWIpIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6Zmxvb3IoKCgkbVRvcCAvICRwYXJlbnRQeFdpZHRoKSAqIDEwMDAwJSkpIC8gMTAwO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogZmxvb3IoKCgkbUJvdHRvbSAvICRwYXJlbnRQeFdpZHRoKSAqIDEwMDAwJSkpIC8gMTAwO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGZsb29yKCgoJG1MZWZ0IC8gJHBhcmVudFB4V2lkdGgpICogMTAwMDAlKSkgLyAxMDA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9QGVsc2Uge1xyXG4gICAgICAgIG1hcmdpbi10b3A6JG1Ub3AgKyAwcHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJG1Cb3R0b20gKyAwcHg7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICRtTGVmdCArIDBweDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRtUmlnaHQgKyAwcHg7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYikge1xyXG4gICAgICAgICAgICBtYXJnaW4gOiBmbG9vcigoKCRtVG9wIC8gJHBhcmVudFB4V2lkdGgpICogMTAwMDAlKSkgLyAxMDAgZmxvb3IoKCgkbVJpZ2h0IC8gJHBhcmVudFB4V2lkdGgpICogMTAwMDAlKSkgLyAxMDAgZmxvb3IoKCgkbUJvdHRvbSAvICRwYXJlbnRQeFdpZHRoKSAqIDEwMDAwJSkpIC8gMTAwIGZsb29yKCgoJG1MZWZ0IC8gJHBhcmVudFB4V2lkdGgpICogMTAwMDAlKSkgLyAxMDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbkBtaXhpbiBtYXJnaW5WdygkbVRvcCwgJG1SaWdodCwgJG1Cb3R0b20sICRtTGVmdCkge1xyXG4gICAgQGlmICRtTGVmdCA9PSBhdXRvIGFuZCAkbVJpZ2h0ID09IGF1dG8ge1xyXG4gICAgICAgIG1hcmdpbi10b3A6KCgkbVRvcCAvIDE5MjApICogMTAwMDB2dykgLyAxMDA7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogKCgkbUJvdHRvbSAvIDE5MjApICogMTAwMDB2dykgLyAxMDA7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgfVxyXG4gICAgQGVsc2VpZiAkbUxlZnQgPT0gYXV0b3tcclxuICAgICAgICBtYXJnaW4tdG9wOigoJG1Ub3AgLyAxOTIwKSAqIDEwMDAwdncpIC8gMTAwO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206ICgoJG1Cb3R0b20gLyAxOTIwKSAqIDEwMDAwdncpIC8gMTAwO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogKCgkbVJpZ2h0IC8gMTkyMCkgKiAxMDAwMHZ3KSAvIDEwMDtcclxuICAgIH1cclxuICAgIEBlbHNlaWYgJG1SaWdodCA9PSBhdXRve1xyXG4gICAgICAgIG1hcmdpbi10b3A6KCgkbVRvcCAvIDE5MjApICogMTAwMDB2dykgLyAxMDA7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogKCgkbUJvdHRvbSAvIDE5MjApICogMTAwMDB2dykgLyAxMDA7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICgoJG1MZWZ0IC8gMTkyMCkgKiAxMDAwMHZ3KSAvIDEwMDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICB9XHJcbiAgICBAZWxzZSB7XHJcbiAgICAgICAgbWFyZ2luIDogKCgkbVRvcCAvIDE5MjApICogMTAwMDB2dykgLyAxMDAgKCgkbVJpZ2h0IC8gMTkyMCkgKiAxMDAwMHZ3KSAvIDEwMCAoKCRtQm90dG9tIC8gMTkyMCkgKiAxMDAwMHZ3KSAvIDEwMCAoKCRtTGVmdCAvIDE5MjApICogMTAwMDB2dykgLyAxMDA7XHJcbiAgICB9XHJcbn1cclxuQG1peGluIG1hcmdpblZ3U3AoJG1Ub3AsICRtUmlnaHQsICRtQm90dG9tLCAkbUxlZnQpIHtcclxuICAgIEBpZiAkbUxlZnQgPT0gYXV0byBhbmQgJG1SaWdodCA9PSBhdXRvIHtcclxuICAgICAgICBtYXJnaW4tdG9wOigoJG1Ub3AgLyAzNzUpICogMTAwMDB2dykgLyAxMDA7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogKCgkbUJvdHRvbSAvIDM3NSkgKiAxMDAwMHZ3KSAvIDEwMDtcclxuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICB9XHJcbiAgICBAZWxzZWlmICRtTGVmdCA9PSBhdXRve1xyXG4gICAgICAgIG1hcmdpbi10b3A6KCgkbVRvcCAvIDM3NSkgKiAxMDAwMHZ3KSAvIDEwMDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAoKCRtQm90dG9tIC8gMzc1KSAqIDEwMDAwdncpIC8gMTAwO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogKCgkbVJpZ2h0IC8gMzc1KSAqIDEwMDAwdncpIC8gMTAwO1xyXG4gICAgfVxyXG4gICAgQGVsc2VpZiAkbVJpZ2h0ID09IGF1dG97XHJcbiAgICAgICAgbWFyZ2luLXRvcDooKCRtVG9wIC8gMzc1KSAqIDEwMDAwdncpIC8gMTAwO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206ICgoJG1Cb3R0b20gLyAzNzUpICogMTAwMDB2dykgLyAxMDA7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICgoJG1MZWZ0IC8gMzc1KSAqIDEwMDAwdncpIC8gMTAwO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgIH1cclxuICAgIEBlbHNlIHtcclxuICAgICAgICBtYXJnaW4gOiAoKCRtVG9wIC8gMzc1KSAqIDEwMDAwdncpIC8gMTAwICgoJG1SaWdodCAvIDM3NSkgKiAxMDAwMHZ3KSAvIDEwMCAoKCRtQm90dG9tIC8gMzc1KSAqIDEwMDAwdncpIC8gMTAwICgoJG1MZWZ0IC8gMzc1KSAqIDEwMDAwdncpIC8gMTAwO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gYXJjaGl2ZXNfdWxfc2V0dGluZ3NfM2NsdW1lcygkd2FwcGVyX3NpemU6MTAwJSwkd2lkdGg6MTAwJSwkY2x1bWVfd2lkaHQ6MTAwJSwkZGVmb19tYXJnaW46MCUsJGRvdWJsZV9tYXJnaW46MCUpIHtcclxuICAgIHdpZHRoOiBmbG9vcigoKCAkd2lkdGggLyAkd2FwcGVyX3NpemUgKSAqIDEwMDAwJSApKSAvIDEwMDtcclxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xyXG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XHJcbiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgLW1zLWZsZXgtd3JhcDogd3JhcDtcclxuICAgIC13ZWJraXQtZmxleC13cmFwOiB3cmFwO1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIGFsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7XHJcbiAgICBsaSB7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgIHdpZHRoOiAkY2x1bWVfd2lkaHQ7XHJcbiAgICAgICAgbWFyZ2luOiAkZGVmb19tYXJnaW47ICAgICAgICBcclxuICAgIH1cclxuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggMTJ7XHJcbiAgICAgICAgQGlmICRpICUgMyA9PTIge1xyXG4gICAgICAgICAgICBsaTpudGgtY2hpbGQoI3skaX0pIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogJGRvdWJsZV9tYXJnaW47XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuQG1peGluIHBhZGRpbmdQZXJjZW50KCRwYXJlbnRQeFdpZHRoLCAkbVRvcCwgJG1SaWdodCwgJG1Cb3R0b20sICRtTGVmdCl7XHJcbiAgICBAaWYgJG1MZWZ0ID09IGF1dG8gb3IgJG1SaWdodCA9PSBhdXRvIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDokbVRvcCArIDBweDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogJG1Cb3R0b20gKyAwcHg7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwICsgMHB4O1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAgKyAwcHg7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHRhYikge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDpmbG9vcigoKCRtVG9wIC8gJHBhcmVudFB4V2lkdGgpICogMTAwMDAlKSkgLyAxMDA7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiBmbG9vcigoKCRtQm90dG9tIC8gJHBhcmVudFB4V2lkdGgpICogMTAwMDAlKSkgLyAxMDA7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgfUBlbHNlIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDokbVRvcCArIDBweDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogJG1Cb3R0b20gKyAwcHg7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkbUxlZnQgKyAwcHg7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogJG1SaWdodCArIDBweDtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkdGFiKSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmcgOiBmbG9vcigoKCRtVG9wIC8gJHBhcmVudFB4V2lkdGgpICogMTAwMDAlKSkgLyAxMDAgZmxvb3IoKCgkbVJpZ2h0IC8gJHBhcmVudFB4V2lkdGgpICogMTAwMDAlKSkgLyAxMDAgZmxvb3IoKCgkbUJvdHRvbSAvICRwYXJlbnRQeFdpZHRoKSAqIDEwMDAwJSkpIC8gMTAwIGZsb29yKCgoJG1MZWZ0IC8gJHBhcmVudFB4V2lkdGgpICogMTAwMDAlKSkgLyAxMDA7XHJcbiAgICAgICAgfSAgICAgICAgXHJcbiAgICB9XHJcbn1cclxuQG1peGluIHBhZGRpbmdWdygkbVRvcCwgJG1SaWdodCwgJG1Cb3R0b20sICRtTGVmdCkge1xyXG4gICAgQGlmICRtTGVmdCA9PSBhdXRvIGFuZCAkbVJpZ2h0ID09IGF1dG8ge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOigoJG1Ub3AgLyAxOTIwKSAqIDEwMDAwdncpIC8gMTAwO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAoKCRtQm90dG9tIC8gMTkyMCkgKiAxMDAwMHZ3KSAvIDEwMDtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogYXV0bztcclxuICAgIH1cclxuICAgIEBlbHNlaWYgJG1MZWZ0ID09IGF1dG97XHJcbiAgICAgICAgcGFkZGluZy10b3A6KCgkbVRvcCAvIDE5MjApICogMTAwMDB2dykgLyAxMDA7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICgoJG1Cb3R0b20gLyAxOTIwKSAqIDEwMDAwdncpIC8gMTAwO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogYXV0bztcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAoKCRtUmlnaHQgLyAxOTIwKSAqIDEwMDAwdncpIC8gMTAwO1xyXG4gICAgfVxyXG4gICAgQGVsc2VpZiAkbVJpZ2h0ID09IGF1dG97XHJcbiAgICAgICAgcGFkZGluZy10b3A6KCgkbVRvcCAvIDE5MjApICogMTAwMDB2dykgLyAxMDA7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICgoJG1Cb3R0b20gLyAxOTIwKSAqIDEwMDAwdncpIC8gMTAwO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogKCgkbUxlZnQgLyAxOTIwKSAqIDEwMDAwdncpIC8gMTAwO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IGF1dG87XHJcbiAgICB9XHJcbiAgICBAZWxzZSB7XHJcbiAgICAgICAgcGFkZGluZyA6ICgoJG1Ub3AgLyAxOTIwKSAqIDEwMDAwdncpIC8gMTAwICgoJG1SaWdodCAvIDE5MjApICogMTAwMDB2dykgLyAxMDAgKCgkbUJvdHRvbSAvIDE5MjApICogMTAwMDB2dykgLyAxMDAgKCgkbUxlZnQgLyAxOTIwKSAqIDEwMDAwdncpIC8gMTAwO1xyXG4gICAgfVxyXG59XHJcbkBtaXhpbiBwYWRkaW5nVndTcCgkbVRvcCwgJG1SaWdodCwgJG1Cb3R0b20sICRtTGVmdCkge1xyXG4gICAgQGlmICRtTGVmdCA9PSBhdXRvIGFuZCAkbVJpZ2h0ID09IGF1dG8ge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOigoJG1Ub3AgLyAzNzUpICogMTAwMDB2dykgLyAxMDA7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICgoJG1Cb3R0b20gLyAzNzUpICogMTAwMDB2dykgLyAxMDA7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiBhdXRvO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IGF1dG87XHJcbiAgICB9XHJcbiAgICBAZWxzZWlmICRtTGVmdCA9PSBhdXRve1xyXG4gICAgICAgIHBhZGRpbmctdG9wOigoJG1Ub3AgLyAzNzUpICogMTAwMDB2dykgLyAxMDA7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICgoJG1Cb3R0b20gLyAzNzUpICogMTAwMDB2dykgLyAxMDA7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiBhdXRvO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICgoJG1SaWdodCAvIDM3NSkgKiAxMDAwMHZ3KSAvIDEwMDtcclxuICAgIH1cclxuICAgIEBlbHNlaWYgJG1SaWdodCA9PSBhdXRve1xyXG4gICAgICAgIHBhZGRpbmctdG9wOigoJG1Ub3AgLyAzNzUpICogMTAwMDB2dykgLyAxMDA7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICgoJG1Cb3R0b20gLyAzNzUpICogMTAwMDB2dykgLyAxMDA7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAoKCRtTGVmdCAvIDM3NSkgKiAxMDAwMHZ3KSAvIDEwMDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiBhdXRvO1xyXG4gICAgfVxyXG4gICAgQGVsc2Uge1xyXG4gICAgICAgIHBhZGRpbmcgOiAoKCRtVG9wIC8gMzc1KSAqIDEwMDAwdncpIC8gMTAwICgoJG1SaWdodCAvIDM3NSkgKiAxMDAwMHZ3KSAvIDEwMCAoKCRtQm90dG9tIC8gMzc1KSAqIDEwMDAwdncpIC8gMTAwICgoJG1MZWZ0IC8gMzc1KSAqIDEwMDAwdncpIC8gMTAwO1xyXG4gICAgfVxyXG59XHJcbkBtaXhpbiBsaW5laGVpZ2h0KCRmb250c2l6ZSwkbGluZWhlaWdodCl7XHJcbiAgICBsaW5lLWhlaWdodDogJGxpbmVoZWlnaHQvJGZvbnRzaXplO1xyXG4gICAgQGluY2x1ZGUgbGluZUhlaWdodENyb3AoJGZvbnRzaXplLCRsaW5laGVpZ2h0KTtcclxufVxyXG5AbWl4aW4gbGluZUhlaWdodENyb3AoJGZvbnRzaXplLCRsaW5laGVpZ2h0KSB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiAwO1xyXG4gICAgICAgIGhlaWdodDogMDtcclxuICAgICAgICBtYXJnaW4tdG9wOiBjYWxjKCgxIC0gI3skbGluZWhlaWdodC8kZm9udHNpemV9KSAqIC41ZW0pO1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICB9XHJcbiAgICAmOjphZnRlciB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IDA7XHJcbiAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IGNhbGMoKDEgLSAjeyRsaW5laGVpZ2h0LyRmb250c2l6ZX0pICogLjVlbSk7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgIH1cclxufVxyXG5cclxuQG1peGluIGNvbnRlbnRTZXQoKSB7XHJcbiAgICBjb250ZW50OiAnJztcclxuICAgIGRpc3BsYXk6IGJsb2NrOyAgICBcclxufVxyXG5AbWl4aW4gcG9zaXRpb25XSENlbnRlcigpIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDA7cmlnaHQ6IDA7dG9wOiAwO2JvdHRvbTogMDtcclxuICAgIG1hcmdpbjogYXV0bztcclxufVxyXG5AbWl4aW4gcG9zaXRpb25XQ2VudGVyKCkge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDogMDtyaWdodDogMDtcclxuICAgIG1hcmdpbjogYXV0bztcclxufVxyXG5AbWl4aW4gcG9zaXRpb25IQ2VudGVyKCkge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO2JvdHRvbTogMDtcclxuICAgIG1hcmdpbjogYXV0bztcclxufVxyXG5cclxuQG1peGluIGZvbnRWdygkcGFyZW50UHhXaWR0aCwkcGNfc2l6ZToxNnB4KXtcclxuICAgIGZvbnQtc2l6ZTogKCggJHBjX3NpemUgLyAkcGFyZW50UHhXaWR0aCApICogMTAwMDB2dyApIC8gMTAwO1xyXG59XHJcbkBtaXhpbiBmb250VndTcCgkcGFyZW50UHhXaWR0aCwkcGNfc2l6ZToxNnB4KXtcclxuICAgIGZvbnQtc2l6ZTogKCggJHBjX3NpemUgLyAzNzUgKSAqIDEwMDAwdncgKSAvIDEwMDtcclxufVxyXG5cclxuQG1peGluIHdpZHRoQ2FsYygkd2FwICwgJHNpemUpIHtcclxuICAgIHdpZHRoOiBjYWxjKCR3YXAgLSAkc2l6ZSk7XHJcbn0iLAoJCSIvLyBCb3VyYm9uIDQuMi43XHJcbi8vIGh0dHA6Ly9ib3VyYm9uLmlvXHJcbi8vIENvcHlyaWdodCAyMDExLTIwMTUgdGhvdWdodGJvdCwgaW5jLlxyXG4vLyBNSVQgTGljZW5zZVxyXG5cclxuQGltcG9ydCBcInNldHRpbmdzL3ByZWZpeGVyXCI7XHJcbkBpbXBvcnQgXCJzZXR0aW5ncy9weC10by1lbVwiO1xyXG5AaW1wb3J0IFwic2V0dGluZ3MvYXNzZXQtcGlwZWxpbmVcIjtcclxuXHJcbkBpbXBvcnQgXCJmdW5jdGlvbnMvYXNzaWduLWlucHV0c1wiO1xyXG5AaW1wb3J0IFwiZnVuY3Rpb25zL2NvbnRhaW5zXCI7XHJcbkBpbXBvcnQgXCJmdW5jdGlvbnMvY29udGFpbnMtZmFsc3lcIjtcclxuQGltcG9ydCBcImZ1bmN0aW9ucy9pcy1sZW5ndGhcIjtcclxuQGltcG9ydCBcImZ1bmN0aW9ucy9pcy1saWdodFwiO1xyXG5AaW1wb3J0IFwiZnVuY3Rpb25zL2lzLW51bWJlclwiO1xyXG5AaW1wb3J0IFwiZnVuY3Rpb25zL2lzLXNpemVcIjtcclxuQGltcG9ydCBcImZ1bmN0aW9ucy9weC10by1lbVwiO1xyXG5AaW1wb3J0IFwiZnVuY3Rpb25zL3B4LXRvLXJlbVwiO1xyXG5AaW1wb3J0IFwiZnVuY3Rpb25zL3NoYWRlXCI7XHJcbkBpbXBvcnQgXCJmdW5jdGlvbnMvc3RyaXAtdW5pdHNcIjtcclxuQGltcG9ydCBcImZ1bmN0aW9ucy90aW50XCI7XHJcbkBpbXBvcnQgXCJmdW5jdGlvbnMvdHJhbnNpdGlvbi1wcm9wZXJ0eS1uYW1lXCI7XHJcbkBpbXBvcnQgXCJmdW5jdGlvbnMvdW5wYWNrXCI7XHJcbkBpbXBvcnQgXCJmdW5jdGlvbnMvbW9kdWxhci1zY2FsZVwiO1xyXG5cclxuQGltcG9ydCBcImhlbHBlcnMvY29udmVydC11bml0c1wiO1xyXG5AaW1wb3J0IFwiaGVscGVycy9kaXJlY3Rpb25hbC12YWx1ZXNcIjtcclxuQGltcG9ydCBcImhlbHBlcnMvZm9udC1zb3VyY2UtZGVjbGFyYXRpb25cIjtcclxuQGltcG9ydCBcImhlbHBlcnMvZ3JhZGllbnQtcG9zaXRpb25zLXBhcnNlclwiO1xyXG5AaW1wb3J0IFwiaGVscGVycy9saW5lYXItYW5nbGUtcGFyc2VyXCI7XHJcbkBpbXBvcnQgXCJoZWxwZXJzL2xpbmVhci1ncmFkaWVudC1wYXJzZXJcIjtcclxuQGltcG9ydCBcImhlbHBlcnMvbGluZWFyLXBvc2l0aW9ucy1wYXJzZXJcIjtcclxuQGltcG9ydCBcImhlbHBlcnMvbGluZWFyLXNpZGUtY29ybmVyLXBhcnNlclwiO1xyXG5AaW1wb3J0IFwiaGVscGVycy9yYWRpYWwtYXJnLXBhcnNlclwiO1xyXG5AaW1wb3J0IFwiaGVscGVycy9yYWRpYWwtcG9zaXRpb25zLXBhcnNlclwiO1xyXG5AaW1wb3J0IFwiaGVscGVycy9yYWRpYWwtZ3JhZGllbnQtcGFyc2VyXCI7XHJcbkBpbXBvcnQgXCJoZWxwZXJzL3JlbmRlci1ncmFkaWVudHNcIjtcclxuQGltcG9ydCBcImhlbHBlcnMvc2hhcGUtc2l6ZS1zdHJpcHBlclwiO1xyXG5AaW1wb3J0IFwiaGVscGVycy9zdHItdG8tbnVtXCI7XHJcblxyXG5AaW1wb3J0IFwiY3NzMy9hbmltYXRpb25cIjtcclxuQGltcG9ydCBcImNzczMvYXBwZWFyYW5jZVwiO1xyXG5AaW1wb3J0IFwiY3NzMy9iYWNrZmFjZS12aXNpYmlsaXR5XCI7XHJcbkBpbXBvcnQgXCJjc3MzL2JhY2tncm91bmRcIjtcclxuQGltcG9ydCBcImNzczMvYmFja2dyb3VuZC1pbWFnZVwiO1xyXG5AaW1wb3J0IFwiY3NzMy9ib3JkZXItaW1hZ2VcIjtcclxuQGltcG9ydCBcImNzczMvY2FsY1wiO1xyXG5AaW1wb3J0IFwiY3NzMy9jb2x1bW5zXCI7XHJcbkBpbXBvcnQgXCJjc3MzL2ZpbHRlclwiO1xyXG5AaW1wb3J0IFwiY3NzMy9mbGV4LWJveFwiO1xyXG5AaW1wb3J0IFwiY3NzMy9mb250LWZhY2VcIjtcclxuQGltcG9ydCBcImNzczMvZm9udC1mZWF0dXJlLXNldHRpbmdzXCI7XHJcbkBpbXBvcnQgXCJjc3MzL2hpZHBpLW1lZGlhLXF1ZXJ5XCI7XHJcbkBpbXBvcnQgXCJjc3MzL2h5cGhlbnNcIjtcclxuQGltcG9ydCBcImNzczMvaW1hZ2UtcmVuZGVyaW5nXCI7XHJcbkBpbXBvcnQgXCJjc3MzL2tleWZyYW1lc1wiO1xyXG5AaW1wb3J0IFwiY3NzMy9saW5lYXItZ3JhZGllbnRcIjtcclxuQGltcG9ydCBcImNzczMvcGVyc3BlY3RpdmVcIjtcclxuQGltcG9ydCBcImNzczMvcGxhY2Vob2xkZXJcIjtcclxuQGltcG9ydCBcImNzczMvcmFkaWFsLWdyYWRpZW50XCI7XHJcbkBpbXBvcnQgXCJjc3MzL3NlbGVjdGlvblwiO1xyXG5AaW1wb3J0IFwiY3NzMy90ZXh0LWRlY29yYXRpb25cIjtcclxuQGltcG9ydCBcImNzczMvdHJhbnNmb3JtXCI7XHJcbkBpbXBvcnQgXCJjc3MzL3RyYW5zaXRpb25cIjtcclxuQGltcG9ydCBcImNzczMvdXNlci1zZWxlY3RcIjtcclxuXHJcbkBpbXBvcnQgXCJhZGRvbnMvYm9yZGVyLWNvbG9yXCI7XHJcbkBpbXBvcnQgXCJhZGRvbnMvYm9yZGVyLXJhZGl1c1wiO1xyXG5AaW1wb3J0IFwiYWRkb25zL2JvcmRlci1zdHlsZVwiO1xyXG5AaW1wb3J0IFwiYWRkb25zL2JvcmRlci13aWR0aFwiO1xyXG5AaW1wb3J0IFwiYWRkb25zL2J1dHRvbnNcIjtcclxuQGltcG9ydCBcImFkZG9ucy9jbGVhcmZpeFwiO1xyXG5AaW1wb3J0IFwiYWRkb25zL2VsbGlwc2lzXCI7XHJcbkBpbXBvcnQgXCJhZGRvbnMvZm9udC1zdGFja3NcIjtcclxuQGltcG9ydCBcImFkZG9ucy9oaWRlLXRleHRcIjtcclxuQGltcG9ydCBcImFkZG9ucy9tYXJnaW5cIjtcclxuQGltcG9ydCBcImFkZG9ucy9wYWRkaW5nXCI7XHJcbkBpbXBvcnQgXCJhZGRvbnMvcG9zaXRpb25cIjtcclxuQGltcG9ydCBcImFkZG9ucy9wcmVmaXhlclwiO1xyXG5AaW1wb3J0IFwiYWRkb25zL3JldGluYS1pbWFnZVwiO1xyXG5AaW1wb3J0IFwiYWRkb25zL3NpemVcIjtcclxuQGltcG9ydCBcImFkZG9ucy90ZXh0LWlucHV0c1wiO1xyXG5AaW1wb3J0IFwiYWRkb25zL3RpbWluZy1mdW5jdGlvbnNcIjtcclxuQGltcG9ydCBcImFkZG9ucy90cmlhbmdsZVwiO1xyXG5AaW1wb3J0IFwiYWRkb25zL3dvcmQtd3JhcFwiO1xyXG5cclxuQGltcG9ydCBcImJvdXJib24tZGVwcmVjYXRlZC11cGNvbWluZ1wiO1xyXG4iLAoJCSJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLy8gR2xvYmFsIHZhcmlhYmxlcyB0byBlbmFibGUgb3IgZGlzYWJsZSB2ZW5kb3IgcHJlZml4ZXNcclxuXHJcbiRwcmVmaXgtZm9yLXdlYmtpdDogICAgdHJ1ZSAhZGVmYXVsdDtcclxuJHByZWZpeC1mb3ItbW96aWxsYTogICB0cnVlICFkZWZhdWx0O1xyXG4kcHJlZml4LWZvci1taWNyb3NvZnQ6IHRydWUgIWRlZmF1bHQ7XHJcbiRwcmVmaXgtZm9yLW9wZXJhOiAgICAgdHJ1ZSAhZGVmYXVsdDtcclxuJHByZWZpeC1mb3Itc3BlYzogICAgICB0cnVlICFkZWZhdWx0O1xyXG4iLAoJCSIkZW0tYmFzZTogMTZweCAhZGVmYXVsdDtcclxuIiwKCQkiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIEEgZ2xvYmFsIHNldHRpbmcgdG8gZW5hYmxlIG9yIGRpc2FibGUgdGhlIGAkYXNzZXQtcGlwZWxpbmVgIHZhcmlhYmxlIGZvciBhbGwgZnVuY3Rpb25zIHRoYXQgYWNjZXB0IGl0LlxyXG4vLy9cclxuLy8vIEB0eXBlIEJvb2xcclxuXHJcbiRhc3NldC1waXBlbGluZTogZmFsc2UgIWRlZmF1bHQ7XHJcbiIsCgkJIkBmdW5jdGlvbiBhc3NpZ24taW5wdXRzKCRpbnB1dHMsICRwc2V1ZG86IG51bGwpIHtcclxuICAkbGlzdDogKCk7XHJcblxyXG4gIEBlYWNoICRpbnB1dCBpbiAkaW5wdXRzIHtcclxuICAgICRpbnB1dDogdW5xdW90ZSgkaW5wdXQpO1xyXG4gICAgJGlucHV0OiBpZigkcHNldWRvLCAkaW5wdXQgKyBcIjpcIiArICRwc2V1ZG8sICRpbnB1dCk7XHJcbiAgICAkbGlzdDogYXBwZW5kKCRsaXN0LCAkaW5wdXQsIGNvbW1hKTtcclxuICB9XHJcblxyXG4gIEByZXR1cm4gJGxpc3Q7XHJcbn1cclxuIiwKCQkiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIENoZWNrcyBpZiBhIGxpc3QgY29udGFpbnMgYSB2YWx1ZShzKS5cclxuLy8vXHJcbi8vLyBAYWNjZXNzIHByaXZhdGVcclxuLy8vXHJcbi8vLyBAcGFyYW0ge0xpc3R9ICRsaXN0XHJcbi8vLyAgIFRoZSBsaXN0IHRvIGNoZWNrIGFnYWluc3QuXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtMaXN0fSAkdmFsdWVzXHJcbi8vLyAgIEEgc2luZ2xlIHZhbHVlIG9yIGxpc3Qgb2YgdmFsdWVzIHRvIGNoZWNrIGZvci5cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2VcclxuLy8vICAgY29udGFpbnMoJGxpc3QsICR2YWx1ZSlcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtCb29sfVxyXG5cclxuQGZ1bmN0aW9uIGNvbnRhaW5zKCRsaXN0LCAkdmFsdWVzLi4uKSB7XHJcbiAgQGVhY2ggJHZhbHVlIGluICR2YWx1ZXMge1xyXG4gICAgQGlmIHR5cGUtb2YoaW5kZXgoJGxpc3QsICR2YWx1ZSkpICE9IFwibnVtYmVyXCIge1xyXG4gICAgICBAcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQHJldHVybiB0cnVlO1xyXG59XHJcbiIsCgkJIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vLyBDaGVja3MgaWYgYSBsaXN0IGRvZXMgbm90IGNvbnRhaW5zIGEgdmFsdWUuXHJcbi8vL1xyXG4vLy8gQGFjY2VzcyBwcml2YXRlXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtMaXN0fSAkbGlzdFxyXG4vLy8gICBUaGUgbGlzdCB0byBjaGVjayBhZ2FpbnN0LlxyXG4vLy9cclxuLy8vIEByZXR1cm4ge0Jvb2x9XHJcblxyXG5AZnVuY3Rpb24gY29udGFpbnMtZmFsc3koJGxpc3QpIHtcclxuICBAZWFjaCAkaXRlbSBpbiAkbGlzdCB7XHJcbiAgICBAaWYgbm90ICRpdGVtIHtcclxuICAgICAgQHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQHJldHVybiBmYWxzZTtcclxufVxyXG4iLAoJCSJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLy8gQ2hlY2tzIGZvciBhIHZhbGlkIENTUyBsZW5ndGguXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICR2YWx1ZVxyXG5cclxuQGZ1bmN0aW9uIGlzLWxlbmd0aCgkdmFsdWUpIHtcclxuICBAcmV0dXJuIHR5cGUtb2YoJHZhbHVlKSAhPSBcIm51bGxcIiBhbmQgKHN0ci1zbGljZSgkdmFsdWUgKyBcIlwiLCAxLCA0KSA9PSBcImNhbGNcIlxyXG4gICAgICAgb3IgaW5kZXgoYXV0byBpbmhlcml0IGluaXRpYWwgMCwgJHZhbHVlKVxyXG4gICAgICAgb3IgKHR5cGUtb2YoJHZhbHVlKSA9PSBcIm51bWJlclwiIGFuZCBub3QodW5pdGxlc3MoJHZhbHVlKSkpKTtcclxufVxyXG4iLAoJCSJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLy8gUHJvZ3JhbWF0aWNhbGx5IGRldGVybWluZXMgd2hldGhlciBhIGNvbG9yIGlzIGxpZ2h0IG9yIGRhcmsuXHJcbi8vL1xyXG4vLy8gQGxpbmsgaHR0cDovL3JvYm90cy50aG91Z2h0Ym90LmNvbS9jbG9zZXItbG9vay1jb2xvci1saWdodG5lc3NcclxuLy8vXHJcbi8vLyBAcGFyYW0ge0NvbG9yIChIZXgpfSAkY29sb3JcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2VcclxuLy8vICAgaXMtbGlnaHQoJGNvbG9yKVxyXG4vLy9cclxuLy8vIEByZXR1cm4ge0Jvb2x9XHJcblxyXG5AZnVuY3Rpb24gaXMtbGlnaHQoJGhleC1jb2xvcikge1xyXG4gICQtbG9jYWwtcmVkOiByZWQocmdiYSgkaGV4LWNvbG9yLCAxKSk7XHJcbiAgJC1sb2NhbC1ncmVlbjogZ3JlZW4ocmdiYSgkaGV4LWNvbG9yLCAxKSk7XHJcbiAgJC1sb2NhbC1ibHVlOiBibHVlKHJnYmEoJGhleC1jb2xvciwgMSkpO1xyXG4gICQtbG9jYWwtbGlnaHRuZXNzOiAoJC1sb2NhbC1yZWQgKiAwLjIxMjYgKyAkLWxvY2FsLWdyZWVuICogMC43MTUyICsgJC1sb2NhbC1ibHVlICogMC4wNzIyKSAvIDI1NTtcclxuXHJcbiAgQHJldHVybiAkLWxvY2FsLWxpZ2h0bmVzcyA+IDAuNjtcclxufVxyXG4iLAoJCSJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLy8gQ2hlY2tzIGZvciBhIHZhbGlkIG51bWJlci5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge051bWJlcn0gJHZhbHVlXHJcbi8vL1xyXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBjb250YWluc1xyXG5cclxuQGZ1bmN0aW9uIGlzLW51bWJlcigkdmFsdWUpIHtcclxuICBAcmV0dXJuIGNvbnRhaW5zKFwiMFwiIFwiMVwiIFwiMlwiIFwiM1wiIFwiNFwiIFwiNVwiIFwiNlwiIFwiN1wiIFwiOFwiIFwiOVwiIDAgMSAyIDMgNCA1IDYgNyA4IDksICR2YWx1ZSk7XHJcbn1cclxuIiwKCQkiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIENoZWNrcyBmb3IgYSB2YWxpZCBDU1Mgc2l6ZS5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHZhbHVlXHJcbi8vL1xyXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBjb250YWluc1xyXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBpcy1sZW5ndGhcclxuXHJcbkBmdW5jdGlvbiBpcy1zaXplKCR2YWx1ZSkge1xyXG4gIEByZXR1cm4gaXMtbGVuZ3RoKCR2YWx1ZSlcclxuICAgICAgICAgIG9yIGNvbnRhaW5zKFwiZmlsbFwiIFwiZml0LWNvbnRlbnRcIiBcIm1pbi1jb250ZW50XCIgXCJtYXgtY29udGVudFwiLCAkdmFsdWUpO1xyXG59XHJcbiIsCgkJIi8vIENvbnZlcnQgcGl4ZWxzIHRvIGVtc1xyXG4vLyBlZy4gZm9yIGEgcmVsYXRpb25hbCB2YWx1ZSBvZiAxMnB4IHdyaXRlIGVtKDEyKSB3aGVuIHRoZSBwYXJlbnQgaXMgMTZweFxyXG4vLyBpZiB0aGUgcGFyZW50IGlzIGFub3RoZXIgdmFsdWUgc2F5IDI0cHggd3JpdGUgZW0oMTIsIDI0KVxyXG5cclxuQGZ1bmN0aW9uIGVtKCRweHZhbCwgJGJhc2U6ICRlbS1iYXNlKSB7XHJcbiAgQGlmIG5vdCB1bml0bGVzcygkcHh2YWwpIHtcclxuICAgICRweHZhbDogc3RyaXAtdW5pdHMoJHB4dmFsKTtcclxuICB9XHJcbiAgQGlmIG5vdCB1bml0bGVzcygkYmFzZSkge1xyXG4gICAgJGJhc2U6IHN0cmlwLXVuaXRzKCRiYXNlKTtcclxuICB9XHJcbiAgQHJldHVybiAoJHB4dmFsIC8gJGJhc2UpICogMWVtO1xyXG59XHJcbiIsCgkJIi8vIENvbnZlcnQgcGl4ZWxzIHRvIHJlbXNcclxuLy8gZWcuIGZvciBhIHJlbGF0aW9uYWwgdmFsdWUgb2YgMTJweCB3cml0ZSByZW0oMTIpXHJcbi8vIEFzc3VtZXMgJGVtLWJhc2UgaXMgdGhlIGZvbnQtc2l6ZSBvZiA8aHRtbD5cclxuXHJcbkBmdW5jdGlvbiByZW0oJHB4dmFsKSB7XHJcbiAgQGlmIG5vdCB1bml0bGVzcygkcHh2YWwpIHtcclxuICAgICRweHZhbDogc3RyaXAtdW5pdHMoJHB4dmFsKTtcclxuICB9XHJcblxyXG4gICRiYXNlOiAkZW0tYmFzZTtcclxuICBAaWYgbm90IHVuaXRsZXNzKCRiYXNlKSB7XHJcbiAgICAkYmFzZTogc3RyaXAtdW5pdHMoJGJhc2UpO1xyXG4gIH1cclxuICBAcmV0dXJuICgkcHh2YWwgLyAkYmFzZSkgKiAxcmVtO1xyXG59XHJcbiIsCgkJIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vLyBNaXhlcyBhIGNvbG9yIHdpdGggYmxhY2suXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtOdW1iZXIgKFBlcmNlbnRhZ2UpfSAkcGVyY2VudFxyXG4vLy8gICBUaGUgYW1vdW50IG9mIGJsYWNrIHRvIGJlIG1peGVkIGluLlxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxyXG4vLy8gICAuZWxlbWVudCB7XHJcbi8vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogc2hhZGUoI2ZmYmI1MiwgNjAlKTtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcclxuLy8vICAgLmVsZW1lbnQge1xyXG4vLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICM2NjRhMjA7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtDb2xvcn1cclxuXHJcbkBmdW5jdGlvbiBzaGFkZSgkY29sb3IsICRwZXJjZW50KSB7XHJcbiAgQHJldHVybiBtaXgoIzAwMCwgJGNvbG9yLCAkcGVyY2VudCk7XHJcbn1cclxuIiwKCQkiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIFN0cmlwcyB0aGUgdW5pdCBmcm9tIGEgbnVtYmVyLlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7TnVtYmVyIChXaXRoIFVuaXQpfSAkdmFsdWVcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2VcclxuLy8vICAgJGRpbWVuc2lvbjogc3RyaXAtdW5pdHMoMTBlbSk7XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxyXG4vLy8gICAkZGltZW5zaW9uOiAxMDtcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtOdW1iZXIgKFVuaXRsZXNzKX1cclxuXHJcbkBmdW5jdGlvbiBzdHJpcC11bml0cygkdmFsdWUpIHtcclxuICBAcmV0dXJuICgkdmFsdWUgLyAoJHZhbHVlICogMCArIDEpKTtcclxufVxyXG4iLAoJCSJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLy8gTWl4ZXMgYSBjb2xvciB3aXRoIHdoaXRlLlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvclxyXG4vLy9cclxuLy8vIEBwYXJhbSB7TnVtYmVyIChQZXJjZW50YWdlKX0gJHBlcmNlbnRcclxuLy8vICAgVGhlIGFtb3VudCBvZiB3aGl0ZSB0byBiZSBtaXhlZCBpbi5cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2VcclxuLy8vICAgLmVsZW1lbnQge1xyXG4vLy8gICAgIGJhY2tncm91bmQtY29sb3I6IHRpbnQoIzZlY2FhNiwgNDAlKTtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcclxuLy8vICAgLmVsZW1lbnQge1xyXG4vLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICNhOGRmYzk7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtDb2xvcn1cclxuXHJcbkBmdW5jdGlvbiB0aW50KCRjb2xvciwgJHBlcmNlbnQpIHtcclxuICBAcmV0dXJuIG1peCgjZmZmLCAkY29sb3IsICRwZXJjZW50KTtcclxufVxyXG4iLAoJCSIvLyBSZXR1cm4gdmVuZG9yLXByZWZpeGVkIHByb3BlcnR5IG5hbWVzIGlmIGFwcHJvcHJpYXRlXHJcbi8vIEV4YW1wbGU6IHRyYW5zaXRpb24tcHJvcGVydHktbmFtZXMoKHRyYW5zZm9ybSwgY29sb3IsIGJhY2tncm91bmQpLCBtb3opIC0+IC1tb3otdHJhbnNmb3JtLCBjb2xvciwgYmFja2dyb3VuZFxyXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vXHJcbkBmdW5jdGlvbiB0cmFuc2l0aW9uLXByb3BlcnR5LW5hbWVzKCRwcm9wcywgJHZlbmRvcjogZmFsc2UpIHtcclxuICAkbmV3LXByb3BzOiAoKTtcclxuXHJcbiAgQGVhY2ggJHByb3AgaW4gJHByb3BzIHtcclxuICAgICRuZXctcHJvcHM6IGFwcGVuZCgkbmV3LXByb3BzLCB0cmFuc2l0aW9uLXByb3BlcnR5LW5hbWUoJHByb3AsICR2ZW5kb3IpLCBjb21tYSk7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICRuZXctcHJvcHM7XHJcbn1cclxuXHJcbkBmdW5jdGlvbiB0cmFuc2l0aW9uLXByb3BlcnR5LW5hbWUoJHByb3AsICR2ZW5kb3I6IGZhbHNlKSB7XHJcbiAgLy8gcHV0IG90aGVyIHByb3BlcnRpZXMgdGhhdCBuZWVkIHRvIGJlIHByZWZpeGVkIGhlcmUgYXN3ZWxsXHJcbiAgQGlmICR2ZW5kb3IgYW5kICRwcm9wID09IHRyYW5zZm9ybSB7XHJcbiAgICBAcmV0dXJuIHVucXVvdGUoJy0nKyR2ZW5kb3IrJy0nKyRwcm9wKTtcclxuICB9XHJcbiAgQGVsc2Uge1xyXG4gICAgQHJldHVybiAkcHJvcDtcclxuICB9XHJcbn1cclxuIiwKCQkiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIENvbnZlcnRzIHNob3J0aGFuZCB0byB0aGUgNC12YWx1ZSBzeW50YXguXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtMaXN0fSAkc2hvcnRoYW5kXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBtYXJnaW46IHVucGFjaygxZW0gMmVtKTtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcclxuLy8vICAgLmVsZW1lbnQge1xyXG4vLy8gICAgIG1hcmdpbjogMWVtIDJlbSAxZW0gMmVtO1xyXG4vLy8gICB9XHJcblxyXG5AZnVuY3Rpb24gdW5wYWNrKCRzaG9ydGhhbmQpIHtcclxuICBAaWYgbGVuZ3RoKCRzaG9ydGhhbmQpID09IDEge1xyXG4gICAgQHJldHVybiBudGgoJHNob3J0aGFuZCwgMSkgbnRoKCRzaG9ydGhhbmQsIDEpIG50aCgkc2hvcnRoYW5kLCAxKSBudGgoJHNob3J0aGFuZCwgMSk7XHJcbiAgfSBAZWxzZSBpZiBsZW5ndGgoJHNob3J0aGFuZCkgPT0gMiB7XHJcbiAgICBAcmV0dXJuIG50aCgkc2hvcnRoYW5kLCAxKSBudGgoJHNob3J0aGFuZCwgMikgbnRoKCRzaG9ydGhhbmQsIDEpIG50aCgkc2hvcnRoYW5kLCAyKTtcclxuICB9IEBlbHNlIGlmIGxlbmd0aCgkc2hvcnRoYW5kKSA9PSAzIHtcclxuICAgIEByZXR1cm4gbnRoKCRzaG9ydGhhbmQsIDEpIG50aCgkc2hvcnRoYW5kLCAyKSBudGgoJHNob3J0aGFuZCwgMykgbnRoKCRzaG9ydGhhbmQsIDIpO1xyXG4gIH0gQGVsc2Uge1xyXG4gICAgQHJldHVybiAkc2hvcnRoYW5kO1xyXG4gIH1cclxufVxyXG4iLAoJCSIvLyBTY2FsaW5nIFZhcmlhYmxlc1xyXG4kZ29sZGVuOiAgICAgICAgICAgMS42MTg7XHJcbiRtaW5vci1zZWNvbmQ6ICAgICAxLjA2NztcclxuJG1ham9yLXNlY29uZDogICAgIDEuMTI1O1xyXG4kbWlub3ItdGhpcmQ6ICAgICAgMS4yO1xyXG4kbWFqb3ItdGhpcmQ6ICAgICAgMS4yNTtcclxuJHBlcmZlY3QtZm91cnRoOiAgIDEuMzMzO1xyXG4kYXVnbWVudGVkLWZvdXJ0aDogMS40MTQ7XHJcbiRwZXJmZWN0LWZpZnRoOiAgICAxLjU7XHJcbiRtaW5vci1zaXh0aDogICAgICAxLjY7XHJcbiRtYWpvci1zaXh0aDogICAgICAxLjY2NztcclxuJG1pbm9yLXNldmVudGg6ICAgIDEuNzc4O1xyXG4kbWFqb3Itc2V2ZW50aDogICAgMS44NzU7XHJcbiRvY3RhdmU6ICAgICAgICAgICAyO1xyXG4kbWFqb3ItdGVudGg6ICAgICAgMi41O1xyXG4kbWFqb3ItZWxldmVudGg6ICAgMi42Njc7XHJcbiRtYWpvci10d2VsZnRoOiAgICAzO1xyXG4kZG91YmxlLW9jdGF2ZTogICAgNDtcclxuXHJcbiRtb2R1bGFyLXNjYWxlLXJhdGlvOiAkcGVyZmVjdC1mb3VydGggIWRlZmF1bHQ7XHJcbiRtb2R1bGFyLXNjYWxlLWJhc2U6IGVtKCRlbS1iYXNlKSAhZGVmYXVsdDtcclxuXHJcbkBmdW5jdGlvbiBtb2R1bGFyLXNjYWxlKCRpbmNyZW1lbnQsICR2YWx1ZTogJG1vZHVsYXItc2NhbGUtYmFzZSwgJHJhdGlvOiAkbW9kdWxhci1zY2FsZS1yYXRpbykge1xyXG4gICR2MTogbnRoKCR2YWx1ZSwgMSk7XHJcbiAgJHYyOiBudGgoJHZhbHVlLCBsZW5ndGgoJHZhbHVlKSk7XHJcbiAgJHZhbHVlOiAkdjE7XHJcblxyXG4gIC8vIHNjYWxlICR2MiB0byBqdXN0IGFib3ZlICR2MVxyXG4gIEB3aGlsZSAkdjIgPiAkdjEge1xyXG4gICAgJHYyOiAoJHYyIC8gJHJhdGlvKTsgLy8gd2lsbCBiZSBvZmYtYnktMVxyXG4gIH1cclxuICBAd2hpbGUgJHYyIDwgJHYxIHtcclxuICAgICR2MjogKCR2MiAqICRyYXRpbyk7IC8vIHdpbGwgZml4IG9mZi1ieS0xXHJcbiAgfVxyXG5cclxuICAvLyBjaGVjayBBRlRFUiBzY2FsaW5nICR2MiB0byBwcmV2ZW50IGRvdWJsZS1jb3VudGluZyBjb3JuZXItY2FzZVxyXG4gICRkb3VibGUtc3RyYW5kZWQ6ICR2MiA+ICR2MTtcclxuXHJcbiAgQGlmICRpbmNyZW1lbnQgPiAwIHtcclxuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGluY3JlbWVudCB7XHJcbiAgICAgIEBpZiAkZG91YmxlLXN0cmFuZGVkIGFuZCAoJHYxICogJHJhdGlvKSA+ICR2MiB7XHJcbiAgICAgICAgJHZhbHVlOiAkdjI7XHJcbiAgICAgICAgJHYyOiAoJHYyICogJHJhdGlvKTtcclxuICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgJHYxOiAoJHYxICogJHJhdGlvKTtcclxuICAgICAgICAkdmFsdWU6ICR2MTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGlmICRpbmNyZW1lbnQgPCAwIHtcclxuICAgIC8vIGFkanVzdCAkdjIgdG8ganVzdCBiZWxvdyAkdjFcclxuICAgIEBpZiAkZG91YmxlLXN0cmFuZGVkIHtcclxuICAgICAgJHYyOiAoJHYyIC8gJHJhdGlvKTtcclxuICAgIH1cclxuXHJcbiAgICBAZm9yICRpIGZyb20gJGluY3JlbWVudCB0aHJvdWdoIC0xIHtcclxuICAgICAgQGlmICRkb3VibGUtc3RyYW5kZWQgYW5kICgkdjEgLyAkcmF0aW8pIDwgJHYyIHtcclxuICAgICAgICAkdmFsdWU6ICR2MjtcclxuICAgICAgICAkdjI6ICgkdjIgLyAkcmF0aW8pO1xyXG4gICAgICB9IEBlbHNlIHtcclxuICAgICAgICAkdjE6ICgkdjEgLyAkcmF0aW8pO1xyXG4gICAgICAgICR2YWx1ZTogJHYxO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICR2YWx1ZTtcclxufVxyXG4iLAoJCSIvLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vXHJcbi8vIEhlbHBlciBmdW5jdGlvbiBmb3Igc3RyLXRvLW51bSBmbi5cclxuLy8gU291cmNlOiBodHRwOi8vc2Fzc21laXN0ZXIuY29tL2dpc3QvOTY0NzQwOFxyXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vXHJcbkBmdW5jdGlvbiBfY29udmVydC11bml0cygkbnVtYmVyLCAkdW5pdCkge1xyXG4gICRzdHJpbmdzOiBcInB4XCIsIFwiY21cIiwgXCJtbVwiLCBcIiVcIiwgXCJjaFwiLCBcInBpY2FcIiwgXCJpblwiLCBcImVtXCIsIFwicmVtXCIsIFwicHRcIiwgXCJwY1wiLCBcImV4XCIsIFwidndcIiwgXCJ2aFwiLCBcInZtaW5cIiwgXCJ2bWF4XCIsIFwiZGVnXCIsIFwicmFkXCIsIFwiZ3JhZFwiLCBcInR1cm5cIjtcclxuICAkdW5pdHM6ICAgMXB4LCAxY20sIDFtbSwgMSUsIDFjaCwgMXBpY2EsIDFpbiwgMWVtLCAxcmVtLCAxcHQsIDFwYywgMWV4LCAxdncsIDF2aCwgMXZtaW4sIDF2bWF4LCAxZGVnLCAxcmFkLCAxZ3JhZCwgMXR1cm47XHJcbiAgJGluZGV4OiBpbmRleCgkc3RyaW5ncywgJHVuaXQpO1xyXG5cclxuICBAaWYgbm90ICRpbmRleCB7XHJcbiAgICBAd2FybiBcIlVua25vd24gdW5pdCBgI3skdW5pdH1gLlwiO1xyXG4gICAgQHJldHVybiBmYWxzZTtcclxuICB9XHJcblxyXG4gIEBpZiB0eXBlLW9mKCRudW1iZXIpICE9IFwibnVtYmVyXCIge1xyXG4gICAgQHdhcm4gXCJgI3skbnVtYmVyfSBpcyBub3QgYSBudW1iZXJgXCI7XHJcbiAgICBAcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgQHJldHVybiAkbnVtYmVyICogbnRoKCR1bml0cywgJGluZGV4KTtcclxufVxyXG4iLAoJCSJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLy8gRGlyZWN0aW9uYWwtcHJvcGVydHkgbWl4aW5zIGFyZSBzaG9ydGhhbmRzIGZvciB3cml0aW5nIHByb3BlcnRpZXMgbGlrZSB0aGUgZm9sbG93aW5nXHJcbi8vL1xyXG4vLy8gQGlnbm9yZSBZb3UgY2FuIGFsc28gdXNlIGBmYWxzZWAgaW5zdGVhZCBvZiBgbnVsbGAuXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtMaXN0fSAkdmFsc1xyXG4vLy8gICBMaXN0IG9mIGRpcmVjdGlvbmFsIHZhbHVlc1xyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxyXG4vLy8gICAuZWxlbWVudCB7XHJcbi8vLyAgICAgQGluY2x1ZGUgYm9yZGVyLXN0eWxlKGRvdHRlZCBudWxsKTtcclxuLy8vICAgICBAaW5jbHVkZSBtYXJnaW4obnVsbCAwIDEwcHgpO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxyXG4vLy8gICAuZWxlbWVudCB7XHJcbi8vLyAgICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogZG90dGVkO1xyXG4vLy8gICAgIGJvcmRlci10b3Atc3R5bGU6IGRvdHRlZDtcclxuLy8vICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4vLy8gICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4vLy8gICAgIG1hcmdpbi1yaWdodDogMDtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEByZXF1aXJlIHtmdW5jdGlvbn0gY29udGFpbnMtZmFsc3lcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtMaXN0fVxyXG5cclxuQGZ1bmN0aW9uIGNvbGxhcHNlLWRpcmVjdGlvbmFscygkdmFscykge1xyXG4gICRvdXRwdXQ6IG51bGw7XHJcblxyXG4gICRhOiBudGgoJHZhbHMsIDEpO1xyXG4gICRiOiBpZihsZW5ndGgoJHZhbHMpIDwgMiwgJGEsIG50aCgkdmFscywgMikpO1xyXG4gICRjOiBpZihsZW5ndGgoJHZhbHMpIDwgMywgJGEsIG50aCgkdmFscywgMykpO1xyXG4gICRkOiBpZihsZW5ndGgoJHZhbHMpIDwgMiwgJGEsIG50aCgkdmFscywgaWYobGVuZ3RoKCR2YWxzKSA8IDQsIDIsIDQpKSk7XHJcblxyXG4gIEBpZiAkYSA9PSAwIHsgJGE6IDA7IH1cclxuICBAaWYgJGIgPT0gMCB7ICRiOiAwOyB9XHJcbiAgQGlmICRjID09IDAgeyAkYzogMDsgfVxyXG4gIEBpZiAkZCA9PSAwIHsgJGQ6IDA7IH1cclxuXHJcbiAgQGlmICRhID09ICRiIGFuZCAkYSA9PSAkYyBhbmQgJGEgPT0gJGQgeyAkb3V0cHV0OiAkYTsgICAgICAgICAgfVxyXG4gIEBlbHNlIGlmICRhID09ICRjIGFuZCAkYiA9PSAkZCAgICAgICAgIHsgJG91dHB1dDogJGEgJGI7ICAgICAgIH1cclxuICBAZWxzZSBpZiAkYiA9PSAkZCAgICAgICAgICAgICAgICAgICAgICB7ICRvdXRwdXQ6ICRhICRiICRjOyAgICB9XHJcbiAgQGVsc2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyAkb3V0cHV0OiAkYSAkYiAkYyAkZDsgfVxyXG5cclxuICBAcmV0dXJuICRvdXRwdXQ7XHJcbn1cclxuXHJcbi8vLyBPdXRwdXQgZGlyZWN0aW9uYWwgcHJvcGVydGllcywgZm9yIGluc3RhbmNlIGBtYXJnaW5gLlxyXG4vLy9cclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkcHJlXHJcbi8vLyAgIFByZWZpeCB0byB1c2VcclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc3VmXHJcbi8vLyAgIFN1ZmZpeCB0byB1c2VcclxuLy8vIEBwYXJhbSB7TGlzdH0gJHZhbHNcclxuLy8vICAgTGlzdCBvZiB2YWx1ZXNcclxuLy8vXHJcbi8vLyBAcmVxdWlyZSB7ZnVuY3Rpb259IGNvbGxhcHNlLWRpcmVjdGlvbmFsc1xyXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBjb250YWlucy1mYWxzeVxyXG5cclxuQG1peGluIGRpcmVjdGlvbmFsLXByb3BlcnR5KCRwcmUsICRzdWYsICR2YWxzKSB7XHJcbiAgLy8gUHJvcGVydHkgTmFtZXNcclxuICAkdG9wOiAgICAkcHJlICsgXCItdG9wXCIgICAgKyBpZigkc3VmLCBcIi0jeyRzdWZ9XCIsIFwiXCIpO1xyXG4gICRib3R0b206ICRwcmUgKyBcIi1ib3R0b21cIiArIGlmKCRzdWYsIFwiLSN7JHN1Zn1cIiwgXCJcIik7XHJcbiAgJGxlZnQ6ICAgJHByZSArIFwiLWxlZnRcIiAgICsgaWYoJHN1ZiwgXCItI3skc3VmfVwiLCBcIlwiKTtcclxuICAkcmlnaHQ6ICAkcHJlICsgXCItcmlnaHRcIiAgKyBpZigkc3VmLCBcIi0jeyRzdWZ9XCIsIFwiXCIpO1xyXG4gICRhbGw6ICAgICRwcmUgKyAgICAgICAgICAgICBpZigkc3VmLCBcIi0jeyRzdWZ9XCIsIFwiXCIpO1xyXG5cclxuICAkdmFsczogY29sbGFwc2UtZGlyZWN0aW9uYWxzKCR2YWxzKTtcclxuXHJcbiAgQGlmIGNvbnRhaW5zLWZhbHN5KCR2YWxzKSB7XHJcbiAgICBAaWYgbnRoKCR2YWxzLCAxKSB7ICN7JHRvcH06IG50aCgkdmFscywgMSk7IH1cclxuXHJcbiAgICBAaWYgbGVuZ3RoKCR2YWxzKSA9PSAxIHtcclxuICAgICAgQGlmIG50aCgkdmFscywgMSkgeyAjeyRyaWdodH06IG50aCgkdmFscywgMSk7IH1cclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICBAaWYgbnRoKCR2YWxzLCAyKSB7ICN7JHJpZ2h0fTogbnRoKCR2YWxzLCAyKTsgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpZiBsZW5ndGgoJHZhbHMpID09IDIge1xyXG4gICAgICBAaWYgbnRoKCR2YWxzLCAxKSB7ICN7JGJvdHRvbX06IG50aCgkdmFscywgMSk7IH1cclxuICAgICAgQGlmIG50aCgkdmFscywgMikgeyAjeyRsZWZ0fTogICBudGgoJHZhbHMsIDIpOyB9XHJcbiAgICB9IEBlbHNlIGlmIGxlbmd0aCgkdmFscykgPT0gMyB7XHJcbiAgICAgIEBpZiBudGgoJHZhbHMsIDMpIHsgI3skYm90dG9tfTogbnRoKCR2YWxzLCAzKTsgfVxyXG4gICAgICBAaWYgbnRoKCR2YWxzLCAyKSB7ICN7JGxlZnR9OiAgIG50aCgkdmFscywgMik7IH1cclxuICAgIH0gQGVsc2UgaWYgbGVuZ3RoKCR2YWxzKSA9PSA0IHtcclxuICAgICAgQGlmIG50aCgkdmFscywgMykgeyAjeyRib3R0b219OiBudGgoJHZhbHMsIDMpOyB9XHJcbiAgICAgIEBpZiBudGgoJHZhbHMsIDQpIHsgI3skbGVmdH06ICAgbnRoKCR2YWxzLCA0KTsgfVxyXG4gICAgfVxyXG4gIH0gQGVsc2Uge1xyXG4gICAgI3skYWxsfTogJHZhbHM7XHJcbiAgfVxyXG59XHJcbiIsCgkJIi8vIFVzZWQgZm9yIGNyZWF0aW5nIHRoZSBzb3VyY2Ugc3RyaW5nIGZvciBmb250cyB1c2luZyBAZm9udC1mYWNlXHJcbi8vIFJlZmVyZW5jZTogaHR0cDovL2dvby5nbC9SdTFiS1BcclxuXHJcbkBmdW5jdGlvbiBmb250LXVybC1wcmVmaXhlcigkYXNzZXQtcGlwZWxpbmUpIHtcclxuICBAaWYgJGFzc2V0LXBpcGVsaW5lID09IHRydWUge1xyXG4gICAgQHJldHVybiBmb250LXVybDtcclxuICB9IEBlbHNlIHtcclxuICAgIEByZXR1cm4gdXJsO1xyXG4gIH1cclxufVxyXG5cclxuQGZ1bmN0aW9uIGZvbnQtc291cmNlLWRlY2xhcmF0aW9uKFxyXG4gICRmb250LWZhbWlseSxcclxuICAkZmlsZS1wYXRoLFxyXG4gICRhc3NldC1waXBlbGluZSxcclxuICAkZmlsZS1mb3JtYXRzLFxyXG4gICRmb250LXVybCkge1xyXG5cclxuICAkc3JjOiAoKTtcclxuXHJcbiAgJGZvcm1hdHMtbWFwOiAoXHJcbiAgICBlb3Q6ICAgXCIjeyRmaWxlLXBhdGh9LmVvdD8jaWVmaXhcIiBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSxcclxuICAgIHdvZmYyOiBcIiN7JGZpbGUtcGF0aH0ud29mZjJcIiBmb3JtYXQoXCJ3b2ZmMlwiKSxcclxuICAgIHdvZmY6ICBcIiN7JGZpbGUtcGF0aH0ud29mZlwiIGZvcm1hdChcIndvZmZcIiksXHJcbiAgICB0dGY6ICAgXCIjeyRmaWxlLXBhdGh9LnR0ZlwiIGZvcm1hdChcInRydWV0eXBlXCIpLFxyXG4gICAgc3ZnOiAgIFwiI3skZmlsZS1wYXRofS5zdmcjI3skZm9udC1mYW1pbHl9XCIgZm9ybWF0KFwic3ZnXCIpXHJcbiAgKTtcclxuXHJcbiAgQGVhY2ggJGtleSwgJHZhbHVlcyBpbiAkZm9ybWF0cy1tYXAge1xyXG4gICAgQGlmIGNvbnRhaW5zKCRmaWxlLWZvcm1hdHMsICRrZXkpIHtcclxuICAgICAgJGZpbGUtcGF0aDogbnRoKCR2YWx1ZXMsIDEpO1xyXG4gICAgICAkZm9udC1mb3JtYXQ6IG50aCgkdmFsdWVzLCAyKTtcclxuXHJcbiAgICAgIEBpZiAkYXNzZXQtcGlwZWxpbmUgPT0gdHJ1ZSB7XHJcbiAgICAgICAgJHNyYzogYXBwZW5kKCRzcmMsIGZvbnQtdXJsKCRmaWxlLXBhdGgpICRmb250LWZvcm1hdCwgY29tbWEpO1xyXG4gICAgICB9IEBlbHNlIHtcclxuICAgICAgICAkc3JjOiBhcHBlbmQoJHNyYywgdXJsKCRmaWxlLXBhdGgpICRmb250LWZvcm1hdCwgY29tbWEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICRzcmM7XHJcbn1cclxuIiwKCQkiQGZ1bmN0aW9uIF9ncmFkaWVudC1wb3NpdGlvbnMtcGFyc2VyKCRncmFkaWVudC10eXBlLCAkZ3JhZGllbnQtcG9zaXRpb25zKSB7XHJcbiAgQGlmICRncmFkaWVudC1wb3NpdGlvbnNcclxuICBhbmQgKCRncmFkaWVudC10eXBlID09IGxpbmVhcilcclxuICBhbmQgKHR5cGUtb2YoJGdyYWRpZW50LXBvc2l0aW9ucykgIT0gY29sb3IpIHtcclxuICAgICRncmFkaWVudC1wb3NpdGlvbnM6IF9saW5lYXItcG9zaXRpb25zLXBhcnNlcigkZ3JhZGllbnQtcG9zaXRpb25zKTtcclxuICB9XHJcbiAgQGVsc2UgaWYgJGdyYWRpZW50LXBvc2l0aW9uc1xyXG4gIGFuZCAoJGdyYWRpZW50LXR5cGUgPT0gcmFkaWFsKVxyXG4gIGFuZCAodHlwZS1vZigkZ3JhZGllbnQtcG9zaXRpb25zKSAhPSBjb2xvcikge1xyXG4gICAgJGdyYWRpZW50LXBvc2l0aW9uczogX3JhZGlhbC1wb3NpdGlvbnMtcGFyc2VyKCRncmFkaWVudC1wb3NpdGlvbnMpO1xyXG4gIH1cclxuICBAcmV0dXJuICRncmFkaWVudC1wb3NpdGlvbnM7XHJcbn1cclxuIiwKCQkiLy8gUHJpdmF0ZSBmdW5jdGlvbiBmb3IgbGluZWFyLWdyYWRpZW50LXBhcnNlclxyXG5AZnVuY3Rpb24gX2xpbmVhci1hbmdsZS1wYXJzZXIoJGltYWdlLCAkZmlyc3QtdmFsLCAkcHJlZml4LCAkc3VmZml4KSB7XHJcbiAgJG9mZnNldDogbnVsbDtcclxuICAkdW5pdC1zaG9ydDogIHN0ci1zbGljZSgkZmlyc3QtdmFsLCBzdHItbGVuZ3RoKCRmaXJzdC12YWwpIC0gMiwgc3RyLWxlbmd0aCgkZmlyc3QtdmFsKSk7XHJcbiAgJHVuaXQtbG9uZzogICBzdHItc2xpY2UoJGZpcnN0LXZhbCwgc3RyLWxlbmd0aCgkZmlyc3QtdmFsKSAtIDMsIHN0ci1sZW5ndGgoJGZpcnN0LXZhbCkpO1xyXG5cclxuICBAaWYgKCR1bml0LWxvbmcgPT0gXCJncmFkXCIpIG9yXHJcbiAgICAgICgkdW5pdC1sb25nID09IFwidHVyblwiKSB7XHJcbiAgICAkb2Zmc2V0OiBpZigkdW5pdC1sb25nID09IFwiZ3JhZFwiLCAtMTAwZ3JhZCAqIDMsIC0wLjc1dHVybik7XHJcbiAgfVxyXG5cclxuICBAZWxzZSBpZiAoJHVuaXQtc2hvcnQgPT0gXCJkZWdcIikgb3JcclxuICAgICAgICAgICAoJHVuaXQtc2hvcnQgPT0gXCJyYWRcIikge1xyXG4gICAgJG9mZnNldDogaWYoJHVuaXQtc2hvcnQgPT0gXCJkZWdcIiwgLTkwICogMywgMS42cmFkKTtcclxuICB9XHJcblxyXG4gIEBpZiAkb2Zmc2V0IHtcclxuICAgICRudW06IF9zdHItdG8tbnVtKCRmaXJzdC12YWwpO1xyXG5cclxuICAgIEByZXR1cm4gKFxyXG4gICAgICB3ZWJraXQtaW1hZ2U6IC13ZWJraXQtICsgJHByZWZpeCArICgkb2Zmc2V0IC0gJG51bSkgKyAkc3VmZml4LFxyXG4gICAgICBzcGVjLWltYWdlOiAkaW1hZ2VcclxuICAgICk7XHJcbiAgfVxyXG59XHJcbiIsCgkJIkBmdW5jdGlvbiBfbGluZWFyLWdyYWRpZW50LXBhcnNlcigkaW1hZ2UpIHtcclxuICAkaW1hZ2U6IHVucXVvdGUoJGltYWdlKTtcclxuICAkZ3JhZGllbnRzOiAoKTtcclxuICAkc3RhcnQ6IHN0ci1pbmRleCgkaW1hZ2UsIFwiKFwiKTtcclxuICAkZW5kOiBzdHItaW5kZXgoJGltYWdlLCBcIixcIik7XHJcbiAgJGZpcnN0LXZhbDogc3RyLXNsaWNlKCRpbWFnZSwgJHN0YXJ0ICsgMSwgJGVuZCAtIDEpO1xyXG5cclxuICAkcHJlZml4OiBzdHItc2xpY2UoJGltYWdlLCAxLCAkc3RhcnQpO1xyXG4gICRzdWZmaXg6IHN0ci1zbGljZSgkaW1hZ2UsICRlbmQsIHN0ci1sZW5ndGgoJGltYWdlKSk7XHJcblxyXG4gICRoYXMtbXVsdGlwbGUtdmFsczogc3RyLWluZGV4KCRmaXJzdC12YWwsIFwiIFwiKTtcclxuICAkaGFzLXNpbmdsZS1wb3NpdGlvbjogdW5xdW90ZShfcG9zaXRpb24tZmxpcHBlcigkZmlyc3QtdmFsKSArIFwiXCIpO1xyXG4gICRoYXMtYW5nbGU6IGlzLW51bWJlcihzdHItc2xpY2UoJGZpcnN0LXZhbCwgMSwgMSkpO1xyXG5cclxuICBAaWYgJGhhcy1tdWx0aXBsZS12YWxzIHtcclxuICAgICRncmFkaWVudHM6IF9saW5lYXItc2lkZS1jb3JuZXItcGFyc2VyKCRpbWFnZSwgJGZpcnN0LXZhbCwgJHByZWZpeCwgJHN1ZmZpeCwgJGhhcy1tdWx0aXBsZS12YWxzKTtcclxuICB9XHJcblxyXG4gIEBlbHNlIGlmICRoYXMtc2luZ2xlLXBvc2l0aW9uICE9IFwiXCIge1xyXG4gICAgJHBvczogdW5xdW90ZSgkaGFzLXNpbmdsZS1wb3NpdGlvbiArIFwiXCIpO1xyXG5cclxuICAgICRncmFkaWVudHM6IChcclxuICAgICAgd2Via2l0LWltYWdlOiAtd2Via2l0LSArICRpbWFnZSxcclxuICAgICAgc3BlYy1pbWFnZTogJHByZWZpeCArIFwidG8gXCIgKyAkcG9zICsgJHN1ZmZpeFxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIEBlbHNlIGlmICRoYXMtYW5nbGUge1xyXG4gICAgLy8gUm90YXRlIGRlZ3JlZSBmb3Igd2Via2l0XHJcbiAgICAkZ3JhZGllbnRzOiBfbGluZWFyLWFuZ2xlLXBhcnNlcigkaW1hZ2UsICRmaXJzdC12YWwsICRwcmVmaXgsICRzdWZmaXgpO1xyXG4gIH1cclxuXHJcbiAgQGVsc2Uge1xyXG4gICAgJGdyYWRpZW50czogKFxyXG4gICAgICB3ZWJraXQtaW1hZ2U6IC13ZWJraXQtICsgJGltYWdlLFxyXG4gICAgICBzcGVjLWltYWdlOiAkaW1hZ2VcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICRncmFkaWVudHM7XHJcbn1cclxuIiwKCQkiQGZ1bmN0aW9uIF9saW5lYXItcG9zaXRpb25zLXBhcnNlcigkcG9zKSB7XHJcbiAgJHR5cGU6IHR5cGUtb2YobnRoKCRwb3MsIDEpKTtcclxuICAkc3BlYzogbnVsbDtcclxuICAkZGVncmVlOiBudWxsO1xyXG4gICRzaWRlOiBudWxsO1xyXG4gICRjb3JuZXI6IG51bGw7XHJcbiAgJGxlbmd0aDogbGVuZ3RoKCRwb3MpO1xyXG4gIC8vIFBhcnNlIFNpZGUgYW5kIGNvcm5lciBwb3NpdGlvbnNcclxuICBAaWYgKCRsZW5ndGggPiAxKSB7XHJcbiAgICBAaWYgbnRoKCRwb3MsIDEpID09IFwidG9cIiB7IC8vIE5ld2VyIHN5bnRheFxyXG4gICAgICAkc2lkZTogbnRoKCRwb3MsIDIpO1xyXG5cclxuICAgICAgQGlmICRsZW5ndGggPT0gMiB7IC8vIGVnLiB0byB0b3BcclxuICAgICAgICAvLyBTd2FwIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eVxyXG4gICAgICAgICRkZWdyZWU6IF9wb3NpdGlvbi1mbGlwcGVyKG50aCgkcG9zLCAyKSk7XHJcbiAgICAgIH1cclxuICAgICAgQGVsc2UgaWYgJGxlbmd0aCA9PSAzIHsgLy8gZWcuIHRvIHRvcCBsZWZ0XHJcbiAgICAgICAgJGNvcm5lcjogbnRoKCRwb3MsIDMpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAZWxzZSBpZiAkbGVuZ3RoID09IDIgeyAvLyBPbGRlciBzeW50YXggKFwidG9wIGxlZnRcIilcclxuICAgICAgJHNpZGU6IF9wb3NpdGlvbi1mbGlwcGVyKG50aCgkcG9zLCAxKSk7XHJcbiAgICAgICRjb3JuZXI6IF9wb3NpdGlvbi1mbGlwcGVyKG50aCgkcG9zLCAyKSk7XHJcbiAgICB9XHJcblxyXG4gICAgQGlmIChcIiN7JHNpZGV9ICN7JGNvcm5lcn1cIiA9PSBcImxlZnQgdG9wXCIpIG9yIChcIiN7JHNpZGV9ICN7JGNvcm5lcn1cIiA9PSBcInRvcCBsZWZ0XCIpIHtcclxuICAgICAgJGRlZ3JlZTogX3Bvc2l0aW9uLWZsaXBwZXIoI3skc2lkZX0pIF9wb3NpdGlvbi1mbGlwcGVyKCN7JGNvcm5lcn0pO1xyXG4gICAgfVxyXG4gICAgQGVsc2UgaWYgKFwiI3skc2lkZX0gI3skY29ybmVyfVwiID09IFwicmlnaHQgdG9wXCIpIG9yIChcIiN7JHNpZGV9ICN7JGNvcm5lcn1cIiA9PSBcInRvcCByaWdodFwiKSB7XHJcbiAgICAgICRkZWdyZWU6IF9wb3NpdGlvbi1mbGlwcGVyKCN7JHNpZGV9KSBfcG9zaXRpb24tZmxpcHBlcigjeyRjb3JuZXJ9KTtcclxuICAgIH1cclxuICAgIEBlbHNlIGlmIChcIiN7JHNpZGV9ICN7JGNvcm5lcn1cIiA9PSBcInJpZ2h0IGJvdHRvbVwiKSBvciAoXCIjeyRzaWRlfSAjeyRjb3JuZXJ9XCIgPT0gXCJib3R0b20gcmlnaHRcIikge1xyXG4gICAgICAkZGVncmVlOiBfcG9zaXRpb24tZmxpcHBlcigjeyRzaWRlfSkgX3Bvc2l0aW9uLWZsaXBwZXIoI3skY29ybmVyfSk7XHJcbiAgICB9XHJcbiAgICBAZWxzZSBpZiAoXCIjeyRzaWRlfSAjeyRjb3JuZXJ9XCIgPT0gXCJsZWZ0IGJvdHRvbVwiKSBvciAoXCIjeyRzaWRlfSAjeyRjb3JuZXJ9XCIgPT0gXCJib3R0b20gbGVmdFwiKSB7XHJcbiAgICAgICRkZWdyZWU6IF9wb3NpdGlvbi1mbGlwcGVyKCN7JHNpZGV9KSBfcG9zaXRpb24tZmxpcHBlcigjeyRjb3JuZXJ9KTtcclxuICAgIH1cclxuICAgICRzcGVjOiB0byAkc2lkZSAkY29ybmVyO1xyXG4gIH1cclxuICBAZWxzZSBpZiAkbGVuZ3RoID09IDEge1xyXG4gICAgLy8gU3dhcCBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcclxuICAgIEBpZiAkdHlwZSA9PSBzdHJpbmcge1xyXG4gICAgICAkZGVncmVlOiAkcG9zO1xyXG4gICAgICAkc3BlYzogdG8gX3Bvc2l0aW9uLWZsaXBwZXIoJHBvcyk7XHJcbiAgICB9XHJcbiAgICBAZWxzZSB7XHJcbiAgICAgICRkZWdyZWU6IC0yNzAgLSAkcG9zOyAvL3JvdGF0ZSB0aGUgZ3JhZGllbnQgb3Bwb3NpdGUgZnJvbSBzcGVjXHJcbiAgICAgICRzcGVjOiAkcG9zO1xyXG4gICAgfVxyXG4gIH1cclxuICAkZGVncmVlOiB1bnF1b3RlKCRkZWdyZWUgKyBcIixcIik7XHJcbiAgJHNwZWM6ICAgdW5xdW90ZSgkc3BlYyArIFwiLFwiKTtcclxuICBAcmV0dXJuICRkZWdyZWUgJHNwZWM7XHJcbn1cclxuXHJcbkBmdW5jdGlvbiBfcG9zaXRpb24tZmxpcHBlcigkcG9zKSB7XHJcbiAgQHJldHVybiBpZigkcG9zID09IGxlZnQsIHJpZ2h0LCBudWxsKVxyXG4gICAgICAgICBpZigkcG9zID09IHJpZ2h0LCBsZWZ0LCBudWxsKVxyXG4gICAgICAgICBpZigkcG9zID09IHRvcCwgYm90dG9tLCBudWxsKVxyXG4gICAgICAgICBpZigkcG9zID09IGJvdHRvbSwgdG9wLCBudWxsKTtcclxufVxyXG4iLAoJCSIvLyBQcml2YXRlIGZ1bmN0aW9uIGZvciBsaW5lYXItZ3JhZGllbnQtcGFyc2VyXHJcbkBmdW5jdGlvbiBfbGluZWFyLXNpZGUtY29ybmVyLXBhcnNlcigkaW1hZ2UsICRmaXJzdC12YWwsICRwcmVmaXgsICRzdWZmaXgsICRoYXMtbXVsdGlwbGUtdmFscykge1xyXG4gICR2YWwtMTogc3RyLXNsaWNlKCRmaXJzdC12YWwsIDEsICRoYXMtbXVsdGlwbGUtdmFscyAtIDEpO1xyXG4gICR2YWwtMjogc3RyLXNsaWNlKCRmaXJzdC12YWwsICRoYXMtbXVsdGlwbGUtdmFscyArIDEsIHN0ci1sZW5ndGgoJGZpcnN0LXZhbCkpO1xyXG4gICR2YWwtMzogbnVsbDtcclxuICAkaGFzLXZhbC0zOiBzdHItaW5kZXgoJHZhbC0yLCBcIiBcIik7XHJcblxyXG4gIEBpZiAkaGFzLXZhbC0zIHtcclxuICAgICR2YWwtMzogc3RyLXNsaWNlKCR2YWwtMiwgJGhhcy12YWwtMyArIDEsIHN0ci1sZW5ndGgoJHZhbC0yKSk7XHJcbiAgICAkdmFsLTI6IHN0ci1zbGljZSgkdmFsLTIsIDEsICRoYXMtdmFsLTMgLSAxKTtcclxuICB9XHJcblxyXG4gICRwb3M6IF9wb3NpdGlvbi1mbGlwcGVyKCR2YWwtMSkgX3Bvc2l0aW9uLWZsaXBwZXIoJHZhbC0yKSBfcG9zaXRpb24tZmxpcHBlcigkdmFsLTMpO1xyXG4gICRwb3M6IHVucXVvdGUoJHBvcyArIFwiXCIpO1xyXG5cclxuICAvLyBVc2Ugb2xkIHNwZWMgZm9yIHdlYmtpdFxyXG4gIEBpZiAkdmFsLTEgPT0gXCJ0b1wiIHtcclxuICAgIEByZXR1cm4gKFxyXG4gICAgICB3ZWJraXQtaW1hZ2U6IC13ZWJraXQtICsgJHByZWZpeCArICRwb3MgKyAkc3VmZml4LFxyXG4gICAgICBzcGVjLWltYWdlOiAkaW1hZ2VcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICAvLyBCcmluZyB0aGUgY29kZSB1cCB0byBzcGVjXHJcbiAgQGVsc2Uge1xyXG4gICAgQHJldHVybiAoXHJcbiAgICAgIHdlYmtpdC1pbWFnZTogLXdlYmtpdC0gKyAkaW1hZ2UsXHJcbiAgICAgIHNwZWMtaW1hZ2U6ICRwcmVmaXggKyBcInRvIFwiICsgJHBvcyArICRzdWZmaXhcclxuICAgICk7XHJcbiAgfVxyXG59XHJcbiIsCgkJIkBmdW5jdGlvbiBfcmFkaWFsLWFyZy1wYXJzZXIoJGcxLCAkZzIsICRwb3MsICRzaGFwZS1zaXplKSB7XHJcbiAgQGVhY2ggJHZhbHVlIGluICRnMSwgJGcyIHtcclxuICAgICRmaXJzdC12YWw6IG50aCgkdmFsdWUsIDEpO1xyXG4gICAgJHBvcy10eXBlOiAgdHlwZS1vZigkZmlyc3QtdmFsKTtcclxuICAgICRzcGVjLWF0LWluZGV4OiBudWxsO1xyXG5cclxuICAgIC8vIERldGVybWluZSBpZiBzcGVjIHdhcyBwYXNzZWQgdG8gbWl4aW5cclxuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gbGlzdCB7XHJcbiAgICAgICRzcGVjLWF0LWluZGV4OiBpZihpbmRleCgkdmFsdWUsIGF0KSwgaW5kZXgoJHZhbHVlLCBhdCksIGZhbHNlKTtcclxuICAgIH1cclxuICAgIEBpZiAkc3BlYy1hdC1pbmRleCB7XHJcbiAgICAgIEBpZiAkc3BlYy1hdC1pbmRleCA+IDEge1xyXG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggKCRzcGVjLWF0LWluZGV4IC0gMSkge1xyXG4gICAgICAgICAgJHNoYXBlLXNpemU6ICRzaGFwZS1zaXplIG50aCgkdmFsdWUsICRpKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGZvciAkaSBmcm9tICgkc3BlYy1hdC1pbmRleCArIDEpIHRocm91Z2ggbGVuZ3RoKCR2YWx1ZSkge1xyXG4gICAgICAgICAgJHBvczogJHBvcyBudGgoJHZhbHVlLCAkaSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIEBlbHNlIGlmICRzcGVjLWF0LWluZGV4ID09IDEge1xyXG4gICAgICAgIEBmb3IgJGkgZnJvbSAoJHNwZWMtYXQtaW5kZXggKyAxKSB0aHJvdWdoIGxlbmd0aCgkdmFsdWUpIHtcclxuICAgICAgICAgICRwb3M6ICRwb3MgbnRoKCR2YWx1ZSwgJGkpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAkZzE6IG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gSWYgbm90IHNwZWMgY2FsY3VsYXRlIGNvcnJlY3QgdmFsdWVzXHJcbiAgICBAZWxzZSB7XHJcbiAgICAgIEBpZiAoJHBvcy10eXBlICE9IGNvbG9yKSBvciAoJGZpcnN0LXZhbCAhPSBcInRyYW5zcGFyZW50XCIpIHtcclxuICAgICAgICBAaWYgKCRwb3MtdHlwZSA9PSBudW1iZXIpXHJcbiAgICAgICAgb3IgKCRmaXJzdC12YWwgPT0gXCJjZW50ZXJcIilcclxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcInRvcFwiKVxyXG4gICAgICAgIG9yICgkZmlyc3QtdmFsID09IFwicmlnaHRcIilcclxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcImJvdHRvbVwiKVxyXG4gICAgICAgIG9yICgkZmlyc3QtdmFsID09IFwibGVmdFwiKSB7XHJcblxyXG4gICAgICAgICAgJHBvczogJHZhbHVlO1xyXG5cclxuICAgICAgICAgIEBpZiAkcG9zID09ICRnMSB7XHJcbiAgICAgICAgICAgICRnMTogbnVsbDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBlbHNlIGlmXHJcbiAgICAgICAgICAgKCRmaXJzdC12YWwgPT0gXCJlbGxpcHNlXCIpXHJcbiAgICAgICAgb3IgKCRmaXJzdC12YWwgPT0gXCJjaXJjbGVcIilcclxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcImNsb3Nlc3Qtc2lkZVwiKVxyXG4gICAgICAgIG9yICgkZmlyc3QtdmFsID09IFwiY2xvc2VzdC1jb3JuZXJcIilcclxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcImZhcnRoZXN0LXNpZGVcIilcclxuICAgICAgICBvciAoJGZpcnN0LXZhbCA9PSBcImZhcnRoZXN0LWNvcm5lclwiKVxyXG4gICAgICAgIG9yICgkZmlyc3QtdmFsID09IFwiY29udGFpblwiKVxyXG4gICAgICAgIG9yICgkZmlyc3QtdmFsID09IFwiY292ZXJcIikge1xyXG5cclxuICAgICAgICAgICRzaGFwZS1zaXplOiAkdmFsdWU7XHJcblxyXG4gICAgICAgICAgQGlmICR2YWx1ZSA9PSAkZzEge1xyXG4gICAgICAgICAgICAkZzE6IG51bGw7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgQGVsc2UgaWYgJHZhbHVlID09ICRnMiB7XHJcbiAgICAgICAgICAgICRnMjogbnVsbDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgQHJldHVybiAkZzEsICRnMiwgJHBvcywgJHNoYXBlLXNpemU7XHJcbn1cclxuIiwKCQkiQGZ1bmN0aW9uIF9yYWRpYWwtcG9zaXRpb25zLXBhcnNlcigkZ3JhZGllbnQtcG9zKSB7XHJcbiAgJHNoYXBlLXNpemU6IG50aCgkZ3JhZGllbnQtcG9zLCAxKTtcclxuICAkcG9zOiAgICAgICAgbnRoKCRncmFkaWVudC1wb3MsIDIpO1xyXG4gICRzaGFwZS1zaXplLXNwZWM6IF9zaGFwZS1zaXplLXN0cmlwcGVyKCRzaGFwZS1zaXplKTtcclxuXHJcbiAgJHByZS1zcGVjOiB1bnF1b3RlKGlmKCRwb3MsIFwiI3skcG9zfSwgXCIsIG51bGwpKVxyXG4gICAgICAgICAgICAgdW5xdW90ZShpZigkc2hhcGUtc2l6ZSwgXCIjeyRzaGFwZS1zaXplfSxcIiwgbnVsbCkpO1xyXG4gICRwb3Mtc3BlYzogaWYoJHBvcywgXCJhdCAjeyRwb3N9XCIsIG51bGwpO1xyXG5cclxuICAkc3BlYzogXCIjeyRzaGFwZS1zaXplLXNwZWN9ICN7JHBvcy1zcGVjfVwiO1xyXG5cclxuICAvLyBBZGQgY29tbWFcclxuICBAaWYgKCRzcGVjICE9IFwiICBcIikge1xyXG4gICAgJHNwZWM6IFwiI3skc3BlY30sXCI7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICRwcmUtc3BlYyAkc3BlYztcclxufVxyXG4iLAoJCSJAZnVuY3Rpb24gX3JhZGlhbC1ncmFkaWVudC1wYXJzZXIoJGltYWdlKSB7XHJcbiAgJGltYWdlOiB1bnF1b3RlKCRpbWFnZSk7XHJcbiAgJGdyYWRpZW50czogKCk7XHJcbiAgJHN0YXJ0OiBzdHItaW5kZXgoJGltYWdlLCBcIihcIik7XHJcbiAgJGVuZDogc3RyLWluZGV4KCRpbWFnZSwgXCIsXCIpO1xyXG4gICRmaXJzdC12YWw6IHN0ci1zbGljZSgkaW1hZ2UsICRzdGFydCArIDEsICRlbmQgLSAxKTtcclxuXHJcbiAgJHByZWZpeDogc3RyLXNsaWNlKCRpbWFnZSwgMSwgJHN0YXJ0KTtcclxuICAkc3VmZml4OiBzdHItc2xpY2UoJGltYWdlLCAkZW5kLCBzdHItbGVuZ3RoKCRpbWFnZSkpO1xyXG5cclxuICAkaXMtc3BlYy1zeW50YXg6IHN0ci1pbmRleCgkZmlyc3QtdmFsLCBcImF0XCIpO1xyXG5cclxuICBAaWYgJGlzLXNwZWMtc3ludGF4IGFuZCAkaXMtc3BlYy1zeW50YXggPiAxIHtcclxuICAgICRrZXl3b3JkOiBzdHItc2xpY2UoJGZpcnN0LXZhbCwgMSwgJGlzLXNwZWMtc3ludGF4IC0gMik7XHJcbiAgICAkcG9zOiBzdHItc2xpY2UoJGZpcnN0LXZhbCwgJGlzLXNwZWMtc3ludGF4ICsgMywgc3RyLWxlbmd0aCgkZmlyc3QtdmFsKSk7XHJcbiAgICAkcG9zOiBhcHBlbmQoJHBvcywgJGtleXdvcmQsIGNvbW1hKTtcclxuXHJcbiAgICAkZ3JhZGllbnRzOiAoXHJcbiAgICAgIHdlYmtpdC1pbWFnZTogLXdlYmtpdC0gKyAkcHJlZml4ICsgJHBvcyArICRzdWZmaXgsXHJcbiAgICAgIHNwZWMtaW1hZ2U6ICRpbWFnZVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIEBlbHNlIGlmICRpcy1zcGVjLXN5bnRheCA9PSAxIHtcclxuICAgICRwb3M6IHN0ci1zbGljZSgkZmlyc3QtdmFsLCAkaXMtc3BlYy1zeW50YXggKyAzLCBzdHItbGVuZ3RoKCRmaXJzdC12YWwpKTtcclxuXHJcbiAgICAkZ3JhZGllbnRzOiAoXHJcbiAgICAgIHdlYmtpdC1pbWFnZTogLXdlYmtpdC0gKyAkcHJlZml4ICsgJHBvcyArICRzdWZmaXgsXHJcbiAgICAgIHNwZWMtaW1hZ2U6ICRpbWFnZVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIEBlbHNlIGlmIHN0ci1pbmRleCgkaW1hZ2UsIFwiY292ZXJcIikgb3Igc3RyLWluZGV4KCRpbWFnZSwgXCJjb250YWluXCIpIHtcclxuICAgIEB3YXJuIFwiUmFkaWFsLWdyYWRpZW50IG5lZWRzIHRvIGJlIHVwZGF0ZWQgdG8gY29uZm9ybSB0byBsYXRlc3Qgc3BlYy5cIjtcclxuXHJcbiAgICAkZ3JhZGllbnRzOiAoXHJcbiAgICAgIHdlYmtpdC1pbWFnZTogbnVsbCxcclxuICAgICAgc3BlYy1pbWFnZTogJGltYWdlXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgQGVsc2Uge1xyXG4gICAgJGdyYWRpZW50czogKFxyXG4gICAgICB3ZWJraXQtaW1hZ2U6IC13ZWJraXQtICsgJGltYWdlLFxyXG4gICAgICBzcGVjLWltYWdlOiAkaW1hZ2VcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICRncmFkaWVudHM7XHJcbn1cclxuIiwKCQkiLy8gVXNlciBmb3IgbGluZWFyIGFuZCByYWRpYWwgZ3JhZGllbnRzIHdpdGhpbiBiYWNrZ3JvdW5kLWltYWdlIG9yIGJvcmRlci1pbWFnZSBwcm9wZXJ0aWVzXHJcblxyXG5AZnVuY3Rpb24gX3JlbmRlci1ncmFkaWVudHMoJGdyYWRpZW50LXBvc2l0aW9ucywgJGdyYWRpZW50cywgJGdyYWRpZW50LXR5cGUsICR2ZW5kb3I6IGZhbHNlKSB7XHJcbiAgJHByZS1zcGVjOiBudWxsO1xyXG4gICRzcGVjOiBudWxsO1xyXG4gICR2ZW5kb3ItZ3JhZGllbnRzOiBudWxsO1xyXG4gIEBpZiAkZ3JhZGllbnQtdHlwZSA9PSBsaW5lYXIge1xyXG4gICAgQGlmICRncmFkaWVudC1wb3NpdGlvbnMge1xyXG4gICAgICAkcHJlLXNwZWM6IG50aCgkZ3JhZGllbnQtcG9zaXRpb25zLCAxKTtcclxuICAgICAgJHNwZWM6ICAgICBudGgoJGdyYWRpZW50LXBvc2l0aW9ucywgMik7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBlbHNlIGlmICRncmFkaWVudC10eXBlID09IHJhZGlhbCB7XHJcbiAgICAkcHJlLXNwZWM6IG50aCgkZ3JhZGllbnQtcG9zaXRpb25zLCAxKTtcclxuICAgICRzcGVjOiAgICAgbnRoKCRncmFkaWVudC1wb3NpdGlvbnMsIDIpO1xyXG4gIH1cclxuXHJcbiAgQGlmICR2ZW5kb3Ige1xyXG4gICAgJHZlbmRvci1ncmFkaWVudHM6IC0jeyR2ZW5kb3J9LSN7JGdyYWRpZW50LXR5cGV9LWdyYWRpZW50KCN7JHByZS1zcGVjfSAkZ3JhZGllbnRzKTtcclxuICB9XHJcbiAgQGVsc2UgaWYgJHZlbmRvciA9PSBmYWxzZSB7XHJcbiAgICAkdmVuZG9yLWdyYWRpZW50czogXCIjeyRncmFkaWVudC10eXBlfS1ncmFkaWVudCgjeyRzcGVjfSAjeyRncmFkaWVudHN9KVwiO1xyXG4gICAgJHZlbmRvci1ncmFkaWVudHM6IHVucXVvdGUoJHZlbmRvci1ncmFkaWVudHMpO1xyXG4gIH1cclxuICBAcmV0dXJuICR2ZW5kb3ItZ3JhZGllbnRzO1xyXG59XHJcbiIsCgkJIkBmdW5jdGlvbiBfc2hhcGUtc2l6ZS1zdHJpcHBlcigkc2hhcGUtc2l6ZSkge1xyXG4gICRzaGFwZS1zaXplLXNwZWM6IG51bGw7XHJcbiAgQGVhY2ggJHZhbHVlIGluICRzaGFwZS1zaXplIHtcclxuICAgIEBpZiAoJHZhbHVlID09IFwiY292ZXJcIikgb3IgKCR2YWx1ZSA9PSBcImNvbnRhaW5cIikge1xyXG4gICAgICAkdmFsdWU6IG51bGw7XHJcbiAgICB9XHJcbiAgICAkc2hhcGUtc2l6ZS1zcGVjOiBcIiN7JHNoYXBlLXNpemUtc3BlY30gI3skdmFsdWV9XCI7XHJcbiAgfVxyXG4gIEByZXR1cm4gJHNoYXBlLXNpemUtc3BlYztcclxufVxyXG4iLAoJCSIvLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vXHJcbi8vIEhlbHBlciBmdW5jdGlvbiBmb3IgbGluZWFyL3JhZGlhbC1ncmFkaWVudC1wYXJzZXJzLlxyXG4vLyBTb3VyY2U6IGh0dHA6Ly9zYXNzbWVpc3Rlci5jb20vZ2lzdC85NjQ3NDA4XHJcbi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLy9cclxuQGZ1bmN0aW9uIF9zdHItdG8tbnVtKCRzdHJpbmcpIHtcclxuICAvLyBNYXRyaWNlc1xyXG4gICRzdHJpbmdzOiBcIjBcIiBcIjFcIiBcIjJcIiBcIjNcIiBcIjRcIiBcIjVcIiBcIjZcIiBcIjdcIiBcIjhcIiBcIjlcIjtcclxuICAkbnVtYmVyczogIDAgICAxICAgMiAgIDMgICA0ICAgNSAgIDYgICA3ICAgOCAgIDk7XHJcblxyXG4gIC8vIFJlc3VsdFxyXG4gICRyZXN1bHQ6IDA7XHJcbiAgJGRpdmlkZXI6IDA7XHJcbiAgJG1pbnVzOiBmYWxzZTtcclxuXHJcbiAgLy8gTG9vcGluZyB0aHJvdWdoIGFsbCBjaGFyYWN0ZXJzXHJcbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCBzdHItbGVuZ3RoKCRzdHJpbmcpIHtcclxuICAgICRjaGFyYWN0ZXI6IHN0ci1zbGljZSgkc3RyaW5nLCAkaSwgJGkpO1xyXG4gICAgJGluZGV4OiBpbmRleCgkc3RyaW5ncywgJGNoYXJhY3Rlcik7XHJcblxyXG4gICAgQGlmICRjaGFyYWN0ZXIgPT0gXCItXCIge1xyXG4gICAgICAkbWludXM6IHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgQGVsc2UgaWYgJGNoYXJhY3RlciA9PSBcIi5cIiB7XHJcbiAgICAgICRkaXZpZGVyOiAxO1xyXG4gICAgfVxyXG5cclxuICAgIEBlbHNlIHtcclxuICAgICAgQGlmIG5vdCAkaW5kZXgge1xyXG4gICAgICAgICRyZXN1bHQ6IGlmKCRtaW51cywgJHJlc3VsdCAqIC0xLCAkcmVzdWx0KTtcclxuICAgICAgICBAcmV0dXJuIF9jb252ZXJ0LXVuaXRzKCRyZXN1bHQsIHN0ci1zbGljZSgkc3RyaW5nLCAkaSkpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAkbnVtYmVyOiBudGgoJG51bWJlcnMsICRpbmRleCk7XHJcblxyXG4gICAgICBAaWYgJGRpdmlkZXIgPT0gMCB7XHJcbiAgICAgICAgJHJlc3VsdDogJHJlc3VsdCAqIDEwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAZWxzZSB7XHJcbiAgICAgICAgLy8gTW92ZSB0aGUgZGVjaW1hbCBkb3QgdG8gdGhlIGxlZnRcclxuICAgICAgICAkZGl2aWRlcjogJGRpdmlkZXIgKiAxMDtcclxuICAgICAgICAkbnVtYmVyOiAkbnVtYmVyIC8gJGRpdmlkZXI7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKyAkbnVtYmVyO1xyXG4gICAgfVxyXG4gIH1cclxuICBAcmV0dXJuIGlmKCRtaW51cywgJHJlc3VsdCAqIC0xLCAkcmVzdWx0KTtcclxufVxyXG4iLAoJCSIvLyBodHRwOi8vd3d3LnczLm9yZy9UUi9jc3MzLWFuaW1hdGlvbnMvI3RoZS1hbmltYXRpb24tbmFtZS1wcm9wZXJ0eS1cclxuLy8gRWFjaCBvZiB0aGVzZSBtaXhpbnMgc3VwcG9ydCBjb21tYSBzZXBhcmF0ZWQgbGlzdHMgb2YgdmFsdWVzLCB3aGljaCBhbGxvd3MgZGlmZmVyZW50IHRyYW5zaXRpb25zIGZvciBpbmRpdmlkdWFsIHByb3BlcnRpZXMgdG8gYmUgZGVzY3JpYmVkIGluIGEgc2luZ2xlIHN0eWxlIHJ1bGUuIEVhY2ggdmFsdWUgaW4gdGhlIGxpc3QgY29ycmVzcG9uZHMgdG8gdGhlIHZhbHVlIGF0IHRoYXQgc2FtZSBwb3NpdGlvbiBpbiB0aGUgb3RoZXIgcHJvcGVydGllcy5cclxuXHJcbkBtaXhpbiBhbmltYXRpb24oJGFuaW1hdGlvbnMuLi4pIHtcclxuICBAaW5jbHVkZSBwcmVmaXhlcihhbmltYXRpb24sICRhbmltYXRpb25zLCB3ZWJraXQgbW96IHNwZWMpO1xyXG59XHJcblxyXG5AbWl4aW4gYW5pbWF0aW9uLW5hbWUoJG5hbWVzLi4uKSB7XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYW5pbWF0aW9uLW5hbWUsICRuYW1lcywgd2Via2l0IG1veiBzcGVjKTtcclxufVxyXG5cclxuQG1peGluIGFuaW1hdGlvbi1kdXJhdGlvbigkdGltZXMuLi4pIHtcclxuICBAaW5jbHVkZSBwcmVmaXhlcihhbmltYXRpb24tZHVyYXRpb24sICR0aW1lcywgd2Via2l0IG1veiBzcGVjKTtcclxufVxyXG5cclxuQG1peGluIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24oJG1vdGlvbnMuLi4pIHtcclxuICAvLyBlYXNlIHwgbGluZWFyIHwgZWFzZS1pbiB8IGVhc2Utb3V0IHwgZWFzZS1pbi1vdXRcclxuICBAaW5jbHVkZSBwcmVmaXhlcihhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uLCAkbW90aW9ucywgd2Via2l0IG1veiBzcGVjKTtcclxufVxyXG5cclxuQG1peGluIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQoJHZhbHVlcy4uLikge1xyXG4gIC8vIGluZmluaXRlIHwgPG51bWJlcj5cclxuICBAaW5jbHVkZSBwcmVmaXhlcihhbmltYXRpb24taXRlcmF0aW9uLWNvdW50LCAkdmFsdWVzLCB3ZWJraXQgbW96IHNwZWMpO1xyXG59XHJcblxyXG5AbWl4aW4gYW5pbWF0aW9uLWRpcmVjdGlvbigkZGlyZWN0aW9ucy4uLikge1xyXG4gIC8vIG5vcm1hbCB8IGFsdGVybmF0ZVxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGFuaW1hdGlvbi1kaXJlY3Rpb24sICRkaXJlY3Rpb25zLCB3ZWJraXQgbW96IHNwZWMpO1xyXG59XHJcblxyXG5AbWl4aW4gYW5pbWF0aW9uLXBsYXktc3RhdGUoJHN0YXRlcy4uLikge1xyXG4gIC8vIHJ1bm5pbmcgfCBwYXVzZWRcclxuICBAaW5jbHVkZSBwcmVmaXhlcihhbmltYXRpb24tcGxheS1zdGF0ZSwgJHN0YXRlcywgd2Via2l0IG1veiBzcGVjKTtcclxufVxyXG5cclxuQG1peGluIGFuaW1hdGlvbi1kZWxheSgkdGltZXMuLi4pIHtcclxuICBAaW5jbHVkZSBwcmVmaXhlcihhbmltYXRpb24tZGVsYXksICR0aW1lcywgd2Via2l0IG1veiBzcGVjKTtcclxufVxyXG5cclxuQG1peGluIGFuaW1hdGlvbi1maWxsLW1vZGUoJG1vZGVzLi4uKSB7XHJcbiAgLy8gbm9uZSB8IGZvcndhcmRzIHwgYmFja3dhcmRzIHwgYm90aFxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGFuaW1hdGlvbi1maWxsLW1vZGUsICRtb2Rlcywgd2Via2l0IG1veiBzcGVjKTtcclxufVxyXG4iLAoJCSJAbWl4aW4gYXBwZWFyYW5jZSgkdmFsdWUpIHtcclxuICBAaW5jbHVkZSBwcmVmaXhlcihhcHBlYXJhbmNlLCAkdmFsdWUsIHdlYmtpdCBtb3ogbXMgbyBzcGVjKTtcclxufVxyXG4iLAoJCSJAbWl4aW4gYmFja2ZhY2UtdmlzaWJpbGl0eSgkdmlzaWJpbGl0eSkge1xyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGJhY2tmYWNlLXZpc2liaWxpdHksICR2aXNpYmlsaXR5LCB3ZWJraXQgc3BlYyk7XHJcbn1cclxuIiwKCQkiLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovL1xyXG4vLyBCYWNrZ3JvdW5kIHByb3BlcnR5IGZvciBhZGRpbmcgbXVsdGlwbGUgYmFja2dyb3VuZHMgdXNpbmcgc2hvcnRoYW5kXHJcbi8vIG5vdGF0aW9uLlxyXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vXHJcblxyXG5AbWl4aW4gYmFja2dyb3VuZCgkYmFja2dyb3VuZHMuLi4pIHtcclxuICAkd2Via2l0LWJhY2tncm91bmRzOiAoKTtcclxuICAkc3BlYy1iYWNrZ3JvdW5kczogKCk7XHJcblxyXG4gIEBlYWNoICRiYWNrZ3JvdW5kIGluICRiYWNrZ3JvdW5kcyB7XHJcbiAgICAkd2Via2l0LWJhY2tncm91bmQ6ICgpO1xyXG4gICAgJHNwZWMtYmFja2dyb3VuZDogKCk7XHJcbiAgICAkYmFja2dyb3VuZC10eXBlOiB0eXBlLW9mKCRiYWNrZ3JvdW5kKTtcclxuXHJcbiAgICBAaWYgJGJhY2tncm91bmQtdHlwZSA9PSBzdHJpbmcgb3IgJGJhY2tncm91bmQtdHlwZSA9PSBsaXN0IHtcclxuICAgICAgJGJhY2tncm91bmQtc3RyOiBpZigkYmFja2dyb3VuZC10eXBlID09IGxpc3QsIG50aCgkYmFja2dyb3VuZCwgMSksICRiYWNrZ3JvdW5kKTtcclxuXHJcbiAgICAgICR1cmwtc3RyOiAgICAgICBzdHItc2xpY2UoJGJhY2tncm91bmQtc3RyLCAxLCAzKTtcclxuICAgICAgJGdyYWRpZW50LXR5cGU6IHN0ci1zbGljZSgkYmFja2dyb3VuZC1zdHIsIDEsIDYpO1xyXG5cclxuICAgICAgQGlmICR1cmwtc3RyID09IFwidXJsXCIge1xyXG4gICAgICAgICR3ZWJraXQtYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XHJcbiAgICAgICAgJHNwZWMtYmFja2dyb3VuZDogICAkYmFja2dyb3VuZDtcclxuICAgICAgfVxyXG5cclxuICAgICAgQGVsc2UgaWYgJGdyYWRpZW50LXR5cGUgPT0gXCJsaW5lYXJcIiB7XHJcbiAgICAgICAgJGdyYWRpZW50czogX2xpbmVhci1ncmFkaWVudC1wYXJzZXIoXCIjeyRiYWNrZ3JvdW5kfVwiKTtcclxuICAgICAgICAkd2Via2l0LWJhY2tncm91bmQ6IG1hcC1nZXQoJGdyYWRpZW50cywgd2Via2l0LWltYWdlKTtcclxuICAgICAgICAkc3BlYy1iYWNrZ3JvdW5kOiAgIG1hcC1nZXQoJGdyYWRpZW50cywgc3BlYy1pbWFnZSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIEBlbHNlIGlmICRncmFkaWVudC10eXBlID09IFwicmFkaWFsXCIge1xyXG4gICAgICAgICRncmFkaWVudHM6IF9yYWRpYWwtZ3JhZGllbnQtcGFyc2VyKFwiI3skYmFja2dyb3VuZH1cIik7XHJcbiAgICAgICAgJHdlYmtpdC1iYWNrZ3JvdW5kOiBtYXAtZ2V0KCRncmFkaWVudHMsIHdlYmtpdC1pbWFnZSk7XHJcbiAgICAgICAgJHNwZWMtYmFja2dyb3VuZDogICBtYXAtZ2V0KCRncmFkaWVudHMsIHNwZWMtaW1hZ2UpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAZWxzZSB7XHJcbiAgICAgICAgJHdlYmtpdC1iYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcclxuICAgICAgICAkc3BlYy1iYWNrZ3JvdW5kOiAgICRiYWNrZ3JvdW5kO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGVsc2Uge1xyXG4gICAgICAkd2Via2l0LWJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xyXG4gICAgICAkc3BlYy1iYWNrZ3JvdW5kOiAgICRiYWNrZ3JvdW5kO1xyXG4gICAgfVxyXG5cclxuICAgICR3ZWJraXQtYmFja2dyb3VuZHM6IGFwcGVuZCgkd2Via2l0LWJhY2tncm91bmRzLCAkd2Via2l0LWJhY2tncm91bmQsIGNvbW1hKTtcclxuICAgICRzcGVjLWJhY2tncm91bmRzOiAgIGFwcGVuZCgkc3BlYy1iYWNrZ3JvdW5kcywgICAkc3BlYy1iYWNrZ3JvdW5kLCAgIGNvbW1hKTtcclxuICB9XHJcblxyXG4gIGJhY2tncm91bmQ6ICR3ZWJraXQtYmFja2dyb3VuZHM7XHJcbiAgYmFja2dyb3VuZDogJHNwZWMtYmFja2dyb3VuZHM7XHJcbn1cclxuIiwKCQkiLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovL1xyXG4vLyBCYWNrZ3JvdW5kLWltYWdlIHByb3BlcnR5IGZvciBhZGRpbmcgbXVsdGlwbGUgYmFja2dyb3VuZCBpbWFnZXMgd2l0aFxyXG4vLyBncmFkaWVudHMsIG9yIGZvciBzdHJpbmdpbmcgbXVsdGlwbGUgZ3JhZGllbnRzIHRvZ2V0aGVyLlxyXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vXHJcblxyXG5AbWl4aW4gYmFja2dyb3VuZC1pbWFnZSgkaW1hZ2VzLi4uKSB7XHJcbiAgJHdlYmtpdC1pbWFnZXM6ICgpO1xyXG4gICRzcGVjLWltYWdlczogKCk7XHJcblxyXG4gIEBlYWNoICRpbWFnZSBpbiAkaW1hZ2VzIHtcclxuICAgICR3ZWJraXQtaW1hZ2U6ICgpO1xyXG4gICAgJHNwZWMtaW1hZ2U6ICgpO1xyXG5cclxuICAgIEBpZiAodHlwZS1vZigkaW1hZ2UpID09IHN0cmluZykge1xyXG4gICAgICAkdXJsLXN0cjogICAgICAgc3RyLXNsaWNlKCRpbWFnZSwgMSwgMyk7XHJcbiAgICAgICRncmFkaWVudC10eXBlOiBzdHItc2xpY2UoJGltYWdlLCAxLCA2KTtcclxuXHJcbiAgICAgIEBpZiAkdXJsLXN0ciA9PSBcInVybFwiIHtcclxuICAgICAgICAkd2Via2l0LWltYWdlOiAkaW1hZ2U7XHJcbiAgICAgICAgJHNwZWMtaW1hZ2U6ICAgJGltYWdlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAZWxzZSBpZiAkZ3JhZGllbnQtdHlwZSA9PSBcImxpbmVhclwiIHtcclxuICAgICAgICAkZ3JhZGllbnRzOiBfbGluZWFyLWdyYWRpZW50LXBhcnNlcigkaW1hZ2UpO1xyXG4gICAgICAgICR3ZWJraXQtaW1hZ2U6ICBtYXAtZ2V0KCRncmFkaWVudHMsIHdlYmtpdC1pbWFnZSk7XHJcbiAgICAgICAgJHNwZWMtaW1hZ2U6ICAgIG1hcC1nZXQoJGdyYWRpZW50cywgc3BlYy1pbWFnZSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIEBlbHNlIGlmICRncmFkaWVudC10eXBlID09IFwicmFkaWFsXCIge1xyXG4gICAgICAgICRncmFkaWVudHM6IF9yYWRpYWwtZ3JhZGllbnQtcGFyc2VyKCRpbWFnZSk7XHJcbiAgICAgICAgJHdlYmtpdC1pbWFnZTogbWFwLWdldCgkZ3JhZGllbnRzLCB3ZWJraXQtaW1hZ2UpO1xyXG4gICAgICAgICRzcGVjLWltYWdlOiAgIG1hcC1nZXQoJGdyYWRpZW50cywgc3BlYy1pbWFnZSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAkd2Via2l0LWltYWdlczogYXBwZW5kKCR3ZWJraXQtaW1hZ2VzLCAkd2Via2l0LWltYWdlLCBjb21tYSk7XHJcbiAgICAkc3BlYy1pbWFnZXM6ICAgYXBwZW5kKCRzcGVjLWltYWdlcywgICAkc3BlYy1pbWFnZSwgICBjb21tYSk7XHJcbiAgfVxyXG5cclxuICBiYWNrZ3JvdW5kLWltYWdlOiAkd2Via2l0LWltYWdlcztcclxuICBiYWNrZ3JvdW5kLWltYWdlOiAkc3BlYy1pbWFnZXM7XHJcbn1cclxuIiwKCQkiQG1peGluIGJvcmRlci1pbWFnZSgkYm9yZGVycy4uLikge1xyXG4gICR3ZWJraXQtYm9yZGVyczogKCk7XHJcbiAgJHNwZWMtYm9yZGVyczogKCk7XHJcblxyXG4gIEBlYWNoICRib3JkZXIgaW4gJGJvcmRlcnMge1xyXG4gICAgJHdlYmtpdC1ib3JkZXI6ICgpO1xyXG4gICAgJHNwZWMtYm9yZGVyOiAoKTtcclxuICAgICRib3JkZXItdHlwZTogdHlwZS1vZigkYm9yZGVyKTtcclxuXHJcbiAgICBAaWYgJGJvcmRlci10eXBlID09IHN0cmluZyBvciBsaXN0IHtcclxuICAgICAgJGJvcmRlci1zdHI6IGlmKCRib3JkZXItdHlwZSA9PSBsaXN0LCBudGgoJGJvcmRlciwgMSksICRib3JkZXIpO1xyXG5cclxuICAgICAgJHVybC1zdHI6ICAgICAgIHN0ci1zbGljZSgkYm9yZGVyLXN0ciwgMSwgMyk7XHJcbiAgICAgICRncmFkaWVudC10eXBlOiBzdHItc2xpY2UoJGJvcmRlci1zdHIsIDEsIDYpO1xyXG5cclxuICAgICAgQGlmICR1cmwtc3RyID09IFwidXJsXCIge1xyXG4gICAgICAgICR3ZWJraXQtYm9yZGVyOiAkYm9yZGVyO1xyXG4gICAgICAgICRzcGVjLWJvcmRlcjogICAkYm9yZGVyO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAZWxzZSBpZiAkZ3JhZGllbnQtdHlwZSA9PSBcImxpbmVhclwiIHtcclxuICAgICAgICAkZ3JhZGllbnRzOiBfbGluZWFyLWdyYWRpZW50LXBhcnNlcihcIiN7JGJvcmRlcn1cIik7XHJcbiAgICAgICAgJHdlYmtpdC1ib3JkZXI6IG1hcC1nZXQoJGdyYWRpZW50cywgd2Via2l0LWltYWdlKTtcclxuICAgICAgICAkc3BlYy1ib3JkZXI6ICAgbWFwLWdldCgkZ3JhZGllbnRzLCBzcGVjLWltYWdlKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgQGVsc2UgaWYgJGdyYWRpZW50LXR5cGUgPT0gXCJyYWRpYWxcIiB7XHJcbiAgICAgICAgJGdyYWRpZW50czogX3JhZGlhbC1ncmFkaWVudC1wYXJzZXIoXCIjeyRib3JkZXJ9XCIpO1xyXG4gICAgICAgICR3ZWJraXQtYm9yZGVyOiBtYXAtZ2V0KCRncmFkaWVudHMsIHdlYmtpdC1pbWFnZSk7XHJcbiAgICAgICAgJHNwZWMtYm9yZGVyOiAgIG1hcC1nZXQoJGdyYWRpZW50cywgc3BlYy1pbWFnZSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIEBlbHNlIHtcclxuICAgICAgICAkd2Via2l0LWJvcmRlcjogJGJvcmRlcjtcclxuICAgICAgICAkc3BlYy1ib3JkZXI6ICAgJGJvcmRlcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBlbHNlIHtcclxuICAgICAgJHdlYmtpdC1ib3JkZXI6ICRib3JkZXI7XHJcbiAgICAgICRzcGVjLWJvcmRlcjogICAkYm9yZGVyO1xyXG4gICAgfVxyXG5cclxuICAgICR3ZWJraXQtYm9yZGVyczogYXBwZW5kKCR3ZWJraXQtYm9yZGVycywgJHdlYmtpdC1ib3JkZXIsIGNvbW1hKTtcclxuICAgICRzcGVjLWJvcmRlcnM6ICAgYXBwZW5kKCRzcGVjLWJvcmRlcnMsICAgJHNwZWMtYm9yZGVyLCAgIGNvbW1hKTtcclxuICB9XHJcblxyXG4gIC13ZWJraXQtYm9yZGVyLWltYWdlOiAkd2Via2l0LWJvcmRlcnM7XHJcbiAgICAgICAgICBib3JkZXItaW1hZ2U6ICRzcGVjLWJvcmRlcnM7XHJcbiAgICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG59XHJcblxyXG4vL0V4YW1wbGVzOlxyXG4vLyBAaW5jbHVkZSBib3JkZXItaW1hZ2UodXJsKFwiaW1hZ2UucG5nXCIpKTtcclxuLy8gQGluY2x1ZGUgYm9yZGVyLWltYWdlKHVybChcImltYWdlLnBuZ1wiKSAyMCBzdHJldGNoKTtcclxuLy8gQGluY2x1ZGUgYm9yZGVyLWltYWdlKGxpbmVhci1ncmFkaWVudCg0NWRlZywgb3JhbmdlLCB5ZWxsb3cpKTtcclxuLy8gQGluY2x1ZGUgYm9yZGVyLWltYWdlKGxpbmVhci1ncmFkaWVudCg0NWRlZywgb3JhbmdlLCB5ZWxsb3cpIHN0cmV0Y2gpO1xyXG4vLyBAaW5jbHVkZSBib3JkZXItaW1hZ2UobGluZWFyLWdyYWRpZW50KDQ1ZGVnLCBvcmFuZ2UsIHllbGxvdykgMjAgMzAgNDAgNTAgc3RyZXRjaCByb3VuZCk7XHJcbi8vIEBpbmNsdWRlIGJvcmRlci1pbWFnZShyYWRpYWwtZ3JhZGllbnQodG9wLCBjb3Zlciwgb3JhbmdlLCB5ZWxsb3csIG9yYW5nZSkpO1xyXG4iLAoJCSJAbWl4aW4gY2FsYygkcHJvcGVydHksICR2YWx1ZSkge1xyXG4gICN7JHByb3BlcnR5fTogLXdlYmtpdC1jYWxjKCN7JHZhbHVlfSk7XHJcbiAgI3skcHJvcGVydHl9OiBjYWxjKCN7JHZhbHVlfSk7XHJcbn1cclxuIiwKCQkiQG1peGluIGNvbHVtbnMoJGFyZzogYXV0bykge1xyXG4gIC8vIDxjb2x1bW4tY291bnQ+IHx8IDxjb2x1bW4td2lkdGg+XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoY29sdW1ucywgJGFyZywgd2Via2l0IG1veiBzcGVjKTtcclxufVxyXG5cclxuQG1peGluIGNvbHVtbi1jb3VudCgkaW50OiBhdXRvKSB7XHJcbiAgLy8gYXV0byB8fCBpbnRlZ2VyXHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoY29sdW1uLWNvdW50LCAkaW50LCB3ZWJraXQgbW96IHNwZWMpO1xyXG59XHJcblxyXG5AbWl4aW4gY29sdW1uLWdhcCgkbGVuZ3RoOiBub3JtYWwpIHtcclxuICAvLyBub3JtYWwgfHwgbGVuZ3RoXHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoY29sdW1uLWdhcCwgJGxlbmd0aCwgd2Via2l0IG1veiBzcGVjKTtcclxufVxyXG5cclxuQG1peGluIGNvbHVtbi1maWxsKCRhcmc6IGF1dG8pIHtcclxuICAvLyBhdXRvIHx8IGxlbmd0aFxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGNvbHVtbi1maWxsLCAkYXJnLCB3ZWJraXQgbW96IHNwZWMpO1xyXG59XHJcblxyXG5AbWl4aW4gY29sdW1uLXJ1bGUoJGFyZykge1xyXG4gIC8vIDxib3JkZXItd2lkdGg+IHx8IDxib3JkZXItc3R5bGU+IHx8IDxjb2xvcj5cclxuICBAaW5jbHVkZSBwcmVmaXhlcihjb2x1bW4tcnVsZSwgJGFyZywgd2Via2l0IG1veiBzcGVjKTtcclxufVxyXG5cclxuQG1peGluIGNvbHVtbi1ydWxlLWNvbG9yKCRjb2xvcikge1xyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGNvbHVtbi1ydWxlLWNvbG9yLCAkY29sb3IsIHdlYmtpdCBtb3ogc3BlYyk7XHJcbn1cclxuXHJcbkBtaXhpbiBjb2x1bW4tcnVsZS1zdHlsZSgkc3R5bGU6IG5vbmUpIHtcclxuICAvLyBub25lIHwgaGlkZGVuIHwgZGFzaGVkIHwgZG90dGVkIHwgZG91YmxlIHwgZ3Jvb3ZlIHwgaW5zZXQgfCBpbnNldCB8IG91dHNldCB8IHJpZGdlIHwgc29saWRcclxuICBAaW5jbHVkZSBwcmVmaXhlcihjb2x1bW4tcnVsZS1zdHlsZSwgJHN0eWxlLCB3ZWJraXQgbW96IHNwZWMpO1xyXG59XHJcblxyXG5AbWl4aW4gY29sdW1uLXJ1bGUtd2lkdGggKCR3aWR0aDogbm9uZSkge1xyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGNvbHVtbi1ydWxlLXdpZHRoLCAkd2lkdGgsIHdlYmtpdCBtb3ogc3BlYyk7XHJcbn1cclxuXHJcbkBtaXhpbiBjb2x1bW4tc3BhbigkYXJnOiBub25lKSB7XHJcbiAgLy8gbm9uZSB8fCBhbGxcclxuICBAaW5jbHVkZSBwcmVmaXhlcihjb2x1bW4tc3BhbiwgJGFyZywgd2Via2l0IG1veiBzcGVjKTtcclxufVxyXG5cclxuQG1peGluIGNvbHVtbi13aWR0aCgkbGVuZ3RoOiBhdXRvKSB7XHJcbiAgLy8gYXV0byB8fCBsZW5ndGhcclxuICBAaW5jbHVkZSBwcmVmaXhlcihjb2x1bW4td2lkdGgsICRsZW5ndGgsIHdlYmtpdCBtb3ogc3BlYyk7XHJcbn1cclxuIiwKCQkiQG1peGluIGZpbHRlcigkZnVuY3Rpb246IG5vbmUpIHtcclxuICAvLyA8ZmlsdGVyLWZ1bmN0aW9uPiBbPGZpbHRlci1mdW5jdGlvbl0qIHwgbm9uZVxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGZpbHRlciwgJGZ1bmN0aW9uLCB3ZWJraXQgc3BlYyk7XHJcbn1cclxuIiwKCQkiLy8gQ1NTMyBGbGV4aWJsZSBCb3ggTW9kZWwgYW5kIHByb3BlcnR5IGRlZmF1bHRzXHJcblxyXG4vLyBDdXN0b20gc2hvcnRoYW5kIG5vdGF0aW9uIGZvciBmbGV4Ym94XHJcbkBtaXhpbiBib3goJG9yaWVudDogaW5saW5lLWF4aXMsICRwYWNrOiBzdGFydCwgJGFsaWduOiBzdHJldGNoKSB7XHJcbiAgQGluY2x1ZGUgZGlzcGxheS1ib3g7XHJcbiAgQGluY2x1ZGUgYm94LW9yaWVudCgkb3JpZW50KTtcclxuICBAaW5jbHVkZSBib3gtcGFjaygkcGFjayk7XHJcbiAgQGluY2x1ZGUgYm94LWFsaWduKCRhbGlnbik7XHJcbn1cclxuXHJcbkBtaXhpbiBkaXNwbGF5LWJveCB7XHJcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XHJcbiAgZGlzcGxheTogLW1vei1ib3g7XHJcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7IC8vIElFIDEwXHJcbiAgZGlzcGxheTogYm94O1xyXG59XHJcblxyXG5AbWl4aW4gYm94LW9yaWVudCgkb3JpZW50OiBpbmxpbmUtYXhpcykge1xyXG4vLyBob3Jpem9udGFsfHZlcnRpY2FsfGlubGluZS1heGlzfGJsb2NrLWF4aXN8aW5oZXJpdFxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1vcmllbnQsICRvcmllbnQsIHdlYmtpdCBtb3ogc3BlYyk7XHJcbn1cclxuXHJcbkBtaXhpbiBib3gtcGFjaygkcGFjazogc3RhcnQpIHtcclxuLy8gc3RhcnR8ZW5kfGNlbnRlcnxqdXN0aWZ5XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LXBhY2ssICRwYWNrLCB3ZWJraXQgbW96IHNwZWMpO1xyXG4gIC1tcy1mbGV4LXBhY2s6ICRwYWNrOyAvLyBJRSAxMFxyXG59XHJcblxyXG5AbWl4aW4gYm94LWFsaWduKCRhbGlnbjogc3RyZXRjaCkge1xyXG4vLyBzdGFydHxlbmR8Y2VudGVyfGJhc2VsaW5lfHN0cmV0Y2hcclxuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtYWxpZ24sICRhbGlnbiwgd2Via2l0IG1veiBzcGVjKTtcclxuICAtbXMtZmxleC1hbGlnbjogJGFsaWduOyAvLyBJRSAxMFxyXG59XHJcblxyXG5AbWl4aW4gYm94LWRpcmVjdGlvbigkZGlyZWN0aW9uOiBub3JtYWwpIHtcclxuLy8gbm9ybWFsfHJldmVyc2V8aW5oZXJpdFxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1kaXJlY3Rpb24sICRkaXJlY3Rpb24sIHdlYmtpdCBtb3ogc3BlYyk7XHJcbiAgLW1zLWZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uOyAvLyBJRSAxMFxyXG59XHJcblxyXG5AbWl4aW4gYm94LWxpbmVzKCRsaW5lczogc2luZ2xlKSB7XHJcbi8vIHNpbmdsZXxtdWx0aXBsZVxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1saW5lcywgJGxpbmVzLCB3ZWJraXQgbW96IHNwZWMpO1xyXG59XHJcblxyXG5AbWl4aW4gYm94LW9yZGluYWwtZ3JvdXAoJGludDogMSkge1xyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1vcmRpbmFsLWdyb3VwLCAkaW50LCB3ZWJraXQgbW96IHNwZWMpO1xyXG4gIC1tcy1mbGV4LW9yZGVyOiAkaW50OyAvLyBJRSAxMFxyXG59XHJcblxyXG5AbWl4aW4gYm94LWZsZXgoJHZhbHVlOiAwKSB7XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LWZsZXgsICR2YWx1ZSwgd2Via2l0IG1veiBzcGVjKTtcclxuICAtbXMtZmxleDogJHZhbHVlOyAvLyBJRSAxMFxyXG59XHJcblxyXG5AbWl4aW4gYm94LWZsZXgtZ3JvdXAoJGludDogMSkge1xyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1mbGV4LWdyb3VwLCAkaW50LCB3ZWJraXQgbW96IHNwZWMpO1xyXG59XHJcblxyXG4vLyBDU1MzIEZsZXhpYmxlIEJveCBNb2RlbCBhbmQgcHJvcGVydHkgZGVmYXVsdHNcclxuLy8gVW5pZmllZCBhdHRyaWJ1dGVzIGZvciAyMDA5LCAyMDExLCBhbmQgMjAxMiBmbGF2b3Vycy5cclxuXHJcbi8vIDIwMDkgLSBkaXNwbGF5IChib3ggfCBpbmxpbmUtYm94KVxyXG4vLyAyMDExIC0gZGlzcGxheSAoZmxleGJveCB8IGlubGluZS1mbGV4Ym94KVxyXG4vLyAyMDEyIC0gZGlzcGxheSAoZmxleCB8IGlubGluZS1mbGV4KVxyXG5AbWl4aW4gZGlzcGxheSgkdmFsdWUpIHtcclxuLy8gZmxleCB8IGlubGluZS1mbGV4XHJcbiAgQGlmICR2YWx1ZSA9PSBcImZsZXhcIiB7XHJcbiAgICAvLyAyMDA5XHJcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcclxuICAgIGRpc3BsYXk6IC1tb3otYm94O1xyXG4gICAgZGlzcGxheTogYm94O1xyXG5cclxuICAgIC8vIDIwMTJcclxuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcclxuICAgIGRpc3BsYXk6IC1tb3otZmxleDtcclxuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94OyAvLyAyMDExIChJRSAxMClcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gXCJpbmxpbmUtZmxleFwiIHtcclxuICAgIGRpc3BsYXk6IC13ZWJraXQtaW5saW5lLWJveDtcclxuICAgIGRpc3BsYXk6IC1tb3otaW5saW5lLWJveDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ib3g7XHJcblxyXG4gICAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtZmxleDtcclxuICAgIGRpc3BsYXk6IC1tb3otaW5saW5lLWZsZXg7XHJcbiAgICBkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3g7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICB9IEBlbHNlIHtcclxuICAgIGRpc3BsYXk6ICR2YWx1ZTtcclxuICB9XHJcbn1cclxuXHJcbi8vIDIwMDkgLSBib3gtZmxleCAoaW50ZWdlcilcclxuLy8gMjAxMSAtIGZsZXggKGRlY2ltYWwgfCB3aWR0aCBkZWNpbWFsKVxyXG4vLyAyMDEyIC0gZmxleCAoaW50ZWdlciBpbnRlZ2VyIHdpZHRoKVxyXG5AbWl4aW4gZmxleCgkdmFsdWUpIHtcclxuXHJcbiAgLy8gR3JhYiBmbGV4LWdyb3cgZm9yIG9sZGVyIGJyb3dzZXJzLlxyXG4gICRmbGV4LWdyb3c6IG50aCgkdmFsdWUsIDEpO1xyXG5cclxuICAvLyAyMDA5XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LWZsZXgsICRmbGV4LWdyb3csIHdlYmtpdCBtb3ogc3BlYyk7XHJcblxyXG4gIC8vIDIwMTEgKElFIDEwKSwgMjAxMlxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGZsZXgsICR2YWx1ZSwgd2Via2l0IG1veiBtcyBzcGVjKTtcclxufVxyXG5cclxuLy8gMjAwOSAtIGJveC1vcmllbnQgKCBob3Jpem9udGFsIHwgdmVydGljYWwgfCBpbmxpbmUtYXhpcyB8IGJsb2NrLWF4aXMpXHJcbi8vICAgICAgLSBib3gtZGlyZWN0aW9uIChub3JtYWwgfCByZXZlcnNlKVxyXG4vLyAyMDExIC0gZmxleC1kaXJlY3Rpb24gKHJvdyB8IHJvdy1yZXZlcnNlIHwgY29sdW1uIHwgY29sdW1uLXJldmVyc2UpXHJcbi8vIDIwMTIgLSBmbGV4LWRpcmVjdGlvbiAocm93IHwgcm93LXJldmVyc2UgfCBjb2x1bW4gfCBjb2x1bW4tcmV2ZXJzZSlcclxuQG1peGluIGZsZXgtZGlyZWN0aW9uKCR2YWx1ZTogcm93KSB7XHJcblxyXG4gIC8vIEFsdCB2YWx1ZXMuXHJcbiAgJHZhbHVlLTIwMDk6ICR2YWx1ZTtcclxuICAkdmFsdWUtMjAxMTogJHZhbHVlO1xyXG4gICRkaXJlY3Rpb246IG5vcm1hbDtcclxuXHJcbiAgQGlmICR2YWx1ZSA9PSByb3cge1xyXG4gICAgJHZhbHVlLTIwMDk6IGhvcml6b250YWw7XHJcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gXCJyb3ctcmV2ZXJzZVwiIHtcclxuICAgICR2YWx1ZS0yMDA5OiBob3Jpem9udGFsO1xyXG4gICAgJGRpcmVjdGlvbjogcmV2ZXJzZTtcclxuICB9IEBlbHNlIGlmICR2YWx1ZSA9PSBjb2x1bW4ge1xyXG4gICAgJHZhbHVlLTIwMDk6IHZlcnRpY2FsO1xyXG4gIH0gQGVsc2UgaWYgJHZhbHVlID09IFwiY29sdW1uLXJldmVyc2VcIiB7XHJcbiAgICAkdmFsdWUtMjAwOTogdmVydGljYWw7XHJcbiAgICAkZGlyZWN0aW9uOiByZXZlcnNlO1xyXG4gIH1cclxuXHJcbiAgLy8gMjAwOVxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1vcmllbnQsICR2YWx1ZS0yMDA5LCB3ZWJraXQgbW96IHNwZWMpO1xyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1kaXJlY3Rpb24sICRkaXJlY3Rpb24sIHdlYmtpdCBtb3ogc3BlYyk7XHJcblxyXG4gIC8vIDIwMTJcclxuICBAaW5jbHVkZSBwcmVmaXhlcihmbGV4LWRpcmVjdGlvbiwgJHZhbHVlLCB3ZWJraXQgbW96IHNwZWMpO1xyXG5cclxuICAvLyAyMDExIChJRSAxMClcclxuICAtbXMtZmxleC1kaXJlY3Rpb246ICR2YWx1ZTtcclxufVxyXG5cclxuLy8gMjAwOSAtIGJveC1saW5lcyAoc2luZ2xlIHwgbXVsdGlwbGUpXHJcbi8vIDIwMTEgLSBmbGV4LXdyYXAgKG5vd3JhcCB8IHdyYXAgfCB3cmFwLXJldmVyc2UpXHJcbi8vIDIwMTIgLSBmbGV4LXdyYXAgKG5vd3JhcCB8IHdyYXAgfCB3cmFwLXJldmVyc2UpXHJcbkBtaXhpbiBmbGV4LXdyYXAoJHZhbHVlOiBub3dyYXApIHtcclxuICAvLyBBbHQgdmFsdWVzXHJcbiAgJGFsdC12YWx1ZTogJHZhbHVlO1xyXG4gIEBpZiAkdmFsdWUgPT0gbm93cmFwIHtcclxuICAgICRhbHQtdmFsdWU6IHNpbmdsZTtcclxuICB9IEBlbHNlIGlmICR2YWx1ZSA9PSB3cmFwIHtcclxuICAgICRhbHQtdmFsdWU6IG11bHRpcGxlO1xyXG4gIH0gQGVsc2UgaWYgJHZhbHVlID09IFwid3JhcC1yZXZlcnNlXCIge1xyXG4gICAgJGFsdC12YWx1ZTogbXVsdGlwbGU7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtbGluZXMsICRhbHQtdmFsdWUsIHdlYmtpdCBtb3ogc3BlYyk7XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoZmxleC13cmFwLCAkdmFsdWUsIHdlYmtpdCBtb3ogbXMgc3BlYyk7XHJcbn1cclxuXHJcbi8vIDIwMDkgLSBUT0RPOiBwYXJzZSB2YWx1ZXMgaW50byBmbGV4LWRpcmVjdGlvbi9mbGV4LXdyYXBcclxuLy8gMjAxMSAtIFRPRE86IHBhcnNlIHZhbHVlcyBpbnRvIGZsZXgtZGlyZWN0aW9uL2ZsZXgtd3JhcFxyXG4vLyAyMDEyIC0gZmxleC1mbG93IChmbGV4LWRpcmVjdGlvbiB8fCBmbGV4LXdyYXApXHJcbkBtaXhpbiBmbGV4LWZsb3coJHZhbHVlKSB7XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoZmxleC1mbG93LCAkdmFsdWUsIHdlYmtpdCBtb3ogc3BlYyk7XHJcbn1cclxuXHJcbi8vIDIwMDkgLSBib3gtb3JkaW5hbC1ncm91cCAoaW50ZWdlcilcclxuLy8gMjAxMSAtIGZsZXgtb3JkZXIgKGludGVnZXIpXHJcbi8vIDIwMTIgLSBvcmRlciAoaW50ZWdlcilcclxuQG1peGluIG9yZGVyKCRpbnQ6IDApIHtcclxuICAvLyAyMDA5XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoYm94LW9yZGluYWwtZ3JvdXAsICRpbnQsIHdlYmtpdCBtb3ogc3BlYyk7XHJcblxyXG4gIC8vIDIwMTJcclxuICBAaW5jbHVkZSBwcmVmaXhlcihvcmRlciwgJGludCwgd2Via2l0IG1veiBzcGVjKTtcclxuXHJcbiAgLy8gMjAxMSAoSUUgMTApXHJcbiAgLW1zLWZsZXgtb3JkZXI6ICRpbnQ7XHJcbn1cclxuXHJcbi8vIDIwMTIgLSBmbGV4LWdyb3cgKG51bWJlcilcclxuQG1peGluIGZsZXgtZ3JvdygkbnVtYmVyOiAwKSB7XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoZmxleC1ncm93LCAkbnVtYmVyLCB3ZWJraXQgbW96IHNwZWMpO1xyXG4gIC1tcy1mbGV4LXBvc2l0aXZlOiAkbnVtYmVyO1xyXG59XHJcblxyXG4vLyAyMDEyIC0gZmxleC1zaHJpbmsgKG51bWJlcilcclxuQG1peGluIGZsZXgtc2hyaW5rKCRudW1iZXI6IDEpIHtcclxuICBAaW5jbHVkZSBwcmVmaXhlcihmbGV4LXNocmluaywgJG51bWJlciwgd2Via2l0IG1veiBzcGVjKTtcclxuICAtbXMtZmxleC1uZWdhdGl2ZTogJG51bWJlcjtcclxufVxyXG5cclxuLy8gMjAxMiAtIGZsZXgtYmFzaXMgKG51bWJlcilcclxuQG1peGluIGZsZXgtYmFzaXMoJHdpZHRoOiBhdXRvKSB7XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIoZmxleC1iYXNpcywgJHdpZHRoLCB3ZWJraXQgbW96IHNwZWMpO1xyXG4gIC1tcy1mbGV4LXByZWZlcnJlZC1zaXplOiAkd2lkdGg7XHJcbn1cclxuXHJcbi8vIDIwMDkgLSBib3gtcGFjayAoc3RhcnQgfCBlbmQgfCBjZW50ZXIgfCBqdXN0aWZ5KVxyXG4vLyAyMDExIC0gZmxleC1wYWNrIChzdGFydCB8IGVuZCB8IGNlbnRlciB8IGp1c3RpZnkpXHJcbi8vIDIwMTIgLSBqdXN0aWZ5LWNvbnRlbnQgKGZsZXgtc3RhcnQgfCBmbGV4LWVuZCB8IGNlbnRlciB8IHNwYWNlLWJldHdlZW4gfCBzcGFjZS1hcm91bmQpXHJcbkBtaXhpbiBqdXN0aWZ5LWNvbnRlbnQoJHZhbHVlOiBmbGV4LXN0YXJ0KSB7XHJcblxyXG4gIC8vIEFsdCB2YWx1ZXMuXHJcbiAgJGFsdC12YWx1ZTogJHZhbHVlO1xyXG4gIEBpZiAkdmFsdWUgPT0gXCJmbGV4LXN0YXJ0XCIge1xyXG4gICAgJGFsdC12YWx1ZTogc3RhcnQ7XHJcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gXCJmbGV4LWVuZFwiIHtcclxuICAgICRhbHQtdmFsdWU6IGVuZDtcclxuICB9IEBlbHNlIGlmICR2YWx1ZSA9PSBcInNwYWNlLWJldHdlZW5cIiB7XHJcbiAgICAkYWx0LXZhbHVlOiBqdXN0aWZ5O1xyXG4gIH0gQGVsc2UgaWYgJHZhbHVlID09IFwic3BhY2UtYXJvdW5kXCIge1xyXG4gICAgJGFsdC12YWx1ZTogZGlzdHJpYnV0ZTtcclxuICB9XHJcblxyXG4gIC8vIDIwMDlcclxuICBAaW5jbHVkZSBwcmVmaXhlcihib3gtcGFjaywgJGFsdC12YWx1ZSwgd2Via2l0IG1veiBzcGVjKTtcclxuXHJcbiAgLy8gMjAxMlxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGp1c3RpZnktY29udGVudCwgJHZhbHVlLCB3ZWJraXQgbW96IG1zIG8gc3BlYyk7XHJcblxyXG4gIC8vIDIwMTEgKElFIDEwKVxyXG4gIC1tcy1mbGV4LXBhY2s6ICRhbHQtdmFsdWU7XHJcbn1cclxuXHJcbi8vIDIwMDkgLSBib3gtYWxpZ24gKHN0YXJ0IHwgZW5kIHwgY2VudGVyIHwgYmFzZWxpbmUgfCBzdHJldGNoKVxyXG4vLyAyMDExIC0gZmxleC1hbGlnbiAoc3RhcnQgfCBlbmQgfCBjZW50ZXIgfCBiYXNlbGluZSB8IHN0cmV0Y2gpXHJcbi8vIDIwMTIgLSBhbGlnbi1pdGVtcyAoZmxleC1zdGFydCB8IGZsZXgtZW5kIHwgY2VudGVyIHwgYmFzZWxpbmUgfCBzdHJldGNoKVxyXG5AbWl4aW4gYWxpZ24taXRlbXMoJHZhbHVlOiBzdHJldGNoKSB7XHJcblxyXG4gICRhbHQtdmFsdWU6ICR2YWx1ZTtcclxuXHJcbiAgQGlmICR2YWx1ZSA9PSBcImZsZXgtc3RhcnRcIiB7XHJcbiAgICAkYWx0LXZhbHVlOiBzdGFydDtcclxuICB9IEBlbHNlIGlmICR2YWx1ZSA9PSBcImZsZXgtZW5kXCIge1xyXG4gICAgJGFsdC12YWx1ZTogZW5kO1xyXG4gIH1cclxuXHJcbiAgLy8gMjAwOVxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1hbGlnbiwgJGFsdC12YWx1ZSwgd2Via2l0IG1veiBzcGVjKTtcclxuXHJcbiAgLy8gMjAxMlxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGFsaWduLWl0ZW1zLCAkdmFsdWUsIHdlYmtpdCBtb3ogbXMgbyBzcGVjKTtcclxuXHJcbiAgLy8gMjAxMSAoSUUgMTApXHJcbiAgLW1zLWZsZXgtYWxpZ246ICRhbHQtdmFsdWU7XHJcbn1cclxuXHJcbi8vIDIwMTEgLSBmbGV4LWl0ZW0tYWxpZ24gKGF1dG8gfCBzdGFydCB8IGVuZCB8IGNlbnRlciB8IGJhc2VsaW5lIHwgc3RyZXRjaClcclxuLy8gMjAxMiAtIGFsaWduLXNlbGYgKGF1dG8gfCBmbGV4LXN0YXJ0IHwgZmxleC1lbmQgfCBjZW50ZXIgfCBiYXNlbGluZSB8IHN0cmV0Y2gpXHJcbkBtaXhpbiBhbGlnbi1zZWxmKCR2YWx1ZTogYXV0bykge1xyXG5cclxuICAkdmFsdWUtMjAxMTogJHZhbHVlO1xyXG4gIEBpZiAkdmFsdWUgPT0gXCJmbGV4LXN0YXJ0XCIge1xyXG4gICAgJHZhbHVlLTIwMTE6IHN0YXJ0O1xyXG4gIH0gQGVsc2UgaWYgJHZhbHVlID09IFwiZmxleC1lbmRcIiB7XHJcbiAgICAkdmFsdWUtMjAxMTogZW5kO1xyXG4gIH1cclxuXHJcbiAgLy8gMjAxMlxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGFsaWduLXNlbGYsICR2YWx1ZSwgd2Via2l0IG1veiBzcGVjKTtcclxuXHJcbiAgLy8gMjAxMSAoSUUgMTApXHJcbiAgLW1zLWZsZXgtaXRlbS1hbGlnbjogJHZhbHVlLTIwMTE7XHJcbn1cclxuXHJcbi8vIDIwMTEgLSBmbGV4LWxpbmUtcGFjayAoc3RhcnQgfCBlbmQgfCBjZW50ZXIgfCBqdXN0aWZ5IHwgZGlzdHJpYnV0ZSB8IHN0cmV0Y2gpXHJcbi8vIDIwMTIgLSBhbGlnbi1jb250ZW50IChmbGV4LXN0YXJ0IHwgZmxleC1lbmQgfCBjZW50ZXIgfCBzcGFjZS1iZXR3ZWVuIHwgc3BhY2UtYXJvdW5kIHwgc3RyZXRjaClcclxuQG1peGluIGFsaWduLWNvbnRlbnQoJHZhbHVlOiBzdHJldGNoKSB7XHJcblxyXG4gICR2YWx1ZS0yMDExOiAkdmFsdWU7XHJcbiAgQGlmICR2YWx1ZSA9PSBcImZsZXgtc3RhcnRcIiB7XHJcbiAgICAkdmFsdWUtMjAxMTogc3RhcnQ7XHJcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gXCJmbGV4LWVuZFwiIHtcclxuICAgICR2YWx1ZS0yMDExOiBlbmQ7XHJcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gXCJzcGFjZS1iZXR3ZWVuXCIge1xyXG4gICAgJHZhbHVlLTIwMTE6IGp1c3RpZnk7XHJcbiAgfSBAZWxzZSBpZiAkdmFsdWUgPT0gXCJzcGFjZS1hcm91bmRcIiB7XHJcbiAgICAkdmFsdWUtMjAxMTogZGlzdHJpYnV0ZTtcclxuICB9XHJcblxyXG4gIC8vIDIwMTJcclxuICBAaW5jbHVkZSBwcmVmaXhlcihhbGlnbi1jb250ZW50LCAkdmFsdWUsIHdlYmtpdCBtb3ogc3BlYyk7XHJcblxyXG4gIC8vIDIwMTEgKElFIDEwKVxyXG4gIC1tcy1mbGV4LWxpbmUtcGFjazogJHZhbHVlLTIwMTE7XHJcbn1cclxuIiwKCQkiQG1peGluIGZvbnQtZmFjZShcclxuICAkZm9udC1mYW1pbHksXHJcbiAgJGZpbGUtcGF0aCxcclxuICAkd2VpZ2h0OiBub3JtYWwsXHJcbiAgJHN0eWxlOiBub3JtYWwsXHJcbiAgJGFzc2V0LXBpcGVsaW5lOiAkYXNzZXQtcGlwZWxpbmUsXHJcbiAgJGZpbGUtZm9ybWF0czogZW90IHdvZmYyIHdvZmYgdHRmIHN2Zykge1xyXG5cclxuICAkZm9udC11cmwtcHJlZml4OiBmb250LXVybC1wcmVmaXhlcigkYXNzZXQtcGlwZWxpbmUpO1xyXG5cclxuICBAZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHk7XHJcbiAgICBmb250LXN0eWxlOiAkc3R5bGU7XHJcbiAgICBmb250LXdlaWdodDogJHdlaWdodDtcclxuXHJcbiAgICBzcmM6IGZvbnQtc291cmNlLWRlY2xhcmF0aW9uKFxyXG4gICAgICAkZm9udC1mYW1pbHksXHJcbiAgICAgICRmaWxlLXBhdGgsXHJcbiAgICAgICRhc3NldC1waXBlbGluZSxcclxuICAgICAgJGZpbGUtZm9ybWF0cyxcclxuICAgICAgJGZvbnQtdXJsLXByZWZpeFxyXG4gICAgKTtcclxuICB9XHJcbn1cclxuIiwKCQkiQG1peGluIGZvbnQtZmVhdHVyZS1zZXR0aW5ncygkc2V0dGluZ3MuLi4pIHtcclxuICBAaWYgbGVuZ3RoKCRzZXR0aW5ncykgPT0gMCB7ICRzZXR0aW5nczogbm9uZTsgfVxyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGZvbnQtZmVhdHVyZS1zZXR0aW5ncywgJHNldHRpbmdzLCB3ZWJraXQgbW96IG1zIHNwZWMpO1xyXG59XHJcbiIsCgkJIi8vIEhpRFBJIG1peGluLiBEZWZhdWx0IHZhbHVlIHNldCB0byAxLjMgdG8gdGFyZ2V0IEdvb2dsZSBOZXh1cyA3IChodHRwOi8vYmphbmdvLmNvbS9hcnRpY2xlcy9taW4tZGV2aWNlLXBpeGVsLXJhdGlvLylcclxuQG1peGluIGhpZHBpKCRyYXRpbzogMS4zKSB7XHJcbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAkcmF0aW8pLFxyXG4gIG9ubHkgc2NyZWVuIGFuZCAobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAkcmF0aW8pLFxyXG4gIG9ubHkgc2NyZWVuIGFuZCAoLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogI3skcmF0aW99LzEpLFxyXG4gIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IHJvdW5kKCRyYXRpbyAqIDk2ZHBpKSksXHJcbiAgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogJHJhdGlvICogMWRwcHgpIHtcclxuICAgIEBjb250ZW50O1xyXG4gIH1cclxufVxyXG4iLAoJCSJAbWl4aW4gaHlwaGVucygkaHlwaGVuYXRpb246IG5vbmUpIHtcclxuICAvLyBub25lIHwgbWFudWFsIHwgYXV0b1xyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGh5cGhlbnMsICRoeXBoZW5hdGlvbiwgd2Via2l0IG1veiBtcyBzcGVjKTtcclxufVxyXG4iLAoJCSJAbWl4aW4gaW1hZ2UtcmVuZGVyaW5nICgkbW9kZTphdXRvKSB7XHJcblxyXG4gIEBpZiAoJG1vZGUgPT0gY3Jpc3AtZWRnZXMpIHtcclxuICAgIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IG5lYXJlc3QtbmVpZ2hib3I7IC8vIElFOCtcclxuICAgIGltYWdlLXJlbmRlcmluZzogLW1vei1jcmlzcC1lZGdlcztcclxuICAgIGltYWdlLXJlbmRlcmluZzogLW8tY3Jpc3AtZWRnZXM7XHJcbiAgICBpbWFnZS1yZW5kZXJpbmc6IC13ZWJraXQtb3B0aW1pemUtY29udHJhc3Q7XHJcbiAgICBpbWFnZS1yZW5kZXJpbmc6IGNyaXNwLWVkZ2VzO1xyXG4gIH1cclxuXHJcbiAgQGVsc2Uge1xyXG4gICAgaW1hZ2UtcmVuZGVyaW5nOiAkbW9kZTtcclxuICB9XHJcbn1cclxuIiwKCQkiLy8gQWRkcyBrZXlmcmFtZXMgYmxvY2tzIGZvciBzdXBwb3J0ZWQgcHJlZml4ZXMsIHJlbW92aW5nIHJlZHVuZGFudCBwcmVmaXhlcyBpbiB0aGUgYmxvY2sncyBjb250ZW50XHJcbkBtaXhpbiBrZXlmcmFtZXMoJG5hbWUpIHtcclxuICAkb3JpZ2luYWwtcHJlZml4LWZvci13ZWJraXQ6ICAgICRwcmVmaXgtZm9yLXdlYmtpdDtcclxuICAkb3JpZ2luYWwtcHJlZml4LWZvci1tb3ppbGxhOiAgICRwcmVmaXgtZm9yLW1vemlsbGE7XHJcbiAgJG9yaWdpbmFsLXByZWZpeC1mb3ItbWljcm9zb2Z0OiAkcHJlZml4LWZvci1taWNyb3NvZnQ7XHJcbiAgJG9yaWdpbmFsLXByZWZpeC1mb3Itb3BlcmE6ICAgICAkcHJlZml4LWZvci1vcGVyYTtcclxuICAkb3JpZ2luYWwtcHJlZml4LWZvci1zcGVjOiAgICAgICRwcmVmaXgtZm9yLXNwZWM7XHJcblxyXG4gIEBpZiAkb3JpZ2luYWwtcHJlZml4LWZvci13ZWJraXQge1xyXG4gICAgQGluY2x1ZGUgZGlzYWJsZS1wcmVmaXgtZm9yLWFsbCgpO1xyXG4gICAgJHByZWZpeC1mb3Itd2Via2l0OiB0cnVlICFnbG9iYWw7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgI3skbmFtZX0ge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBpZiAkb3JpZ2luYWwtcHJlZml4LWZvci1tb3ppbGxhIHtcclxuICAgIEBpbmNsdWRlIGRpc2FibGUtcHJlZml4LWZvci1hbGwoKTtcclxuICAgICRwcmVmaXgtZm9yLW1vemlsbGE6IHRydWUgIWdsb2JhbDtcclxuICAgIEAtbW96LWtleWZyYW1lcyAjeyRuYW1lfSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJHByZWZpeC1mb3Itd2Via2l0OiAgICAkb3JpZ2luYWwtcHJlZml4LWZvci13ZWJraXQgICAgIWdsb2JhbDtcclxuICAkcHJlZml4LWZvci1tb3ppbGxhOiAgICRvcmlnaW5hbC1wcmVmaXgtZm9yLW1vemlsbGEgICAhZ2xvYmFsO1xyXG4gICRwcmVmaXgtZm9yLW1pY3Jvc29mdDogJG9yaWdpbmFsLXByZWZpeC1mb3ItbWljcm9zb2Z0ICFnbG9iYWw7XHJcbiAgJHByZWZpeC1mb3Itb3BlcmE6ICAgICAkb3JpZ2luYWwtcHJlZml4LWZvci1vcGVyYSAgICAgIWdsb2JhbDtcclxuICAkcHJlZml4LWZvci1zcGVjOiAgICAgICRvcmlnaW5hbC1wcmVmaXgtZm9yLXNwZWMgICAgICAhZ2xvYmFsO1xyXG5cclxuICBAaWYgJG9yaWdpbmFsLXByZWZpeC1mb3Itc3BlYyB7XHJcbiAgICBAa2V5ZnJhbWVzICN7JG5hbWV9IHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsCgkJIkBtaXhpbiBsaW5lYXItZ3JhZGllbnQoJHBvcywgJGcxLCAkZzI6IG51bGwsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgJGczOiBudWxsLCAkZzQ6IG51bGwsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgJGc1OiBudWxsLCAkZzY6IG51bGwsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgJGc3OiBudWxsLCAkZzg6IG51bGwsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgJGc5OiBudWxsLCAkZzEwOiBudWxsLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICRmYWxsYmFjazogbnVsbCkge1xyXG4gIC8vIERldGVjdCB3aGF0IHR5cGUgb2YgdmFsdWUgZXhpc3RzIGluICRwb3NcclxuICAkcG9zLXR5cGU6IHR5cGUtb2YobnRoKCRwb3MsIDEpKTtcclxuICAkcG9zLXNwZWM6IG51bGw7XHJcbiAgJHBvcy1kZWdyZWU6IG51bGw7XHJcblxyXG4gIC8vIElmICRwb3MgaXMgbWlzc2luZyBmcm9tIG1peGluLCByZWFzc2lnbiB2YXJzIGFuZCBhZGQgZGVmYXVsdCBwb3NpdGlvblxyXG4gIEBpZiAoJHBvcy10eXBlID09IGNvbG9yKSBvciAobnRoKCRwb3MsIDEpID09IFwidHJhbnNwYXJlbnRcIikgIHtcclxuICAgICRnMTA6ICRnOTsgJGc5OiAkZzg7ICRnODogJGc3OyAkZzc6ICRnNjsgJGc2OiAkZzU7XHJcbiAgICAkZzU6ICRnNDsgJGc0OiAkZzM7ICRnMzogJGcyOyAkZzI6ICRnMTsgJGcxOiAkcG9zO1xyXG4gICAgJHBvczogbnVsbDtcclxuICB9XHJcblxyXG4gIEBpZiAkcG9zIHtcclxuICAgICRwb3NpdGlvbnM6IF9saW5lYXItcG9zaXRpb25zLXBhcnNlcigkcG9zKTtcclxuICAgICRwb3MtZGVncmVlOiBudGgoJHBvc2l0aW9ucywgMSk7XHJcbiAgICAkcG9zLXNwZWM6ICAgbnRoKCRwb3NpdGlvbnMsIDIpO1xyXG4gIH1cclxuXHJcbiAgJGZ1bGw6ICRnMSwgJGcyLCAkZzMsICRnNCwgJGc1LCAkZzYsICRnNywgJGc4LCAkZzksICRnMTA7XHJcblxyXG4gIC8vIFNldCAkZzEgYXMgdGhlIGRlZmF1bHQgZmFsbGJhY2sgY29sb3JcclxuICAkZmFsbGJhY2stY29sb3I6IG50aCgkZzEsIDEpO1xyXG5cclxuICAvLyBJZiAkZmFsbGJhY2sgaXMgYSBjb2xvciB1c2UgdGhhdCBjb2xvciBhcyB0aGUgZmFsbGJhY2sgY29sb3JcclxuICBAaWYgKHR5cGUtb2YoJGZhbGxiYWNrKSA9PSBjb2xvcikgb3IgKCRmYWxsYmFjayA9PSBcInRyYW5zcGFyZW50XCIpIHtcclxuICAgICRmYWxsYmFjay1jb2xvcjogJGZhbGxiYWNrO1xyXG4gIH1cclxuXHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZhbGxiYWNrLWNvbG9yO1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCRwb3MtZGVncmVlICRmdWxsKTsgLy8gU2FmYXJpIDUuMSssIENocm9tZVxyXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVucXVvdGUoXCJsaW5lYXItZ3JhZGllbnQoI3skcG9zLXNwZWN9I3skZnVsbH0pXCIpO1xyXG59XHJcbiIsCgkJIkBtaXhpbiBwZXJzcGVjdGl2ZSgkZGVwdGg6IG5vbmUpIHtcclxuICAvLyBub25lIHwgPGxlbmd0aD5cclxuICBAaW5jbHVkZSBwcmVmaXhlcihwZXJzcGVjdGl2ZSwgJGRlcHRoLCB3ZWJraXQgbW96IHNwZWMpO1xyXG59XHJcblxyXG5AbWl4aW4gcGVyc3BlY3RpdmUtb3JpZ2luKCR2YWx1ZTogNTAlIDUwJSkge1xyXG4gIEBpbmNsdWRlIHByZWZpeGVyKHBlcnNwZWN0aXZlLW9yaWdpbiwgJHZhbHVlLCB3ZWJraXQgbW96IHNwZWMpO1xyXG59XHJcbiIsCgkJIkBtaXhpbiBwbGFjZWhvbGRlciB7XHJcbiAgJHBsYWNlaG9sZGVyczogXCI6LXdlYmtpdC1pbnB1dFwiIFwiOi1tb3pcIiBcIi1tb3pcIiBcIi1tcy1pbnB1dFwiO1xyXG4gIEBlYWNoICRwbGFjZWhvbGRlciBpbiAkcGxhY2Vob2xkZXJzIHtcclxuICAgICY6I3skcGxhY2Vob2xkZXJ9LXBsYWNlaG9sZGVyIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsCgkJIi8vIFJlcXVpcmVzIFNhc3MgMy4xK1xyXG5AbWl4aW4gcmFkaWFsLWdyYWRpZW50KCRnMSwgJGcyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICRnMzogbnVsbCwgJGc0OiBudWxsLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICRnNTogbnVsbCwgJGc2OiBudWxsLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICRnNzogbnVsbCwgJGc4OiBudWxsLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICRnOTogbnVsbCwgJGcxMDogbnVsbCxcclxuICAgICAgICAgICAgICAgICAgICAgICAkcG9zOiBudWxsLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICRzaGFwZS1zaXplOiBudWxsLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICRmYWxsYmFjazogbnVsbCkge1xyXG5cclxuICAkZGF0YTogX3JhZGlhbC1hcmctcGFyc2VyKCRnMSwgJGcyLCAkcG9zLCAkc2hhcGUtc2l6ZSk7XHJcbiAgJGcxOiAgbnRoKCRkYXRhLCAxKTtcclxuICAkZzI6ICBudGgoJGRhdGEsIDIpO1xyXG4gICRwb3M6IG50aCgkZGF0YSwgMyk7XHJcbiAgJHNoYXBlLXNpemU6IG50aCgkZGF0YSwgNCk7XHJcblxyXG4gICRmdWxsOiAkZzEsICRnMiwgJGczLCAkZzQsICRnNSwgJGc2LCAkZzcsICRnOCwgJGc5LCAkZzEwO1xyXG5cclxuICAvLyBTdHJpcCBkZXByZWNhdGVkIGNvdmVyL2NvbnRhaW4gZm9yIHNwZWNcclxuICAkc2hhcGUtc2l6ZS1zcGVjOiBfc2hhcGUtc2l6ZS1zdHJpcHBlcigkc2hhcGUtc2l6ZSk7XHJcblxyXG4gIC8vIFNldCAkZzEgYXMgdGhlIGRlZmF1bHQgZmFsbGJhY2sgY29sb3JcclxuICAkZmlyc3QtY29sb3I6IG50aCgkZnVsbCwgMSk7XHJcbiAgJGZhbGxiYWNrLWNvbG9yOiBudGgoJGZpcnN0LWNvbG9yLCAxKTtcclxuXHJcbiAgQGlmICh0eXBlLW9mKCRmYWxsYmFjaykgPT0gY29sb3IpIG9yICgkZmFsbGJhY2sgPT0gXCJ0cmFuc3BhcmVudFwiKSB7XHJcbiAgICAkZmFsbGJhY2stY29sb3I6ICRmYWxsYmFjaztcclxuICB9XHJcblxyXG4gIC8vIEFkZCBDb21tYXMgYW5kIHNwYWNlc1xyXG4gICRzaGFwZS1zaXplOiBpZigkc2hhcGUtc2l6ZSwgXCIjeyRzaGFwZS1zaXplfSwgXCIsIG51bGwpO1xyXG4gICRwb3M6ICAgICAgICBpZigkcG9zLCBcIiN7JHBvc30sIFwiLCBudWxsKTtcclxuICAkcG9zLXNwZWM6ICAgaWYoJHBvcywgXCJhdCAjeyRwb3N9XCIsIG51bGwpO1xyXG4gICRzaGFwZS1zaXplLXNwZWM6IGlmKCgkc2hhcGUtc2l6ZS1zcGVjICE9IFwiIFwiKSBhbmQgKCRwb3MgPT0gbnVsbCksIFwiI3skc2hhcGUtc2l6ZS1zcGVjfSwgXCIsIFwiI3skc2hhcGUtc2l6ZS1zcGVjfSBcIik7XHJcblxyXG4gIGJhY2tncm91bmQtY29sb3I6ICAkZmFsbGJhY2stY29sb3I7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQoI3skcG9zfSN7JHNoYXBlLXNpemV9I3skZnVsbH0pO1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudCgjeyRzaGFwZS1zaXplLXNwZWN9I3skcG9zLXNwZWN9I3skZnVsbH0pO1xyXG59XHJcbiIsCgkJIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vLyBPdXRwdXRzIHRoZSBzcGVjIGFuZCBwcmVmaXhlZCB2ZXJzaW9ucyBvZiB0aGUgYDo6c2VsZWN0aW9uYCBwc2V1ZG8tZWxlbWVudC5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge0Jvb2x9ICRjdXJyZW50LXNlbGVjdG9yIFtmYWxzZV1cclxuLy8vICAgSWYgc2V0IHRvIGB0cnVlYCwgaXQgdGFrZXMgdGhlIGN1cnJlbnQgZWxlbWVudCBpbnRvIGNvbnNpZGVyYXRpb24uXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBAaW5jbHVkZSBzZWxlY3Rpb24odHJ1ZSkge1xyXG4vLy8gICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYmI1MjtcclxuLy8vICAgICB9XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XHJcbi8vLyAgIC5lbGVtZW50OjotbW96LXNlbGVjdGlvbiB7XHJcbi8vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYmI1MjtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vICAgLmVsZW1lbnQ6OnNlbGVjdGlvbiB7XHJcbi8vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYmI1MjtcclxuLy8vICAgfVxyXG5cclxuQG1peGluIHNlbGVjdGlvbigkY3VycmVudC1zZWxlY3RvcjogZmFsc2UpIHtcclxuICBAaWYgJGN1cnJlbnQtc2VsZWN0b3Ige1xyXG4gICAgJjo6LW1vei1zZWxlY3Rpb24ge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuXHJcbiAgICAmOjpzZWxlY3Rpb24ge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9IEBlbHNlIHtcclxuICAgIDo6LW1vei1zZWxlY3Rpb24ge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuXHJcbiAgICA6OnNlbGVjdGlvbiB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLAoJCSJAbWl4aW4gdGV4dC1kZWNvcmF0aW9uKCR2YWx1ZSkge1xyXG4vLyA8dGV4dC1kZWNvcmF0aW9uLWxpbmU+IHx8IDx0ZXh0LWRlY29yYXRpb24tc3R5bGU+IHx8IDx0ZXh0LWRlY29yYXRpb24tY29sb3I+XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIodGV4dC1kZWNvcmF0aW9uLCAkdmFsdWUsIG1veik7XHJcbn1cclxuXHJcbkBtaXhpbiB0ZXh0LWRlY29yYXRpb24tbGluZSgkbGluZTogbm9uZSkge1xyXG4vLyBub25lIHx8IHVuZGVybGluZSB8fCBvdmVybGluZSB8fCBsaW5lLXRocm91Z2hcclxuICBAaW5jbHVkZSBwcmVmaXhlcih0ZXh0LWRlY29yYXRpb24tbGluZSwgJGxpbmUsIG1veik7XHJcbn1cclxuXHJcbkBtaXhpbiB0ZXh0LWRlY29yYXRpb24tc3R5bGUoJHN0eWxlOiBzb2xpZCkge1xyXG4vLyBzb2xpZCB8fCBkb3VibGUgfHwgZG90dGVkIHx8IGRhc2hlZCB8fCB3YXZ5XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIodGV4dC1kZWNvcmF0aW9uLXN0eWxlLCAkc3R5bGUsIG1veiB3ZWJraXQpO1xyXG59XHJcblxyXG5AbWl4aW4gdGV4dC1kZWNvcmF0aW9uLWNvbG9yKCRjb2xvcjogY3VycmVudENvbG9yKSB7XHJcbi8vIGN1cnJlbnRDb2xvciB8fCA8Y29sb3I+XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIodGV4dC1kZWNvcmF0aW9uLWNvbG9yLCAkY29sb3IsIG1veik7XHJcbn1cclxuIiwKCQkiQG1peGluIHRyYW5zZm9ybSgkcHJvcGVydHk6IG5vbmUpIHtcclxuICAvLyBub25lIHwgPHRyYW5zZm9ybS1mdW5jdGlvbj5cclxuICBAaW5jbHVkZSBwcmVmaXhlcih0cmFuc2Zvcm0sICRwcm9wZXJ0eSwgd2Via2l0IG1veiBtcyBvIHNwZWMpO1xyXG59XHJcblxyXG5AbWl4aW4gdHJhbnNmb3JtLW9yaWdpbigkYXhlczogNTAlKSB7XHJcbiAgLy8geC1heGlzIC0gbGVmdCB8IGNlbnRlciB8IHJpZ2h0ICB8IGxlbmd0aCB8ICVcclxuICAvLyB5LWF4aXMgLSB0b3AgIHwgY2VudGVyIHwgYm90dG9tIHwgbGVuZ3RoIHwgJVxyXG4gIC8vIHotYXhpcyAtICAgICAgICAgICAgICAgICAgICAgICAgICBsZW5ndGhcclxuICBAaW5jbHVkZSBwcmVmaXhlcih0cmFuc2Zvcm0tb3JpZ2luLCAkYXhlcywgd2Via2l0IG1veiBtcyBvIHNwZWMpO1xyXG59XHJcblxyXG5AbWl4aW4gdHJhbnNmb3JtLXN0eWxlKCRzdHlsZTogZmxhdCkge1xyXG4gIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zZm9ybS1zdHlsZSwgJHN0eWxlLCB3ZWJraXQgbW96IG1zIG8gc3BlYyk7XHJcbn1cclxuIiwKCQkiLy8gU2hvcnRoYW5kIG1peGluLiBTdXBwb3J0cyBtdWx0aXBsZSBwYXJlbnRoZXNlcy1kZWxpbWluYXRlZCB2YWx1ZXMgZm9yIGVhY2ggdmFyaWFibGUuXHJcbi8vIEV4YW1wbGU6IEBpbmNsdWRlIHRyYW5zaXRpb24gKGFsbCAycyBlYXNlLWluLW91dCk7XHJcbi8vICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24gKG9wYWNpdHkgMXMgZWFzZS1pbiAycywgd2lkdGggMnMgZWFzZS1vdXQpO1xyXG4vLyAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLXByb3BlcnR5ICh0cmFuc2Zvcm0sIG9wYWNpdHkpO1xyXG5cclxuQG1peGluIHRyYW5zaXRpb24oJHByb3BlcnRpZXMuLi4pIHtcclxuICAvLyBGaXggZm9yIHZlbmRvci1wcmVmaXggdHJhbnNmb3JtIHByb3BlcnR5XHJcbiAgJG5lZWRzLXByZWZpeGVzOiBmYWxzZTtcclxuICAkd2Via2l0OiAoKTtcclxuICAkbW96OiAoKTtcclxuICAkc3BlYzogKCk7XHJcblxyXG4gIC8vIENyZWF0ZSBsaXN0cyBmb3IgdmVuZG9yLXByZWZpeGVkIHRyYW5zZm9ybVxyXG4gIEBlYWNoICRsaXN0IGluICRwcm9wZXJ0aWVzIHtcclxuICAgIEBpZiBudGgoJGxpc3QsIDEpID09IFwidHJhbnNmb3JtXCIge1xyXG4gICAgICAkbmVlZHMtcHJlZml4ZXM6IHRydWU7XHJcbiAgICAgICRsaXN0MTogLXdlYmtpdC10cmFuc2Zvcm07XHJcbiAgICAgICRsaXN0MjogLW1vei10cmFuc2Zvcm07XHJcbiAgICAgICRsaXN0MzogKCk7XHJcblxyXG4gICAgICBAZWFjaCAkdmFyIGluICRsaXN0IHtcclxuICAgICAgICAkbGlzdDM6IGpvaW4oJGxpc3QzLCAkdmFyKTtcclxuXHJcbiAgICAgICAgQGlmICR2YXIgIT0gXCJ0cmFuc2Zvcm1cIiB7XHJcbiAgICAgICAgICAkbGlzdDE6IGpvaW4oJGxpc3QxLCAkdmFyKTtcclxuICAgICAgICAgICRsaXN0Mjogam9pbigkbGlzdDIsICR2YXIpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJHdlYmtpdDogYXBwZW5kKCR3ZWJraXQsICRsaXN0MSk7XHJcbiAgICAgICRtb3o6ICAgIGFwcGVuZCgkbW96LCAgICAkbGlzdDIpO1xyXG4gICAgICAkc3BlYzogICBhcHBlbmQoJHNwZWMsICAgJGxpc3QzKTtcclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICAkd2Via2l0OiBhcHBlbmQoJHdlYmtpdCwgJGxpc3QsIGNvbW1hKTtcclxuICAgICAgJG1vejogICAgYXBwZW5kKCRtb3osICAgICRsaXN0LCBjb21tYSk7XHJcbiAgICAgICRzcGVjOiAgIGFwcGVuZCgkc3BlYywgICAkbGlzdCwgY29tbWEpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGlmICRuZWVkcy1wcmVmaXhlcyB7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb246ICR3ZWJraXQ7XHJcbiAgICAgICAtbW96LXRyYW5zaXRpb246ICRtb3o7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246ICRzcGVjO1xyXG4gIH0gQGVsc2Uge1xyXG4gICAgQGlmIGxlbmd0aCgkcHJvcGVydGllcykgPj0gMSB7XHJcbiAgICAgIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zaXRpb24sICRwcm9wZXJ0aWVzLCB3ZWJraXQgbW96IHNwZWMpO1xyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgICRwcm9wZXJ0aWVzOiBhbGwgMC4xNXMgZWFzZS1vdXQgMHM7XHJcbiAgICAgIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zaXRpb24sICRwcm9wZXJ0aWVzLCB3ZWJraXQgbW96IHNwZWMpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1peGluIHRyYW5zaXRpb24tcHJvcGVydHkoJHByb3BlcnRpZXMuLi4pIHtcclxuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zaXRpb24tcHJvcGVydHktbmFtZXMoJHByb3BlcnRpZXMsIFwid2Via2l0XCIpO1xyXG4gICAgIC1tb3otdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNpdGlvbi1wcm9wZXJ0eS1uYW1lcygkcHJvcGVydGllcywgXCJtb3pcIik7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2l0aW9uLXByb3BlcnR5LW5hbWVzKCRwcm9wZXJ0aWVzLCBmYWxzZSk7XHJcbn1cclxuXHJcbkBtaXhpbiB0cmFuc2l0aW9uLWR1cmF0aW9uKCR0aW1lcy4uLikge1xyXG4gIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zaXRpb24tZHVyYXRpb24sICR0aW1lcywgd2Via2l0IG1veiBzcGVjKTtcclxufVxyXG5cclxuQG1peGluIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uKCRtb3Rpb25zLi4uKSB7XHJcbiAgLy8gZWFzZSB8IGxpbmVhciB8IGVhc2UtaW4gfCBlYXNlLW91dCB8IGVhc2UtaW4tb3V0IHwgY3ViaWMtYmV6aWVyKClcclxuICBAaW5jbHVkZSBwcmVmaXhlcih0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgJG1vdGlvbnMsIHdlYmtpdCBtb3ogc3BlYyk7XHJcbn1cclxuXHJcbkBtaXhpbiB0cmFuc2l0aW9uLWRlbGF5KCR0aW1lcy4uLikge1xyXG4gIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zaXRpb24tZGVsYXksICR0aW1lcywgd2Via2l0IG1veiBzcGVjKTtcclxufVxyXG4iLAoJCSJAbWl4aW4gdXNlci1zZWxlY3QoJHZhbHVlOiBub25lKSB7XHJcbiAgQGluY2x1ZGUgcHJlZml4ZXIodXNlci1zZWxlY3QsICR2YWx1ZSwgd2Via2l0IG1veiBtcyBzcGVjKTtcclxufVxyXG4iLAoJCSJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLy8gUHJvdmlkZXMgYSBxdWljayBtZXRob2QgZm9yIHRhcmdldGluZyBgYm9yZGVyLWNvbG9yYCBvbiBzcGVjaWZpYyBzaWRlcyBvZiBhIGJveC4gVXNlIGEgYG51bGxgIHZhbHVlIHRvIOKAnHNraXDigJ0gYSBzaWRlLlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7QXJnbGlzdH0gJHZhbHNcclxuLy8vICAgTGlzdCBvZiBhcmd1bWVudHNcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2VcclxuLy8vICAgLmVsZW1lbnQge1xyXG4vLy8gICAgIEBpbmNsdWRlIGJvcmRlci1jb2xvcigjYTYwYjU1ICM3NmNkOWMgbnVsbCAjZThhZTFhKTtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcclxuLy8vICAgLmVsZW1lbnQge1xyXG4vLy8gICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAjZThhZTFhO1xyXG4vLy8gICAgIGJvcmRlci1yaWdodC1jb2xvcjogIzc2Y2Q5YztcclxuLy8vICAgICBib3JkZXItdG9wLWNvbG9yOiAjYTYwYjU1O1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQHJlcXVpcmUge21peGlufSBkaXJlY3Rpb25hbC1wcm9wZXJ0eVxyXG4vLy9cclxuLy8vIEBvdXRwdXQgYGJvcmRlci1jb2xvcmBcclxuXHJcbkBtaXhpbiBib3JkZXItY29sb3IoJHZhbHMuLi4pIHtcclxuICBAaW5jbHVkZSBkaXJlY3Rpb25hbC1wcm9wZXJ0eShib3JkZXIsIGNvbG9yLCAkdmFscy4uLik7XHJcbn1cclxuIiwKCQkiIiwKCQkiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIFByb3ZpZGVzIGEgcXVpY2sgbWV0aG9kIGZvciB0YXJnZXRpbmcgYGJvcmRlci1zdHlsZWAgb24gc3BlY2lmaWMgc2lkZXMgb2YgYSBib3guIFVzZSBhIGBudWxsYCB2YWx1ZSB0byDigJxza2lw4oCdIGEgc2lkZS5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge0FyZ2xpc3R9ICR2YWxzXHJcbi8vLyAgIExpc3Qgb2YgYXJndW1lbnRzXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBAaW5jbHVkZSBib3JkZXItc3R5bGUoZGFzaGVkIG51bGwgc29saWQpO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxyXG4vLy8gICAuZWxlbWVudCB7XHJcbi8vLyAgICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7XHJcbi8vLyAgICAgYm9yZGVyLXRvcC1zdHlsZTogZGFzaGVkO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQHJlcXVpcmUge21peGlufSBkaXJlY3Rpb25hbC1wcm9wZXJ0eVxyXG4vLy9cclxuLy8vIEBvdXRwdXQgYGJvcmRlci1zdHlsZWBcclxuXHJcbkBtaXhpbiBib3JkZXItc3R5bGUoJHZhbHMuLi4pIHtcclxuICBAaW5jbHVkZSBkaXJlY3Rpb25hbC1wcm9wZXJ0eShib3JkZXIsIHN0eWxlLCAkdmFscy4uLik7XHJcbn1cclxuIiwKCQkiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIFByb3ZpZGVzIGEgcXVpY2sgbWV0aG9kIGZvciB0YXJnZXRpbmcgYGJvcmRlci13aWR0aGAgb24gc3BlY2lmaWMgc2lkZXMgb2YgYSBib3guIFVzZSBhIGBudWxsYCB2YWx1ZSB0byDigJxza2lw4oCdIGEgc2lkZS5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge0FyZ2xpc3R9ICR2YWxzXHJcbi8vLyAgIExpc3Qgb2YgYXJndW1lbnRzXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBAaW5jbHVkZSBib3JkZXItd2lkdGgoMWVtIG51bGwgMjBweCk7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAyMHB4O1xyXG4vLy8gICAgIGJvcmRlci10b3Atd2lkdGg6IDFlbTtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEByZXF1aXJlIHttaXhpbn0gZGlyZWN0aW9uYWwtcHJvcGVydHlcclxuLy8vXHJcbi8vLyBAb3V0cHV0IGBib3JkZXItd2lkdGhgXHJcblxyXG5AbWl4aW4gYm9yZGVyLXdpZHRoKCR2YWxzLi4uKSB7XHJcbiAgQGluY2x1ZGUgZGlyZWN0aW9uYWwtcHJvcGVydHkoYm9yZGVyLCB3aWR0aCwgJHZhbHMuLi4pO1xyXG59XHJcbiIsCgkJIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vLyBHZW5lcmF0ZXMgdmFyaWFibGVzIGZvciBhbGwgYnV0dG9ucy4gUGxlYXNlIG5vdGUgdGhhdCB5b3UgbXVzdCB1c2UgaW50ZXJwb2xhdGlvbiBvbiB0aGUgdmFyaWFibGU6IGAjeyRhbGwtYnV0dG9uc31gLlxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxyXG4vLy8gICAjeyRhbGwtYnV0dG9uc30ge1xyXG4vLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICNmMDA7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyAgICN7JGFsbC1idXR0b25zLWZvY3VzfSxcclxuLy8vICAgI3skYWxsLWJ1dHRvbnMtaG92ZXJ9IHtcclxuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGYwO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gICAjeyRhbGwtYnV0dG9ucy1hY3RpdmV9IHtcclxuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBmO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxyXG4vLy8gICBidXR0b24sXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJidXR0b25cIl0sXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJyZXNldFwiXSxcclxuLy8vICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XHJcbi8vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwMDtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vICAgYnV0dG9uOmZvY3VzLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOmZvY3VzLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwicmVzZXRcIl06Zm9jdXMsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06Zm9jdXMsXHJcbi8vLyAgIGJ1dHRvbjpob3ZlcixcclxuLy8vICAgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpob3ZlcixcclxuLy8vICAgaW5wdXRbdHlwZT1cInJlc2V0XCJdOmhvdmVyLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmhvdmVyIHtcclxuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGYwO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gICBidXR0b246YWN0aXZlLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOmFjdGl2ZSxcclxuLy8vICAgaW5wdXRbdHlwZT1cInJlc2V0XCJdOmFjdGl2ZSxcclxuLy8vICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTphY3RpdmUge1xyXG4vLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGY7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAcmVxdWlyZSBhc3NpZ24taW5wdXRzXHJcbi8vL1xyXG4vLy8gQHR5cGUgTGlzdFxyXG4vLy9cclxuLy8vIEB0b2RvIFJlbW92ZSBkb3VibGUgYXNzaWduZWQgdmFyaWFibGVzIChMaW5lcyA1OeKAkzYyKSBpbiB2NS4wLjBcclxuXHJcbiRidXR0b25zLWxpc3Q6ICdidXR0b24nLFxyXG4gICAgICAgICAgICAgICAnaW5wdXRbdHlwZT1cImJ1dHRvblwiXScsXHJcbiAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwicmVzZXRcIl0nLFxyXG4gICAgICAgICAgICAgICAnaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSc7XHJcblxyXG4kYWxsLWJ1dHRvbnM6ICAgICAgICBhc3NpZ24taW5wdXRzKCRidXR0b25zLWxpc3QpO1xyXG4kYWxsLWJ1dHRvbnMtYWN0aXZlOiBhc3NpZ24taW5wdXRzKCRidXR0b25zLWxpc3QsIGFjdGl2ZSk7XHJcbiRhbGwtYnV0dG9ucy1mb2N1czogIGFzc2lnbi1pbnB1dHMoJGJ1dHRvbnMtbGlzdCwgZm9jdXMpO1xyXG4kYWxsLWJ1dHRvbnMtaG92ZXI6ICBhc3NpZ24taW5wdXRzKCRidXR0b25zLWxpc3QsIGhvdmVyKTtcclxuXHJcbiRhbGwtYnV0dG9uLWlucHV0czogICAgICAgICRhbGwtYnV0dG9ucztcclxuJGFsbC1idXR0b24taW5wdXRzLWFjdGl2ZTogJGFsbC1idXR0b25zLWFjdGl2ZTtcclxuJGFsbC1idXR0b24taW5wdXRzLWZvY3VzOiAgJGFsbC1idXR0b25zLWZvY3VzO1xyXG4kYWxsLWJ1dHRvbi1pbnB1dHMtaG92ZXI6ICAkYWxsLWJ1dHRvbnMtaG92ZXI7XHJcbiIsCgkJIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vLyBQcm92aWRlcyBhbiBlYXN5IHdheSB0byBpbmNsdWRlIGEgY2xlYXJmaXggZm9yIGNvbnRhaW5pbmcgZmxvYXRzLlxyXG4vLy9cclxuLy8vIEBsaW5rIGh0dHA6Ly9jc3Ntb2pvLmNvbS9sYXRlc3RfbmV3X2NsZWFyZml4X3NvX2Zhci9cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2VcclxuLy8vICAgLmVsZW1lbnQge1xyXG4vLy8gICAgIEBpbmNsdWRlIGNsZWFyZml4O1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxyXG4vLy8gICAuZWxlbWVudDo6YWZ0ZXIge1xyXG4vLy8gICAgIGNsZWFyOiBib3RoO1xyXG4vLy8gICAgIGNvbnRlbnQ6IFwiXCI7XHJcbi8vLyAgICAgZGlzcGxheTogdGFibGU7XHJcbi8vLyAgIH1cclxuXHJcbkBtaXhpbiBjbGVhcmZpeCB7XHJcbiAgJjo6YWZ0ZXIge1xyXG4gICAgY2xlYXI6IGJvdGg7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgZGlzcGxheTogdGFibGU7XHJcbiAgfVxyXG59XHJcbiIsCgkJIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vLyBUcnVuY2F0ZXMgdGV4dCBhbmQgYWRkcyBhbiBlbGxpcHNpcyB0byByZXByZXNlbnQgb3ZlcmZsb3cuXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCBbMTAwJV1cclxuLy8vICAgTWF4LXdpZHRoIGZvciB0aGUgc3RyaW5nIHRvIHJlc3BlY3QgYmVmb3JlIGJlaW5nIHRydW5jYXRlZFxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxyXG4vLy8gICAuZWxlbWVudCB7XHJcbi8vLyAgICAgQGluY2x1ZGUgZWxsaXBzaXM7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbi8vLyAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4vLy8gICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbi8vLyAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbi8vLyAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuLy8vICAgICB3b3JkLXdyYXA6IG5vcm1hbDtcclxuLy8vICAgfVxyXG5cclxuQG1peGluIGVsbGlwc2lzKCR3aWR0aDogMTAwJSkge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBtYXgtd2lkdGg6ICR3aWR0aDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgd29yZC13cmFwOiBub3JtYWw7XHJcbn1cclxuIiwKCQkiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIEdlb3JnaWEgZm9udCBzdGFjay5cclxuLy8vXHJcbi8vLyBAdHlwZSBMaXN0XHJcblxyXG4kZ2VvcmdpYTogXCJHZW9yZ2lhXCIsIFwiQ2FtYnJpYVwiLCBcIlRpbWVzIE5ldyBSb21hblwiLCBcIlRpbWVzXCIsIHNlcmlmO1xyXG5cclxuLy8vIEhlbHZldGljYSBmb250IHN0YWNrLlxyXG4vLy9cclxuLy8vIEB0eXBlIExpc3RcclxuXHJcbiRoZWx2ZXRpY2E6IFwiSGVsdmV0aWNhIE5ldWVcIiwgXCJIZWx2ZXRpY2FcIiwgXCJSb2JvdG9cIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xyXG5cclxuLy8vIEx1Y2lkYSBHcmFuZGUgZm9udCBzdGFjay5cclxuLy8vXHJcbi8vLyBAdHlwZSBMaXN0XHJcblxyXG4kbHVjaWRhLWdyYW5kZTogXCJMdWNpZGEgR3JhbmRlXCIsIFwiVGFob21hXCIsIFwiVmVyZGFuYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XHJcblxyXG4vLy8gTW9ub3NwYWNlIGZvbnQgc3RhY2suXHJcbi8vL1xyXG4vLy8gQHR5cGUgTGlzdFxyXG5cclxuJG1vbm9zcGFjZTogXCJCaXRzdHJlYW0gVmVyYSBTYW5zIE1vbm9cIiwgXCJDb25zb2xhc1wiLCBcIkNvdXJpZXJcIiwgbW9ub3NwYWNlO1xyXG5cclxuLy8vIFZlcmRhbmEgZm9udCBzdGFjay5cclxuLy8vXHJcbi8vLyBAdHlwZSBMaXN0XHJcblxyXG4kdmVyZGFuYTogXCJWZXJkYW5hXCIsIFwiR2VuZXZhXCIsIHNhbnMtc2VyaWY7XHJcbiIsCgkJIi8vLyBIaWRlcyB0aGUgdGV4dCBpbiBhbiBlbGVtZW50LCBjb21tb25seSB1c2VkIHRvIHNob3cgYW4gaW1hZ2UuIFNvbWUgZWxlbWVudHMgd2lsbCBuZWVkIGJsb2NrLWxldmVsIHN0eWxlcyBhcHBsaWVkLlxyXG4vLy9cclxuLy8vIEBsaW5rIGh0dHA6Ly96ZWxkbWFuLmNvbS8yMDEyLzAzLzAxL3JlcGxhY2luZy10aGUtOTk5OXB4LWhhY2stbmV3LWltYWdlLXJlcGxhY2VtZW50XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBAaW5jbHVkZSBoaWRlLXRleHQ7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4vLy8gICAgIHRleHQtaW5kZW50OiAxMDElO1xyXG4vLy8gICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAdG9kbyBSZW1vdmUgaGVpZ2h0IGFyZ3VtZW50IGluIHY1LjAuMFxyXG5cclxuQG1peGluIGhpZGUtdGV4dCgkaGVpZ2h0OiBudWxsKSB7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB0ZXh0LWluZGVudDogMTAxJTtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cclxuICBAaWYgJGhlaWdodCB7XHJcbiAgICBAd2FybiBcIlRoZSBgaGlkZS10ZXh0YCBtaXhpbiBoYXMgY2hhbmdlZCBhbmQgbm8gbG9uZ2VyIHJlcXVpcmVzIGEgaGVpZ2h0LiBUaGUgaGVpZ2h0IGFyZ3VtZW50IHdpbGwgbm8gbG9uZ2VyIGJlIGFjY2VwdGVkIGluIHY1LjAuMFwiO1xyXG4gIH1cclxufVxyXG4iLAoJCSJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLy8gUHJvdmlkZXMgYSBxdWljayBtZXRob2QgZm9yIHRhcmdldGluZyBgbWFyZ2luYCBvbiBzcGVjaWZpYyBzaWRlcyBvZiBhIGJveC4gVXNlIGEgYG51bGxgIHZhbHVlIHRvIOKAnHNraXDigJ0gYSBzaWRlLlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7QXJnbGlzdH0gJHZhbHNcclxuLy8vICAgTGlzdCBvZiBhcmd1bWVudHNcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2VcclxuLy8vICAgLmVsZW1lbnQge1xyXG4vLy8gICAgIEBpbmNsdWRlIG1hcmdpbihudWxsIDEwcHggM2VtIDIwdmgpO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxyXG4vLy8gICAuZWxlbWVudCB7XHJcbi8vLyAgICAgbWFyZ2luLWJvdHRvbTogM2VtO1xyXG4vLy8gICAgIG1hcmdpbi1sZWZ0OiAyMHZoO1xyXG4vLy8gICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEByZXF1aXJlIHttaXhpbn0gZGlyZWN0aW9uYWwtcHJvcGVydHlcclxuLy8vXHJcbi8vLyBAb3V0cHV0IGBtYXJnaW5gXHJcblxyXG5AbWl4aW4gbWFyZ2luKCR2YWxzLi4uKSB7XHJcbiAgQGluY2x1ZGUgZGlyZWN0aW9uYWwtcHJvcGVydHkobWFyZ2luLCBmYWxzZSwgJHZhbHMuLi4pO1xyXG59XHJcbiIsCgkJIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vLyBQcm92aWRlcyBhIHF1aWNrIG1ldGhvZCBmb3IgdGFyZ2V0aW5nIGBwYWRkaW5nYCBvbiBzcGVjaWZpYyBzaWRlcyBvZiBhIGJveC4gVXNlIGEgYG51bGxgIHZhbHVlIHRvIOKAnHNraXDigJ0gYSBzaWRlLlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7QXJnbGlzdH0gJHZhbHNcclxuLy8vICAgTGlzdCBvZiBhcmd1bWVudHNcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2VcclxuLy8vICAgLmVsZW1lbnQge1xyXG4vLy8gICAgIEBpbmNsdWRlIHBhZGRpbmcoMTJ2aCBudWxsIDEwcHggNSUpO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxyXG4vLy8gICAuZWxlbWVudCB7XHJcbi8vLyAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbi8vLyAgICAgcGFkZGluZy1sZWZ0OiA1JTtcclxuLy8vICAgICBwYWRkaW5nLXRvcDogMTJ2aDtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEByZXF1aXJlIHttaXhpbn0gZGlyZWN0aW9uYWwtcHJvcGVydHlcclxuLy8vXHJcbi8vLyBAb3V0cHV0IGBwYWRkaW5nYFxyXG5cclxuQG1peGluIHBhZGRpbmcoJHZhbHMuLi4pIHtcclxuICBAaW5jbHVkZSBkaXJlY3Rpb25hbC1wcm9wZXJ0eShwYWRkaW5nLCBmYWxzZSwgJHZhbHMuLi4pO1xyXG59XHJcbiIsCgkJIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vLyBQcm92aWRlcyBhIHF1aWNrIG1ldGhvZCBmb3Igc2V0dGluZyBhbiBlbGVtZW504oCZcyBwb3NpdGlvbi4gVXNlIGEgYG51bGxgIHZhbHVlIHRvIOKAnHNraXDigJ0gYSBzaWRlLlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7UG9zaXRpb259ICRwb3NpdGlvbiBbcmVsYXRpdmVdXHJcbi8vLyAgIEEgQ1NTIHBvc2l0aW9uIHZhbHVlXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAkY29vcmRpbmF0ZXMgW251bGwgbnVsbCBudWxsIG51bGxdXHJcbi8vLyAgIExpc3Qgb2YgdmFsdWVzIHRoYXQgY29ycmVzcG9uZCB0byB0aGUgNC12YWx1ZSBzeW50YXggZm9yIHRoZSBlZGdlcyBvZiBhIGJveFxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxyXG4vLy8gICAuZWxlbWVudCB7XHJcbi8vLyAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIDAgbnVsbCBudWxsIDEwZW0pO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxyXG4vLy8gICAuZWxlbWVudCB7XHJcbi8vLyAgICAgbGVmdDogMTBlbTtcclxuLy8vICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbi8vLyAgICAgdG9wOiAwO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBpcy1sZW5ndGhcclxuLy8vIEByZXF1aXJlIHtmdW5jdGlvbn0gdW5wYWNrXHJcblxyXG5AbWl4aW4gcG9zaXRpb24oJHBvc2l0aW9uOiByZWxhdGl2ZSwgJGNvb3JkaW5hdGVzOiBudWxsIG51bGwgbnVsbCBudWxsKSB7XHJcbiAgQGlmIHR5cGUtb2YoJHBvc2l0aW9uKSA9PSBsaXN0IHtcclxuICAgICRjb29yZGluYXRlczogJHBvc2l0aW9uO1xyXG4gICAgJHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB9XHJcblxyXG4gICRjb29yZGluYXRlczogdW5wYWNrKCRjb29yZGluYXRlcyk7XHJcblxyXG4gICRvZmZzZXRzOiAoXHJcbiAgICB0b3A6ICAgIG50aCgkY29vcmRpbmF0ZXMsIDEpLFxyXG4gICAgcmlnaHQ6ICBudGgoJGNvb3JkaW5hdGVzLCAyKSxcclxuICAgIGJvdHRvbTogbnRoKCRjb29yZGluYXRlcywgMyksXHJcbiAgICBsZWZ0OiAgIG50aCgkY29vcmRpbmF0ZXMsIDQpXHJcbiAgKTtcclxuXHJcbiAgcG9zaXRpb246ICRwb3NpdGlvbjtcclxuXHJcbiAgQGVhY2ggJG9mZnNldCwgJHZhbHVlIGluICRvZmZzZXRzIHtcclxuICAgIEBpZiBpcy1sZW5ndGgoJHZhbHVlKSB7XHJcbiAgICAgICN7JG9mZnNldH06ICR2YWx1ZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwKCQkiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIEEgbWl4aW4gZm9yIGdlbmVyYXRpbmcgdmVuZG9yIHByZWZpeGVzIG9uIG5vbi1zdGFuZGFyZGl6ZWQgcHJvcGVydGllcy5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHByb3BlcnR5XHJcbi8vLyAgIFByb3BlcnR5IHRvIHByZWZpeFxyXG4vLy9cclxuLy8vIEBwYXJhbSB7Kn0gJHZhbHVlXHJcbi8vLyAgIFZhbHVlIHRvIHVzZVxyXG4vLy9cclxuLy8vIEBwYXJhbSB7TGlzdH0gJHByZWZpeGVzXHJcbi8vLyAgIFByZWZpeGVzIHRvIGRlZmluZVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxyXG4vLy8gICAuZWxlbWVudCB7XHJcbi8vLyAgICAgQGluY2x1ZGUgcHJlZml4ZXIoYm9yZGVyLXJhZGl1cywgMTBweCwgd2Via2l0IG1zIHNwZWMpO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxyXG4vLy8gICAuZWxlbWVudCB7XHJcbi8vLyAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4vLy8gICAgIC1tb3otYm9yZGVyLXJhZGl1czogMTBweDtcclxuLy8vICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQHJlcXVpcmUge3ZhcmlhYmxlfSAkcHJlZml4LWZvci13ZWJraXRcclxuLy8vIEByZXF1aXJlIHt2YXJpYWJsZX0gJHByZWZpeC1mb3ItbW96aWxsYVxyXG4vLy8gQHJlcXVpcmUge3ZhcmlhYmxlfSAkcHJlZml4LWZvci1taWNyb3NvZnRcclxuLy8vIEByZXF1aXJlIHt2YXJpYWJsZX0gJHByZWZpeC1mb3Itb3BlcmFcclxuLy8vIEByZXF1aXJlIHt2YXJpYWJsZX0gJHByZWZpeC1mb3Itc3BlY1xyXG5cclxuQG1peGluIHByZWZpeGVyKCRwcm9wZXJ0eSwgJHZhbHVlLCAkcHJlZml4ZXMpIHtcclxuICBAZWFjaCAkcHJlZml4IGluICRwcmVmaXhlcyB7XHJcbiAgICBAaWYgJHByZWZpeCA9PSB3ZWJraXQge1xyXG4gICAgICBAaWYgJHByZWZpeC1mb3Itd2Via2l0IHtcclxuICAgICAgICAtd2Via2l0LSN7JHByb3BlcnR5fTogJHZhbHVlO1xyXG4gICAgICB9XHJcbiAgICB9IEBlbHNlIGlmICRwcmVmaXggPT0gbW96IHtcclxuICAgICAgQGlmICRwcmVmaXgtZm9yLW1vemlsbGEge1xyXG4gICAgICAgIC1tb3otI3skcHJvcGVydHl9OiAkdmFsdWU7XHJcbiAgICAgIH1cclxuICAgIH0gQGVsc2UgaWYgJHByZWZpeCA9PSBtcyB7XHJcbiAgICAgIEBpZiAkcHJlZml4LWZvci1taWNyb3NvZnQge1xyXG4gICAgICAgIC1tcy0jeyRwcm9wZXJ0eX06ICR2YWx1ZTtcclxuICAgICAgfVxyXG4gICAgfSBAZWxzZSBpZiAkcHJlZml4ID09IG8ge1xyXG4gICAgICBAaWYgJHByZWZpeC1mb3Itb3BlcmEge1xyXG4gICAgICAgIC1vLSN7JHByb3BlcnR5fTogJHZhbHVlO1xyXG4gICAgICB9XHJcbiAgICB9IEBlbHNlIGlmICRwcmVmaXggPT0gc3BlYyB7XHJcbiAgICAgIEBpZiAkcHJlZml4LWZvci1zcGVjIHtcclxuICAgICAgICAjeyRwcm9wZXJ0eX06ICR2YWx1ZTtcclxuICAgICAgfVxyXG4gICAgfSBAZWxzZSAge1xyXG4gICAgICBAd2FybiBcIlVucmVjb2duaXplZCBwcmVmaXg6ICN7JHByZWZpeH1cIjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBkaXNhYmxlLXByZWZpeC1mb3ItYWxsKCkge1xyXG4gICRwcmVmaXgtZm9yLXdlYmtpdDogICAgZmFsc2UgIWdsb2JhbDtcclxuICAkcHJlZml4LWZvci1tb3ppbGxhOiAgIGZhbHNlICFnbG9iYWw7XHJcbiAgJHByZWZpeC1mb3ItbWljcm9zb2Z0OiBmYWxzZSAhZ2xvYmFsO1xyXG4gICRwcmVmaXgtZm9yLW9wZXJhOiAgICAgZmFsc2UgIWdsb2JhbDtcclxuICAkcHJlZml4LWZvci1zcGVjOiAgICAgIGZhbHNlICFnbG9iYWw7XHJcbn1cclxuIiwKCQkiQG1peGluIHJldGluYS1pbWFnZSgkZmlsZW5hbWUsICRiYWNrZ3JvdW5kLXNpemUsICRleHRlbnNpb246IHBuZywgJHJldGluYS1maWxlbmFtZTogbnVsbCwgJHJldGluYS1zdWZmaXg6IF8yeCwgJGFzc2V0LXBpcGVsaW5lOiAkYXNzZXQtcGlwZWxpbmUpIHtcclxuICBAaWYgJGFzc2V0LXBpcGVsaW5lIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGltYWdlLXVybChcIiN7JGZpbGVuYW1lfS4jeyRleHRlbnNpb259XCIpO1xyXG4gIH0gQGVsc2Uge1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogICAgICAgdXJsKFwiI3skZmlsZW5hbWV9LiN7JGV4dGVuc2lvbn1cIik7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBoaWRwaSB7XHJcbiAgICBAaWYgJGFzc2V0LXBpcGVsaW5lIHtcclxuICAgICAgQGlmICRyZXRpbmEtZmlsZW5hbWUge1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGltYWdlLXVybChcIiN7JHJldGluYS1maWxlbmFtZX0uI3skZXh0ZW5zaW9ufVwiKTtcclxuICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogaW1hZ2UtdXJsKFwiI3skZmlsZW5hbWV9I3skcmV0aW5hLXN1ZmZpeH0uI3skZXh0ZW5zaW9ufVwiKTtcclxuICAgICAgfVxyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgIEBpZiAkcmV0aW5hLWZpbGVuYW1lIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIjeyRyZXRpbmEtZmlsZW5hbWV9LiN7JGV4dGVuc2lvbn1cIik7XHJcbiAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIiN7JGZpbGVuYW1lfSN7JHJldGluYS1zdWZmaXh9LiN7JGV4dGVuc2lvbn1cIik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICRiYWNrZ3JvdW5kLXNpemU7XHJcbiAgfVxyXG59XHJcbiIsCgkJIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vLyBTZXRzIHRoZSBgd2lkdGhgIGFuZCBgaGVpZ2h0YCBvZiB0aGUgZWxlbWVudC5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge0xpc3R9ICRzaXplXHJcbi8vLyAgIEEgbGlzdCBvZiBhdCBtb3N0IDIgc2l6ZSB2YWx1ZXMuXHJcbi8vL1xyXG4vLy8gICBJZiB0aGVyZSBpcyBvbmx5IGEgc2luZ2xlIHZhbHVlIGluIGAkc2l6ZWAgaXQgaXMgdXNlZCBmb3IgYm90aCB3aWR0aCBhbmQgaGVpZ2h0LiBBbGwgdW5pdHMgYXJlIHN1cHBvcnRlZC5cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2VcclxuLy8vICAgLmZpcnN0LWVsZW1lbnQge1xyXG4vLy8gICAgIEBpbmNsdWRlIHNpemUoMmVtKTtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vICAgLnNlY29uZC1lbGVtZW50IHtcclxuLy8vICAgICBAaW5jbHVkZSBzaXplKGF1dG8gMTBlbSk7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XHJcbi8vLyAgIC5maXJzdC1lbGVtZW50IHtcclxuLy8vICAgICB3aWR0aDogMmVtO1xyXG4vLy8gICAgIGhlaWdodDogMmVtO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gICAuc2Vjb25kLWVsZW1lbnQge1xyXG4vLy8gICAgIHdpZHRoOiBhdXRvO1xyXG4vLy8gICAgIGhlaWdodDogMTBlbTtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEB0b2RvIFJlZmFjdG9yIGluIDUuMC4wIHRvIHVzZSBhIGNvbW1hLXNlcGFyYXRlZCBhcmd1bWVudFxyXG5cclxuQG1peGluIHNpemUoJHZhbHVlKSB7XHJcbiAgJHdpZHRoOiBudGgoJHZhbHVlLCAxKTtcclxuICAkaGVpZ2h0OiAkd2lkdGg7XHJcblxyXG4gIEBpZiBsZW5ndGgoJHZhbHVlKSA+IDEge1xyXG4gICAgJGhlaWdodDogbnRoKCR2YWx1ZSwgMik7XHJcbiAgfVxyXG5cclxuICBAaWYgaXMtc2l6ZSgkaGVpZ2h0KSB7XHJcbiAgICBoZWlnaHQ6ICRoZWlnaHQ7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBAd2FybiBcImAjeyRoZWlnaHR9YCBpcyBub3QgYSB2YWxpZCBsZW5ndGggZm9yIHRoZSBgJGhlaWdodGAgcGFyYW1ldGVyIGluIHRoZSBgc2l6ZWAgbWl4aW4uXCI7XHJcbiAgfVxyXG5cclxuICBAaWYgaXMtc2l6ZSgkd2lkdGgpIHtcclxuICAgIHdpZHRoOiAkd2lkdGg7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBAd2FybiBcImAjeyR3aWR0aH1gIGlzIG5vdCBhIHZhbGlkIGxlbmd0aCBmb3IgdGhlIGAkd2lkdGhgIHBhcmFtZXRlciBpbiB0aGUgYHNpemVgIG1peGluLlwiO1xyXG4gIH1cclxufVxyXG4iLAoJCSJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLy8gR2VuZXJhdGVzIHZhcmlhYmxlcyBmb3IgYWxsIHRleHQtYmFzZWQgaW5wdXRzLiBQbGVhc2Ugbm90ZSB0aGF0IHlvdSBtdXN0IHVzZSBpbnRlcnBvbGF0aW9uIG9uIHRoZSB2YXJpYWJsZTogYCN7JGFsbC10ZXh0LWlucHV0c31gLlxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxyXG4vLy8gICAjeyRhbGwtdGV4dC1pbnB1dHN9IHtcclxuLy8vICAgICBib3JkZXI6IDFweCBzb2xpZCAjZjAwO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gICAjeyRhbGwtdGV4dC1pbnB1dHMtZm9jdXN9LFxyXG4vLy8gICAjeyRhbGwtdGV4dC1pbnB1dHMtaG92ZXJ9IHtcclxuLy8vICAgICBib3JkZXI6IDFweCBzb2xpZCAjMGYwO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gICAjeyRhbGwtdGV4dC1pbnB1dHMtYWN0aXZlfSB7XHJcbi8vLyAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwZjtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcclxuLy8vICAgaW5wdXRbdHlwZT1cImNvbG9yXCJdLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcclxuLy8vICAgaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcclxuLy8vICAgaW5wdXRbdHlwZT1cIm1vbnRoXCJdLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJ0ZWxcIl0sXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwidGltZVwiXSxcclxuLy8vICAgaW5wdXRbdHlwZT1cInVybFwiXSxcclxuLy8vICAgaW5wdXRbdHlwZT1cIndlZWtcIl0sXHJcbi8vLyAgIHRleHRhcmVhIHtcclxuLy8vICAgICBib3JkZXI6IDFweCBzb2xpZCAjZjAwO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gICBpbnB1dFt0eXBlPVwiY29sb3JcIl06Zm9jdXMsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJkYXRlXCJdOmZvY3VzLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl06Zm9jdXMsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXTpmb2N1cyxcclxuLy8vICAgaW5wdXRbdHlwZT1cImVtYWlsXCJdOmZvY3VzLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwibW9udGhcIl06Zm9jdXMsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJudW1iZXJcIl06Zm9jdXMsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpmb2N1cyxcclxuLy8vICAgaW5wdXRbdHlwZT1cInNlYXJjaFwiXTpmb2N1cyxcclxuLy8vICAgaW5wdXRbdHlwZT1cInRlbFwiXTpmb2N1cyxcclxuLy8vICAgaW5wdXRbdHlwZT1cInRleHRcIl06Zm9jdXMsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJ0aW1lXCJdOmZvY3VzLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwidXJsXCJdOmZvY3VzLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwid2Vla1wiXTpmb2N1cyxcclxuLy8vICAgdGV4dGFyZWE6Zm9jdXMsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJjb2xvclwiXTpob3ZlcixcclxuLy8vICAgaW5wdXRbdHlwZT1cImRhdGVcIl06aG92ZXIsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJkYXRldGltZVwiXTpob3ZlcixcclxuLy8vICAgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdOmhvdmVyLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwiZW1haWxcIl06aG92ZXIsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJtb250aFwiXTpob3ZlcixcclxuLy8vICAgaW5wdXRbdHlwZT1cIm51bWJlclwiXTpob3ZlcixcclxuLy8vICAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOmhvdmVyLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwic2VhcmNoXCJdOmhvdmVyLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwidGVsXCJdOmhvdmVyLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwidGV4dFwiXTpob3ZlcixcclxuLy8vICAgaW5wdXRbdHlwZT1cInRpbWVcIl06aG92ZXIsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJ1cmxcIl06aG92ZXIsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJ3ZWVrXCJdOmhvdmVyLFxyXG4vLy8gICB0ZXh0YXJlYTpob3ZlciB7XHJcbi8vLyAgICAgYm9yZGVyOiAxcHggc29saWQgIzBmMDtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vICAgaW5wdXRbdHlwZT1cImNvbG9yXCJdOmFjdGl2ZSxcclxuLy8vICAgaW5wdXRbdHlwZT1cImRhdGVcIl06YWN0aXZlLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl06YWN0aXZlLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl06YWN0aXZlLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwiZW1haWxcIl06YWN0aXZlLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwibW9udGhcIl06YWN0aXZlLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwibnVtYmVyXCJdOmFjdGl2ZSxcclxuLy8vICAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOmFjdGl2ZSxcclxuLy8vICAgaW5wdXRbdHlwZT1cInNlYXJjaFwiXTphY3RpdmUsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJ0ZWxcIl06YWN0aXZlLFxyXG4vLy8gICBpbnB1dFt0eXBlPVwidGV4dFwiXTphY3RpdmUsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJ0aW1lXCJdOmFjdGl2ZSxcclxuLy8vICAgaW5wdXRbdHlwZT1cInVybFwiXTphY3RpdmUsXHJcbi8vLyAgIGlucHV0W3R5cGU9XCJ3ZWVrXCJdOmFjdGl2ZSxcclxuLy8vICAgdGV4dGFyZWE6YWN0aXZlIHtcclxuLy8vICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDBmO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQHJlcXVpcmUgYXNzaWduLWlucHV0c1xyXG4vLy9cclxuLy8vIEB0eXBlIExpc3RcclxuXHJcbiR0ZXh0LWlucHV0cy1saXN0OiAnaW5wdXRbdHlwZT1cImNvbG9yXCJdJyxcclxuICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwiZGF0ZVwiXScsXHJcbiAgICAgICAgICAgICAgICAgICAnaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdJyxcclxuICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0nLFxyXG4gICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJlbWFpbFwiXScsXHJcbiAgICAgICAgICAgICAgICAgICAnaW5wdXRbdHlwZT1cIm1vbnRoXCJdJyxcclxuICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwibnVtYmVyXCJdJyxcclxuICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0nLFxyXG4gICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJzZWFyY2hcIl0nLFxyXG4gICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJ0ZWxcIl0nLFxyXG4gICAgICAgICAgICAgICAgICAgJ2lucHV0W3R5cGU9XCJ0ZXh0XCJdJyxcclxuICAgICAgICAgICAgICAgICAgICdpbnB1dFt0eXBlPVwidGltZVwiXScsXHJcbiAgICAgICAgICAgICAgICAgICAnaW5wdXRbdHlwZT1cInVybFwiXScsXHJcbiAgICAgICAgICAgICAgICAgICAnaW5wdXRbdHlwZT1cIndlZWtcIl0nLFxyXG4gICAgICAgICAgICAgICAgICAgJ2lucHV0Om5vdChbdHlwZV0pJyxcclxuICAgICAgICAgICAgICAgICAgICd0ZXh0YXJlYSc7XHJcblxyXG4kYWxsLXRleHQtaW5wdXRzOiAgICAgICAgYXNzaWduLWlucHV0cygkdGV4dC1pbnB1dHMtbGlzdCk7XHJcbiRhbGwtdGV4dC1pbnB1dHMtYWN0aXZlOiBhc3NpZ24taW5wdXRzKCR0ZXh0LWlucHV0cy1saXN0LCBhY3RpdmUpO1xyXG4kYWxsLXRleHQtaW5wdXRzLWZvY3VzOiAgYXNzaWduLWlucHV0cygkdGV4dC1pbnB1dHMtbGlzdCwgZm9jdXMpO1xyXG4kYWxsLXRleHQtaW5wdXRzLWhvdmVyOiAgYXNzaWduLWlucHV0cygkdGV4dC1pbnB1dHMtbGlzdCwgaG92ZXIpO1xyXG4iLAoJCSJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLy8gQ1NTIGN1YmljLWJlemllciB0aW1pbmcgZnVuY3Rpb25zLiBUaW1pbmcgZnVuY3Rpb25zIGNvdXJ0ZXN5IG9mIGpxdWVyeS5lYXNpZSAoZ2l0aHViLmNvbS9qYXVraWEvZWFzaWUpXHJcbi8vL1xyXG4vLy8gVGltaW5nIGZ1bmN0aW9ucyBhcmUgdGhlIHNhbWUgYXMgZGVtb2VkIGhlcmU6IGh0dHA6Ly9qcXVlcnl1aS5jb20vcmVzb3VyY2VzL2RlbW9zL2VmZmVjdC9lYXNpbmcuaHRtbFxyXG4vLy9cclxuLy8vIEB0eXBlIGN1YmljLWJlemllclxyXG5cclxuJGVhc2UtaW4tcXVhZDogICAgICBjdWJpYy1iZXppZXIoMC41NTAsICAwLjA4NSwgMC42ODAsIDAuNTMwKTtcclxuJGVhc2UtaW4tY3ViaWM6ICAgICBjdWJpYy1iZXppZXIoMC41NTAsICAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuJGVhc2UtaW4tcXVhcnQ6ICAgICBjdWJpYy1iZXppZXIoMC44OTUsICAwLjAzMCwgMC42ODUsIDAuMjIwKTtcclxuJGVhc2UtaW4tcXVpbnQ6ICAgICBjdWJpYy1iZXppZXIoMC43NTUsICAwLjA1MCwgMC44NTUsIDAuMDYwKTtcclxuJGVhc2UtaW4tc2luZTogICAgICBjdWJpYy1iZXppZXIoMC40NzAsICAwLjAwMCwgMC43NDUsIDAuNzE1KTtcclxuJGVhc2UtaW4tZXhwbzogICAgICBjdWJpYy1iZXppZXIoMC45NTAsICAwLjA1MCwgMC43OTUsIDAuMDM1KTtcclxuJGVhc2UtaW4tY2lyYzogICAgICBjdWJpYy1iZXppZXIoMC42MDAsICAwLjA0MCwgMC45ODAsIDAuMzM1KTtcclxuJGVhc2UtaW4tYmFjazogICAgICBjdWJpYy1iZXppZXIoMC42MDAsIC0wLjI4MCwgMC43MzUsIDAuMDQ1KTtcclxuXHJcbiRlYXNlLW91dC1xdWFkOiAgICAgY3ViaWMtYmV6aWVyKDAuMjUwLCAgMC40NjAsIDAuNDUwLCAwLjk0MCk7XHJcbiRlYXNlLW91dC1jdWJpYzogICAgY3ViaWMtYmV6aWVyKDAuMjE1LCAgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiRlYXNlLW91dC1xdWFydDogICAgY3ViaWMtYmV6aWVyKDAuMTY1LCAgMC44NDAsIDAuNDQwLCAxLjAwMCk7XHJcbiRlYXNlLW91dC1xdWludDogICAgY3ViaWMtYmV6aWVyKDAuMjMwLCAgMS4wMDAsIDAuMzIwLCAxLjAwMCk7XHJcbiRlYXNlLW91dC1zaW5lOiAgICAgY3ViaWMtYmV6aWVyKDAuMzkwLCAgMC41NzUsIDAuNTY1LCAxLjAwMCk7XHJcbiRlYXNlLW91dC1leHBvOiAgICAgY3ViaWMtYmV6aWVyKDAuMTkwLCAgMS4wMDAsIDAuMjIwLCAxLjAwMCk7XHJcbiRlYXNlLW91dC1jaXJjOiAgICAgY3ViaWMtYmV6aWVyKDAuMDc1LCAgMC44MjAsIDAuMTY1LCAxLjAwMCk7XHJcbiRlYXNlLW91dC1iYWNrOiAgICAgY3ViaWMtYmV6aWVyKDAuMTc1LCAgMC44ODUsIDAuMzIwLCAxLjI3NSk7XHJcblxyXG4kZWFzZS1pbi1vdXQtcXVhZDogIGN1YmljLWJlemllcigwLjQ1NSwgIDAuMDMwLCAwLjUxNSwgMC45NTUpO1xyXG4kZWFzZS1pbi1vdXQtY3ViaWM6IGN1YmljLWJlemllcigwLjY0NSwgIDAuMDQ1LCAwLjM1NSwgMS4wMDApO1xyXG4kZWFzZS1pbi1vdXQtcXVhcnQ6IGN1YmljLWJlemllcigwLjc3MCwgIDAuMDAwLCAwLjE3NSwgMS4wMDApO1xyXG4kZWFzZS1pbi1vdXQtcXVpbnQ6IGN1YmljLWJlemllcigwLjg2MCwgIDAuMDAwLCAwLjA3MCwgMS4wMDApO1xyXG4kZWFzZS1pbi1vdXQtc2luZTogIGN1YmljLWJlemllcigwLjQ0NSwgIDAuMDUwLCAwLjU1MCwgMC45NTApO1xyXG4kZWFzZS1pbi1vdXQtZXhwbzogIGN1YmljLWJlemllcigxLjAwMCwgIDAuMDAwLCAwLjAwMCwgMS4wMDApO1xyXG4kZWFzZS1pbi1vdXQtY2lyYzogIGN1YmljLWJlemllcigwLjc4NSwgIDAuMTM1LCAwLjE1MCwgMC44NjApO1xyXG4kZWFzZS1pbi1vdXQtYmFjazogIGN1YmljLWJlemllcigwLjY4MCwgLTAuNTUwLCAwLjI2NSwgMS41NTApO1xyXG4iLAoJCSJAbWl4aW4gdHJpYW5nbGUoJHNpemUsICRjb2xvciwgJGRpcmVjdGlvbikge1xyXG4gICR3aWR0aDogbnRoKCRzaXplLCAxKTtcclxuICAkaGVpZ2h0OiBudGgoJHNpemUsIGxlbmd0aCgkc2l6ZSkpO1xyXG4gICRmb3JlZ3JvdW5kLWNvbG9yOiBudGgoJGNvbG9yLCAxKTtcclxuICAkYmFja2dyb3VuZC1jb2xvcjogaWYobGVuZ3RoKCRjb2xvcikgPT0gMiwgbnRoKCRjb2xvciwgMiksIHRyYW5zcGFyZW50KTtcclxuICBoZWlnaHQ6IDA7XHJcbiAgd2lkdGg6IDA7XHJcblxyXG4gIEBpZiAoJGRpcmVjdGlvbiA9PSB1cCkgb3IgKCRkaXJlY3Rpb24gPT0gZG93bikgb3IgKCRkaXJlY3Rpb24gPT0gcmlnaHQpIG9yICgkZGlyZWN0aW9uID09IGxlZnQpIHtcclxuICAgICR3aWR0aDogJHdpZHRoIC8gMjtcclxuICAgICRoZWlnaHQ6IGlmKGxlbmd0aCgkc2l6ZSkgPiAxLCAkaGVpZ2h0LCAkaGVpZ2h0LzIpO1xyXG5cclxuICAgIEBpZiAkZGlyZWN0aW9uID09IHVwIHtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogJGhlaWdodCBzb2xpZCAkZm9yZWdyb3VuZC1jb2xvcjtcclxuICAgICAgYm9yZGVyLWxlZnQ6ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcclxuICAgICAgYm9yZGVyLXJpZ2h0OiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XHJcbiAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gcmlnaHQge1xyXG4gICAgICBib3JkZXItYm90dG9tOiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XHJcbiAgICAgIGJvcmRlci1sZWZ0OiAkaGVpZ2h0IHNvbGlkICRmb3JlZ3JvdW5kLWNvbG9yO1xyXG4gICAgICBib3JkZXItdG9wOiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XHJcbiAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gZG93biB7XHJcbiAgICAgIGJvcmRlci1sZWZ0OiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XHJcbiAgICAgIGJvcmRlci1yaWdodDogJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xyXG4gICAgICBib3JkZXItdG9wOiAkaGVpZ2h0IHNvbGlkICRmb3JlZ3JvdW5kLWNvbG9yO1xyXG4gICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IGxlZnQge1xyXG4gICAgICBib3JkZXItYm90dG9tOiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XHJcbiAgICAgIGJvcmRlci1yaWdodDogJGhlaWdodCBzb2xpZCAkZm9yZWdyb3VuZC1jb2xvcjtcclxuICAgICAgYm9yZGVyLXRvcDogJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xyXG4gICAgfVxyXG4gIH0gQGVsc2UgaWYgKCRkaXJlY3Rpb24gPT0gdXAtcmlnaHQpIG9yICgkZGlyZWN0aW9uID09IHVwLWxlZnQpIHtcclxuICAgIGJvcmRlci10b3A6ICRoZWlnaHQgc29saWQgJGZvcmVncm91bmQtY29sb3I7XHJcblxyXG4gICAgQGlmICRkaXJlY3Rpb24gPT0gdXAtcmlnaHQge1xyXG4gICAgICBib3JkZXItbGVmdDogICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcclxuICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSB1cC1sZWZ0IHtcclxuICAgICAgYm9yZGVyLXJpZ2h0OiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSBpZiAoJGRpcmVjdGlvbiA9PSBkb3duLXJpZ2h0KSBvciAoJGRpcmVjdGlvbiA9PSBkb3duLWxlZnQpIHtcclxuICAgIGJvcmRlci1ib3R0b206ICRoZWlnaHQgc29saWQgJGZvcmVncm91bmQtY29sb3I7XHJcblxyXG4gICAgQGlmICRkaXJlY3Rpb24gPT0gZG93bi1yaWdodCB7XHJcbiAgICAgIGJvcmRlci1sZWZ0OiAgJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xyXG4gICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IGRvd24tbGVmdCB7XHJcbiAgICAgIGJvcmRlci1yaWdodDogJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xyXG4gICAgfVxyXG4gIH0gQGVsc2UgaWYgKCRkaXJlY3Rpb24gPT0gaW5zZXQtdXApIHtcclxuICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQtY29sb3IgJGJhY2tncm91bmQtY29sb3IgJGZvcmVncm91bmQtY29sb3I7XHJcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4gICAgYm9yZGVyLXdpZHRoOiAkaGVpZ2h0ICR3aWR0aDtcclxuICB9IEBlbHNlIGlmICgkZGlyZWN0aW9uID09IGluc2V0LWRvd24pIHtcclxuICAgIGJvcmRlci1jb2xvcjogJGZvcmVncm91bmQtY29sb3IgJGJhY2tncm91bmQtY29sb3IgJGJhY2tncm91bmQtY29sb3I7XHJcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4gICAgYm9yZGVyLXdpZHRoOiAkaGVpZ2h0ICR3aWR0aDtcclxuICB9IEBlbHNlIGlmICgkZGlyZWN0aW9uID09IGluc2V0LXJpZ2h0KSB7XHJcbiAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kLWNvbG9yICRiYWNrZ3JvdW5kLWNvbG9yICRiYWNrZ3JvdW5kLWNvbG9yICRmb3JlZ3JvdW5kLWNvbG9yO1xyXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuICAgIGJvcmRlci13aWR0aDogJHdpZHRoICRoZWlnaHQ7XHJcbiAgfSBAZWxzZSBpZiAoJGRpcmVjdGlvbiA9PSBpbnNldC1sZWZ0KSB7XHJcbiAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kLWNvbG9yICRmb3JlZ3JvdW5kLWNvbG9yICRiYWNrZ3JvdW5kLWNvbG9yICRiYWNrZ3JvdW5kLWNvbG9yO1xyXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuICAgIGJvcmRlci13aWR0aDogJHdpZHRoICRoZWlnaHQ7XHJcbiAgfVxyXG59XHJcbiIsCgkJIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vLyBQcm92aWRlcyBhbiBlYXN5IHdheSB0byBjaGFuZ2UgdGhlIGB3b3JkLXdyYXBgIHByb3BlcnR5LlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkd3JhcCBbYnJlYWstd29yZF1cclxuLy8vICAgVmFsdWUgZm9yIHRoZSBgd29yZC1icmVha2AgcHJvcGVydHkuXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXHJcbi8vLyAgIC53cmFwcGVyIHtcclxuLy8vICAgICBAaW5jbHVkZSB3b3JkLXdyYXAoYnJlYWstd29yZCk7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XHJcbi8vLyAgIC53cmFwcGVyIHtcclxuLy8vICAgICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xyXG4vLy8gICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcclxuLy8vICAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XHJcbi8vLyAgIH1cclxuXHJcbkBtaXhpbiB3b3JkLXdyYXAoJHdyYXA6IGJyZWFrLXdvcmQpIHtcclxuICBvdmVyZmxvdy13cmFwOiAkd3JhcDtcclxuICB3b3JkLXdyYXA6ICR3cmFwO1xyXG5cclxuICBAaWYgJHdyYXAgPT0gYnJlYWstd29yZCB7XHJcbiAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICB3b3JkLWJyZWFrOiAkd3JhcDtcclxuICB9XHJcbn1cclxuIiwKCQkiLy8gVGhlIGZvbGxvd2luZyBmZWF0dXJlcyBoYXZlIGJlZW4gZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IE1BSk9SIHZlcnNpb24gcmVsZWFzZVxyXG5cclxuQG1peGluIGlubGluZS1ibG9jayB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cclxuICBAd2FybiBcIlRoZSBpbmxpbmUtYmxvY2sgbWl4aW4gaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IG1ham9yIHZlcnNpb24gcmVsZWFzZVwiO1xyXG59XHJcblxyXG5AbWl4aW4gYnV0dG9uICgkc3R5bGU6IHNpbXBsZSwgJGJhc2UtY29sb3I6ICM0Mjk0ZjAsICR0ZXh0LXNpemU6IGluaGVyaXQsICRwYWRkaW5nOiA3cHggMThweCkge1xyXG5cclxuICBAaWYgdHlwZS1vZigkc3R5bGUpID09IHN0cmluZyBhbmQgdHlwZS1vZigkYmFzZS1jb2xvcikgPT0gY29sb3Ige1xyXG4gICAgQGluY2x1ZGUgYnV0dG9uc3R5bGUoJHN0eWxlLCAkYmFzZS1jb2xvciwgJHRleHQtc2l6ZSwgJHBhZGRpbmcpO1xyXG4gIH1cclxuXHJcbiAgQGlmIHR5cGUtb2YoJHN0eWxlKSA9PSBzdHJpbmcgYW5kIHR5cGUtb2YoJGJhc2UtY29sb3IpID09IG51bWJlciB7XHJcbiAgICAkcGFkZGluZzogJHRleHQtc2l6ZTtcclxuICAgICR0ZXh0LXNpemU6ICRiYXNlLWNvbG9yO1xyXG4gICAgJGJhc2UtY29sb3I6ICM0Mjk0ZjA7XHJcblxyXG4gICAgQGlmICRwYWRkaW5nID09IGluaGVyaXQge1xyXG4gICAgICAkcGFkZGluZzogN3B4IDE4cHg7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnV0dG9uc3R5bGUoJHN0eWxlLCAkYmFzZS1jb2xvciwgJHRleHQtc2l6ZSwgJHBhZGRpbmcpO1xyXG4gIH1cclxuXHJcbiAgQGlmIHR5cGUtb2YoJHN0eWxlKSA9PSBjb2xvciBhbmQgdHlwZS1vZigkYmFzZS1jb2xvcikgPT0gY29sb3Ige1xyXG4gICAgJGJhc2UtY29sb3I6ICRzdHlsZTtcclxuICAgICRzdHlsZTogc2ltcGxlO1xyXG4gICAgQGluY2x1ZGUgYnV0dG9uc3R5bGUoJHN0eWxlLCAkYmFzZS1jb2xvciwgJHRleHQtc2l6ZSwgJHBhZGRpbmcpO1xyXG4gIH1cclxuXHJcbiAgQGlmIHR5cGUtb2YoJHN0eWxlKSA9PSBjb2xvciBhbmQgdHlwZS1vZigkYmFzZS1jb2xvcikgPT0gbnVtYmVyIHtcclxuICAgICRwYWRkaW5nOiAkdGV4dC1zaXplO1xyXG4gICAgJHRleHQtc2l6ZTogJGJhc2UtY29sb3I7XHJcbiAgICAkYmFzZS1jb2xvcjogJHN0eWxlO1xyXG4gICAgJHN0eWxlOiBzaW1wbGU7XHJcblxyXG4gICAgQGlmICRwYWRkaW5nID09IGluaGVyaXQge1xyXG4gICAgICAkcGFkZGluZzogN3B4IDE4cHg7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnV0dG9uc3R5bGUoJHN0eWxlLCAkYmFzZS1jb2xvciwgJHRleHQtc2l6ZSwgJHBhZGRpbmcpO1xyXG4gIH1cclxuXHJcbiAgQGlmIHR5cGUtb2YoJHN0eWxlKSA9PSBudW1iZXIge1xyXG4gICAgJHBhZGRpbmc6ICRiYXNlLWNvbG9yO1xyXG4gICAgJHRleHQtc2l6ZTogJHN0eWxlO1xyXG4gICAgJGJhc2UtY29sb3I6ICM0Mjk0ZjA7XHJcbiAgICAkc3R5bGU6IHNpbXBsZTtcclxuXHJcbiAgICBAaWYgJHBhZGRpbmcgPT0gIzQyOTRmMCB7XHJcbiAgICAgICRwYWRkaW5nOiA3cHggMThweDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBidXR0b25zdHlsZSgkc3R5bGUsICRiYXNlLWNvbG9yLCAkdGV4dC1zaXplLCAkcGFkZGluZyk7XHJcbiAgfVxyXG5cclxuICAmOmRpc2FibGVkIHtcclxuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XHJcbiAgICBvcGFjaXR5OiAwLjU7XHJcbiAgfVxyXG5cclxuICBAd2FybiBcIlRoZSBidXR0b24gbWl4aW4gaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IG1ham9yIHZlcnNpb24gcmVsZWFzZVwiO1xyXG59XHJcblxyXG4vLyBTZWxlY3RvciBTdHlsZSBCdXR0b25cclxuQG1peGluIGJ1dHRvbnN0eWxlKCR0eXBlLCAkYi1jb2xvciwgJHQtc2l6ZSwgJHBhZCkge1xyXG4gIC8vIEdyYXlzY2FsZSBidXR0b25cclxuICBAaWYgJHR5cGUgPT0gc2ltcGxlIGFuZCAkYi1jb2xvciA9PSBncmF5c2NhbGUoJGItY29sb3IpIHtcclxuICAgIEBpbmNsdWRlIHNpbXBsZSgkYi1jb2xvciwgdHJ1ZSwgJHQtc2l6ZSwgJHBhZCk7XHJcbiAgfVxyXG5cclxuICBAaWYgJHR5cGUgPT0gc2hpbnkgYW5kICRiLWNvbG9yID09IGdyYXlzY2FsZSgkYi1jb2xvcikge1xyXG4gICAgQGluY2x1ZGUgc2hpbnkoJGItY29sb3IsIHRydWUsICR0LXNpemUsICRwYWQpO1xyXG4gIH1cclxuXHJcbiAgQGlmICR0eXBlID09IHBpbGwgYW5kICRiLWNvbG9yID09IGdyYXlzY2FsZSgkYi1jb2xvcikge1xyXG4gICAgQGluY2x1ZGUgcGlsbCgkYi1jb2xvciwgdHJ1ZSwgJHQtc2l6ZSwgJHBhZCk7XHJcbiAgfVxyXG5cclxuICBAaWYgJHR5cGUgPT0gZmxhdCBhbmQgJGItY29sb3IgPT0gZ3JheXNjYWxlKCRiLWNvbG9yKSB7XHJcbiAgICBAaW5jbHVkZSBmbGF0KCRiLWNvbG9yLCB0cnVlLCAkdC1zaXplLCAkcGFkKTtcclxuICB9XHJcblxyXG4gIC8vIENvbG9yZWQgYnV0dG9uXHJcbiAgQGlmICR0eXBlID09IHNpbXBsZSB7XHJcbiAgICBAaW5jbHVkZSBzaW1wbGUoJGItY29sb3IsIGZhbHNlLCAkdC1zaXplLCAkcGFkKTtcclxuICB9XHJcblxyXG4gIEBlbHNlIGlmICR0eXBlID09IHNoaW55IHtcclxuICAgIEBpbmNsdWRlIHNoaW55KCRiLWNvbG9yLCBmYWxzZSwgJHQtc2l6ZSwgJHBhZCk7XHJcbiAgfVxyXG5cclxuICBAZWxzZSBpZiAkdHlwZSA9PSBwaWxsIHtcclxuICAgIEBpbmNsdWRlIHBpbGwoJGItY29sb3IsIGZhbHNlLCAkdC1zaXplLCAkcGFkKTtcclxuICB9XHJcblxyXG4gIEBlbHNlIGlmICR0eXBlID09IGZsYXQge1xyXG4gICAgQGluY2x1ZGUgZmxhdCgkYi1jb2xvciwgZmFsc2UsICR0LXNpemUsICRwYWQpO1xyXG4gIH1cclxufVxyXG5cclxuLy8gU2ltcGxlIEJ1dHRvblxyXG5AbWl4aW4gc2ltcGxlKCRiYXNlLWNvbG9yLCAkZ3JheXNjYWxlOiBmYWxzZSwgJHRleHRzaXplOiBpbmhlcml0LCAkcGFkZGluZzogN3B4IDE4cHgpIHtcclxuICAkY29sb3I6ICAgICAgICAgaHNsKDAsIDAsIDEwMCUpO1xyXG4gICRib3JkZXI6ICAgICAgICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRzYXR1cmF0aW9uOiAgOSUsICAkbGlnaHRuZXNzOiAtMTQlKTtcclxuICAkaW5zZXQtc2hhZG93OiAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkc2F0dXJhdGlvbjogLTglLCAgJGxpZ2h0bmVzczogIDE1JSk7XHJcbiAgJHN0b3AtZ3JhZGllbnQ6IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246ICA5JSwgICRsaWdodG5lc3M6IC0xMSUpO1xyXG4gICR0ZXh0LXNoYWRvdzogICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRzYXR1cmF0aW9uOiAgMTUlLCAkbGlnaHRuZXNzOiAtMTglKTtcclxuXHJcbiAgQGlmIGlzLWxpZ2h0KCRiYXNlLWNvbG9yKSB7XHJcbiAgICAkY29sb3I6ICAgICAgIGhzbCgwLCAwLCAyMCUpO1xyXG4gICAgJHRleHQtc2hhZG93OiBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRzYXR1cmF0aW9uOiAxMCUsICRsaWdodG5lc3M6IDQlKTtcclxuICB9XHJcblxyXG4gIEBpZiAkZ3JheXNjYWxlID09IHRydWUge1xyXG4gICAgJGJvcmRlcjogICAgICAgIGdyYXlzY2FsZSgkYm9yZGVyKTtcclxuICAgICRpbnNldC1zaGFkb3c6ICBncmF5c2NhbGUoJGluc2V0LXNoYWRvdyk7XHJcbiAgICAkc3RvcC1ncmFkaWVudDogZ3JheXNjYWxlKCRzdG9wLWdyYWRpZW50KTtcclxuICAgICR0ZXh0LXNoYWRvdzogICBncmF5c2NhbGUoJHRleHQtc2hhZG93KTtcclxuICB9XHJcblxyXG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXI7XHJcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xyXG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgMCAkaW5zZXQtc2hhZG93O1xyXG4gIGNvbG9yOiAkY29sb3I7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIGZvbnQtc2l6ZTogJHRleHRzaXplO1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gIEBpbmNsdWRlIGxpbmVhci1ncmFkaWVudCAoJGJhc2UtY29sb3IsICRzdG9wLWdyYWRpZW50KTtcclxuICBwYWRkaW5nOiAkcGFkZGluZztcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgdGV4dC1zaGFkb3c6IDAgMXB4IDAgJHRleHQtc2hhZG93O1xyXG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XHJcblxyXG4gICY6aG92ZXI6bm90KDpkaXNhYmxlZCkge1xyXG4gICAgJGJhc2UtY29sb3ItaG92ZXI6ICAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246IC00JSwgJGxpZ2h0bmVzczogLTUlKTtcclxuICAgICRpbnNldC1zaGFkb3ctaG92ZXI6ICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRzYXR1cmF0aW9uOiAtNyUsICRsaWdodG5lc3M6ICA1JSk7XHJcbiAgICAkc3RvcC1ncmFkaWVudC1ob3ZlcjogYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkc2F0dXJhdGlvbjogIDglLCAkbGlnaHRuZXNzOiAtMTQlKTtcclxuXHJcbiAgICBAaWYgJGdyYXlzY2FsZSA9PSB0cnVlIHtcclxuICAgICAgJGJhc2UtY29sb3ItaG92ZXI6ICAgIGdyYXlzY2FsZSgkYmFzZS1jb2xvci1ob3Zlcik7XHJcbiAgICAgICRpbnNldC1zaGFkb3ctaG92ZXI6ICBncmF5c2NhbGUoJGluc2V0LXNoYWRvdy1ob3Zlcik7XHJcbiAgICAgICRzdG9wLWdyYWRpZW50LWhvdmVyOiBncmF5c2NhbGUoJHN0b3AtZ3JhZGllbnQtaG92ZXIpO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGxpbmVhci1ncmFkaWVudCAoJGJhc2UtY29sb3ItaG92ZXIsICRzdG9wLWdyYWRpZW50LWhvdmVyKTtcclxuXHJcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIDAgJGluc2V0LXNoYWRvdy1ob3ZlcjtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICB9XHJcblxyXG4gICY6YWN0aXZlOm5vdCg6ZGlzYWJsZWQpLFxyXG4gICY6Zm9jdXM6bm90KDpkaXNhYmxlZCkge1xyXG4gICAgJGJvcmRlci1hY3RpdmU6ICAgICAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246IDklLCAkbGlnaHRuZXNzOiAtMTQlKTtcclxuICAgICRpbnNldC1zaGFkb3ctYWN0aXZlOiBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRzYXR1cmF0aW9uOiA3JSwgJGxpZ2h0bmVzczogLTE3JSk7XHJcblxyXG4gICAgQGlmICRncmF5c2NhbGUgPT0gdHJ1ZSB7XHJcbiAgICAgICRib3JkZXItYWN0aXZlOiAgICAgICBncmF5c2NhbGUoJGJvcmRlci1hY3RpdmUpO1xyXG4gICAgICAkaW5zZXQtc2hhZG93LWFjdGl2ZTogZ3JheXNjYWxlKCRpbnNldC1zaGFkb3ctYWN0aXZlKTtcclxuICAgIH1cclxuXHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWFjdGl2ZTtcclxuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCA4cHggNHB4ICRpbnNldC1zaGFkb3ctYWN0aXZlLCBpbnNldCAwIDAgOHB4IDRweCAkaW5zZXQtc2hhZG93LWFjdGl2ZTtcclxuICB9XHJcbn1cclxuXHJcbi8vIFNoaW55IEJ1dHRvblxyXG5AbWl4aW4gc2hpbnkoJGJhc2UtY29sb3IsICRncmF5c2NhbGU6IGZhbHNlLCAkdGV4dHNpemU6IGluaGVyaXQsICRwYWRkaW5nOiA3cHggMThweCkge1xyXG4gICRjb2xvcjogICAgICAgICBoc2woMCwgMCwgMTAwJSk7XHJcbiAgJGJvcmRlcjogICAgICAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHJlZDogLTExNywgJGdyZWVuOiAtMTExLCAkYmx1ZTogLTgxKTtcclxuICAkYm9yZGVyLWJvdHRvbTogYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkcmVkOiAtMTI2LCAkZ3JlZW46IC0xMjcsICRibHVlOiAtMTIyKTtcclxuICAkZm91cnRoLXN0b3A6ICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkcmVkOiAtNzksICAkZ3JlZW46IC03MCwgICRibHVlOiAtNDYpO1xyXG4gICRpbnNldC1zaGFkb3c6ICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRyZWQ6ICAzNywgICRncmVlbjogIDI5LCAgJGJsdWU6ICAxMik7XHJcbiAgJHNlY29uZC1zdG9wOiAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHJlZDogLTU2LCAgJGdyZWVuOiAtNTAsICAkYmx1ZTogLTMzKTtcclxuICAkdGV4dC1zaGFkb3c6ICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkcmVkOiAtMTQwLCAkZ3JlZW46IC0xNDEsICRibHVlOiAtMTE0KTtcclxuICAkdGhpcmQtc3RvcDogICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkcmVkOiAtODYsICAkZ3JlZW46IC03NSwgICRibHVlOiAtNDgpO1xyXG5cclxuICBAaWYgaXMtbGlnaHQoJGJhc2UtY29sb3IpIHtcclxuICAgICRjb2xvcjogICAgICAgaHNsKDAsIDAsIDIwJSk7XHJcbiAgICAkdGV4dC1zaGFkb3c6IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246IDEwJSwgJGxpZ2h0bmVzczogNCUpO1xyXG4gIH1cclxuXHJcbiAgQGlmICRncmF5c2NhbGUgPT0gdHJ1ZSB7XHJcbiAgICAkYm9yZGVyOiAgICAgICAgZ3JheXNjYWxlKCRib3JkZXIpO1xyXG4gICAgJGJvcmRlci1ib3R0b206IGdyYXlzY2FsZSgkYm9yZGVyLWJvdHRvbSk7XHJcbiAgICAkZm91cnRoLXN0b3A6ICAgZ3JheXNjYWxlKCRmb3VydGgtc3RvcCk7XHJcbiAgICAkaW5zZXQtc2hhZG93OiAgZ3JheXNjYWxlKCRpbnNldC1zaGFkb3cpO1xyXG4gICAgJHNlY29uZC1zdG9wOiAgIGdyYXlzY2FsZSgkc2Vjb25kLXN0b3ApO1xyXG4gICAgJHRleHQtc2hhZG93OiAgIGdyYXlzY2FsZSgkdGV4dC1zaGFkb3cpO1xyXG4gICAgJHRoaXJkLXN0b3A6ICAgIGdyYXlzY2FsZSgkdGhpcmQtc3RvcCk7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBsaW5lYXItZ3JhZGllbnQodG9wLCAkYmFzZS1jb2xvciAwJSwgJHNlY29uZC1zdG9wIDUwJSwgJHRoaXJkLXN0b3AgNTAlLCAkZm91cnRoLXN0b3AgMTAwJSk7XHJcblxyXG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXI7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItYm90dG9tO1xyXG4gIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIDAgJGluc2V0LXNoYWRvdztcclxuICBjb2xvcjogJGNvbG9yO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBmb250LXNpemU6ICR0ZXh0c2l6ZTtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxuICBwYWRkaW5nOiAkcGFkZGluZztcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIHRleHQtc2hhZG93OiAwIC0xcHggMXB4ICR0ZXh0LXNoYWRvdztcclxuXHJcbiAgJjpob3Zlcjpub3QoOmRpc2FibGVkKSB7XHJcbiAgICAkZmlyc3Qtc3RvcC1ob3ZlcjogIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHJlZDogLTEzLCAkZ3JlZW46IC0xNSwgJGJsdWU6IC0xOCk7XHJcbiAgICAkc2Vjb25kLXN0b3AtaG92ZXI6IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHJlZDogLTY2LCAkZ3JlZW46IC02MiwgJGJsdWU6IC01MSk7XHJcbiAgICAkdGhpcmQtc3RvcC1ob3ZlcjogIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHJlZDogLTkzLCAkZ3JlZW46IC04NSwgJGJsdWU6IC02Nik7XHJcbiAgICAkZm91cnRoLXN0b3AtaG92ZXI6IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHJlZDogLTg2LCAkZ3JlZW46IC04MCwgJGJsdWU6IC02Myk7XHJcblxyXG4gICAgQGlmICRncmF5c2NhbGUgPT0gdHJ1ZSB7XHJcbiAgICAgICRmaXJzdC1zdG9wLWhvdmVyOiAgZ3JheXNjYWxlKCRmaXJzdC1zdG9wLWhvdmVyKTtcclxuICAgICAgJHNlY29uZC1zdG9wLWhvdmVyOiBncmF5c2NhbGUoJHNlY29uZC1zdG9wLWhvdmVyKTtcclxuICAgICAgJHRoaXJkLXN0b3AtaG92ZXI6ICBncmF5c2NhbGUoJHRoaXJkLXN0b3AtaG92ZXIpO1xyXG4gICAgICAkZm91cnRoLXN0b3AtaG92ZXI6IGdyYXlzY2FsZSgkZm91cnRoLXN0b3AtaG92ZXIpO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGxpbmVhci1ncmFkaWVudCh0b3AsICRmaXJzdC1zdG9wLWhvdmVyICAwJSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRzZWNvbmQtc3RvcC1ob3ZlciA1MCUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkdGhpcmQtc3RvcC1ob3ZlciAgNTAlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGZvdXJ0aC1zdG9wLWhvdmVyIDEwMCUpO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIH1cclxuXHJcbiAgJjphY3RpdmU6bm90KDpkaXNhYmxlZCksXHJcbiAgJjpmb2N1czpub3QoOmRpc2FibGVkKSB7XHJcbiAgICAkaW5zZXQtc2hhZG93LWFjdGl2ZTogYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkcmVkOiAtMTExLCAkZ3JlZW46IC0xMTYsICRibHVlOiAtMTIyKTtcclxuXHJcbiAgICBAaWYgJGdyYXlzY2FsZSA9PSB0cnVlIHtcclxuICAgICAgJGluc2V0LXNoYWRvdy1hY3RpdmU6IGdyYXlzY2FsZSgkaW5zZXQtc2hhZG93LWFjdGl2ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDIwcHggMCAkaW5zZXQtc2hhZG93LWFjdGl2ZTtcclxuICB9XHJcbn1cclxuXHJcbi8vIFBpbGwgQnV0dG9uXHJcbkBtaXhpbiBwaWxsKCRiYXNlLWNvbG9yLCAkZ3JheXNjYWxlOiBmYWxzZSwgJHRleHRzaXplOiBpbmhlcml0LCAkcGFkZGluZzogN3B4IDE4cHgpIHtcclxuICAkY29sb3I6ICAgICAgICAgaHNsKDAsIDAsIDEwMCUpO1xyXG4gICRib3JkZXItYm90dG9tOiBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6ICA4LCAkc2F0dXJhdGlvbjogLTExJSwgJGxpZ2h0bmVzczogLTI2JSk7XHJcbiAgJGJvcmRlci1zaWRlczogIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJGh1ZTogIDQsICRzYXR1cmF0aW9uOiAtMjElLCAkbGlnaHRuZXNzOiAtMjElKTtcclxuICAkYm9yZGVyLXRvcDogICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiAtMSwgJHNhdHVyYXRpb246IC0zMCUsICRsaWdodG5lc3M6IC0xNSUpO1xyXG4gICRpbnNldC1zaGFkb3c6ICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6IC0xLCAkc2F0dXJhdGlvbjogLTElLCAgJGxpZ2h0bmVzczogIDclKTtcclxuICAkc3RvcC1ncmFkaWVudDogYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiAgOCwgJHNhdHVyYXRpb246ICAxNCUsICRsaWdodG5lc3M6IC0xMCUpO1xyXG4gICR0ZXh0LXNoYWRvdzogICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6ICA1LCAkc2F0dXJhdGlvbjogLTE5JSwgJGxpZ2h0bmVzczogLTE1JSk7XHJcblxyXG4gIEBpZiBpcy1saWdodCgkYmFzZS1jb2xvcikge1xyXG4gICAgJGNvbG9yOiAgICAgICBoc2woMCwgMCwgMjAlKTtcclxuICAgICR0ZXh0LXNoYWRvdzogYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkc2F0dXJhdGlvbjogMTAlLCAkbGlnaHRuZXNzOiA0JSk7XHJcbiAgfVxyXG5cclxuICBAaWYgJGdyYXlzY2FsZSA9PSB0cnVlIHtcclxuICAgICRib3JkZXItYm90dG9tOiBncmF5c2NhbGUoJGJvcmRlci1ib3R0b20pO1xyXG4gICAgJGJvcmRlci1zaWRlczogIGdyYXlzY2FsZSgkYm9yZGVyLXNpZGVzKTtcclxuICAgICRib3JkZXItdG9wOiAgICBncmF5c2NhbGUoJGJvcmRlci10b3ApO1xyXG4gICAgJGluc2V0LXNoYWRvdzogIGdyYXlzY2FsZSgkaW5zZXQtc2hhZG93KTtcclxuICAgICRzdG9wLWdyYWRpZW50OiBncmF5c2NhbGUoJHN0b3AtZ3JhZGllbnQpO1xyXG4gICAgJHRleHQtc2hhZG93OiAgIGdyYXlzY2FsZSgkdGV4dC1zaGFkb3cpO1xyXG4gIH1cclxuXHJcbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci10b3A7XHJcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLXRvcCAkYm9yZGVyLXNpZGVzICRib3JkZXItYm90dG9tO1xyXG4gIGJvcmRlci1yYWRpdXM6IDE2cHg7XHJcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCAwICRpbnNldC1zaGFkb3c7XHJcbiAgY29sb3I6ICRjb2xvcjtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgZm9udC1zaXplOiAkdGV4dHNpemU7XHJcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICBsaW5lLWhlaWdodDogMTtcclxuICBAaW5jbHVkZSBsaW5lYXItZ3JhZGllbnQgKCRiYXNlLWNvbG9yLCAkc3RvcC1ncmFkaWVudCk7XHJcbiAgcGFkZGluZzogJHBhZGRpbmc7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB0ZXh0LXNoYWRvdzogMCAtMXB4IDFweCAkdGV4dC1zaGFkb3c7XHJcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcclxuXHJcbiAgJjpob3Zlcjpub3QoOmRpc2FibGVkKSB7XHJcbiAgICAkYmFzZS1jb2xvci1ob3ZlcjogICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGxpZ2h0bmVzczogLTQuNSUpO1xyXG4gICAgJGJvcmRlci1ib3R0b206ICAgICAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJGh1ZTogIDgsICRzYXR1cmF0aW9uOiAgMTMuNSUsICRsaWdodG5lc3M6IC0zMiUpO1xyXG4gICAgJGJvcmRlci1zaWRlczogICAgICAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJGh1ZTogIDQsICRzYXR1cmF0aW9uOiAtMiUsICAgICRsaWdodG5lc3M6IC0yNyUpO1xyXG4gICAgJGJvcmRlci10b3A6ICAgICAgICAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJGh1ZTogLTEsICRzYXR1cmF0aW9uOiAtMTclLCAgICRsaWdodG5lc3M6IC0yMSUpO1xyXG4gICAgJGluc2V0LXNoYWRvdy1ob3ZlcjogIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgICAgICAgICAgICRzYXR1cmF0aW9uOiAtMSUsICAgICRsaWdodG5lc3M6ICAzJSk7XHJcbiAgICAkc3RvcC1ncmFkaWVudC1ob3ZlcjogYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiAgOCwgJHNhdHVyYXRpb246IC00JSwgICAgJGxpZ2h0bmVzczogLTE1LjUlKTtcclxuICAgICR0ZXh0LXNoYWRvdy1ob3ZlcjogICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6ICA1LCAkc2F0dXJhdGlvbjogLTUlLCAgICAkbGlnaHRuZXNzOiAtMjIlKTtcclxuXHJcbiAgICBAaWYgJGdyYXlzY2FsZSA9PSB0cnVlIHtcclxuICAgICAgJGJhc2UtY29sb3ItaG92ZXI6ICAgIGdyYXlzY2FsZSgkYmFzZS1jb2xvci1ob3Zlcik7XHJcbiAgICAgICRib3JkZXItYm90dG9tOiAgICAgICBncmF5c2NhbGUoJGJvcmRlci1ib3R0b20pO1xyXG4gICAgICAkYm9yZGVyLXNpZGVzOiAgICAgICAgZ3JheXNjYWxlKCRib3JkZXItc2lkZXMpO1xyXG4gICAgICAkYm9yZGVyLXRvcDogICAgICAgICAgZ3JheXNjYWxlKCRib3JkZXItdG9wKTtcclxuICAgICAgJGluc2V0LXNoYWRvdy1ob3ZlcjogIGdyYXlzY2FsZSgkaW5zZXQtc2hhZG93LWhvdmVyKTtcclxuICAgICAgJHN0b3AtZ3JhZGllbnQtaG92ZXI6IGdyYXlzY2FsZSgkc3RvcC1ncmFkaWVudC1ob3Zlcik7XHJcbiAgICAgICR0ZXh0LXNoYWRvdy1ob3ZlcjogICBncmF5c2NhbGUoJHRleHQtc2hhZG93LWhvdmVyKTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBsaW5lYXItZ3JhZGllbnQgKCRiYXNlLWNvbG9yLWhvdmVyLCAkc3RvcC1ncmFkaWVudC1ob3Zlcik7XHJcblxyXG4gICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItdG9wO1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLXRvcCAkYm9yZGVyLXNpZGVzICRib3JkZXItYm90dG9tO1xyXG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCAwICRpbnNldC1zaGFkb3ctaG92ZXI7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB0ZXh0LXNoYWRvdzogMCAtMXB4IDFweCAkdGV4dC1zaGFkb3ctaG92ZXI7XHJcbiAgfVxyXG5cclxuICAmOmFjdGl2ZTpub3QoOmRpc2FibGVkKSxcclxuICAmOmZvY3VzOm5vdCg6ZGlzYWJsZWQpIHtcclxuICAgICRhY3RpdmUtY29sb3I6ICAgICAgICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiA0LCAgJHNhdHVyYXRpb246IC0xMiUsICAkbGlnaHRuZXNzOiAtMTAlKTtcclxuICAgICRib3JkZXItYWN0aXZlOiAgICAgICAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiA2LCAgJHNhdHVyYXRpb246IC0yLjUlLCAkbGlnaHRuZXNzOiAtMzAlKTtcclxuICAgICRib3JkZXItYm90dG9tLWFjdGl2ZTogYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiAxMSwgJHNhdHVyYXRpb246ICA2JSwgICAkbGlnaHRuZXNzOiAtMzElKTtcclxuICAgICRpbnNldC1zaGFkb3ctYWN0aXZlOiAgYWRqdXN0LWNvbG9yKCRiYXNlLWNvbG9yLCAkaHVlOiA5LCAgJHNhdHVyYXRpb246ICAyJSwgICAkbGlnaHRuZXNzOiAtMjEuNSUpO1xyXG4gICAgJHRleHQtc2hhZG93LWFjdGl2ZTogICBhZGp1c3QtY29sb3IoJGJhc2UtY29sb3IsICRodWU6IDUsICAkc2F0dXJhdGlvbjogLTEyJSwgICRsaWdodG5lc3M6IC0yMS41JSk7XHJcblxyXG4gICAgQGlmICRncmF5c2NhbGUgPT0gdHJ1ZSB7XHJcbiAgICAgICRhY3RpdmUtY29sb3I6ICAgICAgICAgZ3JheXNjYWxlKCRhY3RpdmUtY29sb3IpO1xyXG4gICAgICAkYm9yZGVyLWFjdGl2ZTogICAgICAgIGdyYXlzY2FsZSgkYm9yZGVyLWFjdGl2ZSk7XHJcbiAgICAgICRib3JkZXItYm90dG9tLWFjdGl2ZTogZ3JheXNjYWxlKCRib3JkZXItYm90dG9tLWFjdGl2ZSk7XHJcbiAgICAgICRpbnNldC1zaGFkb3ctYWN0aXZlOiAgZ3JheXNjYWxlKCRpbnNldC1zaGFkb3ctYWN0aXZlKTtcclxuICAgICAgJHRleHQtc2hhZG93LWFjdGl2ZTogICBncmF5c2NhbGUoJHRleHQtc2hhZG93LWFjdGl2ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgYmFja2dyb3VuZDogJGFjdGl2ZS1jb2xvcjtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItYWN0aXZlO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItYm90dG9tLWFjdGl2ZTtcclxuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCA2cHggM3B4ICRpbnNldC1zaGFkb3ctYWN0aXZlO1xyXG4gICAgdGV4dC1zaGFkb3c6IDAgLTFweCAxcHggJHRleHQtc2hhZG93LWFjdGl2ZTtcclxuICB9XHJcbn1cclxuXHJcbi8vIEZsYXQgQnV0dG9uXHJcbkBtaXhpbiBmbGF0KCRiYXNlLWNvbG9yLCAkZ3JheXNjYWxlOiBmYWxzZSwgJHRleHRzaXplOiBpbmhlcml0LCAkcGFkZGluZzogN3B4IDE4cHgpIHtcclxuICAkY29sb3I6ICAgICAgICAgaHNsKDAsIDAsIDEwMCUpO1xyXG5cclxuICBAaWYgaXMtbGlnaHQoJGJhc2UtY29sb3IpIHtcclxuICAgICRjb2xvcjogICAgICAgaHNsKDAsIDAsIDIwJSk7XHJcbiAgfVxyXG5cclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFzZS1jb2xvcjtcclxuICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIGNvbG9yOiAkY29sb3I7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIGZvbnQtc2l6ZTogJHRleHRzaXplO1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xyXG5cclxuICAmOmhvdmVyOm5vdCg6ZGlzYWJsZWQpe1xyXG4gICAgJGJhc2UtY29sb3ItaG92ZXI6ICAgIGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246IDQlLCAkbGlnaHRuZXNzOiA1JSk7XHJcblxyXG4gICAgQGlmICRncmF5c2NhbGUgPT0gdHJ1ZSB7XHJcbiAgICAgICRiYXNlLWNvbG9yLWhvdmVyOiBncmF5c2NhbGUoJGJhc2UtY29sb3ItaG92ZXIpO1xyXG4gICAgfVxyXG5cclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYXNlLWNvbG9yLWhvdmVyO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIH1cclxuXHJcbiAgJjphY3RpdmU6bm90KDpkaXNhYmxlZCksXHJcbiAgJjpmb2N1czpub3QoOmRpc2FibGVkKSB7XHJcbiAgICAkYmFzZS1jb2xvci1hY3RpdmU6IGFkanVzdC1jb2xvcigkYmFzZS1jb2xvciwgJHNhdHVyYXRpb246IC00JSwgJGxpZ2h0bmVzczogLTUlKTtcclxuXHJcbiAgICBAaWYgJGdyYXlzY2FsZSA9PSB0cnVlIHtcclxuICAgICAgJGJhc2UtY29sb3ItYWN0aXZlOiBncmF5c2NhbGUoJGJhc2UtY29sb3ItYWN0aXZlKTtcclxuICAgIH1cclxuXHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFzZS1jb2xvci1hY3RpdmU7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBGbGV4aWJsZSBncmlkXHJcbkBmdW5jdGlvbiBmbGV4LWdyaWQoJGNvbHVtbnMsICRjb250YWluZXItY29sdW1uczogJGZnLW1heC1jb2x1bW5zKSB7XHJcbiAgJHdpZHRoOiAkY29sdW1ucyAqICRmZy1jb2x1bW4gKyAoJGNvbHVtbnMgLSAxKSAqICRmZy1ndXR0ZXI7XHJcbiAgJGNvbnRhaW5lci13aWR0aDogJGNvbnRhaW5lci1jb2x1bW5zICogJGZnLWNvbHVtbiArICgkY29udGFpbmVyLWNvbHVtbnMgLSAxKSAqICRmZy1ndXR0ZXI7XHJcbiAgQHJldHVybiBwZXJjZW50YWdlKCR3aWR0aCAvICRjb250YWluZXItd2lkdGgpO1xyXG5cclxuICBAd2FybiBcIlRoZSBmbGV4LWdyaWQgZnVuY3Rpb24gaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IG1ham9yIHZlcnNpb24gcmVsZWFzZVwiO1xyXG59XHJcblxyXG4vLyBGbGV4aWJsZSBndXR0ZXJcclxuQGZ1bmN0aW9uIGZsZXgtZ3V0dGVyKCRjb250YWluZXItY29sdW1uczogJGZnLW1heC1jb2x1bW5zLCAkZ3V0dGVyOiAkZmctZ3V0dGVyKSB7XHJcbiAgJGNvbnRhaW5lci13aWR0aDogJGNvbnRhaW5lci1jb2x1bW5zICogJGZnLWNvbHVtbiArICgkY29udGFpbmVyLWNvbHVtbnMgLSAxKSAqICRmZy1ndXR0ZXI7XHJcbiAgQHJldHVybiBwZXJjZW50YWdlKCRndXR0ZXIgLyAkY29udGFpbmVyLXdpZHRoKTtcclxuXHJcbiAgQHdhcm4gXCJUaGUgZmxleC1ndXR0ZXIgZnVuY3Rpb24gaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IG1ham9yIHZlcnNpb24gcmVsZWFzZVwiO1xyXG59XHJcblxyXG5AZnVuY3Rpb24gZ3JpZC13aWR0aCgkbikge1xyXG4gIEByZXR1cm4gJG4gKiAkZ3ctY29sdW1uICsgKCRuIC0gMSkgKiAkZ3ctZ3V0dGVyO1xyXG5cclxuICBAd2FybiBcIlRoZSBncmlkLXdpZHRoIGZ1bmN0aW9uIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgbmV4dCBtYWpvciB2ZXJzaW9uIHJlbGVhc2VcIjtcclxufVxyXG5cclxuQGZ1bmN0aW9uIGdvbGRlbi1yYXRpbygkdmFsdWUsICRpbmNyZW1lbnQpIHtcclxuICBAcmV0dXJuIG1vZHVsYXItc2NhbGUoJGluY3JlbWVudCwgJHZhbHVlLCAkcmF0aW86ICRnb2xkZW4pO1xyXG5cclxuICBAd2FybiBcIlRoZSBnb2xkZW4tcmF0aW8gZnVuY3Rpb24gaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IG1ham9yIHZlcnNpb24gcmVsZWFzZS4gUGxlYXNlIHVzZSB0aGUgbW9kdWxhci1zY2FsZSBmdW5jdGlvbiwgaW5zdGVhZC5cIjtcclxufVxyXG5cclxuQG1peGluIGJveC1zaXppbmcoJGJveCkge1xyXG4gIEBpbmNsdWRlIHByZWZpeGVyKGJveC1zaXppbmcsICRib3gsIHdlYmtpdCBtb3ogc3BlYyk7XHJcblxyXG4gIEB3YXJuIFwiVGhlIGJveC1zaXppbmcgbWl4aW4gaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IG1ham9yIHZlcnNpb24gcmVsZWFzZS4gVGhpcyBwcm9wZXJ0eSBjYW4gbm93IGJlIHVzZWQgdW4tcHJlZml4ZWQuXCI7XHJcbn1cclxuIiwKCQkiLy8gTmVhdCAxLjcuNFxyXG4vLyBodHRwOi8vbmVhdC5ib3VyYm9uLmlvXHJcbi8vIENvcHlyaWdodCAyMDEyLTIwMTUgdGhvdWdodGJvdCwgaW5jLlxyXG4vLyBNSVQgTGljZW5zZVxyXG5cclxuLy8gSGVscGVyc1xyXG5AaW1wb3J0IFwibmVhdC1oZWxwZXJzXCI7XHJcblxyXG4vLyBHcmlkXHJcbkBpbXBvcnQgXCJncmlkL3ByaXZhdGVcIjtcclxuQGltcG9ydCBcImdyaWQvYm94LXNpemluZ1wiO1xyXG5AaW1wb3J0IFwiZ3JpZC9vbWVnYVwiO1xyXG5AaW1wb3J0IFwiZ3JpZC9vdXRlci1jb250YWluZXJcIjtcclxuQGltcG9ydCBcImdyaWQvc3Bhbi1jb2x1bW5zXCI7XHJcbkBpbXBvcnQgXCJncmlkL3Jvd1wiO1xyXG5AaW1wb3J0IFwiZ3JpZC9zaGlmdFwiO1xyXG5AaW1wb3J0IFwiZ3JpZC9wYWRcIjtcclxuQGltcG9ydCBcImdyaWQvZmlsbC1wYXJlbnRcIjtcclxuQGltcG9ydCBcImdyaWQvbWVkaWFcIjtcclxuQGltcG9ydCBcImdyaWQvdG8tZGVwcmVjYXRlXCI7XHJcbkBpbXBvcnQgXCJncmlkL3Zpc3VhbC1ncmlkXCI7XHJcbkBpbXBvcnQgXCJncmlkL2Rpc3BsYXktY29udGV4dFwiO1xyXG5AaW1wb3J0IFwiZ3JpZC9kaXJlY3Rpb24tY29udGV4dFwiO1xyXG4iLAoJCSIvLyBGdW5jdGlvbnNcclxuQGltcG9ydCBcImZ1bmN0aW9ucy9wcml2YXRlXCI7XHJcbkBpbXBvcnQgXCJmdW5jdGlvbnMvbmV3LWJyZWFrcG9pbnRcIjtcclxuXHJcbi8vIFNldHRpbmdzXHJcbkBpbXBvcnQgXCJzZXR0aW5ncy9ncmlkXCI7XHJcbkBpbXBvcnQgXCJzZXR0aW5ncy92aXN1YWwtZ3JpZFwiO1xyXG5AaW1wb3J0IFwic2V0dGluZ3MvZGlzYWJsZS13YXJuaW5nc1wiO1xyXG4iLAoJCSIvLyBOb3QgZnVuY3Rpb24gZm9yIExpYnNhc3MgY29tcGF0aWJpbGl0eVxyXG4vLyBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9saWJzYXNzL2lzc3Vlcy8zNjhcclxuQGZ1bmN0aW9uIGlzLW5vdCgkdmFsdWUpIHtcclxuICBAcmV0dXJuIGlmKCR2YWx1ZSwgZmFsc2UsIHRydWUpO1xyXG59XHJcblxyXG4vLyBDaGVja3MgaWYgYSBudW1iZXIgaXMgZXZlblxyXG5AZnVuY3Rpb24gaXMtZXZlbigkaW50KSB7XHJcbiAgQHJldHVybiAkaW50ICUgMiA9PSAwO1xyXG59XHJcblxyXG4vLyBDaGVja3MgaWYgYW4gZWxlbWVudCBiZWxvbmdzIHRvIGEgbGlzdCBvciBub3RcclxuQGZ1bmN0aW9uIGJlbG9uZ3MtdG8oJHRlc3RlZC1pdGVtLCAkbGlzdCkge1xyXG4gIEByZXR1cm4gaXMtbm90KG5vdC1iZWxvbmdzLXRvKCR0ZXN0ZWQtaXRlbSwgJGxpc3QpKTtcclxufVxyXG5cclxuQGZ1bmN0aW9uIG5vdC1iZWxvbmdzLXRvKCR0ZXN0ZWQtaXRlbSwgJGxpc3QpIHtcclxuICBAcmV0dXJuIGlzLW5vdChpbmRleCgkbGlzdCwgJHRlc3RlZC1pdGVtKSk7XHJcbn1cclxuXHJcbi8vIENvbnRhaW5zIGRpc3BsYXkgdmFsdWVcclxuQGZ1bmN0aW9uIGNvbnRhaW5zLWRpc3BsYXktdmFsdWUoJHF1ZXJ5KSB7XHJcbiAgQHJldHVybiBiZWxvbmdzLXRvKHRhYmxlLCAkcXVlcnkpXHJcbiAgICAgICBvciBiZWxvbmdzLXRvKGJsb2NrLCAkcXVlcnkpXHJcbiAgICAgICBvciBiZWxvbmdzLXRvKGlubGluZS1ibG9jaywgJHF1ZXJ5KVxyXG4gICAgICAgb3IgYmVsb25ncy10byhpbmxpbmUsICRxdWVyeSk7XHJcbn1cclxuXHJcbi8vIFBhcnNlcyB0aGUgZmlyc3QgYXJndW1lbnQgb2Ygc3Bhbi1jb2x1bW5zKClcclxuQGZ1bmN0aW9uIGNvbnRhaW5lci1zcGFuKCRzcGFuOiAkc3Bhbikge1xyXG4gIEBpZiBsZW5ndGgoJHNwYW4pID09IDMge1xyXG4gICAgJGNvbnRhaW5lci1jb2x1bW5zOiBudGgoJHNwYW4sIDMpO1xyXG4gICAgQHJldHVybiAkY29udGFpbmVyLWNvbHVtbnM7XHJcbiAgfSBAZWxzZSBpZiBsZW5ndGgoJHNwYW4pID09IDIge1xyXG4gICAgJGNvbnRhaW5lci1jb2x1bW5zOiBudGgoJHNwYW4sIDIpO1xyXG4gICAgQHJldHVybiAkY29udGFpbmVyLWNvbHVtbnM7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICRncmlkLWNvbHVtbnM7XHJcbn1cclxuXHJcbkBmdW5jdGlvbiBjb250YWluZXItc2hpZnQoJHNoaWZ0OiAkc2hpZnQpIHtcclxuICAkcGFyZW50LWNvbHVtbnM6ICRncmlkLWNvbHVtbnMgIWRlZmF1bHQgIWdsb2JhbDtcclxuXHJcbiAgQGlmIGxlbmd0aCgkc2hpZnQpID09IDMge1xyXG4gICAgJGNvbnRhaW5lci1jb2x1bW5zOiBudGgoJHNoaWZ0LCAzKTtcclxuICAgIEByZXR1cm4gJGNvbnRhaW5lci1jb2x1bW5zO1xyXG4gIH0gQGVsc2UgaWYgbGVuZ3RoKCRzaGlmdCkgPT0gMiB7XHJcbiAgICAkY29udGFpbmVyLWNvbHVtbnM6IG50aCgkc2hpZnQsIDIpO1xyXG4gICAgQHJldHVybiAkY29udGFpbmVyLWNvbHVtbnM7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICRwYXJlbnQtY29sdW1ucztcclxufVxyXG5cclxuLy8gR2VuZXJhdGVzIGEgc3RyaXBlZCBiYWNrZ3JvdW5kXHJcbkBmdW5jdGlvbiBncmFkaWVudC1zdG9wcygkZ3JpZC1jb2x1bW5zLCAkY29sb3I6ICR2aXN1YWwtZ3JpZC1jb2xvcikge1xyXG4gICR0cmFuc3BhcmVudDogdHJhbnNwYXJlbnQ7XHJcblxyXG4gICRjb2x1bW4td2lkdGg6IGZsZXgtZ3JpZCgxLCAkZ3JpZC1jb2x1bW5zKTtcclxuICAkZ3V0dGVyLXdpZHRoOiBmbGV4LWd1dHRlcigkZ3JpZC1jb2x1bW5zKTtcclxuICAkY29sdW1uLW9mZnNldDogJGNvbHVtbi13aWR0aDtcclxuXHJcbiAgJHZhbHVlczogKCR0cmFuc3BhcmVudCAwLCAkY29sb3IgMCk7XHJcblxyXG4gIEBmb3IgJGkgZnJvbSAxIHRvICRncmlkLWNvbHVtbnMqMiB7XHJcbiAgICBAaWYgaXMtZXZlbigkaSkge1xyXG4gICAgICAkdmFsdWVzOiBhcHBlbmQoJHZhbHVlcywgJHRyYW5zcGFyZW50ICRjb2x1bW4tb2Zmc2V0LCBjb21tYSk7XHJcbiAgICAgICR2YWx1ZXM6IGFwcGVuZCgkdmFsdWVzLCAkY29sb3IgJGNvbHVtbi1vZmZzZXQsIGNvbW1hKTtcclxuICAgICAgJGNvbHVtbi1vZmZzZXQ6ICRjb2x1bW4tb2Zmc2V0ICsgJGNvbHVtbi13aWR0aDtcclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICAkdmFsdWVzOiBhcHBlbmQoJHZhbHVlcywgJGNvbG9yICRjb2x1bW4tb2Zmc2V0LCBjb21tYSk7XHJcbiAgICAgICR2YWx1ZXM6IGFwcGVuZCgkdmFsdWVzLCAkdHJhbnNwYXJlbnQgJGNvbHVtbi1vZmZzZXQsIGNvbW1hKTtcclxuICAgICAgJGNvbHVtbi1vZmZzZXQ6ICRjb2x1bW4tb2Zmc2V0ICsgJGd1dHRlci13aWR0aDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEByZXR1cm4gJHZhbHVlcztcclxufVxyXG5cclxuLy8gTGF5b3V0IGRpcmVjdGlvblxyXG5AZnVuY3Rpb24gZ2V0LWRpcmVjdGlvbigkbGF5b3V0LCAkZGVmYXVsdCkge1xyXG4gICRkaXJlY3Rpb246IG51bGw7XHJcblxyXG4gIEBpZiB0by11cHBlci1jYXNlKCRsYXlvdXQpID09IFwiTFRSXCIgb3IgdG8tdXBwZXItY2FzZSgkbGF5b3V0KSA9PSBcIlJUTFwiIHtcclxuICAgICRkaXJlY3Rpb246IGRpcmVjdGlvbi1mcm9tLWxheW91dCgkbGF5b3V0KTtcclxuICB9IEBlbHNlIHtcclxuICAgICRkaXJlY3Rpb246IGRpcmVjdGlvbi1mcm9tLWxheW91dCgkZGVmYXVsdCk7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICRkaXJlY3Rpb247XHJcbn1cclxuXHJcbkBmdW5jdGlvbiBkaXJlY3Rpb24tZnJvbS1sYXlvdXQoJGxheW91dCkge1xyXG4gICRkaXJlY3Rpb246IG51bGw7XHJcblxyXG4gIEBpZiB0by11cHBlci1jYXNlKCRsYXlvdXQpID09IFwiTFRSXCIge1xyXG4gICAgJGRpcmVjdGlvbjogcmlnaHQ7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICAkZGlyZWN0aW9uOiBsZWZ0O1xyXG4gIH1cclxuXHJcbiAgQHJldHVybiAkZGlyZWN0aW9uO1xyXG59XHJcblxyXG5AZnVuY3Rpb24gZ2V0LW9wcG9zaXRlLWRpcmVjdGlvbigkZGlyZWN0aW9uKSB7XHJcbiAgJG9wcG9zaXRlLWRpcmVjdGlvbjogbGVmdDtcclxuXHJcbiAgQGlmICRkaXJlY3Rpb24gPT0gXCJsZWZ0XCIge1xyXG4gICAgJG9wcG9zaXRlLWRpcmVjdGlvbjogcmlnaHQ7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICRvcHBvc2l0ZS1kaXJlY3Rpb247XHJcbn1cclxuIiwKCQkiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIFJldHVybnMgYSBtZWRpYSBjb250ZXh0IChtZWRpYSBxdWVyeSAvIGdyaWQgY29udGV4dCkgdGhhdCBjYW4gYmUgc3RvcmVkIGluIGEgdmFyaWFibGUgYW5kIHBhc3NlZCB0byBgbWVkaWEoKWAgYXMgYSBzaW5nbGUta2V5d29yZCBhcmd1bWVudC4gTWVkaWEgY29udGV4dHMgZGVmaW5lZCB1c2luZyBgbmV3LWJyZWFrcG9pbnRgIGFyZSB1c2VkIGJ5IHRoZSB2aXN1YWwgZ3JpZCwgYXMgbG9uZyBhcyB0aGV5IGFyZSBkZWZpbmVkIGJlZm9yZSBpbXBvcnRpbmcgTmVhdC5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge0xpc3R9ICRxdWVyeVxyXG4vLy8gICBBIGxpc3Qgb2YgbWVkaWEgcXVlcnkgZmVhdHVyZXMgYW5kIHZhbHVlcy4gRWFjaCBgJGZlYXR1cmVgIHNob3VsZCBoYXZlIGEgY29ycmVzcG9uZGluZyBgJHZhbHVlYC5cclxuLy8vXHJcbi8vLyAgIElmIHRoZXJlIGlzIG9ubHkgYSBzaW5nbGUgYCR2YWx1ZWAgaW4gYCRxdWVyeWAsIGAkZGVmYXVsdC1mZWF0dXJlYCBpcyBnb2luZyB0byBiZSB1c2VkLlxyXG4vLy9cclxuLy8vICAgVGhlIG51bWJlciBvZiB0b3RhbCBjb2x1bW5zIGluIHRoZSBncmlkIGNhbiBiZSBzZXQgYnkgcGFzc2luZyBgJGNvbHVtbnNgIGF0IHRoZSBlbmQgb2YgdGhlIGxpc3QgKG92ZXJyaWRlcyBgJHRvdGFsLWNvbHVtbnNgKS4gRm9yIGEgbGlzdCBvZiB2YWxpZCB2YWx1ZXMgZm9yIGAkZmVhdHVyZWAsIGNsaWNrIFtoZXJlXShodHRwOi8vd3d3LnczLm9yZy9UUi9jc3MzLW1lZGlhcXVlcmllcy8jbWVkaWExKS5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge051bWJlciAodW5pdGxlc3MpfSAkdG90YWwtY29sdW1ucyBbJGdyaWQtY29sdW1uc11cclxuLy8vICAgLSBOdW1iZXIgb2YgY29sdW1ucyB0byB1c2UgaW4gdGhlIG5ldyBncmlkIGNvbnRleHQuIENhbiBiZSBzZXQgYXMgYSBzaG9ydGhhbmQgaW4gdGhlIGZpcnN0IHBhcmFtZXRlci5cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2VcclxuLy8vICAgJG1vYmlsZTogbmV3LWJyZWFrcG9pbnQobWF4LXdpZHRoIDQ4MHB4IDQpO1xyXG4vLy9cclxuLy8vICAgLmVsZW1lbnQge1xyXG4vLy8gICAgIEBpbmNsdWRlIG1lZGlhKCRtb2JpbGUpIHtcclxuLy8vICAgICAgIEBpbmNsdWRlIHNwYW4tY29sdW1ucyg0KTtcclxuLy8vICAgICB9XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XHJcbi8vLyAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XHJcbi8vLyAgICAgLmVsZW1lbnQge1xyXG4vLy8gICAgICAgZGlzcGxheTogYmxvY2s7XHJcbi8vLyAgICAgICBmbG9hdDogbGVmdDtcclxuLy8vICAgICAgIG1hcmdpbi1yaWdodDogNy40MjI5NyU7XHJcbi8vLyAgICAgICB3aWR0aDogMTAwJTtcclxuLy8vICAgICB9XHJcbi8vLyAgICAgLmVsZW1lbnQ6bGFzdC1jaGlsZCB7XHJcbi8vLyAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbi8vLyAgICAgfVxyXG4vLy8gICB9XHJcblxyXG5AZnVuY3Rpb24gbmV3LWJyZWFrcG9pbnQoJHF1ZXJ5OiAkZmVhdHVyZSAkdmFsdWUgJGNvbHVtbnMsICR0b3RhbC1jb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XHJcbiAgQGlmIGxlbmd0aCgkcXVlcnkpID09IDEge1xyXG4gICAgJHF1ZXJ5OiAkZGVmYXVsdC1mZWF0dXJlIG50aCgkcXVlcnksIDEpICR0b3RhbC1jb2x1bW5zO1xyXG4gIH0gQGVsc2UgaWYgaXMtZXZlbihsZW5ndGgoJHF1ZXJ5KSkge1xyXG4gICAgJHF1ZXJ5OiBhcHBlbmQoJHF1ZXJ5LCAkdG90YWwtY29sdW1ucyk7XHJcbiAgfVxyXG5cclxuICBAaWYgaXMtbm90KGJlbG9uZ3MtdG8oJHF1ZXJ5LCAkdmlzdWFsLWdyaWQtYnJlYWtwb2ludHMpKSB7XHJcbiAgICAkdmlzdWFsLWdyaWQtYnJlYWtwb2ludHM6IGFwcGVuZCgkdmlzdWFsLWdyaWQtYnJlYWtwb2ludHMsICRxdWVyeSwgY29tbWEpICFnbG9iYWw7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICRxdWVyeTtcclxufVxyXG4iLAoJCSJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLy8gU2V0cyB0aGUgcmVsYXRpdmUgd2lkdGggb2YgYSBzaW5nbGUgZ3JpZCBjb2x1bW4uIFRoZSB1bml0IHVzZWQgc2hvdWxkIGJlIHRoZSBzYW1lIG9uZSB1c2VkIHRvIGRlZmluZSBgJGd1dHRlcmAuIFRvIGxlYXJuIG1vcmUgYWJvdXQgYG1vZHVsYXItc2NhbGUoKWAgc2VlIFtCb3VyYm9uIGRvY3NdKGh0dHA6Ly9ib3VyYm9uLmlvL2RvY3MvI21vZHVsYXItc2NhbGUpLiBTZXQgd2l0aCBhIGAhZ2xvYmFsYCBmbGFnLlxyXG4vLy9cclxuLy8vIEB0eXBlIE51bWJlciAoVW5pdClcclxuXHJcbiRjb2x1bW46IG1vZHVsYXItc2NhbGUoMywgMWVtLCAkZ29sZGVuKSAhZGVmYXVsdDtcclxuXHJcbi8vLyBTZXRzIHRoZSByZWxhdGl2ZSB3aWR0aCBvZiBhIHNpbmdsZSBncmlkIGd1dHRlci4gVGhlIHVuaXQgdXNlZCBzaG91bGQgYmUgdGhlIHNhbWUgb25lIHVzZWQgdG8gZGVmaW5lIGAkY29sdW1uYC4gVG8gbGVhcm4gbW9yZSBhYm91dCBgbW9kdWxhci1zY2FsZSgpYCBzZWUgW0JvdXJib24gZG9jc10oaHR0cDovL2JvdXJib24uaW8vZG9jcy8jbW9kdWxhci1zY2FsZSkuIFNldCB3aXRoIHRoZSBgIWdsb2JhbGAgZmxhZy5cclxuLy8vXHJcbi8vLyBAdHlwZSBOdW1iZXIgKFVuaXQpXHJcblxyXG4kZ3V0dGVyOiBtb2R1bGFyLXNjYWxlKDEsIDFlbSwgJGdvbGRlbikgIWRlZmF1bHQ7XHJcblxyXG4vLy8gU2V0cyB0aGUgdG90YWwgbnVtYmVyIG9mIGNvbHVtbnMgaW4gdGhlIGdyaWQuIEl0cyB2YWx1ZSBjYW4gYmUgb3ZlcnJpZGRlbiBpbnNpZGUgYSBtZWRpYSBxdWVyeSB1c2luZyB0aGUgYG1lZGlhKClgIG1peGluLiBTZXQgd2l0aCB0aGUgYCFnbG9iYWxgIGZsYWcuXHJcbi8vL1xyXG4vLy8gQHR5cGUgTnVtYmVyIChVbml0bGVzcylcclxuXHJcbiRncmlkLWNvbHVtbnM6IDEyICFkZWZhdWx0O1xyXG5cclxuLy8vIFNldHMgdGhlIG1heC13aWR0aCBwcm9wZXJ0eSBvZiB0aGUgZWxlbWVudCB0aGF0IGluY2x1ZGVzIGBvdXRlci1jb250YWluZXIoKWAuIFNldCB3aXRoIHRoZSBgIWdsb2JhbGAgZmxhZy5cclxuLy8vXHJcbi8vLyBAdHlwZSBOdW1iZXIgKFVuaXQpXHJcbi8vL1xyXG4kbWF4LXdpZHRoOiAxMjAwcHggIWRlZmF1bHQ7XHJcblxyXG4vLy8gV2hlbiBzZXQgdG8gdHJ1ZSwgaXQgc2V0cyB0aGUgYm94LXNpemluZyBwcm9wZXJ0eSBvZiBhbGwgZWxlbWVudHMgdG8gYGJvcmRlci1ib3hgLiBTZXQgd2l0aCBhIGAhZ2xvYmFsYCBmbGFnLlxyXG4vLy9cclxuLy8vIEB0eXBlIEJvb2xcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XHJcbi8vLyAgIGh0bWwge1xyXG4vLy8gICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cclxuLy8vXHJcbi8vLyAgICosICo6OmFmdGVyLCAqOjpiZWZvcmUge1xyXG4vLy8gICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XHJcbi8vLyAgIH1cclxuXHJcbiRib3JkZXItYm94LXNpemluZzogdHJ1ZSAhZGVmYXVsdDtcclxuXHJcbi8vLyBTZXRzIHRoZSBkZWZhdWx0IFttZWRpYSBmZWF0dXJlXShodHRwOi8vd3d3LnczLm9yZy9UUi9jc3MzLW1lZGlhcXVlcmllcy8jbWVkaWEpIHRoYXQgYG1lZGlhKClgIGFuZCBgbmV3LWJyZWFrcG9pbnQoKWAgcmV2ZXJ0IHRvIHdoZW4gb25seSBhIGJyZWFrcG9pbnQgdmFsdWUgaXMgcGFzc2VkLiBTZXQgd2l0aCBhIGAhZ2xvYmFsYCBmbGFnLlxyXG4vLy9cclxuLy8vIEB0eXBlIFN0cmluZ1xyXG5cclxuJGRlZmF1bHQtZmVhdHVyZTogbWluLXdpZHRoOyAvLyBEZWZhdWx0IEBtZWRpYSBmZWF0dXJlIGZvciB0aGUgYnJlYWtwb2ludCgpIG1peGluXHJcblxyXG4vLy9TZXRzIHRoZSBkZWZhdWx0IGxheW91dCBkaXJlY3Rpb24gb2YgdGhlIGdyaWQuIENhbiBiZSBgTFRSYCBvciBgUlRMYC4gU2V0IHdpdGggYSBgIWdsb2JhbGAgZmxhZy5cclxuLy8vXHJcbi8vL0B0eXBlIFN0cmluZ1xyXG5cclxuJGRlZmF1bHQtbGF5b3V0LWRpcmVjdGlvbjogTFRSICFkZWZhdWx0O1xyXG4iLAoJCSJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLy8gRGlzcGxheXMgdGhlIHZpc3VhbCBncmlkIHdoZW4gc2V0IHRvIHRydWUuIFRoZSBvdmVybGFpZCBncmlkIG1heSBiZSBmZXcgcGl4ZWxzIG9mZiBkZXBlbmRpbmcgb24gdGhlIGJyb3dzZXIncyByZW5kZXJpbmcgZW5naW5lIGFuZCBwaXhlbCByb3VuZGluZyBhbGdvcml0aG0uIFNldCB3aXRoIHRoZSBgIWdsb2JhbGAgZmxhZy5cclxuLy8vXHJcbi8vLyBAdHlwZSBCb29sXHJcblxyXG4kdmlzdWFsLWdyaWQ6IGZhbHNlICFkZWZhdWx0O1xyXG5cclxuLy8vIFNldHMgdGhlIHZpc3VhbCBncmlkIGNvbG9yLiBTZXQgd2l0aCBgIWdsb2JhbGAgZmxhZy5cclxuLy8vXHJcbi8vLyBAdHlwZSBDb2xvclxyXG5cclxuJHZpc3VhbC1ncmlkLWNvbG9yOiAjZWVlICFkZWZhdWx0O1xyXG5cclxuLy8vIFNldHMgdGhlIGB6LWluZGV4YCBwcm9wZXJ0eSBvZiB0aGUgdmlzdWFsIGdyaWQuIENhbiBiZSBgYmFja2AgKGJlaGluZCBjb250ZW50KSBvciBgZnJvbnRgIChpbiBmcm9udCBvZiBjb250ZW50KS4gU2V0IHdpdGggYCFnbG9iYWxgIGZsYWcuXHJcbi8vL1xyXG4vLy8gQHR5cGUgU3RyaW5nXHJcblxyXG4kdmlzdWFsLWdyaWQtaW5kZXg6IGJhY2sgIWRlZmF1bHQ7XHJcblxyXG4vLy8gU2V0cyB0aGUgb3BhY2l0eSBwcm9wZXJ0eSBvZiB0aGUgdmlzdWFsIGdyaWQuIFNldCB3aXRoIGAhZ2xvYmFsYCBmbGFnLlxyXG4vLy9cclxuLy8vIEB0eXBlIE51bWJlciAodW5pdGxlc3MpXHJcblxyXG4kdmlzdWFsLWdyaWQtb3BhY2l0eTogMC40ICFkZWZhdWx0O1xyXG5cclxuJHZpc3VhbC1ncmlkLWJyZWFrcG9pbnRzOiAoKSAhZGVmYXVsdDtcclxuIiwKCQkiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIERpc2FibGUgYWxsIGRlcHJlY2F0aW9uIHdhcm5pbmdzLiBEZWZhdWx0cyB0byBgZmFsc2VgLiBTZXQgd2l0aCBhIGAhZ2xvYmFsYCBmbGFnLlxyXG4vLy9cclxuLy8vIEB0eXBlIEJvb2xcclxuXHJcbiRkaXNhYmxlLXdhcm5pbmdzOiBmYWxzZSAhZGVmYXVsdDtcclxuXHJcbkBtaXhpbiAtbmVhdC13YXJuKCRtZXNzYWdlKSB7XHJcbiAgQGlmICRkaXNhYmxlLXdhcm5pbmdzID09IGZhbHNlIHtcclxuICAgIEB3YXJuIFwiI3skbWVzc2FnZX1cIjtcclxuICB9XHJcbn1cclxuIiwKCQkiJHBhcmVudC1jb2x1bW5zOiAkZ3JpZC1jb2x1bW5zICFkZWZhdWx0O1xyXG4kZmctY29sdW1uOiAkY29sdW1uO1xyXG4kZmctZ3V0dGVyOiAkZ3V0dGVyO1xyXG4kZmctbWF4LWNvbHVtbnM6ICRncmlkLWNvbHVtbnM7XHJcbiRjb250YWluZXItZGlzcGxheS10YWJsZTogZmFsc2UgIWRlZmF1bHQ7XHJcbiRsYXlvdXQtZGlyZWN0aW9uOiBMVFIgIWRlZmF1bHQ7XHJcblxyXG5AZnVuY3Rpb24gZmxleC1ncmlkKCRjb2x1bW5zLCAkY29udGFpbmVyLWNvbHVtbnM6ICRmZy1tYXgtY29sdW1ucykge1xyXG4gICR3aWR0aDogJGNvbHVtbnMgKiAkZmctY29sdW1uICsgKCRjb2x1bW5zIC0gMSkgKiAkZmctZ3V0dGVyO1xyXG4gICRjb250YWluZXItd2lkdGg6ICRjb250YWluZXItY29sdW1ucyAqICRmZy1jb2x1bW4gKyAoJGNvbnRhaW5lci1jb2x1bW5zIC0gMSkgKiAkZmctZ3V0dGVyO1xyXG4gIEByZXR1cm4gcGVyY2VudGFnZSgkd2lkdGggLyAkY29udGFpbmVyLXdpZHRoKTtcclxufVxyXG5cclxuQGZ1bmN0aW9uIGZsZXgtZ3V0dGVyKCRjb250YWluZXItY29sdW1uczogJGZnLW1heC1jb2x1bW5zLCAkZ3V0dGVyOiAkZmctZ3V0dGVyKSB7XHJcbiAgJGNvbnRhaW5lci13aWR0aDogJGNvbnRhaW5lci1jb2x1bW5zICogJGZnLWNvbHVtbiArICgkY29udGFpbmVyLWNvbHVtbnMgLSAxKSAqICRmZy1ndXR0ZXI7XHJcbiAgQHJldHVybiBwZXJjZW50YWdlKCRndXR0ZXIgLyAkY29udGFpbmVyLXdpZHRoKTtcclxufVxyXG5cclxuQGZ1bmN0aW9uIGdyaWQtd2lkdGgoJG4pIHtcclxuICBAcmV0dXJuICRuICogJGd3LWNvbHVtbiArICgkbiAtIDEpICogJGd3LWd1dHRlcjtcclxufVxyXG5cclxuQGZ1bmN0aW9uIGdldC1wYXJlbnQtY29sdW1ucygkY29sdW1ucykge1xyXG4gIEBpZiAkY29sdW1ucyAhPSAkZ3JpZC1jb2x1bW5zIHtcclxuICAgICRwYXJlbnQtY29sdW1uczogJGNvbHVtbnMgIWdsb2JhbDtcclxuICB9IEBlbHNlIHtcclxuICAgICRwYXJlbnQtY29sdW1uczogJGdyaWQtY29sdW1ucyAhZ2xvYmFsO1xyXG4gIH1cclxuXHJcbiAgQHJldHVybiAkcGFyZW50LWNvbHVtbnM7XHJcbn1cclxuXHJcbkBmdW5jdGlvbiBpcy1kaXNwbGF5LXRhYmxlKCRjb250YWluZXItaXMtZGlzcGxheS10YWJsZSwgJGRpc3BsYXkpIHtcclxuICBAcmV0dXJuICRjb250YWluZXItaXMtZGlzcGxheS10YWJsZSA9PSB0cnVlIG9yICRkaXNwbGF5ID09IHRhYmxlO1xyXG59XHJcbiIsCgkJIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbkBpZiAkYm9yZGVyLWJveC1zaXppbmcgPT0gdHJ1ZSB7XHJcbiAgaHRtbCB7IC8vIGh0dHA6Ly9iaXQubHkvMXFrMnRWUlxyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICB9XHJcblxyXG4gICoge1xyXG4gICAgJixcclxuICAgICY6OmFmdGVyLFxyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgYm94LXNpemluZzogaW5oZXJpdDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwKCQkiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIFJlbW92ZXMgdGhlIGVsZW1lbnQncyBndXR0ZXIgbWFyZ2luLCByZWdhcmRsZXNzIG9mIGl0cyBwb3NpdGlvbiBpbiB0aGUgZ3JpZCBoaWVyYXJjaHkgb3IgZGlzcGxheSBwcm9wZXJ0eS4gSXQgY2FuIHRhcmdldCBhIHNwZWNpZmljIGVsZW1lbnQsIG9yIGV2ZXJ5IGBudGgtY2hpbGRgIG9jY3VycmVuY2UuIFdvcmtzIG9ubHkgd2l0aCBgYmxvY2tgIGxheW91dHMuXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtMaXN0fSAkcXVlcnkgW2Jsb2NrXVxyXG4vLy8gICBMaXN0IG9mIGFyZ3VtZW50cy4gU3VwcG9ydGVkIGFyZ3VtZW50cyBhcmUgYG50aC1jaGlsZGAgc2VsZWN0b3JzICh0YXJnZXRzIGEgc3BlY2lmaWMgcHNldWRvIGVsZW1lbnQpIGFuZCBgYXV0b2AgKHRhcmdldHMgYGxhc3QtY2hpbGRgKS5cclxuLy8vXHJcbi8vLyAgIFdoZW4gcGFzc2VkIGFuIGBudGgtY2hpbGRgIGFyZ3VtZW50IG9mIHR5cGUgYCpuYCB3aXRoIGBibG9ja2AgZGlzcGxheSwgdGhlIG9tZWdhIG1peGluIGF1dG9tYXRpY2FsbHkgYWRkcyBhIGNsZWFyIHRvIHRoZSBgKm4rMWAgdGggZWxlbWVudC4gTm90ZSB0aGF0IGNvbXBvc2l0ZSBhcmd1bWVudHMgc3VjaCBhcyBgMm4rMWAgZG8gbm90IHN1cHBvcnQgdGhpcyBmZWF0dXJlLlxyXG4vLy9cclxuLy8vICAgKipEZXByZWNhdGlvbiB3YXJuaW5nKio6IFRoZSBvbWVnYSBtaXhpbiB3aWxsIG5vIGxvbmdlciB0YWtlIGEgYCRkaXJlY3Rpb25gIGFyZ3VtZW50LiBUbyBjaGFuZ2UgdGhlIGxheW91dCBkaXJlY3Rpb24sIHVzZSBgcm93KCRkaXJlY3Rpb24pYCBvciBzZXQgYCRkZWZhdWx0LWxheW91dC1kaXJlY3Rpb25gIGluc3RlYWQuXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBAaW5jbHVkZSBvbWVnYTtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vICAgLm50aC1lbGVtZW50IHtcclxuLy8vICAgICBAaW5jbHVkZSBvbWVnYSg0bik7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyAgIC5udGgtZWxlbWVudDpudGgtY2hpbGQoNG4pIHtcclxuLy8vICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyAgIC5udGgtZWxlbWVudDpudGgtY2hpbGQoNG4rMSkge1xyXG4vLy8gICAgIGNsZWFyOiBsZWZ0O1xyXG4vLy8gICB9XHJcblxyXG5AbWl4aW4gb21lZ2EoJHF1ZXJ5OiBibG9jaywgJGRpcmVjdGlvbjogZGVmYXVsdCkge1xyXG4gICR0YWJsZTogYmVsb25ncy10byh0YWJsZSwgJHF1ZXJ5KTtcclxuICAkYXV0bzogYmVsb25ncy10byhhdXRvLCAkcXVlcnkpO1xyXG5cclxuICBAaWYgJGRpcmVjdGlvbiAhPSBkZWZhdWx0IHtcclxuICAgIEBpbmNsdWRlIC1uZWF0LXdhcm4oXCJUaGUgb21lZ2EgbWl4aW4gd2lsbCBubyBsb25nZXIgdGFrZSBhICRkaXJlY3Rpb24gYXJndW1lbnQuIFRvIGNoYW5nZSB0aGUgbGF5b3V0IGRpcmVjdGlvbiwgdXNlIHRoZSBkaXJlY3Rpb24oKXsuLi59IG1peGluLlwiKTtcclxuICB9IEBlbHNlIHtcclxuICAgICRkaXJlY3Rpb246IGdldC1kaXJlY3Rpb24oJGxheW91dC1kaXJlY3Rpb24sICRkZWZhdWx0LWxheW91dC1kaXJlY3Rpb24pO1xyXG4gIH1cclxuXHJcbiAgQGlmICR0YWJsZSB7XHJcbiAgICBAaW5jbHVkZSAtbmVhdC13YXJuKFwiVGhlIG9tZWdhIG1peGluIG5vIGxvbmdlciByZW1vdmVzIHBhZGRpbmcgaW4gdGFibGUgbGF5b3V0cy5cIik7XHJcbiAgfVxyXG5cclxuICBAaWYgbGVuZ3RoKCRxdWVyeSkgPT0gMSB7XHJcbiAgICBAaWYgJGF1dG8ge1xyXG4gICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIG1hcmdpbi0jeyRkaXJlY3Rpb259OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGVsc2UgaWYgY29udGFpbnMtZGlzcGxheS12YWx1ZSgkcXVlcnkpIGFuZCAkdGFibGUgPT0gZmFsc2Uge1xyXG4gICAgICBtYXJnaW4tI3skZGlyZWN0aW9ufTogMDtcclxuICAgIH1cclxuXHJcbiAgICBAZWxzZSB7XHJcbiAgICAgIEBpbmNsdWRlIG50aC1jaGlsZCgkcXVlcnksICRkaXJlY3Rpb24pO1xyXG4gICAgfVxyXG4gIH0gQGVsc2UgaWYgbGVuZ3RoKCRxdWVyeSkgPT0gMiB7XHJcbiAgICBAaWYgJGF1dG8ge1xyXG4gICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIG1hcmdpbi0jeyRkaXJlY3Rpb259OiAwO1xyXG4gICAgICB9XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgQGluY2x1ZGUgbnRoLWNoaWxkKG50aCgkcXVlcnksIDEpLCAkZGlyZWN0aW9uKTtcclxuICAgIH1cclxuICB9IEBlbHNlIHtcclxuICAgIEBpbmNsdWRlIC1uZWF0LXdhcm4oXCJUb28gbWFueSBhcmd1bWVudHMgcGFzc2VkIHRvIHRoZSBvbWVnYSgpIG1peGluLlwiKTtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBudGgtY2hpbGQoJHF1ZXJ5LCAkZGlyZWN0aW9uKSB7XHJcbiAgJG9wcG9zaXRlLWRpcmVjdGlvbjogZ2V0LW9wcG9zaXRlLWRpcmVjdGlvbigkZGlyZWN0aW9uKTtcclxuXHJcbiAgJjpudGgtY2hpbGQoI3skcXVlcnl9KSB7XHJcbiAgICBtYXJnaW4tI3skZGlyZWN0aW9ufTogMDtcclxuICB9XHJcblxyXG4gIEBpZiB0eXBlLW9mKCRxdWVyeSkgPT0gbnVtYmVyIGFuZCB1bml0KCRxdWVyeSkgPT0gXCJuXCIge1xyXG4gICAgJjpudGgtY2hpbGQoI3skcXVlcnl9KzEpIHtcclxuICAgICAgY2xlYXI6ICRvcHBvc2l0ZS1kaXJlY3Rpb247XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsCgkJIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vLyBNYWtlcyBhbiBlbGVtZW50IGEgb3V0ZXIgY29udGFpbmVyIGJ5IGNlbnRlcmluZyBpdCBpbiB0aGUgdmlld3BvcnQsIGNsZWFyaW5nIGl0cyBmbG9hdHMsIGFuZCBzZXR0aW5nIGl0cyBgbWF4LXdpZHRoYC5cclxuLy8vIEFsdGhvdWdoIG9wdGlvbmFsLCB1c2luZyBgb3V0ZXItY29udGFpbmVyYCBpcyByZWNvbW1lbmRlZC4gVGhlIG1peGluIGNhbiBiZSBjYWxsZWQgb24gbW9yZSB0aGFuIG9uZSBlbGVtZW50IHBlciBwYWdlLCBhcyBsb25nIGFzIHRoZXkgYXJlIG5vdCBuZXN0ZWQuXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtOdW1iZXIgW3VuaXRdfSAkbG9jYWwtbWF4LXdpZHRoIFskbWF4LXdpZHRoXVxyXG4vLy8gICBNYXggd2lkdGggdG8gYmUgYXBwbGllZCB0byB0aGUgZWxlbWVudC4gQ2FuIGJlIGEgcGVyY2VudGFnZSBvciBhIG1lYXN1cmUuXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBAaW5jbHVkZSBvdXRlci1jb250YWluZXIoMTAwJSk7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICAqem9vbTogMTtcclxuLy8vICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbi8vLyAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbi8vLyAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gICAuZWxlbWVudDpiZWZvcmUsIC5lbGVtZW50OmFmdGVyIHtcclxuLy8vICAgICBjb250ZW50OiBcIiBcIjtcclxuLy8vICAgICBkaXNwbGF5OiB0YWJsZTtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vICAgLmVsZW1lbnQ6YWZ0ZXIge1xyXG4vLy8gICAgIGNsZWFyOiBib3RoO1xyXG4vLy8gICB9XHJcblxyXG5AbWl4aW4gb3V0ZXItY29udGFpbmVyKCRsb2NhbC1tYXgtd2lkdGg6ICRtYXgtd2lkdGgpIHtcclxuICBAaW5jbHVkZSBjbGVhcmZpeDtcclxuICBtYXgtd2lkdGg6ICRsb2NhbC1tYXgtd2lkdGg7XHJcbiAgbWFyZ2luOiB7XHJcbiAgICBsZWZ0OiBhdXRvO1xyXG4gICAgcmlnaHQ6IGF1dG87XHJcbiAgfVxyXG59XHJcbiIsCgkJIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vLyBTcGVjaWZpZXMgdGhlIG51bWJlciBvZiBjb2x1bW5zIGFuIGVsZW1lbnQgc2hvdWxkIHNwYW4uIElmIHRoZSBzZWxlY3RvciBpcyBuZXN0ZWQgdGhlIG51bWJlciBvZiBjb2x1bW5zIG9mIGl0cyBwYXJlbnQgZWxlbWVudCBzaG91bGQgYmUgcGFzc2VkIGFzIGFuIGFyZ3VtZW50IGFzIHdlbGwuXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtMaXN0fSAkc3BhblxyXG4vLy8gICBBIGxpc3QgY29udGFpbmluZyBgJGNvbHVtbnNgLCB0aGUgdW5pdGxlc3MgbnVtYmVyIG9mIGNvbHVtbnMgdGhlIGVsZW1lbnQgc3BhbnMgKHJlcXVpcmVkKSwgYW5kIGAkY29udGFpbmVyLWNvbHVtbnNgLCB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgdGhlIHBhcmVudCBlbGVtZW50IHNwYW5zIChvcHRpb25hbCkuXHJcbi8vL1xyXG4vLy8gICBJZiBvbmx5IG9uZSB2YWx1ZSBpcyBwYXNzZWQsIGl0IGlzIGFzc3VtZWQgdGhhdCBpdCdzIGAkY29sdW1uc2AgYW5kIHRoYXQgdGhhdCBgJGNvbnRhaW5lci1jb2x1bW5zYCBpcyBlcXVhbCB0byBgJGdyaWQtY29sdW1uc2AsIHRoZSB0b3RhbCBudW1iZXIgb2YgY29sdW1ucyBpbiB0aGUgZ3JpZC5cclxuLy8vXHJcbi8vLyAgIFRoZSB2YWx1ZXMgY2FuIGJlIHNlcGFyYXRlZCB3aXRoIGFueSBzdHJpbmcgc3VjaCBhcyBgb2ZgLCBgL2AsIGV0Yy5cclxuLy8vXHJcbi8vLyAgIGAkY29sdW1uc2AgYWxzbyBhY2NlcHRzIGRlY2ltYWxzIGZvciB3aGVuIGl0J3MgbmVjZXNzYXJ5IHRvIGJyZWFrIG91dCBvZiB0aGUgc3RhbmRhcmQgZ3JpZC4gRS5nLiBQYXNzaW5nIGAyLjRgIGluIGEgc3RhbmRhcmQgMTIgY29sdW1uIGdyaWQgd2lsbCBkaXZpZGUgdGhlIHJvdyBpbnRvIDUgY29sdW1ucy5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJGRpc3BsYXkgW2Jsb2NrXVxyXG4vLy8gICBTZXRzIHRoZSBkaXNwbGF5IHByb3BlcnR5IG9mIHRoZSBlbGVtZW50LiBCeSBkZWZhdWx0IGl0IHNldHMgdGhlIGRpc3BsYXkgcHJvcGVydHkgb2YgdGhlIGVsZW1lbnQgdG8gYGJsb2NrYC5cclxuLy8vXHJcbi8vLyAgIElmIHBhc3NlZCBgYmxvY2stY29sbGFwc2VgLCBpdCBhbHNvIHJlbW92ZXMgdGhlIG1hcmdpbiBndXR0ZXIgYnkgYWRkaW5nIGl0IHRvIHRoZSBlbGVtZW50IHdpZHRoLlxyXG4vLy9cclxuLy8vICAgSWYgcGFzc2VkIGB0YWJsZWAsIGl0IHNldHMgdGhlIGRpc3BsYXkgcHJvcGVydHkgdG8gYHRhYmxlLWNlbGxgIGFuZCBjYWxjdWxhdGVzIHRoZSB3aWR0aCBvZiB0aGUgZWxlbWVudCB3aXRob3V0IHRha2luZyBndXR0ZXJzIGludG8gY29uc2lkZXJhdGlvbi4gVGhlIHJlc3VsdCBkb2VzIG5vdCBhbGlnbiB3aXRoIHRoZSBibG9jay1iYXNlZCBncmlkLlxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxyXG4vLy8gICAuZWxlbWVudCB7XHJcbi8vLyAgICAgQGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDYpO1xyXG4vLy9cclxuLy8vICAgIC5uZXN0ZWQtZWxlbWVudCB7XHJcbi8vLyAgICAgIEBpbmNsdWRlIHNwYW4tY29sdW1ucygyIG9mIDYpO1xyXG4vLy8gICAgfVxyXG4vLy8gIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBkaXNwbGF5OiBibG9jaztcclxuLy8vICAgICBmbG9hdDogbGVmdDtcclxuLy8vICAgICBtYXJnaW4tcmlnaHQ6IDIuMzU3NjUlO1xyXG4vLy8gICAgIHdpZHRoOiA0OC44MjExNyU7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyAgIC5lbGVtZW50Omxhc3QtY2hpbGQge1xyXG4vLy8gICAgIG1hcmdpbi1yaWdodDogMDtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vICAgLmVsZW1lbnQgLm5lc3RlZC1lbGVtZW50IHtcclxuLy8vICAgICBkaXNwbGF5OiBibG9jaztcclxuLy8vICAgICBmbG9hdDogbGVmdDtcclxuLy8vICAgICBtYXJnaW4tcmlnaHQ6IDQuODI5MTYlO1xyXG4vLy8gICAgIHdpZHRoOiAzMC4xMTM4OSU7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyAgIC5lbGVtZW50IC5uZXN0ZWQtZWxlbWVudDpsYXN0LWNoaWxkIHtcclxuLy8vICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbi8vLyAgIH1cclxuXHJcbkBtaXhpbiBzcGFuLWNvbHVtbnMoJHNwYW46ICRjb2x1bW5zIG9mICRjb250YWluZXItY29sdW1ucywgJGRpc3BsYXk6IGJsb2NrKSB7XHJcbiAgJGNvbHVtbnM6IG50aCgkc3BhbiwgMSk7XHJcbiAgJGNvbnRhaW5lci1jb2x1bW5zOiBjb250YWluZXItc3Bhbigkc3Bhbik7XHJcblxyXG4gICRwYXJlbnQtY29sdW1uczogZ2V0LXBhcmVudC1jb2x1bW5zKCRjb250YWluZXItY29sdW1ucykgIWdsb2JhbDtcclxuXHJcbiAgJGRpcmVjdGlvbjogZ2V0LWRpcmVjdGlvbigkbGF5b3V0LWRpcmVjdGlvbiwgJGRlZmF1bHQtbGF5b3V0LWRpcmVjdGlvbik7XHJcbiAgJG9wcG9zaXRlLWRpcmVjdGlvbjogZ2V0LW9wcG9zaXRlLWRpcmVjdGlvbigkZGlyZWN0aW9uKTtcclxuXHJcbiAgJGRpc3BsYXktdGFibGU6IGlzLWRpc3BsYXktdGFibGUoJGNvbnRhaW5lci1kaXNwbGF5LXRhYmxlLCAkZGlzcGxheSk7XHJcblxyXG4gIEBpZiAkZGlzcGxheS10YWJsZSAge1xyXG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcclxuICAgIHdpZHRoOiBwZXJjZW50YWdlKCRjb2x1bW5zIC8gJGNvbnRhaW5lci1jb2x1bW5zKTtcclxuICB9IEBlbHNlIHtcclxuICAgIGZsb2F0OiAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259O1xyXG5cclxuICAgIEBpZiAkZGlzcGxheSAhPSBuby1kaXNwbGF5IHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcblxyXG4gICAgQGlmICRkaXNwbGF5ID09IGNvbGxhcHNlIHtcclxuICAgICAgQGluY2x1ZGUgLW5lYXQtd2FybihcIlRoZSAnY29sbGFwc2UnIGFyZ3VtZW50IHdpbGwgYmUgZGVwcmVjYXRlZC4gVXNlICdibG9jay1jb2xsYXBzZScgaW5zdGVhZC5cIik7XHJcbiAgICB9XHJcblxyXG4gICAgQGlmICRkaXNwbGF5ID09IGNvbGxhcHNlIG9yICRkaXNwbGF5ID09IGJsb2NrLWNvbGxhcHNlIHtcclxuICAgICAgd2lkdGg6IGZsZXgtZ3JpZCgkY29sdW1ucywgJGNvbnRhaW5lci1jb2x1bW5zKSArIGZsZXgtZ3V0dGVyKCRjb250YWluZXItY29sdW1ucyk7XHJcblxyXG4gICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIHdpZHRoOiBmbGV4LWdyaWQoJGNvbHVtbnMsICRjb250YWluZXItY29sdW1ucyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgbWFyZ2luLSN7JGRpcmVjdGlvbn06IGZsZXgtZ3V0dGVyKCRjb250YWluZXItY29sdW1ucyk7XHJcbiAgICAgIHdpZHRoOiBmbGV4LWdyaWQoJGNvbHVtbnMsICRjb250YWluZXItY29sdW1ucyk7XHJcblxyXG4gICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIG1hcmdpbi0jeyRkaXJlY3Rpb259OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsCgkJIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vLyBEZXNpZ25hdGVzIHRoZSBlbGVtZW50IGFzIGEgcm93IG9mIGNvbHVtbnMgaW4gdGhlIGdyaWQgbGF5b3V0LiBJdCBjbGVhcnMgdGhlIGZsb2F0cyBvbiB0aGUgZWxlbWVudCBhbmQgc2V0cyBpdHMgZGlzcGxheSBwcm9wZXJ0eS4gUm93cyBjYW4ndCBiZSBuZXN0ZWQsIGJ1dCB0aGVyZSBjYW4gYmUgbW9yZSB0aGFuIG9uZSByb3cgZWxlbWVudOKAlHdpdGggZGlmZmVyZW50IGRpc3BsYXkgcHJvcGVydGllc+KAlHBlciBsYXlvdXQuXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRkaXNwbGF5IFtkZWZhdWx0XVxyXG4vLy8gIFNldHMgdGhlIGRpc3BsYXkgcHJvcGVydHkgb2YgdGhlIGVsZW1lbnQgYW5kIHRoZSBkaXNwbGF5IGNvbnRleHQgdGhhdCB3aWxsIGJlIHVzZWQgYnkgaXRzIGNoaWxkcmVuLiBDYW4gYmUgYGJsb2NrYCBvciBgdGFibGVgLlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZGlyZWN0aW9uIFskZGVmYXVsdC1sYXlvdXQtZGlyZWN0aW9uXVxyXG4vLy8gIFNldHMgdGhlIGxheW91dCBkaXJlY3Rpb24uIENhbiBiZSBgTFRSYCAobGVmdC10by1yaWdodCkgb3IgYFJUTGAgKHJpZ2h0LXRvLWxlZnQpLlxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxyXG4vLy8gIC5lbGVtZW50IHtcclxuLy8vICAgIEBpbmNsdWRlIHJvdygpO1xyXG4vLy8gIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XHJcbi8vLyAgLmVsZW1lbnQge1xyXG4vLy8gICAgKnpvb206IDE7XHJcbi8vLyAgICBkaXNwbGF5OiBibG9jaztcclxuLy8vICB9XHJcbi8vL1xyXG4vLy8gLmVsZW1lbnQ6YmVmb3JlLCAuZWxlbWVudDphZnRlciB7XHJcbi8vLyAgIGNvbnRlbnQ6IFwiIFwiO1xyXG4vLy8gICBkaXNwbGF5OiB0YWJsZTtcclxuLy8vIH1cclxuLy8vXHJcbi8vLyAuZWxlbWVudDphZnRlciB7XHJcbi8vLyAgIGNsZWFyOiBib3RoO1xyXG4vLy8gfVxyXG5cclxuQG1peGluIHJvdygkZGlzcGxheTogZGVmYXVsdCwgJGRpcmVjdGlvbjogJGRlZmF1bHQtbGF5b3V0LWRpcmVjdGlvbikge1xyXG4gIEBpZiAkZGlyZWN0aW9uICE9ICRkZWZhdWx0LWxheW91dC1kaXJlY3Rpb24ge1xyXG4gICAgQGluY2x1ZGUgLW5lYXQtd2FybihcIlRoZSAkZGlyZWN0aW9uIGFyZ3VtZW50IHdpbGwgYmUgZGVwcmVjYXRlZCBpbiBmdXR1cmUgdmVyc2lvbnMgaW4gZmF2b3Igb2YgdGhlIGRpcmVjdGlvbigpey4uLn0gbWl4aW4uXCIpO1xyXG4gIH1cclxuXHJcbiAgJGxheW91dC1kaXJlY3Rpb246ICRkaXJlY3Rpb24gIWdsb2JhbDtcclxuXHJcbiAgQGlmICRkaXNwbGF5ICE9IGRlZmF1bHQge1xyXG4gICAgQGluY2x1ZGUgLW5lYXQtd2FybihcIlRoZSAkZGlzcGxheSBhcmd1bWVudCB3aWxsIGJlIGRlcHJlY2F0ZWQgaW4gZnV0dXJlIHZlcnNpb25zIGluIGZhdm9yIG9mIHRoZSBkaXNwbGF5KCl7Li4ufSBtaXhpbi5cIik7XHJcbiAgfVxyXG5cclxuICBAaWYgJGRpc3BsYXkgPT0gdGFibGUge1xyXG4gICAgZGlzcGxheTogdGFibGU7XHJcbiAgICBAaW5jbHVkZSBmaWxsLXBhcmVudDtcclxuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XHJcbiAgICAkY29udGFpbmVyLWRpc3BsYXktdGFibGU6IHRydWUgIWdsb2JhbDtcclxuICB9IEBlbHNlIHtcclxuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAkY29udGFpbmVyLWRpc3BsYXktdGFibGU6IGZhbHNlICFnbG9iYWw7XHJcbiAgfVxyXG59XHJcbiIsCgkJIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vLyBUcmFuc2xhdGVzIGFuIGVsZW1lbnQgaG9yaXpvbnRhbGx5IGJ5IGEgbnVtYmVyIG9mIGNvbHVtbnMuIFBvc2l0aXZlIGFyZ3VtZW50cyBzaGlmdCB0aGUgZWxlbWVudCB0byB0aGUgYWN0aXZlIGxheW91dCBkaXJlY3Rpb24sIHdoaWxlIG5lZ2F0aXZlIG9uZXMgc2hpZnQgaXQgdG8gdGhlIG9wcG9zaXRlIGRpcmVjdGlvbi5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge051bWJlciAodW5pdGxlc3MpfSAkbi1jb2x1bW5zIFsxXVxyXG4vLy8gICBOdW1iZXIgb2YgY29sdW1ucyBieSB3aGljaCB0aGUgZWxlbWVudCBzaGlmdHMuXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBAaW5jbHVkZSBzaGlmdCgtMyk7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1Mgb3V0cHV0XHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBtYXJnaW4tbGVmdDogLTI1LjU4OTQxJTtcclxuLy8vICAgfVxyXG5cclxuQG1peGluIHNoaWZ0KCRuLWNvbHVtbnM6IDEpIHtcclxuICBAaW5jbHVkZSBzaGlmdC1pbi1jb250ZXh0KCRuLWNvbHVtbnMpO1xyXG59XHJcblxyXG4vLy8gVHJhbnNsYXRlcyBhbiBlbGVtZW50IGhvcml6b250YWxseSBieSBhIG51bWJlciBvZiBjb2x1bW5zLCBpbiBhIHNwZWNpZmljIG5lc3RpbmcgY29udGV4dC5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge0xpc3R9ICRzaGlmdFxyXG4vLy8gICBBIGxpc3QgY29udGFpbmluZyB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgdG8gc2hpZnQgKGAkY29sdW1uc2ApIGFuZCB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgb2YgdGhlIHBhcmVudCBlbGVtZW50IChgJGNvbnRhaW5lci1jb2x1bW5zYCkuXHJcbi8vL1xyXG4vLy8gICBUaGUgdHdvIHZhbHVlcyBjYW4gYmUgc2VwYXJhdGVkIHdpdGggYW55IHN0cmluZyBzdWNoIGFzIGBvZmAsIGAvYCwgZXRjLlxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxyXG4vLy8gICAuZWxlbWVudCB7XHJcbi8vLyAgICAgQGluY2x1ZGUgc2hpZnQoLTMgb2YgNik7XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1Mgb3V0cHV0XHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBtYXJnaW4tbGVmdDogLTUyLjQxNDU4JTtcclxuLy8vICAgfVxyXG5cclxuQG1peGluIHNoaWZ0LWluLWNvbnRleHQoJHNoaWZ0OiAkY29sdW1ucyBvZiAkY29udGFpbmVyLWNvbHVtbnMpIHtcclxuICAkbi1jb2x1bW5zOiBudGgoJHNoaWZ0LCAxKTtcclxuICAkcGFyZW50LWNvbHVtbnM6IGNvbnRhaW5lci1zaGlmdCgkc2hpZnQpICFnbG9iYWw7XHJcblxyXG4gICRkaXJlY3Rpb246IGdldC1kaXJlY3Rpb24oJGxheW91dC1kaXJlY3Rpb24sICRkZWZhdWx0LWxheW91dC1kaXJlY3Rpb24pO1xyXG4gICRvcHBvc2l0ZS1kaXJlY3Rpb246IGdldC1vcHBvc2l0ZS1kaXJlY3Rpb24oJGRpcmVjdGlvbik7XHJcblxyXG4gIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAkbi1jb2x1bW5zICogZmxleC1ncmlkKDEsICRwYXJlbnQtY29sdW1ucykgKyAkbi1jb2x1bW5zICogZmxleC1ndXR0ZXIoJHBhcmVudC1jb2x1bW5zKTtcclxuXHJcbiAgLy8gUmVzZXQgbmVzdGluZyBjb250ZXh0XHJcbiAgJHBhcmVudC1jb2x1bW5zOiAkZ3JpZC1jb2x1bW5zICFnbG9iYWw7XHJcbn1cclxuIiwKCQkiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8vIEFkZHMgcGFkZGluZyB0byB0aGUgZWxlbWVudC5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge0xpc3R9ICRwYWRkaW5nIFtmbGV4LWd1dHRlcigpXVxyXG4vLy8gICBBIGxpc3Qgb2YgcGFkZGluZyB2YWx1ZShzKSB0byB1c2UuIFBhc3NpbmcgYGRlZmF1bHRgIGluIHRoZSBsaXN0IHdpbGwgcmVzdWx0IGluIHVzaW5nIHRoZSBndXR0ZXIgd2lkdGggYXMgYSBwYWRkaW5nIHZhbHVlLlxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxyXG4vLy8gICAuZWxlbWVudCB7XHJcbi8vLyAgICAgQGluY2x1ZGUgcGFkKDMwcHggLTIwcHggMTBweCBkZWZhdWx0KTtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcclxuLy8vICAgLmVsZW1lbnQge1xyXG4vLy8gICAgIHBhZGRpbmc6IDMwcHggLTIwcHggMTBweCAyLjM1NzY1JTtcclxuLy8vICAgfVxyXG5cclxuQG1peGluIHBhZCgkcGFkZGluZzogZmxleC1ndXR0ZXIoKSkge1xyXG4gICRwYWRkaW5nLWxpc3Q6IG51bGw7XHJcbiAgQGVhY2ggJHZhbHVlIGluICRwYWRkaW5nIHtcclxuICAgICR2YWx1ZTogaWYoJHZhbHVlID09ICdkZWZhdWx0JywgZmxleC1ndXR0ZXIoKSwgJHZhbHVlKTtcclxuICAgICRwYWRkaW5nLWxpc3Q6IGpvaW4oJHBhZGRpbmctbGlzdCwgJHZhbHVlKTtcclxuICB9XHJcbiAgcGFkZGluZzogJHBhZGRpbmctbGlzdDtcclxufVxyXG4iLAoJCSJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLy8gRm9yY2VzIHRoZSBlbGVtZW50IHRvIGZpbGwgaXRzIHBhcmVudCBjb250YWluZXIuXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBAaW5jbHVkZSBmaWxsLXBhcmVudDtcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcclxuLy8vICAgLmVsZW1lbnQge1xyXG4vLy8gICAgIHdpZHRoOiAxMDAlO1xyXG4vLy8gICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbi8vLyAgIH1cclxuXHJcbkBtaXhpbiBmaWxsLXBhcmVudCgpIHtcclxuICB3aWR0aDogMTAwJTtcclxuXHJcbiAgQGlmICRib3JkZXItYm94LXNpemluZyA9PSBmYWxzZSB7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIH1cclxufVxyXG4iLAoJCSJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLy8gT3V0cHV0cyBhIG1lZGlhLXF1ZXJ5IGJsb2NrIHdpdGggYW4gb3B0aW9uYWwgZ3JpZCBjb250ZXh0ICh0aGUgdG90YWwgbnVtYmVyIG9mIGNvbHVtbnMgdXNlZCBpbiB0aGUgZ3JpZCkuXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtMaXN0fSAkcXVlcnlcclxuLy8vICAgQSBsaXN0IG9mIG1lZGlhIHF1ZXJ5IGZlYXR1cmVzIGFuZCB2YWx1ZXMsIHdoZXJlIGVhY2ggYCRmZWF0dXJlYCBzaG91bGQgaGF2ZSBhIGNvcnJlc3BvbmRpbmcgYCR2YWx1ZWAuXHJcbi8vLyAgIEZvciBhIGxpc3Qgb2YgdmFsaWQgdmFsdWVzIGZvciBgJGZlYXR1cmVgLCBjbGljayBbaGVyZV0oaHR0cDovL3d3dy53My5vcmcvVFIvY3NzMy1tZWRpYXF1ZXJpZXMvI21lZGlhMSkuXHJcbi8vL1xyXG4vLy8gICBJZiB0aGVyZSBpcyBvbmx5IGEgc2luZ2xlIGAkdmFsdWVgIGluIGAkcXVlcnlgLCBgJGRlZmF1bHQtZmVhdHVyZWAgaXMgZ29pbmcgdG8gYmUgdXNlZC5cclxuLy8vXHJcbi8vLyAgIFRoZSBudW1iZXIgb2YgdG90YWwgY29sdW1ucyBpbiB0aGUgZ3JpZCBjYW4gYmUgc2V0IGJ5IHBhc3NpbmcgYCRjb2x1bW5zYCBhdCB0aGUgZW5kIG9mIHRoZSBsaXN0IChvdmVycmlkZXMgYCR0b3RhbC1jb2x1bW5zYCkuXHJcbi8vL1xyXG4vLy9cclxuLy8vIEBwYXJhbSB7TnVtYmVyICh1bml0bGVzcyl9ICR0b3RhbC1jb2x1bW5zIFskZ3JpZC1jb2x1bW5zXVxyXG4vLy8gICAtIE51bWJlciBvZiBjb2x1bW5zIHRvIHVzZSBpbiB0aGUgbmV3IGdyaWQgY29udGV4dC4gQ2FuIGJlIHNldCBhcyBhIHNob3J0aGFuZCBpbiB0aGUgZmlyc3QgcGFyYW1ldGVyLlxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxyXG4vLy8gICAucmVzcG9uc2l2ZS1lbGVtZW50IHtcclxuLy8vICAgICAgQGluY2x1ZGUgbWVkaWEoNzY5cHgpIHtcclxuLy8vICAgICAgICBAaW5jbHVkZSBzcGFuLWNvbHVtbnMoNik7XHJcbi8vLyAgICAgIH1cclxuLy8vICAgfVxyXG4vLy9cclxuLy8vICAubmV3LWNvbnRleHQtZWxlbWVudCB7XHJcbi8vLyAgICBAaW5jbHVkZSBtZWRpYShtaW4td2lkdGggMzIwcHggbWF4LXdpZHRoIDQ4MHB4LCA2KSB7XHJcbi8vLyAgICAgIEBpbmNsdWRlIHNwYW4tY29sdW1ucyg2KTtcclxuLy8vICAgIH1cclxuLy8vICB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxyXG4vLy8gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OXB4KSB7XHJcbi8vLyAgICAucmVzcG9uc2l2ZS1lbGVtZW50IHtcclxuLy8vICAgICAgZGlzcGxheTogYmxvY2s7XHJcbi8vLyAgICAgIGZsb2F0OiBsZWZ0O1xyXG4vLy8gICAgICBtYXJnaW4tcmlnaHQ6IDIuMzU3NjUlO1xyXG4vLy8gICAgICB3aWR0aDogNDguODIxMTclO1xyXG4vLy8gICAgfVxyXG4vLy9cclxuLy8vICAgIC5yZXNwb25zaXZlLWVsZW1lbnQ6bGFzdC1jaGlsZCB7XHJcbi8vLyAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuLy8vICAgIH1cclxuLy8vICB9XHJcbi8vL1xyXG4vLy8gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMyMHB4KSBhbmQgKG1heC13aWR0aDogNDgwcHgpIHtcclxuLy8vICAgIC5uZXctY29udGV4dC1lbGVtZW50IHtcclxuLy8vICAgICAgZGlzcGxheTogYmxvY2s7XHJcbi8vLyAgICAgIGZsb2F0OiBsZWZ0O1xyXG4vLy8gICAgICBtYXJnaW4tcmlnaHQ6IDQuODI5MTYlO1xyXG4vLy8gICAgICB3aWR0aDogMTAwJTtcclxuLy8vICAgIH1cclxuLy8vXHJcbi8vLyAgICAubmV3LWNvbnRleHQtZWxlbWVudDpsYXN0LWNoaWxkIHtcclxuLy8vICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4vLy8gICAgfVxyXG4vLy8gIH1cclxuXHJcbkBtaXhpbiBtZWRpYSgkcXVlcnk6ICRmZWF0dXJlICR2YWx1ZSAkY29sdW1ucywgJHRvdGFsLWNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcclxuICBAaWYgbGVuZ3RoKCRxdWVyeSkgPT0gMSB7XHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoJGRlZmF1bHQtZmVhdHVyZTogbnRoKCRxdWVyeSwgMSkpIHtcclxuICAgICAgJGRlZmF1bHQtZ3JpZC1jb2x1bW5zOiAkZ3JpZC1jb2x1bW5zO1xyXG4gICAgICAkZ3JpZC1jb2x1bW5zOiAkdG90YWwtY29sdW1ucyAhZ2xvYmFsO1xyXG4gICAgICBAY29udGVudDtcclxuICAgICAgJGdyaWQtY29sdW1uczogJGRlZmF1bHQtZ3JpZC1jb2x1bW5zICFnbG9iYWw7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSB7XHJcbiAgICAkbG9vcC10bzogbGVuZ3RoKCRxdWVyeSk7XHJcbiAgICAkbWVkaWEtcXVlcnk6IFwic2NyZWVuIGFuZCBcIjtcclxuICAgIEBpZigkcXVlcnk9PSR0YWIpIHtcclxuICAgICAgICAkbWVkaWEtcXVlcnk6IFwicHJpbnQsc2NyZWVuIGFuZCBcIjtcclxuICAgIH1cclxuICAgICRkZWZhdWx0LWdyaWQtY29sdW1uczogJGdyaWQtY29sdW1ucztcclxuICAgICRncmlkLWNvbHVtbnM6ICR0b3RhbC1jb2x1bW5zICFnbG9iYWw7XHJcblxyXG4gICAgQGlmIGlzLW5vdChpcy1ldmVuKGxlbmd0aCgkcXVlcnkpKSkge1xyXG4gICAgICAkZ3JpZC1jb2x1bW5zOiBudGgoJHF1ZXJ5LCAkbG9vcC10bykgIWdsb2JhbDtcclxuICAgICAgJGxvb3AtdG86ICRsb29wLXRvIC0gMTtcclxuICAgIH1cclxuXHJcbiAgICAkaTogMTtcclxuICAgIEB3aGlsZSAkaSA8PSAkbG9vcC10byB7XHJcbiAgICAgICRtZWRpYS1xdWVyeTogJG1lZGlhLXF1ZXJ5ICsgXCIoXCIgKyBudGgoJHF1ZXJ5LCAkaSkgKyBcIjogXCIgKyBudGgoJHF1ZXJ5LCAkaSArIDEpICsgXCIpIFwiO1xyXG5cclxuICAgICAgQGlmICgkaSArIDEpICE9ICRsb29wLXRvIHtcclxuICAgICAgICAkbWVkaWEtcXVlcnk6ICRtZWRpYS1xdWVyeSArIFwiYW5kIFwiO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAkaTogJGkgKyAyO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAjeyRtZWRpYS1xdWVyeX0ge1xyXG4gICAgICBAY29udGVudDtcclxuICAgICAgJGdyaWQtY29sdW1uczogJGRlZmF1bHQtZ3JpZC1jb2x1bW5zICFnbG9iYWw7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsCgkJIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbkBtaXhpbiBicmVha3BvaW50KCRxdWVyeTokZmVhdHVyZSAkdmFsdWUgJGNvbHVtbnMsICR0b3RhbC1jb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XHJcbiAgQGluY2x1ZGUgLW5lYXQtd2FybihcIlRoZSBicmVha3BvaW50KCkgbWl4aW4gd2FzIHJlbmFtZWQgdG8gbWVkaWEoKSBpbiBOZWF0IDEuMC4gUGxlYXNlIHVwZGF0ZSB5b3VyIHByb2plY3Qgd2l0aCB0aGUgbmV3IHN5bnRheCBiZWZvcmUgdGhlIG5leHQgdmVyc2lvbiBidW1wLlwiKTtcclxuXHJcbiAgQGlmIGxlbmd0aCgkcXVlcnkpID09IDEge1xyXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKCRkZWZhdWx0LWZlYXR1cmU6IG50aCgkcXVlcnksIDEpKSB7XHJcbiAgICAgICRkZWZhdWx0LWdyaWQtY29sdW1uczogJGdyaWQtY29sdW1ucztcclxuICAgICAgJGdyaWQtY29sdW1uczogJHRvdGFsLWNvbHVtbnM7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgICAkZ3JpZC1jb2x1bW5zOiAkZGVmYXVsdC1ncmlkLWNvbHVtbnM7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSBpZiBsZW5ndGgoJHF1ZXJ5KSA9PSAyIHtcclxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChudGgoJHF1ZXJ5LCAxKTogbnRoKCRxdWVyeSwgMikpIHtcclxuICAgICAgJGRlZmF1bHQtZ3JpZC1jb2x1bW5zOiAkZ3JpZC1jb2x1bW5zO1xyXG4gICAgICAkZ3JpZC1jb2x1bW5zOiAkdG90YWwtY29sdW1ucztcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICAgICRncmlkLWNvbHVtbnM6ICRkZWZhdWx0LWdyaWQtY29sdW1ucztcclxuICAgIH1cclxuICB9IEBlbHNlIGlmIGxlbmd0aCgkcXVlcnkpID09IDMge1xyXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG50aCgkcXVlcnksIDEpOiBudGgoJHF1ZXJ5LCAyKSkge1xyXG4gICAgICAkZGVmYXVsdC1ncmlkLWNvbHVtbnM6ICRncmlkLWNvbHVtbnM7XHJcbiAgICAgICRncmlkLWNvbHVtbnM6IG50aCgkcXVlcnksIDMpO1xyXG4gICAgICBAY29udGVudDtcclxuICAgICAgJGdyaWQtY29sdW1uczogJGRlZmF1bHQtZ3JpZC1jb2x1bW5zO1xyXG4gICAgfVxyXG4gIH0gQGVsc2UgaWYgbGVuZ3RoKCRxdWVyeSkgPT0gNCB7XHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobnRoKCRxdWVyeSwgMSk6IG50aCgkcXVlcnksIDIpKSBhbmQgKG50aCgkcXVlcnksIDMpOiBudGgoJHF1ZXJ5LCA0KSkge1xyXG4gICAgICAkZGVmYXVsdC1ncmlkLWNvbHVtbnM6ICRncmlkLWNvbHVtbnM7XHJcbiAgICAgICRncmlkLWNvbHVtbnM6ICR0b3RhbC1jb2x1bW5zO1xyXG4gICAgICBAY29udGVudDtcclxuICAgICAgJGdyaWQtY29sdW1uczogJGRlZmF1bHQtZ3JpZC1jb2x1bW5zO1xyXG4gICAgfVxyXG4gIH0gQGVsc2UgaWYgbGVuZ3RoKCRxdWVyeSkgPT0gNSB7XHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobnRoKCRxdWVyeSwgMSk6IG50aCgkcXVlcnksIDIpKSBhbmQgKG50aCgkcXVlcnksIDMpOiBudGgoJHF1ZXJ5LCA0KSkge1xyXG4gICAgICAkZGVmYXVsdC1ncmlkLWNvbHVtbnM6ICRncmlkLWNvbHVtbnM7XHJcbiAgICAgICRncmlkLWNvbHVtbnM6IG50aCgkcXVlcnksIDUpO1xyXG4gICAgICBAY29udGVudDtcclxuICAgICAgJGdyaWQtY29sdW1uczogJGRlZmF1bHQtZ3JpZC1jb2x1bW5zO1xyXG4gICAgfVxyXG4gIH0gQGVsc2Uge1xyXG4gICAgQGluY2x1ZGUgLW5lYXQtd2FybihcIldyb25nIG51bWJlciBvZiBhcmd1bWVudHMgZm9yIGJyZWFrcG9pbnQoKS4gUmVhZCB0aGUgZG9jdW1lbnRhdGlvbiBmb3IgbW9yZSBkZXRhaWxzLlwiKTtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBudGgtb21lZ2EoJG50aCwgJGRpc3BsYXk6IGJsb2NrLCAkZGlyZWN0aW9uOiBkZWZhdWx0KSB7XHJcbiAgQGluY2x1ZGUgLW5lYXQtd2FybihcIlRoZSBudGgtb21lZ2EoKSBtaXhpbiBpcyBkZXByZWNhdGVkLiBQbGVhc2UgdXNlIG9tZWdhKCkgaW5zdGVhZC5cIik7XHJcbiAgQGluY2x1ZGUgb21lZ2EoJG50aCAkZGlzcGxheSwgJGRpcmVjdGlvbik7XHJcbn1cclxuXHJcbi8vLyBSZXNldHMgdGhlIGFjdGl2ZSBkaXNwbGF5IHByb3BlcnR5IHRvIGBibG9ja2AuIFBhcnRpY3VsYXJseSB1c2VmdWwgd2hlbiBjaGFuZ2luZyB0aGUgZGlzcGxheSBwcm9wZXJ0eSBpbiBhIHNpbmdsZSByb3cuXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBAaW5jbHVkZSByb3codGFibGUpO1xyXG4vLy8gICAgIC8vIENvbnRleHQgY2hhbmdlZCB0byB0YWJsZSBkaXNwbGF5XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyAgIEBpbmNsdWRlIHJlc2V0LWRpc3BsYXk7XHJcbi8vLyAgIC8vIENvbnRleHQgaXMgcmVzZXQgdG8gYmxvY2sgZGlzcGxheVxyXG5cclxuQG1peGluIHJlc2V0LWRpc3BsYXkge1xyXG4gICRjb250YWluZXItZGlzcGxheS10YWJsZTogZmFsc2UgIWdsb2JhbDtcclxuICBAaW5jbHVkZSAtbmVhdC13YXJuKFwiUmVzZXR0aW5nICRkaXNwbGF5IHdpbGwgYmUgZGVwcmVjYXRlZCBpbiBmdXR1cmUgdmVyc2lvbnMgaW4gZmF2b3Igb2YgdGhlIGRpc3BsYXkoKXsuLi59IG1peGluLlwiKTtcclxufVxyXG5cclxuLy8vIFJlc2V0cyB0aGUgYWN0aXZlIGxheW91dCBkaXJlY3Rpb24gdG8gdGhlIGRlZmF1bHQgdmFsdWUgc2V0IGluIGAkZGVmYXVsdC1sYXlvdXQtZGlyZWN0aW9uYC4gUGFydGljdWxhcmx5IHVzZWZ1bCB3aGVuIGNoYW5naW5nIHRoZSBsYXlvdXQgZGlyZWN0aW9uIGluIGEgc2luZ2xlIHJvdy5cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2VcclxuLy8vICAgLmVsZW1lbnQge1xyXG4vLy8gICAgIEBpbmNsdWRlIHJvdygkZGlyZWN0aW9uOiBSVEwpO1xyXG4vLy8gICAgIC8vIENvbnRleHQgY2hhbmdlZCB0byByaWdodC10by1sZWZ0XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyAgIEBpbmNsdWRlIHJlc2V0LWxheW91dC1kaXJlY3Rpb247XHJcbi8vLyAgIC8vIENvbnRleHQgaXMgcmVzZXQgdG8gbGVmdC10by1yaWdodFxyXG5cclxuQG1peGluIHJlc2V0LWxheW91dC1kaXJlY3Rpb24ge1xyXG4gICRsYXlvdXQtZGlyZWN0aW9uOiAkZGVmYXVsdC1sYXlvdXQtZGlyZWN0aW9uICFnbG9iYWw7XHJcbiAgQGluY2x1ZGUgLW5lYXQtd2FybihcIlJlc2V0dGluZyAkZGlyZWN0aW9uIHdpbGwgYmUgZGVwcmVjYXRlZCBpbiBmdXR1cmUgdmVyc2lvbnMgaW4gZmF2b3Igb2YgdGhlIGRpcmVjdGlvbigpey4uLn0gbWl4aW4uXCIpO1xyXG59XHJcblxyXG4vLy8gUmVzZXRzIGJvdGggdGhlIGFjdGl2ZSBsYXlvdXQgZGlyZWN0aW9uIGFuZCB0aGUgYWN0aXZlIGRpc3BsYXkgcHJvcGVydHkuXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXHJcbi8vLyAgIC5lbGVtZW50IHtcclxuLy8vICAgICBAaW5jbHVkZSByb3codGFibGUsIFJUTCk7XHJcbi8vLyAgICAgLy8gQ29udGV4dCBjaGFuZ2VkIHRvIHRhYmxlIHRhYmxlIGFuZCByaWdodC10by1sZWZ0XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyAgIEBpbmNsdWRlIHJlc2V0LWFsbDtcclxuLy8vICAgLy8gQ29udGV4dCBpcyByZXNldCB0byBibG9jayBkaXNwbGF5IGFuZCBsZWZ0LXRvLXJpZ2h0XHJcblxyXG5AbWl4aW4gcmVzZXQtYWxsIHtcclxuICBAaW5jbHVkZSByZXNldC1kaXNwbGF5O1xyXG4gIEBpbmNsdWRlIHJlc2V0LWxheW91dC1kaXJlY3Rpb247XHJcbn1cclxuIiwKCQkiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuQG1peGluIGdyaWQtY29sdW1uLWdyYWRpZW50KCR2YWx1ZXMuLi4pIHtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAkdmFsdWVzKTtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCAkdmFsdWVzKTtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiAtbXMtbGluZWFyLWdyYWRpZW50KGxlZnQsICR2YWx1ZXMpO1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCAkdmFsdWVzKTtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiB1bnF1b3RlKFwibGluZWFyLWdyYWRpZW50KHRvIGxlZnQsICN7JHZhbHVlc30pXCIpO1xyXG59XHJcblxyXG5AaWYgJHZpc3VhbC1ncmlkID09IHRydWUgb3IgJHZpc3VhbC1ncmlkID09IHllcyB7XHJcbiAgYm9keTpiZWZvcmUge1xyXG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3JhZGllbnQoZ3JhZGllbnQtc3RvcHMoJGdyaWQtY29sdW1ucykpO1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIG1heC13aWR0aDogJG1heC13aWR0aDtcclxuICAgIG9wYWNpdHk6ICR2aXN1YWwtZ3JpZC1vcGFjaXR5O1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICByaWdodDogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgIEBpZiAkdmlzdWFsLWdyaWQtaW5kZXggPT0gYmFjayB7XHJcbiAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgfVxyXG5cclxuICAgIEBlbHNlIGlmICR2aXN1YWwtZ3JpZC1pbmRleCA9PSBmcm9udCB7XHJcbiAgICAgIHotaW5kZXg6IDk5OTk7XHJcbiAgICB9XHJcblxyXG4gICAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gJHZpc3VhbC1ncmlkLWJyZWFrcG9pbnRzIHtcclxuICAgICAgQGlmICRicmVha3BvaW50IHtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkYnJlYWtwb2ludCkge1xyXG4gICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3JhZGllbnQoZ3JhZGllbnQtc3RvcHMoJGdyaWQtY29sdW1ucykpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLAoJCSJAY2hhcnNldCBcIlVURi04XCI7XHJcblxyXG4vLy8gQ2hhbmdlcyB0aGUgZGlzcGxheSBwcm9wZXJ0eSB1c2VkIGJ5IG90aGVyIG1peGlucyBjYWxsZWQgaW4gdGhlIGNvZGUgYmxvY2sgYXJndW1lbnQuXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRkaXNwbGF5IFtibG9ja11cclxuLy8vICAgRGlzcGxheSB2YWx1ZSB0byBiZSB1c2VkIHdpdGhpbiB0aGUgYmxvY2suIENhbiBiZSBgdGFibGVgIG9yIGBibG9ja2AuXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2Nzc1xyXG4vLy8gICBAaW5jbHVkZSBkaXNwbGF5LWNvbnRleHQodGFibGUpIHtcclxuLy8vICAgIC5kaXNwbGF5LXRhYmxlIHtcclxuLy8vICAgICAgQGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDYpO1xyXG4vLy8gICAgIH1cclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIGNzc1xyXG4vLy8gICAuZGlzcGxheS10YWJsZSB7XHJcbi8vLyAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XHJcbi8vLyAgICAgIC4uLlxyXG4vLy8gICB9XHJcblxyXG5AbWl4aW4gZGlzcGxheS1jb250ZXh0KCRkaXNwbGF5OiBibG9jaykge1xyXG4gICRzY29wZS1kaXNwbGF5OiAkY29udGFpbmVyLWRpc3BsYXktdGFibGU7XHJcbiAgJGNvbnRhaW5lci1kaXNwbGF5LXRhYmxlOiAkZGlzcGxheSA9PSB0YWJsZSAhZ2xvYmFsO1xyXG5cclxuICBAY29udGVudDtcclxuXHJcbiAgJGNvbnRhaW5lci1kaXNwbGF5LXRhYmxlOiAkc2NvcGUtZGlzcGxheSAhZ2xvYmFsO1xyXG59XHJcbiIsCgkJIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vLyBDaGFuZ2VzIHRoZSBkaXJlY3Rpb24gcHJvcGVydHkgdXNlZCBieSBvdGhlciBtaXhpbnMgY2FsbGVkIGluIHRoZSBjb2RlIGJsb2NrIGFyZ3VtZW50LlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZGlyZWN0aW9uIFtsZWZ0LXRvLXJpZ2h0XVxyXG4vLy8gICBMYXlvdXQgZGlyZWN0aW9uIHRvIGJlIHVzZWQgd2l0aGluIHRoZSBibG9jay4gQ2FuIGJlIGBsZWZ0LXRvLXJpZ2h0YCBvciBgcmlnaHQtdG8tbGVmdGAuXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXHJcbi8vLyAgIEBpbmNsdWRlIGRpcmVjdGlvbi1jb250ZXh0KHJpZ2h0LXRvLWxlZnQpIHtcclxuLy8vICAgIC5yaWdodC10by1sZWZ0LWJsb2NrIHtcclxuLy8vICAgICAgQGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDYpO1xyXG4vLy8gICAgIH1cclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcclxuLy8vICAgLnJpZ2h0LXRvLWxlZnQtYmxvY2sge1xyXG4vLy8gICAgIGZsb2F0OiByaWdodDtcclxuLy8vICAgICAgLi4uXHJcbi8vLyAgIH1cclxuXHJcbkBtaXhpbiBkaXJlY3Rpb24tY29udGV4dCgkZGlyZWN0aW9uOiBsZWZ0LXRvLXJpZ2h0KSB7XHJcbiAgJHNjb3BlLWRpcmVjdGlvbjogJGxheW91dC1kaXJlY3Rpb247XHJcblxyXG4gIEBpZiB0by1sb3dlci1jYXNlKCRkaXJlY3Rpb24pID09IFwibGVmdC10by1yaWdodFwiIHtcclxuICAgICRsYXlvdXQtZGlyZWN0aW9uOiBMVFIgIWdsb2JhbDtcclxuICB9IEBlbHNlIGlmIHRvLWxvd2VyLWNhc2UoJGRpcmVjdGlvbikgPT0gXCJyaWdodC10by1sZWZ0XCIge1xyXG4gICAgJGxheW91dC1kaXJlY3Rpb246IFJUTCAhZ2xvYmFsO1xyXG4gIH1cclxuXHJcbiAgQGNvbnRlbnQ7XHJcblxyXG4gICRsYXlvdXQtZGlyZWN0aW9uOiAkc2NvcGUtZGlyZWN0aW9uICFnbG9iYWw7XHJcbn1cclxuIiwKCQkiQGNoYXJzZXQgXCJ1dGYtOFwiO1xyXG5cclxuLy/ilqDnlLvlg4/jga7jg5HjgrnvvIhXUOOBrlVSTOOCkuiomOi8ieOBmeOCi++8iVxyXG4kaW1ncGFzcyA6IFwiXCI7XHJcblxyXG4vL+KWoOaoquW5heOBruioreWumlxyXG4kcGNTaXplOjEyMDFweDtcclxuJHRhYlNpemU6MTIwMHB4O1xyXG4kdGFiVGF0ZVNpemU6NzY5cHg7Ly/jgZPjgZPjga/kuI3li5XjgaDjgajmgJ3jgYZcclxuJHNwU2l6ZTo3NjhweDsvL+OBk+OBk+OBr+S4jeWLleOBoOOBqOaAneOBhlxyXG4vL+OBk+OBk+OCguWkieabtOOBl+OBpuOBu+OBl+OBhFxyXG4kcGNTaXplUHhOb25lOjEwMDA7XHJcbiR0YWJTaXplUHhOb25lOjk5OTtcclxuJHRhYlRhdGVTaXplUHhOb25lOjc2OTsvL+OBk+OBk+OBr+S4jeWLleOBoOOBqOaAneOBhlxyXG4kc3BTaXplUHhOb25lOjc2ODsvL+OBk+OBk+OBr+S4jeWLleOBoOOBqOaAneOBhlxyXG5cclxuXHJcbiRwY193YXBwZXJfc2l6ZTokcGNTaXplO1xyXG4kcGNfd2FwcGVyX3NpemVfcHg6JHBjU2l6ZVB4Tm9uZTtcclxuXHJcbi8v44Oa44O844K45YaF44Gn44Kz44Oz44OG44Oz44OE5bmF44GM5aSJ44KP44Gj44Gm44GE44KL5aC05ZCI44Gv44GT44KM44Gn6Kq/56+A44KC5Y+v6IO977yI5L2/44GG44GT44Go44Gv44G+44Ga54Sh44GE77yJXHJcbiRwY19pbm5uZXJfd2FwcGVyX3NpemUgOiA5NjBweDtcclxuIiwKCQkiQGNoYXJzZXQgXCJ1dGYtOFwiO1xyXG5cclxuXHJcbiNwYWdlX3RvcCB7XHJcbiAgYW5pbWF0aW9uOiBjbG9hay1pbiAwLjc1cztcclxufVxyXG5cclxuYm9keSB7XHJcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxufVxyXG5cclxuLmRpc3BsYXlfZmxleF9jZW50ZXIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuLmRpc3BsYXlfZmxleF9zdHJldGNoIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbn1cclxuLmRpc3BsYXlfZmxleF9zdHJldGNoX2JvdHRvbSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xyXG59XHJcbi5kaXNwbGF5X2ZsZXhfY2VudGVyX2JvdHRvbSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgXHJcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XHJcbn1cclxuLmRpc3BsYXlfZmxleCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC13cmFwOiB3cmFwOyBcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxufVxyXG4uZGlzcGxheV9yb3cge1xyXG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcclxufVxyXG4uZm9ybU1haW4ge1xyXG4gICAgZm9udC1mYW1pbHk6IOa4uOOCtOOCt+ODg+OCr+S9kywgJ1l1IEdvdGhpYycsIFl1R290aGljLCAn44OS44Op44Ku44OO6KeS44K044K344OD44KvIFBybycsICdIaXJhZ2lubyBLYWt1IEdvdGhpYyBQcm8nLCDjg6HjgqTjg6rjgqosIE1laXJ5bywgT3Nha2EsICfvvK3vvLMg77yw44K044K344OD44KvJywgJ01TIFBHb3RoaWMnLCBzYW5zLXNlcmlmO1xyXG4gICAgQGluY2x1ZGUgaW1nd2lkdGgoKTtcclxuICAgIEBpbmNsdWRlIHJzRm9udFNpemUoMTYsMTYsMTQpO1xyXG4gICAgY29sb3I6ICM0NDQ0NDQ7XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG59XHJcbi5mb3JtTWFpbiAge1xyXG4gICAgaW5wdXQsdGV4dGFyZWEsc2VsZWN0LGJ1dHRvbiB7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IOa4uOOCtOOCt+ODg+OCr+S9kywgJ1l1IEdvdGhpYycsIFl1R290aGljLCAn44OS44Op44Ku44OO6KeS44K044K344OD44KvIFBybycsICdIaXJhZ2lubyBLYWt1IEdvdGhpYyBQcm8nLCDjg6HjgqTjg6rjgqosIE1laXJ5bywgT3Nha2EsICfvvK3vvLMg77yw44K044K344OD44KvJywgJ01TIFBHb3RoaWMnLCBzYW5zLXNlcmlmO1xyXG4gICAgICAgIEBpbmNsdWRlIHJzRm9udFNpemUoMTYsMTYsMTQpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICB9XHJcbiAgICBoMSxoMixoMyxoNCxoNSxoNixwe1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcbn1cclxuXHJcbiNtaW50eW91LC5taW50eW91IHtcclxuICAgIGZvbnQtZmFtaWx5OiDmuLjmmI7mnJ0gLFwiWXUgTWluY2hvXCIsWXVNaW5jaG8sXCJIaXJhZ2lubyBNaW5jaG8gUHJvTlwiLFwiSGlyYWdpbm8gTWluY2hvIFByb1wiLEhHUyDmmI7mnJ0gRSxNZWlyeW8sc2VyaWY7XHJcbn1cclxuLnRqIHtcclxuICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGZvbnQtc2l6ZTogMC4xZW07XHJcbn1cclxuXHJcbi53YXBwZXIge1xyXG4gICAgQGluY2x1ZGUgd2FwcGVyX3NldHRpbmcoKTsgICAgXHJcbn1cclxuLy/ln7rmnKzoqK3lrppcclxudWwsbGksZGQsZHQsZGgge1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxufVxyXG5zdmcge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi5wY19vbmx5IHtcclxuICAgIEBpbmNsdWRlIHBjX29ubHkoKTtcclxufVxyXG4uc3Bfb25seSB7XHJcbiAgICBAaW5jbHVkZSBzcF9vbmx5KCk7XHJcbn1cclxuXHJcbi50X2NlbnRlciB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbkBmb3IgJGkgZnJvbSAwIHRocm91Z2ggOCB7XHJcbiAgICAucGNfb3JkZXJfI3skaX0ge1xyXG4gICAgICAgIG9yZGVyOiAkaTtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkc3ApIHtcclxuICAgICAgICAgICAgb3JkZXI6IHVuc2V0O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5md18jeyRpKjEwMH0ge1xyXG4gICAgICAgIGZvbnQtd2llZ2h0OiRpKjEwMDtcclxuICAgIH1cclxufVxyXG4udGV4dF9qdXN0aWZ5IHtcclxuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XHJcbiAgICB0ZXh0LWp1c3RpZnk6IGludGVyLWlkZW9ncmFwaDsgICAgXHJcbn1cclxuLmRfZmxleCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG59XHJcbi5kX2Jsb2NrIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcbi5kX25vbmUge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxufVxyXG4uZF9jb250ZW50cyB7XHJcbiAgICBkaXNwbGF5OiBjb250ZW50cztcclxufVxyXG4uZF9pbmxpbmUge1xyXG4gICAgZGlzcGxheTogaW5saW5lO1xyXG59XHJcbi5kX2dyaWQge1xyXG4gICAgZGlzcGxheTogZ3JpZDtcclxufVxyXG4uZF9pbmxpbmVCbG9jayB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbn1cclxuLmRfaW5saW5lRmxleCB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxufVxyXG4uZF9pbmxpbmVUYWJsZSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtdGFibGU7XHJcbn1cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuanVzdGlmeS1jb250ZW50XHJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbi5qX2JldHdlZW4ge1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyAgICBcclxufVxyXG4ual9zdGFydCB7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbn1cclxuLmpfZW5kIHtcclxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbn1cclxuLmpfY2VudGVyIHtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcbi5qX2Fyb3VuZCB7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcclxufVxyXG4ual9iYXNlbGluZSB7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJhc2VsaW5lO1xyXG59XHJcbi5qX2ZpcnN0QmFzZWxpbmUge1xyXG4gICAganVzdGlmeS1jb250ZW50OiBmaXJzdCBiYXNlbGluZTtcclxufVxyXG4ual9maXJzdEJhc2VsaW5lIHtcclxuICAgIGp1c3RpZnktY29udGVudDogbGFzdCBiYXNlbGluZTtcclxufVxyXG4ual9sZWZ0IHtcclxuICAgIGp1c3RpZnktY29udGVudDogbGVmdDtcclxufVxyXG4ual9yaWdodCB7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHJpZ2h0O1xyXG59XHJcbi5qX3NhZmUge1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzYWZlO1xyXG59XHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbmFsaWduLWl0ZW1zXHJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbi5hbGlfYmFzZWxpbmUge1xyXG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xyXG59XHJcbi5hbGlfY2VudGVyIHtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuLmFsaV9lbmQge1xyXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xyXG59XHJcbi5hbGlfc3RhcnQge1xyXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbn1cclxuLmFsaV9zdHJldGNoIHtcclxuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xyXG59XHJcbi5hbGlfdW5zZXQge1xyXG4gICAgYWxpZ24taXRlbXM6IHVuc2V0O1xyXG59XHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbmFsaWduLWNvbnRlbnRcclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuLmFsY19jZW50ZXIge1xyXG4gICAgYWxpZ24tY29udGVudDogY2VudGVyO1xyXG59XHJcbi5hbGNfZW5kIHtcclxuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG59XHJcbi5hbGNfYXJvdW5kIHtcclxuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcclxufVxyXG4uYWxjX2JldHdlZW4ge1xyXG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxufVxyXG4uYWxjX3N0cmV0Y2gge1xyXG4gICAgYWxpZ24tY29udGVudDogc3RyZXRjaDtcclxufVxyXG4uYWxjX3Vuc2V0IHtcclxuICAgIGFsaWduLWNvbnRlbnQ6IHVuc2V0O1xyXG59XHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbnJvd1xyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4ucm93IHtcclxuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XHJcbn1cclxuLnBvc3RpIHtcclxuICAgIHBvc2l0aW9uOnN0aWNreTtcclxufVxyXG4ucG9zdGEge1xyXG4gICAgcG9zaXRpb246c3RhdGljO1xyXG59XHJcbi5wb3JlIHtcclxuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG59XHJcbi5wb2FiIHtcclxuICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG59XHJcbi5wb2ZpeCB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbn0iLAoJCSJAY2hhcnNldCBcInV0Zi04XCI7XHJcbkBpbXBvcnQgJ21peGluJztcclxuXHJcbi8v44Oc44K/44Oz44Ki44Kv44K344On44Oz6ZaL5aeLXHJcbi8v44Ob44OQ44O844GZ44KL44Go5Lit44Gu55S75YOP44GM5bqD44GM44KLXHJcbkBtaXhpbiBob3Zlcl9pbWdfc2NhbGUoKSB7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgaW1nIHtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtIDAuMjVzIGxpbmVhcjtcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDAuMjVzIGxpbmVhcjtcclxuICAgICAgICAtby10cmFuc2l0aW9uOiAtby10cmFuc2Zvcm0gMC4yNXMgbGluZWFyO1xyXG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiAtbXMtdHJhbnNmb3JtIDAuMjVzIGxpbmVhcjtcclxuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNXMgbGluZWFyO1xyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4yKTtcclxuICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEuMik7XHJcbiAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMS4yKTtcclxuICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMS4yKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpO1xyXG4gICAgICAgIH1cclxuICAgIH0gICAgXHJcbn1cclxuXHJcblxyXG4vL0NTUyhodHRwOi8vd3d3Lm54d29ybGQubmV0L3RpcHMvY3NzLW9ubHktYnV0dG9uLWRlc2lnbi1hbmQtaG92ZXItZWZmZWN0cy5odG1s5Y+C54WnKVxyXG5AbWl4aW4gYnV0dG9uYmFzZSgpIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4zcztcclxuICAgIHRyYW5zaXRpb246IGFsbCAuM3M7XHJcbiAgICAmOjpiZWZvcmUge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR6LWluZGV4OiAtMTtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHRjb250ZW50OiAnJztcclxuXHQtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblx0LW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblx0LXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzO1xyXG5cdHRyYW5zaXRpb246IGFsbCAuM3M7XHJcbiAgICB9XHJcbiAgICAmOjphZnRlciB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHotaW5kZXg6IC0xO1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdGNvbnRlbnQ6ICcnO1xyXG5cdC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHQtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHQtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3M7XHJcblx0dHJhbnNpdGlvbjogYWxsIC4zcztcclxuICAgIH1cclxufVxyXG5AbWl4aW4gYnV0dG9udHlwZTAxKCRiYXNlYmFja2NvbG9yLCRiYXNldGV4dGNvbG9yLCRob3ZlcmJhY2tjb2xvciwkaG92ZXJ0ZXh0Y29sb3IpIHtcclxuICAgIEBpbmNsdWRlIGJ1dHRvbmJhc2UoKTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYXNlYmFja2NvbG9yO1xyXG4gICAgY29sb3I6ICRiYXNldGV4dGNvbG9yO1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyYmFja2NvbG9yO1xyXG4gICAgICAgIGNvbG9yOiAkaG92ZXJ0ZXh0Y29sb3I7XHJcbiAgICB9XHJcbn1cclxuLy/jg5vjg6/jg4Pjgajog4zmma/jga7oibLjgpLlpInmm7TjgZnjgovjgIJcclxuQG1peGluIGJ1dHRvbnR5cGUwMigkYmFzZWJhY2tjb2xvciwkYmFzZWJvZGVyY29sb3IsJGJhc2Vib2RlcnB4LCRiYXNldGV4dGNvbG9yLCRob3ZlcmJhY2tjb2xvciwkaG92ZXJib2RlcmNvbG9yLCRob3ZlcnRleHRjb2xvcikge1xyXG4gICAgQGluY2x1ZGUgYnV0dG9uYmFzZSgpO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhc2ViYWNrY29sb3I7XHJcbiAgICBib3JkZXI6ICRiYXNlYm9kZXJweCBzb2xpZCAkYmFzZWJvZGVyY29sb3I7XHJcbiAgICBjb2xvcjogJGJhc2V0ZXh0Y29sb3I7XHJcbiAgICAmOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXJiYWNrY29sb3I7XHJcblx0Ym9yZGVyLWNvbG9yOiAkaG92ZXJib2RlcmNvbG9yO1xyXG5cdGNvbG9yOiAkaG92ZXJ0ZXh0Y29sb3I7XHJcbiAgICB9XHJcbn1cclxuLy/og4zmma/jgqvjg6njg7zjgYzlt6blj7PjgavliIbjgYvjgozjgabjgYTjgY9cclxuQG1peGluIGJ1dHRvbnR5cGUwMygkYmFzZWJhY2tjb2xvciwkYmFzZWJvZGVyY29sb3IsJGJhc2Vib2RlcnB4LCRiYXNldGV4dGNvbG9yLCRob3ZlcmJhY2tjb2xvciwkaG92ZXJib2RlcmNvbG9yLCRob3ZlcnRleHRjb2xvcikge1xyXG4gICAgQGluY2x1ZGUgYnV0dG9uYmFzZSgpO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYXNlYmFja2NvbG9yO1xyXG4gICAgYm9yZGVyOiAkYmFzZWJvZGVycHggc29saWQgJGJhc2Vib2RlcmNvbG9yO1xyXG4gICAgY29sb3I6ICRiYXNldGV4dGNvbG9yO1xyXG4gICAgJjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJGhvdmVyYmFja2NvbG9yO1xyXG5cdGJvcmRlci1jb2xvcjogJGhvdmVyYm9kZXJjb2xvcjtcclxuXHRjb2xvcjogJGhvdmVydGV4dGNvbG9yO1xyXG4gICAgfVxyXG4gICAgJjo6YmVmb3Jle1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFzZWJhY2tjb2xvcjtcclxuICAgICAgICByaWdodDogMDtcclxuICAgIH1cclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhc2ViYWNrY29sb3I7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgIH1cclxuICAgICY6aG92ZXI6OmJlZm9yZSB7XHJcbiAgICAgICAgd2lkdGg6IDA7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyYmFja2NvbG9yO1xyXG4gICAgfVxyXG4gICAgJjpob3Zlcjo6YWZ0ZXIge1xyXG4gICAgICAgIHdpZHRoOiAwO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3ZlcmJhY2tjb2xvcjtcclxuICAgIH1cclxufVxyXG4vL+iDjOaZr+OCq+ODqeODvOOBjOS4iuS4i+OBq+WIhuOBi+OCjOOBpuOBhOOBj1xyXG5AbWl4aW4gYnV0dG9udHlwZTA0KCRiYXNlYmFja2NvbG9yLCRiYXNlYm9kZXJjb2xvciwkYmFzZWJvZGVycHgsJGJhc2V0ZXh0Y29sb3IsJGhvdmVyYmFja2NvbG9yLCRob3ZlcmJvZGVyY29sb3IsJGhvdmVydGV4dGNvbG9yKSB7XHJcbiAgICBAaW5jbHVkZSBidXR0b25iYXNlKCk7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAyO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhc2ViYWNrY29sb3I7XHJcbiAgICBib3JkZXI6ICRiYXNlYm9kZXJweCBzb2xpZCAkYmFzZWJvZGVyY29sb3I7XHJcbiAgICBjb2xvcjogJGJhc2V0ZXh0Y29sb3I7XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXJiYWNrY29sb3I7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkaG92ZXJib2RlcmNvbG9yO1xyXG4gICAgICAgIGNvbG9yOiAkaG92ZXJ0ZXh0Y29sb3I7XHJcbiAgICB9XHJcbiAgICAmOjpiZWZvcmUge1xyXG5cdGxlZnQ6IDA7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiA1MCU7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJGJhc2ViYWNrY29sb3I7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgfVxyXG4gICAgJjo6YWZ0ZXIge1xyXG5cdGxlZnQ6IDA7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiA1MCU7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJGJhc2ViYWNrY29sb3I7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgfVxyXG4gICAgJjpob3Zlcjo6YmVmb3JlIHtcclxuICAgICAgICBoZWlnaHQ6IDA7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyYmFja2NvbG9yO1xyXG4gICAgfVxyXG4gICAgJjpob3Zlcjo6YWZ0ZXIge1xyXG4gICAgICAgIGhlaWdodDogMDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXJiYWNrY29sb3I7XHJcbiAgICB9XHJcbn1cclxuLy/mloflrZfplpPpmpTjgpLluoPjgZLjgotcclxuQG1peGluIGJ1dHRvbnR5cGUwNSgkYmFzZWJhY2tjb2xvciwkYmFzZXRleHRjb2xvcikge1xyXG4gICAgQGluY2x1ZGUgYnV0dG9uYmFzZSgpO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhc2ViYWNrY29sb3I7XHJcbiAgICBjb2xvcjogJGJhc2V0ZXh0Y29sb3I7XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogNXB4O1xyXG4gICAgfVxyXG59XHJcbi8v5LiK44GL44KJ6IOM5pmv44GM44GZ44KL44Gj44Go6ZmN44KK44Gm44GP44KLXHJcbkBtaXhpbiBidXR0b250eXBlMDYoJGJhc2ViYWNrY29sb3IsJGJhc2Vib2RlcmNvbG9yLCRiYXNlYm9kZXJweCwkYmFzZXRleHRjb2xvciwkaG92ZXJiYWNrY29sb3IsJGhvdmVydGV4dGNvbG9yKSB7XHJcbiAgICBAaW5jbHVkZSBidXR0b25iYXNlKCk7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAyO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhc2ViYWNrY29sb3I7XHJcbiAgICBib3JkZXI6ICRiYXNlYm9kZXJweCBzb2xpZCAkYmFzZWJvZGVyY29sb3I7XHJcbiAgICBjb2xvcjogJGJhc2V0ZXh0Y29sb3I7XHJcbiAgICBsaW5lLWhlaWdodDogNTBweDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogJGhvdmVydGV4dGNvbG9yO1xyXG4gICAgfVxyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIHRvcDogLTEwMCU7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgfVxyXG4gICAgJjpob3Zlcjo6YWZ0ZXIge1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXJiYWNrY29sb3I7XHJcbiAgICB9XHJcbn1cclxuLy/lpaXjgYvjgonog4zmma/jgpLjgbXjgo/jgaPjgajooajnpLrjgZXjgZvjgosgIzFcclxuQG1peGluIGJ1dHRvbnR5cGUxMSgkYmFzZWJhY2tjb2xvciwkYmFzZWJvZGVyY29sb3IsJGJhc2Vib2RlcnB4LCRiYXNldGV4dGNvbG9yLCRob3ZlcmJhY2tjb2xvciwkaG92ZXJ0ZXh0Y29sb3IpIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDI7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFzZWJhY2tjb2xvcjtcclxuICAgIGJvcmRlcjogJGJhc2Vib2RlcnB4IHNvbGlkICRiYXNlYm9kZXJjb2xvcjtcclxuICAgIGNvbG9yOiAkYmFzZXRleHRjb2xvcjtcclxuICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiAkaG92ZXJ0ZXh0Y29sb3I7XHJcbiAgICB9XHJcbiAgICAmOjphZnRlciB7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSguNSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSguNSk7XHJcbiAgICB9XHJcbiAgICAmOmhvdmVyOjphZnRlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGhvdmVyYmFja2NvbG9yO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgfVxyXG59XHJcbi8v5aWl44GL44KJ6IOM5pmv44KS44G144KP44Gj44Go6KGo56S644GV44Gb44KLICMyXHJcbkBtaXhpbiBidXR0b250eXBlMTIoJGJhc2ViYWNrY29sb3IsJGJhc2Vib2RlcmNvbG9yLCRiYXNlYm9kZXJweCwkYmFzZXRleHRjb2xvciwkaG92ZXJiYWNrY29sb3IsJGhvdmVydGV4dGNvbG9yKSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAyO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhc2ViYWNrY29sb3I7XHJcbiAgICBib3JkZXI6ICRiYXNlYm9kZXJweCBzb2xpZCAkYmFzZWJvZGVyY29sb3I7XHJcbiAgICBjb2xvcjogJGJhc2V0ZXh0Y29sb3I7XHJcbiAgICBsaW5lLWhlaWdodDogNTBweDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogJGhvdmVydGV4dGNvbG9yO1xyXG4gICAgfVxyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLjUpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLjUpO1xyXG4gICAgfVxyXG4gICAgJjpob3Zlcjo6YWZ0ZXIgeyAgICAgICAgXHJcblx0LXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDIpIHJvdGF0ZSgxODBkZWcpO1xyXG5cdHRyYW5zZm9ybTogc2NhbGUoMikgcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGhvdmVyYmFja2NvbG9yO1xyXG4gICAgfVxyXG59XHJcbi8v5LiK44GL44KJ44OR44K/44OD44Go6KaB57Sg44GM6JC944Gh44Gm44GP44KLXHJcbkBtaXhpbiBidXR0b250eXBlMTMoJGJhc2ViYWNrY29sb3IsJGJhc2Vib2RlcmNvbG9yLCRiYXNlYm9kZXJweCwkYmFzZXRleHRjb2xvciwkaG92ZXJ0ZXh0Y29sb3IpIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0ei1pbmRleDogMjtcclxuXHRib3JkZXI6ICRiYXNlYm9kZXJweCBzb2xpZCAkYmFzZWJvZGVyY29sb3I7XHJcblx0Y29sb3I6ICRiYXNldGV4dGNvbG9yO1xyXG5cdGxpbmUtaGVpZ2h0OiA1MHB4O1xyXG5cdC13ZWJraXQtcGVyc3BlY3RpdmU6IDMwMHB4O1xyXG5cdHBlcnNwZWN0aXZlOiAzMDBweDtcclxuXHQtd2Via2l0LXRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XHJcblx0dHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiAkaG92ZXJ0ZXh0Y29sb3I7XHJcbiAgICB9XHJcbiAgICAmOjphZnRlciB7XHJcblx0dG9wOiAwO1xyXG5cdGxlZnQ6IDA7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdGJhY2tncm91bmQ6ICRiYXNlYmFja2NvbG9yO1xyXG5cdC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIHRvcDtcclxuXHR0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgdG9wO1xyXG5cdC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVYKDkwZGVnKTtcclxuXHR0cmFuc2Zvcm06IHJvdGF0ZVgoOTBkZWcpO1xyXG5cdG9wYWNpdHk6IDA7XHJcbiAgICB9XHJcbiAgICAmOmhvdmVyOjphZnRlciB7ICAgICAgICBcclxuXHQtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWCgwKTtcclxuXHR0cmFuc2Zvcm06IHJvdGF0ZVgoMCk7XHJcblx0b3BhY2l0eTogMTtcclxuICAgIH1cclxufVxyXG5AbWl4aW4gYnV0dG9udHlwZTE0KCRiYXNlYmFja2NvbG9yLCRiYXNlYm9kZXJjb2xvciwkYmFzZWJvZGVycHgsJGJhc2V0ZXh0Y29sb3IsJGhvdmVyYmFja2NvbG9yLCRob3ZlcmJvZGVyY29sb3IsJGhvdmVydGV4dGNvbG9yKSB7XHJcbiAgICBib3JkZXI6ICRiYXNlYm9kZXJweCBzb2xpZCAkYmFzZWJvZGVyY29sb3I7XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjI1cztcclxuICAgIGJhY2tncm91bmQ6ICRiYXNlYmFja2NvbG9yO1xyXG4gICAgY29sb3I6ICRiYXNldGV4dGNvbG9yO1xyXG4gICAgei1pbmRleDogMjtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgJjphZnRlcntcclxuICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHotaW5kZXg6IC0yO1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGxlZnQ6IDAlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICB3aWR0aDogMTUwJTtcclxuICAgICAgICBoZWlnaHQ6IDE1MCU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGJhc2ViYWNrY29sb3I7XHJcbiAgICB9XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDonJztcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBsZWZ0OiAtNSU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIHdpZHRoOiAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGhvdmVyYmFja2NvbG9yO1xyXG4gICAgfVxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgIGNvbG9yOiAkaG92ZXJ0ZXh0Y29sb3I7XHJcbiAgICAgICAgYm9yZGVyOiAkYmFzZWJvZGVycHggc29saWQgJGhvdmVyYm9kZXJjb2xvcjtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgd2lkdGg6IDExMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbkBtaXhpbiBidXR0b250eXBlMTRfa2FpKCRiYXNlYmFja2NvbG9yLCRiYXNlYm9kZXJjb2xvciwkYmFzZWJvZGVycHgsJGJhc2V0ZXh0Y29sb3IsJGhvdmVyYmFja2NvbG9yLCRob3ZlcmJvZGVyY29sb3IsJGhvdmVydGV4dGNvbG9yKSB7XHJcbiAgICBib3JkZXI6ICRiYXNlYm9kZXJweCBzb2xpZCAkYmFzZWJvZGVyY29sb3I7XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjI1cztcclxuICAgIGJhY2tncm91bmQ6ICRiYXNlYmFja2NvbG9yO1xyXG4gICAgY29sb3I6ICRiYXNldGV4dGNvbG9yO1xyXG4gICAgei1pbmRleDogMjtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC41cztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogLTUlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICB3aWR0aDogMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRob3ZlcmJhY2tjb2xvcjtcclxuICAgIH1cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGJhc2ViYWNrY29sb3I7XHJcbiAgICAgICAgY29sb3I6ICRob3ZlcnRleHRjb2xvcjtcclxuICAgICAgICBib3JkZXI6ICRiYXNlYm9kZXJweCBzb2xpZCAkaG92ZXJib2RlcmNvbG9yO1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICB3aWR0aDogMTEwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5AbWl4aW4gYnV0dG9udHlwZTE1KCRiYXNlYmFja2NvbG9yLCRiYXNlYm9kZXJjb2xvciwkYmFzZWJvZGVycHgsJGJhc2V0ZXh0Y29sb3IsJGhvdmVyYmFja2NvbG9yLCRob3ZlcmJvZGVyY29sb3IsJGhvdmVydGV4dGNvbG9yKSB7XHJcbiAgICBib3JkZXI6ICRiYXNlYm9kZXJweCBzb2xpZCAkYmFzZWJvZGVyY29sb3I7XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjI1cztcclxuICAgIGJhY2tncm91bmQ6ICRiYXNlYmFja2NvbG9yO1xyXG4gICAgY29sb3I6ICRiYXNldGV4dGNvbG9yO1xyXG4gICAgei1pbmRleDogMjtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6Jyc7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC41cztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogMCU7IHJpZ2h0OiAwO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICB3aWR0aDogMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRob3ZlcmJhY2tjb2xvcjtcclxuICAgIH1cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgY29sb3I6ICRob3ZlcnRleHRjb2xvcjtcclxuICAgICAgICBib3JkZXI6ICRiYXNlYm9kZXJweCBzb2xpZCAkaG92ZXJib2RlcmNvbG9yO1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBidXR0b250eXBlMTgoJGJhc2ViYWNrY29sb3IsJGJhc2Vib2RlcmNvbG9yLCRiYXNlYm9kZXJweCwkYmFzZXRleHRjb2xvciwkaG92ZXJiYWNrY29sb3IsJGhvdmVyYm9kZXJjb2xvciwkaG92ZXJ0ZXh0Y29sb3IpIHtcclxuICAgIGJvcmRlcjogJGJhc2Vib2RlcnB4IHNvbGlkICRiYXNlYm9kZXJjb2xvcjtcclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMjVzO1xyXG4gICAgYmFja2dyb3VuZDogJGJhc2ViYWNrY29sb3I7XHJcbiAgICBjb2xvcjogJGJhc2V0ZXh0Y29sb3I7XHJcbiAgICB6LWluZGV4OiAyO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDonJztcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRob3ZlcmJhY2tjb2xvcjtcclxuICAgIH1cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgY29sb3I6ICRob3ZlcnRleHRjb2xvcjtcclxuICAgICAgICBib3JkZXI6ICRiYXNlYm9kZXJweCBzb2xpZCAkaG92ZXJib2RlcmNvbG9yO1xyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuQG1peGluIGJ1dHRvbnR5cGUxNF9rYWkoJGJhc2ViYWNrY29sb3IsJGJhc2Vib2RlcmNvbG9yLCRiYXNlYm9kZXJweCwkYmFzZXRleHRjb2xvciwkaG92ZXJiYWNrY29sb3IsJGhvdmVyYm9kZXJjb2xvciwkaG92ZXJ0ZXh0Y29sb3IpIHtcclxuICAgIGJvcmRlcjogJGJhc2Vib2RlcnB4IHNvbGlkICRiYXNlYm9kZXJjb2xvcjtcclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMjVzO1xyXG4gICAgYmFja2dyb3VuZDogJGJhc2ViYWNrY29sb3I7XHJcbiAgICBjb2xvcjogJGJhc2V0ZXh0Y29sb3I7XHJcbiAgICB6LWluZGV4OiAyO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDonJztcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBsZWZ0OiAtNSU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIHdpZHRoOiAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGhvdmVyYmFja2NvbG9yO1xyXG4gICAgfVxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkYmFzZWJhY2tjb2xvcjtcclxuICAgICAgICBjb2xvcjogJGhvdmVydGV4dGNvbG9yO1xyXG4gICAgICAgIGJvcmRlcjogJGJhc2Vib2RlcnB4IHNvbGlkICRob3ZlcmJvZGVyY29sb3I7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMTAlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4vL+ODnOOCv+ODs+OCouOCr+OCt+ODp+ODs+e1guS6hlxyXG5cclxuQG1peGluIGFuaW1hdGlvbl9iYXNlKCkge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDFzO1xyXG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcclxuICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XHJcbiAgICAmLmluZmluaXRlIHtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xyXG4gICAgICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xyXG4gICAgfVxyXG4gICAgJi5oaW5nZSB7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDJzO1xyXG4gICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMnM7XHJcbiAgICB9XHJcbiAgICAmLmZsaXBPdXRYLFxyXG4gICAgJi5mbGlwT3V0WSxcclxuICAgICYuYm91bmNlSW4sXHJcbiAgICAmLmJvdW5jZU91dCB7XHJcbiAgICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAuNzVzO1xyXG4gICAgICBhbmltYXRpb24tZHVyYXRpb246IC43NXM7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vYm91bmNl44Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fYm91bmNlKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBib3VuY2Uge1xyXG4gICAgICBmcm9tLCAyMCUsIDUzJSwgODAlLCB0byB7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNDAlLCA0MyUge1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzU1LCAwLjA1MCwgMC44NTUsIDAuMDYwKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUwLCAwLjg1NSwgMC4wNjApO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzBweCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDcwJSB7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUwLCAwLjg1NSwgMC4wNjApO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNTAsIDAuODU1LCAwLjA2MCk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xNXB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xNXB4LCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgOTAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwtNHB4LDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwtNHB4LDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAa2V5ZnJhbWVzIGJvdW5jZSB7XHJcbiAgICAgIGZyb20sIDIwJSwgNTMlLCA4MCUsIHRvIHtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA0MCUsIDQzJSB7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUwLCAwLjg1NSwgMC4wNjApO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNTAsIDAuODU1LCAwLjA2MCk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMHB4LCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNzAlIHtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNTAsIDAuODU1LCAwLjA2MCk7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzU1LCAwLjA1MCwgMC44NTUsIDAuMDYwKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTE1cHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTE1cHgsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA5MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLC00cHgsMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLC00cHgsMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZTtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBib3VuY2U7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xyXG59XHJcblxyXG4vL2ZsYXNo44Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fZmxhc2goKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmxhc2g7XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmxhc2g7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgZmxhc2gge1xyXG4gICAgICBmcm9tLCA1MCUsIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAyNSUsIDc1JSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgZmxhc2gge1xyXG4gICAgICBmcm9tLCA1MCUsIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAyNSUsIDc1JSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL3B1bHNl44Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fcHVsc2UoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcHVsc2U7XHJcbiAgICBhbmltYXRpb24tbmFtZTogcHVsc2U7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgcHVsc2Uge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDUwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgMS4wNSwgMS4wNSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIDEuMDUsIDEuMDUpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyBwdWxzZSB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNTAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAxLjA1LCAxLjA1KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgMS4wNSwgMS4wNSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9ydWJiZXJCYW5k44Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fcnViYmVyQmFuZCgpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBydWJiZXJCYW5kO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHJ1YmJlckJhbmQ7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgcnViYmVyQmFuZCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgMzAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjI1LCAwLjc1LCAxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4yNSwgMC43NSwgMSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDQwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC43NSwgMS4yNSwgMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNzUsIDEuMjUsIDEpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA1MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMTUsIDAuODUsIDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjE1LCAwLjg1LCAxKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNjUlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguOTUsIDEuMDUsIDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguOTUsIDEuMDUsIDEpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA3NSUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIC45NSwgMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIC45NSwgMSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIEBrZXlmcmFtZXMgcnViYmVyQmFuZCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgMzAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjI1LCAwLjc1LCAxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4yNSwgMC43NSwgMSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDQwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC43NSwgMS4yNSwgMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNzUsIDEuMjUsIDEpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA1MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMTUsIDAuODUsIDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjE1LCAwLjg1LCAxKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNjUlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguOTUsIDEuMDUsIDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguOTUsIDEuMDUsIDEpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA3NSUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIC45NSwgMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIC45NSwgMSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9zaGFrZeOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX3NoYWtlKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNoYWtlO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHNoYWtlO1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIHNoYWtlIHtcclxuICAgICAgZnJvbSwgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAxMCUsIDMwJSwgNTAlLCA3MCUsIDkwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgMjAlLCA0MCUsIDYwJSwgODAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgc2hha2Uge1xyXG4gICAgICBmcm9tLCB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDEwJSwgMzAlLCA1MCUsIDcwJSwgOTAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAyMCUsIDQwJSwgNjAlLCA4MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vaGVhZFNoYWtl44Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25faGVhZFNoYWtlKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XHJcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGhlYWRTaGFrZTtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBoZWFkU2hha2U7ICAgIFxyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIGhlYWRTaGFrZSB7XHJcbiAgICAgIDAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICAgIH1cclxuICAgICAgNi41JSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTZweCkgcm90YXRlWSgtOWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC02cHgpIHJvdGF0ZVkoLTlkZWcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAxOC41JSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXB4KSByb3RhdGVZKDdkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1cHgpIHJvdGF0ZVkoN2RlZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDMxLjUlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGVZKC01ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlWSgtNWRlZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDQzLjUlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpIHJvdGF0ZVkoM2RlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCkgcm90YXRlWSgzZGVnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNTAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIEBrZXlmcmFtZXMgaGVhZFNoYWtlIHtcclxuICAgICAgMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNi41JSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTZweCkgcm90YXRlWSgtOWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC02cHgpIHJvdGF0ZVkoLTlkZWcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAxOC41JSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXB4KSByb3RhdGVZKDdkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1cHgpIHJvdGF0ZVkoN2RlZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDMxLjUlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGVZKC01ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlWSgtNWRlZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDQzLjUlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpIHJvdGF0ZVkoM2RlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCkgcm90YXRlWSgzZGVnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNTAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9zd2luZ+OBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX3N3aW5nKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzd2luZztcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBzd2luZztcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBzd2luZyB7XHJcbiAgICAgIDIwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDE1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDE1ZGVnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNDAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTEwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC0xMGRlZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDYwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNWRlZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDgwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC01ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC01ZGVnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDBkZWcpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyBzd2luZyB7XHJcbiAgICAgIDIwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDE1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDE1ZGVnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNDAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTEwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC0xMGRlZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDYwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNWRlZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDgwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC01ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC01ZGVnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDBkZWcpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vdGFkYeOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX3RhZGEoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogdGFkYTtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiB0YWRhO1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIHRhZGEge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDEwJSwgMjAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguOSwgLjksIC45KSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC45LCAuOSwgLjkpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgMzAlLCA1MCUsIDcwJSwgOTAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKSByb3RhdGUzZCgwLCAwLCAxLCAzZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDQwJSwgNjAlLCA4MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyB0YWRhIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAxMCUsIDIwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjksIC45LCAuOSkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguOSwgLjksIC45KSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDMwJSwgNTAlLCA3MCUsIDkwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZTNkKDAsIDAsIDEsIDNkZWcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA0MCUsIDYwJSwgODAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL3dvYmJsZeOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX3dvYmJsZSgpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB3b2JibGU7XHJcbiAgICBhbmltYXRpb24tbmFtZTogd29iYmxlO1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIHdvYmJsZSB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgMTUlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTVkZWcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAzMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDNkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAzZGVnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNDUlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTE1JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTE1JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA2MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDJkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAyZGVnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNzUlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0xZGVnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgd29iYmxlIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAxNSUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDMwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDNkZWcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA0NSUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDYwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgMmRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDJkZWcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA3NSUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0xZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTFkZWcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vd29iYmxl44Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25famVsbG8oKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogamVsbG87XHJcbiAgICBhbmltYXRpb24tbmFtZTogamVsbG87XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBqZWxsbyB7XHJcbiAgICAgIGZyb20sIDExLjElLCB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAyMi4yJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC0xMi41ZGVnKSBza2V3WSgtMTIuNWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgtMTIuNWRlZykgc2tld1koLTEyLjVkZWcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAzMy4zJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDYuMjVkZWcpIHNrZXdZKDYuMjVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2tld1goNi4yNWRlZykgc2tld1koNi4yNWRlZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDQ0LjQlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTMuMTI1ZGVnKSBza2V3WSgtMy4xMjVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2tld1goLTMuMTI1ZGVnKSBza2V3WSgtMy4xMjVkZWcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA1NS41JSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDEuNTYyNWRlZykgc2tld1koMS41NjI1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKDEuNTYyNWRlZykgc2tld1koMS41NjI1ZGVnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNjYuNiUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtMC43ODEyNWRlZykgc2tld1koLTAuNzgxMjVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2tld1goLTAuNzgxMjVkZWcpIHNrZXdZKC0wLjc4MTI1ZGVnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNzcuNyUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgwLjM5MDYyNWRlZykgc2tld1koMC4zOTA2MjVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2tld1goMC4zOTA2MjVkZWcpIHNrZXdZKDAuMzkwNjI1ZGVnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgODguOCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtMC4xOTUzMTI1ZGVnKSBza2V3WSgtMC4xOTUzMTI1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKC0wLjE5NTMxMjVkZWcpIHNrZXdZKC0wLjE5NTMxMjVkZWcpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyBqZWxsbyB7XHJcbiAgICAgIGZyb20sIDExLjElLCB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAyMi4yJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC0xMi41ZGVnKSBza2V3WSgtMTIuNWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgtMTIuNWRlZykgc2tld1koLTEyLjVkZWcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAzMy4zJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDYuMjVkZWcpIHNrZXdZKDYuMjVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2tld1goNi4yNWRlZykgc2tld1koNi4yNWRlZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDQ0LjQlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTMuMTI1ZGVnKSBza2V3WSgtMy4xMjVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2tld1goLTMuMTI1ZGVnKSBza2V3WSgtMy4xMjVkZWcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA1NS41JSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDEuNTYyNWRlZykgc2tld1koMS41NjI1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKDEuNTYyNWRlZykgc2tld1koMS41NjI1ZGVnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNjYuNiUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtMC43ODEyNWRlZykgc2tld1koLTAuNzgxMjVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2tld1goLTAuNzgxMjVkZWcpIHNrZXdZKC0wLjc4MTI1ZGVnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNzcuNyUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgwLjM5MDYyNWRlZykgc2tld1koMC4zOTA2MjVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2tld1goMC4zOTA2MjVkZWcpIHNrZXdZKDAuMzkwNjI1ZGVnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgODguOCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtMC4xOTUzMTI1ZGVnKSBza2V3WSgtMC4xOTUzMTI1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKC0wLjE5NTMxMjVkZWcpIHNrZXdZKC0wLjE5NTMxMjVkZWcpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vYm91bmNlSW7jga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9ib3VuY2VJbigpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbjtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbjtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VJbiB7XHJcbiAgICAgIGZyb20sIDIwJSwgNDAlLCA2MCUsIDgwJSwgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDIwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA0MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC45LCAuOSwgLjkpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguOSwgLjksIC45KTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNjAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDMsIDEuMDMsIDEuMDMpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjAzLCAxLjAzLCAxLjAzKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgODAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguOTcsIC45NywgLjk3KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjk3LCAuOTcsIC45Nyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgYm91bmNlSW4ge1xyXG4gICAgICBmcm9tLCAyMCUsIDQwJSwgNjAlLCA4MCUsIHRvIHtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgMCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAyMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNDAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguOSwgLjksIC45KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjksIC45LCAuOSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDYwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjAzLCAxLjAzLCAxLjAzKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4wMywgMS4wMywgMS4wMyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDgwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjk3LCAuOTcsIC45Nyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC45NywgLjk3LCAuOTcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9ib3VuY2VJbkRvd27jga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9ib3VuY2VJbkRvd24oKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlSW5Eb3duO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluRG93bjtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VJbkRvd24ge1xyXG4gICAgICBmcm9tLCA2MCUsIDc1JSwgOTAlLCB0byB7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDAlIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzAwMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMDAwcHgsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA2MCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDI1cHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjVweCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDc1JSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgOTAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNXB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDVweCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIGJvdW5jZUluRG93biB7XHJcbiAgICAgIGZyb20sIDYwJSwgNzUlLCA5MCUsIHRvIHtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgMCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMDAwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwMDBweCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDYwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjVweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyNXB4LCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNzUlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA5MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1cHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNXB4LCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL2JvdW5jZUluTGVmdOOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX2JvdW5jZUluTGVmdCgpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbkxlZnQ7XHJcbiAgICBhbmltYXRpb24tbmFtZTogYm91bmNlSW5MZWZ0O1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZUluTGVmdCB7XHJcbiAgICAgIGZyb20sIDYwJSwgNzUlLCA5MCUsIHRvIHtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgMCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0zMDAwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTMwMDBweCwgMCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDYwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjVweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyNXB4LCAwLCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNzUlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA5MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg1cHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoNXB4LCAwLCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgYm91bmNlSW5MZWZ0IHtcclxuICAgICAgZnJvbSwgNjAlLCA3NSUsIDkwJSwgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTMwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMzAwMHB4LCAwLCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNjAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyNXB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDI1cHgsIDAsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA3NSUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDkwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDVweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg1cHgsIDAsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vYm91bmNlSW5SaWdodOOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX2JvdW5jZUluUmlnaHQoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlSW5SaWdodDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VJblJpZ2h0O1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZUluUmlnaHQge1xyXG4gICAgICBmcm9tLCA2MCUsIDc1JSwgOTAlLCB0byB7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDMwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgzMDAwcHgsIDAsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA2MCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNXB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNXB4LCAwLCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNzUlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgOTAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTVweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNXB4LCAwLCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgYm91bmNlSW5SaWdodCB7XHJcbiAgICAgIGZyb20sIDYwJSwgNzUlLCA5MCUsIHRvIHtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMzAwMHB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDMwMDBweCwgMCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDYwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1cHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1cHgsIDAsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA3NSUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA5MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNXB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01cHgsIDAsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vYm91bmNlSW5VcOOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX2JvdW5jZUluVXAoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlSW5VcDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VJblVwO1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZUluVXAge1xyXG4gICAgICBmcm9tLCA2MCUsIDc1JSwgOTAlLCB0byB7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDMwMDBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAzMDAwcHgsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA2MCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNzUlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgOTAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTVweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNXB4LCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyBib3VuY2VJblVwIHtcclxuICAgICAgZnJvbSwgNjAlLCA3NSUsIDkwJSwgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAzMDAwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMzAwMHB4LCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNjAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDc1JSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDkwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01cHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTVweCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL2JvdW5jZU91dOOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX2JvdW5jZU91dCgpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXQ7XHJcbiAgICBhbmltYXRpb24tbmFtZTogYm91bmNlT3V0O1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZU91dCB7XHJcbiAgICAgIDIwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjksIC45LCAuOSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC45LCAuOSwgLjkpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA1MCUsIDU1JSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgYm91bmNlT3V0IHtcclxuICAgICAgMjAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguOSwgLjksIC45KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjksIC45LCAuOSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDUwJSwgNTUlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vYm91bmNlT3V0RG93buOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX2JvdW5jZU91dERvd24oKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlT3V0RG93bjtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXREb3duO1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZU91dERvd24ge1xyXG4gICAgICAyMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA0MCUsIDQ1JSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIGJvdW5jZU91dERvd24ge1xyXG4gICAgICAyMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA0MCUsIDQ1JSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9ib3VuY2VPdXRMZWZ044Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fYm91bmNlT3V0TGVmdCgpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRMZWZ0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dExlZnQ7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlT3V0TGVmdCB7XHJcbiAgICAgIDIwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMHB4LCAwLCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIGJvdW5jZU91dExlZnQge1xyXG4gICAgICAyMCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjBweCwgMCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vYm91bmNlT3V0TGVmdOOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX2JvdW5jZU91dFJpZ2h0KCl7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlT3V0UmlnaHQ7XHJcbiAgICBhbmltYXRpb24tbmFtZTogYm91bmNlT3V0UmlnaHQ7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlT3V0UmlnaHQge1xyXG4gICAgICAyMCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMHB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMHB4LCAwLCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyBib3VuY2VPdXRSaWdodCB7XHJcbiAgICAgIDIwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwcHgsIDAsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9ib3VuY2VPdXRVcOOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX2JvdW5jZU91dFVwKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dFVwO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dFVwO1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZU91dFVwIHtcclxuICAgICAgMjAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA0MCUsIDQ1JSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMHB4LCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIGJvdW5jZU91dFVwIHtcclxuICAgICAgMjAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA0MCUsIDQ1JSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMHB4LCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9mYWRlSW7jga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9mYWRlSW4oKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbjtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW4ge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgZmFkZUluIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9mYWRlSW7jga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9mYWRlSW5Eb3duKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd247XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZUluRG93bjtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5Eb3duIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIGZhZGVJbkRvd24ge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL2ZhZGVJbkRvd25CaWfjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9mYWRlSW5Eb3duQmlnKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd25CaWc7XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZUluRG93bkJpZztcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5Eb3duQmlnIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyBmYWRlSW5Eb3duQmlnIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vZmFkZUluTGVmdOOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX2ZhZGVJbkxlZnQoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluTGVmdDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5MZWZ0O1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkxlZnQge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGtleWZyYW1lcyBmYWRlSW5MZWZ0IHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9mYWRlSW5MZWZ044Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fZmFkZUluTGVmdEJpZygpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5MZWZ0QmlnO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnRCaWc7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluTGVmdEJpZyB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgZmFkZUluTGVmdEJpZyB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL2ZhZGVJblJpZ2h044Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fZmFkZUluUmlnaHQoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHQ7XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHQ7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluUmlnaHQge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIGZhZGVJblJpZ2h0IHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vZmFkZUluUmlnaHRCaWfjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9mYWRlSW5SaWdodEJpZygpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodEJpZztcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodEJpZztcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5SaWdodEJpZyB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIGZhZGVJblJpZ2h0QmlnIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL2ZhZGVJblVw44Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fZmFkZUluVXAoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluVXA7XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZUluVXA7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluVXAge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIGZhZGVJblVwIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vZmFkZUluVXBCaWfjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9mYWRlSW5VcEJpZygpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5VcEJpZztcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5VcEJpZztcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5VcEJpZyB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIGZhZGVJblVwQmlnIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL2ZhZGVPdXTjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9mYWRlT3V0KCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZU91dDtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0IHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIGZhZGVPdXQge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL2ZhZGVPdXREb3du44Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fZmFkZU91dERvd24oKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dERvd247XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZU91dERvd247XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dERvd24ge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgZmFkZU91dERvd24ge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL2ZhZGVPdXREb3duQmln44Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fZmFkZU91dERvd25CaWcoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dERvd25CaWc7XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZU91dERvd25CaWc7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dERvd25CaWcge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIGZhZGVPdXREb3duQmlnIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vZmFkZU91dExlZnTjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9mYWRlT3V0TGVmdCgpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0TGVmdDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0TGVmdDtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0TGVmdCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIGZhZGVPdXRMZWZ0IHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL2ZhZGVPdXRMZWZ0Qmln44Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fZmFkZU91dExlZnRCaWcoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dExlZnRCaWc7XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZU91dExlZnRCaWc7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dExlZnRCaWcge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgZmFkZU91dExlZnRCaWcge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL2ZhZGVPdXRSaWdodOOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX2ZhZGVPdXRSaWdodCgpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0UmlnaHQ7XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZU91dFJpZ2h0O1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRSaWdodCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyBmYWRlT3V0UmlnaHQge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcbn1cclxuXHJcbi8vZmFkZU91dFJpZ2h0Qmln44Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fZmFkZU91dFJpZ2h0QmlnKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRSaWdodEJpZztcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0UmlnaHRCaWc7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFJpZ2h0QmlnIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyBmYWRlT3V0UmlnaHRCaWcge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9mYWRlT3V0VXDjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9mYWRlT3V0VXAoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dFVwO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRVcDsgICAgXHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFVwIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgZmFkZU91dFVwIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL2ZhZGVPdXRVcEJpZ+OBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX2ZhZGVPdXRVcEJpZygpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0VXBCaWc7XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZU91dFVwQmlnO1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRVcEJpZyB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyBmYWRlT3V0VXBCaWcge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL2ZsaXDjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9mbGlwKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmbGlwO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZsaXA7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgZmxpcCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTM2MGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTM2MGRlZyk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcclxuICAgICAgfVxyXG5cclxuICAgICAgNDAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHRyYW5zbGF0ZTNkKDAsIDAsIDE1MHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTkwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE5MGRlZyk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcclxuICAgICAgfVxyXG5cclxuICAgICAgNTAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHRyYW5zbGF0ZTNkKDAsIDAsIDE1MHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTcwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE3MGRlZyk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDgwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZTNkKC45NSwgLjk1LCAuOTUpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoLjk1LCAuOTUsIC45NSk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAa2V5ZnJhbWVzIGZsaXAge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0zNjBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0zNjBkZWcpO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDQwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE5MGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgdHJhbnNsYXRlM2QoMCwgMCwgMTUwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xOTBkZWcpO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDUwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE3MGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgdHJhbnNsYXRlM2QoMCwgMCwgMTUwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xNzBkZWcpO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA4MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCguOTUsIC45NSwgLjk1KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZTNkKC45NSwgLjk1LCAuOTUpO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL2ZsaXBJbljjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9mbGlwSW5YKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xyXG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmxpcEluWDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBmbGlwSW5YO1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIGZsaXBJblgge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCA5MGRlZyk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgNDAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC0yMGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgICAgfVxyXG5cclxuICAgICAgNjAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDEwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAxMGRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgODAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC01ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtNWRlZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyBmbGlwSW5YIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCA5MGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgOTBkZWcpO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDQwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtMjBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC0yMGRlZyk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDYwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAxMGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgMTBkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDgwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtNWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTVkZWcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL2ZsaXBJblnjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9mbGlwSW5ZKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xyXG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmxpcEluWTtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBmbGlwSW5ZO1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIGZsaXBJblkge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDkwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgNDAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0yMGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTIwZGVnKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgICAgfVxyXG5cclxuICAgICAgNjAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDEwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAxMGRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgODAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC01ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtNWRlZyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyBmbGlwSW5ZIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDQwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMjBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0yMGRlZyk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDYwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAxMGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgMTBkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDgwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtNWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTVkZWcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL2ZsaXBPdXRY44Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fZmxpcE91dFgoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmxpcE91dFg7XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmxpcE91dFg7XHJcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcclxuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBmbGlwT3V0WCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDMwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtMjBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC0yMGRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgOTBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyBmbGlwT3V0WCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDMwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtMjBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC0yMGRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgOTBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vZmxpcE91dFnjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9mbGlwT3V0WSgpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcclxuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsaXBPdXRZO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZsaXBPdXRZO1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIGZsaXBPdXRZIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcclxuICAgICAgfVxyXG5cclxuICAgICAgMzAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xNWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE1ZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIGZsaXBPdXRZIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcclxuICAgICAgfVxyXG5cclxuICAgICAgMzAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xNWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE1ZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9saWdodFNwZWVkSW7jga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9saWdodFNwZWVkSW4oKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogbGlnaHRTcGVlZEluO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGxpZ2h0U3BlZWRJbjtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XHJcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBsaWdodFNwZWVkSW4ge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goLTMwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKC0zMGRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgNjAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goMjBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2tld1goMjBkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDgwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC01ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKC01ZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIGxpZ2h0U3BlZWRJbiB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBza2V3WCgtMzBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goLTMwZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA2MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgyMGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgyMGRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgODAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2tld1goLTVkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG4gICAgfSAgICBcclxufVxyXG5cclxuLy9saWdodFNwZWVkT3V044Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fbGlnaHRTcGVlZE91dCgpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBsaWdodFNwZWVkT3V0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGxpZ2h0U3BlZWRPdXQ7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIGxpZ2h0U3BlZWRPdXQge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKDMwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKDMwZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyBsaWdodFNwZWVkT3V0IHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBza2V3WCgzMGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBza2V3WCgzMGRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL3JvdGF0ZUlu44Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fcm90YXRlSW4oKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlSW47XHJcbiAgICBhbmltYXRpb24tbmFtZTogcm90YXRlSW47XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlSW4ge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC0yMDBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTIwMGRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgcm90YXRlSW4ge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC0yMDBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTIwMGRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL3JvdGF0ZUluRG93bkxlZnTjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9yb3RhdGVJbkRvd25MZWZ0KCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluRG93bkxlZnQ7XHJcbiAgICBhbmltYXRpb24tbmFtZTogcm90YXRlSW5Eb3duTGVmdDtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVJbkRvd25MZWZ0IHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIHJvdGF0ZUluRG93bkxlZnQge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL3JvdGF0ZUluRG93blJpZ2h044Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fcm90YXRlSW5Eb3duUmlnaHQoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlSW5Eb3duUmlnaHQ7XHJcbiAgICBhbmltYXRpb24tbmFtZTogcm90YXRlSW5Eb3duUmlnaHQ7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlSW5Eb3duUmlnaHQge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyByb3RhdGVJbkRvd25SaWdodCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9yb3RhdGVJblVwTGVmdOOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX3JvdGF0ZUluVXBMZWZ0KCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluVXBMZWZ0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluVXBMZWZ0O1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZUluVXBMZWZ0IHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyByb3RhdGVJblVwTGVmdCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL3JvdGF0ZUluVXBSaWdodOOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX3JvdGF0ZUluVXBSaWdodCgpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVJblVwUmlnaHQ7XHJcbiAgICBhbmltYXRpb24tbmFtZTogcm90YXRlSW5VcFJpZ2h0O1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZUluVXBSaWdodCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTkwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC05MGRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgcm90YXRlSW5VcFJpZ2h0IHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtOTBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTkwZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG4vL3JvdGF0ZU91dOOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX3JvdGF0ZU91dCgpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXQ7XHJcbiAgICBhbmltYXRpb24tbmFtZTogcm90YXRlT3V0O1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZU91dCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAyMDBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMjAwZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyByb3RhdGVPdXQge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMjAwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDIwMGRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL3JvdGF0ZU91dOOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX3JvdGF0ZU91dERvd25MZWZ0KCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dERvd25MZWZ0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dERvd25MZWZ0O1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZU91dERvd25MZWZ0IHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIHJvdGF0ZU91dERvd25MZWZ0IHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9yb3RhdGVPdXREb3duUmlnaHTjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9yb3RhdGVPdXREb3duUmlnaHQoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlT3V0RG93blJpZ2h0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dERvd25SaWdodDtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVPdXREb3duUmlnaHQge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgcm90YXRlT3V0RG93blJpZ2h0IHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9yb3RhdGVPdXREb3duUmlnaHTjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9yb3RhdGVPdXRVcExlZnQoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlT3V0VXBMZWZ0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dFVwTGVmdDtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVPdXRVcExlZnQge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyByb3RhdGVPdXRVcExlZnQge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vcm90YXRlT3V0RG93blJpZ2h044Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fcm90YXRlT3V0VXBSaWdodCgpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXRVcFJpZ2h0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dFVwUmlnaHQ7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlT3V0VXBSaWdodCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA5MGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA5MGRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgcm90YXRlT3V0VXBSaWdodCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA5MGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA5MGRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgfVxyXG4gICAgfSAgICBcclxufVxyXG5cclxuLy9oaW5nZeOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX2hpbmdlKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGhpbmdlO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGhpbmdlO1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIGhpbmdlIHtcclxuICAgICAgMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcclxuICAgICAgfVxyXG5cclxuICAgICAgMjAlLCA2MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA4MGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA4MGRlZyk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xyXG4gICAgICB9XHJcblxyXG4gICAgICA0MCUsIDgwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDYwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDYwZGVnKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA3MDBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA3MDBweCwgMCk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgaGluZ2Uge1xyXG4gICAgICAwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAyMCUsIDYwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDgwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDgwZGVnKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDQwJSwgODAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNjBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNjBkZWcpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDcwMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDcwMHB4LCAwKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vcm9sbElu44Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fcm9sbEluKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvbGxJbjtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiByb2xsSW47XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgcm9sbEluIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0xMjBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0xMjBkZWcpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIHJvbGxJbiB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMTIwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMTIwZGVnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vcm9sbE91dOOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX3JvbGxPdXQoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm9sbE91dDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiByb2xsT3V0O1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIHJvbGxPdXQge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgMTIwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDEyMGRlZyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIHJvbGxPdXQge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgMTIwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDEyMGRlZyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy96b29tSW7jga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl96b29tSW4oKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbUluO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHpvb21JbjtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyB6b29tSW4ge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNTAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyB6b29tSW4ge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNTAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vem9vbUluRG93buOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX3pvb21JbkRvd24oKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbUluRG93bjtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiB6b29tSW5Eb3duO1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIHpvb21JbkRvd24ge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIC0xMDAwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAtMTAwMHB4LCAwKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNjAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCA2MHB4LCAwKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIHpvb21JbkRvd24ge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIC0xMDAwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAtMTAwMHB4LCAwKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNjAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCA2MHB4LCAwKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy96b29tSW5MZWZ044Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fem9vbUluTGVmdCgpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tSW5MZWZ0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHpvb21JbkxlZnQ7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgem9vbUluTGVmdCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoLTEwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKC0xMDAwcHgsIDAsIDApO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA2MCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgem9vbUluTGVmdCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoLTEwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKC0xMDAwcHgsIDAsIDApO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA2MCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL3pvb21JblJpZ2h044Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fem9vbUluUmlnaHQoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbUluUmlnaHQ7XHJcbiAgICBhbmltYXRpb24tbmFtZTogem9vbUluUmlnaHQ7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgem9vbUluUmlnaHQge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDEwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDEwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDYwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAa2V5ZnJhbWVzIHpvb21JblJpZ2h0IHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgxMDAwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgxMDAwcHgsIDAsIDApO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICA2MCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vem9vbUluVXDjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl96b29tSW5VcCgpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tSW5VcDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiB6b29tSW5VcDtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyB6b29tSW5VcCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgMTAwMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgMTAwMHB4LCAwKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNjAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDAsIC02MHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgem9vbUluVXAge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIDEwMDBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIDEwMDBweCwgMCk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDYwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDAsIC02MHB4LCAwKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy96b29tT3V044Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fem9vbU91dCgpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tT3V0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXQ7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgem9vbU91dCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIDUwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyB6b29tT3V0IHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgfVxyXG5cclxuICAgICAgNTAlIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy96b29tT3V0RG93buOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX3pvb21PdXREb3duKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21PdXREb3duO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXREb3duO1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIHpvb21PdXREb3duIHtcclxuICAgICAgNDAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDAsIC02MHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgem9vbU91dERvd24ge1xyXG4gICAgICA0MCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vem9vbU91dExlZnTjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl96b29tT3V0TGVmdCgpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tT3V0TGVmdDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiB6b29tT3V0TGVmdDtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyB6b29tT3V0TGVmdCB7XHJcbiAgICAgIDQwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCg0MnB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoNDJweCwgMCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSguMSkgdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSguMSkgdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGNlbnRlcjtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGNlbnRlcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgem9vbU91dExlZnQge1xyXG4gICAgICA0MCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoNDJweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDQycHgsIDAsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLjEpIHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLjEpIHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBjZW50ZXI7XHJcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBjZW50ZXI7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy96b29tT3V0UmlnaHTjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl96b29tT3V0UmlnaHQoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbU91dFJpZ2h0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXRSaWdodDtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyB6b29tT3V0UmlnaHQge1xyXG4gICAgICA0MCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoLTQycHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgtNDJweCwgMCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSguMSkgdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC4xKSB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgY2VudGVyO1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGNlbnRlcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgem9vbU91dFJpZ2h0IHtcclxuICAgICAgNDAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKC00MnB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoLTQycHgsIDAsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLjEpIHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSguMSkgdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGNlbnRlcjtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBjZW50ZXI7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy96b29tT3V0VXDjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl96b29tT3V0VXAoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbU91dFVwO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXRVcDtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyB6b29tT3V0VXAge1xyXG4gICAgICA0MCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyB6b29tT3V0VXAge1xyXG4gICAgICA0MCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vc2xpZGVJbkRvd27jga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9zbGlkZUluRG93bigpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzbGlkZUluRG93bjtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBzbGlkZUluRG93bjtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBzbGlkZUluRG93biB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyBzbGlkZUluRG93biB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vc2xpZGVJbkxlZnTjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9zbGlkZUluTGVmdCgpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzbGlkZUluTGVmdDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBzbGlkZUluTGVmdDtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBzbGlkZUluTGVmdCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyBzbGlkZUluTGVmdCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vc2xpZGVJbkxlZnTjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9zbGlkZUluTGVmdCgpIHtcclxuICAgIEBpbmNsdWRlIGFuaW1hdGlvbl9iYXNlKCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzbGlkZUluUmlnaHQ7XHJcbiAgICBhbmltYXRpb24tbmFtZTogc2xpZGVJblJpZ2h0O1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlSW5SaWdodCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xyXG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgc2xpZGVJblJpZ2h0IHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vc2xpZGVJblVw44Gu6Kit5a6aXHJcbkBtaXhpbiBhbmltYXRpb25fc2xpZGVJblVwKCkge1xyXG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uX2Jhc2UoKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5VcDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBzbGlkZUluVXA7XHJcbiAgICBALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVJblVwIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyBzbGlkZUluVXAge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcclxuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9zbGlkZU91dERvd27jga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9zbGlkZU91dERvd24oKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVPdXREb3duO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0RG93bjtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBzbGlkZU91dERvd24ge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgc2xpZGVPdXREb3duIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy9zbGlkZU91dExlZnTjga7oqK3lrppcclxuQG1peGluIGFuaW1hdGlvbl9zbGlkZU91dExlZnQoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVPdXRMZWZ0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0TGVmdDtcclxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBzbGlkZU91dExlZnQge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyBzbGlkZU91dExlZnQge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vc2xpZGVPdXRSaWdodOOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX3NsaWRlT3V0UmlnaHQoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVPdXRSaWdodDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dFJpZ2h0O1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlT3V0UmlnaHQge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBrZXlmcmFtZXMgc2xpZGVPdXRSaWdodCB7XHJcbiAgICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0byB7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vc2xpZGVPdXRVcOOBruioreWumlxyXG5AbWl4aW4gYW5pbWF0aW9uX3NsaWRlT3V0VXAoKSB7XHJcbiAgICBAaW5jbHVkZSBhbmltYXRpb25fYmFzZSgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVPdXRVcDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dFVwO1xyXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlT3V0VXAge1xyXG4gICAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdG8ge1xyXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGtleWZyYW1lcyBzbGlkZU91dFVwIHtcclxuICAgICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRvIHtcclxuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vL+ODm+ODr+ODg+OBqOiDjOaZr+OBruiJsuOCkuWkieabtOOBmeOCi+OAglxyXG5AbWl4aW4gYnV0dG9udHlwZTAyKCRiYXNlYmFja2NvbG9yLCRiYXNlYm9kZXJjb2xvciwkYmFzZWJvZGVycHgsJGJhc2V0ZXh0Y29sb3IsJGhvdmVyYmFja2NvbG9yLCRob3ZlcmJvZGVyY29sb3IsJGhvdmVydGV4dGNvbG9yKSB7XHJcbiAgICBAaW5jbHVkZSBidXR0b25iYXNlKCk7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFzZWJhY2tjb2xvcjtcclxuICAgIGJvcmRlcjogJGJhc2Vib2RlcnB4IHNvbGlkICRiYXNlYm9kZXJjb2xvcjtcclxuICAgIGNvbG9yOiAkYmFzZXRleHRjb2xvcjtcclxuICAgICY6aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRob3ZlcmJhY2tjb2xvcjtcclxuXHRib3JkZXItY29sb3I6ICRob3ZlcmJvZGVyY29sb3I7XHJcblx0Y29sb3I6ICRob3ZlcnRleHRjb2xvcjtcclxuICAgIH1cclxufVxyXG4iLAoJCSIuYmdfRkY5MkIwIHtcclxuICAgIGJhY2tncm91bmQ6ICNGRjkyQjA7XHJcbn1cclxuLmJnXzMyQzlFOSB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMzJDOUU5O1xyXG59XHJcbi5jbF9mZmYge1xyXG4gICAgY29sb3I6ICNGRkY7XHJcbn1cclxuLmJnXzRBNzU2RiB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjNEE3NTZGO1xyXG59XHJcbi5iZ19GNkY2RjYge1xyXG4gICAgYmFja2dyb3VuZDogI0Y2RjZGNjtcclxufSIsCgkJIi5mb3JtVGFibGUgLnRkRm9ybVRhYmxlIHtcclxuICAgIEBpbmNsdWRlIG9udGVuZXJfd2lkdGgoMTAwMCAsIDc2MCk7XHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkc3Ape1xyXG4gICAgICAgIEBpbmNsdWRlIHBhZGRpbmdQZXJjZW50KDEwMDAgLCAxNCAsIDAgLCAyNSAsIDApO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG59XHJcbi5yZWFkUHJpdmFjeUNvbWZpcm0ge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxufVxyXG4uY29uZmlybUJ0bUZ4IHtcclxuICAgIEBpbmNsdWRlIG9udGVuZXJfd2lkdGgoMTAwMCAsIDgxMCk7XHJcbiAgICBAaW5jbHVkZSBtYXJnaW5QZXJjZW50KDEwMDAgLCA2NCAsIGF1dG8gLCAwICwgYXV0byk7XHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkc3ApIHtcclxuICAgICAgICBAaW5jbHVkZSBvbnRlbmVyX3dpZHRoKDMzNSAsIDMxNSk7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogOCU7XHJcbiAgICB9XHJcbn1cclxuLmJhY2tCdXR0b25XYXAge1xyXG4gICAgQGluY2x1ZGUgb250ZW5lcl93aWR0aCg4MTAgLCAzOTApO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbn1cclxuLmJhY2tCdXR0b24ge1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgIzRBNzU2RjtcclxuICAgIGNvbG9yOiAjNEE3NTZGO1xyXG4gICAgQGluY2x1ZGUga2Fkb21hcnUoNHB4KTtcclxuICAgIEBpbmNsdWRlIGJ1dHRvbnR5cGUwMigjZmZmLCM0QTc1NkYsMXB4LCM0QTc1NkYsIzRBNzU2RiwjNEE3NTZGLCNGRkYpOyBcclxuICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2JhY2tCdXR0b25BcnJvdy5zdmcpO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDM4JTtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBsZWZ0IDYlO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIGhlaWdodDogNzBweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICBAaW5jbHVkZSBwYWRkaW5nUGVyY2VudCgxMDAwICwgMCAsIDAgLCAwICwgMjEpO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKXtcclxuICAgICAgICBAaW5jbHVkZSBoZWlnaHRWd1NwKDY0KTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgbGVmdCA3JTtcclxuICAgIH1cclxuICAgICY6aG92ZXJ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy93aF9hcnJvd19sZWZ0LnN2Zyk7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDM4JTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgbGVmdCA2JTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCRzcCl7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBsZWZ0IDclO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4uYmFja0J1dHRvbldhcCBidXR0b24uYmFja0J1dHRvbiB7XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgQGluY2x1ZGUgcnNGb250U2l6ZSgxNiAsIDE2ICwgMTUpO1xyXG4gICAgcGFkZGluZzogMDtcclxufVxyXG4uc3VibWl0QnV0dG9uV2FwIHtcclxuICAgIEBpbmNsdWRlIG9udGVuZXJfd2lkdGgoODEwICwgMzkwKTtcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCkge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDUuNzclO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAlO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgIH1cclxufVxyXG5cclxuLnNlbmRCdXR0b24ge1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgY29sb3I6ICNGRkY7XHJcbiAgICBAaW5jbHVkZSBrYWRvbWFydSg0cHgpO1xyXG4gICAgQGluY2x1ZGUgYnV0dG9udHlwZTAyKCM0QTc1NkYsIzRBNzU2RiwxcHgsI0ZGRiwjMzMzLCMzMzMsI0ZGRik7IGRpc3BsYXk6YmxvY2s7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL3doX2Fycm93LnN2Zyk7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMzglO1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHJpZ2h0IDUlO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIGhlaWdodDogNzBweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCl7XHJcbiAgICAgICAgQGluY2x1ZGUgaGVpZ2h0VndTcCg2NCk7XHJcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHJpZ2h0IDYlO1xyXG4gICAgfSBcclxufVxyXG5idXR0b24uc2VuZEJ1dHRvbiB7XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgQGluY2x1ZGUgcnNGb250U2l6ZSgxNiAsIDE2LCAxNSk7XHJcbiAgICBcclxufVxyXG4ubm93Q29uZnJpbS5mb3JtQ250IHtcclxuICAgICBAaW5jbHVkZSBtYXJnaW5QZXJjZW50KDEwMDAgLCA4MCAsIGF1dG8gLCAwICwgYXV0byk7XHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkc3ApIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxNi41JTtcclxuICAgIH1cclxufVxyXG4ubm93Q29uZnJpbSAubm93Q29uZnJpbS5mb3JtQ250IHRoLnRoZm9ybVRhYmxlLnRoZm9ybVRhYmxlMDF7XHJcbiAgICBcclxuICAgIEBpbmNsdWRlIHBhZGRpbmdQZXJjZW50KDEwMDAgLCAyMCAsIDAgLCAwICwgMjApO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKXtcclxuICAgICAgICBwYWRkaW5nOiAyLjk4JSAwJSAwLjE3JSAwJTtcclxuICAgIH1cclxufSBcclxuLm5vd0NvbmZyaW0uZm9ybUNudCAudGhmb3JtVGFibGVfbmljaGlqaXtcclxuICAgIHBhZGRpbmc6IDEuMyUgMCAwIDAlO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKXtcclxuICAgICAgICBwYWRkaW5nOiAyLjk4JSAwJSAwLjE3JSAwJTtcclxuICAgIH1cclxufVxyXG4ubm93Q29uZnJpbS5mb3JtQ250IC50aGZvcm1UYWJsZV90ZXh0YXJlYXtcclxuICAgIEBpbmNsdWRlIHBhZGRpbmdQZXJjZW50KDEwMDAgLCAyMCAsIDAgLCAwICwgMjApO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKXtcclxuICAgICAgICBwYWRkaW5nOiAyLjk4JSAwJSAwLjE3JSAwJTtcclxuICAgIH1cclxufVxyXG5cclxuLm5vd0NvbmZyaW0ge1xyXG4gICAgLmZvcm1UYWJsZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWFyZ2luUGVyY2VudCgxMDAwICwgNDIgLCBhdXRvICwgMCAsIGF1dG8pO1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCRzcCl7XHJcbiAgICAgICAgICAgIG1hcmdpbjogOC44JSBhdXRvIDAgYXV0bztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuZm9ybURldGFpbFN1YmRpdmlzaW9uS2VuZ2FrdSB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWFyZ2luUGVyY2VudCgxMDAwICwgNDIgLCBhdXRvICwgMCAsIGF1dG8pO1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCRzcCkge1xyXG4gICAgICAgICAgICBtYXJnaW46IDglIGF1dG8gMCBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5mb3JtRGV0YWlsU3ViZGl2aXNpb24ge1xyXG4gICAgICAgIEBpbmNsdWRlIG1hcmdpblBlcmNlbnQoMTAwMCAsIDQyICwgYXV0byAsIDAgLCBhdXRvKTtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkc3ApIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAxMS41JSBhdXRvIDAgYXV0bztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAudXNlckZvcm0ge1xyXG4gICAgICAgIEBpbmNsdWRlIG1hcmdpblBlcmNlbnQoMTAwMCAsIDQyICwgYXV0byAsIDAgLCBhdXRvKTtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkc3ApIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAxMS41JSBhdXRvIDAgYXV0bztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuZm9ybVRhYmxlIHRkLnRkZm9ybVRhYmxlICwuZm9ybVRhYmxlIHRkLnRkRm9ybVRhYmxle1xyXG4gICAgICAgIEBpbmNsdWRlIHBhZGRpbmdQZXJjZW50KDEwMDAgLCAxMC44NCAsIDAgLCAxMC44NSAsIDMwKTtcclxuICAgICAgICBAaW5jbHVkZSByc0ZvbnRTaXplKDE1ICwgMTUgLCAxNCk7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkc3ApIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDclIDAlIDcuMyUgMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcbiIsCgkJIlxyXG4uZm9ybVRvcCBwLnR4dGZvcm1Ub3BUaGFua3N7XHJcbiAgICAgQGluY2x1ZGUgbWVkaWEoJHNwKSB7XHJcbiAgICAgICAgICAgICBtYXJnaW4tdG9wOiA4LjklO1xyXG4gICAgIH1cclxufVxyXG5cclxuXHJcbi50aGFua3NCdXR0b24ge1xyXG4gICAgd2lkdGg6IDMyLjUlO1xyXG4gICAgQGluY2x1ZGUgbWFyZ2luUGVyY2VudCgxMDAwICwgODAgLCBhdXRvICwgMCAsIGF1dG8pO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKSB7XHJcbiAgICAgICAgICAgd2lkdGg6IDkzLjQ2JTtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxNi44MyU7XHJcbiAgICB9XHJcbiAgICBhIHtcclxuICAgICAgICAgQGluY2x1ZGUgcGFkZGluZ1BlcmNlbnQoMTAwMCAsIDIgLCAwICwgMCAsIDApO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgIGNvbG9yOiAjRkZGO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgQGluY2x1ZGUgcnNGb250U2l6ZSgxNiAsIDE2ICwgMTUpO1xyXG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbnR5cGUwMigjNEE3NTZGLCM0QTc1NkYsMXB4LCNGRkYsIzMzMywjMzMzLCNGRkYpOyBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvd2hfYXJyb3cuc3ZnKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMzglO1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciByaWdodCA1JTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgIGhlaWdodDogNzBweDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHNwKXtcclxuICAgICAgICAgICAgQGluY2x1ZGUgaGVpZ2h0VndTcCg2NCk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciByaWdodCA2JTtcclxuICAgICAgICB9IFxyXG4gICAgfVxyXG59XHJcblxyXG4iLAoJCSJcclxuLmlucWVyeUZ2QnRte1xyXG4gICAgQGluY2x1ZGUgcGFkZGluZ1BlcmNlbnQoMTAwMCAsIDE2ICwgMCAsMTYgLCAwKTtcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCl7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDUuMzMlIDAlIDQuMzMlIDAlO1xyXG4gICAgfVxyXG4gICBcclxufVxyXG4uaW5xZXJ5RnZCdG1XYXB7XHJcbiAgICB3aWR0aDogMTAwN3B4O1xyXG4gICAgbWFyZ2luOiBhdXRvO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHRhYil7XHJcbiAgICAgICAgQGluY2x1ZGUgb250ZW5lcl93aWR0aCgxMjAwLDEwMDcpO1xyXG4gICAgfSAgIFxyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKXtcclxuICAgICAgICBAaW5jbHVkZSBvbnRlbmVyX3dpZHRoKDM3NSwzMzUpO1xyXG4gICAgfVxyXG59XHJcbi5oMmlucWVyeUZ2QnRte1xyXG4gICAgIEBpbmNsdWRlIHBhZGRpbmdQZXJjZW50KDEwMDAgLCA2ICwgMCAsNiAsIDApO1xyXG4gICAgIEBpbmNsdWRlIG1lZGlhKCRzcCl7XHJcbiAgICAgICAgICAgICBwYWRkaW5nOiAxLjQ5JSAwJSAwLjglIDAlO1xyXG4gICAgICAgIFxyXG4gICAgfVxyXG59XHJcblxyXG4udHh0aW5xZXJ5RnZCdG17XHJcbiAgICAgQGluY2x1ZGUgb250ZW5lcl93aWR0aCgxMDA3LDkyNik7XHJcbiAgICAgQGluY2x1ZGUgcnNGb250U2l6ZSgxMyAsIDEzICwgMTEpO1xyXG4gICAgIGxpbmUtaGVpZ2h0OiAxLjc7XHJcbiAgICAgQGluY2x1ZGUgbWVkaWEoJHNwKXtcclxuICAgICAgICAgICAgIG1hcmdpbi10b3A6IDMuNSU7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAlO1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgICAgICBAaW5jbHVkZSBvbnRlbmVyX3dpZHRoKDMzNSwzMzUpO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuIiwKCQkiXHJcblxyXG5cclxuLmZvcm1NYWlue1xyXG4gICAgQGluY2x1ZGUgbWFyZ2luUGVyY2VudCgxOTIwICwgMTI5ICwgYXV0byAsIDAgLCBhdXRvKTtcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCl7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTUuMSU7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCU7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgfVxyXG59XHJcbi5mb3JtV2FwIHtcclxuICAgICBAaW5jbHVkZSBvbnRlbmVyX3dpZHRoKDEyMDAgLCAxMDAwKTtcclxuICAgICBtYXJnaW46IGF1dG87XHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkc3ApIHtcclxuICAgICAgICBAaW5jbHVkZSBvbnRlbmVyX3dpZHRoKDM3NSAsIDMzNSk7XHJcbiAgICAgICAgQGluY2x1ZGUgbWFyZ2luUGVyY2VudCgzNzUgLCAwICwgYXV0byAsIDAgLCBhdXRvKTtcclxuICAgIH1cclxufVxyXG4uZm9ybVRvcCB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxufVxyXG5oMS5oMWZvcm1Ub3Age1xyXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgIEBpbmNsdWRlIHJzRm9udFNpemUoMzAgLCAzMCAsIDI0KTtcclxufVxyXG5wLnR4dGZvcm1Ub3Age1xyXG4gICAgQGluY2x1ZGUgcnNGb250U2l6ZSgxNSAsIDE1ICwgMTIpO1xyXG4gICAgQGluY2x1ZGUgbGluZWhlaWdodCgxNSAsIDI0KTtcclxuICAgIEBpbmNsdWRlIG1hcmdpblBlcmNlbnQoMTAwMCAsIDU0ICwgYXV0byAsIDAgLCBhdXRvKTtcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCkge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBAaW5jbHVkZSBsaW5laGVpZ2h0KDEyICwgMTkpO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDklO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAlO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgIH1cclxufVxyXG5wLnR4dGZvcm1Ub3BUaGFua3N7XHJcbiAgICBAaW5jbHVkZSBtYXJnaW5QZXJjZW50KDEwMDAgLCA1MyAsIGF1dG8gLCAwICwgYXV0byk7XHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkc3ApIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyMS43JTtcclxuICAgIH1cclxufVxyXG4uUGljZm9ybVN0ZXAge1xyXG4gICAgd2lkdGg6IDM2LjclO1xyXG4gICAgQGluY2x1ZGUgbWFyZ2luUGVyY2VudCgxMDAwICwgNTksIGF1dG8gLCAwICwgYXV0byk7XHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkc3ApIHtcclxuICAgICAgICBAaW5jbHVkZSBvbnRlbmVyX3dpZHRoKDMzNSAsIDI3NSk7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTIuOTQlO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAlO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgIH1cclxuICAgIGltZyB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG59XHJcbi5mb3JtQ250IHtcclxuICAgIEBpbmNsdWRlIG1hcmdpblBlcmNlbnQoMTAwMCAsIDg0ICwgYXV0byAsIDAgLCBhdXRvKTtcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCkge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDE3LjklO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAlO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgIH1cclxufVxyXG4uc2VjRm9ybURldGFpbFN1YmRpdmlzaW9ue1xyXG4gICAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCAjMDA3NThFO1xyXG4gICAgQGluY2x1ZGUgcGFkZGluZ1BlcmNlbnQoMTAwMCAsIDAgLCAwICwgMCAsIDE4KTtcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCl7XHJcbiAgICAgICAgIEBpbmNsdWRlIHBhZGRpbmdQZXJjZW50KDM3NSAsIDIgLCAwICwgMiAsIDEwKTtcclxuICAgIH1cclxufVxyXG4uZm9ybU1haW4gLmgyc2VjRm9ybURldGFpbFN1YmRpdmlzaW9ue1xyXG4gICAgQGluY2x1ZGUgcnNGb250U2l6ZSgyNCAsIDI0ICwgMjApO1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XHJcbn1cclxuLmZvcm1NYWluIC50eHRzZWNGb3JtRGV0YWlsU3ViZGl2aXNpb257XHJcbiAgICBAaW5jbHVkZSBtYXJnaW5QZXJjZW50KDEwMDAgLCAwICwgMCAsIDAgLCAwKTtcclxuICAgIEBpbmNsdWRlIHJzRm9udFNpemUoMTUgLCAxNSAsIDEyKTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkc3Ape1xyXG4gICAgICAgICBAaW5jbHVkZSBtYXJnaW5QZXJjZW50KDM3NSAsIDQgLCAwICwgMCAsIDApO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKuODhuODvOODluODq+OBruioreWumiovXHJcbi5mb3JtVGFibGUuZm9ybVRhYmxlMDF7XHJcbiAgICBAaW5jbHVkZSBtYXJnaW5QZXJjZW50KDEwMDAgLCA0MiAsIGF1dG8gLCAwICwgYXV0byk7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgICBAaW5jbHVkZSBtZWRpYSgkc3Ape1xyXG4gICAgICAgICBtYXJnaW4tdG9wOiA4LjclO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAlO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgIEBpbmNsdWRlIG9udGVuZXJfd2lkdGgoMzM1ICwgMzA1KTtcclxuICAgIH1cclxufVxyXG4uZm9ybVRhYmxle1xyXG4gICAgQGluY2x1ZGUgbWFyZ2luUGVyY2VudCgxMDAwICwgNTAgLCBhdXRvICwgMCAsIGF1dG8pO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgQGluY2x1ZGUgbWVkaWEoJHNwKXtcclxuICAgICAgICBtYXJnaW46IDklIGF1dG8gMCBhdXRvO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIEBpbmNsdWRlIG9udGVuZXJfd2lkdGgoMzM1ICwgMzA1KTtcclxuICAgIH1cclxufVxyXG4uZm9ybU1haW4gLnRoZm9ybVRhYmxle1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIEBpbmNsdWRlIG9udGVuZXJfd2lkdGgoMTAwMCAsIDI2MSk7XHJcbiAgICBAaW5jbHVkZSBwYWRkaW5nUGVyY2VudCgxMDAwICwxNSAsIDAgLCAxNSAsIDIwKTtcclxuICAgIFxyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHRhYil7XHJcbiAgICAgICAgd2lkdGg6IDI4LjElO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkc3Ape1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHBhZGRpbmc6IDEuMzklIDAlIDEuNCUgMCU7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIH1cclxufVxyXG4uZm9ybU1haW4gLnRoZm9ybVRhYmxlX3RleHRhcmVhe1xyXG4gICAgQGluY2x1ZGUgcGFkZGluZ1BlcmNlbnQoMTAwMCAsIDI3ICwgMCAsIDAgLCAyMCk7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKXtcclxuICAgICAgICAgcGFkZGluZzogMS43NiUgMCUgMSUgMCU7XHJcbiAgICB9XHJcbn1cclxuaDMuaDNmb3JtVGFibGVGeHtcclxuICAgIEBpbmNsdWRlIHJzRm9udFNpemUoMTYgLCAxNiAsIDE0KTtcclxuICAgICBAaW5jbHVkZSBsaW5laGVpZ2h0KDE2ICwgMjYpO1xyXG4gICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuLmZvcm1NYWluIHtcclxuICAgIHRib2R5LHRye1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCRzcCl7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLmZvcm1NYWluIC5oaXNzdWZvcm1UYWJsZUZ4e1xyXG4gICAgQGluY2x1ZGUgb250ZW5lcl93aWR0aCgyNDQgLCA0Myk7XHJcbiAgICBoZWlnaHQ6IDIycHg7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgQGluY2x1ZGUga2Fkb21hcnUoM3B4KTtcclxuICAgIEBpbmNsdWRlIHJzRm9udFNpemUoMTIgLCAxMiAsIDEyKTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7IFxyXG4gICAgY29sb3I6ICNGRkY7XHJcbiAgICBiYWNrZ3JvdW5kOiAjRkY5MkIwO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKXtcclxuICAgICAgICB3aWR0aDogMTMuODMlO1xyXG4gICAgICAgIEBpbmNsdWRlIGhlaWdodFZ3U3AoMjIpO1xyXG4gICAgfVxyXG59XHJcbi5mb3JtTWFpbiAubmluaWZvcm1UYWJsZUZ4e1xyXG4gICAgQGluY2x1ZGUgb250ZW5lcl93aWR0aCgyNDQgLCA0Myk7XHJcbiAgICBoZWlnaHQ6IDIycHg7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgQGluY2x1ZGUga2Fkb21hcnUoM3B4KTtcclxuICAgIEBpbmNsdWRlIHJzRm9udFNpemUoMTIgLCAxMiAsIDEyKTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7IFxyXG4gICAgY29sb3I6ICNGRkY7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMzJDOUU5OyBcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCl7XHJcbiAgICAgICAgd2lkdGg6IDEzLjgzJTtcclxuICAgICAgICBAaW5jbHVkZSBoZWlnaHRWd1NwKDIyKTtcclxuICAgIH1cclxufVxyXG4uZm9ybU1haW4gLnRkZm9ybVRhYmxle1xyXG4gICAgQGluY2x1ZGUgb250ZW5lcl93aWR0aCgxMDAwICwgNzYwKTtcclxuICAgIEBpbmNsdWRlIHBhZGRpbmdQZXJjZW50KDEwMDAgLCAxMCAsIDAgLCAxMCAsIDMwKTtcclxuICAgbGluZS1oZWlnaHQ6IDEuNzU7XHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkc3Ape1xyXG4gICAgICAgIHBhZGRpbmc6IDMuMiUgMCUgMy4xJSAwJTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxufVxyXG4udGRmb3JtVGFibGUudGRmb3JtVGFibGVfcmFkaW8ge1xyXG4gICAgQGluY2x1ZGUgcGFkZGluZ1BlcmNlbnQoMTAwMCAsIDE1ICwgMCAsIDE1ICwgMzApO1xyXG4gICAgXHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkc3Ape1xyXG4gICAgICAgIHBhZGRpbmc6IDMuMiUgMCUgMy41JSAwJTtcclxuICAgIH1cclxufVxyXG4uZm9ybU1haW4gLnRkZm9ybVRhYmxlOmJlZm9yZSwuZm9ybU1haW4gLnRkZm9ybVRhYmxlIGlucHV0OmJlZm9yZSwuZm9ybU1haW4gLnRkZm9ybVRhYmxlOmFmdGVyLC5mb3JtTWFpbiAudGRmb3JtVGFibGUgaW5wdXQ6YWZ0ZXJ7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG5cclxuXHJcblxyXG5cclxuQGltcG9ydCAnXzAxX2Zvcm1TdWJkaXZpc2lvbkdlbnJlJztcclxuQGltcG9ydCAnXzAyX2Zvcm1EZXRhaWxTdWJkaXZpc2lvbic7XHJcbkBpbXBvcnQgJ18wM19mb3JtRGV0YWlsUmVxdWVzdCc7XHJcbkBpbXBvcnQgJ18wNF91c2VyRm9ybSc7XHJcbkBpbXBvcnQgJ18wNV9yZWFkUHJpdmFjeSc7XHJcbkBpbXBvcnQgJ18wNl9mb3JtQnRtJzsiLAoJCSI6OnBsYWNlaG9sZGVyIHtcclxuICBjb2xvcjogI0IwQjBCMDtcclxufVxyXG4uZm9ybVN1YmRpdmlzaW9uR2VucmUge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn1cclxuLnRpdGxlRm9ybVN1YmRpdmlzaW9uIHtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjREVERURFO1xyXG4gICAgYXNwZWN0LXJhdGlvOiAxMDAwLzYyO1xyXG4gICAgQGluY2x1ZGUgcGFkZGluZ1BlcmNlbnQoMTAwMCAsIDAgLCAyMCAsIDAgLCAyMCk7XHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkc3ApIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBhc3BlY3QtcmF0aW86IDMzNS82MjtcclxuICAgICAgICBwYWRkaW5nOiA0LjMlIDQuNDclIDMuNCUgNC40NyU7XHJcbiAgICB9XHJcbn1cclxuaDMuaDN0aXRsZUZvcm1TdWJkaXZpc2lvbiB7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgQGluY2x1ZGUgcnNGb250U2l6ZSgxOCAsIDE4ICwgMTUpO1xyXG4gICAgQGluY2x1ZGUgbWFyZ2luUGVyY2VudCgxMDAwICwgMyAsIDAgLCAwICwgMCk7XHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkc3ApIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxufVxyXG4udHh0dGl0bGVGb3JtU3ViZGl2aXNpb24ge1xyXG4gICAgQGluY2x1ZGUgcnNGb250U2l6ZSgxNCAsIDE0ICwgMTIpO1xyXG4gICAgQGluY2x1ZGUgbWFyZ2luUGVyY2VudCgxMDAwICwgMCAsIDAgLCAwICwgMzApO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luOiAyLjMlIDAlIDAlIDAlO1xyXG4gICAgfVxyXG59XHJcbi5saVJhZGlvRm9ybVRhYmxlIHtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICBAaW5jbHVkZSByc0ZvbnRTaXplKDE3ICwgMTcgLCAxNCk7XHJcbiAgICAmOm50aC1jaGlsZCgyKSB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWFyZ2luUGVyY2VudCgxMDAwICwgOCAsIDAgLCAwICwgMCk7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJHNwKSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1hcmdpblBlcmNlbnQoMzM1ICwgMTAgLCAwICwgMCAsIDApO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4ubGlHZW5yZUZvcm1UYWJsZSB7XHJcbiAgICBAaW5jbHVkZSByc0ZvbnRTaXplKDE1ICwgMTUgLCAxNCk7XHJcbiAgICBAaW5jbHVkZSBtYXJnaW5QZXJjZW50KDEwMDAgLCAwICwgMzYgLCAwICwgMCk7XHJcbiAgICBcclxuICAgIEBpbmNsdWRlIG1lZGlhKCR0YWIpIHtcclxuICAgICAgICB3aWR0aDogMjUlO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkc3ApIHtcclxuICAgICAgICB3aWR0aDogNDMuNSU7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG59XHJcbi5mb3JtTWFpbiBpbnB1dC5jaGVja2JveEdlbnJlRm9ybVRhYmxlLCAuZm9ybU1haW4gdGV4dGFyZWEsIC5mb3JtTWFpbiBzZWxlY3QsIC5mb3JtTWFpbiBidXR0b24ge1xyXG4gICAgQGluY2x1ZGUgbWFyZ2luUGVyY2VudCgxMDAwICwgMCAsIDYgLCAwICwgMCk7XHJcbiAgICBcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCkge1xyXG4gICAgICAgIG1hcmdpbjogMCUgMSUgMCUgMCU7XHJcbiAgICB9XHJcbn1cclxuLmZvcm1NYWluIGlucHV0LmNoYWNrUmVhZFByaXZhY3ksIC5mb3JtTWFpbiB0ZXh0YXJlYSwgLmZvcm1NYWluIHNlbGVjdCwgLmZvcm1NYWluIGJ1dHRvbiB7XHJcbiAgICBAaW5jbHVkZSBtYXJnaW5QZXJjZW50KDEwMDAgLCAwICwgMTYgLCAwICwgMCk7XHJcbiAgICBcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCkge1xyXG4gICAgICAgIG1hcmdpbjogMCUgMy42JSAwJSAwJTtcclxuICAgIH1cclxufVxyXG4udHh0R2VucmVGb3JtVGFibGUge1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDFlbTtcclxuICAgIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogXCJwYWx0XCI7XHJcbiAgICBAaW5jbHVkZSByc0ZvbnRTaXplKDE0ICwgMTQgLCAxMik7XHJcbiAgICBAaW5jbHVkZSBtYXJnaW5QZXJjZW50KDEwMDAgLCAxOCAsIDAgLCAwICwgMCk7XHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkc3ApIHtcclxuICAgICAgICBmb250LWZlYXR1cmUtc2V0dGluZ3M6IHVuc2V0O1xyXG4gICAgICAgIEBpbmNsdWRlIG1hcmdpblBlcmNlbnQoMzM1ICwgOCAsIDAgLCAwICwgMCk7XHJcbiAgICB9XHJcbn1cclxudGgudGhmb3JtVGFibGUudGhmb3JtVGFibGUwMSB7XHJcbiAgICBAaW5jbHVkZSBwYWRkaW5nUGVyY2VudCgxMDAwICwgMjAgLCAwICwgMCAsIDIwKTtcclxuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkc3Ape1xyXG4gICAgICAgIHBhZGRpbmc6IDQuOTglIDAlIDUuMTclIDAlO1xyXG4gICAgfVxyXG59XHJcbi5mb3JtX2VyciAge1xyXG4gICAgQGluY2x1ZGUgbWFyZ2luUGVyY2VudCgxMDAwICwgODAgLCAwICwgMCAsIDApO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKSB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWFyZ2luUGVyY2VudCgzMzUgLCA3MCAsIDAgLCAwICwgMCk7XHJcbiAgICB9XHJcbn1cclxuLmxpX2Zvcm1fZXJyIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGNvbG9yOiAjRkYwMDAwO1xyXG4gICAgQGluY2x1ZGUgcnNGb250U2l6ZSgxNiAsIDE2ICwgMTQpO1xyXG59IiwKCQkiLmZvcm1EZXRhaWxTdWJkaXZpc2lvbktlbmdha3Uge1xyXG4gICAgQGluY2x1ZGUgbWFyZ2luUGVyY2VudCgxMDAwLCA0OCwgYXV0bywgMCwgYXV0byk7XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKSB7XHJcbiAgICAgICAgbWFyZ2luOiAxMS4xJSBhdXRvIDAgYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAudGRGb3JtVGFibGVTZWxlY3RMeGMge1xyXG4gICAgICAgIHdpZHRoOiA0OC4xNyU7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCRzcCkge1xyXG4gICAgICAgICAgICAgIHdpZHRoOiA0OC4wNSU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4udGRGb3JtVGFibGVTZWxlY3RXYXAge1xyXG4gICAgd2lkdGg6IDc1JTtcclxuICAgIEBpbmNsdWRlIHJzRm9udFNpemUoMTUsIDE1LCAxNCk7XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi50ZEZvcm1UYWJsZVNlbGVjdEx4YyB7XHJcbiAgICB3aWR0aDogNDguMTclO1xyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCkge1xyXG4gICAgICAgIHdpZHRoOiA0OC4wNSU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zZWxlY3RXMTAwIHtcclxuICAgIEBpbmNsdWRlIHJzRm9udFNpemUoMTUsIDE1LCAxMik7XHJcbn1cclxuXHJcbi50ZEZvcm1UYWJsZVNlbGVjdEx4YyB7XHJcbiAgICAuc2VsZWN0VzEwMCB7XHJcbiAgICAgICAgaGVpZ2h0OiA1NnB4O1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNDOEM4Qzg7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgQGluY2x1ZGUgcGFkZGluZ1BlcmNlbnQoMjY0LCAxNSwgMTAsIDE1LCAxMCk7XHJcbiAgICAgICAgQGluY2x1ZGUga2Fkb21hcnUoNnB4KTtcclxuICAgICAgICBAaW5jbHVkZSByc0ZvbnRTaXplKDE1LCAxNSwgMTIpO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgkc3ApIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgaGVpZ2h0VndTcCg1MCk7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDUuMjQlIDIuOTMlIDUuMjQlIDIuOTMlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnNlbGVjdFlvc2FuIHtcclxuICAgIEBpbmNsdWRlIG9udGVuZXJfd2lkdGgoNzI4LCAzNjQpO1xyXG4gICAgaGVpZ2h0OiA1NnB4O1xyXG4gICAgQGluY2x1ZGUgcGFkZGluZ1BlcmNlbnQoNzYwLCAyMCwgMTcsIDIwLCAxNyk7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjQzhDOEM4O1xyXG4gICAgQGluY2x1ZGUga2Fkb21hcnUoNXB4KTtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkc3ApIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBAaW5jbHVkZSBoZWlnaHRWd1NwKDUwKTtcclxuICAgIH1cclxufVxyXG5cclxuLnRkSW5wdXRDYWxlbmRhciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgLmlucHV0VzEwMCB7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI0M4QzhDODtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBAaW5jbHVkZSByc0ZvbnRTaXplKDE2LCAxNiwgMTMpO1xyXG4gICAgICAgIEBpbmNsdWRlIHBhZGRpbmdQZXJjZW50KDI2NCwgMTYsIDE3LCAxNiwgMTcpO1xyXG4gICAgICAgIEBpbmNsdWRlIGthZG9tYXJ1KDZweCk7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCRzcCkge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBoZWlnaHRWd1NwKDUwKTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgcGFkZGluZ1BlcmNlbnQoMTYxLCAwLCAxMiwgMCwgMTIpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmljb25JbnB1dENhbGVuZGFyIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiA2LjYlO1xyXG4gICAgQGluY2x1ZGUgcG9zaXRpb25IQ2VudGVyKCk7XHJcbiAgICBoZWlnaHQ6IDI0cHg7XHJcbiAgICBAaW5jbHVkZSBvbnRlbmVyX3dpZHRoKDI2NCwgMjQpO1xyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCkge1xyXG4gICAgICAgIHJpZ2h0OiA1JTtcclxuICAgICAgICBAaW5jbHVkZSBoZWlnaHRWd1NwKDI0KTtcclxuICAgICAgICBAaW5jbHVkZSBvbnRlbmVyX3dpZHRoKDE2MSwgMjQpO1xyXG4gICAgfVxyXG5cclxuICAgIGltZyB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgfVxyXG59XHJcblxyXG5wLnR4dEtlbmdha3VZb3lha3Uge1xyXG4gICAgQGluY2x1ZGUgcnNGb250U2l6ZSgxNSwgMTUsIDEyKTtcclxuICAgIEBpbmNsdWRlIGxpbmVoZWlnaHQoMTUsIDI0KTtcclxuICAgIEBpbmNsdWRlIG1hcmdpblBlcmNlbnQoNzYwLCAxNywgMCwgMCwgMCk7XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKSB7XHJcbiAgICAgICAgQGluY2x1ZGUgbGluZWhlaWdodCgxMiwgMjApO1xyXG4gICAgICAgIEBpbmNsdWRlIG1hcmdpblBlcmNlbnQoMzM1LCAyMS41LCAwLCAwLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuLmZvcm1DbnQgLnRoZm9ybVRhYmxlX25pY2hpamkge1xyXG4gICAgQGluY2x1ZGUgcGFkZGluZ1BlcmNlbnQoMTAwMCwgMzIsIDAsIDAsIDIwKTtcclxuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKSB7XHJcbiAgICAgICAgcGFkZGluZzogNC43NiUgMCUgMCUgMCU7XHJcbiAgICB9XHJcbn0iLAoJCSIuZm9ybURldGFpbFN1YmRpdmlzaW9uIHtcclxuICAgIEBpbmNsdWRlIG1hcmdpblBlcmNlbnQoMTAwMCAsIDM5ICwgYXV0byAsIDAgLCBhdXRvKTtcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCkge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDYuMyU7XHJcbiAgICB9XHJcbn0iLAoJCSJpbnB1dC5pbnB1dFdOYW1le1xyXG4gICAgd2lkdGg6IDUxLjglO1xyXG4gICAgaGVpZ2h0OiA1NnB4O1xyXG4gICAgQGluY2x1ZGUgcnNGb250U2l6ZSgxNSAsIDE1ICwgMTIpO1xyXG4gICAgQGluY2x1ZGUgcGFkZGluZ1BlcmNlbnQoNzYwICwgMjAgLCAxNCAsIDIwICwgMTQpO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgI0M4QzhDODtcclxuICAgIEBpbmNsdWRlIGthZG9tYXJ1KDVweCk7XHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkc3Ape1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIEBpbmNsdWRlIGhlaWdodFZ3U3AoNTApO1xyXG4gICAgICAgIHBhZGRpbmc6IDIuNjMlIDMuODQlIDIuNjMlIDMuODQlO1xyXG4gICAgfVxyXG59XHJcbi5mb3JtTWFpbiBpbnB1dCwgLmZvcm1NYWluIHRleHRhcmVhLCAuZm9ybU1haW4gc2VsZWN0LCAuZm9ybU1haW4gYnV0dG9uIHtcclxuICAgIEBpbmNsdWRlIHJzRm9udFNpemUoMTUgLCAxNSAsIDEyKTtcclxufVxyXG4uaW5wdXRXMTAwIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiA1NnB4O1xyXG4gICAgQGluY2x1ZGUgcGFkZGluZ1BlcmNlbnQoNzYwICwgMjAgLCAxNCAsIDIwICwgMTQpO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgI0M4QzhDODtcclxuICAgIEBpbmNsdWRlIGthZG9tYXJ1KDVweCk7XHJcbiAgICBAaW5jbHVkZSByc0ZvbnRTaXplKDE1ICwgMTUgLCAxMik7XHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkc3ApIHtcclxuICAgICAgICBAaW5jbHVkZSBoZWlnaHRWd1NwKDUwKTtcclxuICAgICAgICBwYWRkaW5nOiAyLjYzJSAzLjg0JSAyLjYzJSAzLjg0JTtcclxuICAgIH1cclxufVxyXG4uaW5wdXRQb3N0Q29kZSB7XHJcbiAgICBoZWlnaHQ6IDU2cHg7XHJcbiAgICB3aWR0aDogNTEuOCU7XHJcbiAgICBAaW5jbHVkZSByc0ZvbnRTaXplKDE1ICwgMTUgLCAxMik7XHJcbiAgICBAaW5jbHVkZSBwYWRkaW5nUGVyY2VudCg3NjAgLCAyMCAsIDE0ICwgMjAgLCAxNCk7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjQzhDOEM4O1xyXG4gICAgQGluY2x1ZGUga2Fkb21hcnUoNXB4KTtcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCl7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgQGluY2x1ZGUgaGVpZ2h0VndTcCg1MCk7XHJcbiAgICAgICAgcGFkZGluZzogMi42MyUgMy44NCUgMi42MyUgMy44NCU7XHJcbiAgICB9XHJcbn1cclxuLnRkZm9ybVRhYmxlIHRleHRhcmVhe1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDIwMHB4O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgI0M4QzhDODtcclxuICAgIEBpbmNsdWRlIHJzRm9udFNpemUoMTUgLCAxNSAsIDEyKTtcclxuICAgIEBpbmNsdWRlIHBhZGRpbmdQZXJjZW50KDc2MCAsIDEzICwgMTQgLCAxMyAsIDE0KTtcclxuICAgIEBpbmNsdWRlIGthZG9tYXJ1KDVweCk7XHJcbiAgICBAaW5jbHVkZSBsaW5laGVpZ2h0KDE2ICwgMjgpO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKXtcclxuICAgICAgICBwYWRkaW5nOiAzLjcxJSAzLjg0JSAzLjcxJSAzLjg0JTtcclxuICAgICAgICBAaW5jbHVkZSBoZWlnaHRWd1NwKDE1MCk7XHJcbiAgICB9XHJcbn1cclxuLnNlbGVjdFlvc2Fue1xyXG4gICAgd2lkdGg6IDUwLjYlO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKXtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBAaW5jbHVkZSBoZWlnaHRWd1NwKDUwKTtcclxuICAgIH1cclxufVxyXG4udXNlckZvcm0ge1xyXG4gICAgQGluY2x1ZGUgbWFyZ2luUGVyY2VudCgxMDAwICwgMzkgLCBhdXRvICwgMCAsIGF1dG8pO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNi43JTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwJTtcclxuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4iLAoJCSIucmVhZFByaXZhY3kge1xyXG4gICAgQGluY2x1ZGUgbWFyZ2luUGVyY2VudCgxMDAwICwgNTAgLCBhdXRvICwgMCAsIGF1dG8pO1xyXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNwKXtcclxuICAgICAgICBAaW5jbHVkZSBvbnRlbmVyX3dpZHRoKDMzNSAsIDMwNSk7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMjEuNSU7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCU7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgfVxyXG59XHJcbi5yZWFkUHJpdmFjeUJveCB7XHJcbiAgICBAaW5jbHVkZSBrYWRvbWFydSg0cHgpO1xyXG4gICAgQGluY2x1ZGUgcGFkZGluZ1BlcmNlbnQoMTAwMCAsIDMzICwgMjkgLCAwICwgMjkpO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgIzQ0NDQ0NDtcclxuICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gICAgaGVpZ2h0OiAyNDhweDtcclxuICAgIHNjcm9sbGJhci13aWR0aDogbm9uZTtcclxuICAgIEBpbmNsdWRlIG1lZGlhKCR0YWIpe1xyXG4gICAgICAgIGhlaWdodDogMjJ2dztcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCl7XHJcbiAgICAgICAgcGFkZGluZzogNi42NiUgNC42JSAwJSA0LjYlO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDIxLjElO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAlO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgICAgICBoZWlnaHQ6IDc3LjIzMzMzdnc7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICB9XHJcbiAgICAmOi13ZWJraXQtc2Nyb2xsYmFye1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn1cclxuLnNlY1JlYWRQcml2YWN5Qm94IHtcclxuICAgIEBpbmNsdWRlIG1hcmdpblBlcmNlbnQoMTAwMCAsIDAgLCBhdXRvICwgMTkgLCBhdXRvKTtcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCl7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMCU7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNi45JTtcclxuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICB9XHJcbn1cclxuLnJlYWRQcml2YWN5Qm94IC5oMnNlY1JlYWRQcml2YWN5Qm94e1xyXG4gICBAaW5jbHVkZSByc0ZvbnRTaXplKDE2ICwgMTYgLCAxNCk7IFxyXG4gICBAaW5jbHVkZSBsaW5laGVpZ2h0KDE2ICwgMjcpO1xyXG4gICBmb250LXdlaWdodDogNjAwO1xyXG4gICBsaW5lLWhlaWdodDogMS43O1xyXG59XHJcbi5yZWFkUHJpdmFjeUJveCAudHh0U2VjUmVhZFByaXZhY3lCb3h7XHJcbiAgICBAaW5jbHVkZSBtYXJnaW5QZXJjZW50KDEwMDAgLCAyMiAsIGF1dG8gLCAwICwgYXV0byk7XHJcbiAgIEBpbmNsdWRlIHJzRm9udFNpemUoMTQgLCAxNCAsIDEyKTtcclxuICAgbGluZS1oZWlnaHQ6IDEuNjtcclxuICAgQGluY2x1ZGUgbWVkaWEoJHNwKXtcclxuICAgICAgICBtYXJnaW4tdG9wOiA2JTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwJTtcclxuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgIH1cclxuICAgYSB7XHJcbiAgICAgICBjb2xvcjogIzAwNzdGRjtcclxuICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICB9XHJcbn1cclxuXHJcblxyXG4uY2hhY2tSZWFkUHJpdmFjeXdhcCB7XHJcbiAgICBAaW5jbHVkZSBtYXJnaW5QZXJjZW50KDEwMDAgLCA0MSAsIGF1dG8gLCAwICwgYXV0byk7XHJcbiAgICBAaW5jbHVkZSByc0ZvbnRTaXplKDE2ICwgMTYgLCAxNCk7XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgd2lkdGg6IDM3LjIlO1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIEBpbmNsdWRlIG1lZGlhKCR0YWIpe1xyXG4gICAgICAgIHdpZHRoOiA0NC41JTtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCl7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTEuNSU7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCU7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgfVxyXG4gICAgcC5oaXNzdWZvcm1UYWJsZUZ4IHtcclxuICAgICAgIHdpZHRoOiAxMi42MiU7XHJcbiAgICAgICBAaW5jbHVkZSBtZWRpYSgkc3ApIHtcclxuICAgICAgICAgICAgd2lkdGg6IDE1LjgzJTtcclxuICAgICAgIH1cclxuICAgIH1cclxuICAgIGxhYmVse1xyXG4gICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICB9XHJcbn1cclxuLmNoYWNrUmVhZFByaXZhY3l7XHJcbiAgICBtYXJnaW46IGF1dG8gNCUgYXV0byAwO1xyXG4gICAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiBcInBhbHRcIjtcclxufVxyXG5cclxuXHJcblxyXG4iLAoJCSIuZm9ybVN1Ym1pdEJ1dHRvbldhcHtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICBAaW5jbHVkZSBtYXJnaW5QZXJjZW50KDEwMDAgLCA4MyAsIGF1dG8gLCAwICwgYXV0byk7IFxyXG4gICAgQGluY2x1ZGUgb250ZW5lcl93aWR0aCgxMDAwICwgMzkwKTtcclxuICAgIEBpbmNsdWRlIG1lZGlhKCRzcCl7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTUuOCU7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCU7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgICAgIEBpbmNsdWRlIG9udGVuZXJfd2lkdGgoMzM1ICwgMzE1KTtcclxuICAgIH1cclxufVxyXG4uZm9ybVN1Ym1pdEJ1dHRvbntcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGNvbG9yOiAjRkZGO1xyXG4gICAgQGluY2x1ZGUga2Fkb21hcnUoNHB4KTtcclxuICAgIEBpbmNsdWRlIGJ1dHRvbnR5cGUwMigjNEE3NTZGLCM0QTc1NkYsMXB4LCNGRkYsIzMzMywjMzMzLCNGRkYpOyBkaXNwbGF5OmJsb2NrO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy93aF9hcnJvdy5zdmcpO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDM4JTtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciByaWdodCA1JTtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBoZWlnaHQ6IDcwcHg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBcclxuICAgIEBpbmNsdWRlIG1lZGlhKCR0YWIpe1xyXG4gICAgICAgIGhlaWdodDogN3Z3O1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBAaW5jbHVkZSBtZWRpYSgkc3Ape1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciByaWdodCA2JTtcclxuICAgICAgICBAaW5jbHVkZSBoZWlnaHRWd1NwKDY0KTtcclxuICAgIH0gXHJcbn1cclxuaW5wdXQuZm9ybVN1Ym1pdEJ1dHRvbiB7XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgQGluY2x1ZGUgcnNGb250U2l6ZSgxNiAsIDE2ICwgMTUpO1xyXG59XHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcbiIKCV0sCgkibmFtZXMiOiBbXSwKCSJtYXBwaW5ncyI6ICJBd0ZHRSxBQUFBLElBQUksQUFBQyxDQUNILFVBQVUsQ0FBRSxVQUFVLENBQ3ZCLEFBRUQsQUFDRSxDQURELENBQUQsQ0FBQyxBQUVFLE9BQU8sQ0FGVixDQUFDLEFBR0UsUUFBUSxBQUFDLENBQ1IsVUFBVSxDQUFFLE9BQU8sQ0FDcEIsQWNUTCxBQUFBLFNBQVMsQUFBQyxDQUNSLFNBQVMsQ0FBRSxjQUFjLENBQzFCLEFBRUQsQUFBQSxJQUFJLEFBQUMsQ0FDRCxzQkFBc0IsQ0FBRSxXQUFXLENBQ3RDLEFBRUQsQUFBQSxvQkFBb0IsQUFBQyxDQUNqQixPQUFP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LE1BQU0sU0FBUyxFQUFFLEtBQUssRU1NbkMsQUFBQSxXQUFXLEFBQUssQ0FHUixLQUFLLENBQUUsS0FBSyxDQUVuQixDQUNELEFBQUEsT0FBTyxBQUFPLENBQ1YsV0FBVyxDQVJOLEdBQUMsQ0FTVCxBQVJELEFBQUEsV0FBVyxBQUFLLENBQ1osS0FBSyxDQUZBLENBQUMsQ0FNVCxBTlhELE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUssRU1NbkMsQUFBQSxXQUFXLEFBQUssQ0FHUixLQUFLLENBQUUsS0FBSyxDQUVuQixDQUNELEFBQUEsT0FBTyxBQUFPLENBQ1YsV0FBVyxDQVJOLEdBQUMsQ0FTVCxBQVJELEFBQUEsV0FBVyxBQUFLLENBQ1osS0FBSyxDQUZBLENBQUMsQ0FNVCxBTlhELE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUssRU1NbkMsQUFBQSxXQUFXLEFBQUssQ0FHUixLQUFLLENBQUUsS0FBSyxDQUVuQixDQUNELEFBQUEsT0FBTyxBQUFPLENBQ1YsV0FBVyxDQVJOLEdBQUMsQ0FTVCxBQVJELEFBQUEsV0FBVyxBQUFLLENBQ1osS0FBSyxDQUZBLENBQUMsQ0FNVCxBTlhELE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUssRU1NbkMsQUFBQSxXQUFXLEFBQUssQ0FHUixLQUFLLENBQUUsS0FBSyxDQUVuQixDQUNELEFBQUEsT0FBTyxBQUFPLENBQ1YsV0FBVyxDQVJOLEdBQUMsQ0FTVCxBQVJELEFBQUEsV0FBVyxBQUFLLENBQ1osS0FBSyxDQUZBLENBQUMsQ0FNVCxBTlhELE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUssRU1NbkMsQUFBQSxXQUFXLEFBQUssQ0FHUixLQUFLLENBQUUsS0FBSyxDQUVuQixDQUNELEFBQUEsT0FBTyxBQUFPLENBQ1YsV0FBVyxDQVJOLEdBQUMsQ0FTVCxBQVJELEFBQUEsV0FBVyxBQUFLLENBQ1osS0FBSyxDQUZBLENBQUMsQ0FNVCxBTlhELE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFF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 */