@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,500,700|Racing+Sans+One&display=swap");

/* ----------------------------------------
 Reset
---------------------------------------- */

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	font-size: 100%;
	vertical-align: baseline;
}

html {
	line-height: 1;
}

ol,
ul,
li {
	list-style: none;
	vertical-align: top;
}

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

caption,
th,
td {
	text-align: left;
	font-weight: normal;
	vertical-align: middle;
}

q,
blockquote {
	quotes: none;
}

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

a img {
	border: none;
}

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

/* ----------------------------------------
 Base
---------------------------------------- */

html {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 62.5%;
}

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

body {
	background: #fff;
	color: #000;
	width: 100%;
	margin: 0 auto;
	font-size: 1.4rem;
	font-weight: 500;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	line-height: 1.65;
}

* {
	margin: 0;
	padding: 0;
	font-style: normal;
	list-style: none;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

a {
	color: #000;
	text-decoration: none;
	border: none;
	outline: none;
}

a:focus,
*:focus {
	outline: none;
}

br {
	line-height: 1;
}

img {
	vertical-align: top;
}

input[type="button"],
input[type="submit"],
select,
button {
	cursor: pointer;
}

::-ms-expand {
	display: none;
}

body.ios a img {
	opacity: 1;
}

/* IE8+, Chrome */

input,
button {
	outline: 0;
}

/* Firefox */

input::-moz-focus-inner,
button::-moz-focus-inner {
	border: 0;
}

input[type="button"],
input[type="submit"],
input[type="text"],
input[type="email"],
select,
button,
textarea {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	border: none;
	border-radius: 0;
}

input::-webkit-input-placeholder,
input:-ms-input-placeholder,
input::-moz-placeholder {
	color: #aaa;
	font-weight: normal;
}

/*clearfix --------------------------- */

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

.clearfix {
	zoom: 1;
}

.cl {
	clear: both;
}

.fl {
	float: left;
}

.fr {
	float: right;
}

.pc {
	display: block;
}

.sp {
	display: none;
}

.pc-in {
	display: inline-block;
}

.sp-in {
	display: none;
}

.pc-table {
	display: table;
}

.sp-table {
	display: none;
}

.mt0 {
	margin-top: 0px !important;
}

.mb0 {
	margin-bottom: 0px !important;
}

.pt0 {
	padding-top: 0px !important;
}

.pb0 {
	padding-bottom: 0px !important;
}

.mt10 {
	margin-top: 10px !important;
}

.mb10 {
	margin-bottom: 10px !important;
}

.pt10 {
	padding-top: 10px !important;
}

.pb10 {
	padding-bottom: 10px !important;
}

.mt20 {
	margin-top: 20px !important;
}

.mb20 {
	margin-bottom: 20px !important;
}

.pt20 {
	padding-top: 20px !important;
}

.pb20 {
	padding-bottom: 20px !important;
}

.mt30 {
	margin-top: 30px !important;
}

.mb30 {
	margin-bottom: 30px !important;
}

.pt30 {
	padding-top: 30px !important;
}

.pb30 {
	padding-bottom: 30px !important;
}

.mt40 {
	margin-top: 40px !important;
}

.mb40 {
	margin-bottom: 40px !important;
}

.pt40 {
	padding-top: 40px !important;
}

.pb40 {
	padding-bottom: 40px !important;
}

.mt50 {
	margin-top: 50px !important;
}

.mb50 {
	margin-bottom: 50px !important;
}

.pt50 {
	padding-top: 50px !important;
}

.pb50 {
	padding-bottom: 50px !important;
}

.mt60 {
	margin-top: 60px !important;
}

.mb60 {
	margin-bottom: 60px !important;
}

.pt60 {
	padding-top: 60px !important;
}

.pb60 {
	padding-bottom: 60px !important;
}

.mt70 {
	margin-top: 70px !important;
}

.mb70 {
	margin-bottom: 70px !important;
}

.pt70 {
	padding-top: 70px !important;
}

.pb70 {
	padding-bottom: 70px !important;
}

.mt80 {
	margin-top: 80px !important;
}

.mb80 {
	margin-bottom: 80px !important;
}

.pt80 {
	padding-top: 80px !important;
}

.pb80 {
	padding-bottom: 80px !important;
}

.mt90 {
	margin-top: 90px !important;
}

.mb90 {
	margin-bottom: 90px !important;
}

.pt90 {
	padding-top: 90px !important;
}

.pb90 {
	padding-bottom: 90px !important;
}

.mt100 {
	margin-top: 100px !important;
}

.mb100 {
	margin-bottom: 100px !important;
}

.pt100 {
	padding-top: 100px !important;
}

.pb100 {
	padding-bottom: 100px !important;
}

/* ========================================
 Common Setting
======================================== */

html.is-block body {
	overflow: hidden;
	height: 100%;
}

html .wrapper {
	overflow: hidden;
}

.content-wrap section {
	padding-top: 50px;
	padding-bottom: 120px;
}

.content-wrap .inner {
	width: 100%;
	max-width: 900px;
	margin-right: auto;
	margin-left: auto;
	padding-left: 20px;
	padding-right: 20px;
	position: relative;
	z-index: 10;
}

.content-wrap h2 {
	margin-bottom: 54px;
	font-family: 'Racing Sans One', cursive;
	color: #000;
	font-size: 8rem;
	text-align: center;
	letter-spacing: 0.05em;
	line-height: 1;
}

.content-wrap h3 {
	margin: 60px 0 40px;
	font-weight: 700;
	font-size: 2.1rem;
}

.content-wrap .subtitle {
	margin-top: -10px;
	font-family: 'Racing Sans One', cursive;
	color: #000;
	font-size: 3.9rem;
	text-align: center;
	letter-spacing: 0.05em;
	line-height: 1;
}

.content-wrap .subtitle span {
	font-style: 4.4rem;
}

.content-wrap .lead {
	margin-top: 20px;
	font-weight: 700;
	text-align: center;
}

#pagetop {
	position: relative;
	height: 0px;
	z-index: 999;
}

#pagetop.is-fixed a {
	position: fixed;
	right: 30px;
	bottom: 10px;
}

#pagetop a {
	display: block;
	width: 44px;
	height: 82px;
	position: absolute;
	right: 30px;
	bottom: -12px;
	margin-bottom: 0px;
	font-size: 1.8rem;
	font-family: 'Racing Sans One', cursive;
	line-height: 1;
	text-align: center;
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	-webkit-filter: drop-shadow(4px 4px 4px rgba(0, 0, 0, 0.2));
	filter: drop-shadow(4px 4px 4px rgba(0, 0, 0, 0.2));
}

#pagetop a::before,
#pagetop a::after,
#pagetop a .arrow::before,
#pagetop a .arrow::after {
	content: "";
	width: 40px;
	height: 28px;
	background: url(../img/svg/page_arrow.svg) no-repeat;
	position: absolute;
	left: 2px;
}

#pagetop a::before {
	top: 0;
}

#pagetop a::after {
	top: 18px;
}

#pagetop a .arrow::before {
	top: 36px;
}

#pagetop a .arrow::after {
	top: 54px;
}

#pagetop a .arrow {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
}

#pagetop a .text {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	width: 100%;
	height: 100%;
	padding-top: 5px;
	position: relative;
	z-index: 1;
	letter-spacing: 1px;
}

.flex-wrap {
	width: 100%;
	height: 100%;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
}

.flex-wrap.abs {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
}

.op-anim,
.js-curtain {
	display: inline-block;
	position: relative;
}

.op-anim::after,
.js-curtain::after {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: calc(100% + 2px);
	top: -1px;
	left: -30px;
	right: -20px;
	width: auto;
	background: -webkit-gradient(linear, left top, right top, from(#00ffb2), to(#ffff00));
	background: -webkit-linear-gradient(left, #00ffb2, #ffff00);
	background: linear-gradient(90deg, #00ffb2, #ffff00);
	-webkit-transform-origin: left center;
	transform-origin: left center;
	-webkit-transform: skewX(-37deg) scaleX(0) translateZ(0);
	transform: skewX(-37deg) scaleX(0) translateZ(0);
	z-index: 100;
}

.op-anim.show::after,
.js-curtain.show::after {
	-webkit-animation: reveal 0.7s cubic-bezier(0.9, 0, 0.1, 1) both;
	animation: reveal 0.7s cubic-bezier(0.9, 0, 0.1, 1) both;
}

.op-anim.done .curtain-in,
.js-curtain.done .curtain-in {
	opacity: 1;
	visibility: visible;
	display: block;
}

.op-anim .curtain-in,
.js-curtain .curtain-in {
	opacity: 0;
	visibility: hidden;
	padding-right: 20px;
}

.anim {
	opacity: 0;
	-webkit-transition: 0.4s 0.2s cubic-bezier(0, 0, 0.58, 1);
	transition: 0.4s 0.2s cubic-bezier(0, 0, 0.58, 1);
}

.anim.show {
	opacity: 1;
	-webkit-transform: translateX(0px);
	transform: translateX(0px);
	-webkit-transform: translateY(0px);
	transform: translateY(0px);
}

.anim-left {
	-webkit-transform: translateX(30px);
	transform: translateX(30px);
}

.anim-right {
	-webkit-transform: translateX(-30px);
	transform: translateX(-30px);
}

.anim-up {
	-webkit-transform: translateY(30px);
	transform: translateY(30px);
}

.content-wrap {
	position: relative;
}

.content-wrap .arrow-effect {
	width: 400px;
	position: absolute;
	z-index: 5;
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

.content-wrap .arrow-effect.is-right {
	right: 0;
	top: -60px;
}

.content-wrap .arrow-effect.is-left {
	left: 0;
	bottom: 22%;
}

.content-wrap .arrow-effect li {
	width: 100%;
	height: 370px;
	position: relative;
}

.content-wrap .arrow-effect li:nth-of-type(2) {
	margin-top: -100px;
}

.content-wrap .arrow-effect li:nth-of-type(3) {
	margin-top: -230px;
}

.content-wrap .arrow-effect li:nth-of-type(3)::before,
.content-wrap .arrow-effect li:nth-of-type(3)::after {
	background: #ffff00;
}

.content-wrap .arrow-effect li::before,
.content-wrap .arrow-effect li::after {
	content: "";
	background: #f6f6f6;
	width: 50%;
	height: 172px;
	position: absolute;
	top: 100px;
	z-index: 5;
}

.content-wrap .arrow-effect li::after {
	-webkit-transform: skewY(45deg);
	transform: skewY(45deg);
	left: 0;
}

.content-wrap .arrow-effect li::before {
	-webkit-transform: skewY(-45deg);
	transform: skewY(-45deg);
	right: 0;
}

.halfway-bg {
	position: relative;
	overflow: hidden;
	margin-top: -160px;
	padding-top: 160px;
	padding-bottom: 160px;
	margin-bottom: -320px;
}

.halfway-bg::before {
	content: "";
	background: #ffff00;
	width: 100%;
	height: 37%;
	position: absolute;
	left: 0;
	top: 370px;
	-webkit-transform: skewY(8deg);
	transform: skewY(8deg);
	z-index: 0;
}

.halfway-bg::after {
	content: "";
	background: #f6f6f6;
	width: 100%;
	height: 56%;
	position: absolute;
	left: 0;
	top: 270px;
	-webkit-transform: skewY(-8deg);
	transform: skewY(-8deg);
	z-index: 1;
}

.halfway-bg section {
	margin-top: 0;
}

.bottom-bg {
	position: relative;
	overflow: hidden;
	width: 100%;
	height: 100%;
	margin-top: -160px;
	padding-top: 160px;
}

.bottom-bg::before {
	content: "";
	background: #ffff00;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 215px;
	-webkit-transform: skewY(-8deg);
	transform: skewY(-8deg);
	z-index: 0;
}

.bottom-bg::after {
	content: "";
	background: #f6f6f6;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 210px;
	-webkit-transform: skewY(8deg);
	transform: skewY(8deg);
	z-index: 1;
}

.bottom-bg section {
	margin-top: 0;
	padding-top: 0;
}

/* ----------------------------------------
 Header
---------------------------------------- */

header {
	width: 100%;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 9999;
	text-align: center;
}

header::before {
	content: "";
	background: rgba(255, 255, 255, 0.8);
	width: 100%;
	height: 80px;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 0;
	-webkit-transition: all 0.4s cubic-bezier(0.455, 0.03, 0.515, 0.955);
	transition: all 0.4s cubic-bezier(0.455, 0.03, 0.515, 0.955);
	-webkit-transform: translate3d(0, -82px, 0);
	transform: translate3d(0, -82px, 0);
}

header .sp-navbtn {
	width: 24px;
	height: 22px;
	position: absolute;
	right: 20px;
	top: 20px;
	z-index: 9999;
}

header .sp-navbtn span {
	width: 100%;
	height: 2px;
	background: #000;
	position: absolute;
	left: 0;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

header .sp-navbtn span:nth-of-type(1) {
	top: 0;
}

header .sp-navbtn span:nth-of-type(2) {
	top: 10px;
}

header .sp-navbtn span:nth-of-type(3) {
	bottom: 0;
}

html.is-block header .sp-navbtn span {
	background: #fff;
}

html.is-block header .sp-navbtn span:nth-of-type(1) {
	width: 110%;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
	top: 50%;
	margin-top: -1px;
}

html.is-block header .sp-navbtn span:nth-of-type(2) {
	width: 0%;
	left: 50%;
}

html.is-block header .sp-navbtn span:nth-of-type(3) {
	width: 110%;
	-webkit-transform: rotate(225deg);
	transform: rotate(225deg);
	bottom: 50%;
	margin-bottom: -1px;
}

header .nav-wrap {
	display: inline-block;
	-webkit-transition: all 0.4s;
	transition: all 0.4s;
	-webkit-transform: translate3d(72px, -94px, 0);
	transform: translate3d(72px, -94px, 0);
}

header #nav {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	overflow: visible;
	font-family: 'Racing Sans One', cursive;
}

header #nav > li {
	position: relative;
	text-align: left;
}

header #nav > li::after {
	content: "";
	width: 100%;
	left: 0;
	top: 0;
	z-index: 0;
	-webkit-transform: skewX(-37deg) translate3d(0, 0, 0);
	transform: skewX(-37deg) translate3d(0, 0, 0);
	position: absolute;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	z-index: -1;
}

header #nav > li.title {
	height: 94px;
	font-size: 2.2rem;
	z-index: 1;
}

header #nav > li.title::after {
	background: -webkit-gradient(linear, left top, right top, from(#00ffb2), to(#ffff00));
	background: -webkit-linear-gradient(left, #00ffb2, #ffff00);
	background: linear-gradient(90deg, #00ffb2, #ffff00);
	height: 100%;
}

header #nav > li.title .logo {
	padding: 0 30px 5px 45px;
	height: 94px;
}

header #nav > li:not(.title) {
	height: 80px;
}

header #nav > li:not(.title)::after {
	background: rgba(0, 0, 0, 0.8);
	height: 100%;
	-webkit-transition: all 0.2s;
	transition: all 0.2s;
	-webkit-transform: skewX(-37deg) translate3d(0, -80px, 0);
	transform: skewX(-37deg) translate3d(0, -80px, 0);
}

header #nav > li .logo,
header #nav > li a {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	height: 80px;
	padding: 0 25px;
	font-size: 2.6rem;
	line-height: 1;
	letter-spacing: 0.1em;
	color: #000;
}

header #nav > li .logo .in,
header #nav > li a .in {
	display: block;
	position: relative;
	z-index: 1;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

header #nav > li .logo .arrow,
header #nav > li a .arrow {
	display: inline-block;
	width: 24px;
	height: 17px;
	margin-left: 15px;
	position: relative;
}

header #nav > li .logo .arrow::before,
header #nav > li .logo .arrow::after,
header #nav > li a .arrow::before,
header #nav > li a .arrow::after {
	content: "";
	background: #000;
	width: 12px;
	height: 5px;
	position: absolute;
	top: 6px;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

header #nav > li .logo .arrow::after,
header #nav > li a .arrow::after {
	-webkit-transform: skewY(45deg);
	transform: skewY(45deg);
	left: 0;
}

header #nav > li .logo .arrow::before,
header #nav > li a .arrow::before {
	-webkit-transform: skewY(-45deg);
	transform: skewY(-45deg);
	right: 0;
}

body.landscape header #nav > li .logo,
body.landscape
header #nav > li a {
	padding: 4px 0;
}

header #nav > li .subNav {
	display: none;
	width: 100%;
	position: relative;
	left: -30px;
	z-index: 100;
	-webkit-transform: skewX(-37deg);
	transform: skewX(-37deg);
	-webkit-transform-origin: right top;
	transform-origin: right top;
}

header #nav > li .subNav li {
	background: rgba(0, 0, 0, 0.8);
	border-top: 1px solid #000;
}

header #nav > li .subNav li a {
	display: block;
	color: #fff;
	height: auto;
	padding: 14px 20px 14px 40px;
	text-align: left;
	font-size: 1.8rem;
	line-height: 1;
}

header #nav > li .subNav li a span {
	display: block;
	-webkit-transform: skewX(37deg);
	transform: skewX(37deg);
	position: relative;
	padding-left: 34px;
}

header #nav > li .subNav li a span::before {
	content: "";
	background: #fff;
	width: 1.2em;
	height: 1px;
	position: absolute;
	left: 0;
	bottom: 2px;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

body.landscape header #nav > li .subNav li a {
	padding: 4px 10px;
}

/* ----------------------------------------
 Footer
---------------------------------------- */

footer {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	background: #000;
	color: #fff;
	width: 100%;
	height: 200px;
	padding: 0 35px;
	font-size: 1.2rem;
	line-height: 2;
	text-align: center;
	position: relative;
	z-index: 10;
}

/* ========================================
 Top Setting
======================================== */

#information {
	padding-top: 0;
	padding-bottom: 100px;
}

.hero-wrap {
	position: relative;
	z-index: 10;
}

.hero-wrap::before {
	content: "";
	background: #ffff00;
	width: 100%;
	height: 440px;
	position: absolute;
	left: 0;
	bottom: 20%;
	-webkit-transform: skewY(-8deg);
	transform: skewY(-8deg);
}

.hero {
	width: 100%;
	position: relative;
	z-index: 1;
}

.hero h1 {
	width: 42%;
	line-height: 1;
	position: absolute;
	top: 23.57%;
	left: 14.28%;
	z-index: 10;
}

.hero h1 div {
	line-height: 0;
}

.hero h1 div.shadow::after {
	display: none;
}

.hero h1 div.shadow .curtain-in {
	overflow: visible;
}

.hero h1 div.shadow img {
	-webkit-filter: drop-shadow(12px 12px 4px rgba(0, 0, 0, 0.4));
	filter: drop-shadow(12px 12px 4px rgba(0, 0, 0, 0.4));
}

.hero h1 div img {
	display: block;
	width: 100%;
	-webkit-transition: all 0.2s;
	transition: all 0.2s;
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

.hero h1 div img[src$=".svg"] {
	width: 100%;
}

.hero h1 .text1 {
	width: 91.19%;
}

.hero h1 .text2 {
	margin-top: 3.4%;
	width: 99.79%;
}

.hero h1 .text3 {
	margin-top: 1.7%;
	width: 70.06%;
}

.hero h1 .text4 {
	margin-top: 6.8%;
	width: 71.34%;
}

.hero figure img {
	width: 100%;
}

.hero figure.front {
	width: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 20;
}

.hero figure.bg {
	width: 100%;
	position: relative;
	z-index: 0;
}

.hero .scroll-arrow {
	position: absolute;
	left: 50%;
	top: 62%;
	z-index: 30;
	-webkit-filter: drop-shadow(12px 12px 4px rgba(0, 0, 0, 0.2));
	filter: drop-shadow(12px 12px 4px rgba(0, 0, 0, 0.2));
	margin-left: -32px;
	-webkit-animation-name: MoveDownInfi;
	animation-name: MoveDownInfi;
	-webkit-animation-duration: 2.4s;
	animation-duration: 2.4s;
	-webkit-animation-delay: 0.5s;
	animation-delay: 0.5s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
	animation-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
	-webkit-animation-iteration-count: infinite;
	animation-iteration-count: infinite;
}

.infoUl li {
	margin-top: 16px;
}

.infoUl li:first-child {
	margin: 0;
}

.infoUl li.new a {
	width: 100%;
}

.infoUl li.new a .text {
	position: relative;
}

.infoUl li.new a .text::after {
	content: "NEW";
	display: inline-block;
	color: #ff0000;
	margin-left: 0.5em;
	font-size: 1.3rem;
	font-weight: 700;
}

.infoUl li a {
	position: relative;
	padding-right: 0 !important;
}

.infoUl li a .a-inner {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

.infoUl li a span {
	display: block;
}

.infoUl li a .tag {
	background: #000;
	color: #fff;
	width: 110px;
	min-width: 110px;
	height: 30px;
	margin-right: 20px;
	padding: 7px 0;
	font-family: 'Racing Sans One', cursive;
	font-size: 1.4rem;
	text-align: center;
	line-height: 1;
	letter-spacing: 0.05em;
}

.infoUl li a .date {
	padding-top: 2px;
	margin-right: 1em;
}

.infoUl li a .text {
	padding-top: 2px;
	text-decoration: underline;
}

.cd-variation {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin-top: 60px;
}

.cd-variation li {
	width: 29.06%;
}

.cd-variation li figure {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	position: relative;
	padding-top: 90%;
}

.cd-variation li figure img {
	-webkit-box-shadow: 14px 14px 4px rgba(0, 0, 0, 0.1);
	box-shadow: 14px 14px 4px rgba(0, 0, 0, 0.1);
	width: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.cd-variation li .information {
	padding: 30px 10px 0;
}

.cd-variation li .information p {
	font-size: 1.8rem;
	font-weight: 700;
	margin-bottom: 10px;
	line-height: 1;
}

.release-block .text {
	padding-left: 15px;
}

.cd-information ul {
	padding-left: 15px;
	counter-reset: number;
	margin-bottom: 40px;
}

.cd-information ul li {
	margin-top: 20px;
}

.cd-information ul li:first-child {
	margin-top: 0;
}

.cd-information ul li .curtain-in {
	margin-top: 10px;
}

.cd-information ul li .curtain-in.num {
	margin-top: 0;
}

.cd-information ul li .num {
	padding-top: 25px;
	padding-left: 80px;
	position: relative;
}

.cd-information ul li .num::after {
	content: "";
	background: #000;
	width: 6px;
	height: 30px;
	position: absolute;
	left: 55px;
	top: 21px;
	-webkit-transform: skewX(-45deg);
	transform: skewX(-45deg);
}

.cd-information ul li .num::before {
	counter-increment: number;
	content: counter(number, decimal-leading-zero);
	font-family: 'Racing Sans One', cursive;
	font-size: 4rem;
	line-height: 1;
	position: absolute;
	left: 0;
	top: 0;
}

.cd-information ul li .title {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	margin-bottom: 5px;
	font-weight: 700;
	font-size: 2.1rem;
	letter-spacing: 0.05em;
}

.cd-information ul li .title a {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	font-family: 'Racing Sans One', cursive;
	width: 118px;
	height: 26px;
	margin-left: 20px;
	color: #000;
	font-size: 1.6rem;
	letter-spacing: 2px;
	-webkit-box-shadow: 4px 4px 4px rgba(0, 0, 0, 0.2);
	box-shadow: 4px 4px 4px rgba(0, 0, 0, 0.2);
	position: relative;
	z-index: 1;
}

.cd-information ul li .title a::before,
.cd-information ul li .title a::after {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 0;
	-webkit-transition: all 0.4s;
	transition: all 0.4s;
}

.cd-information ul li .title a::before {
	background: -webkit-gradient(linear, left top, right top, from(#00ffb2), to(#ffff00));
	background: -webkit-linear-gradient(left, #00ffb2, #ffff00);
	background: linear-gradient(90deg, #00ffb2, #ffff00);
}

.cd-information ul li .title a:after {
	background: -webkit-gradient(linear, left top, right top, from(#bdffeb), to(#ffff94));
	background: -webkit-linear-gradient(left, #bdffeb, #ffff94);
	background: linear-gradient(90deg, #bdffeb, #ffff94);
	opacity: 0;
}

.cd-information ul li .title a .in {
	line-height: 12px;
	position: relative;
	z-index: 1;
}

.cd-information ul li .title a .in i {
	display: inline-block;
	width: 18px;
	height: 12px;
	margin-left: 10px;
	position: relative;
	top: 1px;
}

.cd-information ul li .title a .in i::before,
.cd-information ul li .title a .in i::after {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 0;
	-webkit-transition: all 0.4s;
	transition: all 0.4s;
}

.cd-information ul li .title a .in i::before {
	background: url(../img/svg/icon_youtube.svg) no-repeat center;
}

.cd-information ul li .title a .in i:after {
	background: url(../img/svg/icon_youtube_on.svg) no-repeat center;
	opacity: 0;
}

.cd-information ul li .tieup {
	color: #2f4fff;
}

.movie-list {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.movie-list li {
	width: 47.67%;
	margin-top: 40px;
}

.movie-list li .youtube {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}

.movie-list li .youtube iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
}

.movie-list li .text {
	margin-top: 5px;
	padding: 0 10px;
}

/* ========================================
 Under Setting
======================================== */

#page-information .wrapper {
	padding-top: 94px;
}

#page-information .halfway-bg {
	margin-bottom: 0;
}

#page-information .halfway-bg::before {
	position: fixed;
	top: 70%;
}

#page-information .halfway-bg::after {
	position: fixed;
	top: 70%;
}

#page-information .content-wrap {
	padding-bottom: 40px;
	padding-top: 160px;
}

#page-information .content-wrap section {
	padding-bottom: 100px;
}

#page-information .content-wrap h2 {
	margin-bottom: 30px;
}

#page-information .content-wrap .arrow-effect.is-right {
	position: fixed;
	top: 94px;
}

.mediaUl {
	border-bottom: solid 1px #000;
}

.mediaUl li {
	border-top: solid 1px #000;
	padding: 30px 20px;
}

.mediaUl li .infoDate {
	font-size: 1.6rem;
	font-weight: 700;
}

.mediaUl li .infoTitle {
	font-size: 1.8rem;
	font-weight: 700;
}

.mediaUl li .infoTitle .new {
	display: inline-block;
	color: #ff0000;
	margin-left: 0.5em;
}

.mediaUl li .infoText {
	margin-top: 15px;
	color: #4d4d4d;
}

.mediaUl li a {
	color: #4d4d4d;
}

.mediaUl li a:hover {
	text-decoration: underline;
}

.mediaUl li strong {
	font-weight: 700;
}

.infoTable {
	width: 100%;
	background: #fff;
	margin-top: 30px;
	border: solid 1px #ccc;
}

.infoTable th,
.infoTable td {
	border: solid 1px #ccc;
	padding: 5px 10px;
}

.infoTable th {
	font-weight: 700;
	text-align: center;
}

.infoTable td {
	padding: 5px 10px;
}

.innerBlock {
	margin-top: 50px;
}

.goodsList {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-top: 25px;
}

.goodsList .goods {
	width: 45.12%;
	margin: 25px 0;
}

.goodsList .goods img {
	width: 100%;
}

.goodsList .goods .goodsText {
	margin-top: 10px;
	font-size: 1.2rem;
	color: #4d4d4d;
}

.goodsList .goods .goodsText strong {
	color: #000;
	font-size: 2rem;
}

.half-block {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.half-block p {
	width: 50%;
}

/****/

.etxTextS {
	font-size: 14px;
	color: #4d4d4d;
}

.etxTextS strong {
	font-size: 20px;
}

.etxTextS span {
	font-weight: 700;
}

.etxBlock .floatLeft {
	float: left;
}

.etxBlock .floatRight {
	float: right;
}

/* ----------------------------------------
 Animation
---------------------------------------- */

/* ---------- Sprite SVG START ---------- */

.svg-image {
	background: url("../img/sprite-bg.svg") no-repeat;
}

.svg-image {
	background-position: 0 0;
}

.svg-image_dims {
	width: 18px;
	height: 18px;
}

/* ---------- Sprite SVG END ---------- */

@media screen and (min-width: 0\0) and (-webkit-min-device-pixel-ratio: 0.75), screen and (min-width: 0\0) and (min-resolution: 72dpi) {

.infoUl li .js-curtain {
	width: 100%;
}

}

@media only screen and (min-width: 768px) {

#pagetop a:hover::before,
#pagetop a:hover::after,
#pagetop a:hover .arrow::before,
#pagetop a:hover .arrow::after {
	-webkit-animation-name: MoveUp;
	animation-name: MoveUp;
	-webkit-animation-duration: .5s;
	animation-duration: .5s;
	-webkit-animation-delay: 0s;
	animation-delay: 0s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
	animation-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

header.bg::before {
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

header.view .nav-wrap {
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

header #nav > li:not(.title).hover,
header #nav > li:not(.title):hover {
	color: #00ffb2;
}

header #nav > li:not(.title).hover::after,
header #nav > li:not(.title):hover::after {
	-webkit-transform: skewX(-37deg) translate3d(0, 0, 0);
	transform: skewX(-37deg) translate3d(0, 0, 0);
}

header #nav > li:not(.title).hover a .in,
header #nav > li:not(.title):hover a .in {
	background: -webkit-gradient(linear, left top, right top, from(#00ffb2), to(#ffff00));
	background: -webkit-linear-gradient(left, #00ffb2, #ffff00);
	background: linear-gradient(90deg, #00ffb2, #ffff00);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
}

.ie header #nav > li:not(.title).hover a .in,
.ie11 header #nav > li:not(.title).hover a .in,
.edge header #nav > li:not(.title).hover a .in,
.ie header #nav > li:not(.title):hover a .in,
.ie11 header #nav > li:not(.title):hover a .in,
.edge header #nav > li:not(.title):hover a .in {
	background: none;
	color: #80FF59;
	-webkit-text-fill-color: #80FF59;
}

header #nav > li:not(.title).hover a .arrow::before,
header #nav > li:not(.title).hover a .arrow::after,
header #nav > li:not(.title):hover a .arrow::before,
header #nav > li:not(.title):hover a .arrow::after {
	background: #ffff00;
}

header #nav > li .subNav li a:hover span {
	background: -webkit-gradient(linear, left top, right top, from(#00ffb2), to(#ffff00));
	background: -webkit-linear-gradient(left, #00ffb2, #ffff00);
	background: linear-gradient(90deg, #00ffb2, #ffff00);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

header #nav > li .subNav li a:hover span::before {
	background: #00ffb2;
}

.ie header #nav > li .subNav li a:hover span,
.ie11 header #nav > li .subNav li a:hover span,
.edge header #nav > li .subNav li a:hover span {
	background: none;
	color: #80FF59;
	-webkit-text-fill-color: #80FF59;
}

.cd-information ul li .title a:hover::before {
	opacity: 0;
}

.cd-information ul li .title a:hover::after {
	opacity: 1;
}

.cd-information ul li .title a:hover .in i::before {
	opacity: 0;
}

.cd-information ul li .title a:hover .in i::after {
	opacity: 1;
}

}

@media only screen and (max-width: 1280px) {

.content-wrap .arrow-effect {
	width: 300px;
}

}

@media only screen and (max-width: 1000px) {

header::before {
	height: 60px;
}

header #nav > li.title {
	height: 74px;
	font-size: 2rem;
}

header #nav > li.title .logo {
	padding: 0 10px 5px 30px;
	height: 74px;
}

header #nav > li:not(.title) {
	height: 60px;
}

header #nav > li .logo,
header #nav > li a {
	height: 60px;
	padding: 0 15px;
	font-size: 2rem;
}

header #nav > li .logo .arrow,
header #nav > li a .arrow {
	width: 20px;
	height: 16px;
	margin-left: 10px;
}

header #nav > li .logo .arrow::before,
header #nav > li .logo .arrow::after,
header #nav > li a .arrow::before,
header #nav > li a .arrow::after {
	content: "";
	width: 10px;
	height: 4px;
	top: 8px;
}

header #nav > li .subNav {
	left: -23px;
}

header #nav > li .subNav li a {
	padding: 12px 20px;
	font-size: 1.6rem;
}

}

