@charset "utf-8";
/* /zhuanti/ssjj2/znq253/release/css/index.css */
@charset "UTF-8";
/* 基础模块 */
/* CSS Document
Date:		2013/12/20
Author:		小芳
Update:
*/
/* CSS reset */
html {
  color: #999999;
  background: #999999;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td, hr, button, article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  margin: 0;
  padding: 0;
}

html, body {
  height: 100%;
  margin: 0;
  padding: 0;
}

button {
  border: none;
  -webkit-tap-hightlight-color: transparent;
  tap-hightlight-color: transparent;
}

input, select, img {
  vertical-align: middle;
}

input, select {
  outline: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}

audio, canvas, video {
  display: inline-block;
  *display: inline;
  *zoom: 1;
}

body, button, input, select, textarea {
  font: 12px/1.5 tahoma, arial, 宋体, sans-serif;
}

input, select, textarea {
  font-size: 100%;
  border: none;
  background: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

th {
  text-align: inherit;
}

fieldset, img {
  border: 0;
}

iframe {
  display: block;
}

abbr, acronym {
  border: 0;
  font-variant: normal;
}

del {
  text-decoration: line-through;
}

address, caption, cite, code, dfn, em, th, var {
  font-style: normal;
  font-weight: 500;
}

/* ie6 7 8(q) bug 显示为行内表现 */
iframe {
  display: block;
}

ol, ul {
  list-style: none;
}

caption, th {
  text-align: left;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: 500;
}

q:before, q:after {
  content: "";
}

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

a:hover {
  text-decoration: underline;
}

ins, a {
  text-decoration: none;
}

/*Correct block display not defined in IE6/7/8/9 & ff3,IE需要在js中createElement(tag)*/
article, aside, details, figcaption, figure, footer, header, hgroup, nav, section, summary {
  display: block;
}

/* HTML5 媒体文件跟 img 保持一致 */
audio, canvas, video {
  display: inline-block;
  *display: inline;
  *zoom: 1;
}

/* global */
body {
  background: #999999;
}

.wrapper {
  margin: 0 auto;
  text-align: left;
  width: 1000px;
}

td {
  font-size: 12px;
  line-height: 160%;
}

.txthide {
  text-indent: -999em;
  overflow: hidden;
  line-height: 0;
  font-size: 0;
}

.clearfix:after {
  visibility: hidden;
  display: block;
  font-size: 0;
  content: " ";
  clear: both;
  height: 0;
}

.clearfix {
  zoom: 1; /* for IE6 IE7 */
}

.hidden {
  display: none !important;
}

.left, .right {
  display: inline;
  zoom: 1;
}

.left {
  float: left;
}

.right {
  float: right;
}

.my_footer {
  margin-top: 0px;
}

a:active, a:focus, input {
  -moz-outline: none;
  outline: none;
  ie-dummy: expression(this.hideFocus=true);
}

a:hover {
  text-decoration: none;
}

.my_footer {
  margin-top: 0;
}

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

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

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

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

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

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

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

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

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

/*@mixin*/
/* 只有展示的按钮 */
/* 渐变 */
/* 描边 */
/* 各类居中 */
/* 默认文字颜色 */
/* 默认文字强调颜色 */
.text_default_em {
  color: #b21000 !important;
}

/* 带背景的文字默认 */
/* 带背景文字强调颜色 */
.text_bg_em {
  color: #c96d00 !important;
}

@property --seed {
  syntax: "<integer>";
  inherits: true;
  initial-value: 0;
}
@keyframes seed {
  from {
    --seed: 0;
  }
  to {
    --seed: 100;
  }
}
/* 雪碧 */
.m-info .info-body, .m-waylist li, .m-gift .count, .mod.mod-6 .img-box, .mod.mod-6 .mod-bd {
  background-image: url(../zhuanti/ssjj2/znq253/release/images/sprite_box.png?c969efb);
  background-repeat: no-repeat;
  background-size: 2411px 740px;
}

.m-info .info-bind, [class~=wg-btn] {
  background-image: url(../zhuanti/ssjj2/znq253/release/images/sprite_btn.png?c969efb);
  background-repeat: no-repeat;
  background-size: 266px 192px;
}

.wg-dialog-select, .wg-dialog .copy-btn, .wg-dialog a.wg-dialog-close, [class|=btn2] {
  background-image: url(../zhuanti/ssjj2/znq253/release/images/sprite_dialog.png?c969efb);
  background-repeat: no-repeat;
  background-size: 399px 113px;
}

.page-hd .hd-group .hd-group-btn, .page-hd .hd-time, .page-hd .hd-btn, .page-hd .hd-logo {
  background-image: url(../zhuanti/ssjj2/znq253/release/images/sprite_head.png?c969efb);
  background-repeat: no-repeat;
  background-size: 883px 116px;
}

.m-lott .lott-prize .prize-prob a, .m-lott .lott-prize .prize, .m-lott .lott-play .lott-info, .m-lott .lott-box .lott-btn, .m-lott {
  background-image: url(../zhuanti/ssjj2/znq253/release/images/sprite_lott.png?c969efb);
  background-repeat: no-repeat;
  background-size: 1308px 830px;
}

.m-lott .lott-play .video-mask, .m-lott .lott-play .img-base, .m-lott .lott-play {
  background-image: url(../zhuanti/ssjj2/znq253/release/images/sprite_lott1.png?c969efb);
  background-repeat: no-repeat;
  background-size: 1286px 438px;
}

.m-palette .item, .m-palette .pic {
  background-image: url(../zhuanti/ssjj2/znq253/release/images/sprite_palette.png?c969efb);
  background-repeat: no-repeat;
  background-size: 318px 110px;
}

.m-more .more-item, .m-specialBenefits .item, .m-gift .txtimg-item .box-info, [class~=wg-btn].btn-prize4, [class~=wg-btn].btn-prize3, [class~=wg-btn].btn-prize2, [class~=wg-btn].btn-prize {
  background-image: url(../zhuanti/ssjj2/znq253/release/images/sprite_prize.png?c969efb);
  background-repeat: no-repeat;
  background-size: 1170px 705px;
}

.m-rule .list li::after, .m-rule .tit {
  background-image: url(../zhuanti/ssjj2/znq253/release/images/sprite_rule.png?c969efb);
  background-repeat: no-repeat;
  background-size: 103px 44px;
}

.m-sign .info, .m-sign .sign-btn {
  background-image: url(../zhuanti/ssjj2/znq253/release/images/sprite_sign.png?c969efb);
  background-repeat: no-repeat;
  background-size: 399px 209px;
}

.m-tasks .task-item::before, .m-tasks .task-item[data-tid="9"] .lnk_txt, .m-tasks .task-item, .m-tasks .task-tit, .m-tasks {
  background-image: url(../zhuanti/ssjj2/znq253/release/images/sprite_task.png?c969efb);
  background-repeat: no-repeat;
  background-size: 986px 830px;
}

[class~=wg-tit] {
  background-image: url(../zhuanti/ssjj2/znq253/release/images/sprite_tit.png?c969efb);
  background-repeat: no-repeat;
  background-size: 1169px 685px;
}

/* 页面模块 */
.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: #f8f8a1;
}

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

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

/* 调整公共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-btn][data-status="2"] {
  cursor: default;
}
[class~=wg-btn][data-status="2"]:hover {
  filter: brightness(1);
}
[class~=wg-btn].btn-prize {
  background-position: -960px -392px;
  width: 180px;
  height: 50px;
  text-align: center;
  font-size: 0;
}
[class~=wg-btn].btn-prize[data-status="1"] {
  background-position: -960px -469px;
  width: 180px;
  height: 50px;
}
[class~=wg-btn].btn-prize[data-status="2"] {
  background-position: -276px -572px;
  width: 180px;
  height: 50px;
}
[class~=wg-btn].btn-prize2 {
  background-position: -960px -392px;
  width: 180px;
  height: 50px;
  text-align: center;
  font-size: 0;
}
[class~=wg-btn].btn-prize2[data-status="1"] {
  background-position: -960px -469px;
  width: 180px;
  height: 50px;
}
[class~=wg-btn].btn-prize2[data-status="2"] {
  background-position: -276px -572px;
  width: 180px;
  height: 50px;
}
[class~=wg-btn].btn-prize3 {
  background-position: -684px -392px;
  width: 266px;
  height: 67px;
  text-align: center;
  font-size: 0;
}
[class~=wg-btn].btn-prize3[data-status="1"] {
  background-position: -684px -469px;
  width: 266px;
  height: 67px;
}
[class~=wg-btn].btn-prize3[data-status="2"] {
  background-position: 0px -572px;
  width: 266px;
  height: 67px;
}
[class~=wg-btn].btn-prize4 {
  background-position: 0px -649px;
  width: 119px;
  height: 56px;
  text-align: center;
  font-size: 0;
}
[class~=wg-btn].btn-prize4[data-status="1"] {
  background-position: -129px -649px;
  width: 119px;
  height: 56px;
}
[class~=wg-btn].btn-prize4[data-status="2"] {
  background-position: -258px -649px;
  width: 119px;
  height: 56px;
}

[class~=wg-tit] {
  font-size: 0;
}
[class~=wg-tit].tit1-1 {
  background-position: 0px -441px;
  width: 1169px;
  height: 95px;
}
[class~=wg-tit].tit1-2 {
  background-position: 0px -546px;
  width: 1169px;
  height: 95px;
}
[class~=wg-tit].tit1-3 {
  background-position: 0px -123px;
  width: 1169px;
  height: 96px;
}
[class~=wg-tit].tit1-4 {
  background-position: 0px -229px;
  width: 1169px;
  height: 96px;
}
[class~=wg-tit].tit1-5 {
  background-position: 0px -335px;
  width: 1169px;
  height: 96px;
}
[class~=wg-tit].tit1-6 {
  background-position: 0px 0px;
  width: 1169px;
  height: 113px;
}

[class~=wg-icon] {
  font-size: 0;
}

[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%;
}

.task-item .task-status {
  display: none;
  transition: opacity 0.3s;
}
.task-item .task-status.task-status-1 {
  display: inline-block;
  cursor: default;
}
.task-item[data-status="2"] .task-status-1 {
  display: none;
}
.task-item[data-status="2"] .task-status-2 {
  display: inline-block;
}
.task-item[data-status="2"] .task-num-box {
  display: inline-block;
}

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

.page-hd {
  position: relative;
  z-index: 1;
  /* logo */
  /* 活动时间 */
  /* 用户信息 */
  /* 分组链接 */
  /* 有时候是整体背景，有时候是单独按钮，具体ui具体调整 */
  /* 这里按照单独 */
}
.page-hd .hd-logo {
  position: absolute;
  top: 20px;
  left: 0;
  font-size: 0;
  background-position: -325px -44px;
  width: 317px;
  height: 57px;
}
.page-hd .hd-btn {
  position: absolute;
  top: 510px;
  left: 442px;
  z-index: 9;
  background-position: 0px 0px;
  width: 315px;
  height: 116px;
  font-size: 0;
}
.page-hd .hd-time {
  position: absolute;
  left: 360px;
  top: 758px;
  /* 与slogan宽一致 */
  text-align: center;
  background-position: -325px 0px;
  width: 558px;
  height: 34px;
  font: 500 16px/34px "microsoft yahei";
  color: #dac1af;
}
.page-hd .hd-info {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 820px;
}
.page-hd .hd-group {
  position: absolute;
  right: 0px;
  top: 22px;
}
.page-hd .hd-group .hd-group-btn {
  background-position: -652px -44px;
  width: 102px;
  height: 32px;
  text-align: center;
  font: 700 14px/32px "microsoft yahei";
  color: #fdd8b1;
  margin-left: 5px;
}

.mod {
  /* 如果遇到超出1200宽的标题 */
  /* 联系设计师或者使用center2x+padding-top */
  margin-top: 60px;
}
.mod .mod-hd-tit {
  margin: 0 auto;
  margin-bottom: 18px;
}
.mod .mod-hd {
  margin-bottom: 25px;
}
.mod .mod-hd .txt {
  text-align: center;
  font: 500 14px/20px "microsoft yahei";
  color: #dac1af;
}
.mod .mod-hd .txt em {
  color: #37c0ef;
}
.mod .mod-hd .ps {
  text-align: center;
  font: 500 14px/32px "microsoft yahei";
  color: #dac1af;
}
.mod .mod-hd .ps em {
  font: 500 14px/32px "microsoft yahei";
  color: #dac1af;
}
.mod .mod-bd {
  font-size: 0;
}
.mod .mod-bd .ps {
  text-align: center;
  font: 500 14px/32px "microsoft yahei";
  color: #dac1af;
}
.mod .mod-bd .ps em {
  font: 500 14px/32px "microsoft yahei";
  color: #dac1af;
}
.mod.mod-1 {
  position: relative;
  z-index: 1;
  margin-top: -150px;
}
.mod.mod-1 .mod-hd {
  margin-bottom: 50px;
}
.mod.mod-1 .mod-bd {
  min-height: 700px;
}
.mod.mod-2 .m-tasks, .mod.mod-2 .m-lott {
  display: inline-block;
  vertical-align: top;
}
.mod.mod-2 .m-lott {
  right: -30px;
}
.mod.mod-2 .m-tasks {
  margin-right: -4px;
}
.mod.mod-2 .m-lottRule {
  margin-top: 20px;
}
.mod.mod-2 .mod-bd {
  min-height: 940px;
}
.mod.mod-3 .m-rank {
  float: left;
}
.mod.mod-3 .m-rankPrize {
  float: right;
}
.mod.mod-3 .m-rule {
  margin-top: 20px;
}
.mod.mod-3 .m-rule .list li {
  width: 100%;
}
.mod.mod-6 .mod-bd {
  background-position: 0px 0px;
  width: 1200px;
  height: 440px;
  padding-top: 35px;
}
.mod.mod-6 .m-znxl {
  padding-left: 510px;
  position: relative;
}
.mod.mod-6 .img-box {
  background-position: 0px -450px;
  width: 450px;
  height: 290px;
  position: absolute;
  top: 40px;
  left: 27px;
}
.mod.mod-6 .img-box img {
  display: block;
  width: 450px;
  height: 290px;
  margin: 0 auto;
}
.mod.mod-6 .ps {
  color: #dac1af;
  margin-top: 20px;
}

.m-rule {
  font-size: 0;
}
.m-rule .tit {
  background-position: 0px 0px;
  width: 103px;
  height: 27px;
  margin-bottom: 16px;
}
.m-rule .list li {
  display: inline-block;
  position: relative;
  padding-left: 15px;
  margin-bottom: 4px;
  width: 60%;
  font: 500 14px/24px "microsoft yahei";
  color: #dac1af;
}
.m-rule .list li em {
  color: #ff9266;
  font-weight: 700;
}
.m-rule .list li::after {
  content: "";
  background-position: 0px -37px;
  width: 4px;
  height: 7px;
  position: absolute;
  left: 0;
  top: 7px;
}
.m-rule .list li:nth-child(2n) {
  width: 40%;
}

.m-gift .count {
  background-position: -1210px -82px;
  width: 1200px;
  height: 46px;
  font: 700 16px/46px "microsoft yahei";
  color: #dac1af;
  margin: 15px auto 25px;
  text-align: left;
  padding-left: 20px;
}
.m-gift .count span {
  color: #ff9266;
}
.m-gift .glb-txtImgList {
  font-size: 0;
  margin-right: -45px;
  text-align: left;
}
.m-gift .txtimg-item {
  display: inline-block;
  margin-right: 20px;
  margin-bottom: 25px;
  text-align: center;
}
.m-gift .txtimg-item .box-info {
  background-position: 0px -392px;
  width: 384px;
  height: 170px;
  overflow: hidden;
  position: relative;
  margin-bottom: 15px;
  padding-top: 28px;
}
.m-gift .txtimg-item .box-info .tit {
  position: absolute;
  left: 0px;
  top: 7px;
  width: 100%;
  height: 26px;
  font: 700 14px/26px "microsoft yahei";
  color: #ff9266;
  text-align: center;
}
.m-gift .txtimg-item .box-info .tit em {
  font: 700 14px/26px "microsoft yahei";
  color: #ff9266;
}
.m-gift .txtimg-item .box-info img {
  display: block;
  margin: 0 auto;
  width: 384px;
  height: 110px;
}
.m-gift .txtimg-item .box-info .name {
  width: 100%;
  padding: 0 10px;
  margin: 0px auto;
  height: 34px;
  text-align: center;
  font: 700 14px/30px "microsoft yahei";
  color: #dac1af;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: inline-block;
  vertical-align: bottom;
  *vertical-align: auto;
}
.m-gift .txtimg-item .item-btn {
  margin: 0 auto;
}

.m-lottPrize .txtimg-item {
  margin-right: 26px;
}
.m-lottPrize .txtimg-item .box-info {
  background-position: -394px -392px;
  width: 280px;
  height: 170px;
}
.m-lottPrize .txtimg-item .box-info img {
  display: block;
  margin: 0 auto;
  width: 280px;
  height: 110px;
}

.m-rechargePrize {
  position: relative;
}
.m-rechargePrize .txtimg-item {
  margin-right: 26px;
}
.m-rechargePrize .txtimg-item .box-info {
  background-position: -394px -392px;
  width: 280px;
  height: 170px;
}
.m-rechargePrize .txtimg-item .box-info img {
  display: block;
  margin: 0 auto;
  width: 280px;
  height: 110px;
}

.m-specialBenefits {
  position: relative;
  height: 475px;
  overflow: hidden;
}
.m-specialBenefits .item {
  background-position: 0px 0px;
  width: 580px;
  height: 382px;
  text-align: center;
  float: left;
  margin-right: 38px;
  padding-top: 20px;
}
.m-specialBenefits .item .tit {
  background-position: -666px -651px;
  width: 169px;
  height: 32px;
  margin: 0 auto 5px;
}
.m-specialBenefits .item .txt {
  font: 500 14px/28px "microsoft yahei";
  color: #dac1af;
}
.m-specialBenefits .item .img-box {
  width: 520px;
  margin: 22px auto 12px;
  height: 246px;
}
.m-specialBenefits .item .name {
  width: 520px;
  height: 36px;
  font: 700 14px/36px "microsoft yahei";
  color: #dac1af;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: inline-block;
  vertical-align: bottom;
  *vertical-align: auto;
}
.m-specialBenefits .item .btn-prize3 {
  margin: 48px auto 0;
}
.m-specialBenefits .item-2 {
  margin-right: 0;
}
.m-specialBenefits .item-2 .tit {
  background-position: 0px -651px;
  width: 294px;
  height: 34px;
}
.m-specialBenefits .btn-qy {
  background-position: 0px -77px;
  width: 266px;
  height: 67px;
  margin: 48px auto 0;
}
.m-specialBenefits .btn-qy[data-status="2"] {
  background-position: 0px 0px;
  width: 266px;
  height: 67px;
}

.m-waylist .tit {
  background-position: -845px -651px;
  width: 129px;
  height: 31px;
}
.m-waylist li {
  background-position: -1210px -138px;
  width: 662px;
  height: 65px;
  margin-top: 10px;
  position: relative;
  padding: 25px 140px 0 260px;
  font: 500 14px/16px "microsoft yahei";
  color: #dac1af;
}
.m-waylist li:nth-child(4) {
  padding-top: 15px;
}
.m-waylist li span {
  position: absolute;
  top: 10px;
  left: 30px;
  font: 700 16px/45px "microsoft yahei";
  color: #ff9266;
}
.m-waylist li span em {
  font-weight: 700;
}
.m-waylist li .btn-prize4 {
  position: absolute;
  top: 6px;
  right: 5px;
}

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

.page-index .bg-out-hd {
  background: url(../zhuanti/ssjj2/znq253/release/images/bg/bg-hd-out_01.jpg?) no-repeat center top;
}
.page-index .bg-hd-1 {
  background: url(../zhuanti/ssjj2/znq253/release/images/bg/bg_01.jpg?c969efb) no-repeat center top;
  height: 248px;
}
.page-index .bg-hd-2 {
  background: url(../zhuanti/ssjj2/znq253/release/images/bg/bg_02.jpg?c969efb) no-repeat center top;
  height: 248px;
}
.page-index .bg-hd-3 {
  background: url(../zhuanti/ssjj2/znq253/release/images/bg/bg_03.jpg?c969efb) no-repeat center top;
  height: 248px;
}
.page-index .bg-hd-4 {
  background: url(../zhuanti/ssjj2/znq253/release/images/bg/bg_04.jpg?c969efb) no-repeat center top;
  height: 248px;
}
.page-index .bg-out-bd {
  background: url(../zhuanti/ssjj2/znq253/release/images/bg/bg-bd-out_01.jpg?) no-repeat center top;
}
.page-index .bg-out-bd .wrap {
  padding: 100px 0 120px;
  background: url(../zhuanti/ssjj2/znq253/release/images/bg/bg-bd-in_01.jpg?) no-repeat center top;
}

@property --welcomeSeed {
  syntax: "<integer>";
  inherits: true;
  initial-value: 0;
}
@keyframes welcomeSeed {
  from {
    --welcomeSeed: 0;
  }
  to {
    --welcomeSeed: 100;
  }
}
#welcome {
  width: 100%;
  height: 100vh;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 999;
  background-color: transparent;
  /* loading */
}
#welcome .welcome-cover {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 100%;
  height: 100%;
  background-color: #fff;
  mask: no-repeat center;
  /* 必须要有linear-gradient(black, black)才能mask-composite: exclude;起效 */
  mask-image: linear-gradient(black, black), url(data:image/png;base64,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);
  mask-composite: exclude;
  mask-composite: source-out;
  mask-size: cover, 0 0;
}
#welcome .welcome-loading {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
#welcome.open .welcome-cover {
  animation: welcomeSeed 1s both;
  mask-size: cover, calc(var(--welcomeSeed) * 2%) calc(var(--welcomeSeed) * 3%);
}

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

