@charset "utf-8";
/* /zhuanti/sgkd/cjhd25/release/css/index.css */
@charset "UTF-8";
/* 基础模块 */
/* 默认文字颜色 */
/* input\textarea */
/* 默认文字强调类 */
.em {
  color: #b21000 !important;
}

/* CSS Document
Date:		2013/12/20
Author:		小芳
Update: 2024/1/30
Author:		恒洋
*/
/* CSS reset */
/* 1、Box sizing: 在HTML文档的开始处，将box-sizing属性设置为border-box，这样元素的宽度和高度将包括内边距和边框的大小，而不会影响宽度和高度。 */
html {
  box-sizing: border-box;
}

*, *:before, *:after {
  box-sizing: inherit;
}

/* 2、Margin and padding: 重置元素的外边距和内边距，以便在所有浏览器中都有一致的初始值。 */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-weight: normal;
}

/* 3、链接的外观: 重置链接的外观，以确保它们没有下划线，并在鼠标悬停时更改其样式。 */
a {
  text-decoration: none;
  cursor: pointer;
}

a:hover {
  text-decoration: underline;
}

/* 4、默认字体和颜色: 重置所以元素的默认字体和颜色，以确保在不同浏览器中都具有相同的外观。 */
body {
  color: #000;
  background-color: #fff;
}

input::-webkit-input-placeholder {
  /* WebKit browsers 适配谷歌 */
  color: #000;
}

input:-moz-placeholder {
  /* Mozilla Firefox 4 to 18 适配火狐 */
  color: #000;
}

input::-moz-placeholder {
  /* Mozilla Firefox 19+ 适配火狐 */
  color: #000;
}

input:-ms-input-placeholder {
  /* Internet Explorer 10+  适配ie*/
  color: #000;
}

textarea::-webkit-input-placeholder {
  /* WebKit browsers 适配谷歌 */
  color: #000;
}

textarea:-moz-placeholder {
  /* Mozilla Firefox 4 to 18 适配火狐 */
  color: #000;
}

textarea::-moz-placeholder {
  /* Mozilla Firefox 19+ 适配火狐 */
  color: #000;
}

textarea:-ms-input-placeholder {
  /* Internet Explorer 10+  适配ie*/
  color: #000;
}

input,
textarea {
  appearance: none; /* 移除默认的系统样式 */
  border: none; /* 移除边框 */
  padding: 0; /* 移除内边距 */
  margin: 0; /* 移除外边距 */
  background: none; /* 移除背景 */
  font-family: inherit; /* 继承父元素的字体 */
  font-size: inherit; /* 继承父元素的字体大小 */
  color: inherit; /* 继承父元素的字体颜色 */
  line-height: normal; /* 重置行高为默认值 */
  vertical-align: baseline; /* 重置垂直对齐方式为基线 */
}

input:focus,
textarea:focus {
  outline: none;
}

textarea {
  resize: none; /* 禁用文本域的尺寸调整 */
}

/*@mixin*/
/* 清除浮动 */
/* bfc */
/* 省略点点，需搭配inline-block或者block定宽 */
/* inline-block ie78兼容 */
/* 只有展示的按钮 */
/* 可以点击的按钮 */
/* 文字css快捷 */
/* 渐变 */
/* 描边 */
/* 各类居中 */
/* 动效 */
/* 渐变淡入效果 */
@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/* 渐变淡出效果 */
@keyframes fade-out {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
/* 缩放效果 */
@keyframes scale {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.5);
  }
}
/* 旋转效果 */
@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
/* 弹跳效果 */
@keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(-30px);
  }
  60% {
    transform: translateY(-15px);
  }
}
/* 翻牌动画 */
@keyframes draw-in {
  0% {
    transform: rotateY(0);
  }
  100% {
    transform: rotateY(-90deg);
  }
}
@keyframes draw-out {
  0% {
    transform: rotateY(-90deg);
  }
  100% {
    transform: rotateY(0);
  }
}
/* 雪碧 */
.m-lchl .aside .lchl-info, .m-lchl .aside, .m-info .info-body, .gift-list .gift-item .box-info {
  background-image: url(../zhuanti/sgkd/cjhd25/release/images/sprite_box.png?);
  background-repeat: no-repeat;
  background-size: 1677px 477px;
}

.m-lchl .aside .ljcz-btn, .m-info .info-bind, .mod-4 .mod-bd .btn, [class~=wg-btn] {
  background-image: url(../zhuanti/sgkd/cjhd25/release/images/sprite_btn.png?);
  background-repeat: no-repeat;
  background-size: 423px 249px;
}

.wg-dialog .copy-btn, .wg-dialog a.wg-dialog-close, [class|=btn2] {
  background-image: url(../zhuanti/sgkd/cjhd25/release/images/sprite_dialog.png?);
  background-repeat: no-repeat;
  background-size: 144px 144px;
}

.page-hd .hd-group .hd-group-btn, .page-hd .hd-time, .page-hd .hd-logo {
  background-image: url(../zhuanti/sgkd/cjhd25/release/images/sprite_head.png?);
  background-repeat: no-repeat;
  background-size: 618px 162px;
}

.m-palette .back, .m-palette .item, .m-palette .img {
  background-image: url(../zhuanti/sgkd/cjhd25/release/images/sprite_palette.png?);
  background-repeat: no-repeat;
  background-size: 341px 92px;
}

.m-rankPrize .rankPrize-rule, .m-rankPrize .rankPrize-item, .rank-table .table-line, .rank-table .rank-icon, .rank-table .head, .m-rank {
  background-image: url(../zhuanti/sgkd/cjhd25/release/images/sprite_rank.png?);
  background-repeat: no-repeat;
  background-size: 1190px 788px;
}

.m-sign .info, .m-sign .sign-btn {
  background-image: url(../zhuanti/sgkd/cjhd25/release/images/sprite_sign.png?);
  background-repeat: no-repeat;
  background-size: 512px 323px;
}

[class~=wg-tit] {
  background-image: url(../zhuanti/sgkd/cjhd25/release/images/sprite_tit.png?);
  background-repeat: no-repeat;
  background-size: 707px 378px;
}

/* 页面模块 */
.my_fbtm {
  position: relative;
}

.dj-body {
  position: relative;
}

.page-ft {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  text-align: center;
  font: 700 14px/28px "microsoft yahei";
  color: #000;
}

/* 结构层次 */
/* section-mod-fun-box */
/* mod */
/* 活动模块 */
/* 具体功能模块 */
.my_topbar {
  min-width: 1200px;
}

.my_footer {
  margin-top: 0;
}

/* 中间区域 -具体页面有可能不一样*/
.wrap {
  margin: 0 auto;
  width: 1200px;
  position: relative;
  *zoom: 1;
}

/* 只针对头部进行overflow：hidden处理
避免用户信息栏超出导致兼容有问题 */
.page-hd .wrap {
  overflow: hidden;
}

/* 调整公共footer样式 */
/* 公共ui 使用wg作为标志使用引入,提供一些公共的行为ui */
[class~=wg-btn] {
  /* 按钮不一定使用按钮雪碧，具体还是要看内容，放在各个具体样式内 */
  transition: filter 0.3s, color 0.3s;
  display: block;
  text-align: center;
  font-size: 0;
  line-height: 0;
}
[class~=wg-btn]:hover {
  filter: brightness(1.2);
}

[class~=wg-tit] {
  font-size: 0;
}
[class~=wg-tit].tit1-1 {
  background-position: 0px -293px;
  width: 580px;
  height: 85px;
}
[class~=wg-tit].tit1-2 {
  background-position: 0px -95px;
  width: 588px;
  height: 89px;
}
[class~=wg-tit].tit1-3 {
  background-position: 0px 0px;
  width: 707px;
  height: 85px;
}
[class~=wg-tit].tit1-4 {
  background-position: 0px -194px;
  width: 587px;
  height: 89px;
}

[class~=wg-img] {
  overflow: hidden;
}
[class~=wg-img] img {
  transition: transform 0.3s;
  display: block;
  width: 100%;
  height: 100%;
}
[class~=wg-img]:hover img {
  transform: scale(1.2);
}

.img-box img {
  display: block;
  width: 100%;
  height: 100%;
}

/* 单项------------------------------------------------------------------------ */
/* 背景 */
.my_fbtm {
  background: #e0e0e0;
}
.my_fbtm * {
  box-sizing: border-box;
}

.page-hd {
  position: relative;
  z-index: 1;
  /* logo */
  /* 活动时间 */
  /* 用户信息 */
  /* 分组链接 */
  /* 有时候是整体背景，有时候是单独按钮，具体ui具体调整 */
  /* 这里按照单独 */
}
.page-hd .hd-logo {
  position: absolute;
  top: 55px;
  left: 15px;
  background-position: 0px 0px;
  width: 221px;
  height: 162px;
  font-size: 0;
}
.page-hd .hd-time {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 660px;
  text-align: center;
  font: 700 14px/29px "microsoft yahei";
  color: #ffffff;
  background-position: -231px 0px;
  width: 387px;
  height: 29px;
}
.page-hd .hd-info {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 80px;
}
.page-hd .hd-group {
  position: absolute;
  right: 0px;
  top: 14px;
}
.page-hd .hd-group .hd-group-btn {
  background-position: -231px -39px;
  width: 128px;
  height: 36px;
  font: 700 12px/36px "microsoft yahei";
  color: #e3e3e3;
  text-align: left;
  padding-left: 18px;
}
.page-hd .hd-group .hd-group-btn:hover {
  background-position: -369px -39px;
  width: 128px;
  height: 36px;
  filter: brightness(1);
}

.gift-list .gift-item {
  display: inline-block;
  *display: inline;
  *zoom: 1;
  position: relative;
  width: 285px;
}
.gift-list .gift-item .box-info {
  background-position: -477px -101px;
  width: 285px;
  height: 145px;
  padding: 4px 5px;
}
.gift-list .gift-item .box-info .tit {
  font: 700 14px/31px "microsoft yahei";
  color: #fff5e4;
  text-align: left;
  padding-left: 12px;
  margin-bottom: 6px;
}
.gift-list .gift-item .box-info .tit span {
  font: 700 14px/31px "microsoft yahei";
  color: #e51c2b;
}
.gift-list .gift-item .box-info img {
  display: block;
  margin: 0 auto;
  width: 270px;
  height: 94px;
}
.gift-list .gift-item .name {
  margin: 0 auto;
  position: relative;
  height: 28px;
  width: 90%;
  font: 500 14px/28px "microsoft yahei";
  color: #fff5e4;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: bottom;
  *vertical-align: auto;
  text-align: center;
}
.gift-list .gift-item .item-btn {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 170px;
  background-position: 0px -164px;
  width: 171px;
  height: 43px;
}
.gift-list .gift-item .item-btn[data-status="1"] {
  background-position: -252px 0px;
  width: 171px;
  height: 43px;
}
.gift-list .gift-item .item-btn[data-status="2"] {
  background-position: -252px -53px;
  width: 171px;
  height: 43px;
}

.mod {
  /* 如果遇到超出1200宽的标题 */
  /* 联系设计师或者使用center2x+padding-top */
}
.mod .mod-hd .hd-tit {
  margin: 0 auto;
}
.mod .mod-hd .hd-txt {
  text-align: center;
  font: 500 14px/24px "microsoft yahei";
  color: #fff5e4;
}

.mod-1 {
  min-height: 910px;
}

.mod-2 {
  min-height: 900px;
}
.mod-2 .mod-hd {
  margin-bottom: 40px;
}

.mod-3 {
  min-height: 948px;
}
.mod-3 .mod-hd .hd-txt {
  font: 500 14px/24px "microsoft yahei";
  color: #8f8f8f;
}
.mod-3 .mod-hd {
  margin-bottom: 40px;
}
.mod-3 .m-rank {
  margin-right: 12px;
}
.mod-3 .m-rank, .mod-3 .m-rankPrize {
  display: inline-block;
  *display: inline;
  *zoom: 1;
  vertical-align: top;
}

.mod-4 {
  padding-bottom: 88px;
}
.mod-4 .mod-hd {
  margin-bottom: 95px;
}
.mod-4 .mod-bd {
  position: relative;
  background: url(../zhuanti/sgkd/cjhd25/release/images/box_mod_4.png?) no-repeat center top;
  width: 1200px;
  height: 474px;
}
.mod-4 .mod-bd::after {
  content: "";
  background: url(../zhuanti/sgkd/cjhd25/release/images/man.png?) no-repeat center top;
  width: 507px;
  height: 554px;
  position: absolute;
  left: -66px;
  top: -70px;
}
.mod-4 .mod-bd .btn {
  background-position: 0px -82px;
  width: 242px;
  height: 72px;
  position: absolute;
  left: 676px;
  top: 313px;
}

/* 图片背景 */
/* 如果多页面多背景切换用外层page-xx进行控制 */
.view {
  min-width: 1200px;
}

.page-index .bg-out-hd {
  background: url(../zhuanti/sgkd/cjhd25/release/images/bg/bg-hd-out_01.jpg?) no-repeat center top;
}
.page-index .bg-hd-1 {
  background: url(../zhuanti/sgkd/cjhd25/release/images/bg/bg_01.jpg?) no-repeat center top;
  height: 220px;
}
.page-index .bg-hd-2 {
  background: url(../zhuanti/sgkd/cjhd25/release/images/bg/bg_02.jpg?) no-repeat center top;
  height: 220px;
}
.page-index .bg-hd-3 {
  background: url(../zhuanti/sgkd/cjhd25/release/images/bg/bg_03.jpg?) no-repeat center top;
  height: 220px;
}
.page-index .bg-hd-4 {
  background: url(../zhuanti/sgkd/cjhd25/release/images/bg/bg_04.jpg?) no-repeat center top;
  height: 220px;
}
.page-index .bg-out-bd {
  background: url(../zhuanti/sgkd/cjhd25/release/images/bg/bg-bd-out_01.jpg?) no-repeat center top;
}
.page-index .bg-out-bd .wrap {
  padding-bottom: 50px;
  background: url(../zhuanti/sgkd/cjhd25/release/images/bg/bg-bd-in_01.jpg?) no-repeat center top;
}

/* 组件 */
/* 用户信息栏 */
/* 信息栏高（行高） */
/* 信息栏宽 */
/* 登录宽 */
/* 默认文字颜色 */
/* 强调文字颜色 */
.text_default_em_2 {
  color: #fff5e4 !important;
}

.m-info {
  /* 绑定提示文本 */
  /* 自动判断子元素个数 兼容ie9 */
  /* 状态1 一般登陆（未有绑定、未有角色等） */
  /* 状态2 正常状态 */
}
.m-info .info-body {
  background-position: -477px 0px;
  width: 1200px;
  height: 91px;
}
.m-info .login-info {
  float: left;
  text-align: center;
  width: 380px;
  height: 100%;
}
.m-info .login-info .user-name {
  position: relative;
  width: 170px;
  display: inline-block;
  *display: inline;
  *zoom: 1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: bottom;
  *vertical-align: auto;
  font: 700 14px/91px "microsoft yahei";
  color: #fff5e4;
}
.m-info .login-info .user-logout,
.m-info .login-info .user-login,
.m-info .login-info .user-reg {
  font: 700 14px/91px "microsoft yahei";
  color: #fff5e4;
}
.m-info .login-info .user-logout {
  font: 700 14px/91px "microsoft yahei";
  color: #fff5e4;
}
.m-info .info-box {
  float: left;
  width: 796px;
  *zoom: 1;
  font: 700 14px/91px "microsoft yahei";
  color: #fff5e4;
  display: none;
  position: relative;
  box-sizing: border-box;
}
.m-info .info-box:after {
  content: "";
  display: table;
  clear: both;
}
.m-info .info-box.info-box-1 {
  display: inline-block;
  padding-left: 200px;
}
.m-info .info-bind {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0px;
  background-position: 0px -217px;
  width: 172px;
  height: 32px;
  font-size: 0;
  line-height: 0;
}
.m-info .info-bind-ps {
  padding-left: 24px;
  *zoom: 1;
}
.m-info .info-bind-ps:after {
  content: "";
  display: table;
  clear: both;
}
.m-info .info-box-item {
  *zoom: 1;
  text-align: center;
  height: 91px;
  float: left;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: bottom;
  *vertical-align: auto;
  /* 1个 */
}
.m-info .info-box-item:after {
  content: "";
  display: table;
  clear: both;
}
.m-info .info-box-item .info-label {
  float: left;
}
.m-info .info-box-item:only-child {
  width: 100%;
}
.m-info .info-box-item:first-child:nth-last-child(2) {
  width: calc(100% / 2);
}
.m-info .info-box-item:first-child:nth-last-child(2) ~ .info-box-item {
  width: calc(100% / 2);
}
.m-info .info-box-item:first-child:nth-last-child(3) {
  width: calc(100% / 3);
}
.m-info .info-box-item:first-child:nth-last-child(3) ~ .info-box-item {
  width: calc(100% / 3);
}
.m-info .info-box-item:first-child:nth-last-child(4) {
  width: calc(100% / 4);
}
.m-info .info-box-item:first-child:nth-last-child(4) ~ .info-box-item {
  width: calc(100% / 4);
}
.m-info .info-box-item:first-child:nth-last-child(5) {
  width: calc(100% / 5);
}
.m-info .info-box-item:first-child:nth-last-child(5) ~ .info-box-item {
  width: calc(100% / 5);
}
.m-info .info-box-item:first-child:nth-last-child(6) {
  width: calc(100% / 6);
}
.m-info .info-box-item:first-child:nth-last-child(6) ~ .info-box-item {
  width: calc(100% / 6);
}
.m-info .info-box-item:first-child:nth-last-child(7) {
  width: calc(100% / 7);
}
.m-info .info-box-item:first-child:nth-last-child(7) ~ .info-box-item {
  width: calc(100% / 7);
}
.m-info[data-status="1"] .info-box.info-box-1 {
  display: block;
}
.m-info[data-status="2"] .info-box.info-box-1 {
  display: none;
}
.m-info[data-status="2"] .info-box.info-box-3 {
  display: block;
}
.m-info[data-status="2"] .info-box.info-box-3 .btn1-bind {
  cursor: default;
}
.m-info[data-status="2"] .info-box.info-box-3 .btn1-bind:hover {
  filter: brightness(1);
}

.m-palette {
  z-index: 99;
  position: fixed;
  bottom: 200px;
  left: 50%;
  margin-left: 670px;
  right: auto;
  display: none;
  box-sizing: border-box;
  width: 202px;
  /* 因为有可能两者ui不一致 独立 */
}
.m-palette .img {
  background-position: 0px 0px;
  width: 152px;
  height: 92px;
  padding: 3px;
  display: block;
  margin: 0 auto;
  margin-bottom: 10px;
}
.m-palette .img img {
  width: 146px;
  height: 86px;
}
.m-palette .item {
  display: block;
  background-position: -162px 0px;
  width: 179px;
  height: 37px;
  text-align: center;
  font: 500 18px/37px "microsoft yahei";
  color: #393c43;
  margin: 0 auto;
  margin-bottom: 10px;
}
.m-palette .item:hover, .m-palette .item.cur {
  background-position: -162px -47px;
  width: 179px;
  height: 37px;
  font: 500 18px/37px "microsoft yahei";
  color: #e8e1cd;
  text-decoration: none;
}
.m-palette .back {
  display: block;
  background-position: -162px 0px;
  width: 179px;
  height: 37px;
  text-align: center;
  margin: 0 auto;
  font: 500 18px/37px "microsoft yahei";
  color: #393c43;
}
.m-palette .back:hover {
  background-position: -162px -47px;
  width: 179px;
  height: 37px;
  font: 500 18px/37px "microsoft yahei";
  color: #e8e1cd;
  text-decoration: none;
}