@media only screen and (max-width: 768px) {

body {
	font-size: 1.2rem;
}

body {
	min-width: inherit;
}

img {
	width: 100%;
}

a:hover img {
	opacity: 1;
}

body.ios input[type="text"],
body.ios select,
body.ios textarea {
	font-size: 16px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border-radius: 0;
}

.pc {
	display: none;
}

.sp {
	display: block;
}

.pc-in {
	display: none;
}

.sp-in {
	display: inline-block;
}

.pc-table {
	display: none;
}

.sp-table {
	display: table;
}

.content-wrap section {
	padding-top: 50px;
	padding-bottom: 60px;
}

.content-wrap h2 {
	margin-bottom: 30px;
	font-size: 4.1rem;
}

.content-wrap h3 {
	margin: 60px 0 20px;
	font-weight: 700;
	font-size: 1.7rem;
}

.content-wrap .subtitle {
	margin-top: -10px;
	font-family: 'Racing Sans One', cursive;
	color: #000;
	font-size: 2.2rem;
	text-align: center;
	letter-spacing: 0.05em;
	line-height: 1;
}

.content-wrap .subtitle span {
	font-size: 2.4rem;
}

#pagetop.is-fixed a {
	right: 20px;
}

#pagetop a {
	display: block;
	width: 37px;
	height: 67px;
	position: absolute;
	right: 20px;
	bottom: -17px;
	margin-bottom: 0px;
	font-size: 1.5rem;
}

#pagetop a::before,
#pagetop a::after,
#pagetop a .arrow::before,
#pagetop a .arrow::after {
	content: "";
	width: 33px;
	height: 23px;
	background-size: contain;
}

#pagetop a::before {
	top: 0;
}

#pagetop a::after {
	top: 13px;
}

#pagetop a .arrow::before {
	top: 26px;
}

#pagetop a .arrow::after {
	top: 39px;
}

#pagetop a .text {
	padding-top: 0;
	line-height: 10px;
}

.op-anim::after,
.js-curtain::after {
	left: -20px;
	right: -20px;
}

.op-anim .curtain-in,
.js-curtain .curtain-in {
	padding-right: 0px;
}

.content-wrap .arrow-effect {
	width: 50%;
}

.content-wrap .arrow-effect.is-right {
	right: -50px;
}

.content-wrap .arrow-effect.is-left {
	left: -50px;
}

.content-wrap .arrow-effect li {
	height: 150px;
}

.content-wrap .arrow-effect li:nth-of-type(2) {
	margin-top: -36px;
}

.content-wrap .arrow-effect li:nth-of-type(3) {
	margin-top: -90px;
}

.content-wrap .arrow-effect li::before,
.content-wrap .arrow-effect li::after {
	height: 74px;
}

.halfway-bg {
	margin-bottom: -280px;
}

.halfway-bg::before {
	content: "";
	height: 77%;
	position: absolute;
	left: 0;
	top: 13.5%;
	-webkit-transform: skewY(12deg);
	transform: skewY(12deg);
	z-index: 0;
}

.halfway-bg::after {
	content: "";
	background: #f6f6f6;
	width: 100%;
	height: 77%;
	position: absolute;
	left: 0;
	top: 12.5%;
	-webkit-transform: skewY(-18deg);
	transform: skewY(-18deg);
	z-index: 1;
}

.bottom-bg::before {
	content: "";
	background: #ffff00;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 240px;
	-webkit-transform: skewY(-12deg);
	transform: skewY(-12deg);
	z-index: 0;
}

.bottom-bg::after {
	content: "";
	background: #f6f6f6;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 210px;
	-webkit-transform: skewY(18deg);
	transform: skewY(18deg);
	z-index: 1;
}

header::before {
	content: "";
	background: #00ffb2;
	width: 300px;
	height: 300%;
	position: fixed;
	left: calc(100% - 150px + 150px);
	top: calc(-50% + 150px);
	z-index: 10;
	-webkit-transition: all 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
	transition: all 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
	-webkit-transform: rotate(37deg);
	transform: rotate(37deg);
}

html.is-block header::before {
	left: calc(0% - 150px - 85px);
	top: calc(-150% - 85px);
}

header::after {
	content: "";
	background: #ffff00;
	width: 400px;
	height: 300%;
	position: fixed;
	left: calc(100% - 200px + 200px);
	top: calc(-50% + 200px);
	z-index: 8;
	-webkit-transition: all 0.8s cubic-bezier(0.645, 0.045, 0.355, 1);
	transition: all 0.8s cubic-bezier(0.645, 0.045, 0.355, 1);
	-webkit-transform: rotate(37deg);
	transform: rotate(37deg);
}

html.is-block header::after {
	left: calc(0% - 200px - 200px);
	top: calc(-150% - 200px);
}

header .nav-wrap::before {
	content: "";
	background: #fff;
	width: 400px;
	height: 300%;
	position: fixed;
	left: calc(100% - 200px);
	top: -50%;
	z-index: 8;
	-webkit-transition: all 0.7s cubic-bezier(0.645, 0.045, 0.355, 1);
	transition: all 0.7s cubic-bezier(0.645, 0.045, 0.355, 1);
	-webkit-transform: rotate(37deg);
	transform: rotate(37deg);
}

html.is-block header .nav-wrap::before {
	left: calc(0% - 200px - 200px);
	top: calc(-150% - 200px);
}

header .nav-wrap::after {
	content: "";
	background: #ffff00;
	width: 200px;
	height: 300%;
	position: fixed;
	left: calc(100% - 100px + 100px);
	top: calc(-50% + 100px);
	z-index: 8;
	-webkit-transition: all 0.8s cubic-bezier(0.645, 0.045, 0.355, 1);
	transition: all 0.8s cubic-bezier(0.645, 0.045, 0.355, 1);
	-webkit-transform: rotate(37deg);
	transform: rotate(37deg);
}

html.is-block header .nav-wrap::after {
	left: calc(100% - 100px + 40px);
	top: calc(-50% + 40px);
}

header .title.sp {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	background: rgba(255, 255, 255, 0.9);
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	height: 60px;
	padding-left: 25px;
	font-size: 1.8rem;
	line-height: 1;
	text-align: left;
	font-family: 'Racing Sans One', cursive;
	position: relative;
}

header .title.sp::after {
	content: "";
	background: -webkit-gradient(linear, left top, right top, from(#00ffb2), to(#ffff00));
	background: -webkit-linear-gradient(left, #00ffb2, #ffff00);
	background: linear-gradient(90deg, #00ffb2, #ffff00);
	width: 200px;
	height: 100%;
	position: absolute;
	left: -40px;
	top: 0;
	z-index: 0;
	-webkit-transform: skewX(-37deg) translate3d(0, 0, 0);
	transform: skewX(-37deg) translate3d(0, 0, 0);
}

header .title.sp .logo {
	position: relative;
	z-index: 1;
}

header .nav-wrap {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	background: rgba(0, 0, 0, 0.9);
	width: 100%;
	height: 100%;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 1;
	-webkit-transition: all 0.4s;
	transition: all 0.4s;
	-webkit-transform: translate3d(100%, 0, 0);
	transform: translate3d(100%, 0, 0);
}

html.is-block header .nav-wrap {
	-webkit-transform: translate3d(0px, 0px, 0);
	transform: translate3d(0px, 0px, 0);
}

header #nav {
	display: block;
	width: auto;
	padding: 0 40px;
	position: relative;
	z-index: 9999;
}

header #nav > li::after {
	display: none;
}

header #nav > li:not(.title) {
	height: auto;
}

header #nav > li .logo,
header #nav > li a {
	display: inline-block;
	padding: 12px 0;
	height: auto;
	font-size: 3.15rem;
}

header #nav > li .logo .in,
header #nav > li a .in {
	background: -webkit-gradient(linear, left top, right top, from(#00ffb2), to(#ffff00));
	background: -webkit-linear-gradient(left, #00ffb2, #ffff00);
	background: linear-gradient(90deg, #00ffb2, #ffff00);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
}

header #nav > li .logo .arrow,
header #nav > li a .arrow {
	display: none;
}

header #nav > li .sp-fade {
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	opacity: 0;
	-webkit-transform: translate3d(10px, 0, 0);
	transform: translate3d(10px, 0, 0);
}

html.is-block header #nav > li .sp-fade {
	opacity: 1;
	-webkit-transform: translate3d(0px, 0, 0);
	transform: translate3d(0px, 0, 0);
}

html.is-block header #nav > li .sp-fade1 {
	-webkit-transition-delay: 0.45s;
	transition-delay: 0.45s;
}

html.is-block header #nav > li .sp-fade2 {
	-webkit-transition-delay: 0.5s;
	transition-delay: 0.5s;
}

html.is-block header #nav > li .sp-fade3 {
	-webkit-transition-delay: 0.55s;
	transition-delay: 0.55s;
}

html.is-block header #nav > li .sp-fade4 {
	-webkit-transition-delay: 0.6s;
	transition-delay: 0.6s;
}

html.is-block header #nav > li .sp-fade5 {
	-webkit-transition-delay: 0.65s;
	transition-delay: 0.65s;
}

html.is-block header #nav > li .sp-fade6 {
	-webkit-transition-delay: 0.7s;
	transition-delay: 0.7s;
}

html.is-block header #nav > li .sp-fade7 {
	-webkit-transition-delay: 0.75s;
	transition-delay: 0.75s;
}

html.is-block header #nav > li .sp-fade8 {
	-webkit-transition-delay: 0.8s;
	transition-delay: 0.8s;
}

html.is-block header #nav > li .sp-fade9 {
	-webkit-transition-delay: 0.85s;
	transition-delay: 0.85s;
}

html.is-block header #nav > li .sp-fade10 {
	-webkit-transition-delay: 0.9s;
	transition-delay: 0.9s;
}

header #nav > li .subNav {
	display: block;
	-webkit-transform: skewX(0deg);
	transform: skewX(0deg);
	left: 0;
}

header #nav > li .subNav li {
	background: none;
	border-top: none;
}

header #nav > li .subNav li a {
	display: block;
	color: #fff;
	height: auto;
	padding: 10px;
	text-align: left;
	font-size: 1.95rem;
	background: none;
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: #fff;
}

header #nav > li .subNav li a span {
	-webkit-transform: skewX(0deg);
	transform: skewX(0deg);
	padding-left: 20px;
}

header #nav > li .subNav li a span::before {
	width: 12px;
}

footer {
	font-size: 1.1rem;
	height: auto;
	padding: 35px;
}

footer .copy {
	margin-top: 10px;
}

#information {
	margin-top: 50px;
	padding-bottom: 50px;
}

.hero-wrap::before {
	content: "";
	background: #ffff00;
	width: 100%;
	height: 440px;
	position: absolute;
	left: 0;
	bottom: 12%;
}

.hero h1 {
	width: 100%;
	line-height: 1;
	position: absolute;
	top: 58.98%;
	left: 0;
	z-index: 10;
	text-align: center;
}

.hero h1 div.shadow::after {
	display: none;
}

.hero h1 div.shadow .curtain-in {
	overflow: visible;
}

.hero h1 div.shadow img {
	-webkit-filter: drop-shadow(5px 5px 2px rgba(0, 0, 0, 0.4));
	filter: drop-shadow(5px 5px 2px rgba(0, 0, 0, 0.4));
}

.hero h1 div img {
	display: block;
	width: 100%;
	-webkit-transition: all 0.2s;
	transition: all 0.2s;
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

.hero h1 .text1 {
	width: 87.09%;
}

.hero h1 .text2 {
	margin-top: 3.12%;
	width: 87.5%;
}

.hero h1 .text3 {
	margin-top: 1.56%;
	width: 61.09%;
}

.hero h1 .text4 {
	margin-top: 6.25%;
	width: 73.43%;
}

.hero figure.bg {
	width: 100%;
}

.hero .scroll-arrow {
	width: 42px;
	position: absolute;
	left: 50%;
	top: 92%;
	z-index: 30;
	-webkit-filter: drop-shadow(5px 5px 2px rgba(0, 0, 0, 0.2));
	filter: drop-shadow(5px 5px 2px rgba(0, 0, 0, 0.2));
	margin-left: -21px;
}

.hero .scroll-arrow img {
	width: 100%;
}

.infoUl {
	padding-left: 15px;
	padding-right: 15px;
}

.infoUl li {
	margin-top: 18px;
}

.infoUl li.new a .text::after {
	display: none;
}

.infoUl li.new a .date {
	position: relative;
}

.infoUl li.new a .date::after {
	content: "NEW";
	display: inline-block;
	color: #ff0000;
	margin-left: 1em;
	font-size: 1.2rem;
	font-weight: 700;
}

.infoUl li a .a-inner {
	display: block;
}

.infoUl li a span {
	display: inline-block;
}

.infoUl li a .tag {
	width: 80px;
	margin-right: 10px;
	padding: 7px 0;
	font-size: 1rem;
	height: auto;
}

.infoUl li a .date {
	padding-top: 0;
	margin-right: 1em;
	font-size: 1.1rem;
}

.infoUl li a .text {
	padding-top: 0;
	margin-top: 5px;
	display: block;
}

.cd-variation {
	display: block;
	margin-top: 30px;
}

.cd-variation li {
	width: 100%;
	margin-top: 30px;
}

.cd-variation li figure {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	padding-top: 0;
}

.cd-variation li figure img {
	-webkit-box-shadow: 10px 10px 4px rgba(0, 0, 0, 0.15);
	box-shadow: 10px 10px 4px rgba(0, 0, 0, 0.15);
	position: static;
	-webkit-transform: translate(0, 0);
	transform: translate(0, 0);
}

.cd-variation li .information {
	padding: 20px 15px 0;
}

.cd-information ul {
	padding-right: 15px;
}

.cd-information ul li .num {
	padding-top: 40px;
	padding-left: 0px;
}

.cd-information ul li .num::after {
	display: none;
}

.cd-information ul li .title {
	display: block;
	font-size: 1.7rem;
	line-height: 1.29;
}

.cd-information ul li .title span {
	display: block;
}

.cd-information ul li .title a {
	margin: 5px 0 10px;
	font-size: 1.5rem;
	width: 115px;
	height: 25px;
}

.cd-information ul li {
	margin-top: 40px;
}

.cd-information ul li .tieup {
	margin-bottom: 5px;
}

.cd-information ul li .tieup,
.cd-information ul li .detail {
	line-height: 1.5;
}

.cd-information .js-curtain::after {
	left: -60px;
	right: -50px;
}

.movie-list {
	display: block;
	margin-top: 40px;
}

.movie-list li {
	width: 100%;
	margin-top: 25px;
}

#page-information .wrapper {
	padding-top: 60px;
}

#page-information .halfway-bg {
	margin-bottom: 0;
}

#page-information .halfway-bg::before {
	position: fixed;
	top: 405px;
	height: 210px;
}

#page-information .halfway-bg::after {
	position: fixed;
	top: 380px;
	height: 210px;
}

#page-information .content-wrap section {
	padding-bottom: 30px;
}

#page-information .content-wrap .arrow-effect.is-right {
	top: 10px;
}

.mediaUl li {
	padding: 20px 15px;
}

.mediaUl li .infoDate {
	font-size: 1.1rem;
}

.mediaUl li .infoTitle {
	font-size: 1.6rem;
}

.mediaUl li .infoTitle .new {
	display: block;
	font-size: 1.2rem;
	margin-left: 0;
}

.half-block {
	display: block;
}

.half-block p {
	width: 100%;
}

.goodsText {
	font-size: 12px;
	margin-bottom: 10% !important;
}

.goodsText strong {
	font-size: 16px;
}

.etxTextS {
	font-size: 11px;
}

.etxTextS strong {
	font-size: 15px;
}

.etxBlock .floatLeft,
.etxBlock .floatRight {
	float: none;
}

}

@-webkit-keyframes MoveDown {

0% {
	-webkit-transform: translateY(0);
	transform: translateY(0);
}

49.9% {
	-webkit-transform: translateY(10px);
	transform: translateY(10px);
	opacity: 0;
}

50% {
	-webkit-transform: translateY(-10px);
	transform: translateY(-10px);
	opacity: 0;
}

100% {
	-webkit-transform: translateY(0);
	transform: translateY(0);
}

}

@keyframes MoveDown {

0% {
	-webkit-transform: translateY(0);
	transform: translateY(0);
}

49.9% {
	-webkit-transform: translateY(10px);
	transform: translateY(10px);
	opacity: 0;
}

50% {
	-webkit-transform: translateY(-10px);
	transform: translateY(-10px);
	opacity: 0;
}

100% {
	-webkit-transform: translateY(0);
	transform: translateY(0);
}

}

@-webkit-keyframes MoveDownInfi {

0% {
	-webkit-transform: translateY(0);
	transform: translateY(0);
	opacity: 1;
}

50% {
	-webkit-transform: translateY(0);
	transform: translateY(0);
	opacity: 1;
}

74.9% {
	-webkit-transform: translateY(10px);
	transform: translateY(10px);
	opacity: 0;
}

75% {
	-webkit-transform: translateY(-10px);
	transform: translateY(-10px);
	opacity: 0;
}

100% {
	-webkit-transform: translateY(0);
	transform: translateY(0);
}

}

@keyframes MoveDownInfi {

0% {
	-webkit-transform: translateY(0);
	transform: translateY(0);
	opacity: 1;
}

50% {
	-webkit-transform: translateY(0);
	transform: translateY(0);
	opacity: 1;
}

74.9% {
	-webkit-transform: translateY(10px);
	transform: translateY(10px);
	opacity: 0;
}

75% {
	-webkit-transform: translateY(-10px);
	transform: translateY(-10px);
	opacity: 0;
}

100% {
	-webkit-transform: translateY(0);
	transform: translateY(0);
}

}

@-webkit-keyframes MoveUp {

0% {
	-webkit-transform: translateY(0);
	transform: translateY(0);
}

49.9% {
	-webkit-transform: translateY(-10px);
	transform: translateY(-10px);
	opacity: 0;
}

50% {
	-webkit-transform: translateY(10px);
	transform: translateY(10px);
	opacity: 0;
}

100% {
	-webkit-transform: translateY(0);
	transform: translateY(0);
}

}

@keyframes MoveUp {

0% {
	-webkit-transform: translateY(0);
	transform: translateY(0);
}

49.9% {
	-webkit-transform: translateY(-10px);
	transform: translateY(-10px);
	opacity: 0;
}

50% {
	-webkit-transform: translateY(10px);
	transform: translateY(10px);
	opacity: 0;
}

100% {
	-webkit-transform: translateY(0);
	transform: translateY(0);
}

}

@-webkit-keyframes MoveRight {

0% {
	-webkit-transform: translateX(0);
	transform: translateX(0);
}

49.9% {
	-webkit-transform: translateX(10px);
	transform: translateX(10px);
	opacity: 0;
}

50% {
	-webkit-transform: translateX(-10px);
	transform: translateX(-10px);
	opacity: 0;
}

100% {
	-webkit-transform: translateX(0);
	transform: translateX(0);
}

}

@keyframes MoveRight {

0% {
	-webkit-transform: translateX(0);
	transform: translateX(0);
}

49.9% {
	-webkit-transform: translateX(10px);
	transform: translateX(10px);
	opacity: 0;
}

50% {
	-webkit-transform: translateX(-10px);
	transform: translateX(-10px);
	opacity: 0;
}

100% {
	-webkit-transform: translateX(0);
	transform: translateX(0);
}

}

@-webkit-keyframes MoveLeft {

0% {
	-webkit-transform: translateX(0);
	transform: translateX(0);
}

49.9% {
	-webkit-transform: translateX(-10px);
	transform: translateX(-10px);
	opacity: 0;
}

50% {
	-webkit-transform: translateX(10px);
	transform: translateX(10px);
	opacity: 0;
}

100% {
	-webkit-transform: translateX(0);
	transform: translateX(0);
}

}

@keyframes MoveLeft {

0% {
	-webkit-transform: translateX(0);
	transform: translateX(0);
}

49.9% {
	-webkit-transform: translateX(-10px);
	transform: translateX(-10px);
	opacity: 0;
}

50% {
	-webkit-transform: translateX(10px);
	transform: translateX(10px);
	opacity: 0;
}

100% {
	-webkit-transform: translateX(0);
	transform: translateX(0);
}

}

@-webkit-keyframes reveal {

0% {
	-webkit-transform-origin: left;
	transform-origin: left;
	-webkit-transform: translateZ(0) skew(-37deg) scaleX(0);
	transform: translateZ(0) skew(-37deg) scaleX(0);
}

0.0001% {
	-webkit-transform-origin: left;
	transform-origin: left;
}

50% {
	-webkit-transform-origin: left;
	transform-origin: left;
	-webkit-transform: translateZ(0) skew(-37deg) scaleX(1);
	transform: translateZ(0) skew(-37deg) scaleX(1);
}

50.0001% {
	-webkit-transform-origin: right;
	transform-origin: right;
}

100% {
	-webkit-transform-origin: right;
	transform-origin: right;
	-webkit-transform: translateZ(0) skew(-37deg) scaleX(0);
	transform: translateZ(0) skew(-37deg) scaleX(0);
}

}

