/* ----------------------------------------
 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: dnp-shuei-gothic-kin-std,sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 62.5%;
}

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

body {
	background: #fff;
	color: #333;
	width: 100%;
	margin: 0 auto;
	font-size: 1.6rem;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	line-height: 1;
	-ms-overflow-style: none;
}

body::-webkit-scrollbar {
	display: none;
}

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

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

a.active {
	text-decoration: 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;
}

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

body {
	padding-top: 200px;
}

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

body .content-main {
	background: #fff;
	position: relative;
	z-index: 1;
}

body .bold {
	font-family: dnp-shuei-gothic-kin-std,sans-serif;
	font-weight: 600;
}

.inner {
	width: 100%;
	max-width: 1040px;
	margin-right: auto;
	margin-left: auto;
	padding-left: 20px;
	padding-right: 20px;
	position: relative;
}

#pagetop {
	position: relative;
}

#pagetop.is-fixed a {
	position: fixed;
	right: 0;
	bottom: 0;
	z-index: 1;
}

#pagetop a {
	background: rgba(255, 255, 255, 0.8);
	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;
	width: 100px;
	height: 100px;
	position: absolute;
	right: 0;
	bottom: 0;
	z-index: 10;
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	-webkit-transition: opacity .4s;
	transition: opacity .4s;
}

#pagetop a.active {
	opacity: 0.8;
}

.under-visual {
	position: relative;
}

.under-visual img {
	width: 100%;
}

.under-visual h1 {
	color: #fff;
	font-size: 4rem;
	letter-spacing: 0.1em;
	position: absolute;
	left: 50%;
	top: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	z-index: 1;
}

.under-content {
	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;
	line-height: 2;
	padding: 80px 0;
}

.under-content__left {
	font-size: 2rem;
	letter-spacing: 0.1em;
	line-height: 1.5;
}

.under-content__right {
	width: 65%;
	letter-spacing: 0.1em;
}

.under-content__right .under-title {
	font-size: 2.5rem;
	line-height: 37.5px;
	margin-top: 80px;
}

.under-content__right .under-title:nth-of-type(1) {
	margin-top: 0;
}

.under-content__right .under-text {
	margin-top: 80px;
	font-size: 1.6rem;
}

.under-content__right .under-text a {
	text-decoration: underline;
}

.under-content__right h3 {
	font-size: 1.6rem;
	font-family: dnp-shuei-gothic-kin-std,sans-serif;
	font-weight: 600;
}

.under-content .overflow {
	overflow: hidden;
}

.under-content .overflow .overflow-left {
	float: left;
	margin-right: 1em;
}

.under-content .overflow .overflow-right {
	overflow: hidden;
}

/* ----------------------------------------
 Loading
---------------------------------------- */

.loading {
	background: #fff;
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100vh;
	z-index: 99999;
	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;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.loading .sk-chase {
	width: 40px;
	height: 40px;
	position: relative;
	-webkit-animation: sk-chase 2.5s infinite linear both;
	animation: sk-chase 2.5s infinite linear both;
}

.loading .sk-chase-dot {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	-webkit-animation: sk-chase-dot 2.0s infinite ease-in-out both;
	animation: sk-chase-dot 2.0s infinite ease-in-out both;
}

.loading .sk-chase-dot:before {
	content: '';
	display: block;
	width: 25%;
	height: 25%;
	background-color: #333;
	border-radius: 100%;
	-webkit-animation: sk-chase-dot-before 2.0s infinite ease-in-out both;
	animation: sk-chase-dot-before 2.0s infinite ease-in-out both;
}

.loading .sk-chase-dot:nth-child(1) {
	-webkit-animation-delay: -1.1s;
	animation-delay: -1.1s;
}

.loading .sk-chase-dot:nth-child(2) {
	-webkit-animation-delay: -1.0s;
	animation-delay: -1.0s;
}

.loading .sk-chase-dot:nth-child(3) {
	-webkit-animation-delay: -0.9s;
	animation-delay: -0.9s;
}

.loading .sk-chase-dot:nth-child(4) {
	-webkit-animation-delay: -0.8s;
	animation-delay: -0.8s;
}

.loading .sk-chase-dot:nth-child(5) {
	-webkit-animation-delay: -0.7s;
	animation-delay: -0.7s;
}

.loading .sk-chase-dot:nth-child(6) {
	-webkit-animation-delay: -0.6s;
	animation-delay: -0.6s;
}

.loading .sk-chase-dot:nth-child(1):before {
	-webkit-animation-delay: -1.1s;
	animation-delay: -1.1s;
}

.loading .sk-chase-dot:nth-child(2):before {
	-webkit-animation-delay: -1.0s;
	animation-delay: -1.0s;
}

.loading .sk-chase-dot:nth-child(3):before {
	-webkit-animation-delay: -0.9s;
	animation-delay: -0.9s;
}

.loading .sk-chase-dot:nth-child(4):before {
	-webkit-animation-delay: -0.8s;
	animation-delay: -0.8s;
}

.loading .sk-chase-dot:nth-child(5):before {
	-webkit-animation-delay: -0.7s;
	animation-delay: -0.7s;
}

.loading .sk-chase-dot:nth-child(6):before {
	-webkit-animation-delay: -0.6s;
	animation-delay: -0.6s;
}

/* ========================================
 Header Setting
======================================== */

header {
	background: white;
	width: 100%;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 9999;
	-webkit-transition: all .4s;
	transition: all .4s;
}

body.is-navsml header > .inner {
	height: 120px;
}

body.is-navsml header .logo {
	max-width: 200px;
}

body.is-navsml header .logo svg {
	width: 100%;
}

header > .inner {
	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;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	height: 200px;
	-webkit-transition: height .4s;
	transition: height .4s;
	position: relative;
	z-index: 9999;
}

header .logo svg {
	fill: #333;
	-webkit-transition: width .4s;
	transition: width .4s;
}

/* ========================================
 Footer Setting
======================================== */

footer {
	background: #fff;
	width: 100%;
	height: 300px;
	padding-top: 150px;
	letter-spacing: 0.05em;
	position: relative;
	z-index: 2;
}

footer .inner {
	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: end;
	-webkit-align-items: flex-end;
	-ms-flex-align: end;
	align-items: flex-end;
}

footer .copy {
	margin-top: 50px;
	font-size: 1.4rem;
}

/* ========================================
 Nav Setting
======================================== */

.btn-nav {
	width: 100px;
	height: 100px;
	padding-top: 32px;
	text-align: center;
}

.btn-nav.is-active .line::before {
	-webkit-animation-name: line-top-on;
	animation-name: line-top-on;
}

.btn-nav.is-active .line::after {
	-webkit-animation-name: line-bottom-on;
	animation-name: line-bottom-on;
}

.btn-nav .line {
	width: 50px;
	height: 18px;
	margin: 0 auto;
	position: relative;
}

.btn-nav .line::before,
.btn-nav .line::after {
	content: "";
	width: 100%;
	height: 2px;
	background: #333;
	position: absolute;
	left: 50%;
	margin-left: -25px;
	-webkit-animation-duration: 0s;
	animation-duration: 0s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
}

body.is-loaded .btn-nav .line::before,
body.is-loaded .btn-nav .line::after {
	-webkit-animation-duration: .4s;
	animation-duration: .4s;
}

.btn-nav .line::before {
	top: 0;
	-webkit-animation-name: line-top-off;
	animation-name: line-top-off;
}

.btn-nav .line::after {
	bottom: 0;
	-webkit-animation-name: line-bottom-off;
	animation-name: line-bottom-off;
}

.btn-nav .en {
	margin-top: 10px;
	font-size: 1.5rem;
	letter-spacing: 0.1em;
}

#nav {
	width: 100%;
	position: absolute;
	left: 0;
	top: 200px;
	z-index: 8888;
	-webkit-transition: all .4s;
	transition: all .4s;
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d;
	-webkit-perspective: 1200px;
	perspective: 1200px;
	pointer-events: none;
	overflow: hidden;
}

#nav.is-show {
	pointer-events: visible;
}

#nav.is-show .nav-inner {
	-webkit-transform: translateY(0%);
	transform: translateY(0%);
}

#nav .nav-inner {
	background: #333;
	padding: 60px 0;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-transition: all .4s;
	transition: all .4s;
	-webkit-transform: translateY(-101%);
	transform: translateY(-101%);
	-webkit-transform-origin: top;
	transform-origin: top;
}

body.is-navsml #nav {
	top: 120px;
}

#nav .nav-list {
	width: 100%;
	-webkit-box-pack: start;
	-webkit-justify-content: flex-start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-box-align: start;
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	align-items: flex-start;
}

#nav .nav-list li {
	padding-top: 5px;
	margin-left: 8%;
}

#nav .nav-list li:first-child {
	margin-left: 0;
}

#nav .nav-list li.is-last {
	padding-top: 0;
}

#nav .nav-list li:nth-child(3) {
	margin-left: 20px;
}

#nav .nav-list li > a {
	height: 30px;
}

#nav .nav-list li a {
	color: #fff;
}

#nav .nav-list li a.instagram svg {
	fill: #fff;
}

#nav .nav-list li a span::after {
	background: #fff;
}

#nav .nav-list li dl {
	margin-top: 20px;
}

#nav .nav-list li dl dd {
	margin-top: 15px;
}

#nav .nav-list li dl a {
	font-size: 1.6rem;
}

.nav-list {
	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;
}

.nav-list li {
	margin-left: 50px;
}

.nav-list li:first-child {
	margin-left: 0;
}

.nav-list li a {
	display: block;
	font-size: 1.8rem;
	letter-spacing: 0.05em;
}

.nav-list li a.instagram svg {
	fill: #333;
}

/* ========================================
 Button Setting
======================================== */

.btn--text.active span::after {
	opacity: 1;
	bottom: -4px;
}

.btn--text.is-coming {
	pointer-events: none;
	opacity: 0.5;
}

.btn--text span {
	display: inline-block;
	position: relative;
}

.btn--text span::after {
	content: "";
	width: 100%;
	height: 1px;
	background: #333;
	position: absolute;
	left: 0;
	bottom: -6px;
	opacity: 0;
	-webkit-transition: all .2s;
	transition: all .2s;
}

.btn--more {
	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;
	background: #333;
	color: #fff;
	width: 300px;
	height: 50px;
	margin-left: auto;
	margin-right: auto;
	border-radius: 3px;
	font-size: 1.6rem;
	letter-spacing: 0.1em;
	position: relative;
	-webkit-transition: opacity .2s;
	transition: opacity .2s;
}

.btn--more .text {
	display: inline-block;
	padding: 0 20px;
}

.btn--more .icon {
	position: absolute;
	right: 20px;
	top: 50%;
	-webkit-transform: translateY(-100%);
	transform: translateY(-100%);
	margin-top: 3px;
	-webkit-transition: right .2s;
	transition: right .2s;
}

.btn--more .icon svg {
	fill: #fff;
}

.btn--more.active {
	opacity: 0.8;
}

.btn--more.active .icon {
	right: 15px;
}

/* ========================================
 Works Setting
======================================== */

.works-info__category {
	font-size: 2rem;
	letter-spacing: 0.1em;
}

.works-info__title {
	margin-top: 20px;
	font-size: 2.5rem;
	letter-spacing: 0.1em;
}

.taglist {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	margin-top: 24px;
}

.taglist__tag {
	min-width: 90px;
	margin-top: 6px;
	margin-right: 10px;
	padding: 4px 6px;
	font-size: 1.4rem;
	letter-spacing: 0.1em;
	border: solid 1px #999;
	text-align: center;
}

.works-list ul {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.works-list__item {
	width: 30%;
	margin-top: 80px;
	margin-left: 5%;
}

.works-list__item:nth-child(1),
.works-list__item:nth-child(2),
.works-list__item:nth-child(3) {
	margin-top: 0;
}

.works-list__item:nth-child(3n+1) {
	margin-left: 0;
}

.works-list__item a.active .works-list__photo img {
	-webkit-transform: scale(1.025);
	transform: scale(1.025);
}

.works-list__photo {
	overflow: hidden;
}

.works-list__photo img {
	width: 100%;
	-webkit-transition: -webkit-transform .4s;
	transition: -webkit-transform .4s;
	transition: transform .4s;
	transition: transform .4s, -webkit-transform .4s;
}

.works-list__detail {
	margin-top: 30px;
}

.works-list .works-info__category {
	font-size: 1.4rem;
}

.works-list .works-info__title {
	margin-top: 10px;
	font-size: 1.8rem;
	line-height: 1.5;
}

.works-list .taglist {
	margin-top: 10px;
}

.works-list__more {
	margin-top: 50px;
}

/* ========================================
 news Setting
======================================== */

.news {
	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-bottom: 80px;
	padding: 80px 0;
	border-bottom: 1px solid #333;
}

.news .news-left {
	font-size: 2rem;
	letter-spacing: 0.1em;
}

.news .news-list {
	width: 65%;
}

.news .news-list li {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	margin-top: 20px;
	font-size: 1.6rem;
	line-height: 1.5;
	letter-spacing: 0.1em;
}

.news .news-list li:first-child {
	margin-top: 0;
}

.news .news-list__date {
	margin-right: 15px;
}

.pickup {
	width: 100%;
	margin-left: auto;
	margin-right: auto;
}

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

.pickup .works-list__item {
	width: calc(50% - 1px);
	margin-top: 0;
	margin-left: 0;
	margin-bottom: 2px;
	position: relative;
}

.pickup .works-list__item::before {
	content: "";
	width: 100%;
	height: 23.33333%;
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(black));
	background: -webkit-linear-gradient(rgba(0, 0, 0, 0), black);
	background: linear-gradient(rgba(0, 0, 0, 0), black);
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 1;
}

.pickup .works-list__item:nth-child(1),
.pickup .works-list__item:nth-child(2) {
	margin-top: 0px;
}

.pickup .works-list__item:nth-child(3n+1) {
	margin-left: 0;
}

.pickup .works-list__detail {
	width: calc(100% - 100px);
	position: absolute;
	left: 50px;
	bottom: 32px;
	z-index: 2;
}

.pickup .works-info {
	color: #fff;
}

.pickup .works-info__category {
	font-size: 1.4rem;
}

.pickup .works-info__title {
	margin-top: 10px;
	font-size: 1.8rem;
}

.pickup .taglist {
	margin-top: 16px;
}

.pickup .taglist__tag {
	border: solid 1px #999;
}

.modaal-wrapper {
	z-index: 10000;
}

.modaal-wrapper .modaal-container {
	-webkit-box-shadow: none;
	box-shadow: none;
}

.modaal-image .modaal-inner-wrapper {
	padding-top: 100px;
}

.modaal-overlay {
	z-index: 9999;
}

.modaal-gallery-control::before,
.modaal-gallery-control::after {
	background: #333;
}

.modaal-close {
	width: 100px;
	height: 100px;
	position: absolute;
	right: -100px;
	top: -100px;
	border-radius: 0;
}

.modaal-wrapper .modaal-close {
	background: #fff;
}

.modaal-close::before,
.modaal-close::after {
	background: #333;
	left: 50%;
	width: 2px;
	height: 50px;
}

.modaal-close::before {
	-webkit-transform: rotate(-65deg);
	transform: rotate(-65deg);
}

.modaal-close::after {
	-webkit-transform: rotate(65deg);
	transform: rotate(65deg);
}

.modaal-close:hover::before,
.modaal-close:hover::after {
	background: #333;
}

.modaal-close span {
	display: inline-block;
	width: auto !important;
	height: auto !important;
	color: #333;
	font-size: 1.5rem;
	letter-spacing: 0.1em;
	clip: auto;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	margin-left: 0.05em;
	margin-top: 5px;
}

.modaal-gallery-control {
	height: 100%;
	border-radius: 0;
}

.modaal-gallery-control:focus,
.modaal-gallery-control:hover {
	background: rgba(255, 255, 255, 0.1);
}

.modaal-gallery-prev {
	width: 50px;
}

.modaal-gallery-prev-inner {
	margin-right: 0;
}

.modaal-gallery-next-inner {
	width: calc(100% + 50px);
	left: 0;
	margin-left: 0;
}

.modaal-gallery-next-inner::before,
.modaal-gallery-next-inner::after {
	left: auto;
	right: 20px;
}

.modaal-gallery-control::before,
.modaal-gallery-control::after {
	top: 50%;
}

.works-detail.mobile .works-photolist li {
	width: 100%;
}

.works-detail.mobile .works-photolist li a {
	pointer-events: none;
}

.works-detail .works-visual {
	width: 100%;
	height: 900px;
	position: relative;
	overflow: hidden;
}

.works-detail .works-visual figure {
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	width: 100%;
	height: 900px;
}

.works-detail__content {
	margin-bottom: 100px;
	padding: 80px 0 100px;
	border-bottom: 1px solid #333;
}

.works-detail .works-photolist {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-top: 60px;
}

.works-detail .works-photolist li {
	width: 48%;
	margin-top: 40px;
}

.works-detail .works-photolist li:nth-child(even) {
	margin-left: 4%;
}

.works-detail .works-photolist li img {
	width: 100%;
}

.about .about-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;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	padding: 80px 0;
}

.about .about-nav a {
	display: block;
	margin: 0 20px;
	font-size: 1.6rem;
	letter-spacing: 0.1em;
}

.about .about-nav a span {
	padding-left: 30px;
	position: relative;
}

.about .about-nav a span:before {
	content: "";
	width: 10px;
	height: 10px;
	border-left: 1px solid #333;
	border-bottom: 1px solid #333;
	position: absolute;
	left: 0;
	top: calc(50% - 7px);
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	-webkit-transform-origin: top;
	transform-origin: top;
}

.about .about-contents .under-content {
	border-top: 1px solid #333;
}

.about .about-workflow dl {
	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;
	line-height: 2;
}

.about .about-workflow dl dt,
.about .about-workflow dl dd {
	margin-top: 20px;
}

.about .about-workflow dl dt:nth-of-type(1),
.about .about-workflow dl dd:nth-of-type(1) {
	margin-top: 0;
}

.about .about-workflow dl dt {
	position: relative;
}

.about .about-workflow dl dt::after {
	content: "";
	border-top: 8px solid #ccc;
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	position: absolute;
	left: 50%;
	top: calc(50% + 22px);
	margin-left: -6px;
}

.about .about-workflow dl dt span {
	display: inline-block;
	background: #808080;
	color: #fff;
	width: 100px;
	padding: 4px;
	text-align: center;
	line-height: 1;
	letter-spacing: 0.1em;
}

.about .about-workflow dl dd {
	width: calc(100% - 120px);
}

.about .about-workflow__after {
	margin-top: 24px;
	border: solid 1px #999;
	text-align: center;
	padding: 4px;
	line-height: 1;
}

.about .about-profile__block {
	margin-top: 80px;
}

.about .about-profile__block:nth-of-type(1) {
	margin-top: 0;
}

.about .about-profile__name {
	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-top: 15px;
	line-height: 1;
}

.about .about-profile__name .jp {
	font-size: 2.5rem;
	margin-right: 20px;
}

.about .about-profile__name .en {
	font-size: 2rem;
}

.about .about-profile__history {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-top: 15px;
	line-height: 40px;
}

.about .about-profile__history dt {
	width: 60px;
}

.about .about-profile__history dd {
	width: calc(100% - 60px);
}

.about .publication-list {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.about .publication-list li {
	width: 46.15%;
	text-align: center;
	margin-top: 50px;
}

.about .publication-list li:nth-child(even) {
	margin-left: 7.69%;
}

.about .publication-list li:nth-child(1),
.about .publication-list li:nth-child(2) {
	margin-top: 0;
}

.about .publication-list__photo img {
	width: 100%;
}

.about .publication-list__info {
	margin-top: 30px;
	font-size: 1.4rem;
	line-height: 1.5;
}

.about .publication-list__title {
	font-size: 1.8rem;
	line-height: 30px;
}

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

.svg-icon_arrow,
.svg-icon_instagram,
.svg-logo,
.svg-logo_vertical,
.svg-pagetop {
	background: url("../img/sprite-bg.svg") no-repeat;
}

.svg-icon_arrow {
	background-position: 68.35443037974683% 37.5%;
}

.svg-icon_arrow_dims {
	width: 31px;
	height: 7px;
}

.svg-icon_instagram {
	background-position: 50.42016806722689% 63.503649635036496%;
}

.svg-icon_instagram_dims {
	width: 30px;
	height: 30px;
}

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

.svg-logo_dims {
	width: 267.444px;
	height: 60px;
}

.svg-logo_vertical {
	background-position: 0 99.53384980342064%;
}

.svg-logo_vertical_dims {
	width: 120px;
	height: 106.719px;
}

.svg-pagetop {
	background-position: 53.097345132743364% 42.857142857142854%;
}

.svg-pagetop_dims {
	width: 42px;
	height: 27px;
}

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

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

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

body.is-pc a:hover {
	text-decoration: none;
}

body.is-pc #pagetop a:hover {
	opacity: 0.8;
}

body.is-pc .btn--text:hover span::after {
	opacity: 1;
	bottom: -4px;
}

body.is-pc .btn--more:hover {
	opacity: 0.8;
}

body.is-pc .btn--more:hover .icon {
	right: 15px;
}

body.is-pc .works-list__item a:hover .works-list__photo img {
	-webkit-transform: scale(1.025);
	transform: scale(1.025);
}

}

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

.modaal-image .modaal-inner-wrapper .modaal-gallery-control {
	background: rgba(255, 255, 255, 0.8);
}

.modaal-image .modaal-inner-wrapper .modaal-gallery-control:hover::before,
.modaal-image .modaal-inner-wrapper .modaal-gallery-control:hover::after {
	background: #333;
}

}

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

.modaal-image .modaal-inner-wrapper {
	padding-top: 60px;
}

.modaal-image .modaal-inner-wrapper .modaal-close {
	width: 50px;
	height: 50px;
	right: 0;
	top: -50px;
}

.modaal-image .modaal-inner-wrapper .modaal-close::before,
.modaal-image .modaal-inner-wrapper .modaal-close::after {
	height: 30px;
	top: 4px;
}

.modaal-image .modaal-inner-wrapper .modaal-close span {
	font-size: 1rem;
}