.sm_1800 .m-fixedMenu {
  left: 50% !important;
  margin-left: 670px !important;
}

.m-sign {
  height: 260px;
  overflow: hidden;
  position: relative;
}
.m-sign .sign-btn {
  position: absolute;
  left: 360px;
  top: 120px;
  background-position: -204px 0px;
  width: 308px;
  height: 90px;
  z-index: 1;
}
.m-sign .sign-btn[data-status="1"] {
  cursor: pointer;
}
.m-sign .sign-btn[data-status="1"]:hover {
  filter: brightness(1.1);
}
.m-sign .sign-btn[data-status="-6"] {
  background-position: 0px -233px;
  width: 308px;
  height: 90px;
  cursor: default;
}
.m-sign .sign-btn[data-status="2"] {
  background-position: -204px -100px;
  width: 308px;
  height: 90px;
  cursor: default;
}
.m-sign .info {
  position: absolute;
  top: 0px;
  left: 620px;
  text-align: center;
  font: 700 16px/38px "microsoft yahei";
  color: #fff5e4;
  background-position: 0px 0px;
  width: 194px;
  height: 223px;
  padding-top: 130px;
}
.m-sign .info .num {
  font: 700 36px/38px "microsoft yahei";
  color: #c14447;
}

.m-sign-gift .gift-list {
  text-align: center;
  margin-right: -20px;
  font-size: 0;
}
.m-sign-gift .gift-item {
  margin-right: 20px;
  margin-bottom: 70px;
}

/* 累充好礼 */
.m-lchl .aside {
  position: relative;
  vertical-align: top;
  display: inline-block;
  *display: inline;
  *zoom: 1;
  background-position: 0px 0px;
  width: 467px;
  height: 477px;
}
.m-lchl .aside .lchl-info {
  text-align: center;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 410px;
  background-position: -772px -101px;
  width: 252px;
  height: 42px;
  font: 700 14px/42px "microsoft yahei";
  color: #fff5e4;
}
.m-lchl .aside .lchl-info span {
  font: 700 14px/42px "microsoft yahei";
  color: #ffc513;
}
.m-lchl .aside .ljcz-btn {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 482px;
  background-position: 0px 0px;
  width: 242px;
  height: 72px;
}
.m-lchl .gift-list {
  display: inline-block;
  *display: inline;
  *zoom: 1;
  vertical-align: top;
  text-align: center;
  margin-right: -20px;
  padding-top: 100px;
  font-size: 0;
  width: 596px;
}
.m-lchl .gift-item {
  margin-right: 13px;
  margin-bottom: 70px;
}

.m-rank {
  position: relative;
  background-position: 0px 0px;
  width: 492px;
  height: 692px;
  font-size: 0;
}
.m-rank .rank-info {
  height: 46px;
  padding: 0 10px;
  overflow: hidden;
}
.m-rank .rank-info .info {
  font: 700 14px/52px "microsoft yahei";
  color: #272732;
}
.m-rank .rank-info .info.info-rank {
  display: inline-block;
  width: 134px;
}
.m-rank .rank-info em {
  font: 700 14px/52px "microsoft yahei";
  color: #496aa4;
}