.m-info {
  /* 绑定提示文本 */
  /* 自动判断子元素个数 兼容ie9 */
  /* 状态1 一般登陆（未有绑定、未有角色等） */
  /* 状态2 正常状态 */
}
.m-info .info-body {
  padding: 0 60px;
  background-position: -1210px 0px;
  width: 1201px;
  height: 72px;
}
.m-info .login-info {
  float: left;
  text-align: center;
  width: 240px;
  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;
  display: inline-block;
  vertical-align: bottom;
  *vertical-align: auto;
  font: 700 14px/72px "microsoft yahei";
  color: #fdd8b1;
}
.m-info .login-info .user-logout,
.m-info .login-info .user-login,
.m-info .login-info .user-reg {
  font: 700 14px/72px "microsoft yahei";
  color: #fdd8b1;
}
.m-info .login-info .user-logout {
  font: 700 14px/72px "microsoft yahei";
  color: #fdd8b1;
}
.m-info .info-box {
  float: left;
  width: 800px;
  *zoom: 1;
  font: 700 14px/72px "microsoft yahei";
  color: #fdd8b1;
  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: 230px;
}
.m-info .info-bind {
  position: absolute;
  top: 50%;
  margin-top: -19px;
  left: 60px;
  background-position: 0px -154px;
  width: 175px;
  height: 38px;
  font-size: 0;
  line-height: 0;
}
.m-info .info-bind-ps {
  padding-left: 48px;
  color: #fdd8b1;
  *zoom: 1;
  font-weight: 500;
}
.m-info .info-bind-ps:after {
  content: "";
  display: table;
  clear: both;
}
.m-info .info-box-item {
  *zoom: 1;
  text-align: center;
  height: 72px;
  float: left;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: inline-block;
  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(99% / 2);
}
.m-info .info-box-item:first-child:nth-last-child(2) ~ .info-box-item {
  width: calc(99% / 2);
}
.m-info .info-box-item:first-child:nth-last-child(3) {
  width: calc(99% / 3);
}
.m-info .info-box-item:first-child:nth-last-child(3) ~ .info-box-item {
  width: calc(99% / 3);
}
.m-info .info-box-item:first-child:nth-last-child(4) {
  width: calc(99% / 4);
}
.m-info .info-box-item:first-child:nth-last-child(4) ~ .info-box-item {
  width: calc(99% / 4);
}
.m-info .info-box-item:first-child:nth-last-child(5) {
  width: calc(99% / 5);
}
.m-info .info-box-item:first-child:nth-last-child(5) ~ .info-box-item {
  width: calc(99% / 5);
}
.m-info .info-box-item:first-child:nth-last-child(6) {
  width: calc(99% / 6);
}
.m-info .info-box-item:first-child:nth-last-child(6) ~ .info-box-item {
  width: calc(99% / 6);
}
.m-info .info-box-item:first-child:nth-last-child(7) {
  width: calc(99% / 7);
}
.m-info .info-box-item:first-child:nth-last-child(7) ~ .info-box-item {
  width: calc(99% / 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-sign {
  position: relative;
  text-align: center;
  margin: 0 auto;
  margin-bottom: 35px;
}
.m-sign .sign-btn {
  display: inline-block;
  background-position: 0px 0px;
  width: 399px;
  height: 103px;
  vertical-align: top;
  z-index: 9;
  position: relative;
  top: -20px;
  left: -80px;
}
.m-sign .info {
  position: absolute;
  right: 338px;
  top: -19px;
  display: inline-block;
  font: 700 18px/26px "microsoft yahei";
  color: #fe9266;
  background-position: 0px -113px;
  width: 269px;
  height: 96px;
  padding: 12px 0 0 110px;
}
.m-sign .info .num {
  display: inline-block;
  font: 700 42px/46px "microsoft yahei";
  color: #fdd8b1;
  min-width: 40px;
}
.m-sign .status {
  position: absolute;
  left: -75px;
  bottom: -10px;
  width: 100%;
  font: 700 16px/22px "microsoft yahei";
  color: #e03434;
}

.m-tasks {
  background-position: 0px 0px;
  width: 510px;
  height: 830px;
}
.m-tasks .task-tit {
  font-size: 0;
  margin: 10px 0 20px;
}
.m-tasks .task-group-1 .task-tit {
  background-position: -520px -80px;
  width: 136px;
  height: 32px;
}
.m-tasks .task-group-2 {
  margin-top: 20px;
}
.m-tasks .m-bd {
  padding: 10px 18px 0;
}
.m-tasks .task-item {
  position: relative;
  padding: 12px 10px 0 88px;
  z-index: 1;
  background-position: -520px 0px;
  width: 466px;
  height: 70px;
}
.m-tasks .task-item[data-tid="9"] .lnk_txt {
  background-position: -666px -80px;
  width: 93px;
  height: 26px;
  position: absolute;
  font: 500 12px/24px "microsoft yahei";
  color: #fff;
  right: 14px;
  top: 14px;
  text-align: center;
}
.m-tasks .task-item[data-tid="5"], .m-tasks .task-item[data-tid="6"] {
  padding-top: 10px;
}
.m-tasks .task-item[data-tid="5"] .task-txt, .m-tasks .task-item[data-tid="6"] .task-txt {
  line-height: 16px;
}
.m-tasks .task-item[data-tid="5"] .task-txt b, .m-tasks .task-item[data-tid="6"] .task-txt b {
  line-height: 16px;
  font-size: 14px;
}
.m-tasks .task-item .task-txt {
  font: 500 14px/26px "microsoft yahei";
  color: #dac1af;
  display: inline-block;
  *display: inline;
  *zoom: 1;
}
.m-tasks .task-item .task-txt b {
  font: 700 18px/26px "microsoft yahei";
  color: #ff9266;
  display: inline-block;
  *display: inline;
  *zoom: 1;
  margin-right: 5px;
  text-align: center;
}
.m-tasks .task-item .task-txt b em {
  font-size: 14px;
  font-weight: 700;
}
.m-tasks .task-item .task-txt span {
  font: 700 14px/26px "microsoft yahei";
  color: #dac1af;
}
.m-tasks .task-item .task-limit {
  margin: 6px 0 0;
}
.m-tasks .task-item .limit-cont,
.m-tasks .task-item .limit-txt,
.m-tasks .task-item .limit-finish {
  display: inline-block;
  vertical-align: top;
}
.m-tasks .task-item .limit-cont {
  background: #353435;
  width: 210px;
  height: 12px;
  margin-right: 12px;
  overflow: hidden;
  border: solid 1px #606060;
}
.m-tasks .task-item .limit-cont .limit-cur {
  background: #feac64;
  width: 0%;
  height: 100%;
  transition: width 0.3s;
}
.m-tasks .task-item .limit-txt {
  font: 500 14px/16px "microsoft yahei";
  color: #dac1af;
  position: relative;
  top: -1px;
}
.m-tasks .task-item::before {
  display: inline-block;
  *display: inline;
  *zoom: 1;
  position: absolute;
  top: 8px;
  left: 12px;
  content: "";
  background-position: -520px -122px;
  width: 51px;
  height: 58px;
}
.m-tasks .task-item[data-status="2"]::before {
  background-position: -581px -122px;
  width: 51px;
  height: 58px;
}
.m-tasks .task-item + .task-item {
  margin-top: 13px;
}

.m-lott {
  position: relative;
  background-position: 0px 0px;
  width: 660px;
  height: 830px;
  overflow: hidden;
  padding-top: 10px;
}
.m-lott .lott-box {
  position: relative;
  width: 638px;
  margin: 0 auto;
}
.m-lott .lott-box .lott-play {
  margin-bottom: 55px;
}
.m-lott .lott-box .lott-opt {
  text-align: center;
}
.m-lott .lott-box .lott-btn {
  position: relative;
  z-index: 1;
  display: inline-block;
  *display: inline;
  *zoom: 1;
  font-size: 0;
  margin: 0 3px;
}
.m-lott .lott-box .lott-btn[data-num="1"] {
  background-position: -670px -319px;
  width: 324px;
  height: 88px;
}
.m-lott .lott-box .lott-btn[data-num="5"] {
  background-position: -1004px -319px;
  width: 260px;
  height: 88px;
}
.m-lott .lott-play {
  position: relative;
  background-position: 0px 0px;
  width: 638px;
  height: 438px;
}
.m-lott .lott-play .img-base {
  background-position: 0px 0px;
  width: 638px;
  height: 438px;
}
.m-lott .lott-play video {
  width: 638px;
  height: 438px;
  display: none;
  margin: 0 auto;
  object-fit: cover;
  overflow: auto;
  border: 0 none;
  overflow-clip-margin: border-box;
}
.m-lott .lott-play video:focus {
  outline: none;
}
.m-lott .lott-play .video-mask {
  position: absolute;
  top: 0;
  left: 0;
  background-position: -648px 0px;
  width: 638px;
  height: 438px;
}
.m-lott .lott-play img {
  width: 100%;
  height: 100%;
  display: none;
}
.m-lott .lott-play .lott-info {
  background-position: -670px -206px;
  width: 634px;
  height: 103px;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  position: relative;
  z-index: 11;
  bottom: 69px;
  text-align: center;
  font: 700 18px/170px "microsoft yahei";
  color: #dac1af;
  padding-top: 0px;
}
.m-lott .lott-play .lott-info span {
  font: 700 30px/32px "microsoft yahei";
  color: #fdd8b1;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: 50px;
  top: 20px;
}
.m-lott .lott-play .img-mask {
  position: absolute;
  top: 402px;
  width: 100%;
  height: 38px;
  padding: 0 40px;
  z-index: 12;
  font: 500 14px/38px "microsoft yahei";
  color: #ff9266;
}
.m-lott .lott-play .img-mask .tip {
  float: left;
}
.m-lott .lott-play .img-mask .lnk-txt {
  float: right;
  color: #ff9266;
  text-decoration: underline;
}
.m-lott .lott-prize {
  position: relative;
  margin: 26px auto 0;
  width: 638px;
}
.m-lott .lott-prize .prize {
  position: relative;
  background-position: -670px 0px;
  width: 638px;
  height: 196px;
  margin-bottom: 36px;
  cursor: pointer;
}
.m-lott .lott-prize .prize-img {
  display: block;
  margin: 0 auto;
  width: 638px;
  height: 182px;
}
.m-lott .lott-prize .prize-prob {
  position: absolute;
  right: 6px;
  top: 6px;
}
.m-lott .lott-prize .prize-prob a {
  display: inline-block;
  font: 500 14px/33px "microsoft yahei";
  color: #dac1af;
  background-position: -670px -417px;
  width: 173px;
  height: 33px;
  text-align: center;
  padding-left: 25px;
}
.m-lott[data-status="1"] .lott-play video {
  display: block !important;
}
.m-lott[data-status="1"] .lott-play img {
  display: block !important;
}

.m-more {
  position: relative;
  height: 550px;
}
.m-more .more-item {
  position: relative;
  display: inline-block;
  vertical-align: top;
  text-align: center;
  background-position: -590px 0px;
  width: 580px;
  height: 382px;
  padding-top: 15px;
}
.m-more .more-item .tit {
  background-position: -304px -651px;
  width: 172px;
  height: 32px;
  margin: 0 auto 5px;
}
.m-more .more-item .txt {
  font: 500 14px/18px "microsoft yahei";
  color: #dac1af;
  height: 46px;
  padding-top: 15px;
}
.m-more .more-item .txt .txt1 {
  font: 500 14px/18px "microsoft yahei";
  color: #dac1af;
}
.m-more .more-item .prize {
  margin: 10px auto 5px;
  width: 520px;
}
.m-more .more-item .img {
  display: block;
  margin: 0 auto;
  width: 100%;
  height: 204px;
}
.m-more .more-item .name {
  width: 100%;
  height: 36px;
  font: 700 14px/36px "microsoft yahei";
  color: #dac1af;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: inline-block;
  vertical-align: bottom;
  *vertical-align: auto;
}
.m-more .more-item .btn {
  margin: 48px auto 0;
}
.m-more .more-item .link {
  display: block;
  text-align: center;
  margin: 0 auto;
}
.m-more .more-item .link a {
  font: 500 14px/38px "microsoft yahei";
  color: #ff9266;
}
.m-more .more-item .link a:hover {
  color: #ff9266;
  text-decoration: underline;
}
.m-more .more-item-2 {
  margin-left: 40px;
}
.m-more .more-item-2 .tit {
  background-position: -486px -651px;
  width: 170px;
  height: 32px;
}
.m-more .more-item-2 .txt {
  padding-top: 0px;
}
.m-more .more-item-2 .txt span {
  color: #dac1af;
  display: block;
}

/* 主标题色 */
/* 主标题色-重点 */
/* 副标题颜色 */
/* 正文色 */
/* 正文次要色 */
/* 下拉框内未选中字体颜色 */
/* 强调文字(标红) */
/* 链接颜色 */
/* 按钮文字颜色 */
/* 背景色 */
/* 边框色 */
/* 边框宽 */
/* 如果复杂边框 设置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: #fff3e6;
  border: solid 0px #fff3e6;
  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: -160px -42px;
  width: 150px;
  height: 43px;
  font: 500 16px/42px "microsoft yahei";
  color: #ffdeba;
}
[class|=btn2].btn2-com:hover {
  filter: brightness(1.2);
}
[class|=btn2].btn2-com-2 {
  background-position: 0px -42px;
  width: 150px;
  height: 43px;
  font: 500 16px/42px "microsoft yahei";
  color: #ffdeba;
}
[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: 0px -95px;
  width: 18px;
  height: 18px;
  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: #77391b;
  text-align: center;
  text-wrap: balance;
}
.wg-dialog .wg-dialog-tit em {
  font-weight: bold;
  color: #77391b;
}
.wg-dialog .wg-dialog-txt {
  margin-top: 12px;
  font: 500 14px/24px "microsoft yahei";
  color: #000000;
  padding: 0 38px;
}
.wg-dialog .wg-dialog-txt p + p {
  margin-top: 10px;
}
.wg-dialog .wg-dialog-em {
  color: #e64300 !important;
}
.wg-dialog .wg-dialog-stit {
  margin-top: 12px;
  font: 500 14px/16px "microsoft yahei";
  color: #000000;
  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: #000000;
}
.wg-dialog .wg-dialog-list .wg-dialog-item .lnk-txt {
  font: 500 14px/30px "microsoft yahei";
  color: #e64300;
}
.wg-dialog .wg-dialog-item-name {
  display: inline-block;
  width: 50%;
  height: 30px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: inline-block;
  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: #000000;
  /* 输入项系列 */
  /* 下拉项系列 */
}
.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: #999;
  background: #ffffff;
  border: solid 1px #c0c0c0;
  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: #e64300;
}
.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: #e64300;
}
.wg-dialog .wg-dialog-oper .oper-select {
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  font: 500 14px/32px "microsoft yahei";
  color: #fff;
  padding-left: 10px;
}
.wg-dialog .wg-dialog-oper .oper-select option[hidden] {
  color: #000;
}
.wg-dialog .wg-dialog-oper .oper-textarea-label em {
  color: #e64300;
}
.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: #999;
  background: #ffffff;
  border: solid 1px #c0c0c0;
  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: 500 14px/32px "microsoft yahei";
  color: #000000;
  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: #999;
  background: #ffffff;
  border: solid 1px #c0c0c0;
  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: -320px -42px;
  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: #e64300;
  text-align: center;
  margin-top: 12px;
}
.wg-dialog .wg-form-item {
  font: 500 14px/32px "microsoft yahei";
  color: #000000;
  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: #000000;
  background: #ffffff;
  border: solid 1px #c0c0c0;
}
.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: 51%;
  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: #000000;
  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: #e64300;
}
.wg-dialog-table .list-table-td:nth-child(2),
.wg-dialog-mylist .list-table-td:nth-child(2) {
  text-align: right;
  color: #000000;
}
.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: #000000;
}
.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: #000000;
}
.wg-dialog-pager span.cur {
  color: #e64300;
  text-decoration: underline;
  width: 20px;
}
.wg-dialog-pager a:hover {
  color: #e64300;
}
.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: #fff3e6;
  border: none;
  border-bottom: solid 1px #c0c0c0;
  font: 500 14px/24px "microsoft yahei";
  color: #f2a867;
  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: #e64300;
  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: #999;
}

input::-moz-input-placeholder {
  color: #999;
}

input::-ms-input-placeholder {
  color: #999;
}

/* 选服务器 */
.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 #c0c0c0;
  /*提示*/
  /* 文字区域 */
  /* 下拉区域 */
}
.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: #999;
  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 #999 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 #c0c0c0;
  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: #999;
  z-index: 4;
  transition: filter 0.3s;
}
.m_selectlist .m_select_cont .selectlist li a:hover {
  background: #999;
  text-decoration: none;
  color: #ffffff;
  filter: brightness(1.2);
}
.m_selectlist .m_select_cont .selectlist li.cur a {
  background: #999;
  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 #c0c0c0;
}

.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;
}

.wg-dialog-select {
  display: block;
  margin: 0 auto;
  margin-top: 26px;
  /* 不要有默认的下拉箭头UI */
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  border: none;
  background-position: 0px 0px;
  width: 399px;
  height: 32px;
  padding-left: 10px;
  font: 500 14px/32px "microsoft yahei";
  color: #999;
}

.m-palette {
  z-index: 99;
  position: fixed;
  bottom: 200px;
  left: 50%;
  margin-left: 670px;
  right: auto;
  display: none;
  box-sizing: border-box;
  width: 154px;
  /* 因为有可能两者ui不一致 独立 */
}
.m-palette .pic {
  background-position: 0px 0px;
  width: 154px;
  height: 110px;
  margin: 0 0 5px;
  text-align: center;
  padding: 2px;
}
.m-palette .pic img {
  display: block;
  width: 150px;
  height: 106px;
}
.m-palette .bg {
  font-size: 0;
}
.m-palette .item {
  display: block;
  background-position: -164px 0px;
  width: 154px;
  height: 38px;
  font: 700 14px/38px "microsoft yahei";
  color: #dac1af;
  text-align: center;
  margin-bottom: 8px;
}
.m-palette .item:hover, .m-palette .item.cur {
  background-position: -164px -48px;
  width: 154px;
  height: 38px;
  font: 700 14px/38px "microsoft yahei";
  color: #ff9266;
}
.m-palette .back {
  display: block;
  width: 100%;
  font: 700 14px/38px "microsoft yahei";
  color: #dac1af;
  text-align: center;
}
.m-palette .back:hover, .m-palette .back.cur {
  font: 700 14px/38px "microsoft yahei";
  color: #ff9266;
}
.m-palette .back::after {
  content: "";
  width: 0;
  height: 0;
  border-bottom: 4px #ff9266 solid;
  border-left: 4px transparent dashed;
  border-right: 4px transparent dashed;
  display: block;
  margin: 0 auto;
  top: -6px;
  position: relative;
}