.works-detail .works-photolist li {
	margin-top: 4%;
}

}

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

body {
	font-size: 1.2rem;
}

body {
	min-width: inherit;
}

img {
	width: 100%;
}

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

body {
	padding-top: 70px;
}

.inner {
	max-width: none;
	padding-left: 20px;
	padding-right: 20px;
}

#pagetop {
	height: 50px;
	margin-top: 40px;
}

#pagetop.is-fixed a {
	position: static;
}

#pagetop a {
	width: 50px;
	height: 50px;
	margin: 0 auto;
	position: static;
}

#pagetop a svg {
	width: 20px;
}

.under-visual h1 {
	font-size: 2rem;
}

.under-content {
	display: block;
	padding: 40px 0;
}

.under-content__left {
	font-size: 1.2rem;
}

.under-content__right {
	width: 100%;
	margin-top: 20px;
}

.under-content__right .under-title {
	font-size: 2rem;
	line-height: 1.5;
	margin-top: 50px;
}

.under-content__right .under-title:nth-of-type(1) {
	margin-top: 0;
}

.under-content__right .under-text {
	margin-top: 40px;
	font-size: 1.2rem;
}

.under-content__right .under-text a {
	text-decoration: underline;
}

.under-content__right h3 {
	font-size: 1rem;
}

.under-content .overflow.sp-off .overflow-left {
	float: none;
	margin-top: 0;
}

body.is-navsml header > .inner {
	height: 70px;
}

body.is-navsml header > .inner .logo {
	max-width: 134px;
}

header > .inner {
	height: 70px;
	padding-left: 20px;
	padding-right: 10px;
}

header .logo {
	max-width: 134px;
}

header .logo svg {
	width: 100%;
}

footer {
	height: auto;
	padding-top: 20px;
	padding-bottom: 20px;
}

footer .inner {
	-webkit-box-orient: vertical;
	-webkit-box-direction: reverse;
	-webkit-flex-direction: column-reverse;
	-ms-flex-direction: column-reverse;
	flex-direction: column-reverse;
}

footer .footer-nav {
	width: 100%;
}

footer .footer-nav .nav-list {
	display: none;
}

footer .footer-logo {
	width: 100%;
	position: relative;
	text-align: center;
}

footer .footer-logo .svg-logo_vertical_dims {
	width: 80px;
	height: 74px;
	margin: 0 auto;
}

footer .footer-logo .instagram {
	position: absolute;
	right: 0;
	bottom: 0;
	width: 30px;
}

footer .copy {
	margin-top: 20px;
	font-size: 1.2rem;
	text-align: center;
}

.btn-nav {
	width: 50px;
	height: 50px;
	padding-top: 16px;
}

.btn-nav.is-active .line::before {
	-webkit-animation-name: line-top-on_sp;
	animation-name: line-top-on_sp;
}

.btn-nav.is-active .line::after {
	-webkit-animation-name: line-bottom-on_sp;
	animation-name: line-bottom-on_sp;
}

.btn-nav .line {
	width: 24px;
	height: 9px;
	margin: 0 auto;
	position: relative;
}

.btn-nav .line::before,
.btn-nav .line::after {
	height: 1px;
	margin-left: -12px;
}

.btn-nav .line::before {
	-webkit-animation-name: line-top-off_sp;
	animation-name: line-top-off_sp;
}

.btn-nav .line::after {
	-webkit-animation-name: line-bottom-off_sp;
	animation-name: line-bottom-off_sp;
}

.btn-nav .en {
	margin-top: 5px;
	font-size: 1rem;
	-webkit-transform: scale(0.75);
	transform: scale(0.75);
}

#nav {
	top: 70px;
}

#nav.is-show {
	pointer-events: visible;
}

body.is-navsml #nav {
	top: 70px;
}

#nav .nav-inner {
	width: 100%;
	height: calc(100vh - 70px);
	padding: 35px 20px;
}

#nav .nav-list li {
	margin-left: 0;
}

#nav .nav-list li:nth-child(3) {
	margin-left: 0px;
}

#nav .nav-list li > a {
	height: auto;
}

#nav .nav-list li dl {
	padding-left: 20px;
}

#nav .nav-list li dl dd {
	margin-top: 20px;
}

.nav-list {
	display: block;
}

.nav-list li {
	margin-left: 0;
	margin-top: 25px;
}

.nav-list li:first-child {
	margin-top: 0;
}

.nav-list li a {
	font-size: 2rem;
}

.nav-list li a.instagram {
	margin-top: 40px;
}

.btn--more {
	width: 100%;
	height: 40px;
	font-size: 1.25rem;
}

.btn--more .text {
	padding: 0 15px;
}

.btn--more .icon {
	right: 15px;
}

.works-info__category {
	font-size: 1.2rem;
}

.works-info__title {
	margin-top: 10px;
	font-size: 1.5rem;
}

.taglist {
	margin-top: 12px;
}

.taglist__tag {
	min-width: 64px;
	margin-top: 6px;
	margin-right: 5px;
	padding: 3px 4px;
	font-size: 1rem;
}

.works-list__item {
	width: 46.42%;
	margin-top: 15px;
	margin-left: 7.14%;
}

.works-list__item:nth-child(1),
.works-list__item:nth-child(2) {
	margin-top: 0px;
}

.works-list__item:nth-child(3) {
	margin-top: 15px;
}

.works-list__item:nth-child(3n+1) {
	margin-left: 7.14%;
}

.works-list__item:nth-child(odd) {
	margin-left: 0;
}

.works-list__detail {
	margin-top: 15px;
}

.works-list .works-info__category {
	font-size: 1rem;
}

.works-list .works-info__title {
	margin-top: 5px;
	font-size: 1.2rem;
}

.works-list .taglist {
	margin-top: 5px;
}

.works-list__more {
	margin-top: 40px;
}

.news {
	display: block;
	margin-bottom: 40px;
	padding: 40px 0;
}

.news .news-left {
	font-size: 1.2rem;
}

.news .news-list {
	width: 100%;
	margin-top: 20px;
}

.news .news-list li {
	margin-top: 10px;
	font-size: 1.2rem;
	line-height: 2;
}

.news .news-list li:first-child {
	margin-top: 0;
}

.news .news-list__date {
	margin-right: 5px;
}

.pickup .works-list {
	display: block;
}

.pickup .works-list__item {
	width: 100%;
	margin-bottom: 1px;
}

.pickup .works-list__item::before {
	height: 37.5%;
}

.pickup .works-list__item:nth-child(3) {
	margin-top: 0px;
}

.pickup .works-list__detail {
	width: calc(100% - 40px);
	left: 20px;
	bottom: 15px;
}

.pickup .works-info__category {
	font-size: 1.15rem;
}

.pickup .works-info__title {
	margin-top: 6px;
	font-size: 1.45rem;
}

.pickup .taglist {
	margin-top: 2px;
}

.works-detail .works-visual {
	height: 75vw;
}

.works-detail .works-visual figure {
	height: 100%;
}

.works-detail__content {
	margin-bottom: 45px;
	padding: 40px 0 45px;
}

.works-detail .works-photolist {
	margin-top: 40px;
}

.works-detail .works-photolist li {
	width: 100%;
	margin-top: 10px;
}

.works-detail .works-photolist li:first-child {
	margin-top: 0;
}

.works-detail .works-photolist li:nth-child(even) {
	margin-left: 0;
}

.about .about-nav {
	display: none;
}

.about .about-contents .under-content:nth-of-type(1) {
	border-top: none;
}

.about .about-workflow dl dt,
.about .about-workflow dl dd {
	margin-top: 10px;
}

.about .about-workflow dl dt:nth-of-type(1),
.about .about-workflow dl dd:nth-of-type(1) {
	margin-top: 0;
}

.about .about-workflow dl dt::after {
	content: "";
	border-top: 6px solid #ccc;
	border-left: 4px solid transparent;
	border-right: 4px solid transparent;
	top: calc(50% + 15px);
	margin-left: -4px;
}

.about .about-workflow dl dt span {
	width: 60px;
	padding: 4px;
	font-size: 1rem;
}

.about .about-workflow dl dd {
	width: calc(100% - 70px);
}

.about .about-workflow__after {
	margin-top: 15px;
	padding: 8px;
}

.about .about-profile__block {
	margin-top: 40px;
}

.about .about-profile__block:nth-of-type(1) {
	margin-top: 0;
}

.about .about-profile__name {
	margin-top: 10px;
	line-height: 1;
}

.about .about-profile__name .jp {
	font-size: 2rem;
	margin-right: 20px;
}

.about .about-profile__name .en {
	font-size: 1.5rem;
}

.about .about-profile__history {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-top: 10px;
	line-height: 2;
}

.about .about-profile__history dt {
	width: 42px;
}

.about .about-profile__history dd {
	width: calc(100% - 42px);
}

.about .publication-list li {
	width: 46.42%;
	text-align: center;
	margin-top: 20px;
}

.about .publication-list li:nth-child(even) {
	margin-left: 7.14%;
}

.about .publication-list li:nth-child(1),
.about .publication-list li:nth-child(2) {
	margin-top: 0;
}

.about .publication-list__info {
	margin-top: 12px;
	font-size: 1rem;
}

.about .publication-list__title {
	font-size: 1.2rem;
	line-height: 1.5;
}

}

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

#nav .nav-list {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

#nav .nav-list li {
	margin-top: 0;
	margin-left: 30px;
}

#nav .nav-list li:nth-child(3) {
	margin-left: 30px;
}

#nav .nav-list li dl {
	padding-left: 0;
}

#nav .nav-list li a {
	font-size: 1.8rem;
}

#nav .nav-list li a.instagram {
	margin-top: 0;
}

.works-list__item {
	width: 100%;
	margin-top: 30px;
	margin-left: 0;
}

.works-list__item:nth-child(1) {
	margin-top: 0;
}

.works-list__item:nth-child(2) {
	margin-top: 30px;
}

.works-list__item:nth-child(3) {
	margin-top: 30px;
}

.works-list__item:nth-child(3n+1) {
	margin-left: 0;
}

}

@-webkit-keyframes sk-chase {

100% {
	-webkit-transform: rotate(360deg);
	transform: rotate(360deg);
}

}

@keyframes sk-chase {

100% {
	-webkit-transform: rotate(360deg);
	transform: rotate(360deg);
}

}

@-webkit-keyframes sk-chase-dot {

80%,100% {
	-webkit-transform: rotate(360deg);
	transform: rotate(360deg);
}

}

@keyframes sk-chase-dot {

80%,100% {
	-webkit-transform: rotate(360deg);
	transform: rotate(360deg);
}

}

@-webkit-keyframes sk-chase-dot-before {

50% {
	-webkit-transform: scale(0.4);
	transform: scale(0.4);
}

100%,0% {
	-webkit-transform: scale(1);
	transform: scale(1);
}

}

@keyframes sk-chase-dot-before {

50% {
	-webkit-transform: scale(0.4);
	transform: scale(0.4);
}

100%,0% {
	-webkit-transform: scale(1);
	transform: scale(1);
}

}

@-webkit-keyframes line-top-on {

0% {
	top: 0;
}

50% {
	top: 8px;
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
}

100% {
	top: 8px;
	-webkit-transform: rotate(-20deg);
	transform: rotate(-20deg);
}

}

@keyframes line-top-on {

0% {
	top: 0;
}

50% {
	top: 8px;
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
}

100% {
	top: 8px;
	-webkit-transform: rotate(-20deg);
	transform: rotate(-20deg);
}

}

@-webkit-keyframes line-top-off {

0% {
	top: 8px;
	-webkit-transform: rotate(-20deg);
	transform: rotate(-20deg);
}

50% {
	top: 8px;
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
}

100% {
	top: 0;
}

}

@keyframes line-top-off {

0% {
	top: 8px;
	-webkit-transform: rotate(-20deg);
	transform: rotate(-20deg);
}

50% {
	top: 8px;
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
}

100% {
	top: 0;
}

}

@-webkit-keyframes line-bottom-on {

0% {
	bottom: 0;
}

50% {
	bottom: 8px;
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
}

100% {
	bottom: 8px;
	-webkit-transform: rotate(20deg);
	transform: rotate(20deg);
}

}

@keyframes line-bottom-on {

0% {
	bottom: 0;
}

50% {
	bottom: 8px;
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
}

100% {
	bottom: 8px;
	-webkit-transform: rotate(20deg);
	transform: rotate(20deg);
}

}

@-webkit-keyframes line-bottom-off {

0% {
	bottom: 8px;
	-webkit-transform: rotate(20deg);
	transform: rotate(20deg);
}

50% {
	bottom: 8px;
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
}

100% {
	bottom: 0;
}

}

@keyframes line-bottom-off {

0% {
	bottom: 8px;
	-webkit-transform: rotate(20deg);
	transform: rotate(20deg);
}

50% {
	bottom: 8px;
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
}

100% {
	bottom: 0;
}

}

@-webkit-keyframes line-top-on_sp {

0% {
	top: 0;
}

50% {
	top: 4px;
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
}

100% {
	top: 4px;
	-webkit-transform: rotate(-20deg);
	transform: rotate(-20deg);
}

}

@keyframes line-top-on_sp {

0% {
	top: 0;
}

50% {
	top: 4px;
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
}

100% {
	top: 4px;
	-webkit-transform: rotate(-20deg);
	transform: rotate(-20deg);
}

}

@-webkit-keyframes line-top-off_sp {

0% {
	top: 4px;
	-webkit-transform: rotate(-20deg);
	transform: rotate(-20deg);
}

50% {
	top: 4px;
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
}

100% {
	top: 0;
}

}

@keyframes line-top-off_sp {

0% {
	top: 4px;
	-webkit-transform: rotate(-20deg);
	transform: rotate(-20deg);
}

50% {
	top: 4px;
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
}

100% {
	top: 0;
}

}

@-webkit-keyframes line-bottom-on_sp {

0% {
	bottom: 0;
}

50% {
	bottom: 4px;
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
}

100% {
	bottom: 4px;
	-webkit-transform: rotate(20deg);
	transform: rotate(20deg);
}

}

@keyframes line-bottom-on_sp {

0% {
	bottom: 0;
}

50% {
	bottom: 4px;
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
}

100% {
	bottom: 4px;
	-webkit-transform: rotate(20deg);
	transform: rotate(20deg);
}

}

@-webkit-keyframes line-bottom-off_sp {

0% {
	bottom: 4px;
	-webkit-transform: rotate(20deg);
	transform: rotate(20deg);
}

50% {
	bottom: 4px;
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
}

100% {
	bottom: 0;
}

}

@keyframes line-bottom-off_sp {

0% {
	bottom: 4px;
	-webkit-transform: rotate(20deg);
	transform: rotate(20deg);
}

50% {
	bottom: 4px;
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
}

100% {
	bottom: 0;
}

}

@-webkit-keyframes fade-in {

0% {
	display: none;
	opacity: 0;
}

1% {
	display: block;
	opacity: 0;
}

100% {
	display: block;
	opacity: 1;
}

}

@keyframes fade-in {

0% {
	display: none;
	opacity: 0;
}

1% {
	display: block;
	opacity: 0;
}

100% {
	display: block;
	opacity: 1;
}

}