@keyframes reveal {

0% {
	-webkit-transform-origin: left;
	transform-origin: left;
	-webkit-transform: translateZ(0) skew(-37deg) scaleX(0);
	transform: translateZ(0) skew(-37deg) scaleX(0);
}

0.0001% {
	-webkit-transform-origin: left;
	transform-origin: left;
}

50% {
	-webkit-transform-origin: left;
	transform-origin: left;
	-webkit-transform: translateZ(0) skew(-37deg) scaleX(1);
	transform: translateZ(0) skew(-37deg) scaleX(1);
}

50.0001% {
	-webkit-transform-origin: right;
	transform-origin: right;
}

100% {
	-webkit-transform-origin: right;
	transform-origin: right;
	-webkit-transform: translateZ(0) skew(-37deg) scaleX(0);
	transform: translateZ(0) skew(-37deg) scaleX(0);
}

}


/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlLnNjc3MiLCJiYXNlL19yZXNldC5zY3NzIiwic3R5bGUuY3NzIiwiYmFzZS9fYmFzZS5zY3NzIiwiYmFzZS9fc2V0dGluZy5zY3NzIiwicGFydHMvX2NvbW1vbi5zY3NzIiwiYmFzZS9fbWl4aW5zLnNjc3MiLCJwYXJ0cy9faGVhZGVyLnNjc3MiLCJwYXJ0cy9fZm9vdGVyLnNjc3MiLCJwYXJ0cy9fdG9wLnNjc3MiLCJwYXJ0cy9fdW5kZXIuc2NzcyIsInBhcnRzL19hbmltYXRpb24uc2NzcyIsIl9zcHJpdGUuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQSw0R0FBWTtBQ0haOzswQ0NDMEM7QURHMUM7Ozs7Ozs7Ozs7Ozs7RUFhRSxTQUFTO0VBQ1QsVUFBVTtFQUNWLFNBQVM7RUFDVCxhQUFhO0VBQ2IsZUFBZTtFQUNmLHdCQUF3QjtBQ0QxQjs7QURJQTtFQUNFLGNBQWM7QUNEaEI7O0FESUE7RUFDRSxnQkFBZ0I7RUFDaEIsbUJBQW1CO0FDRHJCOztBRElBO0VBQ0UseUJBQXlCO0VBQ3pCLGlCQUFpQjtBQ0RuQjs7QURJQTtFQUNFLGdCQUFnQjtFQUNoQixtQkFBbUI7RUFDbkIsc0JBQXNCO0FDRHhCOztBRElBO0VBQ0UsWUFBWTtBQ0RkOztBREdBO0VBQ0UsV0FBVztFQUNYLGFBQWE7QUNBZjs7QURHQTtFQUNFLFlBQVk7QUNBZDs7QURHQTtFQUNFLGNBQWM7QUNBaEI7O0FDMURBOzswQ0Q4RDBDO0FEckMxQztFRXJCRSx1Q0N3QjJDO0VEdkIzQyxnQkFBZ0I7QUQ2RGxCOztBQzNEQTtFQUNFLFlBQVk7RUFDWixTQUFTO0VBQ1QsVUFBVTtBRDhEWjs7QUM1REE7RUFDRSxnQkNzQ1k7RURyQ1osV0NtQ1k7RURsQ1osV0FBVztFQUVYLGNBQWM7RUFDZCxpQkNXbUI7RURWbkIsZ0JBQWdCO0VBQ2hCLDhCQUE4QjtFQUM5QixtQ0FBbUM7RUFDbkMsaUJDU3FCO0FGcUR2Qjs7QUM3REU7RUFYRjtJQVlJLGlCQ01pQjtFRjJEbkI7QUFD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RVM5MUVBO0lBQ0UsK0JBQXVCO1lBQXZCLHVCQUF1QjtJQUN2Qix1REFBK0M7WUFBL0MsK0NBQStDO0VUZzJFakQ7QUFDRjs7QVNsM0VBO0VBQ0U7SUFDRSw4QkFBc0I7WUFBdEIsc0JBQXNCO0lBQ3RCLHVEQUErQztZQUEvQywrQ0FBK0M7RVRnMkVqRDtFUzkxRUE7SUFDRSw4QkFBc0I7WUFBdEIsc0JBQXNCO0VUZzJFeEI7RVM5MUVBO0lBQ0UsOEJBQXNCO1lBQXRCLHNCQUFzQjtJQUN0Qix1REFBK0M7WUFBL0MsK0NBQStDO0VUZzJFakQ7RVM5MUVBO0lBQ0UsK0JBQXVCO1lBQXZCLHVCQUF1QjtFVGcyRXpCO0VTOTFFQTtJQUNFLCtCQUF1QjtZQUF2Qix1QkFBdUI7SUFDdkIsdURBQStDO1lBQS9DLCtDQUErQztFVGcyRWpEO0FBQ0Y7O0FGLzZFQSwyQ0FBQTtBWWhDQTtFQUNDLGlEQUFpRDtBVm05RWxEOztBVWg5RUE7RUFFQyx3QkFBd0I7QVZrOUV6Qjs7QVUvOEVBO0VBQ0MsV0FBVztFQUNYLFlBQVk7QVZrOUViOztBRjM3RUEseUNBQUEiLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJ1dGYtOFwiO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyAgRm9udFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuQGltcG9ydCB1cmwoJ2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1Ob3RvK1NhbnMrSlA6NDAwLDUwMCw3MDB8UmFjaW5nK1NhbnMrT25lJmRpc3BsYXk9c3dhcCcpO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyAgRm91bmRhdGlvblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuQGltcG9ydCBcImJhc2UvX21peGlucy5zY3NzXCI7XG5AaW1wb3J0IFwiYmFzZS9fcmVzZXQuc2Nzc1wiO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyAgQmFzZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQGltcG9ydCBcImJhc2UvX3NldHRpbmcuc2Nzc1wiO1xuQGltcG9ydCBcImJhc2UvX2Jhc2Uuc2Nzc1wiO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyAgTUFJTlxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQGltcG9ydCBcInBhcnRzL19jb21tb24uc2Nzc1wiO1xuQGltcG9ydCBcInBhcnRzL19oZWFkZXIuc2Nzc1wiO1xuQGltcG9ydCBcInBhcnRzL19mb290ZXIuc2Nzc1wiO1xuQGltcG9ydCBcInBhcnRzL190b3Auc2Nzc1wiO1xuQGltcG9ydCBcInBhcnRzL191bmRlci5zY3NzXCI7XG5AaW1wb3J0IFwicGFydHMvX2FuaW1hdGlvbi5zY3NzXCI7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vICBTcHJpdGUgU1ZHXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vKiAtLS0tLS0tLS0tIFNwcml0ZSBTVkcgU1RBUlQgLS0tLS0tLS0tLSAqL1xuQGltcG9ydCBcIl9zcHJpdGUuc2Nzc1wiO1xuLyogLS0tLS0tLS0tLSBTcHJpdGUgU1ZHIEVORCAtLS0tLS0tLS0tICovIiwiQGNoYXJzZXQgXCJ1dGYtOFwiO1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gUmVzZXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuaHRtbCwgYm9keSwgZGl2LCBzcGFuLCBhcHBsZXQsIG9iamVjdCwgaWZyYW1lLFxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCwgYmxvY2txdW90ZSwgcHJlLFxuYSwgYWJiciwgYWNyb255bSwgYWRkcmVzcywgYmlnLCBjaXRlLCBjb2RlLFxuZGVsLCBkZm4sIGVtLCBpbWcsIGlucywga2JkLCBxLCBzLCBzYW1wLFxuc21hbGwsIHN0cmlrZSwgc3Ryb25nLCB0dCwgdmFyLFxuYiwgdSwgaSwgY2VudGVyLFxuZGwsIGR0LCBkZCwgb2wsIHVsLCBsaSxcbmZpZWxkc2V0LCBmb3JtLCBsYWJlbCwgbGVnZW5kLFxudGFibGUsIGNhcHRpb24sIHRib2R5LCB0Zm9vdCwgdGhlYWQsIHRyLCB0aCwgdGQsXG5hcnRpY2xlLCBhc2lkZSwgY2FudmFzLCBkZXRhaWxzLCBlbWJlZCxcbmZpZ3VyZSwgZmlnY2FwdGlvbiwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCxcbm1lbnUsIG5hdiwgb3V0cHV0LCBydWJ5LCBzZWN0aW9uLCBzdW1tYXJ5LFxudGltZSwgbWFyaywgYXVkaW8sIHZpZGVvIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5odG1sIHtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbm9sLCB1bCwgbGkge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xufVxuXG5jYXB0aW9uLCB0aCwgdGQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG5xLCBibG9ja3F1b3RlIHtcbiAgcXVvdGVzOiBub25lO1xufVxucTpiZWZvcmUsIHE6YWZ0ZXIsIGJsb2NrcXVvdGU6YmVmb3JlLCBibG9ja3F1b3RlOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgY29udGVudDogbm9uZTtcbn1cblxuYSBpbWcge1xuICBib3JkZXI6IG5vbmU7XG59XG5cbmFydGljbGUsIGFzaWRlLCBkZXRhaWxzLCBmaWdjYXB0aW9uLCBmaWd1cmUsIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1haW4sIG1lbnUsIG5hdiwgc2VjdGlvbiwgc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuIiwiQGltcG9ydCB1cmwoXCJodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9Tm90bytTYW5zK0pQOjQwMCw1MDAsNzAwfFJhY2luZytTYW5zK09uZSZkaXNwbGF5PXN3YXBcIik7XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gUmVzZXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmh0bWwsIGJvZHksIGRpdiwgc3BhbiwgYXBwbGV0LCBvYmplY3QsIGlmcmFtZSxcbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHAsIGJsb2NrcXVvdGUsIHByZSxcbmEsIGFiYnIsIGFjcm9ueW0sIGFkZHJlc3MsIGJpZywgY2l0ZSwgY29kZSxcbmRlbCwgZGZuLCBlbSwgaW1nLCBpbnMsIGtiZCwgcSwgcywgc2FtcCxcbnNtYWxsLCBzdHJpa2UsIHN0cm9uZywgdHQsIHZhcixcbmIsIHUsIGksIGNlbnRlcixcbmRsLCBkdCwgZGQsIG9sLCB1bCwgbGksXG5maWVsZHNldCwgZm9ybSwgbGFiZWwsIGxlZ2VuZCxcbnRhYmxlLCBjYXB0aW9uLCB0Ym9keSwgdGZvb3QsIHRoZWFkLCB0ciwgdGgsIHRkLFxuYXJ0aWNsZSwgYXNpZGUsIGNhbnZhcywgZGV0YWlscywgZW1iZWQsXG5maWd1cmUsIGZpZ2NhcHRpb24sIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsXG5tZW51LCBuYXYsIG91dHB1dCwgcnVieSwgc2VjdGlvbiwgc3VtbWFyeSxcbnRpbWUsIG1hcmssIGF1ZGlvLCB2aWRlbyB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICBmb250OiBpbmhlcml0O1xuICBmb250LXNpemU6IDEwMCU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG5vbCwgdWwsIGxpIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDtcbn1cblxuY2FwdGlvbiwgdGgsIHRkIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxucSwgYmxvY2txdW90ZSB7XG4gIHF1b3Rlczogbm9uZTtcbn1cblxucTpiZWZvcmUsIHE6YWZ0ZXIsIGJsb2NrcXVvdGU6YmVmb3JlLCBibG9ja3F1b3RlOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgY29udGVudDogbm9uZTtcbn1cblxuYSBpbWcge1xuICBib3JkZXI6IG5vbmU7XG59XG5cbmFydGljbGUsIGFzaWRlLCBkZXRhaWxzLCBmaWdjYXB0aW9uLCBmaWd1cmUsIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1haW4sIG1lbnUsIG5hdiwgc2VjdGlvbiwgc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gQmFzZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBcIk5vdG8gU2FucyBKUFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDYyLjUlO1xufVxuXG5odG1sLCBib2R5IHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbmJvZHkge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogIzAwMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgbGluZS1oZWlnaHQ6IDEuNjU7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgYm9keSB7XG4gICAgZm9udC1zaXplOiAxLjJyZW07XG4gIH1cbn1cblxuKiB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5hIHtcbiAgY29sb3I6ICMwMDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lO1xufVxuXG5hOmZvY3VzLCAqOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuYnIge1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuaW1nIHtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXSwgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSwgc2VsZWN0LCBidXR0b24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbjo6LW1zLWV4cGFuZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbmJvZHkuaW9zIGEgaW1nIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLyogSUU4KywgQ2hyb21lICovXG5pbnB1dCwgYnV0dG9uIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLyogRmlyZWZveCAqL1xuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIsIGJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlcjogMDtcbn1cblxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXSwgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSwgaW5wdXRbdHlwZT1cInRleHRcIl0sIGlucHV0W3R5cGU9XCJlbWFpbFwiXSwgc2VsZWN0LCBidXR0b24sIHRleHRhcmVhIHtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsXG5pbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIsXG5pbnB1dDo6LW1vei1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjYWFhO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG4vKmNsZWFyZml4IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmNsZWFyZml4OmFmdGVyIHtcbiAgY29udGVudDogXCIgXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5jbGVhcmZpeCB7XG4gIHpvb206IDE7XG59XG5cbi5jbCB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uZmwge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLmZyIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4ucGMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnNwIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnBjLWluIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uc3AtaW4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucGMtdGFibGUge1xuICBkaXNwbGF5OiB0YWJsZTtcbn1cblxuLnNwLXRhYmxlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICBib2R5IHtcbiAgICBtaW4td2lkdGg6IGluaGVyaXQ7XG4gIH1cbiAgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICBhOmhvdmVyIGltZyB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICBib2R5LmlvcyBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgYm9keS5pb3Mgc2VsZWN0LFxuICBib2R5LmlvcyB0ZXh0YXJlYSB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG4gIC5wYyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuc3Age1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5wYy1pbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuc3AtaW4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICAucGMtdGFibGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLnNwLXRhYmxlIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgfVxufVxuXG4ubXQwIHtcbiAgbWFyZ2luLXRvcDogMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5tYjAge1xuICBtYXJnaW4tYm90dG9tOiAwcHggIWltcG9ydGFudDtcbn1cblxuLnB0MCB7XG4gIHBhZGRpbmctdG9wOiAwcHggIWltcG9ydGFudDtcbn1cblxuLnBiMCB7XG4gIHBhZGRpbmctYm90dG9tOiAwcHggIWltcG9ydGFudDtcbn1cblxuLm10MTAge1xuICBtYXJnaW4tdG9wOiAxMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5tYjEwIHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweCAhaW1wb3J0YW50O1xufVxuXG4ucHQxMCB7XG4gIHBhZGRpbmctdG9wOiAxMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5wYjEwIHtcbiAgcGFkZGluZy1ib3R0b206IDEwcHggIWltcG9ydGFudDtcbn1cblxuLm10MjAge1xuICBtYXJnaW4tdG9wOiAyMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5tYjIwIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweCAhaW1wb3J0YW50O1xufVxuXG4ucHQyMCB7XG4gIHBhZGRpbmctdG9wOiAyMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5wYjIwIHtcbiAgcGFkZGluZy1ib3R0b206IDIwcHggIWltcG9ydGFudDtcbn1cblxuLm10MzAge1xuICBtYXJnaW4tdG9wOiAzMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5tYjMwIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweCAhaW1wb3J0YW50O1xufVxuXG4ucHQzMCB7XG4gIHBhZGRpbmctdG9wOiAzMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5wYjMwIHtcbiAgcGFkZGluZy1ib3R0b206IDMwcHggIWltcG9ydGFudDtcbn1cblxuLm10NDAge1xuICBtYXJnaW4tdG9wOiA0MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5tYjQwIHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweCAhaW1wb3J0YW50O1xufVxuXG4ucHQ0MCB7XG4gIHBhZGRpbmctdG9wOiA0MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5wYjQwIHtcbiAgcGFkZGluZy1ib3R0b206IDQwcHggIWltcG9ydGFudDtcbn1cblxuLm10NTAge1xuICBtYXJnaW4tdG9wOiA1MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5tYjUwIHtcbiAgbWFyZ2luLWJvdHRvbTogNTBweCAhaW1wb3J0YW50O1xufVxuXG4ucHQ1MCB7XG4gIHBhZGRpbmctdG9wOiA1MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5wYjUwIHtcbiAgcGFkZGluZy1ib3R0b206IDUwcHggIWltcG9ydGFudDtcbn1cblxuLm10NjAge1xuICBtYXJnaW4tdG9wOiA2MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5tYjYwIHtcbiAgbWFyZ2luLWJvdHRvbTogNjBweCAhaW1wb3J0YW50O1xufVxuXG4ucHQ2MCB7XG4gIHBhZGRpbmctdG9wOiA2MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5wYjYwIHtcbiAgcGFkZGluZy1ib3R0b206IDYwcHggIWltcG9ydGFudDtcbn1cblxuLm10NzAge1xuICBtYXJnaW4tdG9wOiA3MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5tYjcwIHtcbiAgbWFyZ2luLWJvdHRvbTogNzBweCAhaW1wb3J0YW50O1xufVxuXG4ucHQ3MCB7XG4gIHBhZGRpbmctdG9wOiA3MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5wYjcwIHtcbiAgcGFkZGluZy1ib3R0b206IDcwcHggIWltcG9ydGFudDtcbn1cblxuLm10ODAge1xuICBtYXJnaW4tdG9wOiA4MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5tYjgwIHtcbiAgbWFyZ2luLWJvdHRvbTogODBweCAhaW1wb3J0YW50O1xufVxuXG4ucHQ4MCB7XG4gIHBhZGRpbmctdG9wOiA4MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5wYjgwIHtcbiAgcGFkZGluZy1ib3R0b206IDgwcHggIWltcG9ydGFudDtcbn1cblxuLm10OTAge1xuICBtYXJnaW4tdG9wOiA5MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5tYjkwIHtcbiAgbWFyZ2luLWJvdHRvbTogOTBweCAhaW1wb3J0YW50O1xufVxuXG4ucHQ5MCB7XG4gIHBhZGRpbmctdG9wOiA5MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5wYjkwIHtcbiAgcGFkZGluZy1ib3R0b206IDkwcHggIWltcG9ydGFudDtcbn1cblxuLm10MTAwIHtcbiAgbWFyZ2luLXRvcDogMTAwcHggIWltcG9ydGFudDtcbn1cblxuLm1iMTAwIHtcbiAgbWFyZ2luLWJvdHRvbTogMTAwcHggIWltcG9ydGFudDtcbn1cblxuLnB0MTAwIHtcbiAgcGFkZGluZy10b3A6IDEwMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5wYjEwMCB7XG4gIHBhZGRpbmctYm90dG9tOiAxMDBweCAhaW1wb3J0YW50O1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gQ29tbW9uIFNldHRpbmdcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbmh0bWwuaXMtYmxvY2sgYm9keSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGhlaWdodDogMTAwJTtcbn1cblxuaHRtbCAud3JhcHBlciB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5jb250ZW50LXdyYXAgc2VjdGlvbiB7XG4gIHBhZGRpbmctdG9wOiA1MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTIwcHg7XG59XG5cbi5jb250ZW50LXdyYXAgLmlubmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogOTAwcHg7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxMDtcbn1cblxuLmNvbnRlbnQtd3JhcCBoMiB7XG4gIG1hcmdpbi1ib3R0b206IDU0cHg7XG4gIGZvbnQtZmFtaWx5OiAnUmFjaW5nIFNhbnMgT25lJywgY3Vyc2l2ZTtcbiAgY29sb3I6ICMwMDA7XG4gIGZvbnQtc2l6ZTogOHJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmNvbnRlbnQtd3JhcCBoMyB7XG4gIG1hcmdpbjogNjBweCAwIDQwcHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMi4xcmVtO1xufVxuXG4uY29udGVudC13cmFwIC5zdWJ0aXRsZSB7XG4gIG1hcmdpbi10b3A6IC0xMHB4O1xuICBmb250LWZhbWlseTogJ1JhY2luZyBTYW5zIE9uZScsIGN1cnNpdmU7XG4gIGNvbG9yOiAjMDAwO1xuICBmb250LXNpemU6IDMuOXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmNvbnRlbnQtd3JhcCAuc3VidGl0bGUgc3BhbiB7XG4gIGZvbnQtc3R5bGU6IDQuNHJlbTtcbn1cblxuLmNvbnRlbnQtd3JhcCAubGVhZCB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuY29udGVudC13cmFwIHNlY3Rpb24ge1xuICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA2MHB4O1xuICB9XG4gIC5jb250ZW50LXdyYXAgaDIge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgZm9udC1zaXplOiA0LjFyZW07XG4gIH1cbiAgLmNvbnRlbnQtd3JhcCBoMyB7XG4gICAgbWFyZ2luOiA2MHB4IDAgMjBweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZvbnQtc2l6ZTogMS43cmVtO1xuICB9XG4gIC5jb250ZW50LXdyYXAgLnN1YnRpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgICBmb250LWZhbWlseTogJ1JhY2luZyBTYW5zIE9uZScsIGN1cnNpdmU7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgZm9udC1zaXplOiAyLjJyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cbiAgLmNvbnRlbnQtd3JhcCAuc3VidGl0bGUgc3BhbiB7XG4gICAgZm9udC1zaXplOiAyLjRyZW07XG4gIH1cbn1cblxuI3BhZ2V0b3Age1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMHB4O1xuICB6LWluZGV4OiA5OTk7XG59XG5cbiNwYWdldG9wLmlzLWZpeGVkIGEge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAzMHB4O1xuICBib3R0b206IDEwcHg7XG59XG5cbiNwYWdldG9wIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDQ0cHg7XG4gIGhlaWdodDogODJweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMzBweDtcbiAgYm90dG9tOiAtMTJweDtcbiAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICBmb250LXNpemU6IDEuOHJlbTtcbiAgZm9udC1mYW1pbHk6ICdSYWNpbmcgU2FucyBPbmUnLCBjdXJzaXZlO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICBmaWx0ZXI6IGRyb3Atc2hhZG93KDRweCA0cHggNHB4IHJnYmEoMCwgMCwgMCwgMC4yKSk7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3BhZ2V0b3AgYTpob3Zlcjo6YmVmb3JlLCAjcGFnZXRvcCBhOmhvdmVyOjphZnRlcixcbiAgI3BhZ2V0b3AgYTpob3ZlciAuYXJyb3c6OmJlZm9yZSxcbiAgI3BhZ2V0b3AgYTpob3ZlciAuYXJyb3c6OmFmdGVyIHtcbiAgICBhbmltYXRpb24tbmFtZTogTW92ZVVwO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogLjVzO1xuICAgIGFuaW1hdGlvbi1kZWxheTogMHM7XG4gICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yNSwgMC40NiwgMC40NSwgMC45NCk7XG4gIH1cbn1cblxuI3BhZ2V0b3AgYTo6YmVmb3JlLCAjcGFnZXRvcCBhOjphZnRlcixcbiNwYWdldG9wIGEgLmFycm93OjpiZWZvcmUsXG4jcGFnZXRvcCBhIC5hcnJvdzo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiAyOHB4O1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL3N2Zy9wYWdlX2Fycm93LnN2Zykgbm8tcmVwZWF0O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDJweDtcbn1cblxuI3BhZ2V0b3AgYTo6YmVmb3JlIHtcbiAgdG9wOiAwO1xufVxuXG4jcGFnZXRvcCBhOjphZnRlciB7XG4gIHRvcDogMThweDtcbn1cblxuI3BhZ2V0b3AgYSAuYXJyb3c6OmJlZm9yZSB7XG4gIHRvcDogMzZweDtcbn1cblxuI3BhZ2V0b3AgYSAuYXJyb3c6OmFmdGVyIHtcbiAgdG9wOiA1NHB4O1xufVxuXG4jcGFnZXRvcCBhIC5hcnJvdyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xufVxuXG4jcGFnZXRvcCBhIC50ZXh0IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nLXRvcDogNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIGxldHRlci1zcGFjaW5nOiAxcHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgI3BhZ2V0b3AuaXMtZml4ZWQgYSB7XG4gICAgcmlnaHQ6IDIwcHg7XG4gIH1cbiAgI3BhZ2V0b3AgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDM3cHg7XG4gICAgaGVpZ2h0OiA2N3B4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMjBweDtcbiAgICBib3R0b206IC0xN3B4O1xuICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgfVxuICAjcGFnZXRvcCBhOjpiZWZvcmUsICNwYWdldG9wIGE6OmFmdGVyLFxuICAjcGFnZXRvcCBhIC5hcnJvdzo6YmVmb3JlLFxuICAjcGFnZXRvcCBhIC5hcnJvdzo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgd2lkdGg6IDMzcHg7XG4gICAgaGVpZ2h0OiAyM3B4O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgfVxuICAjcGFnZXRvcCBhOjpiZWZvcmUge1xuICAgIHRvcDogMDtcbiAgfVxuICAjcGFnZXRvcCBhOjphZnRlciB7XG4gICAgdG9wOiAxM3B4O1xuICB9XG4gICNwYWdldG9wIGEgLmFycm93OjpiZWZvcmUge1xuICAgIHRvcDogMjZweDtcbiAgfVxuICAjcGFnZXRvcCBhIC5hcnJvdzo6YWZ0ZXIge1xuICAgIHRvcDogMzlweDtcbiAgfVxuICAjcGFnZXRvcCBhIC50ZXh0IHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBsaW5lLWhlaWdodDogMTBweDtcbiAgfVxufVxuXG4uZmxleC13cmFwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5mbGV4LXdyYXAuYWJzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5vcC1hbmltLFxuLmpzLWN1cnRhaW4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLm9wLWFuaW06OmFmdGVyLFxuLmpzLWN1cnRhaW46OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygxMDAlICsgMnB4KTtcbiAgdG9wOiAtMXB4O1xuICBsZWZ0OiAtMzBweDtcbiAgcmlnaHQ6IC0yMHB4O1xuICB3aWR0aDogYXV0bztcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjMDBmZmIyLCAjZmZmZjAwKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBjZW50ZXI7XG4gIHRyYW5zZm9ybTogc2tld1goLTM3ZGVnKSBzY2FsZVgoMCkgdHJhbnNsYXRlWigwKTtcbiAgei1pbmRleDogMTAwO1xufVxuXG4ub3AtYW5pbS5zaG93OjphZnRlcixcbi5qcy1jdXJ0YWluLnNob3c6OmFmdGVyIHtcbiAgYW5pbWF0aW9uOiByZXZlYWwgMC43cyBjdWJpYy1iZXppZXIoMC45LCAwLCAwLjEsIDEpIGJvdGg7XG59XG5cbi5vcC1hbmltLmRvbmUgLmN1cnRhaW4taW4sXG4uanMtY3VydGFpbi5kb25lIC5jdXJ0YWluLWluIHtcbiAgb3BhY2l0eTogMTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5vcC1hbmltIC5jdXJ0YWluLWluLFxuLmpzLWN1cnRhaW4gLmN1cnRhaW4taW4ge1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLm9wLWFuaW06OmFmdGVyLFxuICAuanMtY3VydGFpbjo6YWZ0ZXIge1xuICAgIGxlZnQ6IC0yMHB4O1xuICAgIHJpZ2h0OiAtMjBweDtcbiAgfVxuICAub3AtYW5pbSAuY3VydGFpbi1pbixcbiAgLmpzLWN1cnRhaW4gLmN1cnRhaW4taW4ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDBweDtcbiAgfVxufVxuXG4uYW5pbSB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IDAuNHMgMC4ycyBjdWJpYy1iZXppZXIoMCwgMCwgMC41OCwgMSk7XG59XG5cbi5hbmltLnNob3cge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG59XG5cbi5hbmltLWxlZnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzBweCk7XG59XG5cbi5hbmltLXJpZ2h0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zMHB4KTtcbn1cblxuLmFuaW0tdXAge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzBweCk7XG59XG5cbi5jb250ZW50LXdyYXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jb250ZW50LXdyYXAgLmFycm93LWVmZmVjdCB7XG4gIHdpZHRoOiA0MDBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiA1O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuXG4uY29udGVudC13cmFwIC5hcnJvdy1lZmZlY3QuaXMtcmlnaHQge1xuICByaWdodDogMDtcbiAgdG9wOiAtNjBweDtcbn1cblxuLmNvbnRlbnQtd3JhcCAuYXJyb3ctZWZmZWN0LmlzLWxlZnQge1xuICBsZWZ0OiAwO1xuICBib3R0b206IDIyJTtcbn1cblxuLmNvbnRlbnQtd3JhcCAuYXJyb3ctZWZmZWN0IGxpIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMzcwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNvbnRlbnQtd3JhcCAuYXJyb3ctZWZmZWN0IGxpOm50aC1vZi10eXBlKDIpIHtcbiAgbWFyZ2luLXRvcDogLTEwMHB4O1xufVxuXG4uY29udGVudC13cmFwIC5hcnJvdy1lZmZlY3QgbGk6bnRoLW9mLXR5cGUoMykge1xuICBtYXJnaW4tdG9wOiAtMjMwcHg7XG59XG5cbi5jb250ZW50LXdyYXAgLmFycm93LWVmZmVjdCBsaTpudGgtb2YtdHlwZSgzKTo6YmVmb3JlLCAuY29udGVudC13cmFwIC5hcnJvdy1lZmZlY3QgbGk6bnRoLW9mLXR5cGUoMyk6OmFmdGVyIHtcbiAgYmFja2dyb3VuZDogI2ZmZmYwMDtcbn1cblxuLmNvbnRlbnQtd3JhcCAuYXJyb3ctZWZmZWN0IGxpOjpiZWZvcmUsIC5jb250ZW50LXdyYXAgLmFycm93LWVmZmVjdCBsaTo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kOiAjZjZmNmY2O1xuICB3aWR0aDogNTAlO1xuICBoZWlnaHQ6IDE3MnB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwcHg7XG4gIHotaW5kZXg6IDU7XG59XG5cbi5jb250ZW50LXdyYXAgLmFycm93LWVmZmVjdCBsaTo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHNrZXdZKDQ1ZGVnKTtcbiAgbGVmdDogMDtcbn1cblxuLmNvbnRlbnQtd3JhcCAuYXJyb3ctZWZmZWN0IGxpOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHNrZXdZKC00NWRlZyk7XG4gIHJpZ2h0OiAwO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyODBweCkge1xuICAuY29udGVudC13cmFwIC5hcnJvdy1lZmZlY3Qge1xuICAgIHdpZHRoOiAzMDBweDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5jb250ZW50LXdyYXAgLmFycm93LWVmZmVjdCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAuY29udGVudC13cmFwIC5hcnJvdy1lZmZlY3QuaXMtcmlnaHQge1xuICAgIHJpZ2h0OiAtNTBweDtcbiAgfVxuICAuY29udGVudC13cmFwIC5hcnJvdy1lZmZlY3QuaXMtbGVmdCB7XG4gICAgbGVmdDogLTUwcHg7XG4gIH1cbiAgLmNvbnRlbnQtd3JhcCAuYXJyb3ctZWZmZWN0IGxpIHtcbiAgICBoZWlnaHQ6IDE1MHB4O1xuICB9XG4gIC5jb250ZW50LXdyYXAgLmFycm93LWVmZmVjdCBsaTpudGgtb2YtdHlwZSgyKSB7XG4gICAgbWFyZ2luLXRvcDogLTM2cHg7XG4gIH1cbiAgLmNvbnRlbnQtd3JhcCAuYXJyb3ctZWZmZWN0IGxpOm50aC1vZi10eXBlKDMpIHtcbiAgICBtYXJnaW4tdG9wOiAtOTBweDtcbiAgfVxuICAuY29udGVudC13cmFwIC5hcnJvdy1lZmZlY3QgbGk6OmJlZm9yZSwgLmNvbnRlbnQtd3JhcCAuYXJyb3ctZWZmZWN0IGxpOjphZnRlciB7XG4gICAgaGVpZ2h0OiA3NHB4O1xuICB9XG59XG5cbi5oYWxmd2F5LWJnIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW4tdG9wOiAtMTYwcHg7XG4gIHBhZGRpbmctdG9wOiAxNjBweDtcbiAgcGFkZGluZy1ib3R0b206IDE2MHB4O1xuICBtYXJnaW4tYm90dG9tOiAtMzIwcHg7XG59XG5cbi5oYWxmd2F5LWJnOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kOiAjZmZmZjAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAzNyU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAzNzBweDtcbiAgdHJhbnNmb3JtOiBza2V3WSg4ZGVnKTtcbiAgei1pbmRleDogMDtcbn1cblxuLmhhbGZ3YXktYmc6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZDogI2Y2ZjZmNjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNTYlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMjcwcHg7XG4gIHRyYW5zZm9ybTogc2tld1koLThkZWcpO1xuICB6LWluZGV4OiAxO1xufVxuXG4uaGFsZndheS1iZyBzZWN0aW9uIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuaGFsZndheS1iZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTI4MHB4O1xuICB9XG4gIC5oYWxmd2F5LWJnOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgaGVpZ2h0OiA3NyU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAxMy41JTtcbiAgICB0cmFuc2Zvcm06IHNrZXdZKDEyZGVnKTtcbiAgICB6LWluZGV4OiAwO1xuICB9XG4gIC5oYWxmd2F5LWJnOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kOiAjZjZmNmY2O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNzclO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMTIuNSU7XG4gICAgdHJhbnNmb3JtOiBza2V3WSgtMThkZWcpO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbn1cblxuLmJvdHRvbS1iZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWFyZ2luLXRvcDogLTE2MHB4O1xuICBwYWRkaW5nLXRvcDogMTYwcHg7XG59XG5cbi5ib3R0b20tYmc6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQ6ICNmZmZmMDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAyMTVweDtcbiAgdHJhbnNmb3JtOiBza2V3WSgtOGRlZyk7XG4gIHotaW5kZXg6IDA7XG59XG5cbi5ib3R0b20tYmc6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZDogI2Y2ZjZmNjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDIxMHB4O1xuICB0cmFuc2Zvcm06IHNrZXdZKDhkZWcpO1xuICB6LWluZGV4OiAxO1xufVxuXG4uYm90dG9tLWJnIHNlY3Rpb24ge1xuICBtYXJnaW4tdG9wOiAwO1xuICBwYWRkaW5nLXRvcDogMDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuYm90dG9tLWJnOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZDogI2ZmZmYwMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAyNDBweDtcbiAgICB0cmFuc2Zvcm06IHNrZXdZKC0xMmRlZyk7XG4gICAgei1pbmRleDogMDtcbiAgfVxuICAuYm90dG9tLWJnOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kOiAjZjZmNmY2O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDIxMHB4O1xuICAgIHRyYW5zZm9ybTogc2tld1koMThkZWcpO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIEhlYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuaGVhZGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiA5OTk5O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbmhlYWRlcjo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA4MHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgei1pbmRleDogMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNHMgY3ViaWMtYmV6aWVyKDAuNDU1LCAwLjAzLCAwLjUxNSwgMC45NTUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC04MnB4LCAwKTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDAwcHgpIHtcbiAgaGVhZGVyOjpiZWZvcmUge1xuICAgIGhlaWdodDogNjBweDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGhlYWRlci5iZzo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG4gIGhlYWRlci52aWV3IC5uYXYtd3JhcCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIGhlYWRlcjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQ6ICMwMGZmYjI7XG4gICAgd2lkdGg6IDMwMHB4O1xuICAgIGhlaWdodDogMzAwJTtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgbGVmdDogY2FsYygxMDAlIC0gMTUwcHggKyAxNTBweCk7XG4gICAgdG9wOiBjYWxjKC01MCUgKyAxNTBweCk7XG4gICAgei1pbmRleDogMTA7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM3ZGVnKTtcbiAgfVxuICBodG1sLmlzLWJsb2NrIGhlYWRlcjo6YmVmb3JlIHtcbiAgICBsZWZ0OiBjYWxjKDAlIC0gMTUwcHggLSA4NXB4KTtcbiAgICB0b3A6IGNhbGMoLTE1MCUgLSA4NXB4KTtcbiAgfVxuICBoZWFkZXI6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQ6ICNmZmZmMDA7XG4gICAgd2lkdGg6IDQwMHB4O1xuICAgIGhlaWdodDogMzAwJTtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgbGVmdDogY2FsYygxMDAlIC0gMjAwcHggKyAyMDBweCk7XG4gICAgdG9wOiBjYWxjKC01MCUgKyAyMDBweCk7XG4gICAgei1pbmRleDogODtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC44cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzdkZWcpO1xuICB9XG4gIGh0bWwuaXMtYmxvY2sgaGVhZGVyOjphZnRlciB7XG4gICAgbGVmdDogY2FsYygwJSAtIDIwMHB4IC0gMjAwcHgpO1xuICAgIHRvcDogY2FsYygtMTUwJSAtIDIwMHB4KTtcbiAgfVxuICBoZWFkZXIgLm5hdi13cmFwOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICB3aWR0aDogNDAwcHg7XG4gICAgaGVpZ2h0OiAzMDAlO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBsZWZ0OiBjYWxjKDEwMCUgLSAyMDBweCk7XG4gICAgdG9wOiAtNTAlO1xuICAgIHotaW5kZXg6IDg7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuN3MgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM3ZGVnKTtcbiAgfVxuICBodG1sLmlzLWJsb2NrIGhlYWRlciAubmF2LXdyYXA6OmJlZm9yZSB7XG4gICAgbGVmdDogY2FsYygwJSAtIDIwMHB4IC0gMjAwcHgpO1xuICAgIHRvcDogY2FsYygtMTUwJSAtIDIwMHB4KTtcbiAgfVxuICBoZWFkZXIgLm5hdi13cmFwOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZjAwO1xuICAgIHdpZHRoOiAyMDBweDtcbiAgICBoZWlnaHQ6IDMwMCU7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGxlZnQ6IGNhbGMoMTAwJSAtIDEwMHB4ICsgMTAwcHgpO1xuICAgIHRvcDogY2FsYygtNTAlICsgMTAwcHgpO1xuICAgIHotaW5kZXg6IDg7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuOHMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM3ZGVnKTtcbiAgfVxuICBodG1sLmlzLWJsb2NrIGhlYWRlciAubmF2LXdyYXA6OmFmdGVyIHtcbiAgICBsZWZ0OiBjYWxjKDEwMCUgLSAxMDBweCArIDQwcHgpO1xuICAgIHRvcDogY2FsYygtNTAlICsgNDBweCk7XG4gIH1cbiAgaGVhZGVyIC50aXRsZS5zcCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgZm9udC1mYW1pbHk6ICdSYWNpbmcgU2FucyBPbmUnLCBjdXJzaXZlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuICBoZWFkZXIgLnRpdGxlLnNwOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICMwMGZmYjIsICNmZmZmMDApO1xuICAgIHdpZHRoOiAyMDBweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IC00MHB4O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAwO1xuICAgIHRyYW5zZm9ybTogc2tld1goLTM3ZGVnKSB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuICBoZWFkZXIgLnRpdGxlLnNwIC5sb2dvIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbiAgfVxufVxuXG5oZWFkZXIgLnNwLW5hdmJ0biB7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDIycHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDIwcHg7XG4gIHRvcDogMjBweDtcbiAgei1pbmRleDogOTk5OTtcbn1cblxuaGVhZGVyIC5zcC1uYXZidG4gc3BhbiB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDJweDtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcztcbn1cblxuaGVhZGVyIC5zcC1uYXZidG4gc3BhbjpudGgtb2YtdHlwZSgxKSB7XG4gIHRvcDogMDtcbn1cblxuaGVhZGVyIC5zcC1uYXZidG4gc3BhbjpudGgtb2YtdHlwZSgyKSB7XG4gIHRvcDogMTBweDtcbn1cblxuaGVhZGVyIC5zcC1uYXZidG4gc3BhbjpudGgtb2YtdHlwZSgzKSB7XG4gIGJvdHRvbTogMDtcbn1cblxuaHRtbC5pcy1ibG9jayBoZWFkZXIgLnNwLW5hdmJ0biBzcGFuIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbn1cblxuaHRtbC5pcy1ibG9jayBoZWFkZXIgLnNwLW5hdmJ0biBzcGFuOm50aC1vZi10eXBlKDEpIHtcbiAgd2lkdGg6IDExMCU7XG4gIHRyYW5zZm9ybTogcm90YXRlKDEzNWRlZyk7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tdG9wOiAtMXB4O1xufVxuXG5odG1sLmlzLWJsb2NrIGhlYWRlciAuc3AtbmF2YnRuIHNwYW46bnRoLW9mLXR5cGUoMikge1xuICB3aWR0aDogMCU7XG4gIGxlZnQ6IDUwJTtcbn1cblxuaHRtbC5pcy1ibG9jayBoZWFkZXIgLnNwLW5hdmJ0biBzcGFuOm50aC1vZi10eXBlKDMpIHtcbiAgd2lkdGg6IDExMCU7XG4gIHRyYW5zZm9ybTogcm90YXRlKDIyNWRlZyk7XG4gIGJvdHRvbTogNTAlO1xuICBtYXJnaW4tYm90dG9tOiAtMXB4O1xufVxuXG5oZWFkZXIgLm5hdi13cmFwIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0cmFuc2l0aW9uOiBhbGwgMC40cztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg3MnB4LCAtOTRweCwgMCk7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgaGVhZGVyIC5uYXYtd3JhcCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC45KTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6IDE7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNHM7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgfVxuICBodG1sLmlzLWJsb2NrIGhlYWRlciAubmF2LXdyYXAge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwcHgsIDApO1xuICB9XG59XG5cbmhlYWRlciAjbmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBmb250LWZhbWlseTogJ1JhY2luZyBTYW5zIE9uZScsIGN1cnNpdmU7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgaGVhZGVyICNuYXYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHBhZGRpbmc6IDAgNDBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogOTk5OTtcbiAgfVxufVxuXG5oZWFkZXIgI25hdiA+IGxpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMDBweCkge1xuICBoZWFkZXIgI25hdiA+IGxpLnRpdGxlIHtcbiAgICBoZWlnaHQ6IDc0cHg7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG4gIGhlYWRlciAjbmF2ID4gbGkudGl0bGUgLmxvZ28ge1xuICAgIHBhZGRpbmc6IDAgMTBweCA1cHggMzBweDtcbiAgICBoZWlnaHQ6IDc0cHg7XG4gIH1cbiAgaGVhZGVyICNuYXYgPiBsaTpub3QoLnRpdGxlKSB7XG4gICAgaGVpZ2h0OiA2MHB4O1xuICB9XG4gIGhlYWRlciAjbmF2ID4gbGkgLmxvZ28sXG4gIGhlYWRlciAjbmF2ID4gbGkgYSB7XG4gICAgaGVpZ2h0OiA2MHB4O1xuICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICBmb250LXNpemU6IDJyZW07XG4gIH1cbiAgaGVhZGVyICNuYXYgPiBsaSAubG9nbyAuYXJyb3csXG4gIGhlYWRlciAjbmF2ID4gbGkgYSAuYXJyb3cge1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMTZweDtcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgfVxuICBoZWFkZXIgI25hdiA+IGxpIC5sb2dvIC5hcnJvdzo6YmVmb3JlLCBoZWFkZXIgI25hdiA+IGxpIC5sb2dvIC5hcnJvdzo6YWZ0ZXIsXG4gIGhlYWRlciAjbmF2ID4gbGkgYSAuYXJyb3c6OmJlZm9yZSxcbiAgaGVhZGVyICNuYXYgPiBsaSBhIC5hcnJvdzo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgd2lkdGg6IDEwcHg7XG4gICAgaGVpZ2h0OiA0cHg7XG4gICAgdG9wOiA4cHg7XG4gIH1cbiAgaGVhZGVyICNuYXYgPiBsaSAuc3ViTmF2IHtcbiAgICBsZWZ0OiAtMjNweDtcbiAgfVxuICBoZWFkZXIgI25hdiA+IGxpIC5zdWJOYXYgbGkgYSB7XG4gICAgcGFkZGluZzogMTJweCAyMHB4O1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICB9XG59XG5cbmhlYWRlciAjbmF2ID4gbGk6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgd2lkdGg6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgei1pbmRleDogMDtcbiAgdHJhbnNmb3JtOiBza2V3WCgtMzdkZWcpIHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzO1xuICB6LWluZGV4OiAtMTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICBoZWFkZXIgI25hdiA+IGxpOjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5oZWFkZXIgI25hdiA+IGxpLnRpdGxlIHtcbiAgaGVpZ2h0OiA5NHB4O1xuICBmb250LXNpemU6IDIuMnJlbTtcbiAgei1pbmRleDogMTtcbn1cblxuaGVhZGVyICNuYXYgPiBsaS50aXRsZTo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICMwMGZmYjIsICNmZmZmMDApO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbmhlYWRlciAjbmF2ID4gbGkudGl0bGUgLmxvZ28ge1xuICBwYWRkaW5nOiAwIDMwcHggNXB4IDQ1cHg7XG4gIGhlaWdodDogOTRweDtcbn1cblxuaGVhZGVyICNuYXYgPiBsaTpub3QoLnRpdGxlKSB7XG4gIGhlaWdodDogODBweDtcbn1cblxuaGVhZGVyICNuYXYgPiBsaTpub3QoLnRpdGxlKTo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gIGhlaWdodDogMTAwJTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnM7XG4gIHRyYW5zZm9ybTogc2tld1goLTM3ZGVnKSB0cmFuc2xhdGUzZCgwLCAtODBweCwgMCk7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgaGVhZGVyICNuYXYgPiBsaTpub3QoLnRpdGxlKS5ob3ZlciwgaGVhZGVyICNuYXYgPiBsaTpub3QoLnRpdGxlKTpob3ZlciB7XG4gICAgY29sb3I6ICMwMGZmYjI7XG4gIH1cbiAgaGVhZGVyICNuYXYgPiBsaTpub3QoLnRpdGxlKS5ob3Zlcjo6YWZ0ZXIsIGhlYWRlciAjbmF2ID4gbGk6bm90KC50aXRsZSk6aG92ZXI6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHNrZXdYKC0zN2RlZykgdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cbiAgaGVhZGVyICNuYXYgPiBsaTpub3QoLnRpdGxlKS5ob3ZlciBhIC5pbiwgaGVhZGVyICNuYXYgPiBsaTpub3QoLnRpdGxlKTpob3ZlciBhIC5pbiB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjMDBmZmIyLCAjZmZmZjAwKTtcbiAgICBiYWNrZ3JvdW5kLWNsaXA6IHRleHQ7XG4gICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuICAuaWUgaGVhZGVyICNuYXYgPiBsaTpub3QoLnRpdGxlKS5ob3ZlciBhIC5pbiwgLmllMTEgaGVhZGVyICNuYXYgPiBsaTpub3QoLnRpdGxlKS5ob3ZlciBhIC5pbiwgLmVkZ2UgaGVhZGVyICNuYXYgPiBsaTpub3QoLnRpdGxlKS5ob3ZlciBhIC5pbiwgLmllIGhlYWRlciAjbmF2ID4gbGk6bm90KC50aXRsZSk6aG92ZXIgYSAuaW4sIC5pZTExIGhlYWRlciAjbmF2ID4gbGk6bm90KC50aXRsZSk6aG92ZXIgYSAuaW4sIC5lZGdlIGhlYWRlciAjbmF2ID4gbGk6bm90KC50aXRsZSk6aG92ZXIgYSAuaW4ge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgY29sb3I6ICM4MEZGNTk7XG4gICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6ICM4MEZGNTk7XG4gIH1cbiAgaGVhZGVyICNuYXYgPiBsaTpub3QoLnRpdGxlKS5ob3ZlciBhIC5hcnJvdzo6YmVmb3JlLCBoZWFkZXIgI25hdiA+IGxpOm5vdCgudGl0bGUpLmhvdmVyIGEgLmFycm93OjphZnRlciwgaGVhZGVyICNuYXYgPiBsaTpub3QoLnRpdGxlKTpob3ZlciBhIC5hcnJvdzo6YmVmb3JlLCBoZWFkZXIgI25hdiA+IGxpOm5vdCgudGl0bGUpOmhvdmVyIGEgLmFycm93OjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogI2ZmZmYwMDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIGhlYWRlciAjbmF2ID4gbGk6bm90KC50aXRsZSkge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG5oZWFkZXIgI25hdiA+IGxpIC5sb2dvLFxuaGVhZGVyICNuYXYgPiBsaSBhIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgaGVpZ2h0OiA4MHB4O1xuICBwYWRkaW5nOiAwIDI1cHg7XG4gIGZvbnQtc2l6ZTogMi42cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xuICBjb2xvcjogIzAwMDtcbn1cblxuaGVhZGVyICNuYXYgPiBsaSAubG9nbyAuaW4sXG5oZWFkZXIgI25hdiA+IGxpIGEgLmluIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG59XG5cbmhlYWRlciAjbmF2ID4gbGkgLmxvZ28gLmFycm93LFxuaGVhZGVyICNuYXYgPiBsaSBhIC5hcnJvdyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMTdweDtcbiAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuaGVhZGVyICNuYXYgPiBsaSAubG9nbyAuYXJyb3c6OmJlZm9yZSwgaGVhZGVyICNuYXYgPiBsaSAubG9nbyAuYXJyb3c6OmFmdGVyLFxuaGVhZGVyICNuYXYgPiBsaSBhIC5hcnJvdzo6YmVmb3JlLFxuaGVhZGVyICNuYXYgPiBsaSBhIC5hcnJvdzo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICB3aWR0aDogMTJweDtcbiAgaGVpZ2h0OiA1cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA2cHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzO1xufVxuXG5oZWFkZXIgI25hdiA+IGxpIC5sb2dvIC5hcnJvdzo6YWZ0ZXIsXG5oZWFkZXIgI25hdiA+IGxpIGEgLmFycm93OjphZnRlciB7XG4gIHRyYW5zZm9ybTogc2tld1koNDVkZWcpO1xuICBsZWZ0OiAwO1xufVxuXG5oZWFkZXIgI25hdiA+IGxpIC5sb2dvIC5hcnJvdzo6YmVmb3JlLFxuaGVhZGVyICNuYXYgPiBsaSBhIC5hcnJvdzo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiBza2V3WSgtNDVkZWcpO1xuICByaWdodDogMDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICBoZWFkZXIgI25hdiA+IGxpIC5sb2dvLFxuICBoZWFkZXIgI25hdiA+IGxpIGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAxMnB4IDA7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGZvbnQtc2l6ZTogMy4xNXJlbTtcbiAgfVxuICBoZWFkZXIgI25hdiA+IGxpIC5sb2dvIC5pbixcbiAgaGVhZGVyICNuYXYgPiBsaSBhIC5pbiB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjMDBmZmIyLCAjZmZmZjAwKTtcbiAgICBiYWNrZ3JvdW5kLWNsaXA6IHRleHQ7XG4gICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuICBoZWFkZXIgI25hdiA+IGxpIC5sb2dvIC5hcnJvdyxcbiAgaGVhZGVyICNuYXYgPiBsaSBhIC5hcnJvdyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5ib2R5LmxhbmRzY2FwZSBoZWFkZXIgI25hdiA+IGxpIC5sb2dvLCBib2R5LmxhbmRzY2FwZVxuaGVhZGVyICNuYXYgPiBsaSBhIHtcbiAgcGFkZGluZzogNHB4IDA7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgaGVhZGVyICNuYXYgPiBsaSAuc3AtZmFkZSB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xuICB9XG4gIGh0bWwuaXMtYmxvY2sgaGVhZGVyICNuYXYgPiBsaSAuc3AtZmFkZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMCwgMCk7XG4gIH1cbiAgaHRtbC5pcy1ibG9jayBoZWFkZXIgI25hdiA+IGxpIC5zcC1mYWRlMSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC40NXM7XG4gIH1cbiAgaHRtbC5pcy1ibG9jayBoZWFkZXIgI25hdiA+IGxpIC5zcC1mYWRlMiB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC41cztcbiAgfVxuICBodG1sLmlzLWJsb2NrIGhlYWRlciAjbmF2ID4gbGkgLnNwLWZhZGUzIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjU1cztcbiAgfVxuICBodG1sLmlzLWJsb2NrIGhlYWRlciAjbmF2ID4gbGkgLnNwLWZhZGU0IHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjZzO1xuICB9XG4gIGh0bWwuaXMtYmxvY2sgaGVhZGVyICNuYXYgPiBsaSAuc3AtZmFkZTUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuNjVzO1xuICB9XG4gIGh0bWwuaXMtYmxvY2sgaGVhZGVyICNuYXYgPiBsaSAuc3AtZmFkZTYge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuN3M7XG4gIH1cbiAgaHRtbC5pcy1ibG9jayBoZWFkZXIgI25hdiA+IGxpIC5zcC1mYWRlNyB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC43NXM7XG4gIH1cbiAgaHRtbC5pcy1ibG9jayBoZWFkZXIgI25hdiA+IGxpIC5zcC1mYWRlOCB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC44cztcbiAgfVxuICBodG1sLmlzLWJsb2NrIGhlYWRlciAjbmF2ID4gbGkgLnNwLWZhZGU5IHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjg1cztcbiAgfVxuICBodG1sLmlzLWJsb2NrIGhlYWRlciAjbmF2ID4gbGkgLnNwLWZhZGUxMCB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC45cztcbiAgfVxufVxuXG5oZWFkZXIgI25hdiA+IGxpIC5zdWJOYXYge1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtMzBweDtcbiAgei1pbmRleDogMTAwO1xuICB0cmFuc2Zvcm06IHNrZXdYKC0zN2RlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IHRvcDtcbn1cblxuaGVhZGVyICNuYXYgPiBsaSAuc3ViTmF2IGxpIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzAwMDtcbn1cblxuaGVhZGVyICNuYXYgPiBsaSAuc3ViTmF2IGxpIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICNmZmY7XG4gIGhlaWdodDogYXV0bztcbiAgcGFkZGluZzogMTRweCAyMHB4IDE0cHggNDBweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgZm9udC1zaXplOiAxLjhyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG5oZWFkZXIgI25hdiA+IGxpIC5zdWJOYXYgbGkgYSBzcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRyYW5zZm9ybTogc2tld1goMzdkZWcpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogMzRweDtcbn1cblxuaGVhZGVyICNuYXYgPiBsaSAuc3ViTmF2IGxpIGEgc3Bhbjo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgd2lkdGg6IDEuMmVtO1xuICBoZWlnaHQ6IDFweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDJweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgaGVhZGVyICNuYXYgPiBsaSAuc3ViTmF2IGxpIGE6aG92ZXIgc3BhbiB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjMDBmZmIyLCAjZmZmZjAwKTtcbiAgICBiYWNrZ3JvdW5kLWNsaXA6IHRleHQ7XG4gICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgfVxuICBoZWFkZXIgI25hdiA+IGxpIC5zdWJOYXYgbGkgYTpob3ZlciBzcGFuOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6ICMwMGZmYjI7XG4gIH1cbiAgLmllIGhlYWRlciAjbmF2ID4gbGkgLnN1Yk5hdiBsaSBhOmhvdmVyIHNwYW4sIC5pZTExIGhlYWRlciAjbmF2ID4gbGkgLnN1Yk5hdiBsaSBhOmhvdmVyIHNwYW4sIC5lZGdlIGhlYWRlciAjbmF2ID4gbGkgLnN1Yk5hdiBsaSBhOmhvdmVyIHNwYW4ge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgY29sb3I6ICM4MEZGNTk7XG4gICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6ICM4MEZGNTk7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICBoZWFkZXIgI25hdiA+IGxpIC5zdWJOYXYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRyYW5zZm9ybTogc2tld1goMGRlZyk7XG4gICAgbGVmdDogMDtcbiAgfVxuICBoZWFkZXIgI25hdiA+IGxpIC5zdWJOYXYgbGkge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgfVxuICBoZWFkZXIgI25hdiA+IGxpIC5zdWJOYXYgbGkgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBmb250LXNpemU6IDEuOTVyZW07XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNsaXA6IHRleHQ7XG4gICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6ICNmZmY7XG4gIH1cbiAgaGVhZGVyICNuYXYgPiBsaSAuc3ViTmF2IGxpIGEgc3BhbiB7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgwZGVnKTtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIH1cbiAgaGVhZGVyICNuYXYgPiBsaSAuc3ViTmF2IGxpIGEgc3Bhbjo6YmVmb3JlIHtcbiAgICB3aWR0aDogMTJweDtcbiAgfVxufVxuXG5ib2R5LmxhbmRzY2FwZSBoZWFkZXIgI25hdiA+IGxpIC5zdWJOYXYgbGkgYSB7XG4gIHBhZGRpbmc6IDRweCAxMHB4O1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gRm9vdGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgY29sb3I6ICNmZmY7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDIwMHB4O1xuICBwYWRkaW5nOiAwIDM1cHg7XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xuICBsaW5lLWhlaWdodDogMjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDEwO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIGZvb3RlciB7XG4gICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmc6IDM1cHg7XG4gIH1cbiAgZm9vdGVyIC5jb3B5IHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiBUb3AgU2V0dGluZ1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuI2luZm9ybWF0aW9uIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAxMDBweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAjaW5mb3JtYXRpb24ge1xuICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gIH1cbn1cblxuLmhlcm8td3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTA7XG59XG5cbi5oZXJvLXdyYXA6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQ6ICNmZmZmMDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDQ0MHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMjAlO1xuICB0cmFuc2Zvcm06IHNrZXdZKC04ZGVnKTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuaGVyby13cmFwOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZDogI2ZmZmYwMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDQ0MHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMTIlO1xuICB9XG59XG5cbi5oZXJvIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbn1cblxuLmhlcm8gaDEge1xuICB3aWR0aDogNDIlO1xuICBsaW5lLWhlaWdodDogMTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDIzLjU3JTtcbiAgbGVmdDogMTQuMjglO1xuICB6LWluZGV4OiAxMDtcbn1cblxuLmhlcm8gaDEgZGl2IHtcbiAgbGluZS1oZWlnaHQ6IDA7XG59XG5cbi5oZXJvIGgxIGRpdi5zaGFkb3c6OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmhlcm8gaDEgZGl2LnNoYWRvdyAuY3VydGFpbi1pbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4uaGVybyBoMSBkaXYuc2hhZG93IGltZyB7XG4gIGZpbHRlcjogZHJvcC1zaGFkb3coMTJweCAxMnB4IDRweCByZ2JhKDAsIDAsIDAsIDAuNCkpO1xufVxuXG4uaGVybyBoMSBkaXYgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLmhlcm8gaDEgZGl2IGltZ1tzcmMkPVwiLnN2Z1wiXSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uaGVybyBoMSAudGV4dDEge1xuICB3aWR0aDogOTEuMTklO1xufVxuXG4uaGVybyBoMSAudGV4dDIge1xuICBtYXJnaW4tdG9wOiAzLjQlO1xuICB3aWR0aDogOTkuNzklO1xufVxuXG4uaGVybyBoMSAudGV4dDMge1xuICBtYXJnaW4tdG9wOiAxLjclO1xuICB3aWR0aDogNzAuMDYlO1xufVxuXG4uaGVybyBoMSAudGV4dDQge1xuICBtYXJnaW4tdG9wOiA2LjglO1xuICB3aWR0aDogNzEuMzQlO1xufVxuXG4uaGVybyBmaWd1cmUgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5oZXJvIGZpZ3VyZS5mcm9udCB7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgei1pbmRleDogMjA7XG59XG5cbi5oZXJvIGZpZ3VyZS5iZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDA7XG59XG5cbi5oZXJvIC5zY3JvbGwtYXJyb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiA2MiU7XG4gIHotaW5kZXg6IDMwO1xuICBmaWx0ZXI6IGRyb3Atc2hhZG93KDEycHggMTJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjIpKTtcbiAgbWFyZ2luLWxlZnQ6IC0zMnB4O1xuICBhbmltYXRpb24tbmFtZTogTW92ZURvd25JbmZpO1xuICBhbmltYXRpb24tZHVyYXRpb246IDIuNHM7XG4gIGFuaW1hdGlvbi1kZWxheTogMC41cztcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjUsIDAuNDYsIDAuNDUsIDAuOTQpO1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuaGVybyBoMSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTguOTglO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMTA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC5oZXJvIGgxIGRpdi5zaGFkb3c6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5oZXJvIGgxIGRpdi5zaGFkb3cgLmN1cnRhaW4taW4ge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG4gIC5oZXJvIGgxIGRpdi5zaGFkb3cgaW1nIHtcbiAgICBmaWx0ZXI6IGRyb3Atc2hhZG93KDVweCA1cHggMnB4IHJnYmEoMCwgMCwgMCwgMC40KSk7XG4gIH1cbiAgLmhlcm8gaDEgZGl2IGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnM7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuICAuaGVybyBoMSAudGV4dDEge1xuICAgIHdpZHRoOiA4Ny4wOSU7XG4gIH1cbiAgLmhlcm8gaDEgLnRleHQyIHtcbiAgICBtYXJnaW4tdG9wOiAzLjEyJTtcbiAgICB3aWR0aDogODcuNSU7XG4gIH1cbiAgLmhlcm8gaDEgLnRleHQzIHtcbiAgICBtYXJnaW4tdG9wOiAxLjU2JTtcbiAgICB3aWR0aDogNjEuMDklO1xuICB9XG4gIC5oZXJvIGgxIC50ZXh0NCB7XG4gICAgbWFyZ2luLXRvcDogNi4yNSU7XG4gICAgd2lkdGg6IDczLjQzJTtcbiAgfVxuICAuaGVybyBmaWd1cmUuYmcge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5oZXJvIC5zY3JvbGwtYXJyb3cge1xuICAgIHdpZHRoOiA0MnB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdG9wOiA5MiU7XG4gICAgei1pbmRleDogMzA7XG4gICAgZmlsdGVyOiBkcm9wLXNoYWRvdyg1cHggNXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMikpO1xuICAgIG1hcmdpbi1sZWZ0OiAtMjFweDtcbiAgfVxuICAuaGVybyAuc2Nyb2xsLWFycm93IGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLmluZm9VbCBsaSB7XG4gIG1hcmdpbi10b3A6IDE2cHg7XG59XG5cbi5pbmZvVWwgbGk6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW46IDA7XG59XG5cbi5pbmZvVWwgbGkubmV3IGEge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmluZm9VbCBsaS5uZXcgYSAudGV4dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmluZm9VbCBsaS5uZXcgYSAudGV4dDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIk5FV1wiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiAjZmYwMDAwO1xuICBtYXJnaW4tbGVmdDogMC41ZW07XG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4uaW5mb1VsIGxpIGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbn1cblxuLmluZm9VbCBsaSBhIC5hLWlubmVyIHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLmluZm9VbCBsaSBhIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmluZm9VbCBsaSBhIC50YWcge1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICBjb2xvcjogI2ZmZjtcbiAgd2lkdGg6IDExMHB4O1xuICBtaW4td2lkdGg6IDExMHB4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbiAgcGFkZGluZzogN3B4IDA7XG4gIGZvbnQtZmFtaWx5OiAnUmFjaW5nIFNhbnMgT25lJywgY3Vyc2l2ZTtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG59XG5cbi5pbmZvVWwgbGkgYSAuZGF0ZSB7XG4gIHBhZGRpbmctdG9wOiAycHg7XG4gIG1hcmdpbi1yaWdodDogMWVtO1xufVxuXG4uaW5mb1VsIGxpIGEgLnRleHQge1xuICBwYWRkaW5nLXRvcDogMnB4O1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMFxcMCkgYW5kIChtaW4tcmVzb2x1dGlvbjogNzJkcGkpIHtcbiAgLmluZm9VbCBsaSAuanMtY3VydGFpbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuaW5mb1VsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgfVxuICAuaW5mb1VsIGxpIHtcbiAgICBtYXJnaW4tdG9wOiAxOHB4O1xuICB9XG4gIC5pbmZvVWwgbGkubmV3IGEgLnRleHQ6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5pbmZvVWwgbGkubmV3IGEgLmRhdGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuICAuaW5mb1VsIGxpLm5ldyBhIC5kYXRlOjphZnRlciB7XG4gICAgY29udGVudDogXCJORVdcIjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgY29sb3I6ICNmZjAwMDA7XG4gICAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICB9XG4gIC5pbmZvVWwgbGkgYSAuYS1pbm5lciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLmluZm9VbCBsaSBhIHNwYW4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICAuaW5mb1VsIGxpIGEgLnRhZyB7XG4gICAgd2lkdGg6IDgwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIHBhZGRpbmc6IDdweCAwO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmluZm9VbCBsaSBhIC5kYXRlIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDFlbTtcbiAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgfVxuICAuaW5mb1VsIGxpIGEgLnRleHQge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4uY2QtdmFyaWF0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBtYXJnaW4tdG9wOiA2MHB4O1xufVxuXG4uY2QtdmFyaWF0aW9uIGxpIHtcbiAgd2lkdGg6IDI5LjA2JTtcbn1cblxuLmNkLXZhcmlhdGlvbiBsaSBmaWd1cmUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctdG9wOiA5MCU7XG59XG5cbi5jZC12YXJpYXRpb24gbGkgZmlndXJlIGltZyB7XG4gIGJveC1zaGFkb3c6IDE0cHggMTRweCA0cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cblxuLmNkLXZhcmlhdGlvbiBsaSAuaW5mb3JtYXRpb24ge1xuICBwYWRkaW5nOiAzMHB4IDEwcHggMDtcbn1cblxuLmNkLXZhcmlhdGlvbiBsaSAuaW5mb3JtYXRpb24gcCB7XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuY2QtdmFyaWF0aW9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICB9XG4gIC5jZC12YXJpYXRpb24gbGkge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gIH1cbiAgLmNkLXZhcmlhdGlvbiBsaSBmaWd1cmUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cbiAgLmNkLXZhcmlhdGlvbiBsaSBmaWd1cmUgaW1nIHtcbiAgICBib3gtc2hhZG93OiAxMHB4IDEwcHggNHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgfVxuICAuY2QtdmFyaWF0aW9uIGxpIC5pbmZvcm1hdGlvbiB7XG4gICAgcGFkZGluZzogMjBweCAxNXB4IDA7XG4gIH1cbn1cblxuLnJlbGVhc2UtYmxvY2sgLnRleHQge1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG59XG5cbi5jZC1pbmZvcm1hdGlvbiB1bCB7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbiAgY291bnRlci1yZXNldDogbnVtYmVyO1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5jZC1pbmZvcm1hdGlvbiB1bCB7XG4gICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgfVxufVxuXG4uY2QtaW5mb3JtYXRpb24gdWwgbGkge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xufVxuXG4uY2QtaW5mb3JtYXRpb24gdWwgbGk6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4uY2QtaW5mb3JtYXRpb24gdWwgbGkgLmN1cnRhaW4taW4ge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuXG4uY2QtaW5mb3JtYXRpb24gdWwgbGkgLmN1cnRhaW4taW4ubnVtIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLmNkLWluZm9ybWF0aW9uIHVsIGxpIC5udW0ge1xuICBwYWRkaW5nLXRvcDogMjVweDtcbiAgcGFkZGluZy1sZWZ0OiA4MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jZC1pbmZvcm1hdGlvbiB1bCBsaSAubnVtOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQ6ICMwMDA7XG4gIHdpZHRoOiA2cHg7XG4gIGhlaWdodDogMzBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1NXB4O1xuICB0b3A6IDIxcHg7XG4gIHRyYW5zZm9ybTogc2tld1goLTQ1ZGVnKTtcbn1cblxuLmNkLWluZm9ybWF0aW9uIHVsIGxpIC5udW06OmJlZm9yZSB7XG4gIGNvdW50ZXItaW5jcmVtZW50OiBudW1iZXI7XG4gIGNvbnRlbnQ6IGNvdW50ZXIobnVtYmVyLCBkZWNpbWFsLWxlYWRpbmctemVybyk7XG4gIGZvbnQtZmFtaWx5OiAnUmFjaW5nIFNhbnMgT25lJywgY3Vyc2l2ZTtcbiAgZm9udC1zaXplOiA0cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmNkLWluZm9ybWF0aW9uIHVsIGxpIC5udW0ge1xuICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgIHBhZGRpbmctbGVmdDogMHB4O1xuICB9XG4gIC5jZC1pbmZvcm1hdGlvbiB1bCBsaSAubnVtOjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uY2QtaW5mb3JtYXRpb24gdWwgbGkgLnRpdGxlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDIuMXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuY2QtaW5mb3JtYXRpb24gdWwgbGkgLnRpdGxlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDEuN3JlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yOTtcbiAgfVxuICAuY2QtaW5mb3JtYXRpb24gdWwgbGkgLnRpdGxlIHNwYW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5jZC1pbmZvcm1hdGlvbiB1bCBsaSAudGl0bGUgYSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmb250LWZhbWlseTogJ1JhY2luZyBTYW5zIE9uZScsIGN1cnNpdmU7XG4gIHdpZHRoOiAxMThweDtcbiAgaGVpZ2h0OiAyNnB4O1xuICBtYXJnaW4tbGVmdDogMjBweDtcbiAgY29sb3I6ICMwMDA7XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xuICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICBib3gtc2hhZG93OiA0cHggNHB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbn1cblxuLmNkLWluZm9ybWF0aW9uIHVsIGxpIC50aXRsZSBhOjpiZWZvcmUsIC5jZC1pbmZvcm1hdGlvbiB1bCBsaSAudGl0bGUgYTo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgei1pbmRleDogMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNHM7XG59XG5cbi5jZC1pbmZvcm1hdGlvbiB1bCBsaSAudGl0bGUgYTo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjMDBmZmIyLCAjZmZmZjAwKTtcbn1cblxuLmNkLWluZm9ybWF0aW9uIHVsIGxpIC50aXRsZSBhOmFmdGVyIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjYmRmZmViLCAjZmZmZjk0KTtcbiAgb3BhY2l0eTogMDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY2QtaW5mb3JtYXRpb24gdWwgbGkgLnRpdGxlIGE6aG92ZXI6OmJlZm9yZSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAuY2QtaW5mb3JtYXRpb24gdWwgbGkgLnRpdGxlIGE6aG92ZXI6OmFmdGVyIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIC5jZC1pbmZvcm1hdGlvbiB1bCBsaSAudGl0bGUgYTpob3ZlciAuaW4gaTo6YmVmb3JlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIC5jZC1pbmZvcm1hdGlvbiB1bCBsaSAudGl0bGUgYTpob3ZlciAuaW4gaTo6YWZ0ZXIge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuY2QtaW5mb3JtYXRpb24gdWwgbGkgLnRpdGxlIGEge1xuICAgIG1hcmdpbjogNXB4IDAgMTBweDtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICB3aWR0aDogMTE1cHg7XG4gICAgaGVpZ2h0OiAyNXB4O1xuICB9XG59XG5cbi5jZC1pbmZvcm1hdGlvbiB1bCBsaSAudGl0bGUgYSAuaW4ge1xuICBsaW5lLWhlaWdodDogMTJweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xufVxuXG4uY2QtaW5mb3JtYXRpb24gdWwgbGkgLnRpdGxlIGEgLmluIGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxOHB4O1xuICBoZWlnaHQ6IDEycHg7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMXB4O1xufVxuXG4uY2QtaW5mb3JtYXRpb24gdWwgbGkgLnRpdGxlIGEgLmluIGk6OmJlZm9yZSwgLmNkLWluZm9ybWF0aW9uIHVsIGxpIC50aXRsZSBhIC5pbiBpOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC40cztcbn1cblxuLmNkLWluZm9ybWF0aW9uIHVsIGxpIC50aXRsZSBhIC5pbiBpOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL3N2Zy9pY29uX3lvdXR1YmUuc3ZnKSBuby1yZXBlYXQgY2VudGVyO1xufVxuXG4uY2QtaW5mb3JtYXRpb24gdWwgbGkgLnRpdGxlIGEgLmluIGk6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL3N2Zy9pY29uX3lvdXR1YmVfb24uc3ZnKSBuby1yZXBlYXQgY2VudGVyO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uY2QtaW5mb3JtYXRpb24gdWwgbGkgLnRpZXVwIHtcbiAgY29sb3I6ICMyZjRmZmY7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmNkLWluZm9ybWF0aW9uIHVsIGxpIHtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICB9XG4gIC5jZC1pbmZvcm1hdGlvbiB1bCBsaSAudGlldXAge1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgfVxuICAuY2QtaW5mb3JtYXRpb24gdWwgbGkgLnRpZXVwLFxuICAuY2QtaW5mb3JtYXRpb24gdWwgbGkgLmRldGFpbCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5jZC1pbmZvcm1hdGlvbiAuanMtY3VydGFpbjo6YWZ0ZXIge1xuICAgIGxlZnQ6IC02MHB4O1xuICAgIHJpZ2h0OiAtNTBweDtcbiAgfVxufVxuXG4ubW92aWUtbGlzdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4ubW92aWUtbGlzdCBsaSB7XG4gIHdpZHRoOiA0Ny42NyU7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG59XG5cbi5tb3ZpZS1saXN0IGxpIC55b3V0dWJlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy10b3A6IDU2LjI1JTtcbn1cblxuLm1vdmllLWxpc3QgbGkgLnlvdXR1YmUgaWZyYW1lIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ubW92aWUtbGlzdCBsaSAudGV4dCB7XG4gIG1hcmdpbi10b3A6IDVweDtcbiAgcGFkZGluZzogMCAxMHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5tb3ZpZS1saXN0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICB9XG4gIC5tb3ZpZS1saXN0IGxpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiBVbmRlciBTZXR0aW5nXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4jcGFnZS1pbmZvcm1hdGlvbiAud3JhcHBlciB7XG4gIHBhZGRpbmctdG9wOiA5NHB4O1xufVxuXG4jcGFnZS1pbmZvcm1hdGlvbiAuaGFsZndheS1iZyB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbiNwYWdlLWluZm9ybWF0aW9uIC5oYWxmd2F5LWJnOjpiZWZvcmUge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogNzAlO1xufVxuXG4jcGFnZS1pbmZvcm1hdGlvbiAuaGFsZndheS1iZzo6YWZ0ZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogNzAlO1xufVxuXG4jcGFnZS1pbmZvcm1hdGlvbiAuY29udGVudC13cmFwIHtcbiAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gIHBhZGRpbmctdG9wOiAxNjBweDtcbn1cblxuI3BhZ2UtaW5mb3JtYXRpb24gLmNvbnRlbnQtd3JhcCBzZWN0aW9uIHtcbiAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xufVxuXG4jcGFnZS1pbmZvcm1hdGlvbiAuY29udGVudC13cmFwIGgyIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cblxuI3BhZ2UtaW5mb3JtYXRpb24gLmNvbnRlbnQtd3JhcCAuYXJyb3ctZWZmZWN0LmlzLXJpZ2h0IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDk0cHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgI3BhZ2UtaW5mb3JtYXRpb24gLndyYXBwZXIge1xuICAgIHBhZGRpbmctdG9wOiA2MHB4O1xuICB9XG4gICNwYWdlLWluZm9ybWF0aW9uIC5oYWxmd2F5LWJnIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gICNwYWdlLWluZm9ybWF0aW9uIC5oYWxmd2F5LWJnOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDQwNXB4O1xuICAgIGhlaWdodDogMjEwcHg7XG4gIH1cbiAgI3BhZ2UtaW5mb3JtYXRpb24gLmhhbGZ3YXktYmc6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAzODBweDtcbiAgICBoZWlnaHQ6IDIxMHB4O1xuICB9XG4gICNwYWdlLWluZm9ybWF0aW9uIC5jb250ZW50LXdyYXAgc2VjdGlvbiB7XG4gICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gIH1cbiAgI3BhZ2UtaW5mb3JtYXRpb24gLmNvbnRlbnQtd3JhcCAuYXJyb3ctZWZmZWN0LmlzLXJpZ2h0IHtcbiAgICB0b3A6IDEwcHg7XG4gIH1cbn1cblxuLm1lZGlhVWwge1xuICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggIzAwMDtcbn1cblxuLm1lZGlhVWwgbGkge1xuICBib3JkZXItdG9wOiBzb2xpZCAxcHggIzAwMDtcbiAgcGFkZGluZzogMzBweCAyMHB4O1xufVxuXG4ubWVkaWFVbCBsaSAuaW5mb0RhdGUge1xuICBmb250LXNpemU6IDEuNnJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLm1lZGlhVWwgbGkgLmluZm9UaXRsZSB7XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4ubWVkaWFVbCBsaSAuaW5mb1RpdGxlIC5uZXcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiAjZmYwMDAwO1xuICBtYXJnaW4tbGVmdDogMC41ZW07XG59XG5cbi5tZWRpYVVsIGxpIC5pbmZvVGV4dCB7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG4gIGNvbG9yOiAjNGQ0ZDRkO1xufVxuXG4ubWVkaWFVbCBsaSBhIHtcbiAgY29sb3I6ICM0ZDRkNGQ7XG59XG5cbi5tZWRpYVVsIGxpIGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLm1lZGlhVWwgbGkgc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAubWVkaWFVbCBsaSB7XG4gICAgcGFkZGluZzogMjBweCAxNXB4O1xuICB9XG4gIC5tZWRpYVVsIGxpIC5pbmZvRGF0ZSB7XG4gICAgZm9udC1zaXplOiAxLjFyZW07XG4gIH1cbiAgLm1lZGlhVWwgbGkgLmluZm9UaXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gIH1cbiAgLm1lZGlhVWwgbGkgLmluZm9UaXRsZSAubmV3IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG4uaW5mb1RhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG4gIGJvcmRlcjogc29saWQgMXB4ICNjY2M7XG59XG5cbi5pbmZvVGFibGUgdGgsIC5pbmZvVGFibGUgdGQge1xuICBib3JkZXI6IHNvbGlkIDFweCAjY2NjO1xuICBwYWRkaW5nOiA1cHggMTBweDtcbn1cblxuLmluZm9UYWJsZSB0aCB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmluZm9UYWJsZSB0ZCB7XG4gIHBhZGRpbmc6IDVweCAxMHB4O1xufVxuXG4uaW5uZXJCbG9jayB7XG4gIG1hcmdpbi10b3A6IDUwcHg7XG59XG5cbi5nb29kc0xpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXRvcDogMjVweDtcbn1cblxuLmdvb2RzTGlzdCAuZ29vZHMge1xuICB3aWR0aDogNDUuMTIlO1xuICBtYXJnaW46IDI1cHggMDtcbn1cblxuLmdvb2RzTGlzdCAuZ29vZHMgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5nb29kc0xpc3QgLmdvb2RzIC5nb29kc1RleHQge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBmb250LXNpemU6IDEuMnJlbTtcbiAgY29sb3I6ICM0ZDRkNGQ7XG59XG5cbi5nb29kc0xpc3QgLmdvb2RzIC5nb29kc1RleHQgc3Ryb25nIHtcbiAgY29sb3I6ICMwMDA7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbn1cblxuLmhhbGYtYmxvY2sge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbi5oYWxmLWJsb2NrIHAge1xuICB3aWR0aDogNTAlO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5oYWxmLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuaGFsZi1ibG9jayBwIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4vKioqKi9cbi5ldHhUZXh0UyB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgY29sb3I6ICM0ZDRkNGQ7XG59XG5cbi5ldHhUZXh0UyBzdHJvbmcge1xuICBmb250LXNpemU6IDIwcHg7XG59XG5cbi5ldHhUZXh0UyBzcGFuIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLmV0eEJsb2NrIC5mbG9hdExlZnQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLmV0eEJsb2NrIC5mbG9hdFJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5nb29kc1RleHQge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMCUgIWltcG9ydGFudDtcbiAgfVxuICAuZ29vZHNUZXh0IHN0cm9uZyB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICB9XG4gIC5ldHhUZXh0UyB7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICB9XG4gIC5ldHhUZXh0UyBzdHJvbmcge1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgfVxuICAuZXR4QmxvY2sgLmZsb2F0TGVmdCxcbiAgLmV0eEJsb2NrIC5mbG9hdFJpZ2h0IHtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gQW5pbWF0aW9uXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5Aa2V5ZnJhbWVzIE1vdmVEb3duIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuICA0OS45JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgTW92ZURvd25JbmZpIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgNzQuOSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDc1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIE1vdmVVcCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbiAgNDkuOSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIE1vdmVSaWdodCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbiAgNDkuOSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIE1vdmVMZWZ0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuICA0OS45JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcmV2ZWFsIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApIHNrZXcoLTM3ZGVnKSBzY2FsZVgoMCk7XG4gIH1cbiAgMC4wMDAxJSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcbiAgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApIHNrZXcoLTM3ZGVnKSBzY2FsZVgoMSk7XG4gIH1cbiAgNTAuMDAwMSUge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKSBza2V3KC0zN2RlZykgc2NhbGVYKDApO1xuICB9XG59XG5cbi8qIC0tLS0tLS0tLS0gU3ByaXRlIFNWRyBTVEFSVCAtLS0tLS0tLS0tICovXG4uc3ZnLWltYWdlIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3Nwcml0ZS1iZy5zdmdcIikgbm8tcmVwZWF0O1xufVxuXG4uc3ZnLWltYWdlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xufVxuXG4uc3ZnLWltYWdlX2RpbXMge1xuICB3aWR0aDogMThweDtcbiAgaGVpZ2h0OiAxOHB4O1xufVxuXG4vKiAtLS0tLS0tLS0tIFNwcml0ZSBTVkcgRU5EIC0tLS0tLS0tLS0gKi9cbiIsIkBjaGFyc2V0IFwidXRmLThcIjtcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIEJhc2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmh0bWwge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIGZvbnQtc2l6ZTogNjIuNSU7XG59XG5odG1sLCBib2R5IHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5ib2R5e1xuICBiYWNrZ3JvdW5kOiAkYy13aGl0ZTtcbiAgY29sb3I6ICRjLWJsYWNrO1xuICB3aWR0aDogMTAwJTs7XG4gIC8vIG1pbi13aWR0aDogJHBjLXdpZHRoO1xuICBtYXJnaW46IDAgYXV0bztcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXBjO1xuICBmb250LXdlaWdodDogNTAwO1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBsaW5lLWhlaWdodDogJGJhc2UtbGluZS1oZWlnaHQ7XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQpIHtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc3A7XG4gIH1cbn1cbioge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cbmEge1xuICBjb2xvcjogJGMtYmxhY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lO1xufVxuYTpmb2N1cywgKjpmb2N1cyB7IG91dGxpbmU6bm9uZTsgfVxuYnIge2xpbmUtaGVpZ2h0OiAxO31cbmltZyB7dmVydGljYWwtYWxpZ246IHRvcDt9XG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdLGlucHV0W3R5cGU9XCJzdWJtaXRcIl0sIHNlbGVjdCxidXR0b24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG46Oi1tcy1leHBhbmQgeyBkaXNwbGF5OiBub25lO31cbmJvZHkuaW9zIGEge1xuICBpbWcge29wYWNpdHk6IDE7fVxufVxuLyogSUU4KywgQ2hyb21lICovXG5pbnB1dCwgYnV0dG9uIHtcbiAgb3V0bGluZTogMDtcbn1cbi8qIEZpcmVmb3ggKi9cbmlucHV0OjotbW96LWZvY3VzLWlubmVyLCBidXR0b246Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXI6IDA7XG59XG5cbi8vIHNtYXJ0cGhvbmUgaW5wdXQgcmFkaXVzIHJpc2V0XG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdLGlucHV0W3R5cGU9XCJzdWJtaXRcIl0saW5wdXRbdHlwZT1cInRleHRcIl0saW5wdXRbdHlwZT1cImVtYWlsXCJdLCBzZWxlY3QsYnV0dG9uLHRleHRhcmVhIHtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbmlucHV0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxuaW5wdXQ6LW1zLWlucHV0LXBsYWNlaG9sZGVyLFxuaW5wdXQ6Oi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2FhYTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuLypjbGVhcmZpeCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5jbGVhcmZpeDphZnRlciB7Y29udGVudDogXCIgXCI7IGRpc3BsYXk6IGJsb2NrOyBoZWlnaHQ6IDA7IHZpc2liaWxpdHk6IGhpZGRlbjsgY2xlYXI6IGJvdGg7fVxuLmNsZWFyZml4IHt6b29tOjE7fVxuXG4uY2wge2NsZWFyOiBib3RoO31cbi5mbCB7ZmxvYXQ6IGxlZnQ7fVxuLmZyIHtmbG9hdDogcmlnaHQ7fVxuXG4ucGN7IGRpc3BsYXk6IGJsb2NrO31cbi5zcHsgZGlzcGxheTogbm9uZTt9XG4ucGMtaW57IGRpc3BsYXk6IGlubGluZS1ibG9jazt9XG4uc3AtaW57IGRpc3BsYXk6IG5vbmU7fVxuLnBjLXRhYmxleyBkaXNwbGF5OiB0YWJsZTt9XG4uc3AtdGFibGV7IGRpc3BsYXk6IG5vbmU7fVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50KSB7XG5cbiAgYm9keSB7XG4gICAgbWluLXdpZHRoOiBpbmhlcml0O1xuICB9XG4gIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgYSB7XG4gICAgJjpob3ZlciB7XG4gICAgICBpbWcge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIGlQaG9uZSDjgr/jg4Pjg5fmmYLmi6HlpKfpmLLmraJcbiAgYm9keS5pb3MgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gIGJvZHkuaW9zIHNlbGVjdCxcbiAgYm9keS5pb3MgdGV4dGFyZWEge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG5cbiAgLnBje2Rpc3BsYXk6IG5vbmU7fVxuICAuc3B7ZGlzcGxheTogYmxvY2s7fVxuICAucGMtaW57ZGlzcGxheTogbm9uZTt9XG4gIC5zcC1pbntkaXNwbGF5OiBpbmxpbmUtYmxvY2s7fVxuICAucGMtdGFibGV7IGRpc3BsYXk6IG5vbmU7fVxuICAuc3AtdGFibGV7IGRpc3BsYXk6IHRhYmxlO31cbn1cblxuQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAxMCB7XG5cdC5tdCN7JGkgKiAxMH0ge21hcmdpbi10b3A6ICN7JGkgKiAxMH1weCAhaW1wb3J0YW50fVxuXHQubWIjeyRpICogMTB9IHttYXJnaW4tYm90dG9tOiAjeyRpICogMTB9cHggIWltcG9ydGFudH1cblx0LnB0I3skaSAqIDEwfSB7cGFkZGluZy10b3A6ICN7JGkgKiAxMH1weCAhaW1wb3J0YW50fVxuXHQucGIjeyRpICogMTB9IHtwYWRkaW5nLWJvdHRvbTogI3skaSAqIDEwfXB4ICFpbXBvcnRhbnR9XG59IiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBpb3MuanPoqq3jgb/ovrzjgb/mmYLjga4xMDB2aOioreWumlxuLy8gaGVpZ2h0OiBjYWxjKHZhcigtLXZoLCAxdmgpICogMTAwKTtcblxuLy8g5paH5a2X6Kmw6Kit5a6aXG4vLyBmb250LWZlYXR1cmUtc2V0dGluZ3M6IFwicGFsdFwiO1xuXG4vLyBDU1MgVHJhbnNmb3Jtc+OBp+eUu+mdouOBjOOBoeOCieOBpOOBj+OBqOOBjVxuLy8gLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4vLyBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vICBCcmVha3BvaW50XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwYy13aWR0aDoxMDAwcHg7XG4kcGMtaW5uZXI6ODYwcHg7XG4kYnJlYWtwb2ludDo3NjhweDtcbiRicmVha3BvaW50LXhzOiA0ODBweDtcbiRicmVha3BvaW50LXNtOiA2MDBweDtcbiRicmVha3BvaW50LW1kOiA5NjBweDtcbiRicmVha3BvaW50LWxnOiAxMjgwcHg7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vICBGb250XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRmb250LWZhbWlseS1iYXNlOiAnTm90byBTYW5zIEpQJywgc2Fucy1zZXJpZjtcbiRmb250LXNpemUtcGM6IDEuNHJlbTtcbiRmb250LXNpemUtc3A6IDEuMnJlbTtcbiRiYXNlLWxpbmUtaGVpZ2h0OiAxLjY1O1xuXG4vLyBSZWd1bGFyIC0+IGZvbnQtd2VpZ2h0OiA0MDA7XG4vLyBNZWRpdW0gIC0+IGZvbnQtd2VpZ2h0OiA1MDA7IFxuLy8gQm9sZCAgICAtPiBmb250LXdlaWdodDogNzAwO1xuXG5AbWl4aW4gbWluY2hvIHtcbiAgZm9udC1mYW1pbHk6IFwi44OS44Op44Ku44OO5piO5pydIFByb04gVzNcIiwgXCJIaXJhZ2lubyBNaW5jaG8gUHJvTlwiLCBcIua4uOaYjuacnVwiLCBZdU1pbmNobywgXCJIR+aYjuacnUVcIiwgXCLvvK3vvLMg77yw5piO5pydXCIsIFwi77yt77yzIOaYjuacnVwiLCBzZXJpZjtcbn1cbkBtaXhpbiBlbiB7XG4gIGZvbnQtZmFtaWx5OiAnUmFjaW5nIFNhbnMgT25lJywgY3Vyc2l2ZTtcbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gIENvbG9yXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRjLW1haW46ICMwMGEwY2E7XG4kYy1ibGFjazogIzAwMDtcbiRjLWdyYXk6ICNmNmY2ZjY7XG4kYy13aGl0ZTogI2ZmZjtcbiRjLXJlZDogI2ZmMDAwMDtcbiRjLWJsdWU6ICMyZjRmZmY7XG4kYy1vcmFuZ2U6ICNmZjkzMDA7XG4kYy1ncmVlbjogIzAwZmZiMjtcbiRjLWdyZWVuLWw6ICNiZGZmZWI7XG4kYy15ZWxsb3c6ICNmZmZmMDA7XG4kYy15ZWxsb3ctbDogI2ZmZmY5NDtcbiRjLWdyeWVsOiAjODBGRjU5OyIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiBDb21tb24gU2V0dGluZ1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuaHRtbCB7XG4gICYuaXMtYmxvY2sge1xuICAgIGJvZHkge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG4gIH1cbiAgLndyYXBwZXIge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbn1cbi5jb250ZW50LXdyYXAge1xuICBzZWN0aW9uIHtcbiAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTIwcHg7XG4gIH1cbiAgLmlubmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6ICgkcGMtaW5uZXIgKyA0MHB4KTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDEwO1xuICB9XG4gIGgyIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1NHB4O1xuICAgIEBpbmNsdWRlIGVuO1xuICAgIGNvbG9yOiAkYy1ibGFjaztcbiAgICBmb250LXNpemU6IDhyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cbiAgaDMge1xuICAgIG1hcmdpbjogNjBweCAwIDQwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXNpemU6IDIuMXJlbTtcbiAgfVxuICAuc3VidGl0bGUge1xuICAgIG1hcmdpbi10b3A6IC0xMHB4O1xuICAgIEBpbmNsdWRlIGVuO1xuICAgIGNvbG9yOiAkYy1ibGFjaztcbiAgICBmb250LXNpemU6IDMuOXJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBzcGFuIHtcbiAgICAgIGZvbnQtc3R5bGU6IDQuNHJlbTtcbiAgICB9XG4gIH1cbiAgLmxlYWQge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnJlYWtwb2ludCkge1xuICAgIHNlY3Rpb24ge1xuICAgICAgcGFkZGluZy10b3A6IDUwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNjBweDtcbiAgICB9XG4gICAgaDIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgIGZvbnQtc2l6ZTogNC4xcmVtO1xuICAgIH1cbiAgICBoMyB7XG4gICAgICBtYXJnaW46IDYwcHggMCAyMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGZvbnQtc2l6ZTogMS43cmVtO1xuICAgIH1cbiAgICAuc3VidGl0bGUge1xuICAgICAgbWFyZ2luLXRvcDogLTEwcHg7XG4gICAgICBAaW5jbHVkZSBlbjtcbiAgICAgIGNvbG9yOiAkYy1ibGFjaztcbiAgICAgIGZvbnQtc2l6ZTogMi4ycmVtO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgc3BhbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi40cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuI3BhZ2V0b3Age1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMHB4O1xuICB6LWluZGV4OiA5OTk7XG4gICYuaXMtZml4ZWQgYSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHJpZ2h0OiAzMHB4O1xuICAgIGJvdHRvbTogMTBweDtcbiAgfVxuICBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogNDRweDtcbiAgICBoZWlnaHQ6IDgycHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAzMHB4O1xuICAgIGJvdHRvbTogLTEycHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgIEBpbmNsdWRlIGVuO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIGZpbHRlcjogZHJvcC1zaGFkb3coNHB4IDRweCA0cHggcmdiYSgwLDAsMCwwLjIpKTtcbiAgICBAaW5jbHVkZSBvbmx5RGVza3RvcCB7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgJjo6YmVmb3JlLFxuICAgICAgICAmOjphZnRlcixcbiAgICAgICAgLmFycm93OjpiZWZvcmUsXG4gICAgICAgIC5hcnJvdzo6YWZ0ZXIge1xuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBNb3ZlVXA7XG4gICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAuNXM7XG4gICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAwcztcbiAgICAgICAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICRlYXNlT3V0UXVhZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIsXG4gICAgLmFycm93OjpiZWZvcmUsXG4gICAgLmFycm93OjphZnRlciB7XG4gICAgICBjb250ZW50OlwiXCI7XG4gICAgICB3aWR0aDogNDBweDtcbiAgICAgIGhlaWdodDogMjhweDtcbiAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWcvc3ZnL3BhZ2VfYXJyb3cuc3ZnKSBuby1yZXBlYXQ7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAycHg7XG4gICAgfVxuICAgICY6OmJlZm9yZSB7dG9wOiAwO31cbiAgICAmOjphZnRlciB7dG9wOiAxOHB4O31cbiAgICAuYXJyb3c6OmJlZm9yZSB7dG9wOiAzNnB4O31cbiAgICAuYXJyb3c6OmFmdGVyIHt0b3A6IDU0cHg7fVxuICAgIC5hcnJvdyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDA7XG4gICAgfVxuICAgIC50ZXh0IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBwYWRkaW5nLXRvcDogNXB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgfVxuICB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQpIHtcbiAgICAmLmlzLWZpeGVkIGEge1xuICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgfVxuICAgIGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMzdweDtcbiAgICAgIGhlaWdodDogNjdweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgYm90dG9tOiAtMTdweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgJjo6YmVmb3JlLFxuICAgICAgJjo6YWZ0ZXIsXG4gICAgICAuYXJyb3c6OmJlZm9yZSxcbiAgICAgIC5hcnJvdzo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OlwiXCI7XG4gICAgICAgIHdpZHRoOiAzM3B4O1xuICAgICAgICBoZWlnaHQ6IDIzcHg7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgIH1cbiAgICAgICY6OmJlZm9yZSB7dG9wOiAwO31cbiAgICAgICY6OmFmdGVyIHt0b3A6IDEzcHg7fVxuICAgICAgLmFycm93OjpiZWZvcmUge3RvcDogMjZweDt9XG4gICAgICAuYXJyb3c6OmFmdGVyIHt0b3A6IDM5cHg7fVxuICAgICAgLnRleHQge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4uZmxleC13cmFwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OmNlbnRlcjtcbiAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAmLmFicyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbn1cblxuLy8gRUZGRUNUU1xuLm9wLWFuaW0sXG4uanMtY3VydGFpbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAmOjphZnRlcntcbiAgICBjb250ZW50OlwiXCI7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICB3aWR0aDoxMDAlO1xuICAgIGhlaWdodDpjYWxjKDEwMCUgKyAycHgpO1xuICAgIHRvcDotMXB4O1xuICAgIGxlZnQ6LTMwcHg7XG4gICAgcmlnaHQ6LTIwcHg7XG4gICAgd2lkdGg6YXV0bztcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICRjLWdyZWVuLCAkYy15ZWxsb3cpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46bGVmdCBjZW50ZXI7XG4gICAgdHJhbnNmb3JtOnNrZXdYKC0zN2RlZykgc2NhbGVYKDApIHRyYW5zbGF0ZVooMCk7XG4gICAgei1pbmRleDogMTAwO1xuICB9XG4gICYuc2hvdyB7XG4gICAgLy8gdHJhbnNpdGlvbjphbGwgLjM1cyBlYXNlLG9wYWNpdHkgMHMgZWFzZSAuMzVzO1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGFuaW1hdGlvbjpyZXZlYWwgLjdzIGN1YmljLWJlemllciguOSwwLC4xLDEpIGJvdGg7XG4gICAgfVxuICB9XG4gICYuZG9uZSB7XG4gICAgLmN1cnRhaW4taW4ge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbiAgLmN1cnRhaW4taW4ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnJlYWtwb2ludCkge1xuICAgICY6OmFmdGVye1xuICAgICAgbGVmdDotMjBweDtcbiAgICAgIHJpZ2h0Oi0yMHB4O1xuICAgIH1cbiAgICAuY3VydGFpbi1pbiB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwcHg7XG4gICAgfVxuICB9XG59XG5cbi5hbmltIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjowLjRzIDAuMnMgJGVhc2Utb3V0O1xuICAmLnNob3cge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gIH1cbn1cbi5hbmltLWxlZnQge3RyYW5zZm9ybTogdHJhbnNsYXRlWCgzMHB4KTt9XG4uYW5pbS1yaWdodCB7dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zMHB4KTt9XG4uYW5pbS11cCB7dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwcHgpO31cblxuLy8gQVJST1dcbi5jb250ZW50LXdyYXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC5hcnJvdy1lZmZlY3Qge1xuICAgIHdpZHRoOiA0MDBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogNTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAgLDApO1xuICAgICYuaXMtcmlnaHQge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0b3A6IC02MHB4O1xuICAgIH1cbiAgICAmLmlzLWxlZnQge1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvdHRvbTogMjIlO1xuICAgIH1cbiAgICBsaSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMzcwcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAmOm50aC1vZi10eXBlKDIpe1xuICAgICAgICBtYXJnaW4tdG9wOiAtMTAwcHg7XG4gICAgICB9XG4gICAgICAmOm50aC1vZi10eXBlKDMpe1xuICAgICAgICBtYXJnaW4tdG9wOiAtMjMwcHg7XG4gICAgICAgICY6OmJlZm9yZSxcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRjLXllbGxvdztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjo6YmVmb3JlLFxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OlwiXCI7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjLWdyYXk7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIGhlaWdodDogMTcycHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxMDBweDtcbiAgICAgICAgei1pbmRleDogNTtcbiAgICAgIH1cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiBza2V3WSg0NWRlZyk7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2Zvcm06IHNrZXdZKC00NWRlZyk7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50LWxnKSB7XG4gICAgICB3aWR0aDogMzAwcHg7XG4gICAgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQpIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAmLmlzLXJpZ2h0IHtcbiAgICAgICAgcmlnaHQ6IC01MHB4O1xuICAgICAgfVxuICAgICAgJi5pcy1sZWZ0IHtcbiAgICAgICAgbGVmdDogLTUwcHg7XG4gICAgICB9XG4gICAgICBsaSB7XG4gICAgICAgIGhlaWdodDogMTUwcHg7XG4gICAgICAgICY6bnRoLW9mLXR5cGUoMil7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLTM2cHg7XG4gICAgICAgIH1cbiAgICAgICAgJjpudGgtb2YtdHlwZSgzKXtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtOTBweDtcbiAgICAgICAgfVxuICAgICAgICAmOjpiZWZvcmUsXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBoZWlnaHQ6IDc0cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQkdcbi5oYWxmd2F5LWJnIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW4tdG9wOiAtMTYwcHg7XG4gIHBhZGRpbmctdG9wOiAxNjBweDtcbiAgcGFkZGluZy1ib3R0b206IDE2MHB4O1xuICBtYXJnaW4tYm90dG9tOiAtMzIwcHg7XG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kOiAkYy15ZWxsb3c7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAzNyU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAzNzBweDtcbiAgICB0cmFuc2Zvcm06IHNrZXdZKDhkZWcpO1xuICAgIHotaW5kZXg6IDA7XG4gIH1cbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZDogJGMtZ3JheTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDU2JTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDI3MHB4O1xuICAgIHRyYW5zZm9ybTogc2tld1koLThkZWcpO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbiAgc2VjdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50KSB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTI4MHB4O1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgaGVpZ2h0OiA3NyU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiAxMy41JTtcbiAgICAgIHRyYW5zZm9ybTogc2tld1koMTJkZWcpO1xuICAgICAgei1pbmRleDogMDtcbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJhY2tncm91bmQ6ICRjLWdyYXk7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogNzclO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMTIuNSU7XG4gICAgICB0cmFuc2Zvcm06IHNrZXdZKC0xOGRlZyk7XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cbiAgfVxufVxuLmJvdHRvbS1iZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWFyZ2luLXRvcDogLTE2MHB4O1xuICBwYWRkaW5nLXRvcDogMTYwcHg7XG4gIC8vIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgLy8gbGVmdDogMDtcbiAgLy8gdG9wOiAwO1xuICAvLyB6LWluZGV4OiAwO1xuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZDogJGMteWVsbG93O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDIxNXB4O1xuICAgIC8vIGJvdHRvbTogLTc4LjglO1xuICAgIHRyYW5zZm9ybTogc2tld1koLThkZWcpO1xuICAgIHotaW5kZXg6IDA7XG4gIH1cbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZDogJGMtZ3JheTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAyMTBweDtcbiAgICAvLyBib3R0b206IC03OC4yJTtcbiAgICB0cmFuc2Zvcm06IHNrZXdZKDhkZWcpO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbiAgc2VjdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50KSB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBiYWNrZ3JvdW5kOiAkYy15ZWxsb3c7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICAvLyBib3R0b206IC03OC4yJTtcbiAgICAgIHRvcDogMjQwcHg7XG4gICAgICB0cmFuc2Zvcm06IHNrZXdZKC0xMmRlZyk7XG4gICAgICB6LWluZGV4OiAwO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYmFja2dyb3VuZDogJGMtZ3JheTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIC8vIGJvdHRvbTogLTc3LjQlO1xuICAgICAgdG9wOiAyMTBweDtcbiAgICAgIHRyYW5zZm9ybTogc2tld1koMThkZWcpO1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gIH1cbn0iLCJAY2hhcnNldCBcInV0Zi04XCI7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vICBtaXhpbi5jc3Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gRWFzaW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIC8vXG5cbiRsaW5lYXI6IGN1YmljLWJlemllcigwLjI1MCwgMC4yNTAsIDAuNzUwLCAwLjc1MCk7XG4kZWFzZTogY3ViaWMtYmV6aWVyKDAuMjUwLCAwLjEwMCwgMC4yNTAsIDEuMDAwKTtcbiRlYXNlLWluOiBjdWJpYy1iZXppZXIoMC40MjAsIDAuMDAwLCAxLjAwMCwgMS4wMDApO1xuJGVhc2Utb3V0OiBjdWJpYy1iZXppZXIoMC4wMDAsIDAuMDAwLCAwLjU4MCwgMS4wMDApO1xuJGVhc2UtaW4tb3V0OiBjdWJpYy1iZXppZXIoMC40MjAsIDAuMDAwLCAwLjU4MCwgMS4wMDApO1xuXG4kZWFzZUluUXVhZDogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA4NSwgMC42ODAsIDAuNTMwKTtcbiRlYXNlSW5DdWJpYzogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcbiRlYXNlSW5RdWFydDogY3ViaWMtYmV6aWVyKDAuODk1LCAwLjAzMCwgMC42ODUsIDAuMjIwKTtcbiRlYXNlSW5RdWludDogY3ViaWMtYmV6aWVyKDAuNzU1LCAwLjA1MCwgMC44NTUsIDAuMDYwKTtcbiRlYXNlSW5TaW5lOiBjdWJpYy1iZXppZXIoMC40NzAsIDAuMDAwLCAwLjc0NSwgMC43MTUpO1xuJGVhc2VJbkV4cG86IGN1YmljLWJlemllcigwLjk1MCwgMC4wNTAsIDAuNzk1LCAwLjAzNSk7XG4kZWFzZUluQ2lyYzogY3ViaWMtYmV6aWVyKDAuNjAwLCAwLjA0MCwgMC45ODAsIDAuMzM1KTtcbiRlYXNlSW5CYWNrOiBjdWJpYy1iZXppZXIoMC42MDAsIC0wLjI4MCwgMC43MzUsIDAuMDQ1KTtcblxuJGVhc2VPdXRRdWFkOiBjdWJpYy1iZXppZXIoMC4yNTAsIDAuNDYwLCAwLjQ1MCwgMC45NDApO1xuJGVhc2VPdXRDdWJpYzogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcbiRlYXNlT3V0UXVhcnQ6IGN1YmljLWJlemllcigwLjE2NSwgMC44NDAsIDAuNDQwLCAxLjAwMCk7XG4kZWFzZU91dFF1aW50OiBjdWJpYy1iZXppZXIoMC4yMzAsIDEuMDAwLCAwLjMyMCwgMS4wMDApO1xuJGVhc2VPdXRTaW5lOiBjdWJpYy1iZXppZXIoMC4zOTAsIDAuNTc1LCAwLjU2NSwgMS4wMDApO1xuJGVhc2VPdXRFeHBvOiBjdWJpYy1iZXppZXIoMC4xOTAsIDEuMDAwLCAwLjIyMCwgMS4wMDApO1xuJGVhc2VPdXRDaXJjOiBjdWJpYy1iZXppZXIoMC4wNzUsIDAuODIwLCAwLjE2NSwgMS4wMDApO1xuJGVhc2VPdXRCYWNrOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMS4yNzUpO1xuXG4kZWFzZUluT3V0UXVhZDogY3ViaWMtYmV6aWVyKDAuNDU1LCAwLjAzMCwgMC41MTUsIDAuOTU1KTtcbiRlYXNlSW5PdXRDdWJpYzogY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEuMDAwKTtcbiRlYXNlSW5PdXRRdWFydDogY3ViaWMtYmV6aWVyKDAuNzcwLCAwLjAwMCwgMC4xNzUsIDEuMDAwKTtcbiRlYXNlSW5PdXRRdWludDogY3ViaWMtYmV6aWVyKDAuODYwLCAwLjAwMCwgMC4wNzAsIDEuMDAwKTtcbiRlYXNlSW5PdXRTaW5lOiBjdWJpYy1iZXppZXIoMC40NDUsIDAuMDUwLCAwLjU1MCwgMC45NTApO1xuJGVhc2VJbk91dEV4cG86IGN1YmljLWJlemllcigxLjAwMCwgMC4wMDAsIDAuMDAwLCAxLjAwMCk7XG4kZWFzZUluT3V0Q2lyYzogY3ViaWMtYmV6aWVyKDAuNzg1LCAwLjEzNSwgMC4xNTAsIDAuODYwKTtcbiRlYXNlSW5PdXRCYWNrOiBjdWJpYy1iZXppZXIoMC42ODAsIC0wLjU1MCwgMC4yNjUsIDEuNTUwKTtcblxuLy8gVUFcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLy9cbkBtaXhpbiBvbmx5TW9iaWxlIHtcbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAjeyRicmVha3BvaW50fSkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBvbmx5VGFibGV0IHtcbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAjezJ9cHgpIGFuZCAobWF4LXdpZHRoOiAxMjk5cHgpIHtcbiAgICBAY29udGVudDtcbiAgfVxuICAudGFibGV0ICYge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBvbmx5RGVza3RvcCB7XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogI3skYnJlYWtwb2ludH0pIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gaWUge1xuICAuaWUgJiwgLmllMTEgJiwgLmVkZ2UgJiB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuXG4vLyDnrKzkuIDlvJXmlbDjgafln7rmupbjgajjgarjgovnlLvpnaLluYXjga7jg5Xjgqnjg7Pjg4jjgrXjgqTjgrrjgIHnrKzkuozlvJXmlbDjgafln7rmupbjgajjgarjgovnlLvpnaLluYXjgpLlhaXliptcbi8vIOS+i++8iUBpbmNsdWRlIGZ6X3Z3KDUwLCAxMjgwKTtcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLy9cbkBmdW5jdGlvbiBnZXRfdncoJHNpemUsICR2aWV3cG9ydDozMjApe1xuICAkcmF0ZTogMTAwIC8gJHZpZXdwb3J0O1xuICBAcmV0dXJuICRyYXRlICogJHNpemUgKiAxdnc7XG59XG5AbWl4aW4gZnpfdncoJGZvbnRfc2l6ZToxMCwgJGJyZWFrcG9pbnQ6MTAwMCl7XG4gIGZvbnQtc2l6ZTogJGZvbnRfc2l6ZSAqIDFweDtcbiAgZm9udC1zaXplOiBnZXRfdncoJGZvbnRfc2l6ZSwkYnJlYWtwb2ludCk7XG59XG5cbi8vIGRpc3BsYXk6IGZsZXhcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLy9cbkBtaXhpbiBmbGV4IHtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC1tb3otYm94O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiBmbGV4O1xufVxuQG1peGluIGlubGluZS1mbGV4IHtcbiAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtYm94O1xuICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1mbGV4O1xuICBkaXNwbGF5OiAtbW96LWlubGluZS1mbGV4O1xuICBkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3g7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xufVxuXG4vLyBmbGV4LWRpcmVjdGlvblxuLy8gLSByb3cgIDogcm93XG4vLyAtIHJvd1IgOiByb3ctcmV2ZXJzZVxuLy8gLSBjb2wgIDogY29sdW1uXG4vLyAtIGNvbFIgOiBjb2x1bW4tcmV2ZXJzZVxuQG1peGluIGZsZXgtZGlyZWN0aW9uKCR2YWx1ZTogcm93KSB7XG4gIEBpZiAkdmFsdWU9PXJvd1Ige1xuICAgIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDtcbiAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IHJldmVyc2U7XG4gICAgLW1zLWZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gIH1cbiAgQGVsc2UgaWYgJHZhbHVlPT1jb2wge1xuICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuICBAZWxzZSBpZiAkdmFsdWU9PWNvbFIge1xuICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiByZXZlcnNlO1xuICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICB9XG4gIEBlbHNlIHtcbiAgICAtd2Via2l0LWJveC1vcmllbnQ6IGhvcml6b250YWw7XG4gICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gICAgLW1zLWZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxufVxuXG4vLyBmbGV4LXdyYXDvvIjln7rmnKzvvJpub3dyYXDvvIlcbi8vIC0gd3JhcFxuQG1peGluIGZsZXgtd3JhcCgkdmFsdWU6IG5vd3JhcCkge1xuICBAaWYgJHZhbHVlPT13cmFwIHtcbiAgICBmbGV4LXdyYXA6ICR2YWx1ZTtcbiAgICAtbXMtZmxleC13cmFwOiAkdmFsdWU7XG4gICAgLXdlYmtpdC1mbGV4LXdyYXA6ICR2YWx1ZTtcbiAgfVxuICBAZWxzZSB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgLW1zLWZsZXgtd3JhcDogbm93cmFwO1xuICAgIC13ZWJraXQtZmxleC13cmFwOiBub3dyYXA7XG4gIH1cbn1cblxuLy8ganVzdGlmeS1jb250ZW5077yI5Z+65pys77yac3RhcnTvvIlcbi8vIC0gc2IgOiBzcGFjZS1iZXR3ZWVuXG4vLyAtIHNhIDogc3BhY2UtYXJvdW5kXG4vLyAtIGNlbnRlclxuQG1peGluIGp1c3RpZnktY29udGVudCgkdmFsdWU6IHN0YXJ0KSB7XG4gIEBpZiAkdmFsdWU9PXNiIHtcbiAgICAtd2Via2l0LWJveC1wYWNrOiBqdXN0aWZ5O1xuICAgIC1tcy1mbGV4LXBhY2s6IGp1c3RpZnk7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG4gIEBlbHNlIGlmICR2YWx1ZT09c2Ege1xuICAgIC1tcy1mbGV4LXBhY2s6IGRpc3RyaWJ1dGU7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gIH1cbiAgQGVsc2UgaWYgJHZhbHVlPT1jZW50ZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIC1tcy1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG4gIEBlbHNlIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHN0YXJ0O1xuICAgIC1tcy1qdXN0aWZ5LWNvbnRlbnQ6IHN0YXJ0O1xuICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBzdGFydDtcbiAgfVxufVxuXG4vLyBhbGlnbi1pdGVtc++8iOWfuuacrO+8mnN0cmV0Y2jvvIlcbi8vIC0gc3RhcnRcbi8vIC0gZW5kXG4vLyAtIGNlbnRlclxuLy8gLSBiYXNlbGluZVxuQG1peGluIGFsaWduLWl0ZW1zKCR2YWx1ZTogc3RyZXRjaCkge1xuICBAaWYgJHZhbHVlPT1zdGFydCB7XG4gICAgLXdlYmtpdC1ib3gtYWxpZ246IHN0YXJ0O1xuICAgIC1tcy1mbGV4LWFsaWduOiBzdGFydDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgfVxuICBAZWxzZSBpZiAkdmFsdWU9PWVuZCB7XG4gICAgLXdlYmtpdC1ib3gtYWxpZ246IGVuZDtcbiAgICAtbXMtZmxleC1hbGlnbjogZW5kO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgfVxuICBAZWxzZSBpZiAkdmFsdWU9PWNlbnRlciB7XG4gICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcbiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbiAgQGVsc2UgaWYgJHZhbHVlPT1iYXNlbGluZSB7XG4gICAgLXdlYmtpdC1ib3gtYWxpZ246IGJhc2VsaW5lO1xuICAgIC1tcy1mbGV4LWFsaWduOiBiYXNlbGluZTtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gIH1cbiAgQGVsc2Uge1xuICAgIC13ZWJraXQtYm94LWFsaWduOiBzdHJldGNoO1xuICAgIC1tcy1mbGV4LWFsaWduOiBzdHJldGNoO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB9XG59XG5cbi8vIGFsaWduLWNvbnRlbnTvvIjln7rmnKzvvJpzdHJldGNo77yJXG4vLyAtIHN0YXJ0XG4vLyAtIGVuZFxuLy8gLSBjZW50ZXJcbi8vIC0gc2Jcbi8vIC0gc2FcbkBtaXhpbiBhbGlnbi1jb250ZW50KCR2YWx1ZTogc3RyZXRjaCkge1xuICBAaWYgJHZhbHVlPT1zdGFydCB7XG4gICAgLW1zLWZsZXgtbGluZS1wYWNrOiBzdGFydDtcbiAgICAtd2Via2l0LWFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgLW1zLWFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgYWxpZ24tY29udGVudDogZmxleC1zdGFydDtcbiAgfVxuICBAZWxzZSBpZiAkdmFsdWU9PWVuZCB7XG4gICAgLW1zLWZsZXgtbGluZS1wYWNrOiBlbmQ7XG4gICAgLXdlYmtpdC1hbGlnbi1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAtbXMtYWxpZ24tY29udGVudDogZmxleC1lbmQ7XG4gICAgYWxpZ24tY29udGVudDogZmxleC1lbmQ7XG4gIH1cbiAgQGVsc2UgaWYgJHZhbHVlPT1jZW50ZXIge1xuICAgIC1tcy1mbGV4LWxpbmUtcGFjazogY2VudGVyO1xuICAgIC13ZWJraXQtYWxpZ24tY29udGVudDogY2VudGVyO1xuICAgIC1tcy1hbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICB9XG4gIEBlbHNlIGlmICR2YWx1ZT09c2Ige1xuICAgIC1tcy1mbGV4LWxpbmUtcGFjazoganVzdGlmeTtcbiAgICAtd2Via2l0LWFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgLW1zLWFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxuICBAZWxzZSBpZiAkdmFsdWU9PXNhIHtcbiAgICAtbXMtZmxleC1saW5lLXBhY2s6IGRpc3RyaWJ1dGU7XG4gICAgLXdlYmtpdC1hbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAgLW1zLWFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgICBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gIH1cbiAgQGVsc2Uge1xuICAgIC1tcy1mbGV4LWxpbmUtcGFjazogc3RyZXRjaDtcbiAgICAtd2Via2l0LWFsaWduLWNvbnRlbnQ6IHN0cmV0Y2g7XG4gICAgLW1zLWFsaWduLWNvbnRlbnQ6IHN0cmV0Y2g7XG4gICAgYWxpZ24tY29udGVudDogc3RyZXRjaDtcbiAgfVxufVxuXG4vLyBvcmRlcu+8iOaVsOWApO+8iVxuQG1peGluIG9yZGVyKCR2YWx1ZSkge1xuICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAkdmFsdWU7XG4gIC1tcy1mbGV4LW9yZGVyOiAkdmFsdWU7XG4gIG9yZGVyOiAkdmFsdWU7XG59XG5cbi8vIGZsZXgtYmFzaXPvvIjmlbDlgKTvvIlcbkBtaXhpbiBmbGV4LWJhc2lzKCR2YWx1ZTogYXV0bykge1xuICAtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTogJHZhbHVlO1xuICBmbGV4LWJhc2lzOiAkdmFsdWU7XG59XG5cbi8vIGZsZXgtZ3Jvd++8iOaVsOWApO+8iVxuQG1peGluIGZsZXgtZ3JvdygkdmFsdWUpIHtcbiAgLXdlYmtpdC1ib3gtZmxleDogJHZhbHVlO1xuICAtbXMtZmxleC1wb3NpdGl2ZTogJHZhbHVlO1xuICBmbGV4LWdyb3c6ICR2YWx1ZTtcbn1cblxuLy8gYWxpZ24tc2VsZu+8iOWfuuacrO+8mmF1dG/vvIlcbi8vIC0gc3RhcnRcbi8vIC0gZW5kXG4vLyAtIGJhc2VsaW5lXG4vLyAtIHN0cmV0Y2hcbkBtaXhpbiBhbGlnbi1zZWxmKCR2YWx1ZTogc3RyZXRjaCkge1xuICBAaWYgJHZhbHVlPT1zdGFydCB7XG4gICAgLW1zLWZsZXgtaXRlbS1hbGlnbjogc3RhcnQ7XG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgfVxuICBAZWxzZSBpZiAkdmFsdWU9PWVuZCB7XG4gICAgLW1zLWZsZXgtaXRlbS1hbGlnbjogZW5kO1xuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICB9XG4gIEBlbHNlIGlmICR2YWx1ZT09Y2VudGVyIHtcbiAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBjZW50ZXI7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICB9XG4gIEBlbHNlIGlmICR2YWx1ZT09YmFzZWxpbmUge1xuICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IGJhc2VsaW5lO1xuICAgIGFsaWduLXNlbGY6IGJhc2VsaW5lO1xuICB9XG4gIEBlbHNlIGlmICR2YWx1ZT09c3RyZXRjaCB7XG4gICAgLW1zLWZsZXgtaXRlbS1hbGlnbjogc3RyZXRjaDtcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICB9XG4gIEBlbHNlIHtcbiAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBhdXRvO1xuICAgIGFsaWduLXNlbGY6IGF1dG87XG4gIH1cbn1cblxuLy8gQGluY2x1ZGUga2V5ZnJhbWVzKCRhbmltYXRpb24tbmFtZSkge35+fn1cbkBtaXhpbiBrZXlmcmFtZXMoJGFuaW1hdGlvbi1uYW1lOiBhbmltYXRvbikge1xuICBALXdlYmtpdC1rZXlmcmFtZXMgI3skYW5pbWF0aW9uLW5hbWV9IHtcbiAgICBAY29udGVudDtcbiAgfVxuICBALW1vei1rZXlmcmFtZXMgI3skYW5pbWF0aW9uLW5hbWV9IHtcbiAgICBAY29udGVudDtcbiAgfVxuICBAa2V5ZnJhbWVzICN7JGFuaW1hdGlvbi1uYW1lfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbkBtaXhpbiBhbmltYXRpb24oJGFuaW1hdGlvbi1uYW1lKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiAkYW5pbWF0aW9uLW5hbWU7XG4gIC1tb3otYW5pbWF0aW9uOiAkYW5pbWF0aW9uLW5hbWU7XG4gIGFuaW1hdGlvbjogJGFuaW1hdGlvbi1uYW1lO1xuICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIC1tb3otYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbn1cblxuLy8gQGluY2x1ZGUgY2FsYyh3aWR0aCwgXCIxMDAlIC0gMjgycHhcIik7XG5AbWl4aW4gY2FsYygkcHJvcGVydHksICRleHByZXNzaW9uKSB7XG4gICN7JHByb3BlcnR5fTogLW1vei1jYWxjKCN7JGV4cHJlc3Npb259KTtcbiAgI3skcHJvcGVydHl9OiAtby1jYWxjKCN7JGV4cHJlc3Npb259KTtcbiAgI3skcHJvcGVydHl9OiAtd2Via2l0LWNhbGMoI3skZXhwcmVzc2lvbn0pO1xuICAjeyRwcm9wZXJ0eX06IGNhbGMoI3skZXhwcmVzc2lvbn0pO1xufVxuQG1peGluIGNhbGMtbWF0aCgkcHJvcGVydHksICRudW0xLCAkbnVtMikge1xuICAjeyRwcm9wZXJ0eX06IGNhbGMoI3skbnVtMX0gKyAjeyRudW0yfSk7XG59XG5cbkBtaXhpbiBvdmVyZmxvdy1zY3JvbGwge1xuICBvdmVyZmxvdzogc2Nyb2xsO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIG92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG5cbkBtaXhpbiB0ZXh0LWp1c3RpZnkge1xuICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICAtbXMtdGV4dC1qdXN0aWZ5OiBpbnRlci1jbHVzdGVyO1xuICB0ZXh0LWp1c3RpZnk6IGludGVyLWNsdXN0ZXI7XG59XG5cbkBtaXhpbiBwb3MtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cblxuQG1peGluIGJnLWNvdmVyIHtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xufVxuXG5AbWl4aW4gaW5pdExpc3QoJG1hcmdpbikge1xuICBtYXJnaW46ICRtYXJnaW47XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuQG1peGluIGluaXRMaW5rKCRjb2xvcikge1xuICBjb2xvcjogJGNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbkBtaXhpbiB3YXJwTGluayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0ZXh0LWluZGVudDotOTk5OXB4O1xufVxuXG5AbWl4aW4gY2xlYXJmaXgge1xuICB6b29tOiAxO1xuICAmOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIGNvbnRlbnQ6IFwiLlwiO1xuICB9XG59XG5cbkBtaXhpbiBjc3NTcHJpdGUoJHVybCkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCR1cmwpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBzcGFuIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbn1cblxuQG1peGluIHNwcml0ZVJvbGwoJHgsICRvZmYsICRvbikge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkeCAkb2ZmO1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkeCAkb247XG4gIH1cbiAgJi52aXNpdCwgJi5hY3RpdmUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246ICR4ICRvbjtcbiAgfVxufVxuXG5AbWl4aW4gYWRkSWNvbigkd2lkLCAkaGVpLCAkeCwgJHkpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJHdpZDtcbiAgaGVpZ2h0OiAkaGVpO1xuICBjb250ZW50OiBcIlwiO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBAaWYgJHggPT0gZmFsc2UgYW5kICR5ID09IGZhbHNlIHt9XG4gIEBlbHNlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogJHggJHk7IH1cbiAgYmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcbn1cblxuQG1peGluIGJvcmRlci1yYWRpdXMoJHJhZGl1cykge1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gICAgIC1tb3otYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgICAgIC1tcy1ib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG59XG5AbWl4aW4gYm9yZGVyLXRvcC1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIC13ZWJraXQtYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1cy10b3BsZWZ0OiAkcmFkaXVzO1xuICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG59XG5AbWl4aW4gYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICAtd2Via2l0LWJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgICAgLW1vei1ib3JkZXItcmFkaXVzLXRvcHJpZ2h0OiAkcmFkaXVzO1xuICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xufVxuQG1peGluIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgLXdlYmtpdC1ib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1cy1ib3R0b21yaWdodDogJHJhZGl1cztcbiAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbn1cbkBtaXhpbiBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgLXdlYmtpdC1ib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICAgICAgLW1vei1ib3JkZXItcmFkaXVzLWJvdHRvbWxlZnQ6ICRyYWRpdXM7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbn1cblxuXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vIOmWouaVsFxuLy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbi8vIFJvdW5kICjlm5vmjajkupTlhaUpXG5AZnVuY3Rpb24gcm91bmQtZGVjaW1hbCAoJG51bWJlciwgJGRpZ2l0czogMCkge1xuICAgIEByZXR1cm4gdG8tZml4ZWQoJG51bWJlciwgJGRpZ2l0cywgJ3JvdW5kJyk7XG59XG5cbi8vIENlaWwgKOWIh+OCiuS4iuOBkilcbkBmdW5jdGlvbiBjZWlsLWRlY2ltYWwgKCRudW1iZXIsICRkaWdpdHM6IDApIHtcbiAgICBAcmV0dXJuIHRvLWZpeGVkKCRudW1iZXIsICRkaWdpdHMsICdjZWlsJyk7XG59XG5cbi8vIEZsb29yICjliIfjgormjajjgaYpIOS+i++8iWZsb29yLWRlY2ltYWwoICgzMDAvOTE1KSoxMDAlIClcbkBmdW5jdGlvbiBmbG9vci1kZWNpbWFsICgkbnVtYmVyLCAkZGlnaXRzOiAwKSB7XG4gICAgQHJldHVybiB0by1maXhlZCgkbnVtYmVyLCAkZGlnaXRzLCAnZmxvb3InKTtcbn1cblxuQGZ1bmN0aW9uIHRvLWZpeGVkICgkbnVtYmVyLCAkZGlnaXRzOiAwLCAkcm91bmQ6ICdyb3VuZCcpIHtcbiAgICAkbjogMTtcbiAgICAvLyAkbnVtYmVyIG11c3QgYmUgYSBudW1iZXJcbiAgICBAaWYgdHlwZS1vZigkbnVtYmVyKSAhPSBudW1iZXIge1xuICAgICAgICBAd2FybiAnI3sgJG51bWJlciB9IGlzIG5vdCBhIG51bWJlci4nO1xuICAgICAgICBAcmV0dXJuICRudW1iZXI7XG4gICAgfVxuICAgIC8vICRkaWdpdHMgbXVzdCBiZSBhIHVuaXRsZXNzIG51bWJlclxuICAgIEBpZiB0eXBlLW9mKCRkaWdpdHMpICE9IG51bWJlciB7XG4gICAgICAgIEB3YXJuICcjeyAkZGlnaXRzIH0gaXMgbm90IGEgbnVtYmVyLic7XG4gICAgICAgIEByZXR1cm4gJG51bWJlcjtcbiAgICB9IEBlbHNlIGlmIG5vdCB1bml0bGVzcygkZGlnaXRzKSB7XG4gICAgICAgIEB3YXJuICcjeyAkZGlnaXRzIH0gaGFzIGEgdW5pdC4nO1xuICAgICAgICBAcmV0dXJuICRudW1iZXI7XG4gICAgfVxuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGRpZ2l0cyB7XG4gICAgICAgICRuOiAkbiAqIDEwO1xuICAgIH1cbiAgICBAaWYgJHJvdW5kID09ICdyb3VuZCcge1xuICAgICAgICBAcmV0dXJuIHJvdW5kKCRudW1iZXIgKiAkbikgLyAkbjtcbiAgICB9IEBlbHNlIGlmICRyb3VuZCA9PSAnY2VpbCcge1xuICAgICAgICBAcmV0dXJuIGNlaWwoJG51bWJlciAqICRuKSAvICRuO1xuICAgIH0gQGVsc2UgaWYgJHJvdW5kID09ICdmbG9vcicge1xuICAgICAgICBAcmV0dXJuIGZsb29yKCRudW1iZXIgKiAkbikgLyAkbjtcbiAgICB9IEBlbHNlIHtcbiAgICAgICAgQHdhcm4gJyN7ICRyb3VuZCB9IGlzIHVuZGVmaW5lZCBrZXl3b3JkLic7XG4gICAgICAgIEByZXR1cm4gJG51bWJlcjtcbiAgICB9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gSGVhZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5oZWFkZXIge1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHotaW5kZXg6IDk5OTk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OlwiXCI7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsMjU1LDI1NSwwLjgpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogODBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC40cyAkZWFzZUluT3V0UXVhZDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC04MnB4LCAwKTtcbiAgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMDBweCkge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIG9ubHlEZXNrdG9wKCkge1xuICAgICYuYmcge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi52aWV3IHtcbiAgICAgIC5uYXYtd3JhcCB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8vIFNQ44OK44OT6KGo56S65pmC44Gu44Ko44OV44Kn44Kv44OI5p2/M+aemlxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50KSB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6XCJcIjtcbiAgICAgIGJhY2tncm91bmQ6ICRjLWdyZWVuO1xuICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgaGVpZ2h0OiAzMDAlO1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgbGVmdDogY2FsYygxMDAlIC0gMTUwcHggKyAxNTBweCk7XG4gICAgICB0b3A6IGNhbGMoLTUwJSArIDE1MHB4KTtcbiAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgJGVhc2VJbk91dEN1YmljO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzdkZWcpO1xuICAgICAgaHRtbC5pcy1ibG9jayAmIHtcbiAgICAgICAgbGVmdDogY2FsYygwJSAtIDE1MHB4IC0gODVweCk7XG4gICAgICAgIHRvcDogY2FsYygtMTUwJSAtIDg1cHgpO1xuICAgICAgICAvLyBsZWZ0OiBjYWxjKDAlIC0gMTUwcHggLSAxNTBweCk7XG4gICAgICAgIC8vIHRvcDogY2FsYygtMTUwJSAtIDE1MHB4KTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgY29udGVudDpcIlwiO1xuICAgICAgYmFja2dyb3VuZDogJGMteWVsbG93O1xuICAgICAgd2lkdGg6IDQwMHB4O1xuICAgICAgaGVpZ2h0OiAzMDAlO1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgbGVmdDogY2FsYygxMDAlIC0gMjAwcHggKyAyMDBweCk7XG4gICAgICB0b3A6IGNhbGMoLTUwJSArIDIwMHB4KTtcbiAgICAgIHotaW5kZXg6IDg7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC44cyAkZWFzZUluT3V0Q3ViaWM7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzN2RlZyk7XG4gICAgICBodG1sLmlzLWJsb2NrICYge1xuICAgICAgICBsZWZ0OiBjYWxjKDAlIC0gMjAwcHggLSAyMDBweCk7XG4gICAgICAgIHRvcDogY2FsYygtMTUwJSAtIDIwMHB4KTtcbiAgICAgIH1cbiAgICB9XG4gICAgLm5hdi13cmFwIHtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6XCJcIjtcbiAgICAgICAgYmFja2dyb3VuZDogJGMtd2hpdGU7XG4gICAgICAgIHdpZHRoOiA0MDBweDtcbiAgICAgICAgaGVpZ2h0OiAzMDAlO1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIGxlZnQ6IGNhbGMoMTAwJSAtIDIwMHB4KTtcbiAgICAgICAgdG9wOiAtNTAlO1xuICAgICAgICB6LWluZGV4OiA4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC43cyAkZWFzZUluT3V0Q3ViaWM7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM3ZGVnKTtcbiAgICAgICAgaHRtbC5pcy1ibG9jayAmIHtcbiAgICAgICAgICBsZWZ0OiBjYWxjKDAlIC0gMjAwcHggLSAyMDBweCk7XG4gICAgICAgICAgdG9wOiBjYWxjKC0xNTAlIC0gMjAwcHgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6XCJcIjtcbiAgICAgICAgYmFja2dyb3VuZDogJGMteWVsbG93O1xuICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgIGhlaWdodDogMzAwJTtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICBsZWZ0OiBjYWxjKDEwMCUgLSAxMDBweCArIDEwMHB4KTtcbiAgICAgICAgdG9wOiBjYWxjKC01MCUgKyAxMDBweCk7XG4gICAgICAgIHotaW5kZXg6IDg7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjhzICRlYXNlSW5PdXRDdWJpYztcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzdkZWcpO1xuICAgICAgICBodG1sLmlzLWJsb2NrICYge1xuICAgICAgICAgIGxlZnQ6IGNhbGMoMTAwJSAtIDEwMHB4ICsgNDBweCk7XG4gICAgICAgICAgdG9wOiBjYWxjKC01MCUgKyA0MHB4KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgXG4gICAgfVxuICAgIC50aXRsZS5zcCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsMjU1LDI1NSwwLjkpO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGhlaWdodDogNjBweDtcbiAgICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgQGluY2x1ZGUgZW47XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6XCJcIjtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAkYy1ncmVlbiwgJGMteWVsbG93KTtcbiAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogLTQwcHg7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgei1pbmRleDogMDtcbiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgtMzdkZWcpIHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgICAgfVxuICAgICAgLmxvZ28ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5zcC1uYXZidG4ge1xuICAgIHdpZHRoOiAyNHB4O1xuICAgIGhlaWdodDogMjJweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDIwcHg7XG4gICAgdG9wOiAyMHB4O1xuICAgIHotaW5kZXg6IDk5OTk7XG4gICAgLy8gb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBzcGFuIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICBiYWNrZ3JvdW5kOiAkYy1ibGFjaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgICAgICY6bnRoLW9mLXR5cGUoMSl7XG4gICAgICAgIHRvcDogMDtcbiAgICAgIH1cbiAgICAgICY6bnRoLW9mLXR5cGUoMil7XG4gICAgICAgIHRvcDogMTBweDtcbiAgICAgIH1cbiAgICAgICY6bnRoLW9mLXR5cGUoMyl7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgIH1cbiAgICAgIGh0bWwuaXMtYmxvY2sgJiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjLXdoaXRlO1xuICAgICAgICAmOm50aC1vZi10eXBlKDEpe1xuICAgICAgICAgIHdpZHRoOiAxMTAlO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDEzNWRlZyk7XG4gICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLTFweDtcbiAgICAgICAgfVxuICAgICAgICAmOm50aC1vZi10eXBlKDIpe1xuICAgICAgICAgIHdpZHRoOiAwJTtcbiAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIH1cbiAgICAgICAgJjpudGgtb2YtdHlwZSgzKXtcbiAgICAgICAgICB3aWR0aDogMTEwJTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgyMjVkZWcpO1xuICAgICAgICAgIGJvdHRvbTogNTAlO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0xcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLm5hdi13cmFwIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNHM7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg3MnB4LCAtOTRweCwgMCk7XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnJlYWtwb2ludCkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC45KTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC40cztcbiAgICAgIC8vIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgLTU2LjMzJSwgMCk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAgICAgLy8gb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIGh0bWwuaXMtYmxvY2sgJiB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwcHgsIDApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAjbmF2IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIEBpbmNsdWRlIGVuO1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBwYWRkaW5nOiAwIDQwcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiA5OTk5O1xuICAgIH1cbiAgICA+IGxpIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMDBweCkge1xuICAgICAgICAmLnRpdGxlIHtcbiAgICAgICAgICBoZWlnaHQ6IDc0cHg7XG4gICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgIC5sb2dvIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweCA1cHggMzBweDtcbiAgICAgICAgICAgIGhlaWdodDogNzRweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjpub3QoLnRpdGxlKSB7XG4gICAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICB9XG4gICAgICAgIC5sb2dvLFxuICAgICAgICBhIHtcbiAgICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICAuYXJyb3cge1xuICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgICY6OmJlZm9yZSxcbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgY29udGVudDpcIlwiO1xuICAgICAgICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiA0cHg7XG4gICAgICAgICAgICAgIHRvcDogOHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuc3ViTmF2IHtcbiAgICAgICAgICBsZWZ0OiAtMjNweDtcbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgcGFkZGluZzogMTJweCAyMHB4O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDpcIlwiO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKC0zN2RlZykgdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50KSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi50aXRsZSB7XG4gICAgICAgIGhlaWdodDogOTRweDtcbiAgICAgICAgZm9udC1zaXplOiAyLjJyZW07XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICRjLWdyZWVuLCAkYy15ZWxsb3cpO1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICAubG9nbyB7XG4gICAgICAgICAgcGFkZGluZzogMCAzMHB4IDVweCA0NXB4O1xuICAgICAgICAgIGhlaWdodDogOTRweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjpub3QoLnRpdGxlKSB7XG4gICAgICAgIGhlaWdodDogODBweDtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC44KTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnM7XG4gICAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgtMzdkZWcpIHRyYW5zbGF0ZTNkKDAsIC04MHB4LCAwKTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBvbmx5RGVza3RvcCB7XG4gICAgICAgICAgJi5ob3ZlcixcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYy1ncmVlbjtcbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgtMzdkZWcpIHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIC5pbiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjMDBmZmIyLCAjZmZmZjAwKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNsaXA6IHRleHQ7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBpZSgpe1xuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYy1ncnllbDtcbiAgICAgICAgICAgICAgICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiAkYy1ncnllbDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgLmFycm93IHtcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUsXG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGMteWVsbG93O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50KSB7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubG9nbyxcbiAgICAgIGEge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICAgIHBhZGRpbmc6IDAgMjVweDtcbiAgICAgICAgZm9udC1zaXplOiAyLjZyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4xZW07XG4gICAgICAgIGNvbG9yOiAkYy1ibGFjaztcbiAgICAgICAgLmluIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgICAgICAgfVxuICAgICAgICAuYXJyb3cge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICB3aWR0aDogMjRweDtcbiAgICAgICAgICBoZWlnaHQ6IDE3cHg7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICY6OmJlZm9yZSxcbiAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OlwiXCI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYy1ibGFjaztcbiAgICAgICAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA1cHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDZweDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNrZXdZKDQ1ZGVnKTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNrZXdZKC00NWRlZyk7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnJlYWtwb2ludCkge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBwYWRkaW5nOiAxMnB4IDA7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMy4xNXJlbTtcbiAgICAgICAgICAuaW4ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjMDBmZmIyLCAjZmZmZjAwKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY2xpcDogdGV4dDtcbiAgICAgICAgICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmFycm93IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGJvZHkubGFuZHNjYXBlICYge1xuICAgICAgICAgIHBhZGRpbmc6IDRweCAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50KSB7XG4gICAgICAgIC5zcC1mYWRlIHtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XG4gICAgICAgICAgaHRtbC5pcy1ibG9jayAmIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMCwgMCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggMTAge1xuICAgICAgICAgIGh0bWwuaXMtYmxvY2sgJiAuc3AtZmFkZSN7JGl9IHt0cmFuc2l0aW9uLWRlbGF5OiAjezAuNCArICRpICogMC4wNX1zfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuc3ViTmF2IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbGVmdDogLTMwcHg7XG4gICAgICAgIHotaW5kZXg6IDEwMDtcbiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgtMzdkZWcpO1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOnJpZ2h0IHRvcDtcbiAgICAgICAgbGkge1xuICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC44KTtcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzAwMDtcbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgY29sb3I6ICRjLXdoaXRlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgcGFkZGluZzogMTRweCAyMHB4IDE0cHggNDBweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKDM3ZGVnKTtcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDM0cHg7XG4gICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDpcIlwiO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjLXdoaXRlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxLjJlbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBib3R0b206IDJweDtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgb25seURlc2t0b3AoKSB7XG4gICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjMDBmZmIyLCAjZmZmZjAwKTtcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY2xpcDogdGV4dDtcbiAgICAgICAgICAgICAgICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzO1xuICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGMtZ3JlZW47XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBAaW5jbHVkZSBpZSgpe1xuICAgICAgICAgICAgICAgICAgICAvLyBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIC8vIGJhY2tncm91bmQ6IHVybCguLi9pbWcvZ3JhZC5wbmcpIG5vLXJlcGVhdCBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIC8vIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjLWdyeWVsO1xuICAgICAgICAgICAgICAgICAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogJGMtZ3J5ZWw7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKDBkZWcpO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIGNvbG9yOiAkYy13aGl0ZTtcbiAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDEuOTVyZW07XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY2xpcDogdGV4dDtcbiAgICAgICAgICAgICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6ICRjLXdoaXRlO1xuICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKDBkZWcpO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgd2lkdGg6IDEycHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGJvZHkubGFuZHNjYXBlICYge1xuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBwYWRkaW5nOiA0cHggMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gRm9vdGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogJGMtYmxhY2s7XG4gIGNvbG9yOiAkYy13aGl0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMjAwcHg7XG4gIHBhZGRpbmc6IDAgMzVweDtcbiAgZm9udC1zaXplOiAxLjJyZW07XG4gIGxpbmUtaGVpZ2h0OiAyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTA7XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQpIHtcbiAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZzogMzVweDtcbiAgICAuY29weSB7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIH1cbiAgfVxufVxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuIFRvcCBTZXR0aW5nXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiNpbmZvcm1hdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQpIHtcbiAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICB9XG59XG4uaGVyby13cmFwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxMDtcbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQ6ICRjLXllbGxvdztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDQ0MHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMjAlO1xuICAgIHRyYW5zZm9ybTogc2tld1koLThkZWcpO1xuICB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQpIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJhY2tncm91bmQ6ICRjLXllbGxvdztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiA0NDBweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3R0b206IDEyJTtcbiAgICB9XG4gIH1cbn1cbi5oZXJvIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgaDEge1xuICAgIHdpZHRoOiBmbG9vci1kZWNpbWFsKCAoNTg4LzE0MDApKjEwMCUgKTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiBmbG9vci1kZWNpbWFsKCAoMzMwLzE0MDApKjEwMCUgKTtcbiAgICBsZWZ0OiBmbG9vci1kZWNpbWFsKCAoMjAwLzE0MDApKjEwMCUgKTtcbiAgICB6LWluZGV4OiAxMDtcbiAgICBkaXYge1xuICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICAmLnNoYWRvdyB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIC5jdXJ0YWluLWluIHtcbiAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgfVxuICAgICAgICBpbWcge1xuICAgICAgICAgIGZpbHRlcjogZHJvcC1zaGFkb3coMTJweCAxMnB4IDRweCByZ2JhKDAsMCwwLDAuNCkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgICAgfVxuICAgICAgaW1nW3NyYyQ9XCIuc3ZnXCJdIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICAgIC50ZXh0MSB7XG4gICAgICB3aWR0aDogZmxvb3ItZGVjaW1hbCggKDUzNi4yNC81ODgpKjEwMCUgKTtcbiAgICB9XG4gICAgLnRleHQyIHtcbiAgICAgIG1hcmdpbi10b3A6IGZsb29yLWRlY2ltYWwoICgyMC81ODgpKjEwMCUgKTtcbiAgICAgIHdpZHRoOiBmbG9vci1kZWNpbWFsKCAoNTg2Ljc5NC81ODgpKjEwMCUgKTtcbiAgICB9XG4gICAgLnRleHQzIHtcbiAgICAgIG1hcmdpbi10b3A6IGZsb29yLWRlY2ltYWwoICgxMC81ODgpKjEwMCUgKTtcbiAgICAgIHdpZHRoOiBmbG9vci1kZWNpbWFsKCAoNDEyLzU4OCkqMTAwJSApO1xuICAgIH1cbiAgICAudGV4dDQge1xuICAgICAgbWFyZ2luLXRvcDogZmxvb3ItZGVjaW1hbCggKDQwLzU4OCkqMTAwJSApO1xuICAgICAgd2lkdGg6IGZsb29yLWRlY2ltYWwoICg0MTkuNTM0LzU4OCkqMTAwJSApO1xuICAgIH1cbiAgfVxuICBmaWd1cmUge1xuICAgIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbiAgZmlndXJlLmZyb250IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogMjA7XG4gIH1cbiAgZmlndXJlLmJnIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMDtcbiAgfVxuICAuc2Nyb2xsLWFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRvcDogNjIlO1xuICAgIHotaW5kZXg6IDMwO1xuICAgIGZpbHRlcjogZHJvcC1zaGFkb3coMTJweCAxMnB4IDRweCByZ2JhKDAsMCwwLDAuMikpO1xuICAgIG1hcmdpbi1sZWZ0OiAtMzJweDtcbiAgICBhbmltYXRpb24tbmFtZTogTW92ZURvd25JbmZpO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMi40cztcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuNXM7XG4gICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkZWFzZU91dFF1YWQ7XG4gICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gIH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnJlYWtwb2ludCkge1xuICAgIGgxIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IGZsb29yLWRlY2ltYWwoICg2NTAvMTEwMikqMTAwJSApO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZGl2IHtcbiAgICAgICAgJi5zaGFkb3cge1xuICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jdXJ0YWluLWluIHtcbiAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgZmlsdGVyOiBkcm9wLXNoYWRvdyg1cHggNXB4IDJweCByZ2JhKDAsMCwwLDAuNCkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpbWcge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC50ZXh0MSB7XG4gICAgICAgIHdpZHRoOiBmbG9vci1kZWNpbWFsKCAoNTU3LjM5LzY0MCkqMTAwJSApO1xuICAgICAgfVxuICAgICAgLnRleHQyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogZmxvb3ItZGVjaW1hbCggKDIwLzY0MCkqMTAwJSApO1xuICAgICAgICB3aWR0aDogZmxvb3ItZGVjaW1hbCggKDU2MC82NDApKjEwMCUgKTtcbiAgICAgIH1cbiAgICAgIC50ZXh0MyB7XG4gICAgICAgIG1hcmdpbi10b3A6IGZsb29yLWRlY2ltYWwoICgxMC82NDApKjEwMCUgKTtcbiAgICAgICAgd2lkdGg6IGZsb29yLWRlY2ltYWwoICgzOTEvNjQwKSoxMDAlICk7XG4gICAgICB9XG4gICAgICAudGV4dDQge1xuICAgICAgICBtYXJnaW4tdG9wOiBmbG9vci1kZWNpbWFsKCAoNDAvNjQwKSoxMDAlICk7XG4gICAgICAgIHdpZHRoOiBmbG9vci1kZWNpbWFsKCAoNDcwLzY0MCkqMTAwJSApO1xuICAgICAgfVxuICAgIH1cbiAgICBmaWd1cmUuYmcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIC5zY3JvbGwtYXJyb3cge1xuICAgICAgd2lkdGg6IDQycHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0b3A6IDkyJTtcbiAgICAgIHotaW5kZXg6IDMwO1xuICAgICAgZmlsdGVyOiBkcm9wLXNoYWRvdyg1cHggNXB4IDJweCByZ2JhKDAsMCwwLDAuMikpO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0yMXB4O1xuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4uaW5mb1VsIHtcbiAgbGkge1xuICAgIG1hcmdpbi10b3A6IDE2cHg7XG4gICAgJjpmaXJzdC1jaGlsZHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gICAgJi5uZXcge1xuICAgICAgYSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAudGV4dCB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiTkVXXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBjb2xvcjogJGMtcmVkO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAuNWVtO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBhIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgIC5hLWlubmVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIH1cbiAgICAgIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICAgIC50YWcge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYy1ibGFjaztcbiAgICAgICAgY29sb3I6ICRjLXdoaXRlO1xuICAgICAgICB3aWR0aDogMTEwcHg7XG4gICAgICAgIG1pbi13aWR0aDogMTEwcHg7XG4gICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICBwYWRkaW5nOiA3cHggMDtcbiAgICAgICAgQGluY2x1ZGUgZW47XG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xuICAgICAgfVxuICAgICAgLmRhdGUge1xuICAgICAgICBwYWRkaW5nLXRvcDogMnB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDFlbTtcbiAgICAgIH1cbiAgICAgIC50ZXh0IHtcbiAgICAgICAgcGFkZGluZy10b3A6IDJweDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDBcXDApIGFuZCAobWluLXJlc29sdXRpb246ICs3MmRwaSkge1xuICAgIGxpIC5qcy1jdXJ0YWluIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50KSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgbGkge1xuICAgICAgbWFyZ2luLXRvcDogMThweDtcbiAgICAgICYubmV3IHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgLnRleHQge1xuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAuZGF0ZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6IFwiTkVXXCI7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgY29sb3I6ICRjLXJlZDtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgLmEtaW5uZXIge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgICAudGFnIHtcbiAgICAgICAgICB3aWR0aDogODBweDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgcGFkZGluZzogN3B4IDA7XG4gICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgfVxuICAgICAgICAuZGF0ZSB7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxZW07XG4gICAgICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICAgIH1cbiAgICAgICAgLnRleHQge1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLmNkLXZhcmlhdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbWFyZ2luLXRvcDogNjBweDtcbiAgbGkge1xuICAgIHdpZHRoOiBmbG9vci1kZWNpbWFsKCAoMjUwLzg2MCkqMTAwJSApO1xuICAgIGZpZ3VyZSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmctdG9wOiA5MCU7XG4gICAgICBpbWcge1xuICAgICAgICBib3gtc2hhZG93OiAxNHB4IDE0cHggNHB4IHJnYmEoMCwwLDAsMC4xKTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIEBpbmNsdWRlIHBvcy1jZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICAgIC5pbmZvcm1hdGlvbiB7XG4gICAgICBwYWRkaW5nOiAzMHB4IDEwcHggMDtcbiAgICAgIHAge1xuICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIGxpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgIGZpZ3VyZSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICBpbWcge1xuICAgICAgICAgIGJveC1zaGFkb3c6IDEwcHggMTBweCA0cHggcmdiYSgwLDAsMCwwLjE1KTtcbiAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuaW5mb3JtYXRpb24ge1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDE1cHggMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5yZWxlYXNlLWJsb2NrIHtcbiAgLnRleHQge1xuICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgfVxufVxuLmNkLWluZm9ybWF0aW9uIHtcbiAgdWwge1xuICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICBjb3VudGVyLXJlc2V0OiBudW1iZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50KSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgIH1cbiAgICBsaSB7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG4gICAgICAuY3VydGFpbi1pbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICYubnVtIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubnVtIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDI1cHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogODBweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgY29udGVudDpcIlwiO1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRjLWJsYWNrO1xuICAgICAgICAgIHdpZHRoOiA2cHg7XG4gICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBsZWZ0OiA1NXB4O1xuICAgICAgICAgIHRvcDogMjFweDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKC00NWRlZyk7XG4gICAgICAgIH1cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBjb3VudGVyLWluY3JlbWVudDogbnVtYmVyO1xuICAgICAgICAgIGNvbnRlbnQ6IGNvdW50ZXIobnVtYmVyLGRlY2ltYWwtbGVhZGluZy16ZXJvKTtcbiAgICAgICAgICBAaW5jbHVkZSBlbjtcbiAgICAgICAgICBmb250LXNpemU6IDRyZW07XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDBweDtcbiAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnRpdGxlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBmb250LXNpemU6IDIuMXJlbTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnJlYWtwb2ludCkge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS43cmVtO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI5O1xuICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBAaW5jbHVkZSBlbjtcbiAgICAgICAgICB3aWR0aDogMTE4cHg7XG4gICAgICAgICAgaGVpZ2h0OiAyNnB4O1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICAgIGNvbG9yOiAkYy1ibGFjaztcbiAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICAgICAgICAgIGJveC1zaGFkb3c6IDRweCA0cHggNHB4IHJnYmEoMCwwLDAsMC4yKTtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAmOjpiZWZvcmUsXG4gICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDpcIlwiO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgei1pbmRleDogMDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjRzO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAkYy1ncmVlbiwgJGMteWVsbG93KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICRjLWdyZWVuLWwsICRjLXllbGxvdy1sKTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpbmNsdWRlIG9ubHlEZXNrdG9wKCkge1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAuaW4gaSB7XG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgIG1hcmdpbjogNXB4IDAgMTBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICAgICAgd2lkdGg6IDExNXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgICAuaW4ge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEycHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgICAgICAgIGhlaWdodDogMTJweDtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgdG9wOiAxcHg7XG4gICAgICAgICAgICAgICY6OmJlZm9yZSxcbiAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6XCJcIjtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNHM7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL3N2Zy9pY29uX3lvdXR1YmUuc3ZnKSBuby1yZXBlYXQgY2VudGVyO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWcvc3ZnL2ljb25feW91dHViZV9vbi5zdmcpIG5vLXJlcGVhdCBjZW50ZXI7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnRpZXVwIHtcbiAgICAgICAgY29sb3I6ICRjLWJsdWU7XG4gICAgICB9XG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50KSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgICAgIC50aWV1cCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICB9XG4gICAgICAgIC50aWV1cCxcbiAgICAgICAgLmRldGFpbCB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50KSB7XG4gICAgLmpzLWN1cnRhaW4ge1xuICAgICAgJjo6YWZ0ZXJ7XG4gICAgICAgIGxlZnQ6LTYwcHg7XG4gICAgICAgIHJpZ2h0Oi01MHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLm1vdmllLWxpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbGkge1xuICAgIHdpZHRoOiBmbG9vci1kZWNpbWFsKCAoNDEwLzg2MCkqMTAwJSApO1xuICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgLnlvdXR1YmUge1xuICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgcGFkZGluZy10b3A6NTYuMjUlO1xuICAgICAgaWZyYW1lIHtcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgIHRvcDowO1xuICAgICAgICByaWdodDowO1xuICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICBoZWlnaHQ6MTAwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnRleHQge1xuICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgIH1cbiAgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50KSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICBsaSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgfVxuICB9XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuIFVuZGVyIFNldHRpbmdcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuI3BhZ2UtaW5mb3JtYXRpb24ge1xuICAud3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IDk0cHg7XG4gIH1cbiAgLmhhbGZ3YXktYmcge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIC8vIHRvcDogY2FsYygyMCUgKyAzMTVweCk7XG4gICAgICB0b3A6IDcwJTtcbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgLy8gdG9wOiBjYWxjKDIwJSArIDIzMHB4KTtcbiAgICAgIHRvcDogNzAlO1xuICAgIH1cbiAgfVxuICAuY29udGVudC13cmFwIHtcbiAgICAvLyBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gMjk0cHgpO1xuICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgIHBhZGRpbmctdG9wOiAxNjBweDtcbiAgICBzZWN0aW9uIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxMDBweDtcbiAgICB9XG4gICAgaDIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICB9XG4gICAgLmFycm93LWVmZmVjdCB7XG4gICAgICAmLmlzLXJpZ2h0IHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB0b3A6IDk0cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQpIHtcbiAgICAud3JhcHBlciB7XG4gICAgICBwYWRkaW5nLXRvcDogNjBweDtcbiAgICB9XG4gICAgLmhhbGZ3YXktYmcge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgdG9wOiA0MDVweDtcbiAgICAgICAgaGVpZ2h0OiAyMTBweDtcbiAgICAgIH1cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB0b3A6IDM4MHB4O1xuICAgICAgICBoZWlnaHQ6IDIxMHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAuY29udGVudC13cmFwIHtcbiAgICAgIHNlY3Rpb24ge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgICAgIH1cbiAgICAgIC5hcnJvdy1lZmZlY3Qge1xuICAgICAgICAmLmlzLXJpZ2h0IHtcbiAgICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5tZWRpYVVsIHtcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICRjLWJsYWNrO1xuICBsaSB7XG4gICAgYm9yZGVyLXRvcDogc29saWQgMXB4ICRjLWJsYWNrO1xuICAgIHBhZGRpbmc6IDMwcHggMjBweDtcbiAgICAuaW5mb0RhdGUge1xuICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cbiAgICAuaW5mb1RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIC5uZXcge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGNvbG9yOiAkYy1yZWQ7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjVlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmluZm9UZXh0IHtcbiAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICBjb2xvcjogIzRkNGQ0ZDtcbiAgICB9XG4gICAgYSB7XG4gICAgICBjb2xvcjogIzRkNGQ0ZDtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cbiAgICB9XG4gICAgc3Ryb25nIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgfVxuICB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQpIHtcbiAgICBsaSB7XG4gICAgICBwYWRkaW5nOiAyMHB4IDE1cHg7XG4gICAgICAuaW5mb0RhdGUge1xuICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICAgIH1cbiAgICAgIC5pbmZvVGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgLm5ldyB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5pbmZvVGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogJGMtd2hpdGU7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG4gIGJvcmRlcjogc29saWQgMXB4ICNjY2M7XG4gIHRoLHRkIHtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjY2NjO1xuICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICB9XG4gIHRoIHtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICB0ZCB7XG4gICAgcGFkZGluZzogNXB4IDEwcHg7XG4gIH1cbn1cbi5pbm5lckJsb2NrIHtcbiAgbWFyZ2luLXRvcDogNTBweDtcbn1cbi5nb29kc0xpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXRvcDogMjVweDtcbiAgLmdvb2RzIHtcbiAgICB3aWR0aDogZmxvb3ItZGVjaW1hbCggKDM3MC84MjApKjEwMCUgKTtcbiAgICBtYXJnaW46IDI1cHggMDtcbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIC5nb29kc1RleHR7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICBjb2xvcjogIzRkNGQ0ZDtcbiAgICAgIHN0cm9uZ3tcbiAgICAgICAgY29sb3I6ICRjLWJsYWNrO1xuICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4uaGFsZi1ibG9jayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50KSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cblxuLyoqKiovXG5cbi5ldHhUZXh0U3tmb250LXNpemU6IDE0cHg7IGNvbG9yOiAjNGQ0ZDRkO31cbi5ldHhUZXh0UyBzdHJvbmd7Zm9udC1zaXplOiAyMHB4O31cbi5ldHhUZXh0UyBzcGFue2ZvbnQtd2VpZ2h0OiA3MDA7fVxuLmV0eEJsb2NrIC5mbG9hdExlZnR7ZmxvYXQ6IGxlZnQ7fVxuLmV0eEJsb2NrIC5mbG9hdFJpZ2h0e2Zsb2F0OiByaWdodDt9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQpIHtcbiAgLmdvb2RzVGV4dHtmb250LXNpemU6IDEycHg7IG1hcmdpbi1ib3R0b206IDEwJSAhaW1wb3J0YW50O31cbiAgLmdvb2RzVGV4dCBzdHJvbmd7Zm9udC1zaXplOiAxNnB4O31cbiAgLmV0eFRleHRTe2ZvbnQtc2l6ZTogMTFweDt9XG4gIC5ldHhUZXh0UyBzdHJvbmd7Zm9udC1zaXplOiAxNXB4O31cblxuICAuZXR4QmxvY2sgLmZsb2F0TGVmdCxcbiAgLmV0eEJsb2NrIC5mbG9hdFJpZ2h0e2Zsb2F0OiBub25lO31cbn0iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gQW5pbWF0aW9uXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbkBrZXlmcmFtZXMgTW92ZURvd24ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG4gIDQ5LjklIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgTW92ZURvd25JbmZpIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgNzQuOSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDc1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIE1vdmVVcCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbiAgNDkuOSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIE1vdmVSaWdodCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbiAgNDkuOSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIE1vdmVMZWZ0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuICA0OS45JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcmV2ZWFse1xuICAwJXtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKSBza2V3KC0zN2RlZykgc2NhbGVYKDApO1xuICB9XG4gIDAuMDAwMSUge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XG4gIH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKSBza2V3KC0zN2RlZykgc2NhbGVYKDEpO1xuICB9XG4gIDUwLjAwMDElIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodDtcbiAgfVxuICAxMDAle1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKSBza2V3KC0zN2RlZykgc2NhbGVYKDApO1xuICB9XG59IiwiJXN2Zy1jb21tb24ge1xuXHRiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvc3ByaXRlLWJnLnN2Z1wiKSBuby1yZXBlYXQ7XG59XG5cbi5zdmctaW1hZ2Uge1xuXHRAZXh0ZW5kICVzdmctY29tbW9uO1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG59XG5cbi5zdmctaW1hZ2VfZGltcyB7XG5cdHdpZHRoOiAxOHB4O1xuXHRoZWlnaHQ6IDE4cHg7XG59XG5cbiJdfQ== */