.sm_1800 .m-fixedMenu {
  left: 50% !important;
  margin-left: 670px !important;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnNjc3MiLCJjb3JlL19iYXNlLnNjc3MiLCJjb3JlL19taXhpbi5zY3NzIiwiY29yZS9fdmFyaWFibGUuc2NzcyIsImNvcmUvX2FuaW1hdGlvbi5zY3NzIiwic3ByaXRlX2JveC5zY3NzIiwic3ByaXRlX2J0bi5zY3NzIiwic3ByaXRlX2RpYWxvZy5zY3NzIiwic3ByaXRlX2hlYWQuc2NzcyIsInNwcml0ZV9sb3R0LnNjc3MiLCJzcHJpdGVfbG90dDEuc2NzcyIsInNwcml0ZV9wYWxldHRlLnNjc3MiLCJzcHJpdGVfcHJpemUuc2NzcyIsInNwcml0ZV9ydWxlLnNjc3MiLCJzcHJpdGVfc2lnbi5zY3NzIiwic3ByaXRlX3Rhc2suc2NzcyIsInNwcml0ZV90aXQuc2NzcyIsInBhZ2UvZ2xvYmFsLnNjc3MiLCJwYWdlL2luZGV4LnNjc3MiLCJwYWdlL3ZpZXcuc2NzcyIsInBhZ2Uvd2VsY29tZS5zY3NzIiwibW9kL2luZm8uc2NzcyIsIm1vZC9zaWduLnNjc3MiLCJtb2QvdGFza3Muc2NzcyIsIm1vZC9sb3R0LnNjc3MiLCJtb2QvbW9yZS5zY3NzIiwibW9kL3BvcHVwLnNjc3MiLCJtb2QvcGFsZXR0ZS5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQTtBQ0FBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNQTtBQUNBO0VBQUs7RUFBYztFQUFtQjtFQUErQjs7O0FBQ3JFO0VBQXNNO0VBQVM7OztBQUMvTTtFQUNDO0VBQ0E7RUFDQTs7O0FBRUQ7RUFDSTtFQUNBO0VBQ0E7OztBQUlKO0VBQWtCOzs7QUFDbEI7RUFBYzs7O0FBQ2Q7RUFBZ0Y7OztBQUNoRjtFQUFvQjtFQUFzQjtFQUFpQjs7O0FBQzNEO0VBQWtDOzs7QUFDbEM7RUFDSTtFQUNBO0VBQ0E7OztBQUVKO0VBQU07RUFBeUI7OztBQUMvQjtFQUFHOzs7QUFDSDtFQUFhOzs7QUFDYjtFQUFPOzs7QUFDUDtFQUFhO0VBQVM7OztBQUN0QjtFQUFLOzs7QUFDTDtFQUF5QztFQUFrQjs7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SSxZQTlJZDtFQStJYztFQUNBLE9BbEpiO0VBbUphOztBQU9wQjtFQUNJO0VBQ0EsT0E5Sk07RUErSk47RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBLE9BMUtNO0VBMktOO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFJSjtFQUNJO0VBQ0E7OztBQUtKO0VBQ0k7O0FBR0o7RUFDSTtFeEJocUJOO0VBQ0E7RUFDQTtFd0JncUJNO0VBQ0E7O0FBRUE7RUFDSTs7QUFJUjtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBOzs7QUFLSjtFQUNJOztBQUVKO0VBQ0k7OztBQUlSO0VBQ0k7O0FBRUE7RUFDSTs7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7QUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VuQnhzQlk7RUFDQTtFQUNBO0VtQnlzQlo7RXhCbHJCRjtFQUNBLE93QmtyQnVCOzs7QUN4dUJ6QjtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0c7RUFDQTtBQThCSDs7QUE1Qkc7RWhCSFk7RUFDQTtFQUNBO0VnQklSO0VBQ0E7RUFDQTs7QUFDQTtFQUNJO0VBQ0E7RUFDQTs7QUFHUjtFQUNJOztBQUVQO0VBQ0M7RWhCZGM7RUFDQTtFQUNBO0VUaUNkO0VBQ0EsT3lCcERhO0VBa0NQO0VBQ047O0FBQ0E7RWhCZmM7RUFDQTtFQUNBO0VUNEJkO0VBQ0EsT3lCbkRlOztBQTBDaEI7RUFDQztFQUNNO0V6Qk1OO0VBQ0EsT3lCcERhO0VBZ0RQOztBQUNOO0V6QkVBO0VBQ0EsT3lCbkRlOztBQXFEVDtFQUNJO0V6QjREVjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0V5QjlEVTtFQUNBO0VBQ0E7RUFDQTs7O0FBS1o7RUFDQztFQUNBIiwiZmlsZSI6ImluZGV4LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwidXRmLThcIjtcclxuLyog5Z+656GA5qih5Z2XICovXHJcbkBpbXBvcnQgXCJjb3JlL19iYXNlXCI7XHJcbkBpbXBvcnQgXCJjb3JlL19taXhpblwiO1xyXG5AaW1wb3J0IFwiY29yZS9fdmFyaWFibGVcIjtcclxuQGltcG9ydCBcImNvcmUvX2FuaW1hdGlvblwiO1xyXG5cclxuLyog6Zuq56KnICovXHJcbkBpbXBvcnQgXCJpbmRleF9zcHJpdGVcIjtcclxuXHJcbi8qIOmhtemdouaooeWdlyAqL1xyXG5AaW1wb3J0IFwicGFnZS9nbG9iYWxcIjtcclxuQGltcG9ydCBcInBhZ2UvaW5kZXhcIjtcclxuQGltcG9ydCBcInBhZ2Uvdmlld1wiO1xyXG5AaW1wb3J0IFwicGFnZS93ZWxjb21lXCI7XHJcblxyXG4vKiDnu4Tku7YgKi9cclxuIEBpbXBvcnQgXCJtb2QvaW5mb1wiO1xyXG4gQGltcG9ydCBcIm1vZC9zaWduXCI7XHJcbiBAaW1wb3J0IFwibW9kL3Rhc2tzXCI7XHJcbiBAaW1wb3J0IFwibW9kL2xvdHRcIjtcclxuIEBpbXBvcnQgXCJtb2QvbW9yZVwiO1xyXG4gQGltcG9ydCBcIm1vZC9wb3B1cFwiO1xyXG4gQGltcG9ydCBcIm1vZC9wYWxldHRlXCI7IiwiQGNoYXJzZXQgXCJ1dGYtOFwiO1xyXG4vKiBDU1MgRG9jdW1lbnRcclxuRGF0ZTpcdFx0MjAxMy8xMi8yMFxyXG5BdXRob3I6XHRcdOWwj+iKs1xyXG5VcGRhdGU6XHJcbiovXHJcblxyXG4vKiBDU1MgcmVzZXQgKi9cclxuaHRtbHtjb2xvcjojOTk5OTk5O2JhY2tncm91bmQ6Izk5OTk5OTstd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7LW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7fVxyXG5ib2R5LGRpdixkbCxkdCxkZCx1bCxvbCxsaSxoMSxoMixoMyxoNCxoNSxoNixwcmUsY29kZSxmb3JtLGZpZWxkc2V0LGxlZ2VuZCxpbnB1dCx0ZXh0YXJlYSxwLGJsb2NrcXVvdGUsdGgsdGQsaHIsYnV0dG9uLGFydGljbGUsYXNpZGUsZGV0YWlscyxmaWdjYXB0aW9uLGZpZ3VyZSxmb290ZXIsaGVhZGVyLGhncm91cCxtZW51LG5hdixzZWN0aW9uIHttYXJnaW46MDtwYWRkaW5nOjA7fVxyXG5odG1sLGJvZHl7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdG1hcmdpbjowO1xyXG5cdHBhZGRpbmc6IDA7XHJcbn1cclxuYnV0dG9uIHtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIC13ZWJraXQtdGFwLWhpZ2h0bGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgdGFwLWhpZ2h0bGlnaHQtY29sb3I6IHRyYW5zcGFyZW50OyBcclxufVxyXG4gIFxyXG5cclxuaW5wdXQsc2VsZWN0LGltZ3sgdmVydGljYWwtYWxpZ246bWlkZGxlfVxyXG5pbnB1dCxzZWxlY3R7IG91dGxpbmU6bm9uZX1cclxuYXJ0aWNsZSxhc2lkZSxkZXRhaWxzLGZpZ2NhcHRpb24sZmlndXJlLGZvb3RlcixoZWFkZXIsaGdyb3VwLG1lbnUsbmF2LHNlY3Rpb24geyBkaXNwbGF5OmJsb2NrO31cclxuYXVkaW8sY2FudmFzLHZpZGVvIHtkaXNwbGF5OiBpbmxpbmUtYmxvY2s7KmRpc3BsYXk6IGlubGluZTsqem9vbTogMTt9XHJcbmJvZHksYnV0dG9uLGlucHV0LHNlbGVjdCx0ZXh0YXJlYXtmb250OjEycHgvMS41IHRhaG9tYSxhcmlhbCzlrovkvZMsc2Fucy1zZXJpZn1cclxuaW5wdXQsc2VsZWN0LHRleHRhcmVhe1xyXG4gICAgZm9udC1zaXplOjEwMCU7XHJcbiAgICBib3JkZXI6bm9uZTtcclxuICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbn1cclxudGFibGV7Ym9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlO2JvcmRlci1zcGFjaW5nOjA7fVxyXG50aHt0ZXh0LWFsaWduOmluaGVyaXQ7fVxyXG5maWVsZHNldCxpbWd7Ym9yZGVyOjA7fVxyXG5pZnJhbWV7ZGlzcGxheTpibG9jazt9XHJcbmFiYnIsYWNyb255bXtib3JkZXI6MDtmb250LXZhcmlhbnQ6bm9ybWFsO31cclxuZGVsIHt0ZXh0LWRlY29yYXRpb246bGluZS10aHJvdWdoO31cclxuYWRkcmVzcyxjYXB0aW9uLGNpdGUsY29kZSxkZm4sZW0sdGgsdmFyIHtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo1MDA7fVxyXG4vKiBpZTYgNyA4KHEpIGJ1ZyDmmL7npLrkuLrooYzlhoXooajnjrAgKi9cclxuaWZyYW1leyBkaXNwbGF5OmJsb2NrO31cclxuXHJcbm9sLHVsIHtsaXN0LXN0eWxlOm5vbmU7fVxyXG5jYXB0aW9uLHRoIHt0ZXh0LWFsaWduOmxlZnQ7fVxyXG5oMSxoMixoMyxoNCxoNSxoNiB7Zm9udC1zaXplOjEwMCU7Zm9udC13ZWlnaHQ6NTAwO31cclxucTpiZWZvcmUscTphZnRlciB7Y29udGVudDonJzt9XHJcbnN1Yiwgc3VwIHsgZm9udC1zaXplOiA3NSU7IGxpbmUtaGVpZ2h0OiAwOyBwb3NpdGlvbjogcmVsYXRpdmU7IHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTt9XHJcbnN1cCB7dG9wOiAtMC41ZW07fVxyXG5zdWIge2JvdHRvbTogLTAuMjVlbTt9XHJcbmE6aG92ZXIge3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7fVxyXG5pbnMsYSB7dGV4dC1kZWNvcmF0aW9uOm5vbmU7fVxyXG5cclxuLypDb3JyZWN0IGJsb2NrIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUU2LzcvOC85ICYgZmYzLElF6ZyA6KaB5ZyoanPkuK1jcmVhdGVFbGVtZW50KHRhZykqL1xyXG5hcnRpY2xlLGFzaWRlLGRldGFpbHMsZmlnY2FwdGlvbixmaWd1cmUsZm9vdGVyLGhlYWRlcixoZ3JvdXAsbmF2LHNlY3Rpb24sc3VtbWFyeSB7IGRpc3BsYXk6IGJsb2NrO31cclxuXHJcbi8qIEhUTUw1IOWqkuS9k+aWh+S7tui3nyBpbWcg5L+d5oyB5LiA6Ie0ICovXHJcbmF1ZGlvLGNhbnZhcyx2aWRlbyB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsqZGlzcGxheTogaW5saW5lOyp6b29tOiAxO31cclxuXHJcbi8qIGdsb2JhbCAqL1xyXG5ib2R5eyBiYWNrZ3JvdW5kOiM5OTk5OTk7IH1cclxuLndyYXBwZXJ7IG1hcmdpbjowIGF1dG87dGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEwMDBweDsgfVxyXG50ZHsgZm9udC1zaXplOjEycHg7IGxpbmUtaGVpZ2h0OjE2MCU7fVxyXG4udHh0aGlkZXsgdGV4dC1pbmRlbnQ6LTk5OWVtO292ZXJmbG93OmhpZGRlbjsgbGluZS1oZWlnaHQ6MDsgZm9udC1zaXplOjB9XHJcbi5jbGVhcmZpeDphZnRlciB7dmlzaWJpbGl0eTpoaWRkZW47ZGlzcGxheTpibG9jaztmb250LXNpemU6MDtjb250ZW50OlwiIFwiO2NsZWFyOmJvdGg7aGVpZ2h0OjA7fVxyXG4uY2xlYXJmaXgge3pvb206MTsgLyogZm9yIElFNiBJRTcgKi99XHJcbi5oaWRkZW4ge1xyXG5cdGRpc3BsYXk6bm9uZSFpbXBvcnRhbnQ7XHJcbn1cclxuLmxlZnQsLnJpZ2h0IHtkaXNwbGF5OmlubGluZTsgem9vbToxO31cclxuLmxlZnQge2Zsb2F0OmxlZnQ7fVxyXG4ucmlnaHQge2Zsb2F0OnJpZ2h0O31cclxuLm15X2Zvb3RlcnttYXJnaW4tdG9wOiAwcHg7fVxyXG5hOmFjdGl2ZSwgYTpmb2N1cywgaW5wdXR7XHJcblx0LW1vei1vdXRsaW5lOm5vbmU7b3V0bGluZTpub25lO2llLWR1bW15OmV4cHJlc3Npb24odGhpcy5oaWRlRm9jdXM9dHJ1ZSk7XHJcbn1cclxuYTpob3ZlcntcclxuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbn07XHJcbi5teV9mb290ZXJ7XHJcbiAgbWFyZ2luLXRvcDogMDt9XHJcblxyXG5cclxuaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgeyAvKiBXZWJLaXQgYnJvd3NlcnMg6YCC6YWN6LC35q2MICovXHJcbiAgICBjb2xvcjogIzk5OTk5OTtcclxufVxyXG5pbnB1dDotbW96LXBsYWNlaG9sZGVyIHsgLyogTW96aWxsYSBGaXJlZm94IDQgdG8gMTgg6YCC6YWN54Gr54uQICovXHJcbiAgICBjb2xvcjogIzk5OTk5OTtcclxufVxyXG5pbnB1dDo6LW1vei1wbGFjZWhvbGRlciB7IC8qIE1vemlsbGEgRmlyZWZveCAxOSsg6YCC6YWN54Gr54uQICovXHJcbiAgICBjb2xvcjogIzk5OTk5OTtcclxufVxyXG5pbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIgeyAvKiBJbnRlcm5ldCBFeHBsb3JlciAxMCsgIOmAgumFjWllKi9cclxuICAgIGNvbG9yOiAjOTk5OTk5O1xyXG59XHJcblxyXG50ZXh0YXJlYTo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7IC8qIFdlYktpdCBicm93c2VycyDpgILphY3osLfmrYwgKi9cclxuICAgIGNvbG9yOiAjOTk5OTk5O1xyXG59XHJcbnRleHRhcmVhOi1tb3otcGxhY2Vob2xkZXIgeyAvKiBNb3ppbGxhIEZpcmVmb3ggNCB0byAxOCDpgILphY3ngavni5AgKi9cclxuICAgIGNvbG9yOiAjOTk5OTk5O1xyXG59XHJcbnRleHRhcmVhOjotbW96LXBsYWNlaG9sZGVyIHsgLyogTW96aWxsYSBGaXJlZm94IDE5KyDpgILphY3ngavni5AgKi9cclxuICAgIGNvbG9yOiAjOTk5OTk5O1xyXG59XHJcbnRleHRhcmVhOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IC8qIEludGVybmV0IEV4cGxvcmVyIDEwKyAg6YCC6YWNaWUqL1xyXG4gICAgY29sb3I6ICM5OTk5OTk7XHJcbn1cclxuXHJcbmlucHV0OmZvY3VzLCB0ZXh0YXJlYTpmb2N1cyB7XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG59IiwiLypAbWl4aW4qL1xyXG5AbWl4aW4gY2xlYXJmaXgge1xyXG4gICp6b29tOiAxO1xyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIGRpc3BsYXk6IHRhYmxlO1xyXG4gICAgY2xlYXI6IGJvdGg7XHJcbiAgfVxyXG59XHJcbkBtaXhpbiBiZmMge1xyXG4gICY6YmVmb3JlLFxyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIGRpc3BsYXk6IHRhYmxlO1xyXG4gIH1cclxufVxyXG5AbWl4aW4gZWxsaXBzaXMge1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcclxuICAqdmVydGljYWwtYWxpZ246IGF1dG87XHJcbn1cclxuXHJcbkBtaXhpbiBpbmxpbmUtYmxvY2t7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICpkaXNwbGF5OiBpbmxpbmU7XHJcbiAgKnpvb206MTtcclxufVxyXG5cclxuLyog5Y+q5pyJ5bGV56S655qE5oyJ6ZKuICovXHJcbkBtaXhpbiBvbmx5QnRuIHtcclxuICAgIGN1cnNvcjogZGVmYXVsdDtcclxuICAgICY6aG92ZXJ7XHJcbiAgICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDEpO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gb25seUJ0bkNsaWNrIHtcclxuICAgIGN1cnNvcjpwb2ludGVyO1xyXG4gICAgJjpob3ZlcntcclxuICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMS4yKTtcclxuICAgIH1cclxufVxyXG5cclxuQG1peGluIGJiZm9udCgkc2l6ZSwgJGxpbmVIZWlnaHQsJGNvbG9yKSB7XHJcbiAgICBmb250OiA5MDAgcHgoJHNpemUpL3B4KCRsaW5lSGVpZ2h0KSBcIm1pY3Jvc29mdCB5YWhlaVwiO1xyXG4gICAgY29sb3I6JGNvbG9yO1xyXG59XHJcblxyXG5AbWl4aW4gYmZvbnQoJHNpemUsICRsaW5lSGVpZ2h0LCRjb2xvcikge1xyXG4gIGZvbnQ6IDcwMCBweCgkc2l6ZSkvcHgoJGxpbmVIZWlnaHQpIFwibWljcm9zb2Z0IHlhaGVpXCI7XHJcbiAgY29sb3I6JGNvbG9yO1xyXG5cclxufVxyXG5AbWl4aW4gbGZvbnQoJHNpemUsICRsaW5lSGVpZ2h0LCRjb2xvcikge1xyXG4gIGZvbnQ6IDUwMCBweCgkc2l6ZSkvcHgoJGxpbmVIZWlnaHQpIFwibWljcm9zb2Z0IHlhaGVpXCI7XHJcbiAgY29sb3I6JGNvbG9yO1xyXG59XHJcblxyXG5AbWl4aW4gYm9yZGVyUmFkaXVzKCR4KSB7XHJcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAkeDtcclxuICAtbW96LWJvcmRlci1yYWRpdXM6ICR4O1xyXG4gIC1vLWJvcmRlci1yYWRpdXM6ICR4O1xyXG4gIC1tcy1ib3JkZXItcmFkaXVzOiAkeDtcclxuICBib3JkZXItcmFkaXVzOiAkeDtcclxufVxyXG5cclxuQG1peGluIHRyaWFuZ2xlKCR3LCRjb2xvcjEpIHtcclxuICB3aWR0aDogMDtcclxuICBoZWlnaHQ6IDA7XHJcbiAgYm9yZGVyOiAkdyBzb2xpZCAkY29sb3IxO1xyXG59XHJcblxyXG5AbWl4aW4gYm9yZGVyUmFkaXVzLWx0KCR4KSB7XHJcbiAgLXdlYmtpdC1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkeDtcclxuICAtbW96LWJvcmRlci1yYWRpdXMtdG9wbGVmdDogJHg7XHJcbiAgLW8tYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHg7XHJcbiAgLW1zLWJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICR4O1xyXG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICR4O1xyXG59XHJcblxyXG5AbWl4aW4gYm9yZGVyUmFkaXVzLXJ0KCR4KSB7XHJcbiAgLXdlYmtpdC1ib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHg7XHJcbiAgLW1vei1ib3JkZXItcmFkaXVzLXRvcHJpZ2h0OiAkeDtcclxuICAtby1ib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHg7XHJcbiAgLW1zLWJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkeDtcclxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHg7XHJcbn1cclxuXHJcbkBtaXhpbiBib3JkZXJSYWRpdXMtbGIoJHgpIHtcclxuICAtd2Via2l0LWJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICR4O1xyXG4gIC1tb3otYm9yZGVyLXJhZGl1cy1ib3R0b21sZWZ0OiAkeDtcclxuICAtby1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkeDtcclxuICAtbXMtYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHg7XHJcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHg7XHJcbn1cclxuXHJcbkBtaXhpbiBib3JkZXJSYWRpdXMtcmIoJHgpIHtcclxuICAtd2Via2l0LWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkeDtcclxuICAtbW96LWJvcmRlci1yYWRpdXMtYm90dG9tcmlnaHQ6ICR4O1xyXG4gIC1vLWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkeDtcclxuICAtbXMtYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICR4O1xyXG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkeDtcclxufVxyXG5cclxuQG1peGluIHRyaWFuZ2xldCgkd3QsJHdsLCR3ciwkY29sb3IpIHtcclxuICB3aWR0aDogMDtcclxuICBoZWlnaHQ6IDA7XHJcbiAgYm9yZGVyLXRvcDogJHd0ICRjb2xvciBzb2xpZDtcclxuICBib3JkZXItbGVmdDogJHdsIHRyYW5zcGFyZW50IGRhc2hlZDtcclxuICBib3JkZXItcmlnaHQ6ICR3ciB0cmFuc3BhcmVudCBkYXNoZWQ7XHJcbn1cclxuXHJcbkBtaXhpbiB0cmlhbmdsZWIoJHdiLCR3bCwkd3IsJGNvbG9yKSB7XHJcbiAgd2lkdGg6IDA7XHJcbiAgaGVpZ2h0OiAwO1xyXG4gIGJvcmRlci1ib3R0b206ICR3YiAkY29sb3Igc29saWQ7XHJcbiAgYm9yZGVyLWxlZnQ6ICR3bCB0cmFuc3BhcmVudCBkYXNoZWQ7XHJcbiAgYm9yZGVyLXJpZ2h0OiAkd3IgdHJhbnNwYXJlbnQgZGFzaGVkO1xyXG59XHJcblxyXG5AbWl4aW4gdHJpYW5nbGVsKCR3bCwkd3QsJHdiLCRjb2xvcikge1xyXG4gIHdpZHRoOiAwO1xyXG4gIGhlaWdodDogMDtcclxuICBib3JkZXItbGVmdDogJHdsICRjb2xvciBzb2xpZDtcclxuICBib3JkZXItdG9wOiAkd3QgdHJhbnNwYXJlbnQgZGFzaGVkO1xyXG4gIGJvcmRlci1ib3R0b206ICR3YiB0cmFuc3BhcmVudCBkYXNoZWQ7XHJcbn1cclxuXHJcbkBtaXhpbiB0cmlhbmdsZXIoJHdyLCR3dCwkd2IsJGNvbG9yKSB7XHJcbiAgd2lkdGg6IDA7XHJcbiAgaGVpZ2h0OiAwO1xyXG4gIGJvcmRlci1ib3R0b206ICR3YiB0cmFuc3BhcmVudCBkYXNoZWQ7XHJcbiAgYm9yZGVyLXJpZ2h0OiAkd3IgJGNvbG9yIHNvbGlkO1xyXG4gIGJvcmRlci10b3A6ICR3dCB0cmFuc3BhcmVudCBkYXNoZWQ7XHJcbn1cclxuXHJcbi8qIOa4kOWPmCAqL1xyXG5AbWl4aW4gYnRuX3R4dF9ncmFkaWVudCgkdG9wQ29sb3IsJGJvdHRvbUNvbG9yKXtcclxuICAgIHNwYW57XHJcbiAgICAgIGNvbG9yOiAkdG9wQ29sb3I7XHJcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCAwIDAsIDAgYm90dG9tLCBmcm9tKCR0b3BDb2xvciksIHRvKCRib3R0b21Db2xvcikpO1xyXG4gICAgICAtd2Via2l0LWJhY2tncm91bmQtY2xpcDp0ZXh0O1xyXG4gICAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjp0cmFuc3BhcmVudDtcclxuICAgIH1cclxuICB9XHJcbiAgXHJcbi8qIOaPj+i+uSAqL1xyXG5AbWl4aW4gc3Ryb2tlX2IoJHNpemUsICRsaW5lSGVpZ2h0LCAkY29sb3IsJHN0cm9rZSwkc3Ryb2tlQ29sb3IpIHtcclxuXHRAaW5jbHVkZSBiZm9udCgkc2l6ZSwgJGxpbmVIZWlnaHQsICRjb2xvcik7XHJcblx0ei1pbmRleDogMDtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0Jjo6YmVmb3JlIHtcclxuXHRcdGNvbnRlbnQ6IGF0dHIoZGF0YS10ZXh0KTtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdC13ZWJraXQtdGV4dC1zdHJva2U6IHB4KCRzdHJva2UpICRzdHJva2VDb2xvcjtcclxuXHRcdHotaW5kZXg6IC0xO1xyXG5cdH1cclxufVxyXG5AbWl4aW4gc3Ryb2tlX2woJHNpemUsICRsaW5lSGVpZ2h0LCAkY29sb3IsJHN0cm9rZSwkc3Ryb2tlQ29sb3IpIHtcclxuXHRAaW5jbHVkZSBsZm9udCgkc2l6ZSwgJGxpbmVIZWlnaHQsICRjb2xvcik7XHJcblx0ei1pbmRleDogMDtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0Jjo6YmVmb3JlIHtcclxuXHRcdGNvbnRlbnQ6IGF0dHIoZGF0YS10ZXh0KTtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0bGVmdDogMDtcclxuXHRcdC13ZWJraXQtdGV4dC1zdHJva2U6IHB4KCRzdHJva2UpICRzdHJva2VDb2xvcjtcclxuXHRcdHotaW5kZXg6IC0xO1xyXG5cdH1cclxufVxyXG5cclxuLyog5ZCE57G75bGF5LitICovXHJcbkBtaXhpbiBjZW50ZXIxIHtcclxuICBtYXJnaW46IDAgYXV0bztcclxufVxyXG5cclxuQG1peGluIGNlbnRlcjIge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBsZWZ0OiA1MCU7XHJcbiAgdG9wOiA1MCU7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbn1cclxuXHJcbkBtaXhpbiBjZW50ZXIyWCB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGxlZnQ6IDUwJTtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcbn1cclxuXHJcbkBtaXhpbiBjZW50ZXIyWSB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogNTAlO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxufVxyXG5cclxuQGZ1bmN0aW9uIHB4KCRzaXplKXtcclxuICBAcmV0dXJuICRzaXplICsgcHhcclxufVxyXG5cclxuXHJcblxyXG4iLCJAY2hhcnNldCBcInV0Zi04XCI7XHJcblxyXG4vKiDpu5jorqTmloflrZfpopzoibIgKi9cclxuJGNvbG9yX3RleHRfZGVmYXVsdDojZjhmOGExO1xyXG5cclxuLyog6buY6K6k5paH5a2X5by66LCD6aKc6ImyICovXHJcbiRjb2xvcl90ZXh0X2RlZmF1bHRfZW06I2IyMTAwMDtcclxuLnRleHRfZGVmYXVsdF9lbXtcclxuXHRjb2xvcjogJGNvbG9yX3RleHRfZGVmYXVsdF9lbSFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8qIOW4puiDjOaZr+eahOaWh+Wtl+m7mOiupCAqL1xyXG4kY29sb3JfdGV4dF9iZzojZmRmZGVlO1xyXG5cclxuLyog5bim6IOM5pmv5paH5a2X5by66LCD6aKc6ImyICovXHJcbiRjb2xvcl90ZXh0X2JnX2VtOiNjOTZkMDA7XHJcbi50ZXh0X2JnX2Vte1xyXG5cdGNvbG9yOiAkY29sb3JfdGV4dF9iZ19lbSFpbXBvcnRhbnQ7XHJcbn1cclxuIiwiQHByb3BlcnR5IC0tc2VlZCB7XHJcbiAgICBzeW50YXg6IFwiPGludGVnZXI+XCI7XHJcbiAgICBpbmhlcml0czogdHJ1ZTtcclxuICAgIGluaXRpYWwtdmFsdWU6IDA7XHJcbiAgfVxyXG4gIFxyXG4gIEBrZXlmcmFtZXMgc2VlZCB7XHJcbiAgICBmcm9tIHsgLS1zZWVkOiAwOyB9XHJcbiAgICB0byB7IC0tc2VlZDogMTAwOyB9XHJcbiAgfSIsIi8vIFNDU1MgdmFyaWFibGVzIGFyZSBpbmZvcm1hdGlvbiBhYm91dCBpY29uJ3MgY29tcGlsZWQgc3RhdGUsIHN0b3JlZCB1bmRlciBpdHMgb3JpZ2luYWwgZmlsZSBuYW1lXG4vL1xuLy8gLmljb24taG9tZSB7XG4vLyAgIHdpZHRoOiAkaWNvbi1ob21lLXdpZHRoO1xuLy8gfVxuLy9cbi8vIFRoZSBsYXJnZSBhcnJheS1saWtlIHZhcmlhYmxlcyBjb250YWluIGFsbCBpbmZvcm1hdGlvbiBhYm91dCBhIHNpbmdsZSBpY29uXG4vLyAkaWNvbi1ob21lOiB4IHkgb2Zmc2V0X3ggb2Zmc2V0X3kgd2lkdGggaGVpZ2h0IHRvdGFsX3dpZHRoIHRvdGFsX2hlaWdodCBpbWFnZV9wYXRoO1xuLy9cbi8vIEF0IHRoZSBib3R0b20gb2YgdGhpcyBzZWN0aW9uLCB3ZSBwcm92aWRlIGluZm9ybWF0aW9uIGFib3V0IHRoZSBzcHJpdGVzaGVldCBpdHNlbGZcbi8vICRzcHJpdGVzaGVldDogd2lkdGggaGVpZ2h0IGltYWdlICRzcHJpdGVzaGVldC1zcHJpdGVzO1xuICAgICAgICAgICAgQG1peGluIGJveC1pbmZvIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KC0xMjEwKSBweCgwKTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBweCgxMjAxKTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogcHgoNzIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBtaXhpbiBib3gtem5xLXByaXplIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KDApIHB4KC00NTApO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDQ1MCk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDI5MCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQG1peGluIGJveC16bnEge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoMCkgcHgoMCk7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHgoMTIwMCk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDQ0MCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQG1peGluIGxvdHRfZ2lmdEluZm8ge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoLTEyMTApIHB4KC04Mik7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHgoMTIwMCk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDQ2KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAbWl4aW4gem5xLWl0ZW0td2F5IHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KC0xMjEwKSBweCgtMTM4KTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBweCg2NjIpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCg2NSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAlc3ByaXRlX2JveCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvc3ByaXRlX2JveC5wbmcpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IHB4KDI0MTEpIHB4KDc0MCk7XHJcbiAgICAgICAgfVxyXG5cblxuIiwiLy8gU0NTUyB2YXJpYWJsZXMgYXJlIGluZm9ybWF0aW9uIGFib3V0IGljb24ncyBjb21waWxlZCBzdGF0ZSwgc3RvcmVkIHVuZGVyIGl0cyBvcmlnaW5hbCBmaWxlIG5hbWVcbi8vXG4vLyAuaWNvbi1ob21lIHtcbi8vICAgd2lkdGg6ICRpY29uLWhvbWUtd2lkdGg7XG4vLyB9XG4vL1xuLy8gVGhlIGxhcmdlIGFycmF5LWxpa2UgdmFyaWFibGVzIGNvbnRhaW4gYWxsIGluZm9ybWF0aW9uIGFib3V0IGEgc2luZ2xlIGljb25cbi8vICRpY29uLWhvbWU6IHggeSBvZmZzZXRfeCBvZmZzZXRfeSB3aWR0aCBoZWlnaHQgdG90YWxfd2lkdGggdG90YWxfaGVpZ2h0IGltYWdlX3BhdGg7XG4vL1xuLy8gQXQgdGhlIGJvdHRvbSBvZiB0aGlzIHNlY3Rpb24sIHdlIHByb3ZpZGUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHNwcml0ZXNoZWV0IGl0c2VsZlxuLy8gJHNwcml0ZXNoZWV0OiB3aWR0aCBoZWlnaHQgaW1hZ2UgJHNwcml0ZXNoZWV0LXNwcml0ZXM7XG4gICAgICAgICAgICBAbWl4aW4gYnRuLXF5LTIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoMCkgcHgoMCk7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHgoMjY2KTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogcHgoNjcpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBtaXhpbiBidG4tcXkge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoMCkgcHgoLTc3KTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBweCgyNjYpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCg2Nyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQG1peGluIGJ0bl9iaW5kIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KDApIHB4KC0xNTQpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDE3NSk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDM4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICVzcHJpdGVfYnRuIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9zcHJpdGVfYnRuLnBuZyk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogcHgoMjY2KSBweCgxOTIpO1xyXG4gICAgICAgIH1cclxuXG5cbiIsIi8vIFNDU1MgdmFyaWFibGVzIGFyZSBpbmZvcm1hdGlvbiBhYm91dCBpY29uJ3MgY29tcGlsZWQgc3RhdGUsIHN0b3JlZCB1bmRlciBpdHMgb3JpZ2luYWwgZmlsZSBuYW1lXG4vL1xuLy8gLmljb24taG9tZSB7XG4vLyAgIHdpZHRoOiAkaWNvbi1ob21lLXdpZHRoO1xuLy8gfVxuLy9cbi8vIFRoZSBsYXJnZSBhcnJheS1saWtlIHZhcmlhYmxlcyBjb250YWluIGFsbCBpbmZvcm1hdGlvbiBhYm91dCBhIHNpbmdsZSBpY29uXG4vLyAkaWNvbi1ob21lOiB4IHkgb2Zmc2V0X3ggb2Zmc2V0X3kgd2lkdGggaGVpZ2h0IHRvdGFsX3dpZHRoIHRvdGFsX2hlaWdodCBpbWFnZV9wYXRoO1xuLy9cbi8vIEF0IHRoZSBib3R0b20gb2YgdGhpcyBzZWN0aW9uLCB3ZSBwcm92aWRlIGluZm9ybWF0aW9uIGFib3V0IHRoZSBzcHJpdGVzaGVldCBpdHNlbGZcbi8vICRzcHJpdGVzaGVldDogd2lkdGggaGVpZ2h0IGltYWdlICRzcHJpdGVzaGVldC1zcHJpdGVzO1xuICAgICAgICAgICAgQG1peGluIGRpYWxvZ19idG4ge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoMCkgcHgoLTQyKTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBweCgxNTApO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCg0Myk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQG1peGluIGRpYWxvZ19idG5fY29weSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBweCgtMzIwKSBweCgtNDIpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDU2KTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogcHgoMzIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBtaXhpbiBkaWFsb2dfYnRuX2VtIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KC0xNjApIHB4KC00Mik7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHgoMTUwKTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogcHgoNDMpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBtaXhpbiBkaWFsb2dfY2xvc2Uge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoMCkgcHgoLTk1KTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBweCgxOCk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDE4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAbWl4aW4gZGlhbG9nX3NlbGVjdCB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBweCgwKSBweCgwKTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBweCgzOTkpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCgzMik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAlc3ByaXRlX2RpYWxvZyB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvc3ByaXRlX2RpYWxvZy5wbmcpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IHB4KDM5OSkgcHgoMTEzKTtcclxuICAgICAgICB9XHJcblxuXG4iLCIvLyBTQ1NTIHZhcmlhYmxlcyBhcmUgaW5mb3JtYXRpb24gYWJvdXQgaWNvbidzIGNvbXBpbGVkIHN0YXRlLCBzdG9yZWQgdW5kZXIgaXRzIG9yaWdpbmFsIGZpbGUgbmFtZVxuLy9cbi8vIC5pY29uLWhvbWUge1xuLy8gICB3aWR0aDogJGljb24taG9tZS13aWR0aDtcbi8vIH1cbi8vXG4vLyBUaGUgbGFyZ2UgYXJyYXktbGlrZSB2YXJpYWJsZXMgY29udGFpbiBhbGwgaW5mb3JtYXRpb24gYWJvdXQgYSBzaW5nbGUgaWNvblxuLy8gJGljb24taG9tZTogeCB5IG9mZnNldF94IG9mZnNldF95IHdpZHRoIGhlaWdodCB0b3RhbF93aWR0aCB0b3RhbF9oZWlnaHQgaW1hZ2VfcGF0aDtcbi8vXG4vLyBBdCB0aGUgYm90dG9tIG9mIHRoaXMgc2VjdGlvbiwgd2UgcHJvdmlkZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgc3ByaXRlc2hlZXQgaXRzZWxmXG4vLyAkc3ByaXRlc2hlZXQ6IHdpZHRoIGhlaWdodCBpbWFnZSAkc3ByaXRlc2hlZXQtc3ByaXRlcztcbiAgICAgICAgICAgIEBtaXhpbiBoZF9saW5rX2J0biB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBweCgtNjUyKSBweCgtNDQpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDEwMik7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDMyKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAbWl4aW4gaGRfbG9nbyB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBweCgtMzI1KSBweCgtNDQpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDMxNyk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDU3KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAbWl4aW4gaGRfbWFpbl9idG4ge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoMCkgcHgoMCk7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHgoMzE1KTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogcHgoMTE2KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAbWl4aW4gaGRfdGltZSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBweCgtMzI1KSBweCgwKTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBweCg1NTgpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCgzNCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAlc3ByaXRlX2hlYWQge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3Nwcml0ZV9oZWFkLnBuZyk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogcHgoODgzKSBweCgxMTYpO1xyXG4gICAgICAgIH1cclxuXG5cbiIsIi8vIFNDU1MgdmFyaWFibGVzIGFyZSBpbmZvcm1hdGlvbiBhYm91dCBpY29uJ3MgY29tcGlsZWQgc3RhdGUsIHN0b3JlZCB1bmRlciBpdHMgb3JpZ2luYWwgZmlsZSBuYW1lXG4vL1xuLy8gLmljb24taG9tZSB7XG4vLyAgIHdpZHRoOiAkaWNvbi1ob21lLXdpZHRoO1xuLy8gfVxuLy9cbi8vIFRoZSBsYXJnZSBhcnJheS1saWtlIHZhcmlhYmxlcyBjb250YWluIGFsbCBpbmZvcm1hdGlvbiBhYm91dCBhIHNpbmdsZSBpY29uXG4vLyAkaWNvbi1ob21lOiB4IHkgb2Zmc2V0X3ggb2Zmc2V0X3kgd2lkdGggaGVpZ2h0IHRvdGFsX3dpZHRoIHRvdGFsX2hlaWdodCBpbWFnZV9wYXRoO1xuLy9cbi8vIEF0IHRoZSBib3R0b20gb2YgdGhpcyBzZWN0aW9uLCB3ZSBwcm92aWRlIGluZm9ybWF0aW9uIGFib3V0IHRoZSBzcHJpdGVzaGVldCBpdHNlbGZcbi8vICRzcHJpdGVzaGVldDogd2lkdGggaGVpZ2h0IGltYWdlICRzcHJpdGVzaGVldC1zcHJpdGVzO1xuICAgICAgICAgICAgQG1peGluIGxvdHRfYnRuXzEge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoLTY3MCkgcHgoLTMxOSk7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHgoMzI0KTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogcHgoODgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBtaXhpbiBsb3R0X2J0bl81IHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KC0xMDA0KSBweCgtMzE5KTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBweCgyNjApO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCg4OCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQG1peGluIGxvdHRfaW5mbyB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBweCgtNjcwKSBweCgtMjA2KTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBweCg2MzQpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCgxMDMpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBtaXhpbiBsb3R0X211bCB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBweCgwKSBweCgwKTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBweCg2NjApO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCg4MzApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBtaXhpbiBsb3R0X3ByaXplIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KC02NzApIHB4KDApO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDYzOCk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDE5Nik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQG1peGluIGxvdHRfcHJvYiB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBweCgtNjcwKSBweCgtNDE3KTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBweCgxNzMpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCgzMyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAlc3ByaXRlX2xvdHQge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3Nwcml0ZV9sb3R0LnBuZyk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogcHgoMTMwOCkgcHgoODMwKTtcclxuICAgICAgICB9XHJcblxuXG4iLCIvLyBTQ1NTIHZhcmlhYmxlcyBhcmUgaW5mb3JtYXRpb24gYWJvdXQgaWNvbidzIGNvbXBpbGVkIHN0YXRlLCBzdG9yZWQgdW5kZXIgaXRzIG9yaWdpbmFsIGZpbGUgbmFtZVxuLy9cbi8vIC5pY29uLWhvbWUge1xuLy8gICB3aWR0aDogJGljb24taG9tZS13aWR0aDtcbi8vIH1cbi8vXG4vLyBUaGUgbGFyZ2UgYXJyYXktbGlrZSB2YXJpYWJsZXMgY29udGFpbiBhbGwgaW5mb3JtYXRpb24gYWJvdXQgYSBzaW5nbGUgaWNvblxuLy8gJGljb24taG9tZTogeCB5IG9mZnNldF94IG9mZnNldF95IHdpZHRoIGhlaWdodCB0b3RhbF93aWR0aCB0b3RhbF9oZWlnaHQgaW1hZ2VfcGF0aDtcbi8vXG4vLyBBdCB0aGUgYm90dG9tIG9mIHRoaXMgc2VjdGlvbiwgd2UgcHJvdmlkZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgc3ByaXRlc2hlZXQgaXRzZWxmXG4vLyAkc3ByaXRlc2hlZXQ6IHdpZHRoIGhlaWdodCBpbWFnZSAkc3ByaXRlc2hlZXQtc3ByaXRlcztcbiAgICAgICAgICAgIEBtaXhpbiBsb3R0X2JnIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KDApIHB4KDApO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDYzOCk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDQzOCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQG1peGluIHZpZGVvLW1hc2sge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoLTY0OCkgcHgoMCk7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHgoNjM4KTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogcHgoNDM4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICVzcHJpdGVfbG90dDEge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3Nwcml0ZV9sb3R0MS5wbmcpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IHB4KDEyODYpIHB4KDQzOCk7XHJcbiAgICAgICAgfVxyXG5cblxuIiwiLy8gU0NTUyB2YXJpYWJsZXMgYXJlIGluZm9ybWF0aW9uIGFib3V0IGljb24ncyBjb21waWxlZCBzdGF0ZSwgc3RvcmVkIHVuZGVyIGl0cyBvcmlnaW5hbCBmaWxlIG5hbWVcbi8vXG4vLyAuaWNvbi1ob21lIHtcbi8vICAgd2lkdGg6ICRpY29uLWhvbWUtd2lkdGg7XG4vLyB9XG4vL1xuLy8gVGhlIGxhcmdlIGFycmF5LWxpa2UgdmFyaWFibGVzIGNvbnRhaW4gYWxsIGluZm9ybWF0aW9uIGFib3V0IGEgc2luZ2xlIGljb25cbi8vICRpY29uLWhvbWU6IHggeSBvZmZzZXRfeCBvZmZzZXRfeSB3aWR0aCBoZWlnaHQgdG90YWxfd2lkdGggdG90YWxfaGVpZ2h0IGltYWdlX3BhdGg7XG4vL1xuLy8gQXQgdGhlIGJvdHRvbSBvZiB0aGlzIHNlY3Rpb24sIHdlIHByb3ZpZGUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHNwcml0ZXNoZWV0IGl0c2VsZlxuLy8gJHNwcml0ZXNoZWV0OiB3aWR0aCBoZWlnaHQgaW1hZ2UgJHNwcml0ZXNoZWV0LXNwcml0ZXM7XG4gICAgICAgICAgICBAbWl4aW4gcGFsZXR0ZV9pbWcge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoMCkgcHgoMCk7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHgoMTU0KTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogcHgoMTEwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAbWl4aW4gcGFsZXR0ZV9pdGVtIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KC0xNjQpIHB4KDApO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDE1NCk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDM4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAbWl4aW4gcGFsZXR0ZV9pdGVtX2N1ciB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBweCgtMTY0KSBweCgtNDgpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDE1NCk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDM4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICVzcHJpdGVfcGFsZXR0ZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvc3ByaXRlX3BhbGV0dGUucG5nKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBweCgzMTgpIHB4KDExMCk7XHJcbiAgICAgICAgfVxyXG5cblxuIiwiLy8gU0NTUyB2YXJpYWJsZXMgYXJlIGluZm9ybWF0aW9uIGFib3V0IGljb24ncyBjb21waWxlZCBzdGF0ZSwgc3RvcmVkIHVuZGVyIGl0cyBvcmlnaW5hbCBmaWxlIG5hbWVcbi8vXG4vLyAuaWNvbi1ob21lIHtcbi8vICAgd2lkdGg6ICRpY29uLWhvbWUtd2lkdGg7XG4vLyB9XG4vL1xuLy8gVGhlIGxhcmdlIGFycmF5LWxpa2UgdmFyaWFibGVzIGNvbnRhaW4gYWxsIGluZm9ybWF0aW9uIGFib3V0IGEgc2luZ2xlIGljb25cbi8vICRpY29uLWhvbWU6IHggeSBvZmZzZXRfeCBvZmZzZXRfeSB3aWR0aCBoZWlnaHQgdG90YWxfd2lkdGggdG90YWxfaGVpZ2h0IGltYWdlX3BhdGg7XG4vL1xuLy8gQXQgdGhlIGJvdHRvbSBvZiB0aGlzIHNlY3Rpb24sIHdlIHByb3ZpZGUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHNwcml0ZXNoZWV0IGl0c2VsZlxuLy8gJHNwcml0ZXNoZWV0OiB3aWR0aCBoZWlnaHQgaW1hZ2UgJHNwcml0ZXNoZWV0LXNwcml0ZXM7XG4gICAgICAgICAgICBAbWl4aW4gYnRuX3ByaXplMl8wIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KDApIHB4KC02NDkpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDExOSk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDU2KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAbWl4aW4gYnRuX3ByaXplMl8xIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KC0xMjkpIHB4KC02NDkpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDExOSk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDU2KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAbWl4aW4gYnRuX3ByaXplMl8yIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KC0yNTgpIHB4KC02NDkpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDExOSk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDU2KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAbWl4aW4gYnRuX3ByaXplM18wIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KC02ODQpIHB4KC0zOTIpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDI2Nik7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDY3KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAbWl4aW4gYnRuX3ByaXplM18xIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KC02ODQpIHB4KC00NjkpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDI2Nik7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDY3KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAbWl4aW4gYnRuX3ByaXplM18yIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KDApIHB4KC01NzIpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDI2Nik7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDY3KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAbWl4aW4gYnRuX3ByaXplXzAge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoLTk2MCkgcHgoLTM5Mik7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHgoMTgwKTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogcHgoNTApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBtaXhpbiBidG5fcHJpemVfMSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBweCgtOTYwKSBweCgtNDY5KTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBweCgxODApO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCg1MCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQG1peGluIGJ0bl9wcml6ZV8yIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KC0yNzYpIHB4KC01NzIpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDE4MCk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDUwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAbWl4aW4gcHJpemVfYm94XzEge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoMCkgcHgoLTM5Mik7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHgoMzg0KTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogcHgoMTcwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAbWl4aW4gcHJpemVfYm94XzIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoLTM5NCkgcHgoLTM5Mik7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHgoMjgwKTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogcHgoMTcwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAbWl4aW4gcHJpemVfYm94XzQge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoMCkgcHgoMCk7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHgoNTgwKTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogcHgoMzgyKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAbWl4aW4gcHJpemVfYm94XzUge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoLTU5MCkgcHgoMCk7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHgoNTgwKTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogcHgoMzgyKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICVzcHJpdGVfcHJpemUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3Nwcml0ZV9wcml6ZS5wbmcpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IHB4KDExNzApIHB4KDcwNSk7XHJcbiAgICAgICAgfVxyXG5cblxuIiwiLy8gU0NTUyB2YXJpYWJsZXMgYXJlIGluZm9ybWF0aW9uIGFib3V0IGljb24ncyBjb21waWxlZCBzdGF0ZSwgc3RvcmVkIHVuZGVyIGl0cyBvcmlnaW5hbCBmaWxlIG5hbWVcbi8vXG4vLyAuaWNvbi1ob21lIHtcbi8vICAgd2lkdGg6ICRpY29uLWhvbWUtd2lkdGg7XG4vLyB9XG4vL1xuLy8gVGhlIGxhcmdlIGFycmF5LWxpa2UgdmFyaWFibGVzIGNvbnRhaW4gYWxsIGluZm9ybWF0aW9uIGFib3V0IGEgc2luZ2xlIGljb25cbi8vICRpY29uLWhvbWU6IHggeSBvZmZzZXRfeCBvZmZzZXRfeSB3aWR0aCBoZWlnaHQgdG90YWxfd2lkdGggdG90YWxfaGVpZ2h0IGltYWdlX3BhdGg7XG4vL1xuLy8gQXQgdGhlIGJvdHRvbSBvZiB0aGlzIHNlY3Rpb24sIHdlIHByb3ZpZGUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIHNwcml0ZXNoZWV0IGl0c2VsZlxuLy8gJHNwcml0ZXNoZWV0OiB3aWR0aCBoZWlnaHQgaW1hZ2UgJHNwcml0ZXNoZWV0LXNwcml0ZXM7XG4gICAgICAgICAgICBAbWl4aW4gcnVsZV9kb3Qge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoMCkgcHgoLTM3KTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBweCg0KTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogcHgoNyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQG1peGluIHJ1bGVfdGl0IHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KDApIHB4KDApO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDEwMyk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDI3KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICVzcHJpdGVfcnVsZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvc3ByaXRlX3J1bGUucG5nKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBweCgxMDMpIHB4KDQ0KTtcclxuICAgICAgICB9XHJcblxuXG4iLCIvLyBTQ1NTIHZhcmlhYmxlcyBhcmUgaW5mb3JtYXRpb24gYWJvdXQgaWNvbidzIGNvbXBpbGVkIHN0YXRlLCBzdG9yZWQgdW5kZXIgaXRzIG9yaWdpbmFsIGZpbGUgbmFtZVxuLy9cbi8vIC5pY29uLWhvbWUge1xuLy8gICB3aWR0aDogJGljb24taG9tZS13aWR0aDtcbi8vIH1cbi8vXG4vLyBUaGUgbGFyZ2UgYXJyYXktbGlrZSB2YXJpYWJsZXMgY29udGFpbiBhbGwgaW5mb3JtYXRpb24gYWJvdXQgYSBzaW5nbGUgaWNvblxuLy8gJGljb24taG9tZTogeCB5IG9mZnNldF94IG9mZnNldF95IHdpZHRoIGhlaWdodCB0b3RhbF93aWR0aCB0b3RhbF9oZWlnaHQgaW1hZ2VfcGF0aDtcbi8vXG4vLyBBdCB0aGUgYm90dG9tIG9mIHRoaXMgc2VjdGlvbiwgd2UgcHJvdmlkZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgc3ByaXRlc2hlZXQgaXRzZWxmXG4vLyAkc3ByaXRlc2hlZXQ6IHdpZHRoIGhlaWdodCBpbWFnZSAkc3ByaXRlc2hlZXQtc3ByaXRlcztcbiAgICAgICAgICAgIEBtaXhpbiBidG4tc2lnbiB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBweCgwKSBweCgwKTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBweCgzOTkpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCgxMDMpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBtaXhpbiBzaWduLW51bSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBweCgwKSBweCgtMTEzKTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBweCgyNjkpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCg5Nik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAlc3ByaXRlX3NpZ24ge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3Nwcml0ZV9zaWduLnBuZyk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogcHgoMzk5KSBweCgyMDkpO1xyXG4gICAgICAgIH1cclxuXG5cbiIsIi8vIFNDU1MgdmFyaWFibGVzIGFyZSBpbmZvcm1hdGlvbiBhYm91dCBpY29uJ3MgY29tcGlsZWQgc3RhdGUsIHN0b3JlZCB1bmRlciBpdHMgb3JpZ2luYWwgZmlsZSBuYW1lXG4vL1xuLy8gLmljb24taG9tZSB7XG4vLyAgIHdpZHRoOiAkaWNvbi1ob21lLXdpZHRoO1xuLy8gfVxuLy9cbi8vIFRoZSBsYXJnZSBhcnJheS1saWtlIHZhcmlhYmxlcyBjb250YWluIGFsbCBpbmZvcm1hdGlvbiBhYm91dCBhIHNpbmdsZSBpY29uXG4vLyAkaWNvbi1ob21lOiB4IHkgb2Zmc2V0X3ggb2Zmc2V0X3kgd2lkdGggaGVpZ2h0IHRvdGFsX3dpZHRoIHRvdGFsX2hlaWdodCBpbWFnZV9wYXRoO1xuLy9cbi8vIEF0IHRoZSBib3R0b20gb2YgdGhpcyBzZWN0aW9uLCB3ZSBwcm92aWRlIGluZm9ybWF0aW9uIGFib3V0IHRoZSBzcHJpdGVzaGVldCBpdHNlbGZcbi8vICRzcHJpdGVzaGVldDogd2lkdGggaGVpZ2h0IGltYWdlICRzcHJpdGVzaGVldC1zcHJpdGVzO1xuICAgICAgICAgICAgQG1peGluIHRhc2tfYmcge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoMCkgcHgoMCk7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHgoNTEwKTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogcHgoODMwKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAbWl4aW4gdGFza19nb19saW5rIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KC02NjYpIHB4KC04MCk7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHgoOTMpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCgyNik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQG1peGluIHRhc2tfaWNvbl90aWNrXzEge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoLTUyMCkgcHgoLTEyMik7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHgoNTEpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCg1OCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQG1peGluIHRhc2tfaWNvbl90aWNrXzIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoLTU4MSkgcHgoLTEyMik7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHgoNTEpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCg1OCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQG1peGluIHRhc2tfaXRlbSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBweCgtNTIwKSBweCgwKTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBweCg0NjYpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCg3MCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQG1peGluIHRhc2tfdGl0XzEge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoLTUyMCkgcHgoLTgwKTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBweCgxMzYpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCgzMik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAlc3ByaXRlX3Rhc2sge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3Nwcml0ZV90YXNrLnBuZyk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogcHgoOTg2KSBweCg4MzApO1xyXG4gICAgICAgIH1cclxuXG5cbiIsIi8vIFNDU1MgdmFyaWFibGVzIGFyZSBpbmZvcm1hdGlvbiBhYm91dCBpY29uJ3MgY29tcGlsZWQgc3RhdGUsIHN0b3JlZCB1bmRlciBpdHMgb3JpZ2luYWwgZmlsZSBuYW1lXG4vL1xuLy8gLmljb24taG9tZSB7XG4vLyAgIHdpZHRoOiAkaWNvbi1ob21lLXdpZHRoO1xuLy8gfVxuLy9cbi8vIFRoZSBsYXJnZSBhcnJheS1saWtlIHZhcmlhYmxlcyBjb250YWluIGFsbCBpbmZvcm1hdGlvbiBhYm91dCBhIHNpbmdsZSBpY29uXG4vLyAkaWNvbi1ob21lOiB4IHkgb2Zmc2V0X3ggb2Zmc2V0X3kgd2lkdGggaGVpZ2h0IHRvdGFsX3dpZHRoIHRvdGFsX2hlaWdodCBpbWFnZV9wYXRoO1xuLy9cbi8vIEF0IHRoZSBib3R0b20gb2YgdGhpcyBzZWN0aW9uLCB3ZSBwcm92aWRlIGluZm9ybWF0aW9uIGFib3V0IHRoZSBzcHJpdGVzaGVldCBpdHNlbGZcbi8vICRzcHJpdGVzaGVldDogd2lkdGggaGVpZ2h0IGltYWdlICRzcHJpdGVzaGVldC1zcHJpdGVzO1xuICAgICAgICAgICAgQG1peGluIHRpdF8xIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KDApIHB4KC00NDEpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDExNjkpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCg5NSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQG1peGluIHRpdF8yIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KDApIHB4KC01NDYpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDExNjkpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCg5NSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQG1peGluIHRpdF8zIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KDApIHB4KC0xMjMpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDExNjkpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCg5Nik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQG1peGluIHRpdF80LTEge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoLTY2NikgcHgoLTY1MSk7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHgoMTY5KTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogcHgoMzIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBtaXhpbiB0aXRfNC0yIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KDApIHB4KC02NTEpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDI5NCk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDM0KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAbWl4aW4gdGl0XzQge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoMCkgcHgoLTIyOSk7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHgoMTE2OSk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDk2KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAbWl4aW4gdGl0XzUtMSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBweCgtMzA0KSBweCgtNjUxKTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBweCgxNzIpO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCgzMik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQG1peGluIHRpdF81LTIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoLTQ4NikgcHgoLTY1MSk7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHgoMTcwKTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogcHgoMzIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBtaXhpbiB0aXRfNSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBweCgwKSBweCgtMzM1KTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBweCgxMTY5KTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogcHgoOTYpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBtaXhpbiB0aXRfNi0xIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHB4KC04NDUpIHB4KC02NTEpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDEyOSk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDMxKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAbWl4aW4gdGl0XzYge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcHgoMCkgcHgoMCk7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogcHgoMTE2OSk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDExMyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAlc3ByaXRlX3RpdCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvc3ByaXRlX3RpdC5wbmcpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IHB4KDExNjkpIHB4KDY4NSk7XHJcbiAgICAgICAgfVxyXG5cblxuIiwiQGNoYXJzZXQgXCJ1dGYtOFwiO1xyXG5cclxuLm15X2ZidG0ge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLmRqLWJvZHkge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuXHJcbi5wYWdlLWZ0e1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRib3R0b206MDtcclxuXHRsZWZ0OiAwO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0QGluY2x1ZGUgYmZvbnQoMTQsMjgsJGNvbG9yX3RleHRfZGVmYXVsdCk7XHJcbn1cclxuXHJcbi8qIOe7k+aehOWxguasoSAqL1xyXG4vKiBzZWN0aW9uLW1vZC1mdW4tYm94ICovXHJcblxyXG4vKiBtb2QgKi9cclxuLyog5rS75Yqo5qih5Z2XICovXHJcblxyXG5cclxuLyog5YW35L2T5Yqf6IO95qih5Z2XICovXHJcblxyXG4ubXlfdG9wYmFye1xyXG5cdG1pbi13aWR0aDogMTIwMHB4O1xyXG59XHJcbi8qIOS4remXtOWMuuWfnyAt5YW35L2T6aG16Z2i5pyJ5Y+v6IO95LiN5LiA5qC3Ki9cclxuLndyYXAge1xyXG5cdG1hcmdpbjogMCBhdXRvO1xyXG5cdHdpZHRoOiBweCgxMjAwKTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0Ly8gb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHQqem9vbTogMTtcclxufVxyXG5cclxuLyog6LCD5pW05YWs5YWxZm9vdGVy5qC35byPICovXHJcblxyXG4vKiDlhazlhbF1aSDkvb/nlKh3Z+S9nOS4uuagh+W/l+S9v+eUqOW8leWFpSzmj5DkvpvkuIDkupvlhazlhbHnmoTooYzkuLp1aSAqL1xyXG5bY2xhc3N+PVwid2ctYnRuXCJdIHtcclxuXHQvKiDmjInpkq7kuI3kuIDlrprkvb/nlKjmjInpkq7pm6rnoqfvvIzlhbfkvZPov5jmmK/opoHnnIvlhoXlrrnvvIzmlL7lnKjlkITkuKrlhbfkvZPmoLflvI/lhoUgKi9cclxuXHRAZXh0ZW5kICVzcHJpdGVfYnRuO1xyXG5cdHRyYW5zaXRpb246IGZpbHRlciAwLjNzLCBjb2xvciAwLjNzO1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGZvbnQtc2l6ZTogMDtcclxuICAgIGxpbmUtaGVpZ2h0OiAwO1xyXG5cdCY6aG92ZXJ7XHJcblx0XHRmaWx0ZXI6IGJyaWdodG5lc3MoMS4yKTtcclxuXHR9XHJcbiAgICAmW2RhdGEtc3RhdHVzPVwiMlwiXXtcclxuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcbiAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDEpO1xyXG4gICAgICAgIH0gICAgXHJcbiAgICB9XHJcbiAgICAmLmJ0bi1wcml6ZXtcclxuICAgICAgICBAZXh0ZW5kICVzcHJpdGVfcHJpemU7XHJcbiAgICAgICAgQGluY2x1ZGUgYnRuX3ByaXplXzA7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMDtcclxuICAgICAgICAmW2RhdGEtc3RhdHVzPVwiMVwiXXtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnRuX3ByaXplXzE7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZbZGF0YS1zdGF0dXM9XCIyXCJde1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBidG5fcHJpemVfMjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLmJ0bi1wcml6ZTJ7XHJcbiAgICAgICAgQGV4dGVuZCAlc3ByaXRlX3ByaXplO1xyXG4gICAgICAgIEBpbmNsdWRlIGJ0bl9wcml6ZV8wO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBmb250LXNpemU6IDA7XHJcbiAgICAgICAgJltkYXRhLXN0YXR1cz1cIjFcIl17XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ0bl9wcml6ZV8xO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmW2RhdGEtc3RhdHVzPVwiMlwiXXtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnRuX3ByaXplXzI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5idG4tcHJpemUze1xyXG4gICAgICAgIEBleHRlbmQgJXNwcml0ZV9wcml6ZTtcclxuICAgICAgICBAaW5jbHVkZSBidG5fcHJpemUzXzA7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMDtcclxuICAgICAgICAmW2RhdGEtc3RhdHVzPVwiMVwiXXtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnRuX3ByaXplM18xO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmW2RhdGEtc3RhdHVzPVwiMlwiXXtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnRuX3ByaXplM18yO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICAgJi5idG4tcHJpemU0e1xyXG4gICAgICAgIEBleHRlbmQgJXNwcml0ZV9wcml6ZTtcclxuICAgICAgICBAaW5jbHVkZSBidG5fcHJpemUyXzA7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMDtcclxuICAgICAgICAmW2RhdGEtc3RhdHVzPVwiMVwiXXtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnRuX3ByaXplMl8xO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmW2RhdGEtc3RhdHVzPVwiMlwiXXtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnRuX3ByaXplMl8yO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5bY2xhc3N+PVwid2ctdGl0XCJdIHtcclxuXHRAZXh0ZW5kICVzcHJpdGVfdGl0O1xyXG5cdGZvbnQtc2l6ZTogMDtcclxuICAgICYudGl0MS0xe1xyXG4gICAgICAgIEBpbmNsdWRlIHRpdF8xO1xyXG4gICAgfVxyXG4gICAgJi50aXQxLTJ7XHJcbiAgICAgICAgQGluY2x1ZGUgdGl0XzI7XHJcbiAgICB9XHJcbiAgICAmLnRpdDEtM3tcclxuICAgICAgICBAaW5jbHVkZSB0aXRfMztcclxuICAgIH1cclxuICAgICYudGl0MS00e1xyXG4gICAgICAgIEBpbmNsdWRlIHRpdF80O1xyXG4gICAgfVxyXG4gICAgJi50aXQxLTV7XHJcbiAgICAgICAgQGluY2x1ZGUgdGl0XzU7XHJcbiAgICB9XHJcbiAgICAmLnRpdDEtNntcclxuICAgICAgICBAaW5jbHVkZSB0aXRfNjtcclxuICAgIH1cclxuICBcclxufVxyXG5bY2xhc3N+PVwid2ctaWNvblwiXSB7XHJcblx0Ly9AZXh0ZW5kICVzcHJpdGVfaWNvbjtcclxuXHRmb250LXNpemU6IDA7XHJcbn1cclxuW2NsYXNzfj1cIndnLWJveC1iZ1wiXSB7XHJcblx0Ly9AZXh0ZW5kICVzcHJpdGVfYm94O1xyXG59XHJcblxyXG5bY2xhc3N+PVwid2ctaW1nXCJdIHtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdGltZ3tcclxuXHRcdHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzO1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdGhlaWdodDogMTAwJTtcclxuXHR9XHJcblx0Jjpob3ZlcntcclxuXHRcdGltZ3tcclxuXHRcdFx0dHJhbnNmb3JtOiBzY2FsZSgxLjIpO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLmltZy1ib3h7XHJcbiAgICBpbWd7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdH1cclxufVxyXG5cclxuLnRhc2staXRlbSB7XHJcbiAgICAudGFzay1zdGF0dXMge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcblx0XHR0cmFuc2l0aW9uOiBvcGFjaXR5IC4zcztcclxuICAgICAgICAmLnRhc2stc3RhdHVzLTEge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmW2RhdGEtc3RhdHVzPVwiMlwiXSB7XHJcbiAgICAgICAgLnRhc2stc3RhdHVzLTEge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICAudGFzay1zdGF0dXMtMiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICB9XHJcbiAgICAgICAgLnRhc2stbnVtLWJveCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4vKiDljZXpobktLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuIiwiQGNoYXJzZXQgXCJ1dGYtOFwiO1xyXG5cclxuLyog6IOM5pmvICovXHJcbi5teV9mYnRtIHtcclxuICAgIGJhY2tncm91bmQ6ICMxZjIwMWM7XHJcbiAgICAqe1xyXG5cdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHR9XHJcbn1cclxuXHJcblxyXG4ucGFnZS1oZCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgLyogbG9nbyAqL1xyXG4gICAgLmhkLWxvZ297XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogcHgoMjApO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgZm9udC1zaXplOiAwO1xyXG4gICAgICAgIEBleHRlbmQgJXNwcml0ZV9oZWFkO1xyXG4gICAgICAgIEBpbmNsdWRlIGhkX2xvZ287XHJcbiAgICB9XHJcbiAgICAuaGQtYnRue1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IHB4KDUxMCk7XHJcbiAgICAgICAgbGVmdDogcHgoNDQyKTtcclxuICAgICAgICB6LWluZGV4OiA5O1xyXG4gICAgICAgIEBleHRlbmQgJXNwcml0ZV9oZWFkO1xyXG4gICAgICAgIEBpbmNsdWRlIGhkX21haW5fYnRuO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMDtcclxuICAgIH1cclxuXHJcbiAgICAvKiDmtLvliqjml7bpl7QgKi9cclxuICAgIC5oZC10aW1le1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBsZWZ0OnB4KDM2MCk7XHJcbiAgICAgICAgdG9wOiBweCg3NTgpO1xyXG4gICAgICAgIC8qIOS4jnNsb2dhbuWuveS4gOiHtCAqL1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBAZXh0ZW5kICVzcHJpdGVfaGVhZDtcclxuICAgICAgICBAaW5jbHVkZSBoZF90aW1lO1xyXG4gICAgICAgIEBpbmNsdWRlIGxmb250KDE2LDM0LCNkYWMxYWYpO1xyXG4gICAgfVxyXG4gICBcclxuICAgIC8qIOeUqOaIt+S/oeaBryAqL1xyXG4gICAgLmhkLWluZm97XHJcbiAgICAgICAgQGluY2x1ZGUgY2VudGVyMlg7XHJcbiAgICAgICAgdG9wOiBweCg4MjApO1xyXG4gICAgfVxyXG4gICAgLyog5YiG57uE6ZO+5o6lICovXHJcbiAgICAvKiDmnInml7blgJnmmK/mlbTkvZPog4zmma/vvIzmnInml7blgJnmmK/ljZXni6zmjInpkq7vvIzlhbfkvZN1aeWFt+S9k+iwg+aVtCAqL1xyXG4gICAgLyog6L+Z6YeM5oyJ54Wn5Y2V54usICovXHJcbiAgICAuaGQtZ3JvdXB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHJpZ2h0OiBweCgwKTtcclxuICAgICAgICB0b3A6IHB4KDIyKTtcclxuICAgICAgICAuaGQtZ3JvdXAtYnRue1xyXG4gICAgICAgICAgICBAZXh0ZW5kICVzcHJpdGVfaGVhZDtcclxuICAgICAgICAgICAgQGluY2x1ZGUgaGRfbGlua19idG47XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYmZvbnQoMTQsMzIsI2ZkZDhiMSk7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBweCg1KTtcclxuXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbkBtaXhpbiBwcyB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBAaW5jbHVkZSBsZm9udCgxNCwzMiwjZGFjMWFmKTtcclxuICAgIGVte1xyXG4gICAgICAgIEBpbmNsdWRlIGxmb250KDE0LDMyLCNkYWMxYWYpO1xyXG4gICAgfVxyXG59XHJcblxyXG4ubW9ke1xyXG4gICAgLyog5aaC5p6c6YGH5Yiw6LaF5Ye6MTIwMOWuveeahOagh+mimCAqL1xyXG4gICAgLyog6IGU57O76K6+6K6h5biI5oiW6ICF5L2/55SoY2VudGVyMngrcGFkZGluZy10b3AgKi9cclxuICAgIG1hcmdpbi10b3A6IHB4KDYwKTtcclxuICAgIC5tb2QtaGQtdGl0e1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHB4KDE4KTtcclxuICAgIH1cclxuICAgIC5tb2QtaGR7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcHgoMjUpO1xyXG4gICAgICAgIC50eHR7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbGZvbnQoMTQsMjAsI2RhYzFhZik7XHJcbiAgICAgICAgICAgIGVte1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICMzN2MwZWY7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnBze1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBwcztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAubW9kLWJke1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMDtcclxuICAgICAgICAucHN7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHBzO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLm1vZC0xe1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHB4KC0xNTApO1xyXG4gICAgICAgIC5tb2QtaGR7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHB4KDUwKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLm1vZC1iZHtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogcHgoNzAwKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLm1vZC0ye1xyXG4gICAgICAgIC8vIG1hcmdpbi1ib3R0b206IHB4KDYyKTtcclxuICAgICAgICAubS10YXNrcywubS1sb3R0e1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5tLWxvdHR7XHJcbiAgICAgICAgICAgIHJpZ2h0OiBweCgtMzApO1xyXG4gICAgICAgIH1cclxuICAgICAgICAubS10YXNrc3tcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBweCgtNCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5tLWxvdHRSdWxle1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBweCgyMCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubW9kLWJke1xyXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiBweCg5NDApO1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgIH1cclxuICAgICYubW9kLTN7XHJcbiAgICAgICAgLm0tcmFua3tcclxuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5tLXJhbmtQcml6ZXtcclxuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICAgIH1cclxuICAgICAgICAubS1ydWxle1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBweCgyMCk7XHJcbiAgICAgICAgICAgIC5saXN0e1xyXG4gICAgICAgICAgICAgICAgbGl7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLm1vZC02e1xyXG4gICAgICAgIC5tb2QtYmR7XHJcbiAgICAgICAgICAgQGV4dGVuZCAgJXNwcml0ZV9ib3g7XHJcbiAgICAgICAgICAgQGluY2x1ZGUgYm94LXpucTtcclxuICAgICAgICAgICBwYWRkaW5nLXRvcDogcHgoMzUpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAubS16bnhse1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHB4KDUxMCk7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmltZy1ib3h7XHJcbiAgICAgICAgICAgIEBleHRlbmQgICVzcHJpdGVfYm94O1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBib3gtem5xLXByaXplO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogcHgoNDApO1xyXG4gICAgICAgICAgICBsZWZ0OiBweCgyNyk7XHJcbiAgICAgICAgICAgIGltZ3tcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDQ1MCk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDI5MCk7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAucHN7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZGFjMWFmO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBweCgyMCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ubS1ydWxle1xyXG4gICAgZm9udC1zaXplOiAwO1xyXG4gICAgLnRpdHtcclxuICAgICAgICBAZXh0ZW5kICVzcHJpdGVfcnVsZTtcclxuICAgICAgICBAaW5jbHVkZSBydWxlX3RpdDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiBweCgxNik7XHJcbiAgICB9XHJcbiAgICAubGlzdHtcclxuICAgICAgICBsaXtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogcHgoMTUpO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiA2MCU7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGxmb250KDE0LDI0LCNkYWMxYWYpO1xyXG4gICAgICAgICAgICBlbXtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmY5MjY2O1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOjphZnRlcntcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgQGV4dGVuZCAlc3ByaXRlX3J1bGU7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydWxlX2RvdDtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICB0b3A6IHB4KDcpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDJuKXtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA0MCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG4ubS1naWZ0IHtcclxuICAgICAuY291bnR7XHJcbiAgICAgICAgQGV4dGVuZCAlc3ByaXRlX2JveDtcclxuICAgICAgICBAaW5jbHVkZSBsb3R0X2dpZnRJbmZvO1xyXG4gICAgICAgIEBpbmNsdWRlIGJmb250KDE2LDQ2LCNkYWMxYWYpO1xyXG4gICAgICAgIG1hcmdpbjogcHgoMTUpIGF1dG8gIHB4KDI1KTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogcHgoMjApO1xyXG4gICAgICAgIHNwYW57XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZmY5MjY2O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5nbGItdHh0SW1nTGlzdCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAwO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogcHgoLTQ1KTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgfVxyXG4gICAgLnR4dGltZy1pdGVtIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBweCgyMCApO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHB4KDI1KTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgLmJveC1pbmZvIHtcclxuICAgICAgICAgICAgQGV4dGVuZCAlc3ByaXRlX3ByaXplO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBwcml6ZV9ib3hfMTtcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBweCgxNSk7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiBweCgyOCk7XHJcbiAgICAgICAgICAgIC50aXQge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogcHgoMCk7XHJcbiAgICAgICAgICAgICAgICB0b3A6IHB4KDcpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDI2KTtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJmb250KDE0LCAyNiwgI2ZmOTI2Nik7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBlbXtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBiZm9udCgxNCwgMjYsICNmZjkyNjYpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDM4NCk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDExMCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLm5hbWUge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIHB4KDEwKTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogcHgoMCkgYXV0bztcclxuICAgICAgICAgICAgICAgIGhlaWdodDogcHgoMzQpO1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYmZvbnQoMTQsIDMwLCAjZGFjMWFmKTtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGVsbGlwc2lzO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5pdGVtLWJ0biB7XHJcbiAgICAgICAgICAgbWFyZ2luOiAgMCAgYXV0b1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4ubS1sb3R0UHJpemV7XHJcbiAgICAgIC50eHRpbWctaXRlbSB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBweCgyNik7XHJcbiAgICAgICAgLmJveC1pbmZvIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgcHJpemVfYm94XzI7XHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDI4MCk7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHB4KDExMCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi5tLXJlY2hhcmdlUHJpemV7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAudHh0aW1nLWl0ZW0ge1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogcHgoMjYpO1xyXG4gICAgICAgIC5ib3gtaW5mbyB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHByaXplX2JveF8yO1xyXG4gICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBweCgyODApO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBweCgxMTApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICB9XHJcbiAgICBcclxuICAgIH1cclxufVxyXG4ubS1zcGVjaWFsQmVuZWZpdHN7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBoZWlnaHQ6IHB4KDQ3NSk7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgLml0ZW17XHJcbiAgICAgICAgQGV4dGVuZCAlc3ByaXRlX3ByaXplO1xyXG4gICAgICAgIEBpbmNsdWRlIHByaXplX2JveF80O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IHB4KDM4KTtcclxuICAgICAgICBwYWRkaW5nLXRvcDogcHgoMjApO1xyXG4gICAgICAgIC50aXR7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHRpdF80LTE7XHJcbiAgICAgICAgICAgIG1hcmdpbjogIDAgYXV0byAgcHgoNSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC50eHR7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGxmb250KDE0LDI4LCNkYWMxYWYpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuaW1nLWJveHtcclxuICAgICAgICAgICAgd2lkdGg6IHB4KDUyMCk7XHJcbiAgICAgICAgICAgIG1hcmdpbjogcHgoMjIpIGF1dG8gcHgoMTIpO1xyXG4gICAgICAgICAgICAgaGVpZ2h0OiBweCgyNDYpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAubmFtZXtcclxuICAgICAgICAgICAgd2lkdGg6IHB4KDUyMCk7XHJcbiAgICAgICAgICAgIGhlaWdodDogcHgoMzYpO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBiZm9udCgxNCwzNiwjZGFjMWFmKTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZWxsaXBzaXM7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5idG4tcHJpemUze1xyXG4gICAgICAgICAgICBtYXJnaW46IHB4KDQ4KSAgYXV0byAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5pdGVtLTJ7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgIC50aXR7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHRpdF80LTI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcbiAgICAuYnRuLXF5e1xyXG4gICAgICAgIEBpbmNsdWRlIGJ0bi1xeTtcclxuICAgICAgICBtYXJnaW46cHgoNDgpIGF1dG8gMCA7XHJcbiAgICAgICAgJltkYXRhLXN0YXR1cz1cIjJcIl17XHJcbiAgICAgICAgICAgICBAaW5jbHVkZSBidG4tcXktMjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLm0td2F5bGlzdHtcclxuICAgIC50aXR7XHJcbiAgICAgICAgQGluY2x1ZGUgdGl0XzYtMTtcclxuICAgIH1cclxuICAgIGxpe1xyXG4gICAgICAgIEBleHRlbmQgJXNwcml0ZV9ib3g7XHJcbiAgICAgICAgQGluY2x1ZGUgem5xLWl0ZW0td2F5O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHB4KDEwKTtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgcGFkZGluZzogcHgoMjUpIHB4KDE0MCkgMCAgcHgoMjYwKTtcclxuICAgICAgICAmOm50aC1jaGlsZCg0KXtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IHB4KDE1KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgbGZvbnQoMTQsMTYsI2RhYzFhZik7XHJcbiAgICAgICAgc3BhbntcclxuICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgdG9wOiBweCgxMCk7XHJcbiAgICAgICAgICAgbGVmdDogcHgoMzApO1xyXG4gICAgICAgICAgIEBpbmNsdWRlIGJmb250KDE2LDQ1LCNmZjkyNjYpO1xyXG4gICAgICAgICAgIGVte1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmJ0bi1wcml6ZTQge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogcHgoNik7XHJcbiAgICAgICAgICAgIHJpZ2h0OiBweCg1KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCJcclxuLyog5Zu+54mH6IOM5pmvICovXHJcbi8qIOWmguaenOWkmumhtemdouWkmuiDjOaZr+WIh+aNoueUqOWkluWxgnBhZ2UteHjov5vooYzmjqfliLYgKi9cclxuLnZpZXd7XHJcbiAgICBtaW4td2lkdGg6IDEyMDBweDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5wYWdlLWluZGV4IHtcclxuXHQuYmctb3V0LWhke1xyXG5cdFx0YmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9iZy9iZy1oZC1vdXRfMDEuanBnKSBuby1yZXBlYXQgY2VudGVyIHRvcDtcclxuXHR9XHJcblx0QGZvciAkaSBmcm9tIDEgdGhyb3VnaCA0IHtcclxuXHRcdC5iZy1oZC0jeyRpfSB7XHJcblx0XHRcdGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvYmcvYmdfMCN7JGl9LmpwZykgbm8tcmVwZWF0IGNlbnRlciB0b3A7XHJcblx0XHRcdGhlaWdodDogcHgoMjQ4KTtcclxuXHRcdH1cclxuXHR9XHJcblx0LmJnLW91dC1iZCB7XHJcblx0XHRiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2JnL2JnLWJkLW91dF8wMS5qcGcpIG5vLXJlcGVhdCBjZW50ZXIgdG9wO1xyXG4gICAgICAgIC53cmFwe1xyXG4gICAgICAgICAgICBwYWRkaW5nOiBweCgxMDApIDAgcHgoMTIwKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9iZy9iZy1iZC1pbl8wMS5qcGcpIG5vLXJlcGVhdCBjZW50ZXIgdG9wO1xyXG5cdFx0fVxyXG5cdH1cclxufSIsIkBjaGFyc2V0IFwidXRmLThcIjtcclxuXHJcbkBwcm9wZXJ0eSAtLXdlbGNvbWVTZWVkIHtcclxuICAgIHN5bnRheDogXCI8aW50ZWdlcj5cIjtcclxuICAgIGluaGVyaXRzOiB0cnVlO1xyXG4gICAgaW5pdGlhbC12YWx1ZTogMDtcclxuICB9XHJcbiAgXHJcbiAgQGtleWZyYW1lcyB3ZWxjb21lU2VlZCB7XHJcbiAgICBmcm9tIHsgLS13ZWxjb21lU2VlZDogMDsgfVxyXG4gICAgdG8geyAtLXdlbGNvbWVTZWVkOiAxMDA7IH1cclxuICB9XHJcblxyXG4jd2VsY29tZSB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwdmg7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgei1pbmRleDogOTk5O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAud2VsY29tZS1jb3ZlciB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGxlZnQ6IDA7IHJpZ2h0OiAwOyB0b3A6IDA7IGJvdHRvbTogMDtcclxuICAgICAgICBtYXJnaW46IGF1dG87XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICAgICAgbWFzazogbm8tcmVwZWF0IGNlbnRlcjtcclxuICAgICAgICAvKiDlv4XpobvopoHmnIlsaW5lYXItZ3JhZGllbnQoYmxhY2ssIGJsYWNrKeaJjeiDvW1hc2stY29tcG9zaXRlOiBleGNsdWRlO+i1t+aViCAqL1xyXG4gICAgICAgIG1hc2staW1hZ2U6IGxpbmVhci1ncmFkaWVudChibGFjaywgYmxhY2spLCB1cmwoZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFNZ0FBQURJQ0FZQUFBQ3RXSzZlQUFBQUNYQklXWE1BQUE3RUFBQU94QUdWS3c0YkFBQUt0VWxFUVZSNFh1M2RhWXhkWlIzSDhlKzBwUlJLYWRsYlNpbFZBYWtDeXFvWU1BUVVTRWdVREJKUjZnSVlVQWdTRFlrTDRocTNDTHhoaVVRVFFEQ0tnallnS0NDcGdDQmJpNFVLWlMyQ3RWQ2dIYnJTTXVPTFowaUg1Mm1uOTU1N3pyMW4rWDZTWDBpZTV6S2RlODc1ejNQVzU0QWtTWklrU1pJa1NaSWtTWklrU1pJa1NaSWtTWklrU1pJa1NlcVN2cmloeGtZREU0WXlIbGdETEFmNmdUZUhmVTRiakFZbURtVkxZQ1h3K2xBYXNjenFWaUJUZ1AyQmR3TjdELzEzVDJBSFlOeXd6OFZXRW9wbEtiQUFtRDhzaTREQkRSK3RsVDVnQnJEdlVONEx6QVIySkJURjFocyttbGdOdkFJc0JKNFl5dVBBUEdESnNNK3BoM1lHUGdsY1RsaEJnd1drSDdnWk9BdVlSdlh0QVp3TjNFb1lDZUx2bTBjV0FKY0NueUQ4Y1ZJWFRRVE9BTzRDQmtoWFR0RjVCUGdCc0IvVmNTRHdZK0JSMHU5VGRBYUFPNEhQRTNadlZaQ1BBTDhsRE8zeFN1aFY3Z0pPQnJhZ2ZNWUNwd0wvSlAyOWU1V1Z3TFhBa1NnWGZjQUp3SU9rQzd0TWVSRzRrTERMMTJ0VENDUGNFdExmczB5NUZ6Z2VaZEpIK01zOG4zVEJsam45d0RjWStZUkFVY1lEM3lYOGxZNS9yekpuTG5BaWF0bCt3TjJrQzdKS1dRU2NRbmZPRW80aTdOKy9TUHA3VkNsM0VNNDZhaE1tQUJjRDYwa1hYbFZ6SCtIMGFWRU9CQjRtL1hlcm1qZUFIekh5NmVWR09wTHEvd1hjVkZZRDU1Q3ZQdUI4d2dZVi8zdDF5SFBBWVloUndIY0lWMlhqaFZTMzNBVHNST2QyQlc0bi9mbDF5enJDSDRGdTdLYVcwbVRDZm1lOFlPcWN4WFIyaXZNNDRHWFNuMXZuM0V3REx6YStCM2lCZEdFMElXOEFuNlo5WjFDdjQ3TjI4Z3pobHFGRytCRHdLdWxDYUZJR2dLL1J1Z3RKZjBiVHNnUTRnSm83SGxoRit1V2Jtb3NaZVI5N05IQUY2Zi9YMVBRRFIxRlRKeEFPdk9JdjNmVDhpbzNyQTY0ai9YelRzeFk0aHByNU1PSDVpL2pMbXBBZmtycUk5SE1tWkFWd0NEV3hQN0NNOUV1YXQrZkxiUERWamZTYnQrZGx3ak0vaFJwcC96Y1Awd2xYa3lmSEhVb01BQ2NSN3VQNk5jV3ZtenA0SHZnQTRmUjVJWXBjQ1dNSjkxUWRISGRvazlZUUxwNk9qVHUwU1hNSUIrNlZld1Q0RXRKaDBaZ2k4bjBLVXRRSThuSGd4cmhSS3NnQWNDeHdXOXpScVNJS1pDcmgwYzVKY1lkVW9KY0lkMmdzalR2SzVuclNJZENZYm1SVDE1UXl5M3NFT1lZd1c0YlVDNFBBNGNBOWNVZFdlUmJJT01JanN1K0tPNlF1bWsrNFoydDkzTkZyM3lRZDhvenBSYzRsSjNtTklCTUl6MkZ2RjNkSVBiQ1lNR1BrMnJpalhXUGlob3pPd3VKUWVVd0J2a0NZY2JNamVZd2c0d2pQRU84U3RVdTk5QnpoSWF1T2prWHlHRUZPdytKUStleEJlSEx6cXFpOUxYbU1JSThTTHRCSVpYTWY4TUc0c1IyZEZzZ0J3RU54bzFRaWV3RlB4bzJ0Nm5RWGExYmNJSlhNTE9DQ3VMRlZuWXdnWXdpVHZaVmh3bVpwVXhZUlR2a094aDJ0NkdRRU9SS0xRK1UzbmZCUTFiMXhSeXM2S1pDajR3YXBwSTRpWTRGMHNvdDFQejR0cUdyNEd4bW5DOHBhSU5zU0puOGJIWGRJSmJTRzhIeFMyN2VlWk4zRk9nS0xROVV4am5BY01pZnUySnlzQlZLYk9ZblVHSWZReFFJcGZENGlLV2VadHRtc0JlS3JzbFExbWJiWkxBZnBmWVFYUlc0VmQwZ2x0cFFNTHpES01vTHNqc1doNnRrUjJKNXc5clZsV1FyRWFVUlZWWlBwUW9GTWlCdWtpbWg3MjdWQTFDUnRiN3NXaUpxazdXMDNTNEZzRXpkSUZkR1ZBcEdxcXUxblFySVV5T3R4ZzFRUksrT0d6Y2xTSUN2aUJxa2kydDUyTFJBMVNWZEdrRmZpQnFraTJycElDTm51eFpvRXZCWTNTaVUzQ0d4TmVIaXFaVmxHa0dXRUFuRXVYbFhKWXRvc0RzaFdJQUJQQXdmRmpWS0pQUjAzdENKcmdTekVBbEcxTEl3YldwRzFRTzRIVG9rYnBSSzdMMjVvUmRZQ3lUVEhrTlJEbWJiWkxHZXhBTFlBK2dtelJVaGx0NXh3VXFrcnQ1b0FyQU1lSUx4UlZDcTdlOGhRSEpDOVFBQm1ZNEdvR21iSERhM0t1b3NGNFhYUG1kKzdJSFhKSUxBcjhMKzRveFdkRkFqNGRpbVZYMGR2bWVwa0Z3dmc5MWdnS3JjL3hBM3Q2SFFFY1RkTFpmWW1NSTF3bTBrbW5ZNGdUeEhPTDJjZXdxUUMzVUVIeFFHZEZ3akFOVmdnS3FkcjRvWjJkYnFMQmVIMjl4Y0p0eEpMWmJFTW1BcXNpanZha2NjSXNneTRHamd6N3BCNjZFbzZMQTdJWndTQk1IUDJBdkw3ZVZJbjFnUHZBUDRUZDdRcmp4RUU0SEhnTDhDeGNZZlVBemVTUTNGQXZuL3hqeURERzN5a25BMFNYaTc3VU55UlJaNEZBdkJuNExpNFVlcWkzd0VueDQxWjVWMGcrd0Z6Z1ZGeGg5UUY2NENaaE90enBYVTFZWmd6cHR1NWxKemxQWUlBVEFlZUFMYU1PNlFDclNEYytyUWs3dWhFWG1leGhsc0VYQWFjRjNkSUJicUluSXNEaWhsQkFIWWdUTE15TWU2UUN2QVNZZlNvMU1UcVh5ZmRSelNtaUp4RFFZb2FRU0FjZzh3RjlvazdwQnpOQlE0aFhEM1BYWkVGQW5BbzRZSDUwWEdIbElOMWhBa00veFYzVk1uUFNJZEVZL0xJaFJTczZCRUV3dHhaODRDOTR3NnBBNDhRYmlsWkYzZmtxUnNGQXVHQnFydnhDcnZ5c1o1UUhQUGlqaXI3T2VrUWFVeVdmSTh1NmRZSUFyQVZvZUwzaWp1a05zd25ISmkvRVhjVW9ac0ZBbUZYNnk0OHE2VnMxaEcyb1Z4dVpTK3I4MG1IVEdOYXlkazB4QTJrWDk2WWtYSXRQZER0WGF5M2JBczhDT3daZDBnYjhSamhvblBicjNIdVZLOEtCR0Jmd3J5cFRoZWtrZlFUVHVsbWVvVmExWjFLT3BRYU16d24wbkNYa3k0VVl3WUp0eW4xVkM5M3NkNHlsbkNWL2VDNFE0MDJCemlLTUFGMXo1U2hRQUIySXh5UFRJMDcxRWpQRUs1M3ZCUjNkRnRaQ2dUQ1FmdmRoRE5jYXE1WGdNTm82RUg1NWh4TnVJVWczaGMxemNocVFuRm9CTE5JRjV5cGY5N0VNMVl0K3hicEFqVDF6cm1vTGI4Z1hZaW1ucmtJdFcwTVlhN2ZlR0dhZXVWNnluV3lxRksySVp6K2pSZXFxVWZ1SkR5U3JRNU1BaDRtWGJpbTJya0hHSTl5c1FQaFNiSjRJWnRxNWdHODNwVzdYUWh2c29vWHRxbFc1Z0hibzBKTUpjejVHeTkwVTQwOEJ1eUVDaldkTUlOOHZQQk51Yk1RbUlLNjRwMkVkN1BISzhHVU04OEMwMUJYN1EyOFFMb3lUTG55RERBRDljUU1QQ1lwYy82Tmp6RDAzSzdBQXRLVlkzcWJ1WGhBWGhvNzRjWEVNdVVmaEF1OEtwR0poS3V6OGNveTNjM3RlSVc4dE1ZVFZsQzgwa3gzTWh2ZmJseDZXd0ovSWwxNXB0ajhobUxlbXF3Q2pBR3VKRjJKcHBoY2d1OStxYVFMU0ZlbXlTOER3SG1vMGo2TEUwRVVrVFhBU2FnV1BrcVk0elZleVNaYlhnVU9SN1h5UHVDL3BDdmJ0SmZuZ0gxUUxlMU91T1U2WHVtbXRUeU1kK1RXM2lUZ0Z0S1ZiMGJPRFlRNUF0UUFvNENma0c0RUpzMEE4RzJjZWFTUlBnV3NJdDBvVEVnLzhESFVhTy9ISnhRM2xpZUJtVWlFdTRIbmtHNGtUYzJ0d0haSXcyd0JYRXE2c1RRdFA4WDMyR3NFcHdOclNUZWN1bWNWY0FwU0N3NERGcE51UkhYTjg4QUJTRzJZQ3R4UHVqSFZMWDhIZGtiS1lCeHdGZWxHVlpkY1JqajJranJ5RldBOTZRWlcxYXdGemtESzBZZXB4enhjendLSEloVmdSK0FtMG8ydUtybWVNTG1GVkpnK3dsTjBWVG9WdkJvNEU2bUxEZ0tlSXQwWXk1WUZoSGZRUzEwM0FiaU9kS01zUzM0SmJJM1VZNmNCSzBrMzBGNmxuM0Nuc2xRYU15bkhhK0llSkx3ZVFpcWRyWUFyU0RmYWJ1VmlZQ3hTeVowRUxDUGRnSXZLVXVCNHBBclpqZkJjUmJ3eDU1MC9BcE9SS3VwMFlEbnBodDFwWGdVK2cxUUQwNEMva203a1dUTWJwOTlSRFgyUnptWjRmQTJZaFZSajA0SGJTRGYremVWbWZOK2ZHdVJNNEhYU1FvaXpEUGhjK0Yra1p0a0R1SU8wS043S0xZU3pZVkpqOVFGZkFsYXdvVENXRTI1ZmtUUmtCbkFuNFd6WHRLaFBFczUvSzBtU0pFbVNKRW1TSkVtU0pFbVNKRW1TSkVtU0pFbVNKRW1TbXV2L243M05mclZYTnVNQUFBQUFTVVZPUks1Q1lJST0pO1xyXG4gICAgICAgIG1hc2stY29tcG9zaXRlOiBleGNsdWRlO1xyXG4gICAgICAgIG1hc2stY29tcG9zaXRlOiBzb3VyY2Utb3V0O1xyXG4gICAgICAgIG1hc2stc2l6ZTogY292ZXIsIDAgMDtcclxuICAgIH1cclxuXHJcbiAgICAvKiBsb2FkaW5nICovXHJcbiAgICAud2VsY29tZS1sb2FkaW5nIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gICAgfVxyXG5cclxuICAgICYub3BlbntcclxuICAgICAgICAud2VsY29tZS1jb3ZlcntcclxuICAgICAgICAgICAgYW5pbWF0aW9uOiB3ZWxjb21lU2VlZCAxcyBib3RoO1xyXG4gICAgICAgICAgICBtYXNrLXNpemU6IGNvdmVyLGNhbGModmFyKC0td2VsY29tZVNlZWQpICogMiUpIGNhbGModmFyKC0td2VsY29tZVNlZWQpICogMyUpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcbn0iLCJAY2hhcnNldCBcInV0Zi04XCI7XHJcbi8qIOeUqOaIt+S/oeaBr+agjyAqL1xyXG4vKiDkv6Hmga/moI/pq5jvvIjooYzpq5jvvIkgKi9cclxuJGluZm9faGVpZ2h0OjcyO1xyXG4vKiDkv6Hmga/moI/lrr0gKi9cclxuJGluZm9fd2lkdGg6MTIwMDtcclxuXHJcbi8qIOeZu+W9leWuvSAqL1xyXG4kbG9naW5fd2lkdGg6MjQwO1xyXG5cclxuLyog6buY6K6k5paH5a2X6aKc6ImyICovXHJcbiRpbmZvX2NvbG9yOiNmZGQ4YjE7XHJcbiRpbmZvX3NpemU6MTQ7XHJcbi8qIOW8uuiwg+aWh+Wtl+minOiJsiAqL1xyXG4kaW5mb19lbV9jb2xvcjojZmRkOGIxO1xyXG4udGV4dF9kZWZhdWx0X2VtXzJ7XHJcblx0Y29sb3I6ICRpbmZvX2VtX2NvbG9yIWltcG9ydGFudDtcclxufVxyXG4ubS1pbmZvIHtcclxuXHQuaW5mby1ib2R5e1xyXG4gICAgICAgIHBhZGRpbmc6MCBweCg2MCk7XHJcbiAgICAgICAgQGV4dGVuZCAlc3ByaXRlX2JveDtcclxuICAgICAgICBAaW5jbHVkZSBib3gtaW5mbztcclxuXHR9XHJcblx0LmxvZ2luLWluZm8ge1xyXG5cdFx0ZmxvYXQ6IGxlZnQ7XHJcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHR3aWR0aDogcHgoJGxvZ2luX3dpZHRoKTtcclxuXHRcdGhlaWdodDogMTAwJTtcclxuXHRcdC51c2VyLXJlZyB7XHJcblx0XHR9XHJcblx0XHQudXNlci1uYW1lIHtcclxuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHR3aWR0aDogcHgoMTcwKTtcclxuXHRcdFx0QGluY2x1ZGUgaW5saW5lLWJsb2NrO1xyXG5cdFx0XHRAaW5jbHVkZSBlbGxpcHNpcztcclxuXHRcdFx0QGluY2x1ZGUgYmZvbnQoJGluZm9fc2l6ZSwgJGluZm9faGVpZ2h0LCAkaW5mb19jb2xvcik7XHJcblx0XHR9XHJcblx0XHRcclxuXHJcblx0XHQudXNlci1sb2dvdXQsXHJcblx0XHQudXNlci1sb2dpbixcclxuXHRcdC51c2VyLXJlZyB7XHJcblx0XHRcdEBpbmNsdWRlIGJmb250KCRpbmZvX3NpemUsICRpbmZvX2hlaWdodCwgJGluZm9fY29sb3IpO1xyXG5cdFx0fVxyXG5cclxuXHRcdC51c2VyLWxvZ291dHtcclxuXHRcdFx0QGluY2x1ZGUgYmZvbnQoJGluZm9fc2l6ZSwgJGluZm9faGVpZ2h0LCAkaW5mb19jb2xvcik7XHJcblx0XHR9XHJcblx0fVxyXG5cdFxyXG5cdC5pbmZvLWJveCB7XHJcblx0XHRmbG9hdDogbGVmdDtcclxuXHRcdHdpZHRoOiBweCgkaW5mb193aWR0aCAtICRsb2dpbl93aWR0aCAtIDE2MCk7XHJcblx0XHRAaW5jbHVkZSBjbGVhcmZpeDtcclxuXHRcdEBpbmNsdWRlIGJmb250KCRpbmZvX3NpemUsICRpbmZvX2hlaWdodCwgJGluZm9fY29sb3IpO1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblx0XHQmLmluZm8tYm94LTEge1xyXG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRcdHBhZGRpbmctbGVmdDogcHgoMjMwKTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC5pbmZvLWJpbmQge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICBtYXJnaW4tdG9wOiBweCgtMTkpO1xyXG5cdFx0bGVmdDogcHgoNjApO1xyXG5cdFx0QGV4dGVuZCAlc3ByaXRlX2J0bjtcclxuXHRcdEBpbmNsdWRlIGJ0bl9iaW5kO1xyXG5cdFx0Zm9udC1zaXplOiAwO1xyXG5cdFx0bGluZS1oZWlnaHQ6IDA7XHJcblx0fVxyXG5cclxuXHQvKiDnu5Hlrprmj5DnpLrmlofmnKwgKi9cclxuXHQuaW5mby1iaW5kLXBze1xyXG5cdFx0cGFkZGluZy1sZWZ0OiBweCg0OCk7XHJcbiAgICAgICAgY29sb3I6ICNmZGQ4YjE7XHJcblx0XHRAaW5jbHVkZSBjbGVhcmZpeDtcclxuICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG5cdH1cclxuXHJcblx0Lyog6Ieq5Yqo5Yik5pat5a2Q5YWD57Sg5Liq5pWwIOWFvOWuuWllOSAqL1xyXG5cdC5pbmZvLWJveC1pdGVtIHtcclxuXHRcdEBpbmNsdWRlIGNsZWFyZml4O1xyXG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0aGVpZ2h0OiBweCgkaW5mb19oZWlnaHQpO1xyXG5cdFx0ZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgQGluY2x1ZGUgZWxsaXBzaXM7XHJcblx0XHQuaW5mby1sYWJlbCB7XHJcblx0XHRcdGZsb2F0OiBsZWZ0O1xyXG5cdFx0fVxyXG5cdFx0LyogMeS4qiAqL1xyXG5cdFx0Jjpvbmx5LWNoaWxke1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdH1cclxuICAgICAgICBcclxuXHRcdEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggNyB7XHJcblx0XHRcdCY6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoI3skaX0pe1xyXG5cdFx0XHRcdHdpZHRoOiBjYWxjKCggOTklIC8gI3skaX0gKSk7XHJcblx0XHRcdH1cclxuXHRcdFx0JjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgjeyRpfSkgfiAuaW5mby1ib3gtaXRlbXtcclxuXHRcdFx0XHR3aWR0aDogY2FsYygoIDk5JSAvICN7JGl9ICkpO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQvKiDnirbmgIExIOS4gOiIrOeZu+mZhu+8iOacquaciee7keWumuOAgeacquacieinkuiJsuetie+8iSAqL1xyXG5cdCZbZGF0YS1zdGF0dXM9XCIxXCJde1xyXG5cdFx0LmluZm8tYm94IHtcclxuXHRcdFx0Ji5pbmZvLWJveC0xIHtcclxuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQvKiDnirbmgIEyIOato+W4uOeKtuaAgSAqL1xyXG5cdCZbZGF0YS1zdGF0dXM9XCIyXCJde1xyXG5cdFx0LmluZm8tYm94IHtcclxuXHRcdFx0Ji5pbmZvLWJveC0xIHtcclxuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHR9XHJcblx0XHRcdCYuaW5mby1ib3gtMyB7XHJcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdFx0LmJ0bjEtYmluZHtcclxuXHRcdFx0XHRcdGN1cnNvcjogZGVmYXVsdDtcclxuXHRcdFx0XHRcdCY6aG92ZXJ7XHJcblx0XHRcdFx0XHRcdGZpbHRlcjogYnJpZ2h0bmVzcygxKTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuIiwiLm0tc2lnbiB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIG1hcmdpbi1ib3R0b206IHB4KDM1KTtcclxuICAgIC5zaWduLWJ0biB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIEBleHRlbmQgJXNwcml0ZV9zaWduO1xyXG4gICAgICAgIEBpbmNsdWRlIGJ0bi1zaWduO1xyXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICAgICAgei1pbmRleDogOTtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgdG9wOiBweCgtMjApO1xyXG4gICAgICAgIGxlZnQ6IHB4KC04MCk7XHJcbiAgICB9XHJcbiAgICAuaW5mbyB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHJpZ2h0OnB4KDMzOCk7XHJcbiAgICAgICAgdG9wOiBweCgtMTkpO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBAaW5jbHVkZSBiZm9udCgxOCwgMjYsICNmZTkyNjYpO1xyXG4gICAgICAgIEBleHRlbmQgJXNwcml0ZV9zaWduO1xyXG4gICAgICAgIEBpbmNsdWRlIHNpZ24tbnVtO1xyXG4gICAgICAgIHBhZGRpbmc6IHB4KDEyKSAwIDAgIHB4KDExMCk7XHJcbiAgICAgICAgLm51bSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgQGluY2x1ZGUgYmZvbnQoNDIsIDQ2LCAjZmRkOGIxKTtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiBweCg0MCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN0YXR1cyB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGxlZnQ6IHB4KC03NSk7XHJcbiAgICAgICAgYm90dG9tOiBweCgtMTApO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIEBpbmNsdWRlIGJmb250KDE2LCAyMiwgI2UwMzQzNCk7XHJcbiAgICB9XHJcbn0iLCIubS10YXNrcyB7XHJcbiAgICBAZXh0ZW5kICVzcHJpdGVfdGFzaztcclxuICAgIEBpbmNsdWRlIHRhc2tfYmc7XHJcbiAgICAudGFzay10aXQge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMDtcclxuICAgICAgICBAZXh0ZW5kICVzcHJpdGVfdGFzaztcclxuICAgICAgICBtYXJnaW46IHB4KDEwKSAgMCAgcHgoMjApO1xyXG4gICAgfVxyXG4gICAgLnRhc2stZ3JvdXAtMXtcclxuICAgICAgICAudGFzay10aXQge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSB0YXNrX3RpdF8xO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC50YXNrLWdyb3VwLTJ7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogcHgoMjApO1xyXG4gICAgICAgIC50YXNrLXRpdCB7XHJcbiAgICAgICAgICAgIC8vIEBpbmNsdWRlIHRhc2tfdGl0XzI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLm0tYmQge1xyXG4gICAgICAgIHBhZGRpbmc6IHB4KDEwKSBweCgxOCkgMCA7XHJcbiAgICB9XHJcbiAgICAudGFzay1pdGVtIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgcGFkZGluZzogcHgoMTIpICBweCgxMCkgMCBweCg4OCk7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICBAZXh0ZW5kICVzcHJpdGVfdGFzaztcclxuICAgICAgICBAaW5jbHVkZSB0YXNrX2l0ZW07XHJcbiAgICAgICAgJltkYXRhLXRpZD1cIjlcIl17XHJcbiAgICAgICAgICAgIC5sbmtfdHh0e1xyXG4gICAgICAgICAgICAgICAgIEBleHRlbmQgJXNwcml0ZV90YXNrO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgIHRhc2tfZ29fbGluaztcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGxmb250KDEyLDI0LCNmZmYpO1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6IHB4KDE0KTtcclxuICAgICAgICAgICAgICAgIHRvcDogcHgoMTQpO1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZbZGF0YS10aWQ9XCI1XCJdLCZbZGF0YS10aWQ9XCI2XCJde1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogcHgoMTApO1xyXG4gICAgICAgICAgIC50YXNrLXR4dCB7XHJcbiAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBweCgxNik7XHJcbiAgICAgICAgICAgICAgIGJ7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogcHgoMTYpO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBweCgxNCk7XHJcbiAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgICAgICAudGFzay10eHQge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsZm9udCgxNCwgMjYsICNkYWMxYWYpO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIGIge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYmZvbnQoMTgsIDI2LCAjZmY5MjY2KTtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgIC8vIHdpZHRoOnB4KDMyMCk7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHB4KDUpO1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgZW17XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBweCgxNCk7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJmb250KDE0LCAyNiwgI2RhYzFhZik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnRhc2stbGltaXQge1xyXG4gICAgICAgICAgICBtYXJnaW46IHB4KDYpIDAgMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmxpbWl0LWNvbnQsXHJcbiAgICAgICAgLmxpbWl0LXR4dCxcclxuICAgICAgICAubGltaXQtZmluaXNoIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgICAgIH1cclxuICAgICAgICAubGltaXQtY29udCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMzNTM0MzU7XHJcbiAgICAgICAgICAgIHdpZHRoOiBweCgyMTApO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IHB4KDEyKTtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBweCgxMik7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgICBib3JkZXI6IHNvbGlkIDFweCAjNjA2MDYwO1xyXG4gICAgICAgICAgICAvLyBib3JkZXItcmFkaXVzOiBweCgxMCk7XHJcbiAgICAgICAgICAgIC5saW1pdC1jdXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZlYWM2NDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAwJTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHdpZHRoIDAuM3M7XHJcbiAgICAgICAgICAgICAgICAvLyBib3JkZXItcmFkaXVzOiBweCgxMClcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmxpbWl0LXR4dCB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGxmb250KDE0LCAxNiwgI2RhYzFhZik7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgdG9wOiAtMXB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogcHgoOCk7XHJcbiAgICAgICAgICAgIGxlZnQ6IHB4KDEyKTtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIEBleHRlbmQgJXNwcml0ZV90YXNrO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSB0YXNrX2ljb25fdGlja18xO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJltkYXRhLXN0YXR1cz0nMiddIHtcclxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRhc2tfaWNvbl90aWNrXzI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAudGFzay1pdGVtICsgLnRhc2staXRlbSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogcHgoMTMpO1xyXG4gICAgfVxyXG59XHJcbiIsIkBjaGFyc2V0IFwidXRmLThcIjtcclxuXHJcbi5tLWxvdHR7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBAZXh0ZW5kICVzcHJpdGVfbG90dDtcclxuICAgIEBpbmNsdWRlIGxvdHRfbXVsO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHBhZGRpbmctdG9wOiBweCgxMCk7XHJcbiAgICAubG90dC1ib3h7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHdpZHRoOiBweCg2MzgpO1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIC5sb3R0LXBsYXl7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHB4KDU1KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmxvdHQtb3B0e1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5sb3R0LWJ0bntcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIEBleHRlbmQgJXNwcml0ZV9sb3R0O1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDA7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCBweCgzKTtcclxuICAgICAgICAgICAgJltkYXRhLW51bT1cIjFcIl17XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsb3R0X2J0bl8xO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICZbZGF0YS1udW09XCI1XCJde1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbG90dF9idG5fNTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5sb3R0LXBsYXl7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIEBleHRlbmQgJXNwcml0ZV9sb3R0MTtcclxuICAgICAgICBAaW5jbHVkZSBsb3R0X2JnO1xyXG4gICAgICAgIC5pbWctYmFzZXtcclxuICAgICAgICAgICAgQGV4dGVuZCAlc3ByaXRlX2xvdHQxO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsb3R0X2JnO1xyXG4gICAgICAgIH1cclxuICAgICAgICB2aWRlb3tcclxuICAgICAgICAgICAgd2lkdGg6IHB4KDYzOCk7XHJcbiAgICAgICAgICAgIGhlaWdodDogcHgoNDM4KTtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogYXV0bztcclxuICAgICAgICAgICAgYm9yZGVyOiAwIG5vbmU7XHJcbiAgICAgICAgICAgIG92ZXJmbG93LWNsaXAtbWFyZ2luOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgICAmOmZvY3VzIHsgb3V0bGluZTogbm9uZTsgfVxyXG5cclxuICAgICAgICB9XHJcbiAgICAgICAgLnZpZGVvLW1hc2t7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICBAZXh0ZW5kICVzcHJpdGVfbG90dDE7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHZpZGVvLW1hc2s7XHJcblxyXG4gICAgICAgIH1cclxuICAgICAgICBpbWd7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubG90dC1pbmZve1xyXG4gICAgICAgICAgICBAZXh0ZW5kICVzcHJpdGVfbG90dDtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbG90dF9pbmZvO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBjZW50ZXIyWDtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxMTtcclxuICAgICAgICAgICAgYm90dG9tOiBweCg2OSk7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYmZvbnQoMTgsMTcwLCNkYWMxYWYpO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogcHgoMCk7XHJcbiAgICAgICAgICAgIHNwYW57XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBiZm9udCgzMCwzMiwjZmRkOGIxKTtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNlbnRlcjJYO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHB4KDUwKTtcclxuICAgICAgICAgICAgICAgIHRvcDogcHgoMjApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5pbWctbWFza3tcclxuICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgIHRvcDogcHgoNDAyKTtcclxuICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgaGVpZ2h0OiBweCgzOCk7XHJcbiAgICAgICAgICAgICBwYWRkaW5nOiAwIHB4KDQwKTtcclxuICAgICAgICAgICAgIHotaW5kZXg6IDEyO1xyXG4gICAgICAgICAgICAgQGluY2x1ZGUgbGZvbnQoMTQsMzgsI2ZmOTI2Nik7XHJcbiAgICAgICAgICAgICAudGlwe1xyXG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAubG5rLXR4dHtcclxuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmY5MjY2O1xyXG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmxvdHQtcHJpemV7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIG1hcmdpbjogIHB4KDI2KSBhdXRvIDA7XHJcbiAgICAgICAgd2lkdGg6IHB4KDYzOCk7XHJcbiAgICAgICAgLnByaXple1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIEBleHRlbmQgJXNwcml0ZV9sb3R0O1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsb3R0X3ByaXplO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBweCgzNik7XHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnByaXplLWltZ3tcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgICAgICB3aWR0aDogcHgoNjM4KTtcclxuICAgICAgICAgICAgaGVpZ2h0OiBweCgxODIpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAucHJpemUtcHJvYntcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICByaWdodDogcHgoNik7XHJcbiAgICAgICAgICAgIHRvcDogcHgoNik7XHJcbiAgICAgICAgICAgIGF7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsZm9udCgxNCwzMywjZGFjMWFmKTtcclxuICAgICAgICAgICAgICAgIEBleHRlbmQgJXNwcml0ZV9sb3R0O1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbG90dF9wcm9iO1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiBweCgyNSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmW2RhdGEtc3RhdHVzPVwiMVwiXXtcclxuICAgICAgICAubG90dC1wbGF5e1xyXG4gICAgICAgICAgICB2aWRlb3tcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaW1ne1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIkBjaGFyc2V0IFwidXRmLThcIjtcclxuLm0tbW9yZXtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGhlaWdodDogcHgoNTUwKTtcclxuICAgIC5tb3JlLWl0ZW17XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBAZXh0ZW5kICVzcHJpdGVfcHJpemU7XHJcbiAgICAgICAgQGluY2x1ZGUgcHJpemVfYm94XzU7XHJcbiAgICAgICAgcGFkZGluZy10b3A6cHgoMTUpIDtcclxuICAgICAgICAudGl0e1xyXG4gICAgICAgICAgICBAaW5jbHVkZSB0aXRfNS0xO1xyXG4gICAgICAgICAgICBtYXJnaW46ICAwIGF1dG8gIHB4KDUpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAudHh0e1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsZm9udCgxNCwxOCwjZGFjMWFmKTtcclxuICAgICAgICAgICAgaGVpZ2h0OiBweCg0Nik7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiBweCgxNSk7XHJcbiAgICAgICAgICAgIC50eHQxe1xyXG4gICAgICAgICAgICAgICAgIEBpbmNsdWRlIGxmb250KDE0LDE4LCNkYWMxYWYpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgXHJcbiAgICAgICAgLnByaXple1xyXG4gICAgICAgICAgICBtYXJnaW46IHB4KDEwKSBhdXRvIHB4KDUpO1xyXG4gICAgICAgICAgICB3aWR0aDogcHgoNTIwKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmltZ3tcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgaGVpZ2h0OiBweCgyMDQpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAubmFtZXtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogcHgoMzYpO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBiZm9udCgxNCwzNiwjZGFjMWFmKTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZWxsaXBzaXM7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5idG57XHJcbiAgICAgICAgICAgIG1hcmdpbjogcHgoNDgpIGF1dG8gMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5saW5re1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0byA7XHJcbiAgICAgICAgICAgIGF7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsZm9udCgxNCwzOCwjZmY5MjY2KTtcclxuICAgICAgICAgICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmY5MjY2O1xyXG4gICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAgJi0ye1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogcHgoNDApO1xyXG4gICAgICAgICAgICAgLnRpdHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRpdF81LTI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnR4dHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiBweCgwKTtcclxuICAgICAgICAgICAgICAgIHNwYW57XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNkYWMxYWY7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCJAY2hhcnNldCBcInV0Zi04XCI7XHJcbi8qIOS4u+agh+mimOiJsiAqL1xyXG4kY29sb3JfdGV4dF9kaWFsb2dfdGl0OiAjNzczOTFiO1xyXG4vKiDkuLvmoIfpopjoibIt6YeN54K5ICovXHJcbiRjb2xvcl90ZXh0X2RpYWxvZ190aXRfZW06ICM3NzM5MWI7XHJcbi8qIOWJr+agh+mimOminOiJsiAqL1xyXG4kY29sb3JfdGV4dF9kaWFsb2dfc3RpdDogIzAwMDAwMDtcclxuLyog5q2j5paH6ImyICovXHJcbiRjb2xvcl90ZXh0X2RpYWxvZzogIzAwMDAwMDtcclxuLyog5q2j5paH5qyh6KaB6ImyICovXHJcbiRjb2xvcl90ZXh0X2RpYWxvZzI6ICMwMDAwMDA7XHJcblxyXG4vKiDkuIvmi4nmoYblhoXmnKrpgInkuK3lrZfkvZPpopzoibIgKi9cclxuJGNvbG9yX3RleHRfZGlhbG9nMzogI2ZmZmZmZjtcclxuXHJcbi8qIOW8uuiwg+aWh+WtlyjmoIfnuqIpICovXHJcbiRjb2xvcl90ZXh0X2RpYWxvZ19lbTogI2U2NDMwMDtcclxuLyog6ZO+5o6l6aKc6ImyICovXHJcbiRjb2xvcl90ZXh0X2RpYWxvZ19hOiAjZTY0MzAwO1xyXG4vKiDmjInpkq7mloflrZfpopzoibIgKi9cclxuJGNvbG9yX3RleHRfZGlhbG9nX2J0bjogI2ZmZGViYTtcclxuJGNvbG9yX3RleHRfZGlhbG9nX2J0bl9lbTogI2ZmZGViYTtcclxuXHJcbi8qIOiDjOaZr+iJsiAqL1xyXG4kY29sb3JfYmdfZGlhbG9nOiAjZmZmM2U2O1xyXG4vKiDovrnmoYboibIgKi9cclxuJGNvbG9yX2JvcmRlcjogI2ZmZjNlNjtcclxuLyog6L655qGG5a69ICovXHJcbiRjb2xvcl9ib3JkZXJfd2lkdGg6IDBweDtcclxuXHJcbi8qIOWmguaenOWkjeadgui+ueahhiDorr7nva5wYWRkaW5n56m65Ye65Yy65Z+fICovXHJcbi51aS1kaWFsb2cge1xyXG4gICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8qIOeugOaYk+W8ueWHuuahhiAqL1xyXG5AbWl4aW4gd2ctZGlhbG9nX2JnIHtcclxuICAgIGJhY2tncm91bmQ6ICRjb2xvcl9iZ19kaWFsb2c7XHJcbiAgICBib3JkZXI6IHNvbGlkICRjb2xvcl9ib3JkZXJfd2lkdGggJGNvbG9yX2JvcmRlcjtcclxuICAgIHBhZGRpbmc6IHB4KDI2KSAwO1xyXG59XHJcblxyXG4ud2ctZGlhbG9nIHtcclxuICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgLndnLWRpYWxvZy10LWxpbmUsXHJcbiAgICAud2ctZGlhbG9nLWItbGluZSxcclxuICAgIC53Zy1kaWFsb2ctdCxcclxuICAgIC53Zy1kaWFsb2ctcixcclxuICAgIC53Zy1kaWFsb2ctYixcclxuICAgIC53Zy1kaWFsb2ctbCxcclxuICAgIC53Zy1kaWFsb2ctbHQsXHJcbiAgICAud2ctZGlhbG9nLXJ0LFxyXG4gICAgLndnLWRpYWxvZy1sYixcclxuICAgIC53Zy1kaWFsb2ctcmIge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLndnLWRpYWxvZy1ib2R5IHtcclxuICAgICAgICBAaW5jbHVkZSB3Zy1kaWFsb2dfYmc7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIOaMiemSruWFrOWFsSAqL1xyXG5bY2xhc3N8PSdidG4yJ10ge1xyXG4gICAgQGV4dGVuZCAlc3ByaXRlX2RpYWxvZztcclxuICAgIHRyYW5zaXRpb246IGZpbHRlciAwLjNzLCBjb2xvciAwLjNzO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygxLjIpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIOS4gOiIrOaMiemSriAqL1xyXG4gICAgJi5idG4yLWNvbSB7XHJcbiAgICAgICAgXHJcbiAgICAgICAgQGluY2x1ZGUgZGlhbG9nX2J0bl9lbTtcclxuICAgICAgICBAaW5jbHVkZSBsZm9udCgxNiwgNDIsICRjb2xvcl90ZXh0X2RpYWxvZ19idG5fZW0pO1xyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMS4yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyog5by66LCD5oyJ6ZKuICovXHJcbiAgICAmLmJ0bjItY29tLTIge1xyXG4gICAgICAgIEBpbmNsdWRlIGRpYWxvZ19idG47XHJcbiAgICAgICAgQGluY2x1ZGUgbGZvbnQoMTYsIDQyLCAkY29sb3JfdGV4dF9kaWFsb2dfYnRuKTtcclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDEuMik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKmRpYWxvZyovXHJcbi53Zy1kaWFsb2cge1xyXG4gICAgd2lkdGg6IHB4KDcwMCk7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgKntcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgfVxyXG4gICAgLndnLWRpYWxvZy1jb250IHtcclxuICAgICAgICBwYWRkaW5nOiBweCgxMCkgMDtcclxuICAgIH1cclxuXHJcbiAgICAvKiDlhbPpl63mjInpkq4gKi9cclxuICAgIGEud2ctZGlhbG9nLWNsb3NlIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgQGV4dGVuZCAlc3ByaXRlX2RpYWxvZztcclxuICAgICAgICBAaW5jbHVkZSBkaWFsb2dfY2xvc2U7XHJcbiAgICAgICAgdG9wOiBweCgxMCk7XHJcbiAgICAgICAgcmlnaHQ6IHB4KDEwKTtcclxuICAgICAgICB6LWluZGV4OiA5O1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5ZW07XHJcbiAgICAgICAgdHJhbnNpdGlvbjogZmlsdGVyIDAuM3M7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMS4yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyog5qCH6aKY57qn5Yir5paH5a2XICovXHJcbiAgICAud2ctZGlhbG9nLXRpdCB7XHJcbiAgICAgICAgQGluY2x1ZGUgYmZvbnQoMjIsIDI0LCAkY29sb3JfdGV4dF9kaWFsb2dfdGl0KTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgdGV4dC13cmFwOiBiYWxhbmNlO1xyXG4gICAgICAgIGVtIHtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3JfdGV4dF9kaWFsb2dfdGl0X2VtO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAud2ctZGlhbG9nLXR4dCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogcHgoMTIpO1xyXG4gICAgICAgIEBpbmNsdWRlIGxmb250KDE0LCAyNCwgJGNvbG9yX3RleHRfZGlhbG9nKTtcclxuICAgICAgICBwYWRkaW5nOiAwIHB4KDM4KTtcclxuICAgICAgICBwICsgcCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHB4KDEwKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyog5by55Ye65qGG5by65Yi25qCH57qi5paH5a2XICovXHJcbiAgICAud2ctZGlhbG9nLWVtIHtcclxuICAgICAgICBjb2xvcjogJGNvbG9yX3RleHRfZGlhbG9nX2VtICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLyog5Ymv5qCH6aKY57qn5Yir5paH5a2XICovXHJcbiAgICAud2ctZGlhbG9nLXN0aXQge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHB4KDEyKTtcclxuICAgICAgICBAaW5jbHVkZSBsZm9udCgxNCwgMTYsICRjb2xvcl90ZXh0X2RpYWxvZ19zdGl0KTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgdGV4dC13cmFwOiBiYWxhbmNlO1xyXG4gICAgfVxyXG5cclxuICAgIC53Zy1kaWFsb2ctaW1nIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogMjAwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAyMDBweDtcclxuICAgICAgICBib3JkZXI6IHNvbGlkIDEwcHggI2E1MWMxZDtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAud2ctZGlhbG9nLWxpc3Qge1xyXG4gICAgICAgIG1hcmdpbjogcHgoMTIpIDA7XHJcbiAgICAgICAgZm9udC1zaXplOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIOeUqOS6juWNleadoeaYvuekuiAqL1xyXG4gICAgLndnLWRpYWxvZy1saXN0IC53Zy1kaWFsb2ctaXRlbSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBAaW5jbHVkZSBsZm9udCgxNCwgMzAsICRjb2xvcl90ZXh0X2RpYWxvZyk7XHJcbiAgICAgICAgLmxuay10eHQge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsZm9udCgxNCwgMzAsICRjb2xvcl90ZXh0X2RpYWxvZ19hKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLndnLWRpYWxvZy1pdGVtLW5hbWUge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgIGhlaWdodDogcHgoMzApO1xyXG4gICAgICAgIEBpbmNsdWRlIGVsbGlwc2lzO1xyXG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgfVxyXG5cclxuICAgIC53Zy1kaWFsb2ctaXRlbS12YWwge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICB3aWR0aDogNDklO1xyXG4gICAgICAgIGhlaWdodDogcHgoMzApO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLyog5pON5L2c5Yy65Z+fICovXHJcbiAgICAud2ctZGlhbG9nLW9wdCB7XHJcbiAgICAgICAgLyog5YaF6YOo5oyJ6ZKu5LiA6Iis5L2/55So5a6a5L2NICovXHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBmb250LXNpemU6IDA7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogcHgoMjApO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIOe7n+S4gOaMiemSruagt+W8jyAqL1xyXG4gICAgLndnLWRpYWxvZy1idG4ge1xyXG4gICAgICAgIG1hcmdpbjogMCBweCgxMCk7XHJcbiAgICAgICAgQGluY2x1ZGUgaW5saW5lLWJsb2NrO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIOWNleihjOWIl+ihqOS/oeaBryAqL1xyXG4gICAgLndnLWRpYWxvZy1vcGVyIHtcclxuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbGZvbnQoMTQsIDMyLCAkY29sb3JfdGV4dF9kaWFsb2cpO1xyXG5cclxuICAgICAgICAvKiDovpPlhaXpobnns7vliJcgKi9cclxuICAgICAgICAub3Blci1sYWJlbCB7XHJcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgICAgICB3aWR0aDogMzAlO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICAgICAgaGVpZ2h0OiBweCgzMik7XHJcblxyXG4gICAgICAgICAgICBlbSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmMzMzMztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLm9wZXItaW5wdXQsXHJcbiAgICAgICAgLmNvcHktaW5wdXQge1xyXG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICAgICAgd2lkdGg6IDQ1JTtcclxuICAgICAgICAgICAgaGVpZ2h0OiBweCgzMik7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGxmb250KDE0LCAzMiwgIzk5OSk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XHJcbiAgICAgICAgICAgIGJvcmRlcjogc29saWQgMXB4ICNjMGMwYzA7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5vcGVyLW9wdCxcclxuICAgICAgICAuY29weS1idG4ge1xyXG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHB4KDEwKTtcclxuICAgICAgICAgICAgLy9AZXh0ZW5kICVzcHJpdGVfZGlhbG9nO1xyXG4gICAgICAgICAgICAvL0BpbmNsdWRlIGRpYWxvZ19vcHQ7XHJcbiAgICAgICAgICAgIC8vdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAvL0BpbmNsdWRlIGxmb250KDE0LCAzMiwgIzJhM2M2Mik7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAub3Blci1vcHQtdGlwIHtcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvcl90ZXh0X2RpYWxvZ19lbTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8qIOS4i+aLiemhueezu+WIlyAqL1xyXG4gICAgICAgIC5vcGVyLXNlbGVjdC1sYWJlbCB7XHJcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgICAgICB3aWR0aDogNjAlO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHB4KDY0KTtcclxuXHJcbiAgICAgICAgICAgIGVtIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3JfdGV4dF9kaWFsb2dfZW07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5vcGVyLXNlbGVjdCB7XHJcbiAgICAgICAgICAgIC8vIEBleHRlbmQgJXNwcml0ZV9kaWFsb2c7XHJcbiAgICAgICAgICAgIC8vQGluY2x1ZGUgZGlhbG9nX3NlbGVjdDtcclxuXHJcbiAgICAgICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICAgICAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcclxuICAgICAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgbGZvbnQoMTQsIDMyLCAjZmZmKTtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiBweCgxMCk7XHJcblxyXG4gICAgICAgICAgICBvcHRpb25baGlkZGVuXSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogIzAwMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLm9wZXItdGV4dGFyZWEtbGFiZWwge1xyXG4gICAgICAgICAgICAvL3BhZGRpbmctbGVmdDogcHgoNjQpO1xyXG4gICAgICAgICAgICBlbSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yX3RleHRfZGlhbG9nX2VtO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAub3Blci10ZXh0YXJlYSB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogcHgoMTAwKTtcclxuICAgICAgICAgICAgcGFkZGluZzogcHgoNCk7XHJcbiAgICAgICAgICAgIHJlc2l6ZTogbm9uZTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbGZvbnQoMTQsIDMyLCAjOTk5KTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcclxuICAgICAgICAgICAgYm9yZGVyOiBzb2xpZCAxcHggI2MwYzBjMDtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAud2ctZGlhbG9nLW9wZXJ7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogcHgoMTApO1xyXG4gICAgfVxyXG5cclxuICAgIC53Zy1kaWFsb2ctaHIge1xyXG4gICAgICAgIG1hcmdpbjogcHgoMjApO1xyXG4gICAgICAgIGJvcmRlcjogZGFzaGVkIDFweCAjNWI3NWFiO1xyXG4gICAgfVxyXG5cclxuICAgIC53Zy1kaWFsb2ctbGFiZWwge1xyXG4gICAgICAgIEBpbmNsdWRlIGxmb250KDE0LCAzMiwgJGNvbG9yX3RleHRfZGlhbG9nKTtcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICB3aWR0aDogMzAlO1xyXG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgfVxyXG5cclxuICAgIC53Zy1kaWFsb2ctaW5wdXQsXHJcbiAgICAuY29weS1pbnB1dCB7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgd2lkdGg6IDQ2JTtcclxuICAgICAgICBoZWlnaHQ6IHB4KDMyKTtcclxuICAgICAgICBAaW5jbHVkZSBsZm9udCgxNCwgMzIsICM5OTkpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XHJcbiAgICAgICAgYm9yZGVyOiBzb2xpZCAxcHggI2MwYzBjMDtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XHJcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHJcbiAgICAgICAgJi5pbnB1dC1waG9uZSB7XHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLndnLWRpYWxvZy1pbnB1dC1idG4ge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjM2MTYyO1xyXG4gICAgICAgIGhlaWdodDogcHgoMzIpO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgcHgoMTQpO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBtYXJnaW4tbGVmdDogcHgoMTApO1xyXG4gICAgICAgIEBpbmNsdWRlIGxmb250KDE0LCAzMiwgI2ZmZmZmZik7XHJcbiAgICB9XHJcblxyXG4gICAgLmNvcHktYnRuIHtcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICBAZXh0ZW5kICVzcHJpdGVfZGlhbG9nO1xyXG4gICAgICAgIEBpbmNsdWRlIGRpYWxvZ19idG5fY29weTtcclxuICAgICAgICBmb250LXNpemU6IDA7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMS4yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyog6KGl5YWF6K+05piOICovXHJcbiAgICAud2ctZGlhbG9nLXBzIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBAaW5jbHVkZSBsZm9udCgxNCwgMTYsICRjb2xvcl90ZXh0X2RpYWxvZ19lbSk7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IHB4KDEyKTtcclxuICAgIH1cclxuXHJcbiAgICAvKiDooajljZXpobkgKi9cclxuICAgIC53Zy1mb3JtLWl0ZW0ge1xyXG4gICAgICAgIEBpbmNsdWRlIGxmb250KDE0LCAzMiwgJGNvbG9yX3RleHRfZGlhbG9nKTtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDgwcHg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XHJcblxyXG4gICAgICAgIC5mb3JtLWxhYmVsIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHdpZHRoOiA4MHB4O1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5mb3JtLWlucHV0LFxyXG4gICAgICAgIC5mb3JtLXRleHRhcmVhIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbGZvbnQoMTQsIDMyLCAkY29sb3JfdGV4dF9kaWFsb2cpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xyXG4gICAgICAgICAgICBib3JkZXI6IHNvbGlkIDFweCAjYzBjMGMwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmZvcm0taW5wdXQge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDI4cHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgNXB4O1xyXG4gICAgICAgICAgICB3aWR0aDogMTgwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZm9ybS10ZXh0YXJlYSB7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDVweDtcclxuICAgICAgICAgICAgd2lkdGg6IDMyOHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4O1xyXG4gICAgICAgICAgICByZXNpemU6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5qLWZvcm0ge1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIH1cclxufVxyXG5cclxuLyog5ZCE5Liq5by55Ye65qGG54us56uL5qC35byPICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG5cclxuLyog6KGo5qC8ICovXHJcbi53Zy1kaWFsb2ctdGFibGUsXHJcbi53Zy1kaWFsb2ctbXlsaXN0IHtcclxuICAgIHdpZHRoOiBweCg4MDApO1xyXG5cclxuICAgIC53Zy1kaWFsb2ctY29udCB7XHJcbiAgICAgICAgcGFkZGluZzogcHgoMTApIHB4KDEwMCk7XHJcbiAgICB9XHJcblxyXG4gICAgLm0tbGlzdCB7XHJcbiAgICAgICAgd2lkdGg6IDUxJTtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICBtYXJnaW4tdG9wOiBweCgxMCk7XHJcbiAgICB9XHJcblxyXG4gICAgLmxpc3QtdGFibGUtdGQge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgQGluY2x1ZGUgbGZvbnQoMTQsIDMyLCAkY29sb3JfdGV4dF9kaWFsb2cpO1xyXG4gICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbGZvbnQoMTQsIDMyLCAkY29sb3JfdGV4dF9kaWFsb2dfYSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOm50aC1jaGlsZCgyKSB7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yX3RleHRfZGlhbG9nMjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmxpc3QtdGFibGUtdGhlYWQge1xyXG4gICAgICAgIC5jb2wtMSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiBweCgyMDApO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmNvbC0yIHtcclxuICAgICAgICAgICAgd2lkdGg6IHB4KDIwMCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC53Zy1kaWFsb2ctb3BlciB7XHJcbiAgICAgICAgd2lkdGg6IDMwMHB4O1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogNDBweDtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiDliIbpobUgKi9cclxuLndnLWRpYWxvZy1wYWdlciB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nLXRvcDogcHgoMTApO1xyXG5cclxuICAgIHNwYW4ge1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiBweCgyMCk7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIG1hcmdpbjogcHgoMik7XHJcbiAgICAgICAgQGluY2x1ZGUgbGZvbnQoMTQsIDIwLCAkY29sb3JfdGV4dF9kaWFsb2cpO1xyXG4gICAgfVxyXG5cclxuICAgIGEsXHJcbiAgICBzcGFuLmN1ciB7XHJcbiAgICAgICAgd2lkdGg6IHB4KDIwKTtcclxuICAgICAgICBoZWlnaHQ6IHB4KDIwKTtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIG1hcmdpbjogcHgoMik7XHJcbiAgICAgICAgQGluY2x1ZGUgbGZvbnQoMTQsIDIwLCAkY29sb3JfdGV4dF9kaWFsb2cpO1xyXG4gICAgfVxyXG5cclxuICAgIHNwYW4uY3VyIHtcclxuICAgICAgICBjb2xvcjogJGNvbG9yX3RleHRfZGlhbG9nX2VtO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgIHdpZHRoOiBweCgyMCk7XHJcbiAgICB9XHJcblxyXG4gICAgYTpob3ZlciB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvcl90ZXh0X2RpYWxvZ19lbTtcclxuICAgIH1cclxuXHJcbiAgICBhLnBhZ2VyLXByZSxcclxuICAgIGEucGFnZXItbmV4dCxcclxuICAgIHNwYW4ucGFnZXItcHJlLFxyXG4gICAgc3Bhbi5wYWdlci1uZXh0IHtcclxuICAgICAgICB3aWR0aDogcHgoNTApO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiDpgInmnI0gKi9cclxuLyog6YCJ5pyN5qGG5a696auYICovXHJcbiR4ZmtfdzogMTg0cHg7XHJcbiR4ZmtfaDogMjRweDtcclxuXHJcbiRzY3JvbGxiYXJfdzogMTBweDtcclxuLyog6YCJ5pyN5qGG6IOM5pmv6aKc6ImyICovXHJcbiR4ZmtfYmdfYzogI2ZmZmZmZjtcclxuLyog6YCJ5pyN5qGG5a2X5L2TKi9cclxuJHhma19mX2M6ICM5OTk7XHJcbi8qIOi+ueahhuminOiJsiAqL1xyXG4keGZrX2JfYzogI2MwYzBjMDtcclxuXHJcbi53Zy1kaWFsb2ctc2VydmVyU2VsZWN0IHtcclxuICAgIC53Zy1kaWFsb2ctbGluZSB7XHJcbiAgICAgICAgaGVpZ2h0OiBweCgyNCk7XHJcbiAgICAgICAgcGFkZGluZzogcHgoMTYpIDA7XHJcbiAgICB9XHJcblxyXG4gICAgLnNlbGVjdF9ib3gge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xOTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuc2VsZWN0X2pzIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl9iZ19kaWFsb2c7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAkeGZrX2JfYztcclxuICAgICAgICBAaW5jbHVkZSBsZm9udCgxNCwgMjQsICNmMmE4NjcpO1xyXG4gICAgICAgIGhlaWdodDogMjRweDtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDhweDtcclxuICAgICAgICB3aWR0aDogMjEwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLndkLWRpYWxvZy1vcHQtdGlwIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgICAgICBAaW5jbHVkZSBsZm9udCgxNCwgMjQsICRjb2xvcl90ZXh0X2RpYWxvZ19lbSk7XHJcbiAgICAgICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC53ZC1kaWFsb2ctb3B0IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICB9XHJcbiAgICAuc2VhcmNoLWlucHV0IHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxufVxyXG5cclxuaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xyXG4gICAgY29sb3I6ICM5OTk7XHJcbn1cclxuXHJcbmlucHV0OjotbW96LWlucHV0LXBsYWNlaG9sZGVyIHtcclxuICAgIGNvbG9yOiAjOTk5O1xyXG59XHJcblxyXG5pbnB1dDo6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcclxuICAgIGNvbG9yOiAjOTk5O1xyXG59XHJcblxyXG4vKiDpgInmnI3liqHlmaggKi9cclxuLm1fc2VsZWN0bGlzdCB7XHJcbiAgICAvKiDpgInmi6nmoYbpppbmnaEgKi9cclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICp6b29tOiAxO1xyXG4gICAgei1pbmRleDogMTExO1xyXG5cclxuICAgIC5tX3NlbGVjdGVkIHtcclxuICAgICAgICB3aWR0aDogJHhma193O1xyXG4gICAgICAgIGhlaWdodDogJHhma19oO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR4ZmtfYmdfYztcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBib3JkZXI6IHNvbGlkIDFweCAkeGZrX2JfYztcclxuXHJcbiAgICAgICAgLyrmj5DnpLoqL1xyXG4gICAgICAgIC5yZWR0aXAge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsZm9udCgxMiwgMTIsICNiYTEwM2EpO1xyXG4gICAgICAgICAgICB0b3A6IDMycHg7XHJcbiAgICAgICAgICAgIGxlZnQ6IDBweDtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLyog5paH5a2X5Yy65Z+fICovXHJcbiAgICAgICAgLnNlbGVjdF90eHQge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAycHg7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGxmb250KDE0LCAyNCwgJHhma19mX2MpO1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6ICR4ZmtfdyAtIDIzO1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTFweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8qIOS4i+aLieWMuuWfnyAqL1xyXG4gICAgICAgIC5mbGFnX2Rvd24ge1xyXG4gICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkeGZrX2JnX2M7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDEwcHggMCAwO1xyXG5cclxuICAgICAgICAgICAgYiB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmlhbmdsZXQoNnB4LCA2cHgsIDZweCwgJHhma19mX2MpO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgem9vbTogMTtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qIOmAieaLqeahhuS4i+aLiSAqL1xyXG4gICAgLm1fc2VsZWN0X2NvbnQge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR4ZmtfYmdfYztcclxuICAgICAgICBib3JkZXI6IHNvbGlkIDFweCAkeGZrX2JfYztcclxuICAgICAgICB0b3A6ICR4ZmtfaDtcclxuICAgICAgICB3aWR0aDogJHhma193O1xyXG4gICAgICAgIHBhZGRpbmc6IDBweDtcclxuICAgICAgICB6LWluZGV4OiA0O1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgICAgICAuc2VsZWN0bGlzdCB7XHJcbiAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR4ZmtfYmdfYztcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDVweDtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBsZm9udCgxMiwgMjQsICR4ZmtfZl9jKTtcclxuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiA0O1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGZpbHRlciAwLjNzO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHhma19mX2M7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR4ZmtfYmdfYztcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDEuMik7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICYuY3VyIHtcclxuICAgICAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHhma19mX2M7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR4ZmtfYmdfYztcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDEuMik7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC52X3Njcm9sbGJhciB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHdpZHRoOiAkc2Nyb2xsYmFyX3c7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGhlaWdodDogMjIwcHg7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgYmFja2dyb3VuZDogIzQxNGY2MjtcclxuICAgIH1cclxuXHJcbiAgICAudl9zY3JvbGxiYXJfYmcge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgd2lkdGg6ICRzY3JvbGxiYXJfdztcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzQxNGY2MjtcclxuICAgIH1cclxuXHJcbiAgICAudl9zY3JvbGxiYXJfYnRuIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgd2lkdGg6ICRzY3JvbGxiYXJfdyAtIDI7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2EyYWFiMDtcclxuICAgICAgICB6LWluZGV4OiAxMDA7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTJhYWIwO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIOaQnOe0oiAqL1xyXG4gICAgLnNlYXJjaC1pbnB1dCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICR4ZmtfYl9jO1xyXG4gICAgfVxyXG59XHJcblxyXG4ud2ctZGlhbG9nLWFkZHJlc3Mge1xyXG4gICAgLndnLWRpYWxvZy1jb250IHtcclxuICAgICAgICBwYWRkaW5nOiAwIHB4KDY0KTtcclxuICAgIH1cclxuXHJcbiAgICAud2ctZGlhbG9nLW9wZXIge1xyXG4gICAgICAgIHdpZHRoOiBweCgyODApO1xyXG4gICAgICAgIEBpbmNsdWRlIGlubGluZS1ibG9jaztcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XHJcblxyXG4gICAgICAgIC5vcGVyLWlucHV0IHtcclxuICAgICAgICAgICAgd2lkdGg6IHB4KDE3MCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC53Zy1kaWFsb2ctb3B0IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC53Zy1kaWFsb2ctb3Blci10ZXh0YXJlYSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogcHgoMTApICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi53Zy1kaWFsb2ctcHJvYntcclxuICAgIC53Zy1kaWFsb2ctaXRlbS1uYW1le1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHB4KDQwKTtcclxuICAgIH1cclxuICAgIC53Zy1kaWFsb2ctaXRlbS12YWx7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiBweCg0MCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi53Zy1kaWFsb2ctbXlsaXN0IC53Zy1kaWFsb2ctY29udCB7XHJcbiAgICBwYWRkaW5nOiBweCgxMCk7XHJcblxyXG4gICAgLm0tbGlzdC1ib3gge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgcHgoNTApO1xyXG4gICAgfVxyXG59XHJcblxyXG4ud2ctZGlhbG9nLXNlbGVjdHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICBtYXJnaW4tdG9wOiBweCgyNik7XHJcbiAgICAvKiDkuI3opoHmnInpu5jorqTnmoTkuIvmi4nnrq3lpLRVSSAqL1xyXG4gICAgYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIEBleHRlbmQgJXNwcml0ZV9kaWFsb2c7XHJcbiAgICBAaW5jbHVkZSBkaWFsb2dfc2VsZWN0O1xyXG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xyXG4gICAgQGluY2x1ZGUgbGZvbnQoMTQsMzIsIzk5OSk7XHJcbn0iLCJAY2hhcnNldCBcInV0Zi04XCI7XHJcbiRwYWxldHRlX2NvbG9yOiNkYWMxYWY7XHJcbiRwYWxldHRlX2NvbG9yX2g6I2ZmOTI2NjtcclxuJHBhbGV0dGVfbGluZUhlaWdodDozODtcclxuLm0tcGFsZXR0ZSB7XHJcblx0ei1pbmRleDogOTk7XHJcblx0cG9zaXRpb246IGZpeGVkO1xyXG5cdGJvdHRvbTogcHgoMjAwKTtcclxuXHRsZWZ0OiA1MCU7XHJcblx0bWFyZ2luLWxlZnQ6IHB4KDY3MCk7XHJcblx0cmlnaHQ6IGF1dG87XHJcblx0ZGlzcGxheTogbm9uZTtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICB3aWR0aDogcHgoMTU0KTtcclxuXHJcbiAgICAucGlje1xyXG4gICAgICAgIEBleHRlbmQgJXNwcml0ZV9wYWxldHRlO1xyXG5cdFx0QGluY2x1ZGUgcGFsZXR0ZV9pbWc7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgcHgoNSk7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIHBhZGRpbmc6IHB4KDIpO1xyXG4gICAgICAgIGltZ3tcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIHdpZHRoOiBweCgxNTApO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IHB4KDEwNik7IFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5iZ3tcclxuICAgICAgICBmb250LXNpemU6IDA7XHJcbiAgICB9XHJcblx0Lml0ZW17XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdEBleHRlbmQgJXNwcml0ZV9wYWxldHRlO1xyXG5cdFx0QGluY2x1ZGUgcGFsZXR0ZV9pdGVtO1xyXG5cdFx0QGluY2x1ZGUgYmZvbnQoMTQsJHBhbGV0dGVfbGluZUhlaWdodCwkcGFsZXR0ZV9jb2xvcik7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogcHgoOCk7XHJcblx0XHQmOmhvdmVyLFxyXG5cdFx0Ji5jdXJ7XHJcblx0XHRcdEBpbmNsdWRlIHBhbGV0dGVfaXRlbV9jdXI7XHJcblx0XHRcdEBpbmNsdWRlIGJmb250KDE0LCRwYWxldHRlX2xpbmVIZWlnaHQsJHBhbGV0dGVfY29sb3JfaCk7XHJcblx0XHR9XHJcblx0fVxyXG5cdC8qIOWboOS4uuacieWPr+iDveS4pOiAhXVp5LiN5LiA6Ie0IOeLrOeriyAqL1xyXG5cdC5iYWNre1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcblx0XHRcclxuXHRcdEBpbmNsdWRlIGJmb250KDE0LCRwYWxldHRlX2xpbmVIZWlnaHQsJHBhbGV0dGVfY29sb3IpO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdCY6aG92ZXIsXHJcblx0XHQmLmN1cntcclxuXHRcdFx0Ly8gQGluY2x1ZGUgcGFsZXR0ZV9pdGVtX2N1cjtcclxuXHRcdFx0QGluY2x1ZGUgYmZvbnQoMTQsJHBhbGV0dGVfbGluZUhlaWdodCwkcGFsZXR0ZV9jb2xvcl9oKTtcclxuXHRcdH1cclxuICAgICAgICAmOjphZnRlcntcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlICB0cmlhbmdsZWIoNHB4LDRweCw0cHgsI2ZmOTI2Nik7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICAgICAgdG9wOiBweCgtNik7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB9XHJcblx0fVxyXG59XHJcblxyXG4uc21fMTgwMCAubS1maXhlZE1lbnUge1xyXG5cdGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xyXG5cdG1hcmdpbi1sZWZ0OiA2NzBweCAhaW1wb3J0YW50O1xyXG59XHJcbiJdfQ== */