@-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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImZvdW5kYXRpb24vX3Jlc2V0LnNjc3MiLCJzdHlsZS5jc3MiLCJmb3VuZGF0aW9uL19iYXNlLnNjc3MiLCJmb3VuZGF0aW9uL19zZXR0aW5nLnNjc3MiLCJjb21wb3JuZW50L19jb21tb24uc2NzcyIsImZvdW5kYXRpb24vX21peGlucy5zY3NzIiwiY29tcG9ybmVudC9faGVhZGVyLnNjc3MiLCJjb21wb3JuZW50L19mb290ZXIuc2NzcyIsImNvbXBvcm5lbnQvX25hdi5zY3NzIiwiY29tcG9ybmVudC9fYnV0dG9uLnNjc3MiLCJjb21wb3JuZW50L193b3Jrcy5zY3NzIiwiY29tcG9ybmVudC9fbmV3cy5zY3NzIiwicGFnZS9fdG9wLnNjc3MiLCJwYWdlL193b3Jrcy1kZXRhaWwuc2NzcyIsInBhZ2UvX2Fib3V0LnNjc3MiLCJzdHlsZS5zY3NzIiwiX3Nwcml0ZS5zY3NzIiwiZm91bmRhdGlvbi9fYW5pbWF0aW9uLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBS0E7OzBDQ0gwQztBRE8xQzs7Ozs7Ozs7Ozs7OztFQWFFLFNBQVM7RUFDVCxVQUFVO0VBQ1YsU0FBUztFQUNULGFBQWE7RUFDYixlQUFlO0VBQ2Ysd0JBQXdCO0FDTDFCOztBRFFBO0VBQ0UsY0FBYztBQ0xoQjs7QURRQTtFQUNFLGdCQUFnQjtFQUNoQixtQkFBbUI7QUNMckI7O0FEUUE7RUFDRSx5QkFBeUI7RUFDekIsaUJBQWlCO0FDTG5COztBRFFBO0VBQ0UsZ0JBQWdCO0VBQ2hCLG1CQUFtQjtFQUNuQixzQkFBc0I7QUNMeEI7O0FEUUE7RUFDRSxZQUFZO0FDTGQ7O0FET0E7RUFDRSxXQUFXO0VBQ1gsYUFBYTtBQ0pmOztBRE9BO0VBQ0UsWUFBWTtBQ0pkOztBRE9BO0VBQ0UsY0FBYztBQ0poQjs7QUN6REE7OzBDRDZEMEM7QURqQzFDO0VHd0RFLGdEQUFnRDtFQUNoRCxnQkFBZ0I7RUFDaEIsa0JBQWtCO0VEaEZsQixnQkFBZ0I7QUQ2RGxCOztBQzNEQTtFQUNFLFlBQVk7RUFD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RXpCO0VnQnRoRUE7SUFDRSwrQkFBdUI7WUFBdkIsdUJBQXVCO0lBQ3ZCLHVEQUErQztZQUEvQywrQ0FBK0M7RWhCd2hFakQ7QUFDRjs7QWdCMWlFQTtFQUNFO0lBQ0UsOEJBQXNCO1lBQXRCLHNCQUFzQjtJQUN0Qix1REFBK0M7WUFBL0MsK0NBQStDO0VoQndoRWpEO0VnQnRoRUE7SUFDRSw4QkFBc0I7WUFBdEIsc0JBQXNCO0VoQndoRXhCO0VnQnRoRUE7SUFDRSw4QkFBc0I7WUFBdEIsc0JBQXNCO0lBQ3RCLHVEQUErQztZQUEvQywrQ0FBK0M7RWhCd2hFakQ7RWdCdGhFQTtJQUNFLCtCQUF1QjtZQUF2Qix1QkFBdUI7RWhCd2hFekI7RWdCdGhFQTtJQUNFLCtCQUF1QjtZQUF2Qix1QkFBdUI7SUFDdkIsdURBQStDO1lBQS9DLCtDQUErQztFaEJ3aEVqRDtBQUNGIiwiZmlsZSI6InN0eWxlLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwidXRmLThcIjtcblxuLy8gUkVTRVRcbi8vIEBpbXBvcnQgXCJjb21wYXNzL3Jlc2V0XCI7XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiBSZXNldFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5odG1sLCBib2R5LCBkaXYsIHNwYW4sIGFwcGxldCwgb2JqZWN0LCBpZnJhbWUsXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwLCBibG9ja3F1b3RlLCBwcmUsXG5hLCBhYmJyLCBhY3JvbnltLCBhZGRyZXNzLCBiaWcsIGNpdGUsIGNvZGUsXG5kZWwsIGRmbiwgZW0sIGltZywgaW5zLCBrYmQsIHEsIHMsIHNhbXAsXG5zbWFsbCwgc3RyaWtlLCBzdHJvbmcsIHR0LCB2YXIsXG5iLCB1LCBpLCBjZW50ZXIsXG5kbCwgZHQsIGRkLCBvbCwgdWwsIGxpLFxuZmllbGRzZXQsIGZvcm0sIGxhYmVsLCBsZWdlbmQsXG50YWJsZSwgY2FwdGlvbiwgdGJvZHksIHRmb290LCB0aGVhZCwgdHIsIHRoLCB0ZCxcbmFydGljbGUsIGFzaWRlLCBjYW52YXMsIGRldGFpbHMsIGVtYmVkLFxuZmlndXJlLCBmaWdjYXB0aW9uLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLFxubWVudSwgbmF2LCBvdXRwdXQsIHJ1YnksIHNlY3Rpb24sIHN1bW1hcnksXG50aW1lLCBtYXJrLCBhdWRpbywgdmlkZW8ge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgZm9udDogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxMDAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxub2wsIHVsLCBsaSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG59XG5cbmNhcHRpb24sIHRoLCB0ZCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbnEsIGJsb2NrcXVvdGUge1xuICBxdW90ZXM6IG5vbmU7XG59XG5xOmJlZm9yZSwgcTphZnRlciwgYmxvY2txdW90ZTpiZWZvcmUsIGJsb2NrcXVvdGU6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBjb250ZW50OiBub25lO1xufVxuXG5hIGltZyB7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuYXJ0aWNsZSwgYXNpZGUsIGRldGFpbHMsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWFpbiwgbWVudSwgbmF2LCBzZWN0aW9uLCBzdW1tYXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gUmVzZXRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmh0bWwsIGJvZHksIGRpdiwgc3BhbiwgYXBwbGV0LCBvYmplY3QsIGlmcmFtZSxcbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHAsIGJsb2NrcXVvdGUsIHByZSxcbmEsIGFiYnIsIGFjcm9ueW0sIGFkZHJlc3MsIGJpZywgY2l0ZSwgY29kZSxcbmRlbCwgZGZuLCBlbSwgaW1nLCBpbnMsIGtiZCwgcSwgcywgc2FtcCxcbnNtYWxsLCBzdHJpa2UsIHN0cm9uZywgdHQsIHZhcixcbmIsIHUsIGksIGNlbnRlcixcbmRsLCBkdCwgZGQsIG9sLCB1bCwgbGksXG5maWVsZHNldCwgZm9ybSwgbGFiZWwsIGxlZ2VuZCxcbnRhYmxlLCBjYXB0aW9uLCB0Ym9keSwgdGZvb3QsIHRoZWFkLCB0ciwgdGgsIHRkLFxuYXJ0aWNsZSwgYXNpZGUsIGNhbnZhcywgZGV0YWlscywgZW1iZWQsXG5maWd1cmUsIGZpZ2NhcHRpb24sIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsXG5tZW51LCBuYXYsIG91dHB1dCwgcnVieSwgc2VjdGlvbiwgc3VtbWFyeSxcbnRpbWUsIG1hcmssIGF1ZGlvLCB2aWRlbyB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICBmb250OiBpbmhlcml0O1xuICBmb250LXNpemU6IDEwMCU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG5vbCwgdWwsIGxpIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDtcbn1cblxuY2FwdGlvbiwgdGgsIHRkIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxucSwgYmxvY2txdW90ZSB7XG4gIHF1b3Rlczogbm9uZTtcbn1cblxucTpiZWZvcmUsIHE6YWZ0ZXIsIGJsb2NrcXVvdGU6YmVmb3JlLCBibG9ja3F1b3RlOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgY29udGVudDogbm9uZTtcbn1cblxuYSBpbWcge1xuICBib3JkZXI6IG5vbmU7XG59XG5cbmFydGljbGUsIGFzaWRlLCBkZXRhaWxzLCBmaWdjYXB0aW9uLCBmaWd1cmUsIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1haW4sIG1lbnUsIG5hdiwgc2VjdGlvbiwgc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gQmFzZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBkbnAtc2h1ZWktZ290aGljLWtpbi1zdGQsc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXNpemU6IDYyLjUlO1xufVxuXG5odG1sLCBib2R5IHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbmJvZHkge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogIzMzMztcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBmb250LXNpemU6IDEuNnJlbTtcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTtcbn1cblxuYm9keTo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIGJvZHkge1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICB9XG59XG5cbioge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuYSB7XG4gIGNvbG9yOiAjMzMzO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuYS5hY3RpdmUge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY5cHgpIHtcbiAgYm9keS5pcy1wYyBhOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuYTpmb2N1cywgKjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbmJyIHtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbmltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbmlucHV0W3R5cGU9XCJidXR0b25cIl0sIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0sIHNlbGVjdCwgYnV0dG9uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG46Oi1tcy1leHBhbmQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5ib2R5LmlvcyBhIGltZyB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi8qIElFOCssIENocm9tZSAqL1xuaW5wdXQsIGJ1dHRvbiB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi8qIEZpcmVmb3ggKi9cbmlucHV0OjotbW96LWZvY3VzLWlubmVyLCBidXR0b246Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXI6IDA7XG59XG5cbmlucHV0W3R5cGU9XCJidXR0b25cIl0sIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0sIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLCBpbnB1dFt0eXBlPVwiZW1haWxcIl0sIHNlbGVjdCwgYnV0dG9uLCB0ZXh0YXJlYSB7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbmlucHV0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxuaW5wdXQ6LW1zLWlucHV0LXBsYWNlaG9sZGVyLFxuaW5wdXQ6Oi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2FhYTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuLypjbGVhcmZpeCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5jbGVhcmZpeDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uY2xlYXJmaXgge1xuICB6b29tOiAxO1xufVxuXG4uY2wge1xuICBjbGVhcjogYm90aDtcbn1cblxuLmZsIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5mciB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLnBjIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5zcCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5wYy1pbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLnNwLWluIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnBjLXRhYmxlIHtcbiAgZGlzcGxheTogdGFibGU7XG59XG5cbi5zcC10YWJsZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgYm9keSB7XG4gICAgbWluLXdpZHRoOiBpbmhlcml0O1xuICB9XG4gIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgYm9keS5pb3MgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gIGJvZHkuaW9zIHNlbGVjdCxcbiAgYm9keS5pb3MgdGV4dGFyZWEge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxuICAucGMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLnNwIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAucGMtaW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLnNwLWluIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbiAgLnBjLXRhYmxlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5zcC10YWJsZSB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gIH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuIENvbW1vbiBTZXR0aW5nXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5ib2R5IHtcbiAgcGFkZGluZy10b3A6IDIwMHB4O1xufVxuXG5ib2R5LmlzLWJsb2NrIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIGJvZHkge1xuICAgIHBhZGRpbmctdG9wOiA3MHB4O1xuICB9XG59XG5cbmJvZHkgLmNvbnRlbnQtbWFpbiB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbn1cblxuYm9keSAuYm9sZCB7XG4gIGZvbnQtZmFtaWx5OiBkbnAtc2h1ZWktZ290aGljLWtpbi1zdGQsc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLmlubmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTA0MHB4O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuaW5uZXIge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgfVxufVxuXG4jcGFnZXRvcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuI3BhZ2V0b3AuaXMtZml4ZWQgYSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogMTtcbn1cblxuI3BhZ2V0b3AgYSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDBweDtcbiAgaGVpZ2h0OiAxMDBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICB6LWluZGV4OiAxMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNHM7XG59XG5cbiNwYWdldG9wIGEuYWN0aXZlIHtcbiAgb3BhY2l0eTogMC44O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OXB4KSB7XG4gIGJvZHkuaXMtcGMgI3BhZ2V0b3AgYTpob3ZlciB7XG4gICAgb3BhY2l0eTogMC44O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgI3BhZ2V0b3Age1xuICAgIGhlaWdodDogNTBweDtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICB9XG4gICNwYWdldG9wLmlzLWZpeGVkIGEge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gIH1cbiAgI3BhZ2V0b3AgYSB7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gIH1cbiAgI3BhZ2V0b3AgYSBzdmcge1xuICAgIHdpZHRoOiAyMHB4O1xuICB9XG59XG5cbi51bmRlci12aXN1YWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi51bmRlci12aXN1YWwgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi51bmRlci12aXN1YWwgaDEge1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiA0cmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4xZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHotaW5kZXg6IDE7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLnVuZGVyLXZpc3VhbCBoMSB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG59XG5cbi51bmRlci1jb250ZW50IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBsaW5lLWhlaWdodDogMjtcbiAgcGFkZGluZzogODBweCAwO1xufVxuXG4udW5kZXItY29udGVudF9fbGVmdCB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4udW5kZXItY29udGVudF9fcmlnaHQge1xuICB3aWR0aDogNjUlO1xuICBsZXR0ZXItc3BhY2luZzogMC4xZW07XG59XG5cbi51bmRlci1jb250ZW50X19yaWdodCAudW5kZXItdGl0bGUge1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDM3LjVweDtcbiAgbWFyZ2luLXRvcDogODBweDtcbn1cblxuLnVuZGVyLWNvbnRlbnRfX3JpZ2h0IC51bmRlci10aXRsZTpudGgtb2YtdHlwZSgxKSB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi51bmRlci1jb250ZW50X19yaWdodCAudW5kZXItdGV4dCB7XG4gIG1hcmdpbi10b3A6IDgwcHg7XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xufVxuXG4udW5kZXItY29udGVudF9fcmlnaHQgLnVuZGVyLXRleHQgYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4udW5kZXItY29udGVudF9fcmlnaHQgaDMge1xuICBmb250LXNpemU6IDEuNnJlbTtcbiAgZm9udC1mYW1pbHk6IGRucC1zaHVlaS1nb3RoaWMta2luLXN0ZCxzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4udW5kZXItY29udGVudCAub3ZlcmZsb3cge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4udW5kZXItY29udGVudCAub3ZlcmZsb3cgLm92ZXJmbG93LWxlZnQge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLXJpZ2h0OiAxZW07XG59XG5cbi51bmRlci1jb250ZW50IC5vdmVyZmxvdyAub3ZlcmZsb3ctcmlnaHQge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC51bmRlci1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiA0MHB4IDA7XG4gIH1cbiAgLnVuZGVyLWNvbnRlbnRfX2xlZnQge1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICB9XG4gIC51bmRlci1jb250ZW50X19yaWdodCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgfVxuICAudW5kZXItY29udGVudF9fcmlnaHQgLnVuZGVyLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICB9XG4gIC51bmRlci1jb250ZW50X19yaWdodCAudW5kZXItdGl0bGU6bnRoLW9mLXR5cGUoMSkge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbiAgLnVuZGVyLWNvbnRlbnRfX3JpZ2h0IC51bmRlci10ZXh0IHtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICB9XG4gIC51bmRlci1jb250ZW50X19yaWdodCAudW5kZXItdGV4dCBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuICAudW5kZXItY29udGVudF9fcmlnaHQgaDMge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxuICAudW5kZXItY29udGVudCAub3ZlcmZsb3cuc3Atb2ZmIC5vdmVyZmxvdy1sZWZ0IHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiBMb2FkaW5nXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ubG9hZGluZyB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgei1pbmRleDogOTk5OTk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4ubG9hZGluZyAuc2stY2hhc2Uge1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGFuaW1hdGlvbjogc2stY2hhc2UgMi41cyBpbmZpbml0ZSBsaW5lYXIgYm90aDtcbn1cblxuLmxvYWRpbmcgLnNrLWNoYXNlLWRvdCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBhbmltYXRpb246IHNrLWNoYXNlLWRvdCAyLjBzIGluZmluaXRlIGVhc2UtaW4tb3V0IGJvdGg7XG59XG5cbi5sb2FkaW5nIC5zay1jaGFzZS1kb3Q6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMjUlO1xuICBoZWlnaHQ6IDI1JTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMzMztcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgYW5pbWF0aW9uOiBzay1jaGFzZS1kb3QtYmVmb3JlIDIuMHMgaW5maW5pdGUgZWFzZS1pbi1vdXQgYm90aDtcbn1cblxuLmxvYWRpbmcgLnNrLWNoYXNlLWRvdDpudGgtY2hpbGQoMSkge1xuICBhbmltYXRpb24tZGVsYXk6IC0xLjFzO1xufVxuXG4ubG9hZGluZyAuc2stY2hhc2UtZG90Om50aC1jaGlsZCgyKSB7XG4gIGFuaW1hdGlvbi1kZWxheTogLTEuMHM7XG59XG5cbi5sb2FkaW5nIC5zay1jaGFzZS1kb3Q6bnRoLWNoaWxkKDMpIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAtMC45cztcbn1cblxuLmxvYWRpbmcgLnNrLWNoYXNlLWRvdDpudGgtY2hpbGQoNCkge1xuICBhbmltYXRpb24tZGVsYXk6IC0wLjhzO1xufVxuXG4ubG9hZGluZyAuc2stY2hhc2UtZG90Om50aC1jaGlsZCg1KSB7XG4gIGFuaW1hdGlvbi1kZWxheTogLTAuN3M7XG59XG5cbi5sb2FkaW5nIC5zay1jaGFzZS1kb3Q6bnRoLWNoaWxkKDYpIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAtMC42cztcbn1cblxuLmxvYWRpbmcgLnNrLWNoYXNlLWRvdDpudGgtY2hpbGQoMSk6YmVmb3JlIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAtMS4xcztcbn1cblxuLmxvYWRpbmcgLnNrLWNoYXNlLWRvdDpudGgtY2hpbGQoMik6YmVmb3JlIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAtMS4wcztcbn1cblxuLmxvYWRpbmcgLnNrLWNoYXNlLWRvdDpudGgtY2hpbGQoMyk6YmVmb3JlIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAtMC45cztcbn1cblxuLmxvYWRpbmcgLnNrLWNoYXNlLWRvdDpudGgtY2hpbGQoNCk6YmVmb3JlIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAtMC44cztcbn1cblxuLmxvYWRpbmcgLnNrLWNoYXNlLWRvdDpudGgtY2hpbGQoNSk6YmVmb3JlIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAtMC43cztcbn1cblxuLmxvYWRpbmcgLnNrLWNoYXNlLWRvdDpudGgtY2hpbGQoNik6YmVmb3JlIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAtMC42cztcbn1cblxuQGtleWZyYW1lcyBzay1jaGFzZSB7XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzay1jaGFzZS1kb3Qge1xuICA4MCUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzay1jaGFzZS1kb3QtYmVmb3JlIHtcbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNCk7XG4gIH1cbiAgMTAwJSwgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuIEhlYWRlciBTZXR0aW5nXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5oZWFkZXIge1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiA5OTk5O1xuICB0cmFuc2l0aW9uOiBhbGwgLjRzO1xufVxuXG5ib2R5LmlzLW5hdnNtbCBoZWFkZXIgPiAuaW5uZXIge1xuICBoZWlnaHQ6IDEyMHB4O1xufVxuXG5ib2R5LmlzLW5hdnNtbCBoZWFkZXIgLmxvZ28ge1xuICBtYXgtd2lkdGg6IDIwMHB4O1xufVxuXG5ib2R5LmlzLW5hdnNtbCBoZWFkZXIgLmxvZ28gc3ZnIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbmhlYWRlciA+IC5pbm5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgaGVpZ2h0OiAyMDBweDtcbiAgdHJhbnNpdGlvbjogaGVpZ2h0IC40cztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiA5OTk5O1xufVxuXG5oZWFkZXIgLmxvZ28gc3ZnIHtcbiAgZmlsbDogIzMzMztcbiAgdHJhbnNpdGlvbjogd2lkdGggLjRzO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIGJvZHkuaXMtbmF2c21sIGhlYWRlciA+IC5pbm5lciB7XG4gICAgaGVpZ2h0OiA3MHB4O1xuICB9XG4gIGJvZHkuaXMtbmF2c21sIGhlYWRlciA+IC5pbm5lciAubG9nbyB7XG4gICAgbWF4LXdpZHRoOiAxMzRweDtcbiAgfVxuICBoZWFkZXIgPiAuaW5uZXIge1xuICAgIGhlaWdodDogNzBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgfVxuICBoZWFkZXIgLmxvZ28ge1xuICAgIG1heC13aWR0aDogMTM0cHg7XG4gIH1cbiAgaGVhZGVyIC5sb2dvIHN2ZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBsaW5lLXRvcC1vbiB7XG4gIDAlIHtcbiAgICB0b3A6IDA7XG4gIH1cbiAgNTAlIHtcbiAgICB0b3A6IDhweDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0b3A6IDhweDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMjBkZWcpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgbGluZS10b3Atb2ZmIHtcbiAgMCUge1xuICAgIHRvcDogOHB4O1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0yMGRlZyk7XG4gIH1cbiAgNTAlIHtcbiAgICB0b3A6IDhweDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0b3A6IDA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBsaW5lLWJvdHRvbS1vbiB7XG4gIDAlIHtcbiAgICBib3R0b206IDA7XG4gIH1cbiAgNTAlIHtcbiAgICBib3R0b206IDhweDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICBib3R0b206IDhweDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgyMGRlZyk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBsaW5lLWJvdHRvbS1vZmYge1xuICAwJSB7XG4gICAgYm90dG9tOiA4cHg7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMjBkZWcpO1xuICB9XG4gIDUwJSB7XG4gICAgYm90dG9tOiA4cHg7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgYm90dG9tOiAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgbGluZS10b3Atb25fc3Age1xuICAwJSB7XG4gICAgdG9wOiAwO1xuICB9XG4gIDUwJSB7XG4gICAgdG9wOiA0cHg7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdG9wOiA0cHg7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTIwZGVnKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGxpbmUtdG9wLW9mZl9zcCB7XG4gIDAlIHtcbiAgICB0b3A6IDRweDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMjBkZWcpO1xuICB9XG4gIDUwJSB7XG4gICAgdG9wOiA0cHg7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdG9wOiAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgbGluZS1ib3R0b20tb25fc3Age1xuICAwJSB7XG4gICAgYm90dG9tOiAwO1xuICB9XG4gIDUwJSB7XG4gICAgYm90dG9tOiA0cHg7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgYm90dG9tOiA0cHg7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMjBkZWcpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgbGluZS1ib3R0b20tb2ZmX3NwIHtcbiAgMCUge1xuICAgIGJvdHRvbTogNHB4O1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDIwZGVnKTtcbiAgfVxuICA1MCUge1xuICAgIGJvdHRvbTogNHB4O1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIGJvdHRvbTogMDtcbiAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gRm9vdGVyIFNldHRpbmdcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbmZvb3RlciB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDMwMHB4O1xuICBwYWRkaW5nLXRvcDogMTUwcHg7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbn1cblxuZm9vdGVyIC5pbm5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xufVxuXG5mb290ZXIgLmNvcHkge1xuICBtYXJnaW4tdG9wOiA1MHB4O1xuICBmb250LXNpemU6IDEuNHJlbTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICBmb290ZXIge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgfVxuICBmb290ZXIgLmlubmVyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gIH1cbiAgZm9vdGVyIC5mb290ZXItbmF2IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICBmb290ZXIgLmZvb3Rlci1uYXYgLm5hdi1saXN0IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIGZvb3RlciAuZm9vdGVyLWxvZ28ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgZm9vdGVyIC5mb290ZXItbG9nbyAuc3ZnLWxvZ29fdmVydGljYWxfZGltcyB7XG4gICAgd2lkdGg6IDgwcHg7XG4gICAgaGVpZ2h0OiA3NHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG4gIGZvb3RlciAuZm9vdGVyLWxvZ28gLmluc3RhZ3JhbSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMzBweDtcbiAgfVxuICBmb290ZXIgLmNvcHkge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiBOYXYgU2V0dGluZ1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmJ0bi1uYXYge1xuICB3aWR0aDogMTAwcHg7XG4gIGhlaWdodDogMTAwcHg7XG4gIHBhZGRpbmctdG9wOiAzMnB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5idG4tbmF2LmlzLWFjdGl2ZSAubGluZTo6YmVmb3JlIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGxpbmUtdG9wLW9uO1xufVxuXG4uYnRuLW5hdi5pcy1hY3RpdmUgLmxpbmU6OmFmdGVyIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGxpbmUtYm90dG9tLW9uO1xufVxuXG4uYnRuLW5hdiAubGluZSB7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDE4cHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5idG4tbmF2IC5saW5lOjpiZWZvcmUsIC5idG4tbmF2IC5saW5lOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDJweDtcbiAgYmFja2dyb3VuZDogIzMzMztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMjVweDtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwcztcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbn1cblxuYm9keS5pcy1sb2FkZWQgLmJ0bi1uYXYgLmxpbmU6OmJlZm9yZSwgYm9keS5pcy1sb2FkZWQgLmJ0bi1uYXYgLmxpbmU6OmFmdGVyIHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAuNHM7XG59XG5cbi5idG4tbmF2IC5saW5lOjpiZWZvcmUge1xuICB0b3A6IDA7XG4gIGFuaW1hdGlvbi1uYW1lOiBsaW5lLXRvcC1vZmY7XG59XG5cbi5idG4tbmF2IC5saW5lOjphZnRlciB7XG4gIGJvdHRvbTogMDtcbiAgYW5pbWF0aW9uLW5hbWU6IGxpbmUtYm90dG9tLW9mZjtcbn1cblxuLmJ0bi1uYXYgLmVuIHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjFlbTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuYnRuLW5hdiB7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIHBhZGRpbmctdG9wOiAxNnB4O1xuICB9XG4gIC5idG4tbmF2LmlzLWFjdGl2ZSAubGluZTo6YmVmb3JlIHtcbiAgICBhbmltYXRpb24tbmFtZTogbGluZS10b3Atb25fc3A7XG4gIH1cbiAgLmJ0bi1uYXYuaXMtYWN0aXZlIC5saW5lOjphZnRlciB7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGxpbmUtYm90dG9tLW9uX3NwO1xuICB9XG4gIC5idG4tbmF2IC5saW5lIHtcbiAgICB3aWR0aDogMjRweDtcbiAgICBoZWlnaHQ6IDlweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgLmJ0bi1uYXYgLmxpbmU6OmJlZm9yZSwgLmJ0bi1uYXYgLmxpbmU6OmFmdGVyIHtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBtYXJnaW4tbGVmdDogLTEycHg7XG4gIH1cbiAgLmJ0bi1uYXYgLmxpbmU6OmJlZm9yZSB7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGxpbmUtdG9wLW9mZl9zcDtcbiAgfVxuICAuYnRuLW5hdiAubGluZTo6YWZ0ZXIge1xuICAgIGFuaW1hdGlvbi1uYW1lOiBsaW5lLWJvdHRvbS1vZmZfc3A7XG4gIH1cbiAgLmJ0bi1uYXYgLmVuIHtcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC43NSk7XG4gIH1cbn1cblxuI25hdiB7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMjAwcHg7XG4gIHotaW5kZXg6IDg4ODg7XG4gIHRyYW5zaXRpb246IGFsbCAuNHM7XG4gIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gIHBlcnNwZWN0aXZlOiAxMjAwcHg7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4jbmF2LmlzLXNob3cge1xuICBwb2ludGVyLWV2ZW50czogdmlzaWJsZTtcbn1cblxuI25hdi5pcy1zaG93IC5uYXYtaW5uZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xufVxuXG4jbmF2IC5uYXYtaW5uZXIge1xuICBiYWNrZ3JvdW5kOiAjMzMzO1xuICBwYWRkaW5nOiA2MHB4IDA7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogYWxsIC40cztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDElKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wO1xufVxuXG5ib2R5LmlzLW5hdnNtbCAjbmF2IHtcbiAgdG9wOiAxMjBweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAjbmF2IHtcbiAgICB0b3A6IDcwcHg7XG4gIH1cbiAgI25hdi5pcy1zaG93IHtcbiAgICBwb2ludGVyLWV2ZW50czogdmlzaWJsZTtcbiAgfVxuICBib2R5LmlzLW5hdnNtbCAjbmF2IHtcbiAgICB0b3A6IDcwcHg7XG4gIH1cbiAgI25hdiAubmF2LWlubmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSA3MHB4KTtcbiAgICBwYWRkaW5nOiAzNXB4IDIwcHg7XG4gIH1cbn1cblxuI25hdiAubmF2LWxpc3Qge1xuICB3aWR0aDogMTAwJTtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cblxuI25hdiAubmF2LWxpc3QgbGkge1xuICBwYWRkaW5nLXRvcDogNXB4O1xuICBtYXJnaW4tbGVmdDogOCU7XG59XG5cbiNuYXYgLm5hdi1saXN0IGxpOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbiNuYXYgLm5hdi1saXN0IGxpLmlzLWxhc3Qge1xuICBwYWRkaW5nLXRvcDogMDtcbn1cblxuI25hdiAubmF2LWxpc3QgbGk6bnRoLWNoaWxkKDMpIHtcbiAgbWFyZ2luLWxlZnQ6IDIwcHg7XG59XG5cbiNuYXYgLm5hdi1saXN0IGxpID4gYSB7XG4gIGhlaWdodDogMzBweDtcbn1cblxuI25hdiAubmF2LWxpc3QgbGkgYSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4jbmF2IC5uYXYtbGlzdCBsaSBhLmluc3RhZ3JhbSBzdmcge1xuICBmaWxsOiAjZmZmO1xufVxuXG4jbmF2IC5uYXYtbGlzdCBsaSBhIHNwYW46OmFmdGVyIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbn1cblxuI25hdiAubmF2LWxpc3QgbGkgZGwge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xufVxuXG4jbmF2IC5uYXYtbGlzdCBsaSBkbCBkZCB7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG59XG5cbiNuYXYgLm5hdi1saXN0IGxpIGRsIGEge1xuICBmb250LXNpemU6IDEuNnJlbTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAjbmF2IC5uYXYtbGlzdCBsaSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgI25hdiAubmF2LWxpc3QgbGk6bnRoLWNoaWxkKDMpIHtcbiAgICBtYXJnaW4tbGVmdDogMHB4O1xuICB9XG4gICNuYXYgLm5hdi1saXN0IGxpID4gYSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gICNuYXYgLm5hdi1saXN0IGxpIGRsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIH1cbiAgI25hdiAubmF2LWxpc3QgbGkgZGwgZGQge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICNuYXYgLm5hdi1saXN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG4gICNuYXYgLm5hdi1saXN0IGxpIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuICB9XG4gICNuYXYgLm5hdi1saXN0IGxpOm50aC1jaGlsZCgzKSB7XG4gICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gIH1cbiAgI25hdiAubmF2LWxpc3QgbGkgZGwge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuICAjbmF2IC5uYXYtbGlzdCBsaSBhIHtcbiAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgfVxuICAjbmF2IC5uYXYtbGlzdCBsaSBhLmluc3RhZ3JhbSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG4ubmF2LWxpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4ubmF2LWxpc3QgbGkge1xuICBtYXJnaW4tbGVmdDogNTBweDtcbn1cblxuLm5hdi1saXN0IGxpOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5uYXYtbGlzdCBsaSBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xufVxuXG4ubmF2LWxpc3QgbGkgYS5pbnN0YWdyYW0gc3ZnIHtcbiAgZmlsbDogIzMzMztcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAubmF2LWxpc3Qge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5uYXYtbGlzdCBsaSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXRvcDogMjVweDtcbiAgfVxuICAubmF2LWxpc3QgbGk6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbiAgLm5hdi1saXN0IGxpIGEge1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgfVxuICAubmF2LWxpc3QgbGkgYS5pbnN0YWdyYW0ge1xuICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gIH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuIEJ1dHRvbiBTZXR0aW5nXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4uYnRuLS10ZXh0LmFjdGl2ZSBzcGFuOjphZnRlciB7XG4gIG9wYWNpdHk6IDE7XG4gIGJvdHRvbTogLTRweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjlweCkge1xuICBib2R5LmlzLXBjIC5idG4tLXRleHQ6aG92ZXIgc3Bhbjo6YWZ0ZXIge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgYm90dG9tOiAtNHB4O1xuICB9XG59XG5cbi5idG4tLXRleHQuaXMtY29taW5nIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG9wYWNpdHk6IDAuNTtcbn1cblxuLmJ0bi0tdGV4dCBzcGFuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5idG4tLXRleHQgc3Bhbjo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJhY2tncm91bmQ6ICMzMzM7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAtNnB4O1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgLjJzO1xufVxuXG4uYnRuLS1tb3JlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogIzMzMztcbiAgY29sb3I6ICNmZmY7XG4gIHdpZHRoOiAzMDBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4xZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMnM7XG59XG5cbi5idG4tLW1vcmUgLnRleHQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAgMjBweDtcbn1cblxuLmJ0bi0tbW9yZSAuaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDIwcHg7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICBtYXJnaW4tdG9wOiAzcHg7XG4gIHRyYW5zaXRpb246IHJpZ2h0IC4ycztcbn1cblxuLmJ0bi0tbW9yZSAuaWNvbiBzdmcge1xuICBmaWxsOiAjZmZmO1xufVxuXG4uYnRuLS1tb3JlLmFjdGl2ZSB7XG4gIG9wYWNpdHk6IDAuODtcbn1cblxuLmJ0bi0tbW9yZS5hY3RpdmUgLmljb24ge1xuICByaWdodDogMTVweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjlweCkge1xuICBib2R5LmlzLXBjIC5idG4tLW1vcmU6aG92ZXIge1xuICAgIG9wYWNpdHk6IDAuODtcbiAgfVxuICBib2R5LmlzLXBjIC5idG4tLW1vcmU6aG92ZXIgLmljb24ge1xuICAgIHJpZ2h0OiAxNXB4O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmJ0bi0tbW9yZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgfVxuICAuYnRuLS1tb3JlIC50ZXh0IHtcbiAgICBwYWRkaW5nOiAwIDE1cHg7XG4gIH1cbiAgLmJ0bi0tbW9yZSAuaWNvbiB7XG4gICAgcmlnaHQ6IDE1cHg7XG4gIH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuIFdvcmtzIFNldHRpbmdcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi53b3Jrcy1pbmZvX19jYXRlZ29yeSB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xufVxuXG4ud29ya3MtaW5mb19fdGl0bGUge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC53b3Jrcy1pbmZvX19jYXRlZ29yeSB7XG4gICAgZm9udC1zaXplOiAxLjJyZW07XG4gIH1cbiAgLndvcmtzLWluZm9fX3RpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICB9XG59XG5cbi50YWdsaXN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLXRvcDogMjRweDtcbn1cblxuLnRhZ2xpc3RfX3RhZyB7XG4gIG1pbi13aWR0aDogOTBweDtcbiAgbWFyZ2luLXRvcDogNnB4O1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIHBhZGRpbmc6IDRweCA2cHg7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4xZW07XG4gIGJvcmRlcjogc29saWQgMXB4ICM5OTk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAudGFnbGlzdCB7XG4gICAgbWFyZ2luLXRvcDogMTJweDtcbiAgfVxuICAudGFnbGlzdF9fdGFnIHtcbiAgICBtaW4td2lkdGg6IDY0cHg7XG4gICAgbWFyZ2luLXRvcDogNnB4O1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgIHBhZGRpbmc6IDNweCA0cHg7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG59XG5cbi53b3Jrcy1saXN0IHVsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4ud29ya3MtbGlzdF9faXRlbSB7XG4gIHdpZHRoOiAzMCU7XG4gIG1hcmdpbi10b3A6IDgwcHg7XG4gIG1hcmdpbi1sZWZ0OiA1JTtcbn1cblxuLndvcmtzLWxpc3RfX2l0ZW06bnRoLWNoaWxkKDEpLCAud29ya3MtbGlzdF9faXRlbTpudGgtY2hpbGQoMiksIC53b3Jrcy1saXN0X19pdGVtOm50aC1jaGlsZCgzKSB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi53b3Jrcy1saXN0X19pdGVtOm50aC1jaGlsZCgzbisxKSB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4ud29ya3MtbGlzdF9faXRlbSBhLmFjdGl2ZSAud29ya3MtbGlzdF9fcGhvdG8gaW1nIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjAyNSk7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY5cHgpIHtcbiAgYm9keS5pcy1wYyAud29ya3MtbGlzdF9faXRlbSBhOmhvdmVyIC53b3Jrcy1saXN0X19waG90byBpbWcge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wMjUpO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLndvcmtzLWxpc3RfX2l0ZW0ge1xuICAgIHdpZHRoOiA0Ni40MiU7XG4gICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICBtYXJnaW4tbGVmdDogNy4xNCU7XG4gIH1cbiAgLndvcmtzLWxpc3RfX2l0ZW06bnRoLWNoaWxkKDEpLCAud29ya3MtbGlzdF9faXRlbTpudGgtY2hpbGQoMikge1xuICAgIG1hcmdpbi10b3A6IDBweDtcbiAgfVxuICAud29ya3MtbGlzdF9faXRlbTpudGgtY2hpbGQoMykge1xuICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gIH1cbiAgLndvcmtzLWxpc3RfX2l0ZW06bnRoLWNoaWxkKDNuKzEpIHtcbiAgICBtYXJnaW4tbGVmdDogNy4xNCU7XG4gIH1cbiAgLndvcmtzLWxpc3RfX2l0ZW06bnRoLWNoaWxkKG9kZCkge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAud29ya3MtbGlzdF9faXRlbSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAud29ya3MtbGlzdF9faXRlbTpudGgtY2hpbGQoMSkge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbiAgLndvcmtzLWxpc3RfX2l0ZW06bnRoLWNoaWxkKDIpIHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICB9XG4gIC53b3Jrcy1saXN0X19pdGVtOm50aC1jaGlsZCgzKSB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgfVxuICAud29ya3MtbGlzdF9faXRlbTpudGgtY2hpbGQoM24rMSkge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cbi53b3Jrcy1saXN0X19waG90byB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi53b3Jrcy1saXN0X19waG90byBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC40cztcbn1cblxuLndvcmtzLWxpc3RfX2RldGFpbCB7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLndvcmtzLWxpc3RfX2RldGFpbCB7XG4gICAgbWFyZ2luLXRvcDogMTVweDtcbiAgfVxufVxuXG4ud29ya3MtbGlzdCAud29ya3MtaW5mb19fY2F0ZWdvcnkge1xuICBmb250LXNpemU6IDEuNHJlbTtcbn1cblxuLndvcmtzLWxpc3QgLndvcmtzLWluZm9fX3RpdGxlIHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgZm9udC1zaXplOiAxLjhyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLndvcmtzLWxpc3QgLndvcmtzLWluZm9fX2NhdGVnb3J5IHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cbiAgLndvcmtzLWxpc3QgLndvcmtzLWluZm9fX3RpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgZm9udC1zaXplOiAxLjJyZW07XG4gIH1cbn1cblxuLndvcmtzLWxpc3QgLnRhZ2xpc3Qge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC53b3Jrcy1saXN0IC50YWdsaXN0IHtcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gIH1cbn1cblxuLndvcmtzLWxpc3RfX21vcmUge1xuICBtYXJnaW4tdG9wOiA1MHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC53b3Jrcy1saXN0X19tb3JlIHtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiBuZXdzIFNldHRpbmdcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5uZXdzIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBtYXJnaW4tYm90dG9tOiA4MHB4O1xuICBwYWRkaW5nOiA4MHB4IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMzMzO1xufVxuXG4ubmV3cyAubmV3cy1sZWZ0IHtcbiAgZm9udC1zaXplOiAycmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4xZW07XG59XG5cbi5uZXdzIC5uZXdzLWxpc3Qge1xuICB3aWR0aDogNjUlO1xufVxuXG4ubmV3cyAubmV3cy1saXN0IGxpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGxldHRlci1zcGFjaW5nOiAwLjFlbTtcbn1cblxuLm5ld3MgLm5ld3MtbGlzdCBsaTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5uZXdzIC5uZXdzLWxpc3RfX2RhdGUge1xuICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG59XG5cbi5uZXdzIC5uZXdzLWxpc3RfX3RleHQge1xuICBwYWRkaW5nLXRvcDogMC4xZW07XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLm5ld3Mge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgcGFkZGluZzogNDBweCAwO1xuICB9XG4gIC5uZXdzIC5uZXdzLWxlZnQge1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICB9XG4gIC5uZXdzIC5uZXdzLWxpc3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gIH1cbiAgLm5ld3MgLm5ld3MtbGlzdCBsaSB7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICBsaW5lLWhlaWdodDogMjtcbiAgfVxuICAubmV3cyAubmV3cy1saXN0IGxpOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG4gIC5uZXdzIC5uZXdzLWxpc3RfX2RhdGUge1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICB9XG59XG5cbi5waWNrdXAge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLnBpY2t1cCAud29ya3MtbGlzdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuXG4ucGlja3VwIC53b3Jrcy1saXN0X19pdGVtIHtcbiAgd2lkdGg6IGNhbGMoNTAlIC0gMXB4KTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDJweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ucGlja3VwIC53b3Jrcy1saXN0X19pdGVtOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAyMy4zMzMzMyU7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChyZ2JhKDAsIDAsIDAsIDApLCBibGFjayk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICB6LWluZGV4OiAxO1xufVxuXG4ucGlja3VwIC53b3Jrcy1saXN0X19pdGVtOm50aC1jaGlsZCgxKSwgLnBpY2t1cCAud29ya3MtbGlzdF9faXRlbTpudGgtY2hpbGQoMikge1xuICBtYXJnaW4tdG9wOiAwcHg7XG59XG5cbi5waWNrdXAgLndvcmtzLWxpc3RfX2l0ZW06bnRoLWNoaWxkKDNuKzEpIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5waWNrdXAgLndvcmtzLWxpc3RfX2RldGFpbCB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxMDBweCk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTBweDtcbiAgYm90dG9tOiAzMnB4O1xuICB6LWluZGV4OiAyO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5waWNrdXAgLndvcmtzLWxpc3Qge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5waWNrdXAgLndvcmtzLWxpc3RfX2l0ZW0ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDFweDtcbiAgfVxuICAucGlja3VwIC53b3Jrcy1saXN0X19pdGVtOjpiZWZvcmUge1xuICAgIGhlaWdodDogMzcuNSU7XG4gIH1cbiAgLnBpY2t1cCAud29ya3MtbGlzdF9faXRlbTpudGgtY2hpbGQoMykge1xuICAgIG1hcmdpbi10b3A6IDBweDtcbiAgfVxuICAucGlja3VwIC53b3Jrcy1saXN0X19kZXRhaWwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KTtcbiAgICBsZWZ0OiAyMHB4O1xuICAgIGJvdHRvbTogMTVweDtcbiAgfVxufVxuXG4ucGlja3VwIC53b3Jrcy1pbmZvIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5waWNrdXAgLndvcmtzLWluZm9fX2NhdGVnb3J5IHtcbiAgZm9udC1zaXplOiAxLjRyZW07XG59XG5cbi5waWNrdXAgLndvcmtzLWluZm9fX3RpdGxlIHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgZm9udC1zaXplOiAxLjhyZW07XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLnBpY2t1cCAud29ya3MtaW5mb19fY2F0ZWdvcnkge1xuICAgIGZvbnQtc2l6ZTogMS4xNXJlbTtcbiAgfVxuICAucGlja3VwIC53b3Jrcy1pbmZvX190aXRsZSB7XG4gICAgbWFyZ2luLXRvcDogNnB4O1xuICAgIGZvbnQtc2l6ZTogMS40NXJlbTtcbiAgfVxufVxuXG4ucGlja3VwIC50YWdsaXN0IHtcbiAgbWFyZ2luLXRvcDogMTZweDtcbn1cblxuLnBpY2t1cCAudGFnbGlzdF9fdGFnIHtcbiAgYm9yZGVyOiBzb2xpZCAxcHggIzk5OTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAucGlja3VwIC50YWdsaXN0IHtcbiAgICBtYXJnaW4tdG9wOiAycHg7XG4gIH1cbn1cblxuLm1vZGFhbC13cmFwcGVyIHtcbiAgei1pbmRleDogMTAwMDA7XG59XG5cbi5tb2RhYWwtd3JhcHBlciAubW9kYWFsLWNvbnRhaW5lciB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi5tb2RhYWwtaW1hZ2UgLm1vZGFhbC1pbm5lci13cmFwcGVyIHtcbiAgcGFkZGluZy10b3A6IDEwMHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDExNDBweCkge1xuICAubW9kYWFsLWltYWdlIC5tb2RhYWwtaW5uZXItd3JhcHBlciAubW9kYWFsLWdhbGxlcnktY29udHJvbCB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICB9XG4gIC5tb2RhYWwtaW1hZ2UgLm1vZGFhbC1pbm5lci13cmFwcGVyIC5tb2RhYWwtZ2FsbGVyeS1jb250cm9sOmhvdmVyOjpiZWZvcmUsIC5tb2RhYWwtaW1hZ2UgLm1vZGFhbC1pbm5lci13cmFwcGVyIC5tb2RhYWwtZ2FsbGVyeS1jb250cm9sOmhvdmVyOjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogIzMzMztcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMDBweCkge1xuICAubW9kYWFsLWltYWdlIC5tb2RhYWwtaW5uZXItd3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IDYwcHg7XG4gIH1cbiAgLm1vZGFhbC1pbWFnZSAubW9kYWFsLWlubmVyLXdyYXBwZXIgLm1vZGFhbC1jbG9zZSB7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogLTUwcHg7XG4gIH1cbiAgLm1vZGFhbC1pbWFnZSAubW9kYWFsLWlubmVyLXdyYXBwZXIgLm1vZGFhbC1jbG9zZTo6YmVmb3JlLCAubW9kYWFsLWltYWdlIC5tb2RhYWwtaW5uZXItd3JhcHBlciAubW9kYWFsLWNsb3NlOjphZnRlciB7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIHRvcDogNHB4O1xuICB9XG4gIC5tb2RhYWwtaW1hZ2UgLm1vZGFhbC1pbm5lci13cmFwcGVyIC5tb2RhYWwtY2xvc2Ugc3BhbiB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG59XG5cbi5tb2RhYWwtb3ZlcmxheSB7XG4gIHotaW5kZXg6IDk5OTk7XG59XG5cbi5tb2RhYWwtZ2FsbGVyeS1jb250cm9sOjpiZWZvcmUsIC5tb2RhYWwtZ2FsbGVyeS1jb250cm9sOjphZnRlciB7XG4gIGJhY2tncm91bmQ6ICMzMzM7XG59XG5cbi5tb2RhYWwtY2xvc2Uge1xuICB3aWR0aDogMTAwcHg7XG4gIGhlaWdodDogMTAwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IC0xMDBweDtcbiAgdG9wOiAtMTAwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi5tb2RhYWwtd3JhcHBlciAubW9kYWFsLWNsb3NlIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbn1cblxuLm1vZGFhbC1jbG9zZTo6YmVmb3JlLCAubW9kYWFsLWNsb3NlOjphZnRlciB7XG4gIGJhY2tncm91bmQ6ICMzMzM7XG4gIGxlZnQ6IDUwJTtcbiAgd2lkdGg6IDJweDtcbiAgaGVpZ2h0OiA1MHB4O1xufVxuXG4ubW9kYWFsLWNsb3NlOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNjVkZWcpO1xufVxuXG4ubW9kYWFsLWNsb3NlOjphZnRlciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDY1ZGVnKTtcbn1cblxuLm1vZGFhbC1jbG9zZTpob3Zlcjo6YmVmb3JlLCAubW9kYWFsLWNsb3NlOmhvdmVyOjphZnRlciB7XG4gIGJhY2tncm91bmQ6ICMzMzM7XG59XG5cbi5tb2RhYWwtY2xvc2Ugc3BhbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMzMzO1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xuICBjbGlwOiBhdXRvO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIG1hcmdpbi1sZWZ0OiAwLjA1ZW07XG4gIG1hcmdpbi10b3A6IDVweDtcbn1cblxuLm1vZGFhbC1nYWxsZXJ5LWNvbnRyb2wge1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi5tb2RhYWwtZ2FsbGVyeS1jb250cm9sOmZvY3VzLCAubW9kYWFsLWdhbGxlcnktY29udHJvbDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbn1cblxuLm1vZGFhbC1nYWxsZXJ5LXByZXYge1xuICB3aWR0aDogNTBweDtcbn1cblxuLm1vZGFhbC1nYWxsZXJ5LXByZXYtaW5uZXIge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi5tb2RhYWwtZ2FsbGVyeS1uZXh0LWlubmVyIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSArIDUwcHgpO1xuICBsZWZ0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLm1vZGFhbC1nYWxsZXJ5LW5leHQtaW5uZXI6OmJlZm9yZSwgLm1vZGFhbC1nYWxsZXJ5LW5leHQtaW5uZXI6OmFmdGVyIHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDIwcHg7XG59XG5cbi5tb2RhYWwtZ2FsbGVyeS1jb250cm9sOjpiZWZvcmUsIC5tb2RhYWwtZ2FsbGVyeS1jb250cm9sOjphZnRlciB7XG4gIHRvcDogNTAlO1xufVxuXG4ud29ya3MtZGV0YWlsLm1vYmlsZSAud29ya3MtcGhvdG9saXN0IGxpIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi53b3Jrcy1kZXRhaWwubW9iaWxlIC53b3Jrcy1waG90b2xpc3QgbGkgYSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4ud29ya3MtZGV0YWlsIC53b3Jrcy12aXN1YWwge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA5MDBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ud29ya3MtZGV0YWlsIC53b3Jrcy12aXN1YWwgZmlndXJlIHtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA5MDBweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAud29ya3MtZGV0YWlsIC53b3Jrcy12aXN1YWwge1xuICAgIGhlaWdodDogNzV2dztcbiAgfVxuICAud29ya3MtZGV0YWlsIC53b3Jrcy12aXN1YWwgZmlndXJlIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuLndvcmtzLWRldGFpbF9fY29udGVudCB7XG4gIG1hcmdpbi1ib3R0b206IDEwMHB4O1xuICBwYWRkaW5nOiA4MHB4IDAgMTAwcHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMzMzO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC53b3Jrcy1kZXRhaWxfX2NvbnRlbnQge1xuICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7XG4gICAgcGFkZGluZzogNDBweCAwIDQ1cHg7XG4gIH1cbn1cblxuLndvcmtzLWRldGFpbCAud29ya3MtcGhvdG9saXN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tdG9wOiA2MHB4O1xufVxuXG4ud29ya3MtZGV0YWlsIC53b3Jrcy1waG90b2xpc3QgbGkge1xuICB3aWR0aDogNDglO1xuICBtYXJnaW4tdG9wOiA0MHB4O1xufVxuXG4ud29ya3MtZGV0YWlsIC53b3Jrcy1waG90b2xpc3QgbGk6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgbWFyZ2luLWxlZnQ6IDQlO1xufVxuXG4ud29ya3MtZGV0YWlsIC53b3Jrcy1waG90b2xpc3QgbGkgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAwMHB4KSB7XG4gIC53b3Jrcy1kZXRhaWwgLndvcmtzLXBob3RvbGlzdCBsaSB7XG4gICAgbWFyZ2luLXRvcDogNCU7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAud29ya3MtZGV0YWlsIC53b3Jrcy1waG90b2xpc3Qge1xuICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gIH1cbiAgLndvcmtzLWRldGFpbCAud29ya3MtcGhvdG9saXN0IGxpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICB9XG4gIC53b3Jrcy1kZXRhaWwgLndvcmtzLXBob3RvbGlzdCBsaTpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuICAud29ya3MtZGV0YWlsIC53b3Jrcy1waG90b2xpc3QgbGk6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG4uYWJvdXQgLmFib3V0LW5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiA4MHB4IDA7XG59XG5cbi5hYm91dCAuYWJvdXQtbmF2IGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIDIwcHg7XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4xZW07XG59XG5cbi5hYm91dCAuYWJvdXQtbmF2IGEgc3BhbiB7XG4gIHBhZGRpbmctbGVmdDogMzBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uYWJvdXQgLmFib3V0LW5hdiBhIHNwYW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgd2lkdGg6IDEwcHg7XG4gIGhlaWdodDogMTBweDtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjMzMzO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzMzMztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IGNhbGMoNTAlIC0gN3B4KTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5hYm91dCAuYWJvdXQtbmF2IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5hYm91dCAuYWJvdXQtY29udGVudHMgLnVuZGVyLWNvbnRlbnQge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzMzMztcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuYWJvdXQgLmFib3V0LWNvbnRlbnRzIC51bmRlci1jb250ZW50Om50aC1vZi10eXBlKDEpIHtcbiAgICBib3JkZXItdG9wOiBub25lO1xuICB9XG59XG5cbi5hYm91dCAuYWJvdXQtd29ya2Zsb3cgZGwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbGluZS1oZWlnaHQ6IDI7XG59XG5cbi5hYm91dCAuYWJvdXQtd29ya2Zsb3cgZGwgZHQsIC5hYm91dCAuYWJvdXQtd29ya2Zsb3cgZGwgZGQge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xufVxuXG4uYWJvdXQgLmFib3V0LXdvcmtmbG93IGRsIGR0Om50aC1vZi10eXBlKDEpLCAuYWJvdXQgLmFib3V0LXdvcmtmbG93IGRsIGRkOm50aC1vZi10eXBlKDEpIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLmFib3V0IC5hYm91dC13b3JrZmxvdyBkbCBkdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmFib3V0IC5hYm91dC13b3JrZmxvdyBkbCBkdDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItdG9wOiA4cHggc29saWQgI2NjYztcbiAgYm9yZGVyLWxlZnQ6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiA2cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0b3A6IGNhbGMoNTAlICsgMjJweCk7XG4gIG1hcmdpbi1sZWZ0OiAtNnB4O1xufVxuXG4uYWJvdXQgLmFib3V0LXdvcmtmbG93IGRsIGR0IHNwYW4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6ICM4MDgwODA7XG4gIGNvbG9yOiAjZmZmO1xuICB3aWR0aDogMTAwcHg7XG4gIHBhZGRpbmc6IDRweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xufVxuXG4uYWJvdXQgLmFib3V0LXdvcmtmbG93IGRsIGRkIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDEyMHB4KTtcbn1cblxuLmFib3V0IC5hYm91dC13b3JrZmxvd19fYWZ0ZXIge1xuICBtYXJnaW4tdG9wOiAyNHB4O1xuICBib3JkZXI6IHNvbGlkIDFweCAjOTk5O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDRweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmFib3V0IC5hYm91dC13b3JrZmxvdyBkbCBkdCwgLmFib3V0IC5hYm91dC13b3JrZmxvdyBkbCBkZCB7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgfVxuICAuYWJvdXQgLmFib3V0LXdvcmtmbG93IGRsIGR0Om50aC1vZi10eXBlKDEpLCAuYWJvdXQgLmFib3V0LXdvcmtmbG93IGRsIGRkOm50aC1vZi10eXBlKDEpIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG4gIC5hYm91dCAuYWJvdXQtd29ya2Zsb3cgZGwgZHQ6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci10b3A6IDZweCBzb2xpZCAjY2NjO1xuICAgIGJvcmRlci1sZWZ0OiA0cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0OiA0cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgdG9wOiBjYWxjKDUwJSArIDE1cHgpO1xuICAgIG1hcmdpbi1sZWZ0OiAtNHB4O1xuICB9XG4gIC5hYm91dCAuYWJvdXQtd29ya2Zsb3cgZGwgZHQgc3BhbiB7XG4gICAgd2lkdGg6IDYwcHg7XG4gICAgcGFkZGluZzogNHB4O1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxuICAuYWJvdXQgLmFib3V0LXdvcmtmbG93IGRsIGRkIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gNzBweCk7XG4gIH1cbiAgLmFib3V0IC5hYm91dC13b3JrZmxvd19fYWZ0ZXIge1xuICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgcGFkZGluZzogOHB4O1xuICB9XG59XG5cbi5hYm91dCAuYWJvdXQtcHJvZmlsZV9fYmxvY2sge1xuICBtYXJnaW4tdG9wOiA4MHB4O1xufVxuXG4uYWJvdXQgLmFib3V0LXByb2ZpbGVfX2Jsb2NrOm50aC1vZi10eXBlKDEpIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLmFib3V0IC5hYm91dC1wcm9maWxlX19uYW1lIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMTVweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5hYm91dCAuYWJvdXQtcHJvZmlsZV9fbmFtZSAuanAge1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xufVxuXG4uYWJvdXQgLmFib3V0LXByb2ZpbGVfX25hbWUgLmVuIHtcbiAgZm9udC1zaXplOiAycmVtO1xufVxuXG4uYWJvdXQgLmFib3V0LXByb2ZpbGVfX2hpc3Rvcnkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG4gIGxpbmUtaGVpZ2h0OiA0MHB4O1xufVxuXG4uYWJvdXQgLmFib3V0LXByb2ZpbGVfX2hpc3RvcnkgZHQge1xuICB3aWR0aDogNjBweDtcbn1cblxuLmFib3V0IC5hYm91dC1wcm9maWxlX19oaXN0b3J5IGRkIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDYwcHgpO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5hYm91dCAuYWJvdXQtcHJvZmlsZV9fYmxvY2sge1xuICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gIH1cbiAgLmFib3V0IC5hYm91dC1wcm9maWxlX19ibG9jazpudGgtb2YtdHlwZSgxKSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuICAuYWJvdXQgLmFib3V0LXByb2ZpbGVfX25hbWUge1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cbiAgLmFib3V0IC5hYm91dC1wcm9maWxlX19uYW1lIC5qcCB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgfVxuICAuYWJvdXQgLmFib3V0LXByb2ZpbGVfX25hbWUgLmVuIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgfVxuICAuYWJvdXQgLmFib3V0LXByb2ZpbGVfX2hpc3Rvcnkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDI7XG4gIH1cbiAgLmFib3V0IC5hYm91dC1wcm9maWxlX19oaXN0b3J5IGR0IHtcbiAgICB3aWR0aDogNDJweDtcbiAgfVxuICAuYWJvdXQgLmFib3V0LXByb2ZpbGVfX2hpc3RvcnkgZGQge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0MnB4KTtcbiAgfVxufVxuXG4uYWJvdXQgLnB1YmxpY2F0aW9uLWxpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbi5hYm91dCAucHVibGljYXRpb24tbGlzdCBsaSB7XG4gIHdpZHRoOiA0Ni4xNSU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogNTBweDtcbn1cblxuLmFib3V0IC5wdWJsaWNhdGlvbi1saXN0IGxpOm50aC1jaGlsZChldmVuKSB7XG4gIG1hcmdpbi1sZWZ0OiA3LjY5JTtcbn1cblxuLmFib3V0IC5wdWJsaWNhdGlvbi1saXN0IGxpOm50aC1jaGlsZCgxKSwgLmFib3V0IC5wdWJsaWNhdGlvbi1saXN0IGxpOm50aC1jaGlsZCgyKSB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5hYm91dCAucHVibGljYXRpb24tbGlzdF9fcGhvdG8gaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5hYm91dCAucHVibGljYXRpb24tbGlzdF9faW5mbyB7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4uYWJvdXQgLnB1YmxpY2F0aW9uLWxpc3RfX3RpdGxlIHtcbiAgZm9udC1zaXplOiAxLjhyZW07XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5hYm91dCAucHVibGljYXRpb24tbGlzdCBsaSB7XG4gICAgd2lkdGg6IDQ2LjQyJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgfVxuICAuYWJvdXQgLnB1YmxpY2F0aW9uLWxpc3QgbGk6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICBtYXJnaW4tbGVmdDogNy4xNCU7XG4gIH1cbiAgLmFib3V0IC5wdWJsaWNhdGlvbi1saXN0IGxpOm50aC1jaGlsZCgxKSwgLmFib3V0IC5wdWJsaWNhdGlvbi1saXN0IGxpOm50aC1jaGlsZCgyKSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuICAuYWJvdXQgLnB1YmxpY2F0aW9uLWxpc3RfX2luZm8ge1xuICAgIG1hcmdpbi10b3A6IDEycHg7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG4gIC5hYm91dCAucHVibGljYXRpb24tbGlzdF9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIH1cbn1cblxuLyogLS0tLS0tLS0tLSBTcHJpdGUgU1ZHIFNUQVJUIC0tLS0tLS0tLS0gKi9cbi5zdmctaWNvbl9hcnJvdywgLnN2Zy1pY29uX2luc3RhZ3JhbSwgLnN2Zy1sb2dvLCAuc3ZnLWxvZ29fdmVydGljYWwsIC5zdmctcGFnZXRvcCB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9zcHJpdGUtYmcuc3ZnXCIpIG5vLXJlcGVhdDtcbn1cblxuLnN2Zy1pY29uX2Fycm93IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNjguMzU0NDMwMzc5NzQ2ODMlIDM3LjUlO1xufVxuXG4uc3ZnLWljb25fYXJyb3dfZGltcyB7XG4gIHdpZHRoOiAzMXB4O1xuICBoZWlnaHQ6IDdweDtcbn1cblxuLnN2Zy1pY29uX2luc3RhZ3JhbSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwLjQyMDE2ODA2NzIyNjg5JSA2My41MDM2NDk2MzUwMzY0OTYlO1xufVxuXG4uc3ZnLWljb25faW5zdGFncmFtX2RpbXMge1xuICB3aWR0aDogMzBweDtcbiAgaGVpZ2h0OiAzMHB4O1xufVxuXG4uc3ZnLWxvZ28ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG59XG5cbi5zdmctbG9nb19kaW1zIHtcbiAgd2lkdGg6IDI2Ny40NDRweDtcbiAgaGVpZ2h0OiA2MHB4O1xufVxuXG4uc3ZnLWxvZ29fdmVydGljYWwge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDk5LjUzMzg0OTgwMzQyMDY0JTtcbn1cblxuLnN2Zy1sb2dvX3ZlcnRpY2FsX2RpbXMge1xuICB3aWR0aDogMTIwcHg7XG4gIGhlaWdodDogMTA2LjcxOXB4O1xufVxuXG4uc3ZnLXBhZ2V0b3Age1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1My4wOTczNDUxMzI3NDMzNjQlIDQyLjg1NzE0Mjg1NzE0Mjg1NCU7XG59XG5cbi5zdmctcGFnZXRvcF9kaW1zIHtcbiAgd2lkdGg6IDQycHg7XG4gIGhlaWdodDogMjdweDtcbn1cblxuLyogLS0tLS0tLS0tLSBTcHJpdGUgU1ZHIEVORCAtLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gQW5pbWF0aW9uXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5Aa2V5ZnJhbWVzIGZhZGUtaW4ge1xuICAwJSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDElIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBNb3ZlRG93biB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbiAgNDkuOSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIE1vdmVEb3duSW5maSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDc0LjklIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICA3NSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBNb3ZlVXAge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG4gIDQ5LjklIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBNb3ZlUmlnaHQge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG4gIDQ5LjklIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBNb3ZlTGVmdCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbiAgNDkuOSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJldmVhbCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKSBza2V3KC0zN2RlZykgc2NhbGVYKDApO1xuICB9XG4gIDAuMDAwMSUge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XG4gIH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKSBza2V3KC0zN2RlZykgc2NhbGVYKDEpO1xuICB9XG4gIDUwLjAwMDElIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodDtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCkgc2tldygtMzdkZWcpIHNjYWxlWCgwKTtcbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJ1dGYtOFwiO1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gQmFzZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuaHRtbCB7XG4gIC8vIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgQGluY2x1ZGUgc2h1ZWlMO1xuICBmb250LXNpemU6IDYyLjUlO1xufVxuaHRtbCwgYm9keSB7XG4gIGhlaWdodDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuYm9keXtcbiAgYmFja2dyb3VuZDogJGMtd2hpdGU7XG4gIGNvbG9yOiAkYy1ibGFjaztcbiAgd2lkdGg6IDEwMCU7O1xuICAvLyBtaW4td2lkdGg6ICRwYy13aWR0aDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1wYztcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgbGluZS1oZWlnaHQ6ICRiYXNlLWxpbmUtaGVpZ2h0O1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7IC8vIElFXG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHsgLy8gV2luIENocm9tZVxuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnJlYWtwb2ludCkge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zcDtcbiAgfVxufVxuKiB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuYSB7XG4gIGNvbG9yOiAkYy1ibGFjaztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIEBpbmNsdWRlIGhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cbmE6Zm9jdXMsICo6Zm9jdXMgeyBvdXRsaW5lOm5vbmU7IH1cbmJyIHtsaW5lLWhlaWdodDogMTt9XG5pbWcge3ZlcnRpY2FsLWFsaWduOiB0b3A7fVxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxpbnB1dFt0eXBlPVwic3VibWl0XCJdLCBzZWxlY3QsYnV0dG9uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuOjotbXMtZXhwYW5kIHsgZGlzcGxheTogbm9uZTt9XG5ib2R5LmlvcyBhIHtcbiAgaW1nIHtvcGFjaXR5OiAxO31cbn1cbi8qIElFOCssIENocm9tZSAqL1xuaW5wdXQsIGJ1dHRvbiB7XG4gIG91dGxpbmU6IDA7XG59XG4vKiBGaXJlZm94ICovXG5pbnB1dDo6LW1vei1mb2N1cy1pbm5lciwgYnV0dG9uOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBzbWFydHBob25lIGlucHV0IHJhZGl1cyByaXNldFxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxpbnB1dFt0eXBlPVwic3VibWl0XCJdLGlucHV0W3R5cGU9XCJ0ZXh0XCJdLGlucHV0W3R5cGU9XCJlbWFpbFwiXSwgc2VsZWN0LGJ1dHRvbix0ZXh0YXJlYSB7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5pbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcbmlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlcixcbmlucHV0OjotbW96LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNhYWE7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbi8qY2xlYXJmaXggLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uY2xlYXJmaXg6YWZ0ZXIge2NvbnRlbnQ6IFwiIFwiOyBkaXNwbGF5OiBibG9jazsgaGVpZ2h0OiAwOyB2aXNpYmlsaXR5OiBoaWRkZW47IGNsZWFyOiBib3RoO31cbi5jbGVhcmZpeCB7em9vbToxO31cblxuLmNsIHtjbGVhcjogYm90aDt9XG4uZmwge2Zsb2F0OiBsZWZ0O31cbi5mciB7ZmxvYXQ6IHJpZ2h0O31cblxuLnBjeyBkaXNwbGF5OiBibG9jazt9XG4uc3B7IGRpc3BsYXk6IG5vbmU7fVxuLnBjLWlueyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7fVxuLnNwLWlueyBkaXNwbGF5OiBub25lO31cbi5wYy10YWJsZXsgZGlzcGxheTogdGFibGU7fVxuLnNwLXRhYmxleyBkaXNwbGF5OiBub25lO31cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnJlYWtwb2ludCkge1xuXG4gIGJvZHkge1xuICAgIG1pbi13aWR0aDogaW5oZXJpdDtcbiAgfVxuICBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLy8gaVBob25lIOOCv+ODg+ODl+aZguaLoeWkp+mYsuatolxuICBib2R5LmlvcyBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgYm9keS5pb3Mgc2VsZWN0LFxuICBib2R5LmlvcyB0ZXh0YXJlYSB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cblxuICAucGN7ZGlzcGxheTogbm9uZTt9XG4gIC5zcHtkaXNwbGF5OiBibG9jazt9XG4gIC5wYy1pbntkaXNwbGF5OiBub25lO31cbiAgLnNwLWlue2Rpc3BsYXk6IGlubGluZS1ibG9jazt9XG4gIC5wYy10YWJsZXsgZGlzcGxheTogbm9uZTt9XG4gIC5zcC10YWJsZXsgZGlzcGxheTogdGFibGU7fVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBpb3MuanPoqq3jgb/ovrzjgb/mmYLjga4xMDB2aOioreWumlxuLy8gaGVpZ2h0OiBjYWxjKHZhcigtLXZoLCAxdmgpICogMTAwKTtcblxuLy8g5paH5a2X6Kmw6Kit5a6aXG4vLyBmb250LWZlYXR1cmUtc2V0dGluZ3M6IFwicGFsdFwiO1xuXG4vLyBDU1MgVHJhbnNmb3Jtc+OBp+eUu+mdouOBjOOBoeOCieOBpOOBj+OBqOOBjVxuLy8gLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4vLyBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vICBCcmVha3BvaW50XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwYy13aWRlOiAxNjAwcHg7XG4kcGMtd2lkdGg6MTAwMHB4O1xuJHBjLW5hcnJvdzogOTAwcHg7XG4kcGMtZ2FwOiAyMHB4O1xuJGJyZWFrcG9pbnQ6NzY4cHg7XG4kc3A6IDQ4MHB4O1xuJHNwLXNtbDogMzIwcHg7XG4kc3AtZ2FwOiAyMHB4O1xuXG5AbWl4aW4gcGMtd2lkZSB7XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogKCRwYy13aWRlKSkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5AbWl4aW4gcGMge1xuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICgkcGMtd2lkdGgpKSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbkBtaXhpbiBwYy1uYXJyb3cge1xuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICgkcGMtbmFycm93KSkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5AbWl4aW4gdGFiIHtcbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAoJGJyZWFrcG9pbnQpKSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbkBtaXhpbiBzcCB7XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogKCRzcCkpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuQG1peGluIHNwLXNtbCB7XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogKCRzcC1zbWwpKSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gIElFXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBtaXhpbiBpZSB7XG4gIC5pZSAmLCAuaWUxMSAmLCAuZWRnZSAmIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gaWUtaGFjayB7XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDBcXDApIGFuZCAobWluLXJlc29sdXRpb246ICs3MmRwaSkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vICBGb250XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRmb250LWZhbWlseS1iYXNlOiAnUXVpY2tzYW5kJywgJ+a4uOOCtOOCt+ODg+OCr+S9kycsICdZdSBHb3RoaWMnLCBZdUdvdGhpYywgJ+ODoeOCpOODquOCqicsIE1laXJ5bywgUXVpY2tzYW5kLCAn44OS44Op44Ku44OO6KeS44K044K344OD44KvIFBybycsICdIaXJhZ2lubyBLYWt1IEdvdGhpYyBQcm8nLCBPc2FrYSwgJ++8re+8syDvvLDjgrTjgrfjg4Pjgq8nLCAnTVMgUEdvdGhpYycsIHNhbnMtc2VyaWY7XG4kZm9udC1zaXplLXBjOiAxLjZyZW07XG4kZm9udC1zaXplLXNwOiAxLjJyZW07XG4kYmFzZS1saW5lLWhlaWdodDogMTtcbiRib2xkOjUwMDtcblxuLy8gU2h1ZWkgR290aGljIEtpbiBTdGQgTFxuQG1peGluIHNodWVpTCB7XG4gIGZvbnQtZmFtaWx5OiBkbnAtc2h1ZWktZ290aGljLWtpbi1zdGQsc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuLy8gU2h1ZWkgR290aGljIEtpbiBTdGQgTVxuQG1peGluIHNodWVpTSB7XG4gIGZvbnQtZmFtaWx5OiBkbnAtc2h1ZWktZ290aGljLWtpbi1zdGQsc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuLy8gU2h1ZWkgR290aGljIEtpbiBTdGQgQlxuQG1peGluIHNodWVpQiB7XG4gIGZvbnQtZmFtaWx5OiBkbnAtc2h1ZWktZ290aGljLWtpbi1zdGQsc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuQG1peGluIG1pbmNobyB7XG4gIGZvbnQtZmFtaWx5OiBcIuODkuODqeOCruODjuaYjuacnSBQcm9OIFczXCIsIFwiSGlyYWdpbm8gTWluY2hvIFByb05cIiwgXCLmuLjmmI7mnJ1cIiwgWXVNaW5jaG8sIFwiSEfmmI7mnJ1FXCIsIFwi77yt77yzIO+8sOaYjuacnVwiLCBcIu+8re+8syDmmI7mnJ1cIiwgc2VyaWY7XG59XG5cbkBtaXhpbiBlbiB7XG4gIGZvbnQtZmFtaWx5OiAnUXVpY2tzYW5kJywgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyAgQ29sb3Jcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGMtbWFpbjogIzAwYTBjYTtcbiRjLWJsYWNrOiAjMzMzO1xuJGMtZ3JheTogIzk5OTtcbiRjLWdyYXkyOiAjODA4MDgwO1xuJGMtd2hpdGU6ICNmZmY7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vICBIb3ZlclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQG1peGluIGhvdmVyIHtcbiAgJi5hY3RpdmUge1xuICAgIEBjb250ZW50O1xuICB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogKCRicmVha3BvaW50KzEpKSB7XG4gICAgYm9keS5pcy1wYyAmIHtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gIEJvcmRlci1yYWRpdXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGJvcmRlci1yYWRpdXM6IDhweDtcbkBtaXhpbiByYWRpdXMge1xuICBib3JkZXItcmFkaXVzOiA3cHg7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAoJHRhYikpIHtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIH1cbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gIEFuaW1hdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kZHVyYXRpb246IC4zczsiLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gQ29tbW9uIFNldHRpbmdcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbmJvZHkge1xuICBwYWRkaW5nLXRvcDogMjAwcHg7XG4gICYuaXMtYmxvY2sge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQpIHtcbiAgICBwYWRkaW5nLXRvcDogNzBweDtcbiAgfVxuICAuY29udGVudC1tYWluIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuICB9XG4gIC5ib2xkIHtcbiAgICBAaW5jbHVkZSBzaHVlaUI7XG4gIH1cbn1cbi5pbm5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6ICRwYy13aWR0aCArICRwYy1nYXAqMjtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgcGFkZGluZy1sZWZ0OiAkcGMtZ2FwO1xuICBwYWRkaW5nLXJpZ2h0OiAkcGMtZ2FwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQpIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgcGFkZGluZy1sZWZ0OiAkc3AtZ2FwO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRzcC1nYXA7XG4gIH1cbn1cbiNwYWdldG9wIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAmLmlzLWZpeGVkIGEge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogMTtcbiAgfVxuICBhIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKCNmZmYsMC44KTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMHB4O1xuICAgIGhlaWdodDogMTAwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiAxMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjRzO1xuICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IDAuODtcbiAgICB9XG4gIH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnJlYWtwb2ludCkge1xuICAgIGhlaWdodDogNTBweDtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICYuaXMtZml4ZWQgYSB7XG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIH1cbiAgICBhIHtcbiAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgc3ZnIHtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4udW5kZXItdmlzdWFsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIGgxIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXNpemU6IDRyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKTtcbiAgICB6LWluZGV4OiAxO1xuICB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQpIHtcbiAgICBoMSB7XG4gICAgICBmb250LXNpemU6IDJyZW07XG4gICAgfVxuICB9XG59XG4udW5kZXItY29udGVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbGluZS1oZWlnaHQ6IDI7XG4gIHBhZGRpbmc6IDgwcHggMDtcbiAgJl9fbGVmdCB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjFlbTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICB9XG4gICZfX3JpZ2h0IHtcbiAgICB3aWR0aDogZmxvb3ItZGVjaW1hbCggKDY1MC8xMDAwKSoxMDAlICk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xuICAgIC51bmRlci10aXRsZSB7XG4gICAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzNy41cHg7XG4gICAgICBtYXJnaW4tdG9wOiA4MHB4O1xuICAgICAgJjpudGgtb2YtdHlwZSgxKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG4gICAgfVxuICAgIC51bmRlci10ZXh0IHtcbiAgICAgIG1hcmdpbi10b3A6IDgwcHg7XG4gICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cbiAgICB9XG4gICAgaDMge1xuICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICBAaW5jbHVkZSBzaHVlaUI7XG4gICAgfVxuICB9XG4gIC5vdmVyZmxvdyB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAub3ZlcmZsb3ctbGVmdCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICAgIH1cbiAgICAub3ZlcmZsb3ctcmlnaHQge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG4gIH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnJlYWtwb2ludCkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDQwcHggMDtcbiAgICAmX19sZWZ0IHtcbiAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIH1cbiAgICAmX19yaWdodCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAudW5kZXItdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgICAgICY6bnRoLW9mLXR5cGUoMSkge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC51bmRlci10ZXh0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgIGEge1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgLm92ZXJmbG93IHtcbiAgICAgICYuc3Atb2ZmIHtcbiAgICAgICAgLm92ZXJmbG93LWxlZnQge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiBMb2FkaW5nXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ubG9hZGluZyB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgei1pbmRleDogOTk5OTk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAuc2stY2hhc2Uge1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYW5pbWF0aW9uOiBzay1jaGFzZSAyLjVzIGluZmluaXRlIGxpbmVhciBib3RoO1xuICB9XG4gIC5zay1jaGFzZS1kb3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7IFxuICAgIGFuaW1hdGlvbjogc2stY2hhc2UtZG90IDIuMHMgaW5maW5pdGUgZWFzZS1pbi1vdXQgYm90aDsgXG4gIH1cbiAgLnNrLWNoYXNlLWRvdCB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAyNSU7XG4gICAgICBoZWlnaHQ6IDI1JTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWJsYWNrO1xuICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgIGFuaW1hdGlvbjogc2stY2hhc2UtZG90LWJlZm9yZSAyLjBzIGluZmluaXRlIGVhc2UtaW4tb3V0IGJvdGg7XG4gICAgfVxuICAgICY6bnRoLWNoaWxkKDEpIHsgYW5pbWF0aW9uLWRlbGF5OiAtMS4xczsgfVxuICAgICY6bnRoLWNoaWxkKDIpIHsgYW5pbWF0aW9uLWRlbGF5OiAtMS4wczsgfVxuICAgICY6bnRoLWNoaWxkKDMpIHsgYW5pbWF0aW9uLWRlbGF5OiAtMC45czsgfVxuICAgICY6bnRoLWNoaWxkKDQpIHsgYW5pbWF0aW9uLWRlbGF5OiAtMC44czsgfVxuICAgICY6bnRoLWNoaWxkKDUpIHsgYW5pbWF0aW9uLWRlbGF5OiAtMC43czsgfVxuICAgICY6bnRoLWNoaWxkKDYpIHsgYW5pbWF0aW9uLWRlbGF5OiAtMC42czsgfVxuICAgICY6bnRoLWNoaWxkKDEpOmJlZm9yZSB7IGFuaW1hdGlvbi1kZWxheTogLTEuMXM7IH1cbiAgICAmOm50aC1jaGlsZCgyKTpiZWZvcmUgeyBhbmltYXRpb24tZGVsYXk6IC0xLjBzOyB9XG4gICAgJjpudGgtY2hpbGQoMyk6YmVmb3JlIHsgYW5pbWF0aW9uLWRlbGF5OiAtMC45czsgfVxuICAgICY6bnRoLWNoaWxkKDQpOmJlZm9yZSB7IGFuaW1hdGlvbi1kZWxheTogLTAuOHM7IH1cbiAgICAmOm50aC1jaGlsZCg1KTpiZWZvcmUgeyBhbmltYXRpb24tZGVsYXk6IC0wLjdzOyB9XG4gICAgJjpudGgtY2hpbGQoNik6YmVmb3JlIHsgYW5pbWF0aW9uLWRlbGF5OiAtMC42czsgfVxuICB9XG59XG5Aa2V5ZnJhbWVzIHNrLWNoYXNlIHtcbiAgMTAwJSB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gXG59XG5Aa2V5ZnJhbWVzIHNrLWNoYXNlLWRvdCB7XG4gIDgwJSwgMTAwJSB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gXG59XG5Aa2V5ZnJhbWVzIHNrLWNoYXNlLWRvdC1iZWZvcmUge1xuICA1MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC40KTsgXG4gIH0gMTAwJSwgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wKTsgXG4gIH0gXG59IiwiQGNoYXJzZXQgXCJ1dGYtOFwiO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyAgbWl4aW4uY3NzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEVhc2luZ1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAvL1xuXG4kbGluZWFyOiBjdWJpYy1iZXppZXIoMC4yNTAsIDAuMjUwLCAwLjc1MCwgMC43NTApO1xuJGVhc2U6IGN1YmljLWJlemllcigwLjI1MCwgMC4xMDAsIDAuMjUwLCAxLjAwMCk7XG4kZWFzZS1pbjogY3ViaWMtYmV6aWVyKDAuNDIwLCAwLjAwMCwgMS4wMDAsIDEuMDAwKTtcbiRlYXNlLW91dDogY3ViaWMtYmV6aWVyKDAuMDAwLCAwLjAwMCwgMC41ODAsIDEuMDAwKTtcbiRlYXNlLWluLW91dDogY3ViaWMtYmV6aWVyKDAuNDIwLCAwLjAwMCwgMC41ODAsIDEuMDAwKTtcblxuJGVhc2VJblF1YWQ6IGN1YmljLWJlemllcigwLjU1MCwgMC4wODUsIDAuNjgwLCAwLjUzMCk7XG4kZWFzZUluQ3ViaWM6IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XG4kZWFzZUluUXVhcnQ6IGN1YmljLWJlemllcigwLjg5NSwgMC4wMzAsIDAuNjg1LCAwLjIyMCk7XG4kZWFzZUluUXVpbnQ6IGN1YmljLWJlemllcigwLjc1NSwgMC4wNTAsIDAuODU1LCAwLjA2MCk7XG4kZWFzZUluU2luZTogY3ViaWMtYmV6aWVyKDAuNDcwLCAwLjAwMCwgMC43NDUsIDAuNzE1KTtcbiRlYXNlSW5FeHBvOiBjdWJpYy1iZXppZXIoMC45NTAsIDAuMDUwLCAwLjc5NSwgMC4wMzUpO1xuJGVhc2VJbkNpcmM6IGN1YmljLWJlemllcigwLjYwMCwgMC4wNDAsIDAuOTgwLCAwLjMzNSk7XG4kZWFzZUluQmFjazogY3ViaWMtYmV6aWVyKDAuNjAwLCAtMC4yODAsIDAuNzM1LCAwLjA0NSk7XG5cbiRlYXNlT3V0UXVhZDogY3ViaWMtYmV6aWVyKDAuMjUwLCAwLjQ2MCwgMC40NTAsIDAuOTQwKTtcbiRlYXNlT3V0Q3ViaWM6IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XG4kZWFzZU91dFF1YXJ0OiBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQwLCAwLjQ0MCwgMS4wMDApO1xuJGVhc2VPdXRRdWludDogY3ViaWMtYmV6aWVyKDAuMjMwLCAxLjAwMCwgMC4zMjAsIDEuMDAwKTtcbiRlYXNlT3V0U2luZTogY3ViaWMtYmV6aWVyKDAuMzkwLCAwLjU3NSwgMC41NjUsIDEuMDAwKTtcbiRlYXNlT3V0RXhwbzogY3ViaWMtYmV6aWVyKDAuMTkwLCAxLjAwMCwgMC4yMjAsIDEuMDAwKTtcbiRlYXNlT3V0Q2lyYzogY3ViaWMtYmV6aWVyKDAuMDc1LCAwLjgyMCwgMC4xNjUsIDEuMDAwKTtcbiRlYXNlT3V0QmFjazogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEuMjc1KTtcblxuJGVhc2VJbk91dFF1YWQ6IGN1YmljLWJlemllcigwLjQ1NSwgMC4wMzAsIDAuNTE1LCAwLjk1NSk7XG4kZWFzZUluT3V0Q3ViaWM6IGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxLjAwMCk7XG4kZWFzZUluT3V0UXVhcnQ6IGN1YmljLWJlemllcigwLjc3MCwgMC4wMDAsIDAuMTc1LCAxLjAwMCk7XG4kZWFzZUluT3V0UXVpbnQ6IGN1YmljLWJlemllcigwLjg2MCwgMC4wMDAsIDAuMDcwLCAxLjAwMCk7XG4kZWFzZUluT3V0U2luZTogY3ViaWMtYmV6aWVyKDAuNDQ1LCAwLjA1MCwgMC41NTAsIDAuOTUwKTtcbiRlYXNlSW5PdXRFeHBvOiBjdWJpYy1iZXppZXIoMS4wMDAsIDAuMDAwLCAwLjAwMCwgMS4wMDApO1xuJGVhc2VJbk91dENpcmM6IGN1YmljLWJlemllcigwLjc4NSwgMC4xMzUsIDAuMTUwLCAwLjg2MCk7XG4kZWFzZUluT3V0QmFjazogY3ViaWMtYmV6aWVyKDAuNjgwLCAtMC41NTAsIDAuMjY1LCAxLjU1MCk7XG5cbi8vIOe4puabuOOBjVxuQG1peGluIHdyaXRpbmctbW9kZSggJGRpcmVjdGlvbiApXG57XG4gIC1tcy13cml0aW5nLW1vZGU6IHRiLSArICRkaXJlY3Rpb247ICAgICAgICAgICAgICAgLyogSUXnlKjjgIAqL1xuICAtd2Via2l0LXdyaXRpbmctbW9kZTogdmVydGljYWwtICsgJGRpcmVjdGlvbjsgICAgIC8qIGNocm9tZeeUqOOAgCovXG4gIC1tb3otd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC0gKyAkZGlyZWN0aW9uOyAgICAgICAgLyogRmlyZWZveOeUqOOAgCovXG4gIC1vLXdyaXRpbmctbW9kZTogdmVydGljYWwtICsgJGRpcmVjdGlvbjsgICAgICAgICAgLyogb3BlcmHnlKjjgIAqL1xuICB3cml0aW5nLW1vZGU6IHZlcnRpY2FsLSArICRkaXJlY3Rpb247ICAgICAgIC8qIOOBneOBruS7liAqL1xufVxuXG4vLyDnrKzkuIDlvJXmlbDjgafln7rmupbjgajjgarjgovnlLvpnaLluYXjga7jg5Xjgqnjg7Pjg4jjgrXjgqTjgrrjgIHnrKzkuozlvJXmlbDjgafln7rmupbjgajjgarjgovnlLvpnaLluYXjgpLlhaXliptcbi8vIOS+i++8iUBpbmNsdWRlIGZ6X3Z3KDUwLCAxMjgwKTtcbkBmdW5jdGlvbiBnZXRfdncoJHNpemUsICR2aWV3cG9ydDozMjApe1xuICAkcmF0ZTogMTAwIC8gJHZpZXdwb3J0O1xuICBAcmV0dXJuICRyYXRlICogJHNpemUgKiAxdnc7XG59XG5AbWl4aW4gZnpfdncoJGZvbnRfc2l6ZToxMCwgJGJyZWFrcG9pbnQ6MTAwMCl7XG4gIGZvbnQtc2l6ZTogJGZvbnRfc2l6ZSAqIDFweDtcbiAgZm9udC1zaXplOiBnZXRfdncoJGZvbnRfc2l6ZSwkYnJlYWtwb2ludCk7XG59XG5cbi8vIGRpc3BsYXk6IGZsZXhcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLy9cbkBtaXhpbiBmbGV4IHtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC1tb3otYm94O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiBmbGV4O1xufVxuQG1peGluIGlubGluZS1mbGV4IHtcbiAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtYm94O1xuICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1mbGV4O1xuICBkaXNwbGF5OiAtbW96LWlubGluZS1mbGV4O1xuICBkaXNwbGF5OiAtbXMtaW5saW5lLWZsZXhib3g7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xufVxuXG4vLyBmbGV4LWRpcmVjdGlvblxuLy8gLSByb3cgIDogcm93XG4vLyAtIHJvd1IgOiByb3ctcmV2ZXJzZVxuLy8gLSBjb2wgIDogY29sdW1uXG4vLyAtIGNvbFIgOiBjb2x1bW4tcmV2ZXJzZVxuQG1peGluIGZsZXgtZGlyZWN0aW9uKCR2YWx1ZTogcm93KSB7XG4gIEBpZiAkdmFsdWU9PXJvd1Ige1xuICAgIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDtcbiAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IHJldmVyc2U7XG4gICAgLW1zLWZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gIH1cbiAgQGVsc2UgaWYgJHZhbHVlPT1jb2wge1xuICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuICBAZWxzZSBpZiAkdmFsdWU9PWNvbFIge1xuICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiByZXZlcnNlO1xuICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICB9XG4gIEBlbHNlIHtcbiAgICAtd2Via2l0LWJveC1vcmllbnQ6IGhvcml6b250YWw7XG4gICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gICAgLW1zLWZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxufVxuXG4vLyBmbGV4LXdyYXDvvIjln7rmnKzvvJpub3dyYXDvvIlcbi8vIC0gd3JhcFxuQG1peGluIGZsZXgtd3JhcCgkdmFsdWU6IG5vd3JhcCkge1xuICBAaWYgJHZhbHVlPT13cmFwIHtcbiAgICBmbGV4LXdyYXA6ICR2YWx1ZTtcbiAgICAtbXMtZmxleC13cmFwOiAkdmFsdWU7XG4gICAgLXdlYmtpdC1mbGV4LXdyYXA6ICR2YWx1ZTtcbiAgfVxuICBAZWxzZSB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgLW1zLWZsZXgtd3JhcDogbm93cmFwO1xuICAgIC13ZWJraXQtZmxleC13cmFwOiBub3dyYXA7XG4gIH1cbn1cblxuLy8ganVzdGlmeS1jb250ZW5077yI5Z+65pys77yac3RhcnTvvIlcbi8vIC0gc2IgOiBzcGFjZS1iZXR3ZWVuXG4vLyAtIHNhIDogc3BhY2UtYXJvdW5kXG4vLyAtIGNlbnRlclxuQG1peGluIGp1c3RpZnktY29udGVudCgkdmFsdWU6IHN0YXJ0KSB7XG4gIEBpZiAkdmFsdWU9PXNiIHtcbiAgICAtd2Via2l0LWJveC1wYWNrOiBqdXN0aWZ5O1xuICAgIC1tcy1mbGV4LXBhY2s6IGp1c3RpZnk7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG4gIEBlbHNlIGlmICR2YWx1ZT09c2Ege1xuICAgIC1tcy1mbGV4LXBhY2s6IGRpc3RyaWJ1dGU7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gIH1cbiAgQGVsc2UgaWYgJHZhbHVlPT1jZW50ZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIC1tcy1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG4gIEBlbHNlIGlmICR2YWx1ZT09ZW5kIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIC1tcy1qdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgfVxuICBAZWxzZSB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIC1tcy1qdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIH1cbn1cblxuLy8gYWxpZ24taXRlbXPvvIjln7rmnKzvvJpzdHJldGNo77yJXG4vLyAtIHN0YXJ0XG4vLyAtIGVuZFxuLy8gLSBjZW50ZXJcbi8vIC0gYmFzZWxpbmVcbkBtaXhpbiBhbGlnbi1pdGVtcygkdmFsdWU6IHN0cmV0Y2gpIHtcbiAgQGlmICR2YWx1ZT09c3RhcnQge1xuICAgIC13ZWJraXQtYm94LWFsaWduOiBzdGFydDtcbiAgICAtbXMtZmxleC1hbGlnbjogc3RhcnQ7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIH1cbiAgQGVsc2UgaWYgJHZhbHVlPT1lbmQge1xuICAgIC13ZWJraXQtYm94LWFsaWduOiBlbmQ7XG4gICAgLW1zLWZsZXgtYWxpZ246IGVuZDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gIH1cbiAgQGVsc2UgaWYgJHZhbHVlPT1jZW50ZXIge1xuICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XG4gICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG4gIEBlbHNlIGlmICR2YWx1ZT09YmFzZWxpbmUge1xuICAgIC13ZWJraXQtYm94LWFsaWduOiBiYXNlbGluZTtcbiAgICAtbXMtZmxleC1hbGlnbjogYmFzZWxpbmU7XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICB9XG4gIEBlbHNlIHtcbiAgICAtd2Via2l0LWJveC1hbGlnbjogc3RyZXRjaDtcbiAgICAtbXMtZmxleC1hbGlnbjogc3RyZXRjaDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgfVxufVxuXG4vLyBhbGlnbi1jb250ZW5077yI5Z+65pys77yac3RyZXRjaO+8iVxuLy8gLSBzdGFydFxuLy8gLSBlbmRcbi8vIC0gY2VudGVyXG4vLyAtIHNiXG4vLyAtIHNhXG5AbWl4aW4gYWxpZ24tY29udGVudCgkdmFsdWU6IHN0cmV0Y2gpIHtcbiAgQGlmICR2YWx1ZT09c3RhcnQge1xuICAgIC1tcy1mbGV4LWxpbmUtcGFjazogc3RhcnQ7XG4gICAgLXdlYmtpdC1hbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIC1tcy1hbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIH1cbiAgQGVsc2UgaWYgJHZhbHVlPT1lbmQge1xuICAgIC1tcy1mbGV4LWxpbmUtcGFjazogZW5kO1xuICAgIC13ZWJraXQtYWxpZ24tY29udGVudDogZmxleC1lbmQ7XG4gICAgLW1zLWFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtZW5kO1xuICB9XG4gIEBlbHNlIGlmICR2YWx1ZT09Y2VudGVyIHtcbiAgICAtbXMtZmxleC1saW5lLXBhY2s6IGNlbnRlcjtcbiAgICAtd2Via2l0LWFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAtbXMtYWxpZ24tY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuICBAZWxzZSBpZiAkdmFsdWU9PXNiIHtcbiAgICAtbXMtZmxleC1saW5lLXBhY2s6IGp1c3RpZnk7XG4gICAgLXdlYmtpdC1hbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIC1tcy1hbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cbiAgQGVsc2UgaWYgJHZhbHVlPT1zYSB7XG4gICAgLW1zLWZsZXgtbGluZS1wYWNrOiBkaXN0cmlidXRlO1xuICAgIC13ZWJraXQtYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgIC1tcy1hbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kO1xuICB9XG4gIEBlbHNlIHtcbiAgICAtbXMtZmxleC1saW5lLXBhY2s6IHN0cmV0Y2g7XG4gICAgLXdlYmtpdC1hbGlnbi1jb250ZW50OiBzdHJldGNoO1xuICAgIC1tcy1hbGlnbi1jb250ZW50OiBzdHJldGNoO1xuICAgIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2g7XG4gIH1cbn1cblxuLy8gb3JkZXLvvIjmlbDlgKTvvIlcbkBtaXhpbiBvcmRlcigkdmFsdWUpIHtcbiAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogJHZhbHVlO1xuICAtbXMtZmxleC1vcmRlcjogJHZhbHVlO1xuICBvcmRlcjogJHZhbHVlO1xufVxuXG4vLyBmbGV4LWJhc2lz77yI5pWw5YCk77yJXG5AbWl4aW4gZmxleC1iYXNpcygkdmFsdWU6IGF1dG8pIHtcbiAgLW1zLWZsZXgtcHJlZmVycmVkLXNpemU6ICR2YWx1ZTtcbiAgZmxleC1iYXNpczogJHZhbHVlO1xufVxuXG4vLyBmbGV4LWdyb3fvvIjmlbDlgKTvvIlcbkBtaXhpbiBmbGV4LWdyb3coJHZhbHVlKSB7XG4gIC13ZWJraXQtYm94LWZsZXg6ICR2YWx1ZTtcbiAgLW1zLWZsZXgtcG9zaXRpdmU6ICR2YWx1ZTtcbiAgZmxleC1ncm93OiAkdmFsdWU7XG59XG5cbi8vIGFsaWduLXNlbGbvvIjln7rmnKzvvJphdXRv77yJXG4vLyAtIHN0YXJ0XG4vLyAtIGVuZFxuLy8gLSBiYXNlbGluZVxuLy8gLSBzdHJldGNoXG5AbWl4aW4gYWxpZ24tc2VsZigkdmFsdWU6IHN0cmV0Y2gpIHtcbiAgQGlmICR2YWx1ZT09c3RhcnQge1xuICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IHN0YXJ0O1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gIH1cbiAgQGVsc2UgaWYgJHZhbHVlPT1lbmQge1xuICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IGVuZDtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbiAgfVxuICBAZWxzZSBpZiAkdmFsdWU9PWNlbnRlciB7XG4gICAgLW1zLWZsZXgtaXRlbS1hbGlnbjogY2VudGVyO1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgfVxuICBAZWxzZSBpZiAkdmFsdWU9PWJhc2VsaW5lIHtcbiAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBiYXNlbGluZTtcbiAgICBhbGlnbi1zZWxmOiBiYXNlbGluZTtcbiAgfVxuICBAZWxzZSBpZiAkdmFsdWU9PXN0cmV0Y2gge1xuICAgIC1tcy1mbGV4LWl0ZW0tYWxpZ246IHN0cmV0Y2g7XG4gICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgfVxuICBAZWxzZSB7XG4gICAgLW1zLWZsZXgtaXRlbS1hbGlnbjogYXV0bztcbiAgICBhbGlnbi1zZWxmOiBhdXRvO1xuICB9XG59XG5cbi8vIEBpbmNsdWRlIGtleWZyYW1lcygkYW5pbWF0aW9uLW5hbWUpIHt+fn59XG5AbWl4aW4ga2V5ZnJhbWVzKCRhbmltYXRpb24tbmFtZTogYW5pbWF0b24pIHtcbiAgQC13ZWJraXQta2V5ZnJhbWVzICN7JGFuaW1hdGlvbi1uYW1lfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbiAgQC1tb3ota2V5ZnJhbWVzICN7JGFuaW1hdGlvbi1uYW1lfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbiAgQGtleWZyYW1lcyAjeyRhbmltYXRpb24tbmFtZX0ge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5AbWl4aW4gYW5pbWF0aW9uKCRhbmltYXRpb24tbmFtZSkge1xuICAtd2Via2l0LWFuaW1hdGlvbjogJGFuaW1hdGlvbi1uYW1lO1xuICAtbW96LWFuaW1hdGlvbjogJGFuaW1hdGlvbi1uYW1lO1xuICBhbmltYXRpb246ICRhbmltYXRpb24tbmFtZTtcbiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICAtbW96LWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG59XG5cbi8vIEBpbmNsdWRlIGNhbGMod2lkdGgsIFwiMTAwJSAtIDI4MnB4XCIpO1xuQG1peGluIGNhbGMoJHByb3BlcnR5LCAkZXhwcmVzc2lvbikge1xuICAjeyRwcm9wZXJ0eX06IC1tb3otY2FsYygjeyRleHByZXNzaW9ufSk7XG4gICN7JHByb3BlcnR5fTogLW8tY2FsYygjeyRleHByZXNzaW9ufSk7XG4gICN7JHByb3BlcnR5fTogLXdlYmtpdC1jYWxjKCN7JGV4cHJlc3Npb259KTtcbiAgI3skcHJvcGVydHl9OiBjYWxjKCN7JGV4cHJlc3Npb259KTtcbn1cblxuQG1peGluIG92ZXJmbG93LXNjcm9sbCB7XG4gIG92ZXJmbG93OiBzY3JvbGw7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cblxuQG1peGluIHRleHQtanVzdGlmeSB7XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gIC1tcy10ZXh0LWp1c3RpZnk6IGludGVyLWNsdXN0ZXI7XG4gIHRleHQtanVzdGlmeTogaW50ZXItY2x1c3Rlcjtcbn1cblxuQG1peGluIHBvcy1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuXG5AbWl4aW4gYmctY292ZXIge1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG5cbkBtaXhpbiBpbml0TGlzdCgkbWFyZ2luKSB7XG4gIG1hcmdpbjogJG1hcmdpbjtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG5AbWl4aW4gaW5pdExpbmsoJGNvbG9yKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuQG1peGluIHdhcnBMaW5rIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRleHQtaW5kZW50Oi05OTk5cHg7XG59XG5cbkBtaXhpbiBjbGVhcmZpeCB7XG4gIHpvb206IDE7XG4gICY6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGhlaWdodDogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgY29udGVudDogXCIuXCI7XG4gIH1cbn1cblxuQG1peGluIGNzc1Nwcml0ZSgkdXJsKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJHVybCk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHNwYW4ge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxufVxuXG5AbWl4aW4gc3ByaXRlUm9sbCgkeCwgJG9mZiwgJG9uKSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246ICR4ICRvZmY7XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246ICR4ICRvbjtcbiAgfVxuICAmLnZpc2l0LCAmLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogJHggJG9uO1xuICB9XG59XG5cbkBtaXhpbiBhZGRJY29uKCR3aWQsICRoZWksICR4LCAkeSkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkd2lkO1xuICBoZWlnaHQ6ICRoZWk7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIEBpZiAkeCA9PSBmYWxzZSBhbmQgJHkgPT0gZmFsc2Uge31cbiAgQGVsc2UgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkeCAkeTsgfVxuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xufVxuXG5AbWl4aW4gYm9yZGVyLXJhZGl1cygkcmFkaXVzKSB7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgICAgLW1vei1ib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICAgICAgLW1zLWJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbn1cbkBtaXhpbiBib3JkZXItdG9wLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgLXdlYmtpdC1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICAgICAgLW1vei1ib3JkZXItcmFkaXVzLXRvcGxlZnQ6ICRyYWRpdXM7XG4gICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbn1cbkBtaXhpbiBib3JkZXItdG9wLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIC13ZWJraXQtYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgICAtbW96LWJvcmRlci1yYWRpdXMtdG9wcmlnaHQ6ICRyYWRpdXM7XG4gICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG59XG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICAtd2Via2l0LWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgICAgLW1vei1ib3JkZXItcmFkaXVzLWJvdHRvbXJpZ2h0OiAkcmFkaXVzO1xuICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xufVxuQG1peGluIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICAtd2Via2l0LWJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgICAtbW96LWJvcmRlci1yYWRpdXMtYm90dG9tbGVmdDogJHJhZGl1cztcbiAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xufVxuXG5cbi8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8g6Zai5pWwXG4vLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuLy8gUm91bmQgKOWbm+aNqOS6lOWFpSlcbkBmdW5jdGlvbiByb3VuZC1kZWNpbWFsICgkbnVtYmVyLCAkZGlnaXRzOiAwKSB7XG4gICAgQHJldHVybiB0by1maXhlZCgkbnVtYmVyLCAkZGlnaXRzLCAncm91bmQnKTtcbn1cblxuLy8gQ2VpbCAo5YiH44KK5LiK44GSKVxuQGZ1bmN0aW9uIGNlaWwtZGVjaW1hbCAoJG51bWJlciwgJGRpZ2l0czogMCkge1xuICAgIEByZXR1cm4gdG8tZml4ZWQoJG51bWJlciwgJGRpZ2l0cywgJ2NlaWwnKTtcbn1cblxuLy8gRmxvb3IgKOWIh+OCiuaNqOOBpikg5L6L77yJZmxvb3ItZGVjaW1hbCggKDMwMC85MTUpKjEwMCUgKVxuQGZ1bmN0aW9uIGZsb29yLWRlY2ltYWwgKCRudW1iZXIsICRkaWdpdHM6IDApIHtcbiAgICBAcmV0dXJuIHRvLWZpeGVkKCRudW1iZXIsICRkaWdpdHMsICdmbG9vcicpO1xufVxuXG5AZnVuY3Rpb24gdG8tZml4ZWQgKCRudW1iZXIsICRkaWdpdHM6IDAsICRyb3VuZDogJ3JvdW5kJykge1xuICAgICRuOiAxO1xuICAgIC8vICRudW1iZXIgbXVzdCBiZSBhIG51bWJlclxuICAgIEBpZiB0eXBlLW9mKCRudW1iZXIpICE9IG51bWJlciB7XG4gICAgICAgIEB3YXJuICcjeyAkbnVtYmVyIH0gaXMgbm90IGEgbnVtYmVyLic7XG4gICAgICAgIEByZXR1cm4gJG51bWJlcjtcbiAgICB9XG4gICAgLy8gJGRpZ2l0cyBtdXN0IGJlIGEgdW5pdGxlc3MgbnVtYmVyXG4gICAgQGlmIHR5cGUtb2YoJGRpZ2l0cykgIT0gbnVtYmVyIHtcbiAgICAgICAgQHdhcm4gJyN7ICRkaWdpdHMgfSBpcyBub3QgYSBudW1iZXIuJztcbiAgICAgICAgQHJldHVybiAkbnVtYmVyO1xuICAgIH0gQGVsc2UgaWYgbm90IHVuaXRsZXNzKCRkaWdpdHMpIHtcbiAgICAgICAgQHdhcm4gJyN7ICRkaWdpdHMgfSBoYXMgYSB1bml0Lic7XG4gICAgICAgIEByZXR1cm4gJG51bWJlcjtcbiAgICB9XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZGlnaXRzIHtcbiAgICAgICAgJG46ICRuICogMTA7XG4gICAgfVxuICAgIEBpZiAkcm91bmQgPT0gJ3JvdW5kJyB7XG4gICAgICAgIEByZXR1cm4gcm91bmQoJG51bWJlciAqICRuKSAvICRuO1xuICAgIH0gQGVsc2UgaWYgJHJvdW5kID09ICdjZWlsJyB7XG4gICAgICAgIEByZXR1cm4gY2VpbCgkbnVtYmVyICogJG4pIC8gJG47XG4gICAgfSBAZWxzZSBpZiAkcm91bmQgPT0gJ2Zsb29yJyB7XG4gICAgICAgIEByZXR1cm4gZmxvb3IoJG51bWJlciAqICRuKSAvICRuO1xuICAgIH0gQGVsc2Uge1xuICAgICAgICBAd2FybiAnI3sgJHJvdW5kIH0gaXMgdW5kZWZpbmVkIGtleXdvcmQuJztcbiAgICAgICAgQHJldHVybiAkbnVtYmVyO1xuICAgIH1cbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiBIZWFkZXIgU2V0dGluZ1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuaGVhZGVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgkYy13aGl0ZSwxKTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiA5OTk5O1xuICB0cmFuc2l0aW9uOiBhbGwgLjRzO1xuICBib2R5LmlzLW5hdnNtbCAmIHtcbiAgICA+IC5pbm5lciB7XG4gICAgICBoZWlnaHQ6IDEyMHB4O1xuICAgIH1cbiAgICAubG9nbyB7XG4gICAgICBtYXgtd2lkdGg6IDIwMHB4O1xuICAgICAgc3ZnIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gID4gLmlubmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGhlaWdodDogMjAwcHg7XG4gICAgdHJhbnNpdGlvbjogaGVpZ2h0IC40cztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogOTk5OTtcbiAgfVxuICAubG9nbyB7XG4gICAgc3ZnIHtcbiAgICAgIGZpbGw6ICRjLWJsYWNrO1xuICAgICAgdHJhbnNpdGlvbjogd2lkdGggLjRzO1xuICAgIH1cbiAgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50KSB7XG4gICAgYm9keS5pcy1uYXZzbWwgJiB7XG4gICAgICA+IC5pbm5lciB7XG4gICAgICAgIGhlaWdodDogNzBweDtcbiAgICAgICAgLmxvZ28ge1xuICAgICAgICAgIG1heC13aWR0aDogMTM0cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgPiAuaW5uZXIge1xuICAgICAgaGVpZ2h0OiA3MHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICB9XG4gICAgLmxvZ28ge1xuICAgICAgbWF4LXdpZHRoOiAxMzRweDtcbiAgICAgIHN2ZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuQGtleWZyYW1lcyBsaW5lLXRvcC1vbiB7XG4gIDAlIHt0b3A6IDA7fVxuICA1MCUge3RvcDogOHB4O3RyYW5zZm9ybTogcm90YXRlKDBkZWcpO31cbiAgMTAwJSB7dG9wOiA4cHg7dHJhbnNmb3JtOiByb3RhdGUoLTIwZGVnKTt9XG59XG5Aa2V5ZnJhbWVzIGxpbmUtdG9wLW9mZiB7XG4gIDAlIHt0b3A6IDhweDt0cmFuc2Zvcm06IHJvdGF0ZSgtMjBkZWcpO31cbiAgNTAlIHt0b3A6IDhweDt0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTt9XG4gIDEwMCUge3RvcDogMDt9XG59XG5Aa2V5ZnJhbWVzIGxpbmUtYm90dG9tLW9uIHtcbiAgMCUge2JvdHRvbTogMDt9XG4gIDUwJSB7Ym90dG9tOiA4cHg7dHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7fVxuICAxMDAlIHtib3R0b206IDhweDt0cmFuc2Zvcm06IHJvdGF0ZSgyMGRlZyk7fVxufVxuQGtleWZyYW1lcyBsaW5lLWJvdHRvbS1vZmYge1xuICAwJSB7Ym90dG9tOiA4cHg7dHJhbnNmb3JtOiByb3RhdGUoMjBkZWcpO31cbiAgNTAlIHtib3R0b206IDhweDt0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTt9XG4gIDEwMCUge2JvdHRvbTogMDt9XG59XG5cbkBrZXlmcmFtZXMgbGluZS10b3Atb25fc3Age1xuICAwJSB7dG9wOiAwO31cbiAgNTAlIHt0b3A6IDRweDt0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTt9XG4gIDEwMCUge3RvcDogNHB4O3RyYW5zZm9ybTogcm90YXRlKC0yMGRlZyk7fVxufVxuQGtleWZyYW1lcyBsaW5lLXRvcC1vZmZfc3Age1xuICAwJSB7dG9wOiA0cHg7dHJhbnNmb3JtOiByb3RhdGUoLTIwZGVnKTt9XG4gIDUwJSB7dG9wOiA0cHg7dHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7fVxuICAxMDAlIHt0b3A6IDA7fVxufVxuQGtleWZyYW1lcyBsaW5lLWJvdHRvbS1vbl9zcCB7XG4gIDAlIHtib3R0b206IDA7fVxuICA1MCUge2JvdHRvbTogNHB4O3RyYW5zZm9ybTogcm90YXRlKDBkZWcpO31cbiAgMTAwJSB7Ym90dG9tOiA0cHg7dHJhbnNmb3JtOiByb3RhdGUoMjBkZWcpO31cbn1cbkBrZXlmcmFtZXMgbGluZS1ib3R0b20tb2ZmX3NwIHtcbiAgMCUge2JvdHRvbTogNHB4O3RyYW5zZm9ybTogcm90YXRlKDIwZGVnKTt9XG4gIDUwJSB7Ym90dG9tOiA0cHg7dHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7fVxuICAxMDAlIHtib3R0b206IDA7fVxufVxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuIEZvb3RlciBTZXR0aW5nXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5mb290ZXIge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAzMDBweDtcbiAgcGFkZGluZy10b3A6IDE1MHB4O1xuICBsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIC5pbm5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICB9XG4gIC5jb3B5IHtcbiAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQpIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgLmlubmVyIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgICB9XG4gICAgLmZvb3Rlci1uYXYge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAubmF2LWxpc3Qge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgICAuZm9vdGVyLWxvZ28ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAuc3ZnLWxvZ29fdmVydGljYWxfZGltcyB7XG4gICAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgICBoZWlnaHQ6IDc0cHg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgfVxuICAgICAgLmluc3RhZ3JhbSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5jb3B5IHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gIH1cbn0iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gTmF2IFNldHRpbmdcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5idG4tbmF2IHtcbiAgd2lkdGg6IDEwMHB4O1xuICBoZWlnaHQ6IDEwMHB4O1xuICBwYWRkaW5nLXRvcDogMzJweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAmLmlzLWFjdGl2ZSB7XG4gICAgLmxpbmUge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGxpbmUtdG9wLW9uO1xuICAgICAgfVxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBhbmltYXRpb24tbmFtZTogbGluZS1ib3R0b20tb247XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5saW5lIHtcbiAgICB3aWR0aDogNTBweDtcbiAgICBoZWlnaHQ6IDE4cHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OlwiXCI7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMnB4O1xuICAgICAgYmFja2dyb3VuZDogJGMtYmxhY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICBtYXJnaW4tbGVmdDogLTI1cHg7XG4gICAgICBhbmltYXRpb24tZHVyYXRpb246IDBzO1xuICAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgICAgIGJvZHkuaXMtbG9hZGVkICYge1xuICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IC40cztcbiAgICAgIH1cbiAgICB9XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGFuaW1hdGlvbi1uYW1lOiBsaW5lLXRvcC1vZmY7XG4gICAgfVxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGFuaW1hdGlvbi1uYW1lOiBsaW5lLWJvdHRvbS1vZmY7XG4gICAgfVxuICB9XG4gIC5lbiB7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4xZW07XG4gIH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnJlYWtwb2ludCkge1xuICAgIHdpZHRoOiA1MHB4O1xuICAgIGhlaWdodDogNTBweDtcbiAgICBwYWRkaW5nLXRvcDogMTZweDtcbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAubGluZSB7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGxpbmUtdG9wLW9uX3NwO1xuICAgICAgICB9XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogbGluZS1ib3R0b20tb25fc3A7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmxpbmUge1xuICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICBoZWlnaHQ6IDlweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgJjo6YmVmb3JlLFxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMnB4O1xuICAgICAgfVxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGxpbmUtdG9wLW9mZl9zcDtcbiAgICAgIH1cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGxpbmUtYm90dG9tLW9mZl9zcDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmVuIHtcbiAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC43NSk7XG4gICAgfVxuICB9XG59XG4jbmF2IHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAyMDBweDtcbiAgei1pbmRleDogODg4ODtcbiAgdHJhbnNpdGlvbjogYWxsIC40cztcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgcGVyc3BlY3RpdmU6IDEyMDBweDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gICYuaXMtc2hvdyB7XG4gICAgcG9pbnRlci1ldmVudHM6IHZpc2libGU7XG4gICAgLm5hdi1pbm5lcntcbiAgICAgIC8vIHRyYW5zZm9ybTogcm90YXRlWCgwZGVnKTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gICAgfVxuICB9XG4gIC5uYXYtaW5uZXIge1xuICAgIGJhY2tncm91bmQ6ICRjLWJsYWNrO1xuICAgIHBhZGRpbmc6IDYwcHggMDtcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgdHJhbnNpdGlvbjogYWxsIC40cztcbiAgICAvLyB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuICAgIC8vIHRyYW5zZm9ybTogcm90YXRlWCgtMTAwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMSUpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcDtcbiAgfVxuICBib2R5LmlzLW5hdnNtbCAmIHtcbiAgICB0b3A6IDEyMHB4O1xuICB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQpIHtcbiAgICB0b3A6IDcwcHg7XG4gICAgJi5pcy1zaG93IHtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiB2aXNpYmxlO1xuICAgICAgLy8gLm5hdi1pbm5lcntcbiAgICAgIC8vICAgdHJhbnNmb3JtOiByb3RhdGVYKDBkZWcpO1xuICAgICAgLy8gfVxuICAgIH1cbiAgICBib2R5LmlzLW5hdnNtbCAmIHtcbiAgICAgIHRvcDogNzBweDtcbiAgICB9XG4gICAgLm5hdi1pbm5lciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDcwcHgpO1xuICAgICAgcGFkZGluZzogMzVweCAyMHB4O1xuICAgICAgLy8gdHJhbnNmb3JtOiByb3RhdGVYKC0xMTBkZWcpO1xuICAgIH1cbiAgfVxuICAubmF2LWxpc3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBsaSB7XG4gICAgICBwYWRkaW5nLXRvcDogNXB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IGZsb29yLWRlY2ltYWwoICg4MC8xMDAwKSoxMDAlICk7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgICAmLmlzLWxhc3Qge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIH1cbiAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICB9XG4gICAgICA+IGEge1xuICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICYuaW5zdGFncmFtIHtcbiAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgZmlsbDogI2ZmZjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGRsIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgZGQge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnJlYWtwb2ludCkge1xuICAgICAgbGkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwcHg7XG4gICAgICAgIH1cbiAgICAgICAgPiBhIHtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIH1cbiAgICAgICAgZGwge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICBkZCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50KSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpe1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gICAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMzBweDtcbiAgICAgICAgfVxuICAgICAgICBkbCB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgICAgICYuaW5zdGFncmFtIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4ubmF2LWxpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBsaSB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwcHg7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgICAgICYuaW5zdGFncmFtIHtcbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICBmaWxsOiAkYy1ibGFjaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50KSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbGkge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAmLmluc3RhZ3JhbSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiBCdXR0b24gU2V0dGluZ1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmJ0biB7XG4gICYtLXRleHQge1xuICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgIHNwYW46OmFmdGVyIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgYm90dG9tOiAtNHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAmLmlzLWNvbWluZyB7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICB9XG4gICAgc3BhbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6XCJcIjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYy1ibGFjaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBib3R0b206IC02cHg7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuMnM7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYtLW1vcmUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kOiAkYy1ibGFjaztcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB3aWR0aDogMzAwcHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycztcbiAgICAudGV4dCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgfVxuICAgIC5pY29uIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICAgICAgbWFyZ2luLXRvcDogM3B4O1xuICAgICAgdHJhbnNpdGlvbjogcmlnaHQgLjJzO1xuICAgICAgc3ZnIHtcbiAgICAgICAgZmlsbDogI2ZmZjtcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgb3BhY2l0eTogMC44O1xuICAgICAgLmljb24ge1xuICAgICAgICByaWdodDogMTVweDtcbiAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnJlYWtwb2ludCkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAudGV4dCB7XG4gICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgIH1cbiAgICAgIC5pY29uIHtcbiAgICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuIFdvcmtzIFNldHRpbmdcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi53b3Jrcy1pbmZvIHtcbiAgJl9fY2F0ZWdvcnkge1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4xZW07XG4gIH1cbiAgJl9fdGl0bGUge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xuICB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQpIHtcbiAgICAmX19jYXRlZ29yeSB7XG4gICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICB9XG4gICAgJl9fdGl0bGUge1xuICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIH1cbiAgfVxufVxuLnRhZ2xpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW4tdG9wOiAyNHB4O1xuICAmX190YWcge1xuICAgIG1pbi13aWR0aDogOTBweDtcbiAgICBtYXJnaW4tdG9wOiA2cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIHBhZGRpbmc6IDRweCA2cHg7XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xuICAgIGJvcmRlcjogc29saWQgMXB4ICRjLWdyYXk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQpIHtcbiAgICBtYXJnaW4tdG9wOiAxMnB4O1xuICAgICZfX3RhZyB7XG4gICAgICBtaW4td2lkdGg6IDY0cHg7XG4gICAgICBtYXJnaW4tdG9wOiA2cHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgIHBhZGRpbmc6IDNweCA0cHg7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgfVxuICB9XG59XG4ud29ya3MtbGlzdCB7XG4gIHVsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuICAmX19pdGVtIHtcbiAgICB3aWR0aDogZmxvb3ItZGVjaW1hbCggKDMwMC8xMDAwKSoxMDAlICk7XG4gICAgbWFyZ2luLXRvcDogODBweDtcbiAgICBtYXJnaW4tbGVmdDogZmxvb3ItZGVjaW1hbCggKDUwLzEwMDApKjEwMCUgKTtcbiAgICAmOm50aC1jaGlsZCgxKSxcbiAgICAmOm50aC1jaGlsZCgyKSxcbiAgICAmOm50aC1jaGlsZCgzKXtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICAgICY6bnRoLWNoaWxkKDNuKzEpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgICBhIHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyIHtcbiAgICAgICAgLndvcmtzLWxpc3RfX3Bob3RvIHtcbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjAyNSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQpIHtcbiAgICAgIHdpZHRoOiBmbG9vci1kZWNpbWFsKCAoMjYwLzU2MCkqMTAwJSApO1xuICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBmbG9vci1kZWNpbWFsKCAoNDAvNTYwKSoxMDAlICk7XG4gICAgICAmOm50aC1jaGlsZCgxKSxcbiAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgICAgfVxuICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgfVxuICAgICAgJjpudGgtY2hpbGQoM24rMSkge1xuICAgICAgICBtYXJnaW4tbGVmdDogZmxvb3ItZGVjaW1hbCggKDQwLzU2MCkqMTAwJSApO1xuICAgICAgfVxuICAgICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50KSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpe1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAmOm50aC1jaGlsZCgxKSB7bWFyZ2luLXRvcDogMDt9XG4gICAgICAmOm50aC1jaGlsZCgyKSB7bWFyZ2luLXRvcDogMzBweDt9XG4gICAgICAmOm50aC1jaGlsZCgzKSB7bWFyZ2luLXRvcDogMzBweDt9XG4gICAgICAmOm50aC1jaGlsZCgzbisxKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmX19waG90byB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjRzO1xuICAgIH1cbiAgfVxuICAmX19kZXRhaWwge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnJlYWtwb2ludCkge1xuICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICB9XG4gIH1cbiAgLndvcmtzLWluZm8ge1xuICAgICZfX2NhdGVnb3J5IHtcbiAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgIH1cbiAgICAmX190aXRsZSB7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50KSB7XG4gICAgICAmX19jYXRlZ29yeSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIH1cbiAgICAgICZfX3RpdGxlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnRhZ2xpc3Qge1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnJlYWtwb2ludCkge1xuICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgIH1cbiAgfVxuICAmX19tb3JlIHtcbiAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQpIHtcbiAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgfVxuICB9XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuIG5ld3MgU2V0dGluZ1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLm5ld3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIG1hcmdpbi1ib3R0b206IDgwcHg7XG4gIHBhZGRpbmc6IDgwcHggMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjLWJsYWNrO1xuICAubmV3cy1sZWZ0IHtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xuICB9XG4gIC5uZXdzLWxpc3Qge1xuICAgIHdpZHRoOiBmbG9vci1kZWNpbWFsKCAoNjUwLzEwMDApKjEwMCUgKTtcbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjFlbTtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgfVxuICAgIH1cbiAgICAmX19kYXRlIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICB9XG4gICAgJl9fdGV4dCB7XG4gICAgICBwYWRkaW5nLXRvcDogMC4xZW07XG4gICAgfVxuICB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIHBhZGRpbmc6IDQwcHggMDtcbiAgICAubmV3cy1sZWZ0IHtcbiAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIH1cbiAgICAubmV3cy1saXN0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyO1xuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmX19kYXRlIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLnBpY2t1cCB7XG4gIHdpZHRoOiAxMDAlO1xuICAvLyBtYXgtd2lkdGg6IDE2MDBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgLndvcmtzLWxpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAmX19pdGVtIHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDFweCk7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAycHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OlwiXCI7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6ICgxNDAvNjAwKSoxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQocmdiYSgjMDAwLDApLCByZ2JhKCMwMDAsMSkpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgIH1cbiAgICAgICY6bnRoLWNoaWxkKDEpLFxuICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgICB9XG4gICAgICAmOm50aC1jaGlsZCgzbisxKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgICAmX19kZXRhaWwge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEwMHB4KTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDUwcHg7XG4gICAgICBib3R0b206IDMycHg7XG4gICAgICB6LWluZGV4OiAyO1xuICAgIH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50KSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICZfX2l0ZW0ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXB4O1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGhlaWdodDogKDE4MC80ODApKjEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJl9fZGV0YWlsIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuICAgICAgICBsZWZ0OiAyMHB4O1xuICAgICAgICBib3R0b206IDE1cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC53b3Jrcy1pbmZvIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICAmX19jYXRlZ29yeSB7XG4gICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICB9XG4gICAgJl9fdGl0bGUge1xuICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgIH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50KSB7XG4gICAgICAmX19jYXRlZ29yeSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xNXJlbTtcbiAgICAgIH1cbiAgICAgICZfX3RpdGxlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNnB4O1xuICAgICAgICBmb250LXNpemU6IDEuNDVyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC50YWdsaXN0IHtcbiAgICBtYXJnaW4tdG9wOiAxNnB4O1xuICAgICZfX3RhZyB7XG4gICAgICBib3JkZXI6IHNvbGlkIDFweCAkYy1ncmF5O1xuICAgIH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50KSB7XG4gICAgICBtYXJnaW4tdG9wOiAycHg7XG4gICAgfVxuICB9XG59IiwiLm1vZGFhbC13cmFwcGVyIHtcbiAgei1pbmRleDogMTAwMDA7XG4gIC5tb2RhYWwtY29udGFpbmVyIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG59XG4ubW9kYWFsLWltYWdlIHtcbiAgLm1vZGFhbC1pbm5lci13cmFwcGVyIHtcbiAgICBwYWRkaW5nLXRvcDogMTAwcHg7XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTQwcHgpIHtcbiAgICAgIC5tb2RhYWwtZ2FsbGVyeS1jb250cm9sIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgjZmZmLDAuOCk7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICY6OmJlZm9yZSxcbiAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYy1ibGFjaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgcGMge1xuICAgICAgcGFkZGluZy10b3A6IDYwcHg7XG4gICAgICAubW9kYWFsLWNsb3NlIHtcbiAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogLTUwcHg7XG4gICAgICAgICY6OmJlZm9yZSxcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICB0b3A6IDRweDtcbiAgICAgICAgfVxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5tb2RhYWwtb3ZlcmxheSB7XG4gIHotaW5kZXg6IDk5OTk7XG59XG4ubW9kYWFsLWdhbGxlcnktY29udHJvbCB7XG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICRjLWJsYWNrO1xuICB9XG59XG4ubW9kYWFsLWNsb3NlIHtcbiAgd2lkdGg6IDEwMHB4O1xuICBoZWlnaHQ6IDEwMHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAtMTAwcHg7XG4gIHRvcDogLTEwMHB4O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICAubW9kYWFsLXdyYXBwZXIgJiB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgfVxuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkYy1ibGFjaztcbiAgICBsZWZ0OiA1MCU7XG4gICAgd2lkdGg6IDJweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gIH1cbiAgJjo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNjVkZWcpO1xuICB9XG4gICY6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg2NWRlZyk7XG4gIH1cbiAgJjpob3ZlciB7XG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjLWJsYWNrO1xuICAgIH1cbiAgfVxuICBzcGFuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICBjb2xvcjogJGMtYmxhY2s7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xuICAgIGNsaXA6IGF1dG87XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjA1ZW07XG4gICAgbWFyZ2luLXRvcDogNXB4O1xuICB9XG59XG4ubW9kYWFsLWdhbGxlcnktY29udHJvbCB7XG4gIGhlaWdodDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgJjpmb2N1cywmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKCNmZmYsMC4xKTtcbiAgfVxufVxuLm1vZGFhbC1nYWxsZXJ5LXByZXYge1xuICB3aWR0aDogNTBweDtcbn1cbi5tb2RhYWwtZ2FsbGVyeS1wcmV2LWlubmVyIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuLm1vZGFhbC1nYWxsZXJ5LW5leHQtaW5uZXIge1xuICB3aWR0aDogY2FsYygxMDAlICsgNTBweCk7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAyMHB4O1xuICB9XG59XG4ubW9kYWFsLWdhbGxlcnktY29udHJvbDo6YmVmb3JlLFxuLm1vZGFhbC1nYWxsZXJ5LWNvbnRyb2w6OmFmdGVyIHtcbiAgdG9wOiA1MCU7XG59XG5cbi53b3Jrcy1kZXRhaWwge1xuICAvLyAmLmlzLW5hdnNtbCAud29ya3MtdmlzdWFsIGZpZ3VyZSB7XG4gIC8vICAgdG9wOiAxMjBweDtcbiAgLy8gfVxuICAmLm1vYmlsZSB7XG4gICAgLndvcmtzLXBob3RvbGlzdCB7XG4gICAgICBsaSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBhIHtcbiAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAud29ya3MtdmlzdWFsIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDkwMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGZpZ3VyZSB7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiA5MDBweDtcbiAgICAgIC8vIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIC8vIHRvcDogMjAwcHg7XG4gICAgICAvLyBsZWZ0OiAwO1xuICAgICAgLy8gei1pbmRleDogLTE7XG4gICAgICAvLyB0cmFuc2l0aW9uOiBhbGwgLjRzO1xuICAgIH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50KSB7XG4gICAgICBoZWlnaHQ6IDc1dnc7XG4gICAgICBmaWd1cmUge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICZfX2NvbnRlbnQge1xuICAgIG1hcmdpbi1ib3R0b206IDEwMHB4O1xuICAgIHBhZGRpbmc6IDgwcHggMCAxMDBweDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGMtYmxhY2s7XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnJlYWtwb2ludCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgICAgIHBhZGRpbmc6IDQwcHggMCA0NXB4O1xuICAgIH1cbiAgfVxuICAud29ya3MtcGhvdG9saXN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICAgIGxpIHtcbiAgICAgIHdpZHRoOiBmbG9vci1kZWNpbWFsKCAoNDgwLzEwMDApKjEwMCUgKTtcbiAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgICAmOm50aC1jaGlsZChldmVuKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBmbG9vci1kZWNpbWFsKCAoNDAvMTAwMCkqMTAwJSApO1xuICAgICAgfVxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIHBjIHtcbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogKDQwLzEwMDApKjEwMCU7XG4gICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQpIHtcbiAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgICBsaSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG4gICAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5hYm91dCB7XG4gIC5hYm91dC1uYXYge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiA4MHB4IDA7XG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogMCAyMHB4O1xuICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC4xZW07XG4gICAgICBzcGFuIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OlwiXCI7XG4gICAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGMtYmxhY2s7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjLWJsYWNrO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHRvcDogY2FsYyg1MCUgLSA3cHgpO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG4gIC5hYm91dC1jb250ZW50cyB7XG4gICAgLnVuZGVyLWNvbnRlbnQge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjLWJsYWNrO1xuICAgIH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50KSB7XG4gICAgICAudW5kZXItY29udGVudCB7XG4gICAgICAgICY6bnRoLW9mLXR5cGUoMSkge1xuICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmFib3V0LXdvcmtmbG93IHtcbiAgICBkbCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgbGluZS1oZWlnaHQ6IDI7XG4gICAgICBkdCxkZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICY6bnRoLW9mLXR5cGUoMSkge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGR0IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgY29udGVudDpcIlwiO1xuICAgICAgICAgIGJvcmRlci10b3A6IDhweCBzb2xpZCAjY2NjO1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiA2cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiA2cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICB0b3A6IGNhbGMoNTAlICsgMjJweCk7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC02cHg7XG4gICAgICAgIH1cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRjLWdyYXkyO1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgICBwYWRkaW5nOiA0cHg7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjFlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgZGQge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTIwcHgpO1xuICAgICAgfVxuICAgIH1cbiAgICAmX19hZnRlciB7XG4gICAgICBtYXJnaW4tdG9wOiAyNHB4O1xuICAgICAgYm9yZGVyOiBzb2xpZCAxcHggJGMtZ3JheTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDRweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50KSB7XG4gICAgICBkbCB7XG4gICAgICAgIGR0LGRkIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICY6bnRoLW9mLXR5cGUoMSkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZHQge1xuICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6XCJcIjtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDZweCBzb2xpZCAjY2NjO1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgdG9wOiBjYWxjKDUwJSArIDE1cHgpO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC00cHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiA0cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGRkIHtcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gNzBweCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICZfX2FmdGVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgcGFkZGluZzogOHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuYWJvdXQtcHJvZmlsZSB7XG4gICAgJl9fYmxvY2sge1xuICAgICAgbWFyZ2luLXRvcDogODBweDtcbiAgICAgICY6bnRoLW9mLXR5cGUoMSkge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgfVxuICAgIH1cbiAgICAmX19uYW1lIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgLmpwIHtcbiAgICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgIH1cbiAgICAgIC5lbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgJl9faGlzdG9yeSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgICAgZHQge1xuICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgIH1cbiAgICAgIGRkIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDYwcHgpO1xuICAgICAgfVxuICAgIH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicmVha3BvaW50KSB7XG4gICAgICAmX19ibG9jayB7XG4gICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgICAgICY6bnRoLW9mLXR5cGUoMSkge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICZfX25hbWUge1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgLmpwIHtcbiAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICB9XG4gICAgICAgIC5lbiB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICZfX2hpc3Rvcnkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyO1xuICAgICAgICBkdCB7XG4gICAgICAgICAgd2lkdGg6IDQycHg7XG4gICAgICAgIH1cbiAgICAgICAgZGQge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0MnB4KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAucHVibGljYXRpb24tbGlzdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgbGkge1xuICAgICAgd2lkdGg6IGZsb29yLWRlY2ltYWwoICgzMDAvNjUwKSoxMDAlICk7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICBtYXJnaW4tbGVmdDogZmxvb3ItZGVjaW1hbCggKDUwLzY1MCkqMTAwJSApO1xuICAgICAgfVxuICAgICAgJjpudGgtY2hpbGQoMSksXG4gICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG4gICAgfVxuICAgICZfX3Bob3RvIHtcbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgICAmX19pbmZvIHtcbiAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgfVxuICAgICZfX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQpIHtcbiAgICAgIGxpIHtcbiAgICAgICAgd2lkdGg6IGZsb29yLWRlY2ltYWwoICgyNjAvNTYwKSoxMDAlICk7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiBmbG9vci1kZWNpbWFsKCAoNDAvNTYwKSoxMDAlICk7XG4gICAgICAgIH1cbiAgICAgICAgJjpudGgtY2hpbGQoMSksXG4gICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmX19pbmZvIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTJweDtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgfVxuICAgICAgJl9fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCJAY2hhcnNldCBcInV0Zi04XCI7XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vICBGb3VuZGF0aW9uXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5AaW1wb3J0IFwiZm91bmRhdGlvbi9fbWl4aW5zLnNjc3NcIjtcbkBpbXBvcnQgXCJmb3VuZGF0aW9uL19yZXNldC5zY3NzXCI7XG5AaW1wb3J0IFwiZm91bmRhdGlvbi9fc2V0dGluZy5zY3NzXCI7XG5AaW1wb3J0IFwiZm91bmRhdGlvbi9fYmFzZS5zY3NzXCI7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vICBDb21wb3JuZW50XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AaW1wb3J0IFwiY29tcG9ybmVudC9fY29tbW9uLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb3JuZW50L19oZWFkZXIuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvcm5lbnQvX2Zvb3Rlci5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9ybmVudC9fbmF2LnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb3JuZW50L19idXR0b24uc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvcm5lbnQvX3dvcmtzLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb3JuZW50L19uZXdzLnNjc3NcIjtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gIFBhZ2Vcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkBpbXBvcnQgXCJwYWdlL190b3Auc2Nzc1wiO1xuQGltcG9ydCBcInBhZ2UvX3dvcmtzLWRldGFpbC5zY3NzXCI7XG5AaW1wb3J0IFwicGFnZS9fYWJvdXQuc2Nzc1wiO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyAgU3ByaXRlIFNWR1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLyogLS0tLS0tLS0tLSBTcHJpdGUgU1ZHIFNUQVJUIC0tLS0tLS0tLS0gKi9cbkBpbXBvcnQgXCJfc3ByaXRlLnNjc3NcIjtcbi8qIC0tLS0tLS0tLS0gU3ByaXRlIFNWRyBFTkQgLS0tLS0tLS0tLSAqL1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyAgQU5JTUFUSU9OXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AaW1wb3J0IFwiZm91bmRhdGlvbi9fYW5pbWF0aW9uLnNjc3NcIjsiLCIlc3ZnLWNvbW1vbiB7XG5cdGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9zcHJpdGUtYmcuc3ZnXCIpIG5vLXJlcGVhdDtcbn1cblxuLnN2Zy1pY29uX2Fycm93IHtcblx0QGV4dGVuZCAlc3ZnLWNvbW1vbjtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogNjguMzU0NDMwMzc5NzQ2ODMlIDM3LjUlO1xufVxuXG4uc3ZnLWljb25fYXJyb3dfZGltcyB7XG5cdHdpZHRoOiAzMXB4O1xuXHRoZWlnaHQ6IDdweDtcbn1cblxuLnN2Zy1pY29uX2luc3RhZ3JhbSB7XG5cdEBleHRlbmQgJXN2Zy1jb21tb247XG5cdGJhY2tncm91bmQtcG9zaXRpb246IDUwLjQyMDE2ODA2NzIyNjg5JSA2My41MDM2NDk2MzUwMzY0OTYlO1xufVxuXG4uc3ZnLWljb25faW5zdGFncmFtX2RpbXMge1xuXHR3aWR0aDogMzBweDtcblx0aGVpZ2h0OiAzMHB4O1xufVxuXG4uc3ZnLWxvZ28ge1xuXHRAZXh0ZW5kICVzdmctY29tbW9uO1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG59XG5cbi5zdmctbG9nb19kaW1zIHtcblx0d2lkdGg6IDI2Ny40NDRweDtcblx0aGVpZ2h0OiA2MHB4O1xufVxuXG4uc3ZnLWxvZ29fdmVydGljYWwge1xuXHRAZXh0ZW5kICVzdmctY29tbW9uO1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDk5LjUzMzg0OTgwMzQyMDY0JTtcbn1cblxuLnN2Zy1sb2dvX3ZlcnRpY2FsX2RpbXMge1xuXHR3aWR0aDogMTIwcHg7XG5cdGhlaWdodDogMTA2LjcxOXB4O1xufVxuXG4uc3ZnLXBhZ2V0b3Age1xuXHRAZXh0ZW5kICVzdmctY29tbW9uO1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1My4wOTczNDUxMzI3NDMzNjQlIDQyLjg1NzE0Mjg1NzE0Mjg1NCU7XG59XG5cbi5zdmctcGFnZXRvcF9kaW1zIHtcblx0d2lkdGg6IDQycHg7XG5cdGhlaWdodDogMjdweDtcbn1cblxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIEFuaW1hdGlvblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5Aa2V5ZnJhbWVzIGZhZGUtaW4ge1xuICAwJSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDElIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBNb3ZlRG93biB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbiAgNDkuOSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuQGtleWZyYW1lcyBNb3ZlRG93bkluZmkge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICA3NC45JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgNzUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgTW92ZVVwIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuICA0OS45JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgTW92ZVJpZ2h0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuICA0OS45JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgTW92ZUxlZnQge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG4gIDQ5LjklIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyByZXZlYWx7XG4gIDAle1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApIHNrZXcoLTM3ZGVnKSBzY2FsZVgoMCk7XG4gIH1cbiAgMC4wMDAxJSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcbiAgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApIHNrZXcoLTM3ZGVnKSBzY2FsZVgoMSk7XG4gIH1cbiAgNTAuMDAwMSUge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xuICB9XG4gIDEwMCV7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQ7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApIHNrZXcoLTM3ZGVnKSBzY2FsZVgoMCk7XG4gIH1cbn0iXX0= */