.rank-table {
  margin: 0 auto;
  min-height: 540px;
}
.rank-table .col1,
.rank-table .col2,
.rank-table .col3 {
  display: inline-block;
  *display: inline;
  *zoom: 1;
  vertical-align: top;
  position: relative;
  height: 56px;
  text-align: center;
}
.rank-table .col1 {
  width: 20%;
}
.rank-table .col2 {
  width: 48%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.rank-table .col3 {
  width: 32%;
}
.rank-table .head {
  margin: 0 auto;
  margin-bottom: 5px;
  text-align: center;
  overflow: hidden;
  background-position: 0px -702px;
  width: 469px;
  height: 37px;
  font-size: 0;
}
.rank-table .head span {
  font: 700 16px/37px "microsoft yahei";
  color: #e4e4e4;
}
.rank-table .body {
  width: 469px;
  margin: 0 auto;
  min-height: 400px;
}
.rank-table .body .col2 {
  font: 700 14px/56px "microsoft yahei";
  color: #272732;
}
.rank-table .body .col3 {
  font: 500 14px/56px "microsoft yahei";
  color: #272732;
}
.rank-table .rank-icon {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  font: 700 16px/39px "microsoft yahei";
  color: #e2e2e2;
  background-position: 0px -749px;
  width: 38px;
  height: 39px;
}
.rank-table .table-line {
  background-position: -502px -632px;
  width: 476px;
  height: 56px;
  margin-bottom: 4px;
  /* 斑马线ui */
  /* 前三ui */
  /* 第一名ui */
}
.rank-table .table-line:nth-child(-n+3) .rank-icon {
  font-size: 0;
}
.rank-table .table-line:nth-child(-n+3) .col3 {
  font: 700 14px/56px "microsoft yahei";
  color: #5d6792;
}
.rank-table .table-line:nth-child(-n+1) .col3 {
  font: 700 14px/56px "microsoft yahei";
  color: #d04554;
}
.rank-table .table-line[data-rank="1"] .rank-icon {
  background-position: -48px -749px;
  width: 38px;
  height: 39px;
}
.rank-table .table-line[data-rank="2"] .rank-icon {
  background-position: -96px -749px;
  width: 38px;
  height: 39px;
}
.rank-table .table-line[data-rank="3"] .rank-icon {
  background-position: -144px -749px;
  width: 38px;
  height: 39px;
}

.m-rankPrize {
  width: 688px;
}
.m-rankPrize .rankPrize-item {
  padding: 33px 8px 0 8px;
  position: relative;
}
.m-rankPrize .rankPrize-item-1 {
  background-position: -502px 0px;
  width: 688px;
  height: 165px;
}
.m-rankPrize .rankPrize-item-2 {
  background-position: -502px -175px;
  width: 688px;
  height: 165px;
}
.m-rankPrize .rankPrize-item-3 {
  background-position: -502px -350px;
  width: 688px;
  height: 165px;
}
.m-rankPrize .rankPrize-item-img {
  width: 673px;
  height: 102px;
  overflow: hidden;
  display: block;
}
.m-rankPrize .rankPrize-item + .rankPrize-item {
  margin-top: 40px;
}
.m-rankPrize .rankPrize-name {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: bottom;
  *vertical-align: auto;
  height: 30px;
  width: 95%;
  font: 500 12px/30px "microsoft yahei";
  color: #272732;
  text-align: center;
  margin: 0 auto;
}
.m-rankPrize .rankPrize-rule {
  margin-top: 20px;
  background-position: -502px -525px;
  width: 676px;
  height: 97px;
}

/* 主标题色 */
/* 主标题色-重点 */
/* 副标题颜色 */
/* 正文色 */
/* 正文次要色 */
/* 下拉框内未选中字体颜色 */
/* 强调文字(标红) */
/* 链接颜色 */
/* 按钮文字颜色 */
/* 背景色 */
/* 边框色 */
/* 边框宽 */
/* 如果复杂边框 设置padding空出区域 */
.ui-dialog {
  height: auto !important;
}

/* 简易弹出框 */
.wg-dialog {
  padding: 0;
}
.wg-dialog .wg-dialog-t-line,
.wg-dialog .wg-dialog-b-line,
.wg-dialog .wg-dialog-t,
.wg-dialog .wg-dialog-r,
.wg-dialog .wg-dialog-b,
.wg-dialog .wg-dialog-l,
.wg-dialog .wg-dialog-lt,
.wg-dialog .wg-dialog-rt,
.wg-dialog .wg-dialog-lb,
.wg-dialog .wg-dialog-rb {
  display: none;
}
.wg-dialog .wg-dialog-body {
  background: #ffffff;
  border: solid 0px #ffffff;
  padding: 26px 0;
}

/* 按钮公共 */
[class|=btn2] {
  transition: filter 0.3s, color 0.3s;
  display: block;
  text-align: center;
  /* 一般按钮 */
  /* 强调按钮 */
}
[class|=btn2]:hover {
  text-decoration: none;
  filter: brightness(1.2);
}
[class|=btn2].btn2-com {
  background-position: 0px 0px;
  width: 144px;
  height: 46px;
  font: 500 16px/46px "microsoft yahei";
  color: #fff0c9;
}
[class|=btn2].btn2-com:hover {
  filter: brightness(1.2);
}
[class|=btn2].btn2-com-2 {
  background-position: 0px -56px;
  width: 144px;
  height: 46px;
  font: 500 16px/46px "microsoft yahei";
  color: #fff0c9;
}
[class|=btn2].btn2-com-2:hover {
  filter: brightness(1.2);
}

/*dialog*/
.wg-dialog {
  width: 700px;
  box-sizing: border-box;
  /* 关闭按钮 */
  /* 标题级别文字 */
  /* 弹出框强制标红文字 */
  /* 副标题级别文字 */
  /* 用于单条显示 */
  /* 操作区域 */
  /* 统一按钮样式 */
  /* 单行列表信息 */
  /* 补充说明 */
  /* 表单项 */
}
.wg-dialog * {
  box-sizing: border-box;
}
.wg-dialog .wg-dialog-cont {
  padding: 10px 0;
}
.wg-dialog a.wg-dialog-close {
  position: absolute;
  background-position: -66px -112px;
  width: 21px;
  height: 21px;
  top: 10px;
  right: 10px;
  z-index: 9;
  overflow: hidden;
  text-indent: -9999em;
  transition: filter 0.3s;
}
.wg-dialog a.wg-dialog-close:hover {
  filter: brightness(1.2);
}
.wg-dialog .wg-dialog-tit {
  font: 700 22px/24px "microsoft yahei";
  color: #1e2a43;
  text-align: center;
  text-wrap: balance;
}
.wg-dialog .wg-dialog-tit em {
  font-weight: bold;
  color: #d04554;
}
.wg-dialog .wg-dialog-txt {
  margin-top: 12px;
  font: 500 14px/24px "microsoft yahei";
  color: #1e2a43;
  padding: 0 38px;
}
.wg-dialog .wg-dialog-txt p + p {
  margin-top: 10px;
}
.wg-dialog .wg-dialog-em {
  color: #d04554 !important;
}
.wg-dialog .wg-dialog-stit {
  margin-top: 12px;
  font: 500 14px/16px "microsoft yahei";
  color: #1e2a43;
  text-align: center;
  text-wrap: balance;
}
.wg-dialog .wg-dialog-img {
  display: block;
  width: 200px;
  height: 200px;
  border: solid 10px #a51c1d;
  margin: 0 auto;
}
.wg-dialog .wg-dialog-list {
  margin: 12px 0;
  font-size: 0;
}
.wg-dialog .wg-dialog-list .wg-dialog-item {
  position: relative;
  text-align: center;
  font: 500 14px/30px "microsoft yahei";
  color: #1e2a43;
}
.wg-dialog .wg-dialog-list .wg-dialog-item .lnk-txt {
  font: 500 14px/30px "microsoft yahei";
  color: #1e2a43;
}
.wg-dialog .wg-dialog-item-name {
  display: inline-block;
  width: 50%;
  height: 30px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: bottom;
  *vertical-align: auto;
  text-align: right;
}
.wg-dialog .wg-dialog-item-val {
  display: inline-block;
  width: 49%;
  height: 30px;
  text-align: left;
}
.wg-dialog .wg-dialog-opt {
  /* 内部按钮一般使用定位 */
  text-align: center;
  position: relative;
  overflow: hidden;
  text-align: center;
  font-size: 0;
  margin-top: 20px;
}
.wg-dialog .wg-dialog-btn {
  margin: 0 10px;
  display: inline-block;
  *display: inline;
  *zoom: 1;
}
.wg-dialog .wg-dialog-oper {
  *zoom: 1;
  margin: 0 auto;
  font: 500 14px/32px "microsoft yahei";
  color: #1e2a43;
  /* 输入项系列 */
  /* 下拉项系列 */
}
.wg-dialog .wg-dialog-oper:after {
  content: "";
  display: table;
  clear: both;
}
.wg-dialog .wg-dialog-oper .oper-label {
  float: left;
  width: 30%;
  text-align: right;
  height: 32px;
}
.wg-dialog .wg-dialog-oper .oper-label em {
  color: #ff3333;
}
.wg-dialog .wg-dialog-oper .oper-input,
.wg-dialog .wg-dialog-oper .copy-input {
  float: left;
  width: 45%;
  height: 32px;
  font: 500 14px/32px "microsoft yahei";
  color: #4c4c4c;
  background: #ffffff;
  border: solid 1px #cccccc;
  padding-left: 10px;
  box-sizing: border-box;
}
.wg-dialog .wg-dialog-oper .oper-opt,
.wg-dialog .wg-dialog-oper .copy-btn {
  float: left;
  margin-left: 10px;
}
.wg-dialog .wg-dialog-oper .oper-opt-tip {
  color: #d04554;
}
.wg-dialog .wg-dialog-oper .oper-select-label {
  float: left;
  width: 60%;
  padding-left: 64px;
}
.wg-dialog .wg-dialog-oper .oper-select-label em {
  color: #d04554;
}
.wg-dialog .wg-dialog-oper .oper-select {
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  font: 500 14px/32px "microsoft yahei";
  color: #2f436c;
  padding-left: 10px;
}
.wg-dialog .wg-dialog-oper .oper-select option[hidden] {
  color: #000;
}
.wg-dialog .wg-dialog-oper .oper-textarea-label em {
  color: #d04554;
}
.wg-dialog .wg-dialog-oper .oper-textarea {
  margin: 0 auto;
  display: block;
  width: 100%;
  height: 100px;
  padding: 4px;
  resize: none;
  font: 500 14px/32px "microsoft yahei";
  color: #4c4c4c;
  background: #ffffff;
  border: solid 1px #cccccc;
  padding-left: 10px;
}
.wg-dialog .wg-dialog-oper {
  margin-top: 10px;
}
.wg-dialog .wg-dialog-hr {
  margin: 20px;
  border: dashed 1px #5b75ab;
}
.wg-dialog .wg-dialog-label {
  font: 700 14px/32px "microsoft yahei";
  color: #1e2a43;
  float: left;
  width: 30%;
  text-align: right;
}
.wg-dialog .wg-dialog-input,
.wg-dialog .copy-input {
  float: left;
  width: 46%;
  height: 32px;
  font: 500 14px/32px "microsoft yahei";
  color: #4c4c4c;
  background: #ffffff;
  border: solid 1px #cccccc;
  padding-left: 10px;
  box-sizing: border-box;
}
.wg-dialog .wg-dialog-input.input-phone,
.wg-dialog .copy-input.input-phone {
  cursor: pointer;
}
.wg-dialog .wg-dialog-input-btn {
  display: inline-block;
  background-color: #f36162;
  height: 32px;
  padding: 0 14px;
  text-align: center;
  margin-left: 10px;
  font: 500 14px/32px "microsoft yahei";
  color: #ffffff;
}
.wg-dialog .copy-btn {
  float: left;
  background-position: 0px -112px;
  width: 56px;
  height: 32px;
  font-size: 0;
}
.wg-dialog .copy-btn:hover {
  filter: brightness(1.2);
}
.wg-dialog .wg-dialog-ps {
  width: 100%;
  font: 500 14px/16px "microsoft yahei";
  color: #d04554;
  text-align: center;
  margin-top: 12px;
}
.wg-dialog .wg-form-item {
  font: 500 14px/32px "microsoft yahei";
  color: #1e2a43;
  padding-left: 80px;
  position: relative;
  margin-bottom: 16px;
}
.wg-dialog .wg-form-item .form-label {
  position: absolute;
  top: 0;
  left: 0;
  width: 80px;
  text-align: right;
}
.wg-dialog .wg-form-item .form-input,
.wg-dialog .wg-form-item .form-textarea {
  font: 500 14px/32px "microsoft yahei";
  color: #1e2a43;
  background: #ffffff;
  border: solid 1px #cccccc;
}
.wg-dialog .wg-form-item .form-input {
  height: 28px;
  padding: 0 5px;
  width: 180px;
}
.wg-dialog .wg-form-item .form-textarea {
  line-height: 28px;
  padding: 0 5px;
  width: 328px;
  height: 100px;
  resize: none;
}
.wg-dialog .j-form {
  cursor: pointer;
}

/* 各个弹出框独立样式 ********************************************/
/* 表格 */
.wg-dialog-table,
.wg-dialog-mylist {
  width: 800px;
}
.wg-dialog-table .wg-dialog-cont,
.wg-dialog-mylist .wg-dialog-cont {
  padding: 10px 100px;
}
.wg-dialog-table .m-list,
.wg-dialog-mylist .m-list {
  width: 50%;
  margin: 0 auto;
  margin-top: 10px;
}
.wg-dialog-table .list-table-td,
.wg-dialog-mylist .list-table-td {
  text-align: left;
  font: 500 14px/32px "microsoft yahei";
  color: #1e2a43;
  word-break: break-all;
}
.wg-dialog-table .list-table-td a,
.wg-dialog-mylist .list-table-td a {
  font: 500 14px/32px "microsoft yahei";
  color: #48b6fb;
}
.wg-dialog-table .list-table-td:nth-child(2),
.wg-dialog-mylist .list-table-td:nth-child(2) {
  text-align: right;
  color: #1e2a43;
}
.wg-dialog-table .list-table-thead .col-1,
.wg-dialog-mylist .list-table-thead .col-1 {
  width: 200px;
}
.wg-dialog-table .list-table-thead .col-2,
.wg-dialog-mylist .list-table-thead .col-2 {
  width: 200px;
}
.wg-dialog-table .wg-dialog-oper,
.wg-dialog-mylist .wg-dialog-oper {
  width: 300px;
  padding-left: 40px;
  box-sizing: border-box;
}

/* 分页 */
.wg-dialog-pager {
  text-align: center;
  padding-top: 10px;
}
.wg-dialog-pager span {
  line-height: 20px;
  display: inline-block;
  margin: 2px;
  font: 500 14px/20px "microsoft yahei";
  color: #1e2a43;
}
.wg-dialog-pager a,
.wg-dialog-pager span.cur {
  width: 20px;
  height: 20px;
  display: inline-block;
  text-decoration: none;
  margin: 2px;
  font: 500 14px/20px "microsoft yahei";
  color: #1e2a43;
}
.wg-dialog-pager span.cur {
  color: #d04554;
  text-decoration: underline;
  width: 20px;
}
.wg-dialog-pager a:hover {
  color: #d04554;
}
.wg-dialog-pager a.pager-pre,
.wg-dialog-pager a.pager-next,
.wg-dialog-pager span.pager-pre,
.wg-dialog-pager span.pager-next {
  width: 50px;
}

/* 选服 */
/* 选服框宽高 */
/* 选服框背景颜色 */
/* 选服框字体*/
/* 边框颜色 */
.wg-dialog-serverSelect .wg-dialog-line {
  height: 24px;
  padding: 16px 0;
}
.wg-dialog-serverSelect .select_box {
  position: absolute;
  left: 50%;
  margin-left: -190px;
}
.wg-dialog-serverSelect .select_js {
  position: absolute;
  left: 50%;
  margin-left: 0;
  background-color: #ffffff;
  border: none;
  border-bottom: solid 1px #cccccc;
  font: 500 14px/24px "microsoft yahei";
  color: #d04554;
  height: 24px;
  padding-left: 8px;
  width: 210px;
}
.wg-dialog-serverSelect .wd-dialog-opt-tip {
  text-align: center;
  margin-top: 10px;
  font: 500 14px/24px "microsoft yahei";
  color: #d04554;
  height: 14px;
}
.wg-dialog-serverSelect .wd-dialog-opt {
  margin-top: 5px;
  padding-top: 0;
}
.wg-dialog-serverSelect .search-input {
  width: 100%;
}

input::-webkit-input-placeholder {
  color: #4c4c4c;
}

input::-moz-input-placeholder {
  color: #4c4c4c;
}

input::-ms-input-placeholder {
  color: #4c4c4c;
}

/* 选服务器 */
.m_selectlist {
  /* 选择框首条 */
  position: relative;
  *zoom: 1;
  z-index: 111;
  /* 选择框下拉 */
  /* 搜索 */
}
.m_selectlist .m_selected {
  width: 184px;
  height: 24px;
  background-color: #ffffff;
  cursor: pointer;
  overflow: hidden;
  border: solid 1px #cccccc;
  /*提示*/
  /* 文字区域 */
  /* 下拉区域 */
}
.m_selectlist .m_selected .redtip {
  font: 500 12px/12px "microsoft yahei";
  color: #ba103a;
  top: 32px;
  left: 0px;
  position: absolute;
}
.m_selectlist .m_selected .select_txt {
  padding: 0 0 0 2px;
  font: 500 14px/24px "microsoft yahei";
  color: #4c4c4c;
  overflow: hidden;
  text-align: left;
  width: auto;
  height: auto;
  max-width: 161px;
  margin-left: 11px;
}
.m_selectlist .m_selected .flag_down {
  width: auto;
  height: auto;
  background-color: #ffffff;
  display: block;
  overflow: hidden;
  padding: 10px 10px 0 0;
}
.m_selectlist .m_selected .flag_down b {
  width: 0;
  height: 0;
  border-top: 6px #4c4c4c solid;
  border-left: 6px transparent dashed;
  border-right: 6px transparent dashed;
  display: block;
  overflow: hidden;
  zoom: 1;
  transition: all 0.3s;
}
.m_selectlist .m_select_cont {
  background-color: #ffffff;
  border: solid 1px #cccccc;
  top: 24px;
  width: 184px;
  padding: 0px;
  z-index: 4;
  position: absolute;
  overflow: hidden;
}
.m_selectlist .m_select_cont .selectlist li a {
  background: #ffffff;
  display: block;
  padding: 0 5px;
  font: 500 12px/24px "microsoft yahei";
  color: #4c4c4c;
  z-index: 4;
  transition: filter 0.3s;
}
.m_selectlist .m_select_cont .selectlist li a:hover {
  background: #4c4c4c;
  text-decoration: none;
  color: #ffffff;
  filter: brightness(1.2);
}
.m_selectlist .m_select_cont .selectlist li.cur a {
  background: #4c4c4c;
  text-decoration: none;
  color: #ffffff;
  filter: brightness(1.2);
}
.m_selectlist .v_scrollbar {
  position: absolute;
  width: 10px;
  right: 0;
  top: 0;
  height: 220px;
  display: none;
  cursor: pointer;
  background: #414f62;
}
.m_selectlist .v_scrollbar_bg {
  position: absolute;
  top: 0;
  width: 10px;
  height: 100%;
  background-color: #414f62;
}
.m_selectlist .v_scrollbar_btn {
  position: absolute;
  width: 8px;
  border: 1px solid #a2aab0;
  z-index: 100;
  top: 0;
  border-radius: 3px;
  background-color: #a2aab0;
}
.m_selectlist .search-input {
  width: 100%;
  border-bottom: solid 1px #cccccc;
}

.wg-dialog-address .wg-dialog-cont {
  padding: 0 64px;
}
.wg-dialog-address .wg-dialog-oper {
  width: 280px;
  display: inline-block;
  *display: inline;
  *zoom: 1;
  float: left;
  vertical-align: baseline;
}
.wg-dialog-address .wg-dialog-oper .oper-input {
  width: 170px;
}
.wg-dialog-address .wg-dialog-opt {
  margin-top: 0;
}
.wg-dialog-address .wg-dialog-oper-textarea {
  width: 100%;
  float: none;
  margin-top: 10px !important;
}

.wg-dialog-prob .wg-dialog-item-name {
  padding-right: 40px;
}
.wg-dialog-prob .wg-dialog-item-val {
  padding-left: 40px;
}

.wg-dialog-mylist .wg-dialog-cont {
  padding: 10px;
}
.wg-dialog-mylist .wg-dialog-cont .m-list-box {
  padding: 0 50px;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnNjc3MiLCJjb3JlL192YXJpYWJsZS5zY3NzIiwiY29yZS9fYmFzZS5zY3NzIiwiY29yZS9fbWl4aW4uc2NzcyIsImNvcmUvX2FuaW1hdGlvbi5zY3NzIiwic3ByaXRlX2JveC5zY3NzIiwic3ByaXRlX2J0bi5zY3NzIiwic3ByaXRlX2RpYWxvZy5zY3NzIiwic3ByaXRlX2hlYWQuc2NzcyIsInNwcml0ZV9wYWxldHRlLnNjc3MiLCJzcHJpdGVfcmFuay5zY3NzIiwic3ByaXRlX3NpZ24uc2NzcyIsInNwcml0ZV90aXQuc2NzcyIsInBhZ2UvZ2xvYmFsLnNjc3MiLCJwYWdlL2luZGV4LnNjc3MiLCJwYWdlL3ZpZXcuc2NzcyIsIm1vZC9pbmZvLnNjc3MiLCJtb2QvcGFsZXR0ZS5zY3NzIiwibW9kL3NpZ24uc2NzcyIsIm1vZC9sY2hsLnNjc3MiLCJtb2QvcmFuay5zY3NzIiwibW9kL3BvcHVwLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUNBO0FDQ0E7QUFJQTtBQUtBO0FBQ0E7RUFDSTs7O0FDWko7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBT0E7QUFDQTtBQUNBO0VBQ0k7OztBQUVKO0VBQ0k7OztBQUdKO0FBQ0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBU0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0o7QUFDQTtFQUNJO0VBQ0E7OztBQUVKO0VBQ0k7OztBQUlKO0FBQ0E7RUFDSSxPRDNDTztFQzRDUCxrQkQzQ0k7OztBQytDUjtBQUNJO0VBQ0EsT0Q5Q21COzs7QUNnRHZCO0FBQ0k7RUFDQSxPRGxEbUI7OztBQ29EdkI7QUFDSTtFQUNBLE9EdERtQjs7O0FDd0R2QjtBQUNJO0VBQ0EsT0QxRG1COzs7QUM2RHZCO0FBQ0k7RUFDQSxPRC9EbUI7OztBQ2lFdkI7QUFDSTtFQUNBLE9EbkVtQjs7O0FDcUV2QjtBQUNJO0VBQ0EsT0R2RW1COzs7QUN5RXZCO0FBQ0k7RUFDQSxPRDNFbUI7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QTs7QUFJSjtFQUNJO0VsQmpoQlY7RUFDQSxPa0I4YlE7RUFvRkU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUlKO0VBQ0k7RUFDQTtFQUNBLGtCQWxHRDtFQW1HQztFQUNBO0VBQ0E7O0FBRUE7RWxCL2VWO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RWtCNmVjO0VBQ0E7RUFDQTtFQUNBOztBQU1aO0VBQ0ksa0JBbkhHO0VBb0hIO0VBQ0EsS0F6SEE7RUEwSEEsT0EzSEE7RUE0SEE7RUFDQTtFQUNBO0VBQ0E7O0FBSVE7RUFDSSxZQS9IVDtFQWdJUztFQUNBO0VsQjlqQmxCO0VBQ0EsT2tCOGJRO0VBaUlVO0VBQ0E7O0FBRUE7RUFDSSxZQXJJZDtFQXNJYztFQUNBLE9BekliO0VBMElhOztBQUtKO0VBQ0ksWUE5SWQ7RUErSWM7RUFDQSxPQWxKYjtFQW1KYTs7QUFPcEI7RUFDSTtFQUNBLE9BOUpNO0VBK0pOO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQSxPQTFLTTtFQTJLTjtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBSUo7RUFDSTtFQUNBOzs7QUFLSjtFQUNJOztBQUdKO0VBQ0k7RWxCNXBCTjtFQUNBO0VBQ0E7RWtCNHBCTTtFQUNBOztBQUVBO0VBQ0k7O0FBSVI7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7O0FBS0o7RUFDSTs7QUFFSjtFQUNJOzs7QUFJUjtFQUNJOztBQUVBO0VBQ0kiLCJmaWxlIjoiaW5kZXguY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJ1dGYtOFwiO1xyXG4vKiDln7rnoYDmqKHlnZcgKi9cclxuQGltcG9ydCBcImNvcmUvX3ZhcmlhYmxlXCI7XHJcbkBpbXBvcnQgXCJjb3JlL19iYXNlXCI7XHJcbkBpbXBvcnQgXCJjb3JlL19taXhpblwiO1xyXG5AaW1wb3J0IFwiY29yZS9fYW5pbWF0aW9uXCI7XHJcblxyXG4vKiDpm6rnoqcgKi9cclxuQGltcG9ydCBcImluZGV4X3Nwcml0ZVwiO1xyXG5cclxuLyog6aG16Z2i5qih5Z2XICovXHJcbkBpbXBvcnQgXCJwYWdlL2dsb2JhbFwiO1xyXG5AaW1wb3J0IFwicGFnZS9pbmRleFwiO1xyXG5AaW1wb3J0IFwicGFnZS92aWV3XCI7XHJcblxyXG4vKiDnu4Tku7YgKi9cclxuIEBpbXBvcnQgXCJtb2QvaW5mb1wiO1xyXG4gQGltcG9ydCBcIm1vZC9wYWxldHRlXCI7XHJcbiBAaW1wb3J0IFwibW9kL3NpZ25cIjtcclxuIEBpbXBvcnQgXCJtb2QvbGNobFwiO1xyXG4gQGltcG9ydCBcIm1vZC9yYW5rXCI7XHJcbiBAaW1wb3J0IFwibW9kL3BvcHVwXCI7IiwiQGNoYXJzZXQgXCJ1dGYtOFwiO1xyXG5cclxuLyog6buY6K6k5paH5a2X6aKc6ImyICovXHJcbiRiYXNlQ29sb3I6IzAwMDtcclxuJGJhc2VCZzojZmZmO1xyXG4kYmFzZUVtOiNiMjEwMDA7XHJcbi8qIGlucHV0XFx0ZXh0YXJlYSAqL1xyXG4kaW5wdXRQbGFjZWhvbGRlckNvbG9yOiMwMDA7XHJcbiRpbnB1dENvbG9yOiMwMDA7XHJcbiRpbnB1dEJnOiNmZmY7XHJcblxyXG4vKiDpu5jorqTmloflrZflvLrosIPnsbsgKi9cclxuLmVte1xyXG4gICAgY29sb3I6ICRiYXNlRW0gIWltcG9ydGFudDtcclxufVxyXG4iLCJAY2hhcnNldCBcInV0Zi04XCI7XHJcbi8qIENTUyBEb2N1bWVudFxyXG5EYXRlOlx0XHQyMDEzLzEyLzIwXHJcbkF1dGhvcjpcdFx05bCP6IqzXHJcblVwZGF0ZTogMjAyNC8xLzMwXHJcbkF1dGhvcjpcdFx05oGS5rSLXHJcbiovXHJcblxyXG4vKiBDU1MgcmVzZXQgKi9cclxuLyogMeOAgUJveCBzaXppbmc6IOWcqEhUTUzmlofmoaPnmoTlvIDlp4vlpITvvIzlsIZib3gtc2l6aW5n5bGe5oCn6K6+572u5Li6Ym9yZGVyLWJveO+8jOi/meagt+WFg+e0oOeahOWuveW6puWSjOmrmOW6puWwhuWMheaLrOWGhei+uei3neWSjOi+ueahhueahOWkp+Wwj++8jOiAjOS4jeS8muW9seWTjeWuveW6puWSjOmrmOW6puOAgiAqL1xyXG5odG1sIHtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbn1cclxuKiwgKjpiZWZvcmUsICo6YWZ0ZXIge1xyXG4gICAgYm94LXNpemluZzogaW5oZXJpdDtcclxufVxyXG5cclxuLyogMuOAgU1hcmdpbiBhbmQgcGFkZGluZzog6YeN572u5YWD57Sg55qE5aSW6L656Led5ZKM5YaF6L656Led77yM5Lul5L6/5Zyo5omA5pyJ5rWP6KeI5Zmo5Lit6YO95pyJ5LiA6Ie055qE5Yid5aeL5YC844CCICovXHJcbmh0bWwsIGJvZHksIGRpdiwgc3BhbiwgYXBwbGV0LCBvYmplY3QsIGlmcmFtZSxcclxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCwgYmxvY2txdW90ZSwgcHJlLFxyXG5hLCBhYmJyLCBhY3JvbnltLCBhZGRyZXNzLCBiaWcsIGNpdGUsIGNvZGUsXHJcbmRlbCwgZGZuLCBlbSwgaW1nLCBpbnMsIGtiZCwgcSwgcywgc2FtcCxcclxuc21hbGwsIHN0cmlrZSwgc3Ryb25nLCBzdWIsIHN1cCwgdHQsIHZhcixcclxuYiwgdSwgaSwgY2VudGVyLFxyXG5kbCwgZHQsIGRkLCBvbCwgdWwsIGxpLFxyXG5maWVsZHNldCwgZm9ybSwgbGFiZWwsIGxlZ2VuZCxcclxudGFibGUsIGNhcHRpb24sIHRib2R5LCB0Zm9vdCwgdGhlYWQsIHRyLCB0aCwgdGQge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIGZvbnQtc2l6ZTogMTAwJTtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbn1cclxuXHJcbi8qIDPjgIHpk77mjqXnmoTlpJbop4I6IOmHjee9rumTvuaOpeeahOWkluingu+8jOS7peehruS/neWug+S7rOayoeacieS4i+WIkue6v++8jOW5tuWcqOm8oOagh+aCrOWBnOaXtuabtOaUueWFtuagt+W8j+OAgiAqL1xyXG5hIHtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5hOmhvdmVyIHtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG59XHJcblxyXG5cclxuLyogNOOAgem7mOiupOWtl+S9k+WSjOminOiJsjog6YeN572u5omA5Lul5YWD57Sg55qE6buY6K6k5a2X5L2T5ZKM6aKc6Imy77yM5Lul56Gu5L+d5Zyo5LiN5ZCM5rWP6KeI5Zmo5Lit6YO95YW35pyJ55u45ZCM55qE5aSW6KeC44CCICovXHJcbmJvZHkge1xyXG4gICAgY29sb3I6ICRiYXNlQ29sb3I7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFzZUJnO1xyXG59XHJcblxyXG5cclxuaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xyXG4gICAgLyogV2ViS2l0IGJyb3dzZXJzIOmAgumFjeiwt+atjCAqL1xyXG4gICAgY29sb3I6ICRpbnB1dFBsYWNlaG9sZGVyQ29sb3I7XHJcbn1cclxuaW5wdXQ6LW1vei1wbGFjZWhvbGRlciB7XHJcbiAgICAvKiBNb3ppbGxhIEZpcmVmb3ggNCB0byAxOCDpgILphY3ngavni5AgKi9cclxuICAgIGNvbG9yOiAkaW5wdXRQbGFjZWhvbGRlckNvbG9yO1xyXG59XHJcbmlucHV0OjotbW96LXBsYWNlaG9sZGVyIHtcclxuICAgIC8qIE1vemlsbGEgRmlyZWZveCAxOSsg6YCC6YWN54Gr54uQICovXHJcbiAgICBjb2xvcjogJGlucHV0UGxhY2Vob2xkZXJDb2xvcjtcclxufVxyXG5pbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xyXG4gICAgLyogSW50ZXJuZXQgRXhwbG9yZXIgMTArICDpgILphY1pZSovXHJcbiAgICBjb2xvcjogJGlucHV0UGxhY2Vob2xkZXJDb2xvcjtcclxufVxyXG5cclxudGV4dGFyZWE6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xyXG4gICAgLyogV2ViS2l0IGJyb3dzZXJzIOmAgumFjeiwt+atjCAqL1xyXG4gICAgY29sb3I6ICRpbnB1dFBsYWNlaG9sZGVyQ29sb3I7XHJcbn1cclxudGV4dGFyZWE6LW1vei1wbGFjZWhvbGRlciB7XHJcbiAgICAvKiBNb3ppbGxhIEZpcmVmb3ggNCB0byAxOCDpgILphY3ngavni5AgKi9cclxuICAgIGNvbG9yOiAkaW5wdXRQbGFjZWhvbGRlckNvbG9yO1xyXG59XHJcbnRleHRhcmVhOjotbW96LXBsYWNlaG9sZGVyIHtcclxuICAgIC8qIE1vemlsbGEgRmlyZWZveCAxOSsg6YCC6YWN54Gr54uQICovXHJcbiAgICBjb2xvcjogJGlucHV0UGxhY2Vob2xkZXJDb2xvcjtcclxufVxyXG50ZXh0YXJlYTotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xyXG4gICAgLyogSW50ZXJuZXQgRXhwbG9yZXIgMTArICDpgILphY1pZSovXHJcbiAgICBjb2xvcjogJGlucHV0UGxhY2Vob2xkZXJDb2xvcjtcclxufVxyXG5pbnB1dCxcclxudGV4dGFyZWEge1xyXG4gICAgYXBwZWFyYW5jZTogbm9uZTsgLyog56e76Zmk6buY6K6k55qE57O757uf5qC35byPICovXHJcbiAgICBib3JkZXI6IG5vbmU7IC8qIOenu+mZpOi+ueahhiAqL1xyXG4gICAgcGFkZGluZzogMDsgLyog56e76Zmk5YaF6L656LedICovXHJcbiAgICBtYXJnaW46IDA7IC8qIOenu+mZpOWklui+uei3nSAqL1xyXG4gICAgYmFja2dyb3VuZDogbm9uZTsgLyog56e76Zmk6IOM5pmvICovXHJcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDsgLyog57un5om/54i25YWD57Sg55qE5a2X5L2TICovXHJcbiAgICBmb250LXNpemU6IGluaGVyaXQ7IC8qIOe7p+aJv+eItuWFg+e0oOeahOWtl+S9k+Wkp+WwjyAqL1xyXG4gICAgY29sb3I6IGluaGVyaXQ7IC8qIOe7p+aJv+eItuWFg+e0oOeahOWtl+S9k+minOiJsiAqL1xyXG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDsgLyog6YeN572u6KGM6auY5Li66buY6K6k5YC8ICovXHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8qIOmHjee9ruWeguebtOWvuem9kOaWueW8j+S4uuWfuue6vyAqL1xyXG59XHJcblxyXG5pbnB1dDpmb2N1cyxcclxudGV4dGFyZWE6Zm9jdXMge1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxufVxyXG50ZXh0YXJlYSB7XHJcbiAgICByZXNpemU6IG5vbmU7IC8qIOemgeeUqOaWh+acrOWfn+eahOWwuuWvuOiwg+aVtCAqL1xyXG59XHJcbiIsIi8qQG1peGluKi9cclxuLyog5riF6Zmk5rWu5YqoICovXHJcbkBtaXhpbiBjbGVhcmZpeCB7XHJcbiAgKnpvb206IDE7XHJcbiAgJjphZnRlciB7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgZGlzcGxheTogdGFibGU7XHJcbiAgICBjbGVhcjogYm90aDtcclxuICB9XHJcbn1cclxuLyogYmZjICovXHJcbkBtaXhpbiBiZmMge1xyXG4gICY6YmVmb3JlLFxyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIGRpc3BsYXk6IHRhYmxlO1xyXG4gIH1cclxufVxyXG5cclxuLyog55yB55Wl54K554K577yM6ZyA5pCt6YWNaW5saW5lLWJsb2Nr5oiW6ICFYmxvY2vlrprlrr0gKi9cclxuQG1peGluIGVsbGlwc2lzIHtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcclxuICAqdmVydGljYWwtYWxpZ246IGF1dG87XHJcbn1cclxuXHJcbi8qIGlubGluZS1ibG9jayBpZTc45YW85a65ICovXHJcbkBtaXhpbiBpbmxpbmUtYmxvY2t7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICpkaXNwbGF5OiBpbmxpbmU7XHJcbiAgKnpvb206MTtcclxufVxyXG5cclxuLyog5Y+q5pyJ5bGV56S655qE5oyJ6ZKuICovXHJcbkBtaXhpbiBvbmx5QnRuIHtcclxuICAgIGN1cnNvcjogZGVmYXVsdDtcclxuICAgICY6aG92ZXJ7XHJcbiAgICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDEpO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiDlj6/ku6Xngrnlh7vnmoTmjInpkq4gKi9cclxuQG1peGluIG9ubHlCdG5DbGljayB7XHJcbiAgICBjdXJzb3I6cG9pbnRlcjtcclxuICAgICY6aG92ZXJ7XHJcbiAgICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDEuMik7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIOaWh+Wtl2Nzc+W/q+aNtyAqL1xyXG5AbWl4aW4gYmZvbnQoJHNpemUsICRsaW5lSGVpZ2h0LCRjb2xvcikge1xyXG4gIGZvbnQ6IDcwMCBweCgkc2l6ZSkvcHgoJGxpbmVIZWlnaHQpIFwibWljcm9zb2Z0IHlhaGVpXCI7XHJcbiAgY29sb3I6JGNvbG9yO1xyXG59XHJcbkBtaXhpbiBsZm9udCgkc2l6ZSwgJGxpbmVIZWlnaHQsJGNvbG9yKSB7XHJcbiAgZm9udDogNTAwIHB4KCRzaXplKS9weCgkbGluZUhlaWdodCkgXCJtaWNyb3NvZnQgeWFoZWlcIjtcclxuICBjb2xvcjokY29sb3I7XHJcbn1cclxuXHJcblxyXG5cclxuQG1peGluIGJvcmRlclJhZGl1cygkeCkge1xyXG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogJHg7XHJcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAkeDtcclxuICAtby1ib3JkZXItcmFkaXVzOiAkeDtcclxuICAtbXMtYm9yZGVyLXJhZGl1czogJHg7XHJcbiAgYm9yZGVyLXJhZGl1czogJHg7XHJcbn1cclxuXHJcbkBtaXhpbiB0cmlhbmdsZSgkdywkY29sb3IxKSB7XHJcbiAgd2lkdGg6IDA7XHJcbiAgaGVpZ2h0OiAwO1xyXG4gIGJvcmRlcjogJHcgc29saWQgJGNvbG9yMTtcclxufVxyXG5cclxuQG1peGluIGJvcmRlclJhZGl1cy1sdCgkeCkge1xyXG4gIC13ZWJraXQtYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHg7XHJcbiAgLW1vei1ib3JkZXItcmFkaXVzLXRvcGxlZnQ6ICR4O1xyXG4gIC1vLWJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICR4O1xyXG4gIC1tcy1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkeDtcclxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkeDtcclxufVxyXG5cclxuQG1peGluIGJvcmRlclJhZGl1cy1ydCgkeCkge1xyXG4gIC13ZWJraXQtYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICR4O1xyXG4gIC1tb3otYm9yZGVyLXJhZGl1cy10b3ByaWdodDogJHg7XHJcbiAgLW8tYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICR4O1xyXG4gIC1tcy1ib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHg7XHJcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICR4O1xyXG59XHJcblxyXG5AbWl4aW4gYm9yZGVyUmFkaXVzLWxiKCR4KSB7XHJcbiAgLXdlYmtpdC1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkeDtcclxuICAtbW96LWJvcmRlci1yYWRpdXMtYm90dG9tbGVmdDogJHg7XHJcbiAgLW8tYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHg7XHJcbiAgLW1zLWJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICR4O1xyXG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICR4O1xyXG59XHJcblxyXG5AbWl4aW4gYm9yZGVyUmFkaXVzLXJiKCR4KSB7XHJcbiAgLXdlYmtpdC1ib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHg7XHJcbiAgLW1vei1ib3JkZXItcmFkaXVzLWJvdHRvbXJpZ2h0OiAkeDtcclxuICAtby1ib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHg7XHJcbiAgLW1zLWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkeDtcclxuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHg7XHJcbn1cclxuXHJcbkBtaXhpbiB0cmlhbmdsZXQoJHd0LCR3bCwkd3IsJGNvbG9yKSB7XHJcbiAgd2lkdGg6IDA7XHJcbiAgaGVpZ2h0OiAwO1xyXG4gIGJvcmRlci10b3A6ICR3dCAkY29sb3Igc29saWQ7XHJcbiAgYm9yZGVyLWxlZnQ6ICR3bCB0cmFuc3BhcmVudCBkYXNoZWQ7XHJcbiAgYm9yZGVyLXJpZ2h0OiAkd3IgdHJhbnNwYXJlbnQgZGFzaGVkO1xyXG59XHJcblxyXG5AbWl4aW4gdHJpYW5nbGViKCR3Yiwkd2wsJHdyLCRjb2xvcikge1xyXG4gIHdpZHRoOiAwO1xyXG4gIGhlaWdodDogMDtcclxuICBib3JkZXItYm90dG9tOiAkd2IgJGNvbG9yIHNvbGlkO1xyXG4gIGJvcmRlci1sZWZ0OiAkd2wgdHJhbnNwYXJlbnQgZGFzaGVkO1xyXG4gIGJvcmRlci1yaWdodDogJHdyIHRyYW5zcGFyZW50IGRhc2hlZDtcclxufVxyXG5cclxuQG1peGluIHRyaWFuZ2xlbCgkd2wsJHd0LCR3YiwkY29sb3IpIHtcclxuICB3aWR0aDogMDtcclxuICBoZWlnaHQ6IDA7XHJcbiAgYm9yZGVyLWxlZnQ6ICR3bCAkY29sb3Igc29saWQ7XHJcbiAgYm9yZGVyLXRvcDogJHd0IHRyYW5zcGFyZW50IGRhc2hlZDtcclxuICBib3JkZXItYm90dG9tOiAkd2IgdHJhbnNwYXJlbnQgZGFzaGVkO1xyXG59XHJcblxyXG5AbWl4aW4gdHJpYW5nbGVyKCR3ciwkd3QsJHdiLCRjb2xvcikge1xyXG4gIHdpZHRoOiAwO1xyXG4gIGhlaWdodDogMDtcclxuICBib3JkZXItYm90dG9tOiAkd2IgdHJhbnNwYXJlbnQgZGFzaGVkO1xyXG4gIGJvcmRlci1yaWdodDogJHdyICRjb2xvciBzb2xpZDtcclxuICBib3JkZXItdG9wOiAkd3QgdHJhbnNwYXJlbnQgZGFzaGVkO1xyXG59XHJcblxyXG4vKiDmuJDlj5ggKi9cclxuQG1peGluIGJ0bl90eHRfZ3JhZGllbnQoJHRvcENvbG9yLCRib3R0b21Db2xvcil7XHJcbiAgICBzcGFue1xyXG4gICAgICBjb2xvcjogJHRvcENvbG9yO1xyXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgMCAwLCAwIGJvdHRvbSwgZnJvbSgkdG9wQ29sb3IpLCB0bygkYm90dG9tQ29sb3IpKTtcclxuICAgICAgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6dGV4dDtcclxuICAgICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6dHJhbnNwYXJlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG4vKiDmj4/ovrkgKi9cclxuQG1peGluIHN0cm9rZV9iKCRzaXplLCAkbGluZUhlaWdodCwgJGNvbG9yLCRzdHJva2UsJHN0cm9rZUNvbG9yKSB7XHJcblx0QGluY2x1ZGUgYmZvbnQoJHNpemUsICRsaW5lSGVpZ2h0LCAkY29sb3IpO1xyXG5cdHotaW5kZXg6IDA7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdCY6OmJlZm9yZSB7XHJcblx0XHRjb250ZW50OiBhdHRyKGRhdGEtdGV4dCk7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHQtd2Via2l0LXRleHQtc3Ryb2tlOiBweCgkc3Ryb2tlKSAkc3Ryb2tlQ29sb3I7XHJcblx0XHR6LWluZGV4OiAtMTtcclxuXHR9XHJcbn1cclxuQG1peGluIHN0cm9rZV9sKCRzaXplLCAkbGluZUhlaWdodCwgJGNvbG9yLCRzdHJva2UsJHN0cm9rZUNvbG9yKSB7XHJcblx0QGluY2x1ZGUgbGZvbnQoJHNpemUsICRsaW5lSGVpZ2h0LCAkY29sb3IpO1xyXG5cdHotaW5kZXg6IDA7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdCY6OmJlZm9yZSB7XHJcblx0XHRjb250ZW50OiBhdHRyKGRhdGEtdGV4dCk7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdGxlZnQ6IDA7XHJcblx0XHQtd2Via2l0LXRleHQtc3Ryb2tlOiBweCgkc3Ryb2tlKSAkc3Ryb2tlQ29sb3I7XHJcblx0XHR6LWluZGV4OiAtMTtcclxuXHR9XHJcbn1cclxuXHJcbi8qIOWQhOexu+WxheS4rSAqL1xyXG5AbWl4aW4gY2VudGVyMSB7XHJcbiAgbWFyZ2luOiAwIGF1dG87XHJcbn1cclxuXHJcbkBtaXhpbiBjZW50ZXIyIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgbGVmdDogNTAlO1xyXG4gIHRvcDogNTAlO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG59XHJcblxyXG5AbWl4aW4gY2VudGVyMlgge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBsZWZ0OiA1MCU7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG59XHJcblxyXG5AbWl4aW4gY2VudGVyMlkge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDUwJTtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbn1cclxuXHJcbkBmdW5jdGlvbiBweCgkc2l6ZSl7XHJcbiAgQHJldHVybiAkc2l6ZSArIHB4XHJcbn1cclxuXHJcblxyXG5cclxuIiwiLyog5Yqo5pWIICovXHJcblxyXG4vKiDmuJDlj5jmt6HlhaXmlYjmnpwgKi9cclxuQGtleWZyYW1lcyBmYWRlLWluIHtcclxuICAgIDAlIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG4gICAgMTAwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxufVxyXG5cclxuLyog5riQ5Y+Y5reh5Ye65pWI5p6cICovXHJcbkBrZXlmcmFtZXMgZmFkZS1vdXQge1xyXG4gICAgMCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbiAgICAxMDAlIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiDnvKnmlL7mlYjmnpwgKi9cclxuQGtleWZyYW1lcyBzY2FsZSB7XHJcbiAgICAwJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgIH1cclxuICAgIDEwMCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS41KTtcclxuICAgIH1cclxufVxyXG5cclxuLyog5peL6L2s5pWI5p6cICovXHJcbkBrZXlmcmFtZXMgc3BpbiB7XHJcbiAgICAwJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcbiAgICB9XHJcbiAgICAxMDAlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiDlvLnot7PmlYjmnpwgKi9cclxuQGtleWZyYW1lcyBib3VuY2Uge1xyXG4gICAgMCUsXHJcbiAgICAyMCUsXHJcbiAgICA1MCUsXHJcbiAgICA4MCUsXHJcbiAgICAxMDAlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICB9XHJcbiAgICA0MCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzBweCk7XHJcbiAgICB9XHJcbiAgICA2MCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTVweCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIOe/u+eJjOWKqOeUuyAqL1xyXG5Aa2V5ZnJhbWVzIGRyYXctaW4ge1xyXG4gICAgMCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlWSgwKTtcclxuICAgIH1cclxuICAgIDEwMCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlWSgtOTBkZWcpO1xyXG4gICAgfVxyXG59XHJcbkBrZXlmcmFtZXMgZHJhdy1vdXQge1xyXG4gICAgMCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlWSgtOTBkZWcpO1xyXG4gICAgfVxyXG4gICAgMTAwJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVZKDApO1xyXG4gICAgfVxyXG59XHJcbiIsIi8vIFNDU1MgdmFyaWFibGVzIGFyZSBpbmZvcm1hdGlvbiBhYm91dCBpY29uJ3MgY29tcGlsZWQgc3RhdGUsIHN0b3JlZCB1bmRlciBpdHMgb3JpZ2luYWwgZmlsZSBuYW1lXG4vL1xuLy8gLmljb24taG9tZSB7XG4vLyAgIHdpZHRoOiAkaWNvbi1ob21lLXdpZHRoO1xuLy8gfVxuLy9cbi8vIFRoZSBsYXJnZSBhcnJheS1saWtlIHZhcmlhYmxlcyBjb250YWluIGFsbCBpbmZvcm1hdGlvbiBhYm91dCBhIHNpbmdsZSBpY29uXG4vLyAkaWNvbi1ob21lOiB4IHkgb2Zmc2V0X3ggb2Zmc2V0X3kgd2lkdGggaGVpZ2h0IHRvdGFsX3dpZHRoIHRvdGFsX2hlaWdodCBpbWFnZV9wYXRoO1xuLy9cbi8vIEF0IHRoZSBib3R0b20gb2YgdGhpcyBzZWN0aW9uLCB3ZSBwcm92aWRlIGluZm9ybWF0aW9uIGFib3V0IHRoZSBzcHJpdGVzaGVldCBpdHNlbGZcbi8vICRzcHJpdGVzaGVldDogd2lkdGggaGVpZ2h0IGltYWdlICRzcHJpdGVzaGVldC1zcHJpdGVzO1xuICAgICAgICAgICAgQG1peGluIGJveF9jeiB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBweCgwKSBweCgwKTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBweCg0NjcpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCg0NzcpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBtaXhpbiBib3hfY3pfaW5mbyB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBweCgtNzcyKSBweCgtMTAxKTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBweCgyNTIpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCg0Mik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQG1peGluIGJveF9pbmZvIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KC00NzcpIHB4KDApO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDEyMDApO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCg5MSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQG1peGluIGJveF9wcml6ZSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBweCgtNDc3KSBweCgtMTAxKTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBweCgyODUpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCgxNDUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgJXNwcml0ZV9ib3gge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3Nwcml0ZV9ib3gucG5nKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBweCgxNjc3KSBweCg0NzcpO1xyXG4gICAgICAgIH1cclxuXG5cbiIsIi8vIFNDU1MgdmFyaWFibGVzIGFyZSBpbmZvcm1hdGlvbiBhYm91dCBpY29uJ3MgY29tcGlsZWQgc3RhdGUsIHN0b3JlZCB1bmRlciBpdHMgb3JpZ2luYWwgZmlsZSBuYW1lXG4vL1xuLy8gLmljb24taG9tZSB7XG4vLyAgIHdpZHRoOiAkaWNvbi1ob21lLXdpZHRoO1xuLy8gfVxuLy9cbi8vIFRoZSBsYXJnZSBhcnJheS1saWtlIHZhcmlhYmxlcyBjb250YWluIGFsbCBpbmZvcm1hdGlvbiBhYm91dCBhIHNpbmdsZSBpY29uXG4vLyAkaWNvbi1ob21lOiB4IHkgb2Zmc2V0X3ggb2Zmc2V0X3kgd2lkdGggaGVpZ2h0IHRvdGFsX3dpZHRoIHRvdGFsX2hlaWdodCBpbWFnZV9wYXRoO1xuLy9cbi8vIEF0IHRoZSBib3R0b20gb2YgdGhpcyBzZWN0aW9uLCB3ZSBwcm92aWRlIGluZm9ybWF0aW9uIGFib3V0IHRoZSBzcHJpdGVzaGVldCBpdHNlbGZcbi8vICRzcHJpdGVzaGVldDogd2lkdGggaGVpZ2h0IGltYWdlICRzcHJpdGVzaGVldC1zcHJpdGVzO1xuICAgICAgICAgICAgQG1peGluIGJ0bl9iaW5kIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KDApIHB4KC0yMTcpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDE3Mik7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDMyKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAbWl4aW4gYnRuX2N6IHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KDApIHB4KDApO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDI0Mik7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDcyKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAbWl4aW4gYnRuX2pvaW4ge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoMCkgcHgoLTgyKTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBweCgyNDIpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCg3Mik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQG1peGluIGJ0bl9wcml6ZV8wIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KDApIHB4KC0xNjQpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDE3MSk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDQzKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAbWl4aW4gYnRuX3ByaXplXzEge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoLTI1MikgcHgoMCk7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHgoMTcxKTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogcHgoNDMpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBtaXhpbiBidG5fcHJpemVfMiB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBweCgtMjUyKSBweCgtNTMpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDE3MSk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDQzKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICVzcHJpdGVfYnRuIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9zcHJpdGVfYnRuLnBuZyk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogcHgoNDIzKSBweCgyNDkpO1xyXG4gICAgICAgIH1cclxuXG5cbiIsIi8vIFNDU1MgdmFyaWFibGVzIGFyZSBpbmZvcm1hdGlvbiBhYm91dCBpY29uJ3MgY29tcGlsZWQgc3RhdGUsIHN0b3JlZCB1bmRlciBpdHMgb3JpZ2luYWwgZmlsZSBuYW1lXG4vL1xuLy8gLmljb24taG9tZSB7XG4vLyAgIHdpZHRoOiAkaWNvbi1ob21lLXdpZHRoO1xuLy8gfVxuLy9cbi8vIFRoZSBsYXJnZSBhcnJheS1saWtlIHZhcmlhYmxlcyBjb250YWluIGFsbCBpbmZvcm1hdGlvbiBhYm91dCBhIHNpbmdsZSBpY29uXG4vLyAkaWNvbi1ob21lOiB4IHkgb2Zmc2V0X3ggb2Zmc2V0X3kgd2lkdGggaGVpZ2h0IHRvdGFsX3dpZHRoIHRvdGFsX2hlaWdodCBpbWFnZV9wYXRoO1xuLy9cbi8vIEF0IHRoZSBib3R0b20gb2YgdGhpcyBzZWN0aW9uLCB3ZSBwcm92aWRlIGluZm9ybWF0aW9uIGFib3V0IHRoZSBzcHJpdGVzaGVldCBpdHNlbGZcbi8vICRzcHJpdGVzaGVldDogd2lkdGggaGVpZ2h0IGltYWdlICRzcHJpdGVzaGVldC1zcHJpdGVzO1xuICAgICAgICAgICAgQG1peGluIGRpYWxvZ19idG4ge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoMCkgcHgoMCk7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHgoMTQ0KTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogcHgoNDYpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBtaXhpbiBkaWFsb2dfYnRuX2NvcHkge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoMCkgcHgoLTExMik7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHgoNTYpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCgzMik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQG1peGluIGRpYWxvZ19idG5fZW0ge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoMCkgcHgoLTU2KTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBweCgxNDQpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCg0Nik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQG1peGluIGRpYWxvZ19jbG9zZSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBweCgtNjYpIHB4KC0xMTIpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDIxKTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogcHgoMjEpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgJXNwcml0ZV9kaWFsb2cge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3Nwcml0ZV9kaWFsb2cucG5nKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBweCgxNDQpIHB4KDE0NCk7XHJcbiAgICAgICAgfVxyXG5cblxuIiwiLy8gU0NTUyB2YXJpYWJsZXMgYXJlIGluZm9ybWF0aW9uIGFib3V0IGljb24ncyBjb21waWxlZCBzdGF0ZSwgc3RvcmVkIHVuZGVyIGl0cyBvcmlnaW5hbCBmaWxlIG5hbWVcbi8vXG4vLyAuaWNvbi1ob21lIHtcbi8vICAgd2lkdGg6ICRpY29uLWhvbWUtd2lkdGg7XG4vLyB9XG4vL1xuLy8gVGhlIGxhcmdlIGFycmF5LWxpa2UgdmFyaWFibGVzIGNvbnRhaW4gYWxsIGluZm9ybWF0aW9uIGFib3V0IGEgc2luZ2xlIGljb25cbi8vICRpY29uLWhvbWU6IHggeSBvZmZzZXRfeCBvZmZzZXRfeSB3aWR0aCBoZWlnaHQgdG90YWxfd2lkdGggdG90YWxfaGVpZ2h0IGltYWdlX3BhdGg7XG4vL1xuLy8gQXQgdGhlIGJvdHRvbSBvZiB0aGlzIHNlY3Rpb24sIHdlIHByb3ZpZGUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHNwcml0ZXNoZWV0IGl0c2VsZlxuLy8gJHNwcml0ZXNoZWV0OiB3aWR0aCBoZWlnaHQgaW1hZ2UgJHNwcml0ZXNoZWV0LXNwcml0ZXM7XG4gICAgICAgICAgICBAbWl4aW4gaGRfbGlua19idG4ge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoLTIzMSkgcHgoLTM5KTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBweCgxMjgpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCgzNik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQG1peGluIGhkX2xpbmtfYnRuX2gge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoLTM2OSkgcHgoLTM5KTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBweCgxMjgpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCgzNik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQG1peGluIGhkX2xvZ28ge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoMCkgcHgoMCk7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHgoMjIxKTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogcHgoMTYyKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAbWl4aW4gaGRfdGltZSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBweCgtMjMxKSBweCgwKTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBweCgzODcpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCgyOSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAlc3ByaXRlX2hlYWQge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3Nwcml0ZV9oZWFkLnBuZyk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogcHgoNjE4KSBweCgxNjIpO1xyXG4gICAgICAgIH1cclxuXG5cbiIsIi8vIFNDU1MgdmFyaWFibGVzIGFyZSBpbmZvcm1hdGlvbiBhYm91dCBpY29uJ3MgY29tcGlsZWQgc3RhdGUsIHN0b3JlZCB1bmRlciBpdHMgb3JpZ2luYWwgZmlsZSBuYW1lXG4vL1xuLy8gLmljb24taG9tZSB7XG4vLyAgIHdpZHRoOiAkaWNvbi1ob21lLXdpZHRoO1xuLy8gfVxuLy9cbi8vIFRoZSBsYXJnZSBhcnJheS1saWtlIHZhcmlhYmxlcyBjb250YWluIGFsbCBpbmZvcm1hdGlvbiBhYm91dCBhIHNpbmdsZSBpY29uXG4vLyAkaWNvbi1ob21lOiB4IHkgb2Zmc2V0X3ggb2Zmc2V0X3kgd2lkdGggaGVpZ2h0IHRvdGFsX3dpZHRoIHRvdGFsX2hlaWdodCBpbWFnZV9wYXRoO1xuLy9cbi8vIEF0IHRoZSBib3R0b20gb2YgdGhpcyBzZWN0aW9uLCB3ZSBwcm92aWRlIGluZm9ybWF0aW9uIGFib3V0IHRoZSBzcHJpdGVzaGVldCBpdHNlbGZcbi8vICRzcHJpdGVzaGVldDogd2lkdGggaGVpZ2h0IGltYWdlICRzcHJpdGVzaGVldC1zcHJpdGVzO1xuICAgICAgICAgICAgQG1peGluIHBhbGV0dGVfaW1nIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KDApIHB4KDApO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDE1Mik7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDkyKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAbWl4aW4gcGFsZXR0ZV9pdGVtIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KC0xNjIpIHB4KDApO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDE3OSk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDM3KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAbWl4aW4gcGFsZXR0ZV9pdGVtX2N1ciB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBweCgtMTYyKSBweCgtNDcpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDE3OSk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDM3KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICVzcHJpdGVfcGFsZXR0ZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvc3ByaXRlX3BhbGV0dGUucG5nKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBweCgzNDEpIHB4KDkyKTtcclxuICAgICAgICB9XHJcblxuXG4iLCIvLyBTQ1NTIHZhcmlhYmxlcyBhcmUgaW5mb3JtYXRpb24gYWJvdXQgaWNvbidzIGNvbXBpbGVkIHN0YXRlLCBzdG9yZWQgdW5kZXIgaXRzIG9yaWdpbmFsIGZpbGUgbmFtZVxuLy9cbi8vIC5pY29uLWhvbWUge1xuLy8gICB3aWR0aDogJGljb24taG9tZS13aWR0aDtcbi8vIH1cbi8vXG4vLyBUaGUgbGFyZ2UgYXJyYXktbGlrZSB2YXJpYWJsZXMgY29udGFpbiBhbGwgaW5mb3JtYXRpb24gYWJvdXQgYSBzaW5nbGUgaWNvblxuLy8gJGljb24taG9tZTogeCB5IG9mZnNldF94IG9mZnNldF95IHdpZHRoIGhlaWdodCB0b3RhbF93aWR0aCB0b3RhbF9oZWlnaHQgaW1hZ2VfcGF0aDtcbi8vXG4vLyBBdCB0aGUgYm90dG9tIG9mIHRoaXMgc2VjdGlvbiwgd2UgcHJvdmlkZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgc3ByaXRlc2hlZXQgaXRzZWxmXG4vLyAkc3ByaXRlc2hlZXQ6IHdpZHRoIGhlaWdodCBpbWFnZSAkc3ByaXRlc2hlZXQtc3ByaXRlcztcbiAgICAgICAgICAgIEBtaXhpbiByYW5rLW51bSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBweCgwKSBweCgtNzQ5KTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBweCgzOCk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDM5KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAbWl4aW4gcmFuay1udW0xIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KC00OCkgcHgoLTc0OSk7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHgoMzgpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCgzOSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQG1peGluIHJhbmstbnVtMiB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBweCgtOTYpIHB4KC03NDkpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDM4KTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogcHgoMzkpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBtaXhpbiByYW5rLW51bTMge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoLTE0NCkgcHgoLTc0OSk7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHgoMzgpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCgzOSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQG1peGluIHJhbmtfYmcge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoMCkgcHgoMCk7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHgoNDkyKTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogcHgoNjkyKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAbWl4aW4gcmFua19pdGVtIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KC01MDIpIHB4KC02MzIpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDQ3Nik7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDU2KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAbWl4aW4gcmFua19wcml6ZV8xIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KC01MDIpIHB4KDApO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDY4OCk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDE2NSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQG1peGluIHJhbmtfcHJpemVfMV9kZWMge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoLTk4OCkgcHgoLTYzMik7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHgoNTApO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCg1Nik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQG1peGluIHJhbmtfcHJpemVfMiB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBweCgtNTAyKSBweCgtMTc1KTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBweCg2ODgpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCgxNjUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBtaXhpbiByYW5rX3ByaXplXzJfZGVjIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KC0xMDQ4KSBweCgtNjMyKTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBweCg1MCk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDU2KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAbWl4aW4gcmFua19wcml6ZV8zIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KC01MDIpIHB4KC0zNTApO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDY4OCk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDE2NSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQG1peGluIHJhbmtfcHJpemVfM19kZWMge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoLTExMDgpIHB4KC02MzIpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDUwKTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogcHgoNTYpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBtaXhpbiByYW5rX3J1bGUge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoLTUwMikgcHgoLTUyNSk7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHgoNjc2KTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogcHgoOTcpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBtaXhpbiByYW5rX3RoIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KDApIHB4KC03MDIpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDQ2OSk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDM3KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICVzcHJpdGVfcmFuayB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvc3ByaXRlX3JhbmsucG5nKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBweCgxMTkwKSBweCg3ODgpO1xyXG4gICAgICAgIH1cclxuXG5cbiIsIi8vIFNDU1MgdmFyaWFibGVzIGFyZSBpbmZvcm1hdGlvbiBhYm91dCBpY29uJ3MgY29tcGlsZWQgc3RhdGUsIHN0b3JlZCB1bmRlciBpdHMgb3JpZ2luYWwgZmlsZSBuYW1lXG4vL1xuLy8gLmljb24taG9tZSB7XG4vLyAgIHdpZHRoOiAkaWNvbi1ob21lLXdpZHRoO1xuLy8gfVxuLy9cbi8vIFRoZSBsYXJnZSBhcnJheS1saWtlIHZhcmlhYmxlcyBjb250YWluIGFsbCBpbmZvcm1hdGlvbiBhYm91dCBhIHNpbmdsZSBpY29uXG4vLyAkaWNvbi1ob21lOiB4IHkgb2Zmc2V0X3ggb2Zmc2V0X3kgd2lkdGggaGVpZ2h0IHRvdGFsX3dpZHRoIHRvdGFsX2hlaWdodCBpbWFnZV9wYXRoO1xuLy9cbi8vIEF0IHRoZSBib3R0b20gb2YgdGhpcyBzZWN0aW9uLCB3ZSBwcm92aWRlIGluZm9ybWF0aW9uIGFib3V0IHRoZSBzcHJpdGVzaGVldCBpdHNlbGZcbi8vICRzcHJpdGVzaGVldDogd2lkdGggaGVpZ2h0IGltYWdlICRzcHJpdGVzaGVldC1zcHJpdGVzO1xuICAgICAgICAgICAgQG1peGluIHNpZ25fYnRuXzEge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoLTIwNCkgcHgoMCk7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHgoMzA4KTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogcHgoOTApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBtaXhpbiBzaWduX2J0bl8yIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KC0yMDQpIHB4KC0xMDApO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDMwOCk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDkwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAbWl4aW4gc2lnbl9idG5fNiB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBweCgwKSBweCgtMjMzKTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBweCgzMDgpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCg5MCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQG1peGluIHNpZ25faW5mbyB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBweCgwKSBweCgwKTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBweCgxOTQpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCgyMjMpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgJXNwcml0ZV9zaWduIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9zcHJpdGVfc2lnbi5wbmcpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IHB4KDUxMikgcHgoMzIzKTtcclxuICAgICAgICB9XHJcblxuXG4iLCIvLyBTQ1NTIHZhcmlhYmxlcyBhcmUgaW5mb3JtYXRpb24gYWJvdXQgaWNvbidzIGNvbXBpbGVkIHN0YXRlLCBzdG9yZWQgdW5kZXIgaXRzIG9yaWdpbmFsIGZpbGUgbmFtZVxuLy9cbi8vIC5pY29uLWhvbWUge1xuLy8gICB3aWR0aDogJGljb24taG9tZS13aWR0aDtcbi8vIH1cbi8vXG4vLyBUaGUgbGFyZ2UgYXJyYXktbGlrZSB2YXJpYWJsZXMgY29udGFpbiBhbGwgaW5mb3JtYXRpb24gYWJvdXQgYSBzaW5nbGUgaWNvblxuLy8gJGljb24taG9tZTogeCB5IG9mZnNldF94IG9mZnNldF95IHdpZHRoIGhlaWdodCB0b3RhbF93aWR0aCB0b3RhbF9oZWlnaHQgaW1hZ2VfcGF0aDtcbi8vXG4vLyBBdCB0aGUgYm90dG9tIG9mIHRoaXMgc2VjdGlvbiwgd2UgcHJvdmlkZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgc3ByaXRlc2hlZXQgaXRzZWxmXG4vLyAkc3ByaXRlc2hlZXQ6IHdpZHRoIGhlaWdodCBpbWFnZSAkc3ByaXRlc2hlZXQtc3ByaXRlcztcbiAgICAgICAgICAgIEBtaXhpbiB0aXRfMSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBweCgwKSBweCgtMjkzKTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBweCg1ODApO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCg4NSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQG1peGluIHRpdF8yIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KDApIHB4KC05NSk7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHgoNTg4KTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogcHgoODkpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBtaXhpbiB0aXRfMyB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBweCgwKSBweCgwKTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBweCg3MDcpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCg4NSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQG1peGluIHRpdF80IHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KDApIHB4KC0xOTQpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDU4Nyk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDg5KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICVzcHJpdGVfdGl0IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9zcHJpdGVfdGl0LnBuZyk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogcHgoNzA3KSBweCgzNzgpO1xyXG4gICAgICAgIH1cclxuXG5cbiIsIkBjaGFyc2V0IFwidXRmLThcIjtcclxuXHJcbi5teV9mYnRtIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5kai1ib2R5IHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcblxyXG4ucGFnZS1mdHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0Ym90dG9tOjA7XHJcblx0bGVmdDogMDtcclxuXHR3aWR0aDogMTAwJTtcclxuXHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdEBpbmNsdWRlIGJmb250KDE0LDI4LCRiYXNlQ29sb3IpO1xyXG59XHJcblxyXG4vKiDnu5PmnoTlsYLmrKEgKi9cclxuLyogc2VjdGlvbi1tb2QtZnVuLWJveCAqL1xyXG5cclxuLyogbW9kICovXHJcbi8qIOa0u+WKqOaooeWdlyAqL1xyXG5cclxuXHJcbi8qIOWFt+S9k+WKn+iDveaooeWdlyAqL1xyXG5cclxuLm15X3RvcGJhcntcclxuXHRtaW4td2lkdGg6IDEyMDBweDtcclxufVxyXG4ubXlfZm9vdGVye1xyXG4gICAgbWFyZ2luLXRvcDogMDtcclxufVxyXG5cclxuLyog5Lit6Ze05Yy65Z+fIC3lhbfkvZPpobXpnaLmnInlj6/og73kuI3kuIDmoLcqL1xyXG4ud3JhcCB7XHJcblx0bWFyZ2luOiAwIGF1dG87XHJcblx0d2lkdGg6IHB4KDEyMDApO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHQqem9vbTogMTtcclxufVxyXG5cclxuLyog5Y+q6ZKI5a+55aS06YOo6L+b6KGMb3ZlcmZsb3fvvJpoaWRkZW7lpITnkIZcclxu6YG/5YWN55So5oi35L+h5oGv5qCP6LaF5Ye65a+86Ie05YW85a655pyJ6Zeu6aKYICovXHJcbi5wYWdlLWhkIHtcclxuICAgIC53cmFwIHtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgfSBcclxufVxyXG5cclxuLyog6LCD5pW05YWs5YWxZm9vdGVy5qC35byPICovXHJcblxyXG4vKiDlhazlhbF1aSDkvb/nlKh3Z+S9nOS4uuagh+W/l+S9v+eUqOW8leWFpSzmj5DkvpvkuIDkupvlhazlhbHnmoTooYzkuLp1aSAqL1xyXG5bY2xhc3N+PVwid2ctYnRuXCJdIHtcclxuXHQvKiDmjInpkq7kuI3kuIDlrprkvb/nlKjmjInpkq7pm6rnoqfvvIzlhbfkvZPov5jmmK/opoHnnIvlhoXlrrnvvIzmlL7lnKjlkITkuKrlhbfkvZPmoLflvI/lhoUgKi9cclxuXHRAZXh0ZW5kICVzcHJpdGVfYnRuO1xyXG5cdHRyYW5zaXRpb246IGZpbHRlciAwLjNzLCBjb2xvciAwLjNzO1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGZvbnQtc2l6ZTogMDtcclxuICAgIGxpbmUtaGVpZ2h0OiAwO1xyXG5cdCY6aG92ZXJ7XHJcblx0XHRmaWx0ZXI6IGJyaWdodG5lc3MoMS4yKTtcclxuXHR9XHJcbiAgICAvLyAmW2RhdGEtc3RhdHVzPVwiMlwiXXtcclxuICAgIC8vICAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcbiAgICAvLyAgICAgJjpob3ZlcntcclxuICAgIC8vICAgICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDEpO1xyXG4gICAgLy8gICAgIH0gICAgXHJcbiAgICAvLyB9XHJcbn1cclxuW2NsYXNzfj1cIndnLXRpdFwiXSB7XHJcblx0QGV4dGVuZCAlc3ByaXRlX3RpdDtcclxuXHRmb250LXNpemU6IDA7XHJcbiAgICAmLnRpdDEtMXtcclxuICAgICAgICBAaW5jbHVkZSB0aXRfMTtcclxuICAgIH1cclxuICAgICYudGl0MS0ye1xyXG4gICAgICAgIEBpbmNsdWRlIHRpdF8yO1xyXG4gICAgfVxyXG4gICAgJi50aXQxLTN7XHJcbiAgICAgICAgQGluY2x1ZGUgdGl0XzM7XHJcbiAgICB9XHJcbiAgICAmLnRpdDEtNHtcclxuICAgICAgICBAaW5jbHVkZSB0aXRfNDtcclxuICAgIH1cclxufVxyXG5cclxuW2NsYXNzfj1cIndnLWltZ1wiXSB7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRpbWd7XHJcblx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcztcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRoZWlnaHQ6IDEwMCU7XHJcblx0fVxyXG5cdCY6aG92ZXJ7XHJcblx0XHRpbWd7XHJcblx0XHRcdHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5pbWctYm94e1xyXG4gICAgaW1ne1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdGhlaWdodDogMTAwJTtcclxuXHR9XHJcbn1cclxuXHJcblxyXG4vKiDljZXpobktLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuIiwiQGNoYXJzZXQgXCJ1dGYtOFwiO1xyXG5cclxuLyog6IOM5pmvICovXHJcbi5teV9mYnRtIHtcclxuICAgIGJhY2tncm91bmQ6ICNlMGUwZTA7XHJcbiAgICAqe1xyXG5cdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHR9XHJcbn1cclxuXHJcbi5wYWdlLWhkIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICAvKiBsb2dvICovXHJcbiAgICAuaGQtbG9nb3tcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiBweCg1NSk7XHJcbiAgICAgICAgbGVmdDogcHgoMTUpO1xyXG4gICAgICAgIEBleHRlbmQgJXNwcml0ZV9oZWFkO1xyXG4gICAgICAgIEBpbmNsdWRlIGhkX2xvZ287XHJcbiAgICAgICAgZm9udC1zaXplOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIOa0u+WKqOaXtumXtCAqL1xyXG4gICAgLmhkLXRpbWV7XHJcbiAgICAgICAgQGluY2x1ZGUgY2VudGVyMlg7XHJcbiAgICAgICAgdG9wOiBweCg2NjApO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBAaW5jbHVkZSBiZm9udCgxNCwyOSwjZmZmZmZmKTtcclxuICAgICAgICBAZXh0ZW5kICVzcHJpdGVfaGVhZDtcclxuICAgICAgICBAaW5jbHVkZSBoZF90aW1lO1xyXG4gICAgfVxyXG4gICBcclxuICAgIC8qIOeUqOaIt+S/oeaBryAqL1xyXG4gICAgLmhkLWluZm97XHJcbiAgICAgICAgQGluY2x1ZGUgY2VudGVyMlg7XHJcbiAgICAgICAgYm90dG9tOiBweCg4MCk7XHJcbiAgICB9XHJcbiAgICAvKiDliIbnu4Tpk77mjqUgKi9cclxuICAgIC8qIOacieaXtuWAmeaYr+aVtOS9k+iDjOaZr++8jOacieaXtuWAmeaYr+WNleeLrOaMiemSru+8jOWFt+S9k3Vp5YW35L2T6LCD5pW0ICovXHJcbiAgICAvKiDov5nph4zmjInnhafljZXni6wgKi9cclxuICAgIC5oZC1ncm91cHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IHB4KDApO1xyXG4gICAgICAgIHRvcDogcHgoMTQpO1xyXG4gICAgICAgIC5oZC1ncm91cC1idG57XHJcbiAgICAgICAgICAgIEBleHRlbmQgJXNwcml0ZV9oZWFkO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBoZF9saW5rX2J0bjtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYmZvbnQoMTIsMzYsI2UzZTNlMyk7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMThweDtcclxuICAgICAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGhkX2xpbmtfYnRuX2g7XHJcbiAgICAgICAgICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG4ucGFnZS1iZHtcclxufVxyXG4uZ2lmdC1saXN0e1xyXG4gICAgLmdpZnQtaXRlbSB7XHJcbiAgICAgICAgQGluY2x1ZGUgaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB3aWR0aDogcHgoMjg1KTtcclxuICAgICAgICAuYm94LWluZm8ge1xyXG4gICAgICAgICAgICBAZXh0ZW5kICVzcHJpdGVfYm94O1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBib3hfcHJpemU7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IHB4KDQpIHB4KDUpO1xyXG4gICAgICAgICAgICAudGl0IHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJmb250KDE0LCAzMSwgI2ZmZjVlNCk7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiBweCgxMik7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBweCg2KTtcclxuICAgICAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJmb250KDE0LCAzMSwgI2U1MWMyYik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHgoMjcwKTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogcHgoOTQpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5uYW1lIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgaGVpZ2h0OiBweCgyOCk7XHJcbiAgICAgICAgICAgIHdpZHRoOiA5MCU7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGxmb250KDE0LCAyOCwgI2ZmZjVlNCk7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGVsbGlwc2lzO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5pdGVtLWJ0biB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcjJYO1xyXG4gICAgICAgICAgICB0b3A6IHB4KDE3MCk7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ0bl9wcml6ZV8wO1xyXG4gICAgICAgICAgICAmW2RhdGEtc3RhdHVzPScxJ10ge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnRuX3ByaXplXzE7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJltkYXRhLXN0YXR1cz0nMiddIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJ0bl9wcml6ZV8yO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLm1vZHtcclxuICAgIC8qIOWmguaenOmBh+WIsOi2heWHujEyMDDlrr3nmoTmoIfpopggKi9cclxuICAgIC8qIOiBlOezu+iuvuiuoeW4iOaIluiAheS9v+eUqGNlbnRlcjJ4K3BhZGRpbmctdG9wICovXHJcbiAgICAubW9kLWhke1xyXG4gICAgICAgIC5oZC10aXR7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuaGQtdHh0e1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGxmb250KDE0LDI0LCNmZmY1ZTQpXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxufVxyXG4ubW9kLTF7XHJcbiAgICBtaW4taGVpZ2h0OiBweCg5MTApO1xyXG59XHJcblxyXG4ubW9kLTJ7XHJcbiAgICBtaW4taGVpZ2h0OiBweCg5MDApO1xyXG4gICAgLm1vZC1oZHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiBweCg0MCk7XHJcbiAgICB9XHJcbn1cclxuLm1vZC0ze1xyXG4gICAgbWluLWhlaWdodDogcHgoOTQ4KTtcclxuICAgIC5tb2QtaGR7XHJcbiAgICAgICAgLmhkLXR4dHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbGZvbnQoMTQsMjQsIzhmOGY4ZilcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAubW9kLWhke1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHB4KDQwKTtcclxuICAgIH1cclxuICAgIC5tLXJhbmt7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBweCgxMik7XHJcbiAgICB9XHJcbiAgICAubS1yYW5rLC5tLXJhbmtQcml6ZXtcclxuICAgICAgICBAaW5jbHVkZSBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgIH1cclxufVxyXG5cclxuLm1vZC00e1xyXG4gICAgcGFkZGluZy1ib3R0b206IHB4KDg4KTtcclxuICAgIC5tb2QtaGR7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcHgoOTUpO1xyXG4gICAgfVxyXG4gICAgLm1vZC1iZHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9ib3hfbW9kXzQucG5nKSBuby1yZXBlYXQgY2VudGVyIHRvcDtcclxuICAgICAgICB3aWR0aDogcHgoMTIwMCk7XHJcbiAgICAgICAgaGVpZ2h0OiBweCg0NzQpO1xyXG4gICAgICAgICY6OmFmdGVye1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL21hbi5wbmcpIG5vLXJlcGVhdCBjZW50ZXIgdG9wO1xyXG4gICAgICAgICAgICB3aWR0aDogcHgoNTA3KTtcclxuXHRcdFx0aGVpZ2h0OiBweCg1NTQpO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGxlZnQ6IHB4KC02Nik7XHJcbiAgICAgICAgICAgIHRvcDogcHgoLTcwKTtcclxuXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYnRue1xyXG4gICAgICAgICAgICBAZXh0ZW5kICVzcHJpdGVfYnRuO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBidG5fam9pbjtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBsZWZ0OiBweCg2NzYpO1xyXG4gICAgICAgICAgICB0b3A6IHB4KDMxMyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiXHJcbi8qIOWbvueJh+iDjOaZryAqL1xyXG4vKiDlpoLmnpzlpJrpobXpnaLlpJrog4zmma/liIfmjaLnlKjlpJblsYJwYWdlLXh46L+b6KGM5o6n5Yi2ICovXHJcbi52aWV3e1xyXG4gICAgbWluLXdpZHRoOiAxMjAwcHg7XHJcbn1cclxuXHJcbi5wYWdlLWluZGV4IHtcclxuXHQuYmctb3V0LWhke1xyXG5cdFx0YmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9iZy9iZy1oZC1vdXRfMDEuanBnKSBuby1yZXBlYXQgY2VudGVyIHRvcDtcclxuXHR9XHJcblx0QGZvciAkaSBmcm9tIDEgdGhyb3VnaCA0IHtcclxuXHRcdC5iZy1oZC0jeyRpfSB7XHJcblx0XHRcdGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvYmcvYmdfMCN7JGl9LmpwZykgbm8tcmVwZWF0IGNlbnRlciB0b3A7XHJcblx0XHRcdGhlaWdodDogcHgoMjIwKTtcclxuXHRcdH1cclxuXHR9XHJcblx0LmJnLW91dC1iZCB7XHJcblx0XHRiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2JnL2JnLWJkLW91dF8wMS5qcGcpIG5vLXJlcGVhdCBjZW50ZXIgdG9wO1xyXG4gICAgICAgIC53cmFwe1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcHgoNTApO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2JnL2JnLWJkLWluXzAxLmpwZykgbm8tcmVwZWF0IGNlbnRlciB0b3A7XHJcblx0XHR9XHJcblx0fVxyXG59IiwiQGNoYXJzZXQgXCJ1dGYtOFwiO1xyXG4vKiDnlKjmiLfkv6Hmga/moI8gKi9cclxuLyog5L+h5oGv5qCP6auY77yI6KGM6auY77yJICovXHJcbiRpbmZvX2hlaWdodDo5MTtcclxuLyog5L+h5oGv5qCP5a69ICovXHJcbiRpbmZvX3dpZHRoOjEyMDA7XHJcblxyXG4vKiDnmbvlvZXlrr0gKi9cclxuJGxvZ2luX3dpZHRoOjM4MDtcclxuXHJcbi8qIOm7mOiupOaWh+Wtl+minOiJsiAqL1xyXG4kaW5mb19jb2xvcjojZmZmNWU0O1xyXG4kaW5mb19zaXplOjE0O1xyXG4vKiDlvLrosIPmloflrZfpopzoibIgKi9cclxuJGluZm9fZW1fY29sb3I6I2ZmZjVlNDtcclxuLnRleHRfZGVmYXVsdF9lbV8ye1xyXG5cdGNvbG9yOiAkaW5mb19lbV9jb2xvciFpbXBvcnRhbnQ7XHJcbn1cclxuLm0taW5mbyB7XHJcblx0LmluZm8tYm9keXtcclxuXHRcdEBleHRlbmQgJXNwcml0ZV9ib3g7XHJcblx0XHRAaW5jbHVkZSBib3hfaW5mbztcclxuXHR9XHJcblx0LmxvZ2luLWluZm8ge1xyXG5cdFx0ZmxvYXQ6IGxlZnQ7XHJcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHR3aWR0aDogcHgoJGxvZ2luX3dpZHRoKTtcclxuXHRcdGhlaWdodDogMTAwJTtcclxuXHRcdC51c2VyLXJlZyB7XHJcblx0XHR9XHJcblx0XHQudXNlci1uYW1lIHtcclxuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHR3aWR0aDogcHgoMTcwKTtcclxuXHRcdFx0QGluY2x1ZGUgaW5saW5lLWJsb2NrO1xyXG5cdFx0XHRAaW5jbHVkZSBlbGxpcHNpcztcclxuXHRcdFx0QGluY2x1ZGUgYmZvbnQoJGluZm9fc2l6ZSwgJGluZm9faGVpZ2h0LCAkaW5mb19jb2xvcik7XHJcblx0XHR9XHJcblx0XHRcclxuXHJcblx0XHQudXNlci1sb2dvdXQsXHJcblx0XHQudXNlci1sb2dpbixcclxuXHRcdC51c2VyLXJlZyB7XHJcblx0XHRcdEBpbmNsdWRlIGJmb250KCRpbmZvX3NpemUsICRpbmZvX2hlaWdodCwgJGluZm9fY29sb3IpO1xyXG5cdFx0fVxyXG5cclxuXHRcdC51c2VyLWxvZ291dHtcclxuXHRcdFx0QGluY2x1ZGUgYmZvbnQoJGluZm9fc2l6ZSwgJGluZm9faGVpZ2h0LCAkaW5mb19jb2xvcik7XHJcblx0XHR9XHJcblx0fVxyXG5cdFxyXG5cdC5pbmZvLWJveCB7XHJcblx0XHRmbG9hdDogbGVmdDtcclxuXHRcdHdpZHRoOiBweCgkaW5mb193aWR0aCAtICRsb2dpbl93aWR0aCAtIDI0KTtcclxuXHRcdEBpbmNsdWRlIGNsZWFyZml4O1xyXG5cdFx0QGluY2x1ZGUgYmZvbnQoJGluZm9fc2l6ZSwgJGluZm9faGVpZ2h0LCAkaW5mb19jb2xvcik7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHRcdCYuaW5mby1ib3gtMSB7XHJcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdFx0cGFkZGluZy1sZWZ0OiAyMDBweDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC5pbmZvLWJpbmQge1xyXG4gICAgICAgIEBpbmNsdWRlIGNlbnRlcjJZO1xyXG5cdFx0bGVmdDogcHgoMCk7XHJcblx0XHRAZXh0ZW5kICVzcHJpdGVfYnRuO1xyXG5cdFx0QGluY2x1ZGUgYnRuX2JpbmQ7XHJcblx0XHRmb250LXNpemU6IDA7XHJcblx0XHRsaW5lLWhlaWdodDogMDtcclxuXHR9XHJcblxyXG5cdC8qIOe7keWumuaPkOekuuaWh+acrCAqL1xyXG5cdC5pbmZvLWJpbmQtcHN7XHJcblx0XHRwYWRkaW5nLWxlZnQ6IHB4KDI0KTtcclxuXHRcdEBpbmNsdWRlIGNsZWFyZml4O1xyXG5cdH1cclxuXHJcblx0Lyog6Ieq5Yqo5Yik5pat5a2Q5YWD57Sg5Liq5pWwIOWFvOWuuWllOSAqL1xyXG5cdC5pbmZvLWJveC1pdGVtIHtcclxuXHRcdEBpbmNsdWRlIGNsZWFyZml4O1xyXG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0aGVpZ2h0OiBweCgkaW5mb19oZWlnaHQpO1xyXG5cdFx0ZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgQGluY2x1ZGUgZWxsaXBzaXM7XHJcblx0XHQuaW5mby1sYWJlbCB7XHJcblx0XHRcdGZsb2F0OiBsZWZ0O1xyXG5cdFx0fVxyXG5cdFx0LyogMeS4qiAqL1xyXG5cdFx0Jjpvbmx5LWNoaWxke1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdH1cclxuICAgICAgICBcclxuXHRcdEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggNyB7XHJcblx0XHRcdCY6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoI3skaX0pe1xyXG5cdFx0XHRcdHdpZHRoOiBjYWxjKCggMTAwJSAvICN7JGl9ICkpO1xyXG5cdFx0XHR9XHJcblx0XHRcdCY6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoI3skaX0pIH4gLmluZm8tYm94LWl0ZW17XHJcblx0XHRcdFx0d2lkdGg6IGNhbGMoKCAxMDAlIC8gI3skaX0gKSk7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC8qIOeKtuaAgTEg5LiA6Iis55m76ZmG77yI5pyq5pyJ57uR5a6a44CB5pyq5pyJ6KeS6Imy562J77yJICovXHJcblx0JltkYXRhLXN0YXR1cz1cIjFcIl17XHJcblx0XHQuaW5mby1ib3gge1xyXG5cdFx0XHQmLmluZm8tYm94LTEge1xyXG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdC8qIOeKtuaAgTIg5q2j5bi454q25oCBICovXHJcblx0JltkYXRhLXN0YXR1cz1cIjJcIl17XHJcblx0XHQuaW5mby1ib3gge1xyXG5cdFx0XHQmLmluZm8tYm94LTEge1xyXG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHRcdH1cclxuXHRcdFx0Ji5pbmZvLWJveC0zIHtcclxuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0XHQuYnRuMS1iaW5ke1xyXG5cdFx0XHRcdFx0Y3Vyc29yOiBkZWZhdWx0O1xyXG5cdFx0XHRcdFx0Jjpob3ZlcntcclxuXHRcdFx0XHRcdFx0ZmlsdGVyOiBicmlnaHRuZXNzKDEpO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCJAY2hhcnNldCBcInV0Zi04XCI7XHJcblxyXG4kcGFsZXR0ZV9jb2xvcjojMzkzYzQzO1xyXG4kcGFsZXR0ZV9jb2xvcl9oOiNlOGUxY2Q7XHJcblxyXG4ubS1wYWxldHRlIHtcclxuXHR6LWluZGV4OiA5OTtcclxuXHRwb3NpdGlvbjogZml4ZWQ7XHJcblx0Ym90dG9tOiAyMDBweDtcclxuXHRsZWZ0OiA1MCU7XHJcblx0bWFyZ2luLWxlZnQ6IDY3MHB4O1xyXG5cdHJpZ2h0OiBhdXRvO1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgd2lkdGg6IHB4KDIwMik7XHJcbiAgICAuaW1ne1xyXG4gICAgICAgIEBleHRlbmQgJXNwcml0ZV9wYWxldHRlO1xyXG5cdFx0QGluY2x1ZGUgcGFsZXR0ZV9pbWc7XHJcbiAgICAgICAgcGFkZGluZzogcHgoMyk7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcHgoMTApO1xyXG4gICAgICAgIGltZ3tcclxuICAgICAgICAgICAgd2lkdGg6IHB4KDE0Nik7XHJcbiAgICAgICAgICAgIGhlaWdodDogcHgoODYpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHQuaXRlbXtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0QGV4dGVuZCAlc3ByaXRlX3BhbGV0dGU7XHJcblx0XHRAaW5jbHVkZSBwYWxldHRlX2l0ZW07XHJcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHRAaW5jbHVkZSBsZm9udCgxOCwzNywkcGFsZXR0ZV9jb2xvcik7XHJcblx0XHRtYXJnaW46IDAgYXV0bztcclxuXHRcdG1hcmdpbi1ib3R0b206IHB4KDEwKTtcclxuXHRcdCY6aG92ZXIsXHJcblx0XHQmLmN1cntcclxuXHRcdFx0QGluY2x1ZGUgcGFsZXR0ZV9pdGVtX2N1cjtcclxuXHRcdFx0QGluY2x1ZGUgbGZvbnQoMTgsMzcsJHBhbGV0dGVfY29sb3JfaCk7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHRcdH1cclxuXHR9XHJcblx0Lyog5Zug5Li65pyJ5Y+v6IO95Lik6ICFdWnkuI3kuIDoh7Qg54us56uLICovXHJcblx0LmJhY2t7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdEBleHRlbmQgJXNwcml0ZV9wYWxldHRlO1xyXG5cdFx0QGluY2x1ZGUgcGFsZXR0ZV9pdGVtO1xyXG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0bWFyZ2luOiAwIGF1dG87XHJcblx0XHRAaW5jbHVkZSBsZm9udCgxOCwzNywkcGFsZXR0ZV9jb2xvcik7XHJcblx0XHQmOmhvdmVye1xyXG5cdFx0XHRAaW5jbHVkZSBwYWxldHRlX2l0ZW1fY3VyO1xyXG5cdFx0XHRAaW5jbHVkZSBsZm9udCgxOCwzNywkcGFsZXR0ZV9jb2xvcl9oKTtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLnNtXzE4MDAgLm0tZml4ZWRNZW51IHtcclxuXHRsZWZ0OiA1MCUgIWltcG9ydGFudDtcclxuXHRtYXJnaW4tbGVmdDogNjcwcHggIWltcG9ydGFudDtcclxufVxyXG4iLCIubS1zaWduIHtcclxuICAgIGhlaWdodDogcHgoMjYwKTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAuc2lnbi1idG4ge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBsZWZ0OiBweCgzNjApO1xyXG4gICAgICAgIHRvcDogcHgoMTIwKTtcclxuICAgICAgICBAZXh0ZW5kICVzcHJpdGVfc2lnbjtcclxuICAgICAgICBAaW5jbHVkZSBzaWduX2J0bl8xO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgJltkYXRhLXN0YXR1cz0nMSddIHtcclxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDEuMSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJltkYXRhLXN0YXR1cz0nLTYnXSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHNpZ25fYnRuXzY7XHJcbiAgICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJltkYXRhLXN0YXR1cz0nMiddIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgc2lnbl9idG5fMjtcclxuICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5pbmZvIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiBweCgwKTtcclxuICAgICAgICBsZWZ0OiBweCg2MjApO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBAaW5jbHVkZSBiZm9udCgxNiwgMzgsICNmZmY1ZTQpO1xyXG4gICAgICAgIEBleHRlbmQgJXNwcml0ZV9zaWduO1xyXG4gICAgICAgIEBpbmNsdWRlIHNpZ24taW5mbztcclxuICAgICAgICBwYWRkaW5nLXRvcDogcHgoMTMwKTtcclxuICAgICAgICAubnVtIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYmZvbnQoMzYsIDM4LCAjYzE0NDQ3KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5tLXNpZ24tZ2lmdCB7XHJcbiAgICAuZ2lmdC1saXN0IHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBweCgtMjApO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMDtcclxuICAgIH1cclxuICAgIC5naWZ0LWl0ZW0ge1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogcHgoMjApO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHB4KDcwKTtcclxuICAgIH1cclxufVxyXG4iLCJAY2hhcnNldCBcInV0Zi04XCI7XHJcbi8qIOe0r+WFheWlveekvCAqL1xyXG4ubS1sY2hse1xyXG4gICAgLmFzaWRle1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgICAgIEBpbmNsdWRlIGlubGluZS1ibG9jaztcclxuICAgICAgICBAZXh0ZW5kICVzcHJpdGVfYm94O1xyXG5cdFx0QGluY2x1ZGUgYm94X2N6O1xyXG4gICAgICAgIC5sY2hsLWluZm97XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgQGluY2x1ZGUgY2VudGVyMlg7XHJcbiAgICAgICAgICAgIHRvcDogcHgoNDEwKTtcclxuICAgICAgICAgICAgQGV4dGVuZCAlc3ByaXRlX2JveDtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYm94X2N6X2luZm87XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJmb250KDE0LDQyLCNmZmY1ZTQpO1xyXG4gICAgICAgICAgICBzcGFue1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYmZvbnQoMTQsNDIsI2ZmYzUxMyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmxqY3otYnRue1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBjZW50ZXIyWDtcclxuICAgICAgICAgICAgdG9wOiBweCg0ODIpO1xyXG4gICAgICAgICAgICBAZXh0ZW5kICVzcHJpdGVfYnRuO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBidG5fY3o7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5naWZ0LWxpc3Qge1xyXG4gICAgICAgIEBpbmNsdWRlIGlubGluZS1ibG9jaztcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IHB4KC0yMCk7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IHB4KDEwMCk7XHJcbiAgICAgICAgZm9udC1zaXplOiAwO1xyXG4gICAgICAgIHdpZHRoOiBweCg1OTYpO1xyXG4gICAgfVxyXG5cclxuICAgIC5naWZ0LWl0ZW0ge1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogcHgoMTMpO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHB4KDcwKTtcclxuICAgIH1cclxufSIsIkBjaGFyc2V0IFwidXRmLThcIjtcclxuLm0tcmFuayB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBAZXh0ZW5kICVzcHJpdGVfcmFuaztcclxuICAgIEBpbmNsdWRlIHJhbmtfYmc7XHJcbiAgICBmb250LXNpemU6IDA7XHJcbiAgICAucmFuay1pbmZve1xyXG4gICAgICAgIGhlaWdodDogcHgoNDYpO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgcHgoMTApO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgLmluZm97XHJcbiAgICAgICAgICAgIEBpbmNsdWRlICBiZm9udCgxNCw1MiwjMjcyNzMyKTtcclxuICAgICAgICAgICAgJi5pbmZvLXJhbmt7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHgoMTM0KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBlbXtcclxuICAgICAgICAgICAgQGluY2x1ZGUgIGJmb250KDE0LDUyLCM0OTZhYTQpO1xyXG5cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5yYW5rLXRhYmxlIHtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG5cdG1pbi1oZWlnaHQ6IHB4KDU0MCk7XHJcblx0LmNvbDEsXHJcblx0LmNvbDIsXHJcblx0LmNvbDN7XHJcbiAgICAgICAgQGluY2x1ZGUgaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRoZWlnaHQ6IHB4KDU2KTtcclxuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHR9XHJcbiAgICAuY29sMSB7XHJcbiAgICAgICAgd2lkdGg6IDIwJTtcclxuICAgIH1cclxuXHJcbiAgICAuY29sMiB7XHJcbiAgICAgICAgd2lkdGg6IDQ4JTtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbDMge1xyXG4gICAgICAgIHdpZHRoOiAzMiU7XHJcbiAgICB9XHJcblxyXG4gICAgLmhlYWQge1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBAZXh0ZW5kICVzcHJpdGVfcmFuaztcclxuICAgICAgICBAaW5jbHVkZSByYW5rX3RoO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMDtcclxuICAgICAgICBzcGFue1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBiZm9udCgxNiwgMzcsICNlNGU0ZTQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuYm9keSB7XHJcbiAgICAgICAgd2lkdGg6IDQ2OXB4O1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IHB4KDQwMCk7XHJcbiAgICAgICAgLmNvbDJ7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJmb250KDE0LCA1NiwgIzI3MjczMik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5jb2wze1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsZm9udCgxNCwgNTYsICMyNzI3MzIpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5yYW5rLWljb257XHJcbiAgICAgICAgQGluY2x1ZGUgY2VudGVyMjtcclxuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBAaW5jbHVkZSBiZm9udCgxNiwzOSwjZTJlMmUyKTtcclxuICAgICAgICBAZXh0ZW5kICAlc3ByaXRlX3Jhbms7IFxyXG4gICAgICAgIEBpbmNsdWRlIHJhbmstbnVtO1xyXG5cdH1cclxuXHQudGFibGUtbGluZXtcclxuICAgICAgICBAZXh0ZW5kICAlc3ByaXRlX3Jhbms7IFxyXG4gICAgICAgIEBpbmNsdWRlIHJhbmtfaXRlbTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiBweCg0KTtcclxuICAgICAgICAvKiDmlpHpqaznur91aSAqL1xyXG4gICAgICAgICY6bnRoLWNoaWxkKDJuKzEpe1xyXG4gICAgICAgIH1cclxuICAgICAgICAvKiDliY3kuIl1aSAqL1xyXG4gICAgICAgICY6bnRoLWNoaWxkKC1uKzMpe1xyXG4gICAgICAgICAgICAucmFuay1pY29ue1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5jb2wzIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJmb250KDE0LCA1NiwgIzVkNjc5Mik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLyog56ys5LiA5ZCNdWkgKi9cclxuICAgICAgICAmOm50aC1jaGlsZCgtbisxKXtcclxuICAgICAgICAgICAgLmNvbDMge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYmZvbnQoMTQsIDU2LCAjZDA0NTU0KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJltkYXRhLXJhbms9XCIxXCJdIHtcclxuICAgICAgICAgICAgLnJhbmstaWNvbiB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByYW5rLW51bTE7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJltkYXRhLXJhbms9XCIyXCJdIHtcclxuICAgICAgICAgICAgLnJhbmstaWNvbiB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByYW5rLW51bTI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJltkYXRhLXJhbms9XCIzXCJdIHtcclxuICAgICAgICAgICAgLnJhbmstaWNvbiB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByYW5rLW51bTM7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblx0fVxyXG59XHJcblxyXG4ubS1yYW5rUHJpemV7XHJcbiAgICB3aWR0aDogcHgoNjg4KTtcclxuICAgIC5yYW5rUHJpemUtaXRlbXtcclxuICAgICAgICBAZXh0ZW5kICVzcHJpdGVfcmFuaztcclxuICAgICAgICBwYWRkaW5nOnB4KDMzKSBweCg4KSAwIHB4KDgpO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAmLTF7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHJhbmtfcHJpemVfMTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi0ye1xyXG4gICAgICAgICAgICBAaW5jbHVkZSByYW5rX3ByaXplXzI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYtM3tcclxuICAgICAgICAgICAgQGluY2x1ZGUgcmFua19wcml6ZV8zO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLWltZ3tcclxuICAgICAgICAgICAgd2lkdGg6IHB4KDY3Myk7XHJcbiAgICAgICAgICAgIGhlaWdodDogcHgoMTAyKTtcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnJhbmtQcml6ZS1pdGVtICsgLnJhbmtQcml6ZS1pdGVte1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHB4KDQwKTtcclxuICAgIH1cclxuICAgIC5yYW5rUHJpemUtbmFtZXtcclxuICAgICAgICBAaW5jbHVkZSBlbGxpcHNpcztcclxuICAgICAgICBoZWlnaHQ6IHB4KDMwKTtcclxuICAgICAgICB3aWR0aDogOTUlO1xyXG4gICAgICAgIEBpbmNsdWRlIGxmb250KDEyLDMwLCMyNzI3MzIpO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIH1cclxuICAgIC5yYW5rUHJpemUtcnVsZXtcclxuICAgICAgICBtYXJnaW4tdG9wOiBweCgyMCk7XHJcbiAgICAgICAgQGV4dGVuZCAlc3ByaXRlX3Jhbms7XHJcbiAgICAgICAgQGluY2x1ZGUgcmFua19ydWxlO1xyXG4gICAgfVxyXG59IiwiQGNoYXJzZXQgXCJ1dGYtOFwiO1xyXG4vKiDkuLvmoIfpopjoibIgKi9cclxuJGNvbG9yX3RleHRfZGlhbG9nX3RpdDogIzFlMmE0MztcclxuLyog5Li75qCH6aKY6ImyLemHjeeCuSAqL1xyXG4kY29sb3JfdGV4dF9kaWFsb2dfdGl0X2VtOiAjZDA0NTU0O1xyXG4vKiDlia/moIfpopjpopzoibIgKi9cclxuJGNvbG9yX3RleHRfZGlhbG9nX3N0aXQ6ICMxZTJhNDM7XHJcbi8qIOato+aWh+iJsiAqL1xyXG4kY29sb3JfdGV4dF9kaWFsb2c6ICMxZTJhNDM7XHJcbi8qIOato+aWh+asoeimgeiJsiAqL1xyXG4kY29sb3JfdGV4dF9kaWFsb2cyOiAjMWUyYTQzO1xyXG5cclxuLyog5LiL5ouJ5qGG5YaF5pyq6YCJ5Lit5a2X5L2T6aKc6ImyICovXHJcbiRjb2xvcl90ZXh0X2RpYWxvZzM6ICNhYWFhYWE7XHJcblxyXG4vKiDlvLrosIPmloflrZco5qCH57qiKSAqL1xyXG4kY29sb3JfdGV4dF9kaWFsb2dfZW06ICNkMDQ1NTQ7XHJcbi8qIOmTvuaOpeminOiJsiAqL1xyXG4kY29sb3JfdGV4dF9kaWFsb2dfYTogIzQ4YjZmYjtcclxuLyog5oyJ6ZKu5paH5a2X6aKc6ImyICovXHJcbiRjb2xvcl90ZXh0X2RpYWxvZ19idG46ICNmZmYwYzk7XHJcblxyXG4vKiDog4zmma/oibIgKi9cclxuJGNvbG9yX2JnX2RpYWxvZzogI2ZmZmZmZjtcclxuLyog6L655qGG6ImyICovXHJcbiRjb2xvcl9ib3JkZXI6ICNmZmZmZmY7XHJcbi8qIOi+ueahhuWuvSAqL1xyXG4kY29sb3JfYm9yZGVyX3dpZHRoOiAwcHg7XHJcblxyXG4vKiDlpoLmnpzlpI3mnYLovrnmoYYg6K6+572ucGFkZGluZ+epuuWHuuWMuuWfnyAqL1xyXG4udWktZGlhbG9nIHtcclxuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vKiDnroDmmJPlvLnlh7rmoYYgKi9cclxuQG1peGluIHdnLWRpYWxvZ19iZyB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JfYmdfZGlhbG9nO1xyXG4gICAgYm9yZGVyOiBzb2xpZCAkY29sb3JfYm9yZGVyX3dpZHRoICRjb2xvcl9ib3JkZXI7XHJcbiAgICBwYWRkaW5nOiBweCgyNikgMDtcclxufVxyXG5cclxuLndnLWRpYWxvZyB7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgIC53Zy1kaWFsb2ctdC1saW5lLFxyXG4gICAgLndnLWRpYWxvZy1iLWxpbmUsXHJcbiAgICAud2ctZGlhbG9nLXQsXHJcbiAgICAud2ctZGlhbG9nLXIsXHJcbiAgICAud2ctZGlhbG9nLWIsXHJcbiAgICAud2ctZGlhbG9nLWwsXHJcbiAgICAud2ctZGlhbG9nLWx0LFxyXG4gICAgLndnLWRpYWxvZy1ydCxcclxuICAgIC53Zy1kaWFsb2ctbGIsXHJcbiAgICAud2ctZGlhbG9nLXJiIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC53Zy1kaWFsb2ctYm9keSB7XHJcbiAgICAgICAgQGluY2x1ZGUgd2ctZGlhbG9nX2JnO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiDmjInpkq7lhazlhbEgKi9cclxuW2NsYXNzfD0nYnRuMiddIHtcclxuICAgIEBleHRlbmQgJXNwcml0ZV9kaWFsb2c7XHJcbiAgICB0cmFuc2l0aW9uOiBmaWx0ZXIgMC4zcywgY29sb3IgMC4zcztcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMS4yKTtcclxuICAgIH1cclxuXHJcbiAgICAvKiDkuIDoiKzmjInpkq4gKi9cclxuICAgICYuYnRuMi1jb20ge1xyXG4gICAgICAgIEBpbmNsdWRlIGRpYWxvZ19idG47XHJcbiAgICAgICAgQGluY2x1ZGUgbGZvbnQoMTYsIDQ2LCAkY29sb3JfdGV4dF9kaWFsb2dfYnRuKTtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygxLjIpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKiDlvLrosIPmjInpkq4gKi9cclxuICAgICYuYnRuMi1jb20tMiB7XHJcbiAgICAgICAgQGluY2x1ZGUgZGlhbG9nX2J0bl9lbTtcclxuICAgICAgICBAaW5jbHVkZSBsZm9udCgxNiwgNDYsICRjb2xvcl90ZXh0X2RpYWxvZ19idG4pO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDEuMik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKmRpYWxvZyovXHJcbi53Zy1kaWFsb2cge1xyXG4gICAgd2lkdGg6IHB4KDcwMCk7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgKntcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgfVxyXG4gICAgLndnLWRpYWxvZy1jb250IHtcclxuICAgICAgICBwYWRkaW5nOiBweCgxMCkgMDtcclxuICAgIH1cclxuXHJcbiAgICAvKiDlhbPpl63mjInpkq4gKi9cclxuICAgIGEud2ctZGlhbG9nLWNsb3NlIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgQGV4dGVuZCAlc3ByaXRlX2RpYWxvZztcclxuICAgICAgICBAaW5jbHVkZSBkaWFsb2dfY2xvc2U7XHJcbiAgICAgICAgdG9wOiBweCgxMCk7XHJcbiAgICAgICAgcmlnaHQ6IHB4KDEwKTtcclxuICAgICAgICB6LWluZGV4OiA5O1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5ZW07XHJcbiAgICAgICAgdHJhbnNpdGlvbjogZmlsdGVyIDAuM3M7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMS4yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyog5qCH6aKY57qn5Yir5paH5a2XICovXHJcbiAgICAud2ctZGlhbG9nLXRpdCB7XHJcbiAgICAgICAgQGluY2x1ZGUgYmZvbnQoMjIsIDI0LCAkY29sb3JfdGV4dF9kaWFsb2dfdGl0KTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgdGV4dC13cmFwOiBiYWxhbmNlO1xyXG4gICAgICAgIGVtIHtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3JfdGV4dF9kaWFsb2dfdGl0X2VtO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAud2ctZGlhbG9nLXR4dCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogcHgoMTIpO1xyXG4gICAgICAgIEBpbmNsdWRlIGxmb250KDE0LCAyNCwgJGNvbG9yX3RleHRfZGlhbG9nKTtcclxuICAgICAgICBwYWRkaW5nOiAwIHB4KDM4KTtcclxuICAgICAgICBwICsgcCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHB4KDEwKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyog5by55Ye65qGG5by65Yi25qCH57qi5paH5a2XICovXHJcbiAgICAud2ctZGlhbG9nLWVtIHtcclxuICAgICAgICBjb2xvcjogJGNvbG9yX3RleHRfZGlhbG9nX2VtICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLyog5Ymv5qCH6aKY57qn5Yir5paH5a2XICovXHJcbiAgICAud2ctZGlhbG9nLXN0aXQge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHB4KDEyKTtcclxuICAgICAgICBAaW5jbHVkZSBsZm9udCgxNCwgMTYsICRjb2xvcl90ZXh0X2RpYWxvZ19zdGl0KTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgdGV4dC13cmFwOiBiYWxhbmNlO1xyXG4gICAgfVxyXG5cclxuICAgIC53Zy1kaWFsb2ctaW1nIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogMjAwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAyMDBweDtcclxuICAgICAgICBib3JkZXI6IHNvbGlkIDEwcHggI2E1MWMxZDtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAud2ctZGlhbG9nLWxpc3Qge1xyXG4gICAgICAgIG1hcmdpbjogcHgoMTIpIDA7XHJcbiAgICAgICAgZm9udC1zaXplOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIOeUqOS6juWNleadoeaYvuekuiAqL1xyXG4gICAgLndnLWRpYWxvZy1saXN0IC53Zy1kaWFsb2ctaXRlbSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBAaW5jbHVkZSBsZm9udCgxNCwgMzAsICRjb2xvcl90ZXh0X2RpYWxvZyk7XHJcbiAgICAgICAgLmxuay10eHQge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsZm9udCgxNCwgMzAsICRjb2xvcl90ZXh0X2RpYWxvZ19zdGl0KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLndnLWRpYWxvZy1pdGVtLW5hbWUge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgIGhlaWdodDogcHgoMzApO1xyXG4gICAgICAgIEBpbmNsdWRlIGVsbGlwc2lzO1xyXG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgfVxyXG5cclxuICAgIC53Zy1kaWFsb2ctaXRlbS12YWwge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICB3aWR0aDogNDklO1xyXG4gICAgICAgIGhlaWdodDogcHgoMzApO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLyog5pON5L2c5Yy65Z+fICovXHJcbiAgICAud2ctZGlhbG9nLW9wdCB7XHJcbiAgICAgICAgLyog5YaF6YOo5oyJ6ZKu5LiA6Iis5L2/55So5a6a5L2NICovXHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBmb250LXNpemU6IDA7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogcHgoMjApO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIOe7n+S4gOaMiemSruagt+W8jyAqL1xyXG4gICAgLndnLWRpYWxvZy1idG4ge1xyXG4gICAgICAgIG1hcmdpbjogMCBweCgxMCk7XHJcbiAgICAgICAgQGluY2x1ZGUgaW5saW5lLWJsb2NrO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIOWNleihjOWIl+ihqOS/oeaBryAqL1xyXG4gICAgLndnLWRpYWxvZy1vcGVyIHtcclxuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbGZvbnQoMTQsIDMyLCAkY29sb3JfdGV4dF9kaWFsb2cpO1xyXG5cclxuICAgICAgICAvKiDovpPlhaXpobnns7vliJcgKi9cclxuICAgICAgICAub3Blci1sYWJlbCB7XHJcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgICAgICB3aWR0aDogMzAlO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICAgICAgaGVpZ2h0OiBweCgzMik7XHJcblxyXG4gICAgICAgICAgICBlbSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmMzMzMztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLm9wZXItaW5wdXQsXHJcbiAgICAgICAgLmNvcHktaW5wdXQge1xyXG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICAgICAgd2lkdGg6IDQ1JTtcclxuICAgICAgICAgICAgaGVpZ2h0OiBweCgzMik7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGxmb250KDE0LCAzMiwgIzRjNGM0Yyk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XHJcbiAgICAgICAgICAgIGJvcmRlcjogc29saWQgMXB4ICNjY2NjY2M7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5vcGVyLW9wdCxcclxuICAgICAgICAuY29weS1idG4ge1xyXG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHB4KDEwKTtcclxuICAgICAgICAgICAgLy9AZXh0ZW5kICVzcHJpdGVfZGlhbG9nO1xyXG4gICAgICAgICAgICAvL0BpbmNsdWRlIGRpYWxvZ19vcHQ7XHJcbiAgICAgICAgICAgIC8vdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAvL0BpbmNsdWRlIGxmb250KDE0LCAzMiwgIzJhM2M2Mik7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAub3Blci1vcHQtdGlwIHtcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvcl90ZXh0X2RpYWxvZ19lbTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8qIOS4i+aLiemhueezu+WIlyAqL1xyXG4gICAgICAgIC5vcGVyLXNlbGVjdC1sYWJlbCB7XHJcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgICAgICB3aWR0aDogNjAlO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHB4KDY0KTtcclxuXHJcbiAgICAgICAgICAgIGVtIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3JfdGV4dF9kaWFsb2dfZW07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5vcGVyLXNlbGVjdCB7XHJcbiAgICAgICAgICAgIC8vIEBleHRlbmQgJXNwcml0ZV9kaWFsb2c7XHJcbiAgICAgICAgICAgIC8vQGluY2x1ZGUgZGlhbG9nX3NlbGVjdDtcclxuXHJcbiAgICAgICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICAgICAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcclxuICAgICAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgbGZvbnQoMTQsIDMyLCAjMmY0MzZjKTtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiBweCgxMCk7XHJcblxyXG4gICAgICAgICAgICBvcHRpb25baGlkZGVuXSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogIzAwMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLm9wZXItdGV4dGFyZWEtbGFiZWwge1xyXG4gICAgICAgICAgICAvL3BhZGRpbmctbGVmdDogcHgoNjQpO1xyXG4gICAgICAgICAgICBlbSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yX3RleHRfZGlhbG9nX2VtO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAub3Blci10ZXh0YXJlYSB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogcHgoMTAwKTtcclxuICAgICAgICAgICAgcGFkZGluZzogcHgoNCk7XHJcbiAgICAgICAgICAgIHJlc2l6ZTogbm9uZTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbGZvbnQoMTQsIDMyLCAjNGM0YzRjKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcclxuICAgICAgICAgICAgYm9yZGVyOiBzb2xpZCAxcHggI2NjY2NjYztcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAud2ctZGlhbG9nLW9wZXJ7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogcHgoMTApO1xyXG4gICAgfVxyXG5cclxuICAgIC53Zy1kaWFsb2ctaHIge1xyXG4gICAgICAgIG1hcmdpbjogcHgoMjApO1xyXG4gICAgICAgIGJvcmRlcjogZGFzaGVkIDFweCAjNWI3NWFiO1xyXG4gICAgfVxyXG5cclxuICAgIC53Zy1kaWFsb2ctbGFiZWwge1xyXG4gICAgICAgIEBpbmNsdWRlIGJmb250KDE0LCAzMiwgJGNvbG9yX3RleHRfZGlhbG9nKTtcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICB3aWR0aDogMzAlO1xyXG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgfVxyXG5cclxuICAgIC53Zy1kaWFsb2ctaW5wdXQsXHJcbiAgICAuY29weS1pbnB1dCB7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgd2lkdGg6IDQ2JTtcclxuICAgICAgICBoZWlnaHQ6IHB4KDMyKTtcclxuICAgICAgICBAaW5jbHVkZSBsZm9udCgxNCwgMzIsICM0YzRjNGMpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XHJcbiAgICAgICAgYm9yZGVyOiBzb2xpZCAxcHggI2NjY2NjYztcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XHJcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHJcbiAgICAgICAgJi5pbnB1dC1waG9uZSB7XHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLndnLWRpYWxvZy1pbnB1dC1idG4ge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjM2MTYyO1xyXG4gICAgICAgIGhlaWdodDogcHgoMzIpO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgcHgoMTQpO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBtYXJnaW4tbGVmdDogcHgoMTApO1xyXG4gICAgICAgIEBpbmNsdWRlIGxmb250KDE0LCAzMiwgI2ZmZmZmZik7XHJcbiAgICB9XHJcblxyXG4gICAgLmNvcHktYnRuIHtcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICBAZXh0ZW5kICVzcHJpdGVfZGlhbG9nO1xyXG4gICAgICAgIEBpbmNsdWRlIGRpYWxvZ19idG5fY29weTtcclxuICAgICAgICBmb250LXNpemU6IDA7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMS4yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyog6KGl5YWF6K+05piOICovXHJcbiAgICAud2ctZGlhbG9nLXBzIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBAaW5jbHVkZSBsZm9udCgxNCwgMTYsICRjb2xvcl90ZXh0X2RpYWxvZ19lbSk7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHB4KDEyKTtcclxuICAgIH1cclxuXHJcbiAgICAvKiDooajljZXpobkgKi9cclxuICAgIC53Zy1mb3JtLWl0ZW0ge1xyXG4gICAgICAgIEBpbmNsdWRlIGxmb250KDE0LCAzMiwgJGNvbG9yX3RleHRfZGlhbG9nKTtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDgwcHg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XHJcblxyXG4gICAgICAgIC5mb3JtLWxhYmVsIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHdpZHRoOiA4MHB4O1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5mb3JtLWlucHV0LFxyXG4gICAgICAgIC5mb3JtLXRleHRhcmVhIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbGZvbnQoMTQsIDMyLCAkY29sb3JfdGV4dF9kaWFsb2cpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xyXG4gICAgICAgICAgICBib3JkZXI6IHNvbGlkIDFweCAjY2NjY2NjO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmZvcm0taW5wdXQge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDI4cHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgNXB4O1xyXG4gICAgICAgICAgICB3aWR0aDogMTgwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZm9ybS10ZXh0YXJlYSB7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDVweDtcclxuICAgICAgICAgICAgd2lkdGg6IDMyOHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4O1xyXG4gICAgICAgICAgICByZXNpemU6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5qLWZvcm0ge1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIH1cclxufVxyXG5cclxuLyog5ZCE5Liq5by55Ye65qGG54us56uL5qC35byPICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5cclxuLyog6KGo5qC8ICovXHJcbi53Zy1kaWFsb2ctdGFibGUsXHJcbi53Zy1kaWFsb2ctbXlsaXN0IHtcclxuICAgIHdpZHRoOiBweCg4MDApO1xyXG5cclxuICAgIC53Zy1kaWFsb2ctY29udCB7XHJcbiAgICAgICAgcGFkZGluZzogcHgoMTApIHB4KDEwMCk7XHJcbiAgICB9XHJcblxyXG4gICAgLm0tbGlzdCB7XHJcbiAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICBtYXJnaW4tdG9wOiBweCgxMCk7XHJcbiAgICB9XHJcblxyXG4gICAgLmxpc3QtdGFibGUtdGQge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgQGluY2x1ZGUgbGZvbnQoMTQsIDMyLCAkY29sb3JfdGV4dF9kaWFsb2cpO1xyXG4gICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbGZvbnQoMTQsIDMyLCAkY29sb3JfdGV4dF9kaWFsb2dfYSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOm50aC1jaGlsZCgyKSB7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yX3RleHRfZGlhbG9nMjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmxpc3QtdGFibGUtdGhlYWQge1xyXG4gICAgICAgIC5jb2wtMSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiBweCgyMDApO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmNvbC0yIHtcclxuICAgICAgICAgICAgd2lkdGg6IHB4KDIwMCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC53Zy1kaWFsb2ctb3BlciB7XHJcbiAgICAgICAgd2lkdGg6IDMwMHB4O1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogNDBweDtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiDliIbpobUgKi9cclxuLndnLWRpYWxvZy1wYWdlciB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nLXRvcDogcHgoMTApO1xyXG5cclxuICAgIHNwYW4ge1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiBweCgyMCk7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIG1hcmdpbjogcHgoMik7XHJcbiAgICAgICAgQGluY2x1ZGUgbGZvbnQoMTQsIDIwLCAkY29sb3JfdGV4dF9kaWFsb2cpO1xyXG4gICAgfVxyXG5cclxuICAgIGEsXHJcbiAgICBzcGFuLmN1ciB7XHJcbiAgICAgICAgd2lkdGg6IHB4KDIwKTtcclxuICAgICAgICBoZWlnaHQ6IHB4KDIwKTtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIG1hcmdpbjogcHgoMik7XHJcbiAgICAgICAgQGluY2x1ZGUgbGZvbnQoMTQsIDIwLCAkY29sb3JfdGV4dF9kaWFsb2cpO1xyXG4gICAgfVxyXG5cclxuICAgIHNwYW4uY3VyIHtcclxuICAgICAgICBjb2xvcjogJGNvbG9yX3RleHRfZGlhbG9nX2VtO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgIHdpZHRoOiBweCgyMCk7XHJcbiAgICB9XHJcblxyXG4gICAgYTpob3ZlciB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvcl90ZXh0X2RpYWxvZ19lbTtcclxuICAgIH1cclxuXHJcbiAgICBhLnBhZ2VyLXByZSxcclxuICAgIGEucGFnZXItbmV4dCxcclxuICAgIHNwYW4ucGFnZXItcHJlLFxyXG4gICAgc3Bhbi5wYWdlci1uZXh0IHtcclxuICAgICAgICB3aWR0aDogcHgoNTApO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiDpgInmnI0gKi9cclxuLyog6YCJ5pyN5qGG5a696auYICovXHJcbiR4ZmtfdzogMTg0cHg7XHJcbiR4ZmtfaDogMjRweDtcclxuXHJcbiRzY3JvbGxiYXJfdzogMTBweDtcclxuLyog6YCJ5pyN5qGG6IOM5pmv6aKc6ImyICovXHJcbiR4ZmtfYmdfYzogI2ZmZmZmZjtcclxuLyog6YCJ5pyN5qGG5a2X5L2TKi9cclxuJHhma19mX2M6ICM0YzRjNGM7XHJcbi8qIOi+ueahhuminOiJsiAqL1xyXG4keGZrX2JfYzogI2NjY2NjYztcclxuXHJcbi53Zy1kaWFsb2ctc2VydmVyU2VsZWN0IHtcclxuICAgIC53Zy1kaWFsb2ctbGluZSB7XHJcbiAgICAgICAgaGVpZ2h0OiBweCgyNCk7XHJcbiAgICAgICAgcGFkZGluZzogcHgoMTYpIDA7XHJcbiAgICB9XHJcblxyXG4gICAgLnNlbGVjdF9ib3gge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xOTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuc2VsZWN0X2pzIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9iZ19kaWFsb2c7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAkeGZrX2JfYztcclxuICAgICAgICBAaW5jbHVkZSBsZm9udCgxNCwgMjQsICNkMDQ1NTQpO1xyXG4gICAgICAgIGhlaWdodDogMjRweDtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDhweDtcclxuICAgICAgICB3aWR0aDogMjEwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLndkLWRpYWxvZy1vcHQtdGlwIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgICAgICBAaW5jbHVkZSBsZm9udCgxNCwgMjQsICRjb2xvcl90ZXh0X2RpYWxvZ19lbSk7XHJcbiAgICAgICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC53ZC1kaWFsb2ctb3B0IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICB9XHJcbiAgICAuc2VhcmNoLWlucHV0IHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxufVxyXG5cclxuaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xyXG4gICAgY29sb3I6ICM0YzRjNGM7XHJcbn1cclxuXHJcbmlucHV0OjotbW96LWlucHV0LXBsYWNlaG9sZGVyIHtcclxuICAgIGNvbG9yOiAjNGM0YzRjO1xyXG59XHJcblxyXG5pbnB1dDo6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcclxuICAgIGNvbG9yOiAjNGM0YzRjO1xyXG59XHJcblxyXG4vKiDpgInmnI3liqHlmaggKi9cclxuLm1fc2VsZWN0bGlzdCB7XHJcbiAgICAvKiDpgInmi6nmoYbpppbmnaEgKi9cclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICp6b29tOiAxO1xyXG4gICAgei1pbmRleDogMTExO1xyXG5cclxuICAgIC5tX3NlbGVjdGVkIHtcclxuICAgICAgICB3aWR0aDogJHhma193O1xyXG4gICAgICAgIGhlaWdodDogJHhma19oO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR4ZmtfYmdfYztcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBib3JkZXI6IHNvbGlkIDFweCAkeGZrX2JfYztcclxuXHJcbiAgICAgICAgLyrmj5DnpLoqL1xyXG4gICAgICAgIC5yZWR0aXAge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsZm9udCgxMiwgMTIsICNiYTEwM2EpO1xyXG4gICAgICAgICAgICB0b3A6IDMycHg7XHJcbiAgICAgICAgICAgIGxlZnQ6IDBweDtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLyog5paH5a2X5Yy65Z+fICovXHJcbiAgICAgICAgLnNlbGVjdF90eHQge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAycHg7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGxmb250KDE0LCAyNCwgJHhma19mX2MpO1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6ICR4ZmtfdyAtIDIzO1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTFweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8qIOS4i+aLieWMuuWfnyAqL1xyXG4gICAgICAgIC5mbGFnX2Rvd24ge1xyXG4gICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkeGZrX2JnX2M7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDEwcHggMCAwO1xyXG5cclxuICAgICAgICAgICAgYiB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmlhbmdsZXQoNnB4LCA2cHgsIDZweCwgJHhma19mX2MpO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgem9vbTogMTtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qIOmAieaLqeahhuS4i+aLiSAqL1xyXG4gICAgLm1fc2VsZWN0X2NvbnQge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR4ZmtfYmdfYztcclxuICAgICAgICBib3JkZXI6IHNvbGlkIDFweCAkeGZrX2JfYztcclxuICAgICAgICB0b3A6ICR4ZmtfaDtcclxuICAgICAgICB3aWR0aDogJHhma193O1xyXG4gICAgICAgIHBhZGRpbmc6IDBweDtcclxuICAgICAgICB6LWluZGV4OiA0O1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgICAgICAuc2VsZWN0bGlzdCB7XHJcbiAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR4ZmtfYmdfYztcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDVweDtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBsZm9udCgxMiwgMjQsICR4ZmtfZl9jKTtcclxuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiA0O1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGZpbHRlciAwLjNzO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHhma19mX2M7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR4ZmtfYmdfYztcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDEuMik7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICYuY3VyIHtcclxuICAgICAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHhma19mX2M7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR4ZmtfYmdfYztcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDEuMik7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC52X3Njcm9sbGJhciB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHdpZHRoOiAkc2Nyb2xsYmFyX3c7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGhlaWdodDogMjIwcHg7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgYmFja2dyb3VuZDogIzQxNGY2MjtcclxuICAgIH1cclxuXHJcbiAgICAudl9zY3JvbGxiYXJfYmcge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgd2lkdGg6ICRzY3JvbGxiYXJfdztcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzQxNGY2MjtcclxuICAgIH1cclxuXHJcbiAgICAudl9zY3JvbGxiYXJfYnRuIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgd2lkdGg6ICRzY3JvbGxiYXJfdyAtIDI7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2EyYWFiMDtcclxuICAgICAgICB6LWluZGV4OiAxMDA7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTJhYWIwO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIOaQnOe0oiAqL1xyXG4gICAgLnNlYXJjaC1pbnB1dCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICR4ZmtfYl9jO1xyXG4gICAgfVxyXG59XHJcblxyXG4ud2ctZGlhbG9nLWFkZHJlc3Mge1xyXG4gICAgLndnLWRpYWxvZy1jb250IHtcclxuICAgICAgICBwYWRkaW5nOiAwIHB4KDY0KTtcclxuICAgIH1cclxuXHJcbiAgICAud2ctZGlhbG9nLW9wZXIge1xyXG4gICAgICAgIHdpZHRoOiBweCgyODApO1xyXG4gICAgICAgIEBpbmNsdWRlIGlubGluZS1ibG9jaztcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XHJcblxyXG4gICAgICAgIC5vcGVyLWlucHV0IHtcclxuICAgICAgICAgICAgd2lkdGg6IHB4KDE3MCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC53Zy1kaWFsb2ctb3B0IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC53Zy1kaWFsb2ctb3Blci10ZXh0YXJlYSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogcHgoMTApICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi53Zy1kaWFsb2ctcHJvYntcclxuICAgIC53Zy1kaWFsb2ctaXRlbS1uYW1le1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHB4KDQwKTtcclxuICAgIH1cclxuICAgIC53Zy1kaWFsb2ctaXRlbS12YWx7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiBweCg0MCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi53Zy1kaWFsb2ctbXlsaXN0IC53Zy1kaWFsb2ctY29udCB7XHJcbiAgICBwYWRkaW5nOiBweCgxMCk7XHJcblxyXG4gICAgLm0tbGlzdC1ib3gge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgcHgoNTApO1xyXG4gICAgfVxyXG59XHJcbiJdfQ== */

