@charset "UTF-8";
:root {
	--key-blue01:#0f5094;
	--key-text01:#0f5094;
}

/* 본고딕 Thin */
@font-face {
	font-family: "NotoSansCJKkr";
	font-style: normal;
	font-weight: 200;
	src: url("../../common/webfont/NotoSansKR-Thin.woff") format("woff"), url("../../common/webfont/NotoSansKR-Thin.woff2") format("woff2"), url("../../common/webfont/NotoSansKR-Thin.otf") format("opentype");
}
/* 본고딕 Light */
@font-face {
	font-family: "NotoSansCJKkr";
	font-style: normal;
	font-weight: 300;
	src: url("../../common/webfont/NotoSansKR-Light.woff") format("woff"), url("../../common/webfont/NotoSansKR-Light.woff2") format("woff2"), url("../../common/webfont/NotoSansKR-Light.otf") format("opentype");
}
/* 본고딕 Regular */
@font-face {
	font-family: "NotoSansCJKkr";
	font-style: normal;
	font-weight: 400;
	src: url("../../common/webfont/NotoSansKR-Regular.woff") format("woff"), url("../../common/webfont/NotoSansKR-Regular.woff2") format("woff2"), url("../../common/webfont/NotoSansKR-Regular.otf") format("opentype");
}
/* 본고딕 Medium */
@font-face {
	font-family: "NotoSansCJKkr";
	font-style: normal;
	font-weight: 500;
	src: url("../../common/webfont/NotoSansKR-Medium.woff") format("woff"), url("../../common/webfont/NotoSansKR-Medium.woff2") format("woff2"), url("../../common/webfont/NotoSansKR-Medium.otf") format("opentype");
}
/* 본고딕 Bold */
@font-face {
	font-family: "NotoSansCJKkr";
	font-style: normal;
	font-weight: 700;
	src: url("../../common/webfont/NotoSansKR-Bold.woff") format("woff"), url("../../common/webfont/NotoSansKR-Bold.woff2") format("woff2"), url("../../common/webfont/NotoSansKR-Bold.otf") format("opentype");
}
/* 양평 normal */
@font-face {
	font-family: "YangPyeongM";
	font-style: normal;
	font-weight: 500;
	src: url("../../common/webfont/YangPyeongM.woff") format("woff");
}
/* 양평 Bold */
@font-face {
	font-family: "YangPyeongB";
	font-style: normal;
	font-weight: 700;
	src: url("../../common/webfont/YangPyeongB.woff") format("woff");
}
/* 양평 Light */
@font-face {
	font-family: "YangPyeongL";
	font-style: normal;
	font-weight: 300;
	src: url("../../common/webfont/YangPyeongL.woff") format("woff");
}
@font-face {
	font-family: "RedHatDisplay";
	font-style: normal;
	font-weight: 300 900;
	font-display: swap;
	src: url("../../common/webfont/RedHatDisplay.woff2") format("woff2");
}
* {
	box-sizing: border-box;
	font-family: "Roboto", "NotoSansCJKkr", sans-serif;
	letter-spacing: -0.05em;
}

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, textarea, p, blockquote, th, td, input, select, textarea, button {
	margin: 0;
	padding: 0;
}

fieldset, img {
	border: 0 none;
}

dl, ul, ol, menu, li {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

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

input, select, textarea, button {
	vertical-align: middle;
}

input, textarea {
	-webkit-border-radius: 0;
	-webkit-appearance: none;
}

button {
	border: 0 none;
	background-color: transparent;
	cursor: pointer;
}

body {
	background: #fff;
}

html, body, th, td, input, select, textarea, button {
	font-size: 10px;
	line-height: 1.5;
	font-family: "Montserrat", "NotoSansCJKkr", sans-serif;
	color: #000;
} /* color값은 디자인가이드에 맞게사용 */
a {
	color: #000;
	text-decoration: none;
}

a:active, a:hover {
	text-decoration: none;
}

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

caption {
	font-size: 0;
}

input[type=radio] {
	width: 1px;
	height: 1px;
	font-size: 0;
	opacity: 0.01;
	overflow: hidden;
}

input[type=checkbox] {
	width: 1px;
	height: 1px;
	font-size: 0;
	opacity: 0.01;
	overflow: hidden;
}

select {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
	border-radius: 0;
	background: #fff url(../../common/images/icon_select.png) calc(100% - 9px) center no-repeat;
}

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

label {
	font-size: 0;
}

.skip .quickBtn {
	display: block;
	width: 100%;
	height: 0px;
	background: #092473;
	font-size: 15px;
	color: #fff;
	overflow: hidden;
	text-align: center;
}

.skip .quickBtn:focus {
	height: auto;
}

.hide {
	font-size: 0 !important;
	position: fixed;
	left: -5000px;
	top: 0;
}

body.noScrl {
	height: 100vh;
	overflow: hidden;
}

/* ---------------------------------------- 기본 레이아웃 ---------------------------------------- */
.lytLayout {
	width: 100%;
}
.lytLayout .layoutArea {
	width: 100%;
}
.lytLayout .layoutArea .layoutTop {
	width: 100%;
}
.lytLayout .layoutArea .layoutContainer .layoutMainCont {
	width: 100%;
}
.lytLayout .layoutArea .layoutContainer .layoutSubVisual {
	width: 100%;
}
.lytLayout .layoutArea .layoutContainer .layoutSubCont {
	width: 100%;
}
.lytLayout .layoutArea .layoutContainer .subContArea {
	width: 100%;
}
.lytLayout .layoutArea .layoutContainer .layoutCont {
	width: 100%;
}
.lytLayout .layoutArea .layoutContainer .layoutFloat {
	width: 100%;
}
.lytLayout .layoutArea .layoutFooter {
	width: 100%;
}

/*--------------------------------- 레이어팝업 --------------------------------*/
.modPopup.full {
	width: 100vw;
	height: 100dvh;
	position: fixed;
	left: 0;
	top: 0;
	background: #fff;
	z-index: 1000;
}
.modPopup.full.popOpen {
	display: block;
}
.modPopup.full .popupBox {
	width: 100%;
	height: 100%;
}
.modPopup.full .popTitArea {
	width: 100%;
	height: 70px;
	padding-left: 20px;
	background: #fff;
	display: flex;
	position: fixed;
	left: 0;
	top: 0;
}
.modPopup.full .popTitArea .tit {
	width: calc(100% - 60px);
	height: 100%;
	padding-left: 27px;
	font-size: 2rem;
	font-weight: 500;
	color: #000;
	line-height: 70px;
	display: inline-block;
	position: relative;
}
.modPopup.full .popTitArea .tit::after {
	content: "";
	width: 12px;
	height: 12px;
	background: url(../../images/common/ico_gnb_back.svg) center no-repeat;
	display: block;
	position: absolute;
	left: 0;
	top: 30px;
}
.modPopup.full .popTitArea .closeBtn {
	width: 60px;
	height: 100%;
	font-size: 0;
	background: url(../../images/common/ico_close.svg) center no-repeat;
}
.modPopup.full .popContArea {
	height: 100%;
	padding-top: 94px;
	padding-bottom: 60px;
	overflow-y: auto;
}

/*--------------------------------- 토스트팝업 --------------------------------*/
.modTostPop {
	width: 100%;
	height: 150vh;
	display: none;
	position: fixed;
	left: 0;
	bottom: 0;
	z-index: 1000;
}
.modTostPop .popupDim {
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.5);
	font-size: 0;
	position: fixed;
	left: 0;
	bottom: 0;
	z-index: 1000;
	animation: 0.3s hideDim;
	animation-fill-mode: forwards;
}
.modTostPop .popupArea {
	width: 100%;
	height: auto;
	max-height: calc(100dvh - 20px);
	display: flex;
	justify-content: center;
	position: absolute;
	left: 0;
	bottom: -100%;
	z-index: 1001;
	animation: 0.5s downPop;
	animation-fill-mode: forwards;
}
.modTostPop .popupArea .popupBox {
	width: 100%;
	max-width: 600px;
	height: 100%;
	max-height: calc(100dvh - 20px);
	padding: 20px;
	border-radius: 25px 25px 0 0;
	background: #fff;
}
.modTostPop .popupArea .popupBox .popTitArea {
	width: 100%;
	padding: 20px 0;
	position: relative;
}
.modTostPop .popupArea .popupBox .popTitArea .tit {
	height: 27px;
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1.5;
	color: #000;
}
.modTostPop .popupArea .popupBox .popTitArea .closeBtn {
	width: 30px;
	height: 30px;
	font-size: 0;
	background: url(../../images/common/ico_20_close.svg) center no-repeat;
	position: absolute;
	top: -5px;
	right: -5px;
}
.modTostPop .popupArea .popupBox .popContArea {
	width: 100%;
	height: calc(100% - 67px);
	max-height: calc(100dvh - 127px);
	overflow-y: auto;
	/*-------------------- 은행선택 내용 --------------------*/
	/*-------------------- // 은행선택 내용 --------------------*/
	/*-------------------- 예금주 일치&불일치 내용 --------------------*/
	/*-------------------- //예금주 일치&불일치 내용 --------------------*/
}
.modTostPop .popupArea .popupBox .popContArea .bankTit {
	font-size: 18px;
	color: #000;
	font-weight: 500;
	line-height: 1;
	letter-spacing: -0.45px;
	margin-bottom: 20px;
}
.modTostPop .popupArea .popupBox .popContArea .bankListCov {
	display: flex;
	flex-flow: row wrap;
	align-items: center;
	justify-content: flex-start;
	gap: 20px;
}
.modTostPop .popupArea .popupBox .popContArea .bankListCov > li {
	width: calc(50% - 20px);
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	justify-content: flex-start;
}
.modTostPop .popupArea .popupBox .popContArea .bankListCov > li > img {
	display: inline-block;
	margin-right: 10px;
}
.modTostPop .popupArea .popupBox .popContArea .bankListCov > li > span {
	font-size: 14px;
	color: #000;
	font-weight: 400;
	line-height: 1.71;
	letter-spacing: -0.35px;
}
.modTostPop .popupArea .popupBox .popContArea .accChkBox .tit {
	font-size: 18px;
	font-weight: bold;
	line-height: 2.33;
	letter-spacing: -0.45px;
	margin-bottom: 20px;
	text-align: center;
	padding-top: 20px;
}
.modTostPop .popupArea .popupBox .popContArea .accChkBox .desc {
	font-size: 14px;
	color: #000;
	font-weight: 400;
	line-height: 1.57;
	letter-spacing: -0.35px;
	margin-bottom: 20px;
	text-align: center;
}
.modTostPop .popupArea .popupBox .popContArea .accChkBox > .actCorr .tit {
	color: var(--key-blue01);
}
.modTostPop .popupArea .popupBox .popContArea .accChkBox > .actInCorr .tit {
	color: #fe5f5f;
}
.modTostPop .popupArea .popupBox .popContArea .accChkBox > .actInCorr .desc {
	margin-bottom: 10px;
}
.modTostPop .popupArea .popupBox .popContArea .accChkBox > .actInCorr .desc.ty02 {
	font-size: 12px;
	color: #999;
	font-weight: 400;
	line-height: 1.5;
	margin-bottom: 20px;
	text-align: center;
}
.modTostPop .popupArea .popupBox .popBtnArea {
	width: 100%;
	height: 90px;
	padding: 20px 0;
}
.modTostPop .popupArea .popupBox .popBtnArea .popBtn {
	width: 100%;
	height: 50px;
	line-height: 50px;
	font-size: 14px;
	color: #fff;
	font-weight: 500;
	text-align: center;
	border-radius: 10px;
}
.modTostPop .popupArea .popupBox .popBtnArea .blue {
	background: var(--key-blue01);
}
.modTostPop.popOpen {
	bottom: 0;
}
.modTostPop.popOpen .popupDim {
	animation: 0.3s showDim;
	animation-fill-mode: forwards;
}
.modTostPop.popOpen .popupArea {
	animation: 0.5s upPop;
	animation-fill-mode: forwards;
}

@keyframes showDim {
	0% {
		opacity: 0;
		visibility: block;
	}
	100% {
		opacity: 1;
	}
}
@keyframes hideDim {
	0% {
		opacity: 1;
	}
	100% {
		opacity: 0;
		visibility: hidden;
	}
}
@keyframes upPop {
	0% {
		bottom: -100%;
	}
	100% {
		bottom: 0;
	}
}
@keyframes downPop {
	0% {
		bottom: 0;
	}
	100% {
		bottom: -100%;
	}
}
/* -------------------------------- 탭 -------------------------------- */
.modTab {
	margin-top: 20px;
}
.modTab:first-child {
	margin-top: 0;
}
.modTab .tabBtn {
	width: 100%;
	height: 55px;
	border-radius: 27.5px;
	background: #f3f3f3;
	display: flex;
	position: relative;
}
.modTab .tabBtn::before {
	content: "";
	width: 50%;
	height: 55px;
	border-radius: 27.5px;
	background: var(--key-blue01);
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	transition: all 0.2s;
}
.modTab .tabBtn.point01::before {
	left: 0;
}
.modTab .tabBtn.point02::before {
	left: 50%;
}
.modTab .tabBtn li {
	width: 50%;
	height: 55px;
	position: relative;
}
.modTab .tabBtn li button {
	width: 100%;
	height: 100%;
	font-size: 1.4rem;
	font-weight: 500;
	color: #999;
}
.modTab .tabBtn li.active button {
	color: #fff;
}

/* ------------------------------- 상단 메뉴 영역 ------------------------------- */
.cptGnb {
	width: 100%;
	min-height: 150px;
	position: relative;
	z-index: 300;
}
.cptGnb.float .gnbArea .gnbBody {
	border-bottom: 1px solid #dcdcdc;
}
.cptGnb.float .gnbArea .gnbBody .bodyArea {
	background: #fff;
}
.cptGnb .gnbArea {
	width: 100%;
	position: fixed;
	left: 0;
	top: 0;
	/* 최상단 영역 */
	/* 상단 메뉴 영역 */
}
.cptGnb .gnbArea .gnbTop {
	width: 100%;
	min-height: 60px;
	background: #4b9ff9;
}
.cptGnb .gnbArea .gnbTop .topArea {
	width: 100%;
	padding: 10px 24px;
}
.cptGnb .gnbArea .gnbTop .topArea i {
	font-size: 2rem;
	font-style: normal;
	line-height: 1.5;
	color: #fff;
}
.cptGnb .gnbArea .gnbBody .bodyArea {
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	background: none;
	background: #fff;
}
.cptGnb .gnbArea .gnbBody .bodyArea .logo {
	width: 140px;
	height: 64px;
	padding-left: 20px;
	display: flex;
	align-items: center;
}
.cptGnb .gnbArea .gnbBody .bodyArea .logo img {
	width: 79px;
}
.cptGnb .gnbArea .gnbBody .bodyArea .menuArea {
	width: calc(100% - 50px);
	position: relative;
}
.cptGnb .gnbArea .gnbBody .bodyArea .menuArea.appli {
	width: calc(100% - 70px);
}
.cptGnb .gnbArea .gnbBody .bodyArea .menuArea.appli .menuTitle .button2Dep .text {
	padding-left: 0;
}
.cptGnb .gnbArea .gnbBody .bodyArea .menuArea.appli .menuTitle .button2Dep .text::after {
	display: none;
}
.cptGnb .gnbArea .gnbBody .bodyArea .menuArea .menuTitle {
	background: #fff;
	width: 100%;
	height: 70px;
	padding-left: 20px;
	display: flex;
	position: relative;
	align-items: center;
	column-gap: 5px;
}
.cptGnb .gnbArea .gnbBody .bodyArea .menuArea .menuTitle .button2Dep {
	text-align: left;
	display: block;
	width: 24px;
	height: 24px;
	background: url(../../images/common/ico_gnb_back.svg) center no-repeat;
}
.cptGnb .gnbArea .gnbBody .bodyArea .menuArea .menuTitle .btnDown {
	width: max-content;
	height: 100%;
	display: block;
	transition: all 0.4s;
	position: relative;
}
.cptGnb .gnbArea .gnbBody .bodyArea .menuArea .menuTitle .btnDown .text {
	height: 100%;
	font-size: 2rem;
	font-weight: 500;
	color: #000;
	line-height: 70px;
	display: inline-block;
	position: relative;
}
.cptGnb .gnbArea .gnbBody .bodyArea .menuArea .menuTitle .btnDown::after {
	content: "";
	position: absolute;
	top: 50%;
	right: -31px;
	width: 21px;
	height: 21px;
	background: url(../../images/common/ico_gnb_down.svg) center no-repeat;
	transform: rotate(0deg) translateY(-50%);
}
.cptGnb .gnbArea .gnbBody .bodyArea .menuArea.active .dropDownMenu {
	display: block;
}
.cptGnb .gnbArea .gnbBody .bodyArea .menuArea.active .btnDown::after {
	transform: rotate(180deg) translateY(50%);
}
.cptGnb .gnbArea .gnbBody .bodyArea .menuArea .dropDownMenu {
	width: 100vw;
	height: calc(100dvh - 126px);
	overflow-y: auto;
	background: #fff;
	box-shadow: 0 7px 9px 0 rgba(0, 0, 0, 0.07);
	display: none;
	position: absolute;
	left: 0;
	top: 64px;
}
.cptGnb .gnbArea .gnbBody .bodyArea .menuArea .dropDownMenu .depth2Group {
	width: 100%;
	padding: 0 20px 20px 20px;
}
.cptGnb .gnbArea .gnbBody .bodyArea .menuArea .dropDownMenu .depth2Group .depth2Menu {
	width: 100%;
	border-top: 1px solid #dcdcdc;
	positioN: relative;
}
.cptGnb .gnbArea .gnbBody .bodyArea .menuArea .dropDownMenu .depth2Group .depth2Menu.add::after {
	content: "";
	width: 12px;
	height: 12px;
	background: url(../../images/common/ico_dep3_down.svg);
	transform: rotate(180deg);
	display: block;
	position: absolute;
	right: 0;
	top: 25px;
}
.cptGnb .gnbArea .gnbBody .bodyArea .menuArea .dropDownMenu .depth2Group .depth2Menu.add.on::after {
	transform: rotate(0deg);
}
.cptGnb .gnbArea .gnbBody .bodyArea .menuArea .dropDownMenu .depth2Group .depth2Menu.add.on .depth3Group {
	display: block;
}
.cptGnb .gnbArea .gnbBody .bodyArea .menuArea .dropDownMenu .depth2Group .depth2Menu.add.on .depth2Name .depth2Link {
	font-weight: 500;
	color: #000;
}
.cptGnb .gnbArea .gnbBody .bodyArea .menuArea .dropDownMenu .depth2Group .depth2Menu:first-child {
	border-top: 0;
}
.cptGnb .gnbArea .gnbBody .bodyArea .menuArea .dropDownMenu .depth2Group .depth2Menu .depth2Name .depth2Link {
	padding: 20px 0;
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 1.5;
	color: #666;
	display: block;
}
.cptGnb .gnbArea .gnbBody .bodyArea .menuArea .dropDownMenu .depth2Group .depth2Menu .depth3Group {
	display: none;
}
.cptGnb .gnbArea .gnbBody .bodyArea .menuArea .dropDownMenu .depth2Group .depth2Menu .depth3Group .depth3Menu .depth3Name {
	padding-left: 10px;
	padding-bottom: 20px;
}
.cptGnb .gnbArea .gnbBody .bodyArea .menuArea .dropDownMenu .depth2Group .depth2Menu .depth3Group .depth3Menu .depth3Link {
	font-size: 1.4rem;
	line-height: 1.5;
	font-weight: 400;
	color: #000;
}
.cptGnb .gnbArea .gnbBody .bodyArea .appliCancel {
	width: 70px;
	padding-right: 20px;
}
.cptGnb .gnbArea .gnbBody .bodyArea .appliCancel button {
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 70px;
	color: #666;
	border: 0;
	background: transparent;
}
.cptGnb .gnbArea .gnbBody .bodyArea .myPage {
	width: calc(100% - 190px);
	display: flex;
	justify-content: flex-end;
}
.cptGnb .gnbArea .gnbBody .bodyArea .myPage .link {
	width: 40px;
	height: 64px;
	font-size: 0;
	background: url(../../images/common/icon_my.svg) center no-repeat;
	display: block;
}
.cptGnb .gnbArea .gnbBody .bodyArea .allMenuBtn {
	width: 50px;
	height: 70px;
	border: 0;
	position: relative;
	outline: none;
}
.cptGnb .gnbArea .gnbBody .bodyArea .allMenuBtn span {
	height: 2px;
	font-size: 0;
	background: #444;
	display: block;
	position: absolute;
	right: 20px;
	transition-duration: 0.4s;
}
.cptGnb .gnbArea .gnbBody .bodyArea .allMenuBtn span:nth-child(1) {
	width: 20px;
	top: 26px;
}
.cptGnb .gnbArea .gnbBody .bodyArea .allMenuBtn span:nth-child(2) {
	width: 20px;
	top: 34px;
}
.cptGnb .gnbArea .gnbBody .bodyArea .allMenuBtn span:nth-child(3) {
	width: 20px;
	top: 42px;
}
.cptGnb .gnbArea .gnbBody .bodyArea .allMenuCov {
	display: none;
	position: fixed;
	top: 0px;
	left: 0;
	width: 100%;
	height: 100%;
	background: #fff;
	padding: 20px 0;
}
.cptGnb .gnbArea .gnbBody .bodyArea .allMenuCov .topArea {
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 20px;
	padding: 0 20px;
}
.cptGnb .gnbArea .gnbBody .bodyArea .allMenuCov .topArea > .logo {
	padding-left: 0;
	width: 120px;
	height: auto !important;
}
.cptGnb .gnbArea .gnbBody .bodyArea .allMenuCov .topArea .btnOption {
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	justify-content: flex-start;
	gap: 20px;
}
.cptGnb .gnbArea .gnbBody .bodyArea .allMenuCov .topArea .btnOption .mypageIcon > a {
	display: block;
	width: 20px;
	height: 20px;
	font-size: 0;
	background: url(../../images/common/icon_my.svg) center no-repeat;
}
.cptGnb .gnbArea .gnbBody .bodyArea .allMenuCov .topArea .btnOption .closeIcon > a {
	display: block;
	width: 20px;
	height: 20px;
	font-size: 0;
	background: url(../../images/common/allmenuCls.png) center no-repeat;
}
.cptGnb .gnbArea .gnbBody .bodyArea .allMenuCov .menuArea {
	width: 100%;
	position: relative;
	height: 100%;
	overflow-y: scroll;
}
.cptGnb .gnbArea .gnbBody .bodyArea .allMenuCov .menuArea > ul > li {
	border-bottom: 10px solid #f3f3f3;
	padding-bottom: 30px;
	margin-bottom: 30px;
}
.cptGnb .gnbArea .gnbBody .bodyArea .allMenuCov .menuArea > ul > li:first-of-type {
	padding-top: 30px;
}
.cptGnb .gnbArea .gnbBody .bodyArea .allMenuCov .menuArea > ul > li:last-of-type {
	border-bottom: 0;
}
.cptGnb .gnbArea .gnbBody .bodyArea .allMenuCov .menuArea > ul > li .menuTitle {
	padding: 0 20px;
	height: auto;
	display: block;
	margin-bottom: 30px;
}
.cptGnb .gnbArea .gnbBody .bodyArea .allMenuCov .menuArea > ul > li .menuTitle > p {
	font-size: 18px;
	color: #000;
	font-weight: bold;
	line-height: 1;
	letter-spacing: -0.45px;
}
.cptGnb .gnbArea .gnbBody .bodyArea .allMenuCov .menuArea > ul > li .menuSub > ul {
	display: flex;
	flex-flow: column;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 30px;
}
.cptGnb .gnbArea .gnbBody .bodyArea .allMenuCov .menuArea > ul > li .menuSub > ul > li {
	width: 100%;
}
.cptGnb .gnbArea .gnbBody .bodyArea .allMenuCov .menuArea > ul > li .menuSub > ul > li h3 {
	font-size: 16px;
	color: #000;
	font-weight: 400;
	letter-spacing: -0.4px;
}
.cptGnb .gnbArea .gnbBody .bodyArea .allMenuCov .menuArea > ul > li .menuSub > ul > li h3 > a {
	padding: 0 20px;
	display: block;
	width: 100%;
	height: 100%;
}
.cptGnb .gnbArea .gnbBody .bodyArea .allMenuCov .menuArea > ul > li .menuSub .menu3rd h3 a {
	display: block;
	width: 100%;
	position: relative;
}
.cptGnb .gnbArea .gnbBody .bodyArea .allMenuCov .menuArea > ul > li .menuSub .menu3rd h3 a::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 20px;
	width: 12px;
	height: 12px;
	background: url(../../images/common/ico_btn_down.png) 50% 50% no-repeat;
	transform: rotate(0) translateY(-50%);
}
.cptGnb .gnbArea .gnbBody .bodyArea .allMenuCov .menuArea > ul > li .menuSub .menu3rd h3 a.active::after {
	transform: rotate(180deg) translateY(50%);
}
.cptGnb .gnbArea .gnbBody .bodyArea .allMenuCov .menuArea > ul > li .menuSub .menu3rd ul {
	background: #f6f7f9;
	padding: 15px 30px;
	margin-top: 20px;
	display: none;
}
.cptGnb .gnbArea .gnbBody .bodyArea .allMenuCov .menuArea > ul > li .menuSub .menu3rd ul li {
	width: 100%;
	margin-bottom: 30px;
}
.cptGnb .gnbArea .gnbBody .bodyArea .allMenuCov .menuArea > ul > li .menuSub .menu3rd ul li a {
	font-size: 14px;
	color: #000;
	font-weight: 400;
	line-height: 1;
	letter-spacing: -0.35px;
}
.cptGnb .gnbArea .gnbBody .bodyArea .allMenuCov .menuArea > ul > li .menuSub .menu3rd ul li:last-of-type {
	margin-bottom: 0;
}

/* 메인,서브 상단 */
/* ------------------------------- 메인 상단 카피영역 ------------------------------- */
.cptMainCopy {
	width: 100%;
}
.cptMainCopy .copyArea h1 {
	font-family: "YangPyeongM";
	font-size: 5rem;
	font-weight: 400;
	line-height: 1;
	color: #000;
	display: block;
	transform-origin: left;
	transform: scaleX(0.97);
}
.cptMainCopy .copyArea h1 .c_blue {
	font-family: "YangPyeongM";
	color: var(--key-blue01);
}
.cptMainCopy .copyArea i {
	margin-top: 5px;
	font-size: 1.6rem;
	font-style: normal;
	line-height: 1.5;
	color: #444;
	display: block;
}

/* ------------------------------- 메인 비주얼 영역 ------------------------------- */
.cptMainVisual {
	width: 100%;
	margin-top: -20px;
}
.cptMainVisual .visualArea {
	width: 100%;
}
.cptMainVisual .visualArea .visualMain {
	width: 100%;
	padding: 0 20px;
}
.cptMainVisual .visualArea .visualMain .bnBox {
	width: 100%;
	height: 100%;
	border-radius: 25px;
	box-shadow: 0 5px 15px 0 rgba(0, 0, 0, 0.35), inset -10px -10px 40px 0 rgba(0, 31, 230, 0.95);
	background: var(--key-blue01);
	padding: 30px;
	position: relative;
	overflow: hidden;
}
.cptMainVisual .visualArea .visualMain .bnBox > * {
	position: relative;
	z-index: 2;
}
.cptMainVisual .visualArea .visualMain .bnBox > i {
	font-size: 16px;
	color: #fff;
	font-weight: 500;
	font-style: normal;
}
.cptMainVisual .visualArea .visualMain .bnBox > h1 {
	font-size: 38px;
	color: #fff;
	font-weight: 500;
	font-family: "YangPyeongM";
	line-height: 1;
	margin: 5px 0 10px;
	letter-spacing: -2.85px;
}
.cptMainVisual .visualArea .visualMain .bnBox > ul {
	width: 100%;
}
.cptMainVisual .visualArea .visualMain .bnBox > ul li {
	width: max-content;
	padding: 9px 14px 8px;
	background: #014ec2;
	border-radius: 17.5px;
	font-size: 12px;
	color: #fff;
	font-weight: 400;
	text-align: center;
	line-height: 1;
	margin-bottom: 5px;
}
.cptMainVisual .visualArea .visualMain .bnBox > ul li:last-of-type {
	margin-bottom: 0;
}
.cptMainVisual .visualArea .visualMain .bnBox > .btnStartLoan {
	display: block;
	margin-top: 33px;
	width: 100%;
	padding: 16px 0;
	text-align: center;
	font-size: 16px;
	color: #fff;
	font-weight: 500;
	background: #4b9ff9;
	border: 2px solid #2990ff;
	border-radius: 27.5px;
}
.cptMainVisual .visualArea .visualMain .bnBox > img {
	position: absolute;
	bottom: -7.5rem;
	right: -3.5rem;
	z-index: 1;
}
.cptMainVisual .visualArea .visualSub {
	width: 100%;
	overflow: hidden;
}
.cptMainVisual .visualArea .visualSub .visualGroup {
	width: 100%;
	height: 310px;
	padding: 20px;
	display: flex;
	flex-wrap: nowrap;
	box-sizing: border-box;
}
.cptMainVisual .visualArea .visualSub .visualGroup .item {
	width: 230px;
	height: 260px;
	margin-right: 20px;
	border-radius: 25px;
	background: #fff;
	box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.13);
	position: relative;
}
.cptMainVisual .visualArea .visualSub .visualGroup .item .bnBox {
	width: 100%;
	height: 100%;
	padding: 20px;
	position: relative;
	z-index: 2;
}
.cptMainVisual .visualArea .visualSub .visualGroup .item .bnBox .headline {
	font-size: 2rem;
	font-weight: 500;
	line-height: 1.3;
	color: #000;
	display: block;
}
.cptMainVisual .visualArea .visualSub .visualGroup .item .bnBox .desc {
	font-size: 1.2rem;
	font-style: normal;
	font-weight: 500;
	color: #666;
	line-height: 1.5;
	display: block;
	position: relative;
}
.cptMainVisual .visualArea .visualSub .visualGroup .item .bnBox .link {
	width: calc(100% - 40px);
	height: 40px;
	font-size: 14px;
	line-height: 39px;
	color: #000;
	text-align: center;
	border-radius: 20px;
	background: #dbecff;
	position: absolute;
	left: 20px;
	bottom: 20px;
}
.cptMainVisual .visualArea .visualSub .visualGroup .item.type01 {
	background: #f1f8ff url(../../images/main/vsl01_bg.png) center calc(100% - 53px)/160px no-repeat;
}
.cptMainVisual .visualArea .visualSub .visualGroup .item.type02 {
	background: #f1f8ff url(../../images/main/vsl02_bg.png) center calc(100% - 36px)/126px no-repeat;
}

/* ------------------------------- 메인 배너 영역 ------------------------------- */
.cptMainBanner {
	width: 100%;
	padding-top: 10px;
	background: #f3f3f3;
}
.cptMainBanner .bannerArea {
	width: 100%;
	padding: 30px 20px 0;
	background: #fff;
}
.cptMainBanner .bannerArea .swiperCont {
	width: 100%;
	height: auto;
	border-radius: 20px;
	position: relative;
	overflow: hidden;
}
.cptMainBanner .bannerArea .swiperCont .swiper-wrapper .swiper-slide .link {
	width: 100%;
	padding-top: 56.716%;
	position: relative;
	display: block;
}
.cptMainBanner .bannerArea .swiperCont .swiper-wrapper .swiper-slide .link img {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
}
.cptMainBanner .bannerArea .swiperCont .swiper-pagination {
	padding-left: 21px;
	display: flex;
	position: absolute;
	left: 0;
	bottom: 24px;
}
.cptMainBanner .bannerArea .swiperCont .swiper-pagination .swiper-pagination-bullet {
	width: 6px;
	height: 6px;
	margin: 0 2.5px;
	border-radius: 3px;
	background: #cbcbcb;
	opacity: 1;
	transition: width 0.5s;
}
.cptMainBanner .bannerArea .swiperCont .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
	width: 18px;
	background: #444;
}

/* ------------------------------- 메인 콘텐츠 영역 ------------------------------- */
.cptMainContbox {
	width: 100%;
	padding: 20px 20px 0 20px;
}
.cptMainContbox .contArea {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
}
.cptMainContbox .contArea .banner01 {
	width: 100%;
	height: 114px;
	padding: 20px;
	border-radius: 20px;
	background: #f4f5fa url(../../images/main/bn01_Bg.png) calc(100% - 20px) calc(100% - 23px)/60px no-repeat;
}
.cptMainContbox .contArea .banner01 .title {
	font-size: 2rem;
	font-weight: 500;
	line-height: 1.3;
	color: #000;
}
.cptMainContbox .contArea .banner01 .desc {
	padding-right: 70px;
	font-size: 1.2rem;
	font-weight: 500;
	line-height: 1.5;
	color: #666;
	opacity: 0.8;
}
.cptMainContbox .contArea .banner02 {
	width: 100%;
	margin-top: 30px;
	display: flex;
	flex-wrap: nowrap;
}
.cptMainContbox .contArea .banner02 .bnBox {
	width: 50%;
	height: 30px;
	padding-left: 48px;
	font-size: 1.6rem;
	font-weight: 500;
	color: #000;
}
.cptMainContbox .contArea .banner02 .bnBox:nth-child(1) {
	background: url(../../images/main/bn02_Bg.png) 10px center/28px no-repeat;
}
.cptMainContbox .contArea .banner02 .bnBox:nth-child(2) {
	background: url(../../images/main/bn03_Bg.png) 10px center/28px no-repeat;
}

/* ------------------------------- 메인 하단 배너 영역 ------------------------------- */
.cptFloating {
	width: 100%;
	height: 150px;
	margin-bottom: -60px;
	padding-top: 40px;
	position: relative;
}
.cptFloating .ftArea {
	width: 100%;
	padding-top: 20px;
	overflow: hidden;
	position: static;
	left: 0;
	bottom: 0;
	z-index: 200;
}
.cptFloating .ftArea .swiperCont {
	width: 100%;
	overflow: hidden;
	padding: 25px 0 25px 20px;
	border-radius: 15px 15px 0 0;
	box-shadow: 0 -3px 15px 0 rgba(0, 0, 0, 0.1);
	background: #fff;
}
.cptFloating .ftArea .swiperCont .swiper-slide {
	width: auto;
	height: 40px;
	padding: 0 14px 0 34px;
	font-size: 1.4rem;
	font-weight: 500;
	color: #000;
	line-height: 40px;
	border: solid 1px #dcdcdc;
	border-radius: 20px;
	align-content: center;
}
.cptFloating .ftArea .swiperCont .swiper-slide.type01 {
	width: 40px;
	padding: 0;
	font-size: 0;
	border: solid 1px #f8f9fb;
	background: #f2f9ff url(../../images/main/ico_home.png) center/18px no-repeat;
}
.cptFloating .ftArea .swiperCont .swiper-slide.type01 a {
	font-size: 0;
	display: block;
	width: 100%;
	height: 100%;
}
.cptFloating .ftArea .swiperCont .swiper-slide.type02 {
	border: solid 1px #f8f9fb;
	background: #f2f9ff url(../../images/main/ico_300.png) 10px center/18px no-repeat;
}
.cptFloating .ftArea .swiperCont .swiper-slide.type03 {
	border: solid 1px #f8f9fb;
	background: #f2f9ff url(../../images/main/ico_apart.png) 10px center/18px no-repeat;
}
.cptFloating .ftArea .swiperCont .swiper-slide.type04 {
	border: solid 1px #f8f9fb;
	background: #f2f9ff url(../../images/main/ico_car.png) 10px center/18px no-repeat;
}
.cptFloating .ftArea .swiperCont .swiper-slide a {
	font-size: 1.4rem;
	font-weight: 500;
	color: #000;
	line-height: 40px;
}
.cptFloating.fixed .ftArea {
	position: fixed;
}

/*2024.07.09 쿠키 바 추가*/
.cookieBar {
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	background: #fff;
	padding: 3rem;
	box-shadow: 0 -5px 15px 0 rgba(0, 0, 0, 0.1);
	z-index: 99999;
}
.cookieBar .inner {
	width: 100%;
	margin: 0 auto;
	display: flex;
	flex-flow: column;
	align-items: center;
	justify-content: space-between;
	gap: 2rem;
}
.cookieBar .inner .text {
	width: 100%;
}
.cookieBar .inner .text p {
	font-size: 1.4rem;
	color: #444;
	font-weight: 400;
	line-height: 26px;
	letter-spacing: -0.4px;
	word-break: keep-all;
}
.cookieBar .inner .text p span {
	text-decoration: underline;
}
.cookieBar .inner .buttons {
	width: 100%;
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	justify-content: center;
	column-gap: 7px;
}
.cookieBar .inner .buttons > .sett {
	width: 50%;
	font-size: 16px;
	color: #000;
	font-weight: 400;
	line-height: 50px;
	text-align: center;
	border: 1px solid #444;
	background: #fff;
	border-radius: 10px;
}
.cookieBar .inner .buttons > .act {
	width: 50%;
	font-size: 16px;
	color: #fff;
	font-weight: 400;
	line-height: 50px;
	text-align: center;
	border: 1px solid var(--key-blue01);
	background: var(--key-blue01);
	border-radius: 10px;
}

/* 메인 콘텐츠 */
.cptFooter {
	width: 100%;
	margin-top: 60px;
}
.cptFooter .footerArea {
	width: 100%;
}
.cptFooter .footerArea .footTop {
	width: 100%;
	background: #f5f5f5;
}
.cptFooter .footerArea .footTop .topArea {
	width: 100%;
	padding: 17px 20px;
}
.cptFooter .footerArea .footTop .topArea .btmMenuGroup {
	display: flex;
	flex-wrap: wrap;
}
.cptFooter .footerArea .footTop .topArea .btmMenuGroup .btmMenu {
	padding-right: 16px;
	position: relative;
}
.cptFooter .footerArea .footTop .topArea .btmMenuGroup .btmMenu::after {
	content: "";
	width: 1px;
	height: 8px;
	background: #aaa;
	display: block;
	position: absolute;
	top: 8px;
	right: 7px;
}
.cptFooter .footerArea .footTop .topArea .btmMenuGroup .btmMenu:last-child {
	padding-right: 0;
}
.cptFooter .footerArea .footTop .topArea .btmMenuGroup .btmMenu:last-child::after {
	display: none;
}
.cptFooter .footerArea .footTop .topArea .btmMenuGroup .btmMenu a {
	font-size: 0.9rem;
	color: #8b9297;
	line-height: 23px;
}
.cptFooter .footerArea .footSite {
	width: 100%;
	height: 32px;
	padding-left: 20px;
	background: #f5f5f5;
	position: relative;
	z-index: 100;
}
.cptFooter .footerArea .footSite .siteGroup {
	width: 220px;
	height: 32px;
	border-radius: 16px;
	background: #fff;
	overflow: hidden;
	position: absolute;
	left: 20px;
	top: 0;
}
.cptFooter .footerArea .footSite .siteGroup .item .linkText {
	padding: 0 50px 0 20px;
	font-size: 1.2rem;
	font-weight: 500;
	color: #111;
	line-height: 32px;
	white-space: nowrap;
	display: block;
}
.cptFooter .footerArea .footSite .siteGroup::after {
	content: "";
	width: 12px;
	height: 12px;
	background: url(../../images/common/btn_open.svg) no-repeat;
	display: block;
	transform: rotate(0deg);
	position: absolute;
	top: 10px;
	right: 20px;
}
.cptFooter .footerArea .footSite .siteGroup:hover {
	height: auto;
	overflow: auto;
}
.cptFooter .footerArea .footSite .siteGroup:hover::after {
	transform: rotate(180deg);
}
.cptFooter .footerArea .footSite .siteGroup:hover a .linkText:hover {
	background: rgba(0, 0, 0, 0.05);
}
.cptFooter .footerArea .footBody {
	width: 100%;
	background: #f5f5f5;
	padding: 20px;
}
.cptFooter .footerArea .footBody .bodyArea {
	width: 100%;
	position: relative;
}
.cptFooter .footerArea .footBody .bodyArea .footLogo {
	width: 88px;
}
.cptFooter .footerArea .footBody .bodyArea .footLogo img {
	width: 100%;
}
.cptFooter .footerArea .footBody .bodyArea .copyright {
	margin-top: 12px;
	font-size: 1.1rem;
	font-weight: 500;
	color: #444;
	line-height: 1.5;
}
.cptFooter .footerArea .footBody .bodyArea .footInfo {
	margin-top: 12px;
	font-size: 0.9rem;
	font-weight: 400;
	color: #444;
	line-height: 16px;
}
.cptFooter .footerArea .footBtm {
	width: 100%;
	background: #f5f5f5;
	padding: 0 20px 20px;
}
.cptFooter .footerArea .footBtm .btmArea {
	width: 100%;
	padding-top: 20px;
	border-top: 1px solid #dcdcdc;
}
.cptFooter .footerArea .footBtm .btmArea .text {
	font-size: 2rem;
	color: #444;
	line-height: 1.5;
}
.cptFooter .footerArea .footBtm .btmArea .btmBn {
	margin-top: 10px;
	display: flex;
	flex-wrap: nowrap;
}
.cptFooter .footerArea .footBtm .btmArea .btmBn .img {
	width: 65px;
	mix-blend-mode: darken;
}
.cptFooter .footerArea .footBtm .btmArea .btmBn .img img {
	width: 100%;
}
.cptFooter .footerArea .footBtm .btmArea .btmBn .text {
	margin-left: 10px;
	font-size: 1rem;
	color: #8b9297;
	line-height: 1.5;
	align-self: center;
}

/* 메인,서브 하단 */
/* 서브 상단 비주얼 */
/* ------------------------------- 서브 스와이프 2뎁스 ------------------------------- */
.cptSubMenu {
	padding: 10px 0 30px;
}
.cptSubMenu .subMenuArea {
	padding: 0 20px;
	overflow: hidden;
	position: relative;
}
.cptSubMenu .subMenuArea::after {
	content: "";
	width: 100%;
	height: 1px;
	background: #dcdcdc;
	position: absolute;
	left: 0;
	bottom: 0;
}
.cptSubMenu .subMenuArea .depth2Group .depth2Menu {
	width: max-content;
}
.cptSubMenu .subMenuArea .depth2Group .depth2Menu .depth2Name {
	width: max-content;
}
.cptSubMenu .subMenuArea .depth2Group .depth2Menu .depth2Name .depth2Link {
	width: max-content;
	height: 46px;
	line-height: 44px;
	font-size: 1.6rem;
	font-weight: 400;
	color: #999;
	display: block;
}
.cptSubMenu .subMenuArea .depth2Group .depth2Menu.active .depth2Name .depth2Link {
	font-weight: 500;
	color: #000;
	border-bottom: 2px solid #000;
}

/* ------------------------------- 서브 스와이프 3뎁스 ------------------------------- */
.cptSub3Depth {
	padding: 0 0 30px;
}
.cptSub3Depth .subMenuArea {
	padding: 0 20px;
	overflow: hidden;
	position: relative;
}
.cptSub3Depth .subMenuArea .depth3Group .depth3Menu {
	width: max-content;
}
.cptSub3Depth .subMenuArea .depth3Group .depth3Menu .depth3Name {
	width: max-content;
}
.cptSub3Depth .subMenuArea .depth3Group .depth3Menu .depth3Name .depth3Link {
	width: max-content;
	padding: 0 20px;
	height: 40px;
	line-height: 38px;
	font-size: 1.2rem;
	font-weight: 400;
	color: #999;
	border: 1px solid #ddd;
	border-radius: 20px;
	display: block;
}
.cptSub3Depth .subMenuArea .depth3Group .depth3Menu.active .depth3Name .depth3Link {
	color: #fff;
	border: 1px solid #000;
	background: #000;
}

/* 서브 메뉴 */
/* -------------------------------- 일반 게시판 리스트 -------------------------------- */
.cptBoardList {
	width: 100%;
}
.cptBoardList .boardArea {
	width: 100%;
}
.cptBoardList .boardArea .boardList {
	width: 100%;
	margin-top: 10px;
	padding: 0 20px;
}
.cptBoardList .boardArea .boardList .listGroup .item {
	width: 100%;
	padding: 30px 0;
	border-bottom: 1px solid #dcdcdc;
	display: flex;
}
.cptBoardList .boardArea .boardList .listGroup .item .link {
	width: 100%;
}
.cptBoardList .boardArea .boardList .listGroup .item .new {
	width: 29px;
	height: 100%;
	min-height: 24px;
	font-size: 0;
	background: url(../../images/common/ico_new.svg) left top no-repeat;
	display: block;
}
.cptBoardList .boardArea .boardList .listGroup .item .new + .link {
	width: calc(100% - 29px);
}
.cptBoardList .boardArea .boardList .listGroup .item .boardTitle {
	width: max-content;
	max-width: 100%;
	max-height: 4.8rem;
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 1.5;
	color: #000;
	overflow: hidden;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	display: -webkit-box;
	position: relative;
	/*
	&.new::after{
	    content:url(../../images/common/ico_new.svg); width:24px; height:24px; margin-left:10px; vertical-align:top;
	}
	*/
}
.cptBoardList .boardArea .boardList .listGroup .item .date {
	margin-top: 7px;
	font-size: 1.4rem;
	font-weight: 400;
	font-style: normal;
	line-height: 1.5;
	color: #666;
	display: block;
}
.cptBoardList .boardArea .boardList .listGroup .item.file .date::after {
	content: "";
	position: absolute;
	width: 1.8rem;
	height: 1.8rem;
	top: 50%;
	right: -2.5rem;
	transform: translateY(-50%);
	background: url(../../images/sub/ico_file.svg) 50% 50% no-repeat;
}

/* -------------------------------- 게시판 상세 -------------------------------- */
.cptBoardView {
	width: 100%;
}
.cptBoardView .boardArea {
	width: 100%;
	padding: 0 20px;
}
.cptBoardView .boardArea .boardTop {
	padding: 0 10px 30px;
	border-bottom: 1px solid #666;
}
.cptBoardView .boardArea .boardTop .title {
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.5;
	color: #000;
	display: block;
}
.cptBoardView .boardArea .boardTop .date {
	margin-top: 10px;
	font-size: 1.4rem;
	line-height: 1.8rem;
	color: #666;
	letter-spacing: 0.028rem;
	font-family: "RedHatDisplay";
	display: block;
}
.cptBoardView .boardArea .boardCont {
	width: 100%;
	padding: 30px 10px;
	font-size: 1.4rem;
	line-height: 2;
	border-bottom: 1px solid #dcdcdc;
}

/* -------------------------------- 자주하는 질문 -------------------------------- */
.cptAccordion {
	width: 100%;
}
.cptAccordion .arrArea {
	width: 100%;
}
.cptAccordion .arrArea .accInner {
	width: 100%;
	margin-top: 7px;
	padding: 0 20px;
}
.cptAccordion .arrArea .accInner li {
	width: 100%;
	position: relative;
	text-align: left;
}
.cptAccordion .arrArea .accInner li button {
	width: 100%;
	display: flex;
	flex-flow: row nowrap;
	align-items: flex-start;
	justify-content: space-between;
	padding: 30px 0;
	border-bottom: 1px solid #dcdcdc;
}
.cptAccordion .arrArea .accInner li button .qTxt {
	width: calc(100% - 38px);
	display: flex;
	flex-flow: row nowrap;
	align-items: baseline;
	justify-content: flex-start;
}
.cptAccordion .arrArea .accInner li button .qTxt .qMk {
	display: inline-block;
	width: 30px;
	height: 30px;
	line-height: 30px;
	background: var(--key-blue01);
	border-radius: 50%;
	text-align: center;
	font-family: "RedHatDisplay";
	font-size: 18px;
	color: #fff;
	font-weight: bold;
	letter-spacing: -0.45px;
	margin-right: 10px;
}
.cptAccordion .arrArea .accInner li button .qTxt .title {
	width: calc(100% - 30px);
	font-size: 16px;
	color: #000;
	font-weight: 500;
	line-height: 24px;
	letter-spacing: -0.4px;
	text-align: left;
}
.cptAccordion .arrArea .accInner li button .accArr {
	width: 38px;
	padding-top: 10px;
	text-align: right;
}
.cptAccordion .arrArea .accInner li button .accArr img {
	transition: all 0.4s;
}
.cptAccordion .arrArea .accInner li button .accArr img.on {
	transform: rotate(180deg);
}
.cptAccordion .arrArea .accInner li .contBox {
	display: none;
	width: 100%;
	background: #f5fcff;
	border-bottom: 1px solid #dcdcdc;
	overflow: hidden;
}
.cptAccordion .arrArea .accInner li .contBox p {
	padding: 30px 10px;
	font-size: 1.4rem;
	color: #000;
	font-weight: 400;
	line-height: 2;
	letter-spacing: -0.4px;
	word-break: keep-all;
	display: block;
}

/* -------------------------------- 임직원 행동강령 아코디언 -------------------------------- */
/*
.cptAccorCont {
    @extend .cptAccordion;
    .accInner li button {padding: 30px 20px;}
    .accInner li .contBox {padding: 27px 20px;}

    & + & {margin-top: 64px;}
}
*/
/* -------------------------------- 썸네일-상세설명 목록 -------------------------------- */
/*
.cptGallDescList {
    width: 100%;

    .gallTable {
        .gallGroup {
            width: 100%; border-top: 1px solid #000;
            .gallItem {
                & > a {
                    width: 100%; padding: 40px 20px; border-bottom: 1px solid #dcdcdc; display: flex; align-items: center; column-gap: 30px;
                    .thumArea {
                        width: 213px; height: 120px; background: #f5f5f5;
                        img {width: 100%; height: 100%; object-fit: cover;}
                    }
                    .descArea {
                        width: calc(100% - 243px);
                        .gallTit {margin-bottom: 15px; font-size: 24px; color: #000; font-weight: 700; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
                        .gallDesc {font-size: 16px; color: #000; line-height: 2;  -webkit-line-clamp: 3; -webkit-box-orient: vertical; display: -webkit-box; overflow: hidden; word-break: keep-all;}
                    }
                }
            }
        }
    }
}
*/
/* 보드 */
/* 테이블 전용 */
/* -------------------------------- 대출 소개페이지 -------------------------------- */
.cptLoanInfo {
	width: 100%;
}
.cptLoanInfo .loaninfoBox {
	width: 100%;
	padding: 0 20px;
}
.cptLoanInfo .loaninfoBox .loanTitArea {
	width: 100%;
	padding: 40px 20px;
	border-radius: 25px;
	background: #f1f8ff center 186px/200px no-repeat;
}
.cptLoanInfo .loaninfoBox .loanTitArea.loan {
	background-image: url("../../images/sub/loan_300.png");
}
.cptLoanInfo .loaninfoBox .loanTitArea.estate {
	background-image: url("../../images/sub/loan_estate.png");
	background-position: center top 180px;
	background-size: 130px;
}
.cptLoanInfo .loaninfoBox .loanTitArea.estate .summaryGroup {
	margin-top: 184px;
}
.cptLoanInfo .loaninfoBox .loanTitArea.car {
	background-image: url("../../images/sub/loan_car.png");
}
.cptLoanInfo .loaninfoBox .loanTitArea .loanTit {
	padding: 0 10px;
}
.cptLoanInfo .loaninfoBox .loanTitArea .loanTit i {
	font-size: 1.4rem;
	font-weight: 500;
	color: #444;
	display: block;
	font-style: normal;
}
.cptLoanInfo .loaninfoBox .loanTitArea .loanTit b {
	margin-top: 5px;
	font-size: 3.6rem;
	color: #000;
	font-weight: 500;
	font-family: "YangPyeongM";
	line-height: 1;
	letter-spacing: -0.075em;
	display: block;
}
.cptLoanInfo .loaninfoBox .loanTitArea .tagGroup {
	margin: 20px 10px 0 10px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	column-gap: 5px;
}
.cptLoanInfo .loaninfoBox .loanTitArea .tagGroup .tag {
	min-height: 30px;
	padding: 0 12px;
	border-radius: 15px;
	line-height: 28px;
	font-size: 1.2rem;
	font-weight: 400;
	color: #000;
	border: 1px solid #dcdcdc;
	background: #f8f9fb;
}
.cptLoanInfo .loaninfoBox .loanTitArea .summaryGroup {
	margin-top: 220px;
	display: flex;
	align-items: center;
	justify-content: space-around;
}
.cptLoanInfo .loaninfoBox .loanTitArea .summaryGroup .item {
	padding: 0 18px;
	position: relative;
}
.cptLoanInfo .loaninfoBox .loanTitArea .summaryGroup .item:nth-child(2) {
	padding-left: 21px;
}
.cptLoanInfo .loaninfoBox .loanTitArea .summaryGroup .item:nth-child(3) {
	padding-left: 34px;
}
.cptLoanInfo .loaninfoBox .loanTitArea .summaryGroup .item dl {
	text-align: center;
}
.cptLoanInfo .loaninfoBox .loanTitArea .summaryGroup .item dl dt {
	padding-top: 40px;
	font-size: 1.2rem;
	font-weight: 500;
	color: #888;
	background: center top/30px no-repeat;
}
.cptLoanInfo .loaninfoBox .loanTitArea .summaryGroup .item dl.period.per60 dt {
	background-image: url("../../images/sub/loan_ico10.png");
	background-size: 40px 40px;
	background-position-y: -5px;
}
.cptLoanInfo .loaninfoBox .loanTitArea .summaryGroup .item dl.period dt {
	background-image: url("../../images/sub/loan_ico01.png");
}
.cptLoanInfo .loaninfoBox .loanTitArea .summaryGroup .item dl.max dt {
	background-image: url("../../images/sub/loan_ico02.png");
}
.cptLoanInfo .loaninfoBox .loanTitArea .summaryGroup .item dl.step dt {
	background-image: url("../../images/sub/loan_ico03.png");
}
.cptLoanInfo .loaninfoBox .loanTitArea .summaryGroup .item dl dd {
	margin-top: 4px;
	font-size: 1.4rem;
	font-weight: 500;
	color: #000;
}
.cptLoanInfo .loaninfoBox .loanTitArea .btnArea {
	width: 100%;
	margin-top: 20px;
	text-align: center;
}
.cptLoanInfo .loaninfoBox .loanTitArea .btnArea .loanBtn {
	min-width: 100%;
	height: 65px;
	border-radius: 15px;
	font-size: 1.8rem;
	color: #fff;
	text-align: center;
	line-height: 65px;
	background: var(--key-blue01);
	display: inline-block;
}
.cptLoanInfo .loanSumm {
	padding: 10px 20px 20px;
}
.cptLoanInfo .loanSumm .needsGroup {
	display: flex;
	column-gap: 10px;
}
.cptLoanInfo .loanSumm .needsGroup .item {
	width: 50%;
	min-height: 149px;
	padding: 20px;
	border-radius: 15px;
	border: 1px solid #f3f3f3;
	background: #f8f9fb;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	column-gap: 10px;
}
.cptLoanInfo .loanSumm .needsGroup .item .needs {
	width: 100%;
	height: 100%;
	font-size: 1.4rem;
	font-weight: 500;
	color: #000;
	line-height: 1.5;
	display: block;
	background: right bottom/60px no-repeat;
}
.cptLoanInfo .loanDetail {
	border-top: 10px solid #f3f3f3;
}
.cptLoanInfo .loanDetail .dtlGroup {
	padding: 0 20px;
}
.cptLoanInfo .loanDetail .dtlItem {
	padding: 40px 10px;
	border-top: 1px solid #dcdcdc;
}
.cptLoanInfo .loanDetail .dtlItem:first-child {
	padding-top: 30px;
	border-top: 0;
}
.cptLoanInfo .loanDetail .dtlItem .detail {
	display: flex;
	flex-wrap: wrap;
}
.cptLoanInfo .loanDetail .dtlItem .detail dt {
	width: 100%;
	font-size: 1.8rem;
	font-weight: 700;
	color: #000;
}
.cptLoanInfo .loanDetail .dtlItem .detail dd {
	width: 100%;
	margin-top: 20px;
}
.cptLoanInfo .loanDetail .dtlItem .detail dd .desc {
	font-size: 1.4rem;
	color: #000;
	line-height: 2;
}
.cptLoanInfo .loanDetail .dtlItem .detail dd .desc .unit {
	width: 100%;
	display: inline-block;
}
.cptLoanInfo .loanDetail .dtlItem .detail dd .desc b {
	font-weight: 500;
}
.cptLoanInfo .loanDetail .dtlItem .detail dd .desc .tBlue {
	color: var(--key-blue01);
}
.cptLoanInfo .loanDetail .dtlItem .detail dd .adds {
	margin-top: 5px;
}
.cptLoanInfo .loanDetail .dtlItem .detail dd .adds .txt {
	font-size: 1.2rem;
	color: #444;
	line-height: 22px;
}

/* -------------------------------- 대출 소개 플로팅 -------------------------------- */
.cptLoanFloat {
	width: 100%;
	margin: 0 0 -60px 0;
	height: 141px;
	position: relative;
}
.cptLoanFloat .floatWrap, .cptLoanFloat .floatApWrap, .cptLoanFloat .floatPopWrap {
	width: 100%;
	position: fixed;
	bottom: -141px;
	left: 0;
	transition: all 0.2s;
	z-index: 150;
}
.cptLoanFloat .floatWrap::before, .cptLoanFloat .floatApWrap::before, .cptLoanFloat .floatPopWrap::before {
	display: block;
	content: "";
	width: 100%;
	height: 121px;
	border-radius: 15px 15px 0 0;
	background: rgba(255, 255, 255, 0.5);
	backdrop-filter: blur(3px);
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -9;
}
.cptLoanFloat .floatWrap.floatOn, .cptLoanFloat .floatApWrap.floatOn, .cptLoanFloat .floatPopWrap.floatOn {
	bottom: 0;
}
.cptLoanFloat .floatWrap.floatNone, .cptLoanFloat .floatApWrap.floatNone, .cptLoanFloat .floatPopWrap.floatNone {
	position: absolute;
	bottom: 0;
}
.cptLoanFloat .floatWrap.floatNone .floatBox, .cptLoanFloat .floatApWrap.floatNone .floatBox, .cptLoanFloat .floatPopWrap.floatNone .floatBox {
	box-shadow: none;
}
.cptLoanFloat .floatWrap .floatBox, .cptLoanFloat .floatApWrap .floatBox, .cptLoanFloat .floatPopWrap .floatBox {
	width: 100%;
	height: 121px;
	padding: 20px 20px 36px 20px;
	border-radius: 15px 15px 0 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
	box-shadow: 0 -5px 15px 0 rgba(0, 0, 0, 0.1);
}
.cptLoanFloat .floatWrap .floatBox .btnArea, .cptLoanFloat .floatApWrap .floatBox .btnArea, .cptLoanFloat .floatPopWrap .floatBox .btnArea {
	width: 100%;
	text-align: center;
}
.cptLoanFloat .floatWrap .floatBox .btnArea .loanBtn, .cptLoanFloat .floatApWrap .floatBox .btnArea .loanBtn, .cptLoanFloat .floatPopWrap .floatBox .btnArea .loanBtn {
	width: 100%;
	height: 65px;
	padding: 0 20px;
	border-radius: 15px;
	text-align: center;
	line-height: 65px;
	font-size: 1.8rem;
	color: #fff;
	background: var(--key-blue01);
	display: inline-block;
}
.cptLoanFloat .floatWrap .floatBox .btnArea .loanBtn.dark, .cptLoanFloat .floatApWrap .floatBox .btnArea .loanBtn.dark, .cptLoanFloat .floatPopWrap .floatBox .btnArea .loanBtn.dark {
	background: #444;
}
.cptLoanFloat .floatPopWrap.floatNone {
	position: fixed;
}
.cptLoanFloat .floatPopWrap.floatNone .floatBox {
	box-shadow: 0 -5px 15px 0 rgba(255, 255, 255, 0.1);
}

/* -------------------------------- 약관 및 대출 (3-1 ~ 3-3) -------------------------------- */
.cptTermsService {
	width: 100%;
	padding: 0 20px;
}
.cptTermsService .serviceArea {
	width: 100%;
}
.cptTermsService .serviceArea .baseMsg {
	margin-top: 20px;
	font-size: 1.4rem;
	line-height: 1.5;
	font-weight: 400;
	color: #000;
}
.cptTermsService .serviceArea .baseMsg:first-child {
	margin-top: 0;
}
.cptTermsService .serviceArea .btnArea {
	margin-top: 30px;
	width: 100%;
	display: flex;
}
.cptTermsService .serviceArea .btnArea .serviceBtn {
	width: 100%;
	height: 70px;
	padding: 0 35px;
	font-size: 1.8rem;
	font-weight: 500;
	color: #fff;
	text-align: center;
	line-height: 70px;
	border-radius: 15px;
	background: var(--key-blue01);
	display: block;
}
.cptTermsService .serviceArea .listBtnArea {
	margin-top: 40px;
}
.cptTermsService .serviceArea .listBtnArea .item {
	width: 100%;
	margin-top: 40px;
	padding: 30px 20px;
	border-radius: 25px;
	background: #f8fbff;
	transition: background 0.2s;
	position: relative;
}
.cptTermsService .serviceArea .listBtnArea .item:first-child {
	margin-top: 0;
}
.cptTermsService .serviceArea .listBtnArea .item .btnName {
	width: 100%;
	font-size: 3rem;
	font-family: "YangPyeongM";
	font-weight: 500;
	color: #000;
	line-height: 1;
	text-align: center;
}
.cptTermsService .serviceArea .listBtnArea .item .serviceBtn {
	width: 100%;
	height: 70px;
	margin-top: 20px;
	font-size: 14px;
	font-weight: 400;
	color: var(--key-blue01);
	line-height: 1.4;
	text-align: center;
	border: 2px solid #ddecfc;
	background: #fff;
	display: block;
	border-radius: 50px;
	font-size: 14px;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0 20px;
}
.cptTermsService .serviceArea .listBtnArea .item.type01 .btnName {
	padding-bottom: 157px;
	background: url(../../images/sub/bg_loan_300.png) center bottom/203px no-repeat;
}
.cptTermsService .serviceArea .listBtnArea .item.type02 .btnName {
	padding-bottom: 123px;
	background: url(../../images/sub/bg_loan_house.png) center bottom/203px no-repeat;
}
.cptTermsService .serviceArea .listBtnArea .item.type03 .btnName {
	padding-bottom: 148px;
	background: url(../../images/sub/bg_loan_car.png) center bottom/132px no-repeat;
}
.cptTermsService .serviceArea .comContTit {
	margin-bottom: 0;
}

/* -------------------------------- 약관 및 정책 (3-4 ~ 3-10) -------------------------------- */
.cptTermsPrivacy {
	width: 100%;
	padding: 0 20px;
}
.cptTermsPrivacy .privacyArea {
	width: 100%;
}
.cptTermsPrivacy .privacyArea .effectiveDate {
	margin-top: 20px;
	padding-bottom: 50px;
	position: relative;
}
.cptTermsPrivacy .privacyArea .effectiveDate::after {
	content: "";
	width: calc(100% + 40px);
	height: 10px;
	background: #f3f3f3;
	display: block;
	position: absolute;
	left: -20px;
	bottom: 10px;
}
.cptTermsPrivacy .privacyArea .effectiveDate .text {
	font-size: 1.6rem;
	line-height: 1.5;
	font-weight: 400;
	color: #000;
}
.cptTermsPrivacy .privacyArea .effectiveDate .date {
	margin-top: 10px;
}
.cptTermsPrivacy .privacyArea .effectiveDate .date select {
	width: 100%;
	height: 60px;
	padding: 0 20px;
	font-size: 1.6rem;
	line-height: 58px;
	color: #999;
	border: 1px solid #bebebe;
	border-radius: 13px;
	background: url(../../images/common/ico_privacy_down.svg) calc(100% - 20px) center no-repeat;
}
.cptTermsPrivacy .privacyArea .privacyPlace {
	width: 100%;
	margin-top: 20px;
}
.cptTermsPrivacy .privacyArea .baseTitle {
	margin-top: 30px;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.5;
	color: #000;
}
.cptTermsPrivacy .privacyArea .baseTitle:first-child {
	margin-top: 0;
}
.cptTermsPrivacy .privacyArea .baseMsg {
	margin-top: 20px;
	font-size: 1.4rem;
	line-height: 1.5;
	font-weight: 400;
	color: #000;
}
.cptTermsPrivacy .privacyArea .baseMsg:first-child {
	margin-top: 0;
}
.cptTermsPrivacy .privacyArea .baseList {
	margin-top: 20px;
}
.cptTermsPrivacy .privacyArea .baseList .baseItem {
	padding-left: 10px;
	font-size: 1.4rem;
	line-height: 1.5;
	font-weight: 400;
	color: #000;
	position: relative;
}
.cptTermsPrivacy .privacyArea .baseList .baseItem::before {
	content: "";
	width: 4px;
	height: 4px;
	background: #000;
	border-radius: 50%;
	display: block;
	position: absolute;
	left: 0;
	top: 0.9rem;
}
.cptTermsPrivacy .privacyArea .comContTit {
	margin-bottom: 0;
}

/* -------------------------------- 금융소비자 안내 -------------------------------- */
.cptContFinance {
	width: 100%;
}
.cptContFinance .financeArea {
	width: 100%;
	padding: 0 20px;
}
.cptContFinance .financeArea .contBox {
	width: 100%;
	margin-top: 40px;
	padding: 60px 35px;
	border: 1px solid #dcdcdc;
	border-radius: 15px;
	background: #fcfcfc;
}
.cptContFinance .financeArea .contBox.type01 {
	margin-top: 20px;
	padding: 30px 30px 200px;
	border: 0;
	border-radius: 25px;
	background: #f5fcff url(../../images/sub/finance_img01.png) center bottom/190px no-repeat;
}
.cptContFinance .financeArea .contBox.type03 {
	margin-top: 20px;
	padding: 60px 35px 187px;
	border: 0;
	border-radius: 25px;
	background: #f5fcff url(../../images/sub/finance_img04_mobile.png) center bottom no-repeat;
	text-align: center;
}
.cptContFinance .financeArea .contBox .boxTit {
	margin-top: 20px;
	font-size: 1.8rem;
	line-height: 1.5;
	font-weight: 700;
	color: #000;
}
.cptContFinance .financeArea .contBox .boxTit:first-child {
	margin-top: 0px;
}
.cptContFinance .financeArea .contBox .boxTit .keyColor {
	font-weight: 700;
	color: var(--key-blue01);
}
.cptContFinance .financeArea .contBox .boxB {
	margin-top: 20px;
	font-size: 1.6rem;
	line-height: 1.5;
	font-weight: 500;
	color: #000;
}
.cptContFinance .financeArea .contBox .boxB:first-child {
	margin-top: 0;
}
.cptContFinance .financeArea .contBox .boxText {
	margin-top: 20px;
	font-size: 1.4rem;
	line-height: 1.5;
	font-weight: 400;
	color: #000;
}
.cptContFinance .financeArea .contBox .boxText:first-child {
	margin-top: 0;
}
.cptContFinance .financeArea .contBox .infoTxt {
	margin-top: 40px;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.71;
	color: #999;
}
.cptContFinance .financeArea .contBox .center {
	text-align: center;
}
.cptContFinance .financeArea .contBox .comBtnGroup {
	margin-top: 30px;
}
.cptContFinance .financeArea .contBox .comBtnGroup .btn.crud {
	height: auto;
	font-size: 1.4rem;
	padding: 14px 20px;
	line-height: 2rem;
}
.cptContFinance .financeArea .financeTitle {
	width: 100%;
	margin-top: 30px;
	font-size: 1.6rem;
	line-height: 1.5;
	font-weight: 500;
	color: #000;
}
.cptContFinance .financeArea .cardGroup {
	width: 100%;
	margin-top: 20px;
	display: block;
}
.cptContFinance .financeArea .cardGroup .item {
	width: 100%;
	margin-top: 20px;
	padding: 20px 20px 30px;
	border: 1px solid #ddd;
	border-radius: 15px;
	background: #fcfcfc;
}
.cptContFinance .financeArea .cardGroup .item:first-child {
	margin-top: 0;
}
.cptContFinance .financeArea .cardGroup .item .cardCont .cardTit {
	font-size: 2rem;
	font-weight: 700;
	line-height: 30px;
	color: #000;
}
.cptContFinance .financeArea .cardGroup .item .cardCont .cardTit .num {
	margin-right: 17px;
	font-family: "RedHatDisplay";
	font-size: 3rem;
	font-weight: 400;
	line-height: 40px;
	color: #000;
	vertical-align: bottom;
}
.cptContFinance .financeArea .cardGroup .item .cardCont .cardTit.ico01 {
	width: max-content;
	padding-right: 39px;
	background: url(../../images/sub/ico_card01.svg) right center no-repeat;
}
.cptContFinance .financeArea .cardGroup .item .cardCont .cardTit.ico02 {
	width: max-content;
	padding-right: 39px;
	background: url(../../images/sub/ico_card02.svg) right center no-repeat;
}
.cptContFinance .financeArea .cardGroup .item .cardCont .cardTit.ico03 {
	width: max-content;
	padding-right: 39px;
	background: url(../../images/sub/ico_card03.svg) right center no-repeat;
}
.cptContFinance .financeArea .cardGroup .item .cardCont .cardTit.ico04 {
	width: max-content;
	padding-right: 39px;
	background: url(../../images/sub/ico_card04.svg) right center no-repeat;
}
.cptContFinance .financeArea .cardGroup .item .cardCont .cardText {
	margin-top: 20px;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.7;
	color: #000;
}
.cptContFinance .financeArea .cardGroup .item .cardCont .ex {
	font-size: 1.2rem;
	font-weight: 400;
	line-height: 2;
	color: #999;
}
.cptContFinance .financeArea .baseMsg {
	margin-top: 20px;
	font-size: 1.4rem;
	line-height: 1.5;
	font-weight: 400;
	color: #000;
}
.cptContFinance .financeArea .baseMsg.xl {
	font-size: 1.6rem;
}
.cptContFinance .financeArea .baseMsg.xl + .comTable {
	margin-top: 10px;
}
.cptContFinance .financeArea .baseMsg:first-child {
	margin-top: 0;
}
.cptContFinance .financeArea .baseList {
	width: 100%;
	margin-top: 20px;
}
.cptContFinance .financeArea .baseList .item {
	margin-top: 8px;
	padding-left: 9px;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.5;
	color: #000;
	position: relative;
}
.cptContFinance .financeArea .baseList .item:first-child {
	margin-top: 0;
}
.cptContFinance .financeArea .baseList .item::before {
	content: "-";
	display: block;
	position: absolute;
	left: 0;
	top: -1px;
}
.cptContFinance .financeArea .infoTxt {
	margin-top: 30px;
}
.cptContFinance .financeArea .infoTxt p {
	padding-left: 16px;
	text-indent: -16px;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.71;
	color: #000;
}
.cptContFinance .financeArea .infoTxt + .infoTxt {
	margin-top: 0;
}
.cptContFinance .financeArea .imgBox {
	width: 100%;
	margin-top: 20px;
}
.cptContFinance .financeArea .imgBox img {
	width: 100%;
}
.cptContFinance .financeArea .comContTit {
	margin-top: 40px;
	margin-bottom: 0;
}
.cptContFinance .financeArea .comContTit + .financeTitle {
	margin-top: 20px;
}
.cptContFinance .financeArea .comContTit + .contBox {
	margin-top: 20px;
}
.cptContFinance .financeArea .comContTit:first-child {
	margin-top: 0;
}
.cptContFinance .financeArea .comTable + .comBtnGroup {
	margin-top: 20px;
}
.cptContFinance .financeArea .comBtnGroup {
	margin-top: 40px;
}

.cptIdentifi {
	width: 100%;
}
.cptIdentifi .identifiPlace {
	width: 100%;
	padding: 0 20px;
}
.cptIdentifi .identifiPlace .identiBox {
	width: 100%;
	margin-top: 40px;
	padding: 40px 20px;
	border: 1px solid #92cdff;
	border-radius: 15px;
	background: #f2f9ff;
}
.cptIdentifi .identifiPlace .identiBox .identiTit {
	width: 100%;
}
.cptIdentifi .identifiPlace .identiBox .identiTit dt {
	width: 100%;
	font-size: 1.6rem;
	font-weight: 500;
	color: #000;
	text-align: center;
}
.cptIdentifi .identifiPlace .identiBox .identiTit dd {
	width: 100%;
	font-size: 1.4rem;
	font-weight: 400;
	color: #999;
	text-align: center;
}
.cptIdentifi .identifiPlace .identiBox .fileArea {
	width: 100%;
	margin-top: 20px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.cptIdentifi .identifiPlace .identiBox .fileArea .imgBox {
	width: 245px;
	height: 155px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.cptIdentifi .identifiPlace .identiBox .fileArea .imgBox img {
	max-width: 100%;
	max-height: 100%;
}
.cptIdentifi .identifiPlace .identiBox .adds {
	margin-top: 12px;
	padding-left: 27px;
	font-size: 1.2rem;
	color: #000;
	line-height: 1.5;
	letter-spacing: -0.45px;
	position: relative;
	display: inline-block;
	vertical-align: middle;
}
.cptIdentifi .identifiPlace .identiBox .adds::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: url(../../images/common/ico_alert.svg) 50% 50% no-repeat;
}
.cptIdentifi .identifiPlace .identiBox .comBtnGroup {
	margin-top: 30px;
}
.cptIdentifi .identifiArea .imgBox {
	width: 100%;
	padding-top: 63%;
	position: relative;
	border: 1px solid #dcdcdc;
	border-radius: 15px;
	background: #f3f3f3 url(../../images/common/ico_camera.svg) center no-repeat;
	overflow: hidden;
}
.cptIdentifi .identifiArea .imgBox img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	position: absolute;
	left: 0;
	top: 0;
}
.cptIdentifi .identifiArea .dirTitle {
	margin-top: 12px;
	padding-left: 27px;
	font-size: 1.4rem;
	color: #000;
	line-height: 1.5;
	letter-spacing: -0.45px;
	position: relative;
	display: inline-block;
	vertical-align: middle;
}
.cptIdentifi .identifiArea .dirTitle::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: var(--key-blue01) url(../../images/common/ico_notice.svg) 50% 50% no-repeat;
}
.cptIdentifi .identifiArea .dirTitle + .comBtnGroup {
	margin-top: 40px;
}
.cptIdentifi .identifiArea .flsTxt {
	width: 100%;
	margin-top: 20px;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.5;
	color: #fe5f5f;
	text-align: center;
}
.cptIdentifi .identifiArea .flsTxt + .comBtnGroup {
	margin-top: 30px;
}

.cptApprove .alertBox {
	width: 100%;
	padding: 140px 20px 0;
	text-align: center;
}
.cptApprove .alertBox .alertTit dt {
	padding-top: 85px;
	font-size: 2.4rem;
	color: #000;
	font-weight: 500;
	background: url(../../images/common/ico_approve.svg) center top no-repeat;
}
.cptApprove .alertBox .alertTit dd {
	margin-top: 30px;
	font-size: 1.6rem;
	color: #666;
	line-height: 1.625;
}
.cptApprove .alertBox .alertTit:last-child {
	margin-bottom: 100px;
}
.cptApprove .alertBox .alertTit + .comBtnGroup {
	margin-top: 100px;
}
.cptApprove .alertBox .alertAdds {
	margin-top: 10px;
	margin-bottom: 100px;
}
.cptApprove .alertBox .alertAdds p {
	font-size: 1.4rem;
	line-height: 1.5;
	font-weight: 500;
	color: #999;
}
.cptApprove .alertBox.deny .alertTit dt {
	background: url(../../images/common/ico_deny.svg) center top no-repeat;
}
.cptApprove .alertBox.deny .alertAdds {
	margin-top: 20px;
}
.cptApprove .alertBox.deny .alertAdds p {
	color: #fe5f5f;
}
.cptApprove .comBtnGroup {
	padding-bottom: 40px;
}

.cptNoneData .dataArea {
	padding: 0 20px;
}
.cptNoneData .dataArea .dataBox {
	width: 100%;
	padding: 40px 0 40px;
	text-align: center;
}
.cptNoneData .dataArea .dataBox .txtArea {
	margin-top: 20px;
}
.cptNoneData .dataArea .dataBox .txtArea .alert {
	font-size: 2.4rem;
	font-weight: 500;
	color: #000;
}
.cptNoneData .dataArea .dataBox .txtArea .adds {
	margin-top: 30px;
	font-size: 1.6rem;
	color: #666;
}
.cptNoneData .dataArea .comBtnGroup {
	margin-top: 40px;
}
.cptNoneData .dataArea .comInfoBox + .comBtnGroup {
	margin-top: 40px;
}

.cptStateBox {
	width: 100%;
}
.cptStateBox .loanArea {
	width: 100%;
	padding: 0 20px;
}
.cptStateBox .stateGroup .item {
	width: 100%;
	margin-top: 20px;
}
.cptStateBox .stateGroup .item:first-child {
	margin-top: 0;
}
.cptStateBox .stateBox {
	width: 100%;
	padding: 40px 30px;
	border-radius: 25px;
	background: #f5fcff;
}
.cptStateBox .stateBox .itemInfo .name {
	font-size: 2.4rem;
	font-weight: 500;
	color: #000;
}
.cptStateBox .stateBox .itemInfo .date {
	margin-top: 7px;
	font-size: 1.6rem;
	color: #444;
}
.cptStateBox .stateBox .itemInfo .date b {
	font-weight: 400;
}
.cptStateBox .stateBox .itemInfo .date i {
	margin-left: 7px;
	font-style: normal;
	font-weight: 500;
}
.cptStateBox .stateBox .stateBar {
	margin-top: 20px;
}
.cptStateBox .stateBox .stateBar .barWrap {
	width: 100%;
	height: 7px;
	border-radius: 3.5px;
	background: #fff;
	box-shadow: 0 3px 7px 0 rgba(68, 68, 68, 0.04);
	overflow: hidden;
}
.cptStateBox .stateBox .stateBar .barWrap .bar {
	height: 7px;
	border-radius: 3.5px;
	font-size: 0;
	background: var(--key-blue01);
}
.cptStateBox .stateBox .stateBar .stateTit {
	margin-top: 8px;
	display: flex;
	align-items: center;
	justify-content: flex-start;
}
.cptStateBox .stateBox .stateBar .stateTit .state {
	width: 25%;
	font-size: 14px;
	color: #888;
	font-weight: 500;
	text-align: right;
}
.cptStateBox .stateBox .stateBar .stateTit .state.now {
	color: #000;
}
.cptStateBox .stateBox .stateNow {
	margin-top: 40px;
}
.cptStateBox .stateBox .stateNow .now {
	font-size: 1.8rem;
	font-weight: 500;
	color: #000;
}
.cptStateBox .stateBox .stateNow .now b {
	font-weight: 700;
	color: var(--key-blue01);
}
.cptStateBox .stateBox .stateNow .adds {
	margin-top: 10px;
	font-size: 1.4rem;
	color: #666;
	line-height: 1.625;
}
.cptStateBox .stateBox .stateNow .more {
	width: 100%;
	margin-top: 10px;
	font-size: 1.4rem;
	color: #999;
	display: inline-block;
}
.cptStateBox .stateBox .stateNow .deny {
	width: 100%;
	margin-top: 10px;
	font-size: 1.4rem;
	color: #fe5f5f;
	display: inline-block;
}
.cptStateBox .comBtnGroup {
	margin-top: 30px;
}
.cptStateBox .comBtnGroup .btn.crud {
	width: 196px !important;
	font-size: 1.4rem;
}

.cptLoanDetail {
	width: 100%;
}
.cptLoanDetail .dtArea .cardBtnGroup {
	width: 100%;
	height: 227px;
	padding: 0 20px;
	overflow: hidden;
	position: relative;
}
.cptLoanDetail .dtArea .cardBtnGroup .cardGroup .cardItem {
	width: 280px;
}
.cptLoanDetail .dtArea .cardBtnGroup .cardGroup .cardItem .card {
	width: 280px;
	padding: 30px;
	border: 1px solid #dcdcdc;
	border-radius: 25px;
	background: #fff;
}
.cptLoanDetail .dtArea .cardBtnGroup .cardGroup .cardItem .card.nowOn {
	padding: 29px;
	border: 1px solid #bfdfff;
	background: #f2f9ff;
}
.cptLoanDetail .dtArea .cardBtnGroup .cardGroup .cardItem .card .tit {
	font-size: 2rem;
	font-weight: 700;
	color: #000;
	line-height: 1.6;
	text-align: left;
}
.cptLoanDetail .dtArea .cardBtnGroup .cardGroup .cardItem .card .infoGroup {
	margin-top: 20px;
	text-align: left;
}
.cptLoanDetail .dtArea .cardBtnGroup .cardGroup .cardItem .card .info {
	margin-top: 7px;
	font-size: 1.6rem;
	font-weight: 400;
	color: #444;
}
.cptLoanDetail .dtArea .cardBtnGroup .cardGroup .cardItem .card .info:first-child {
	margin-top: 0;
}
.cptLoanDetail .dtArea .cardBtnGroup .cardGroup .cardItem .card .info b {
	font-weight: 500;
}
.cptLoanDetail .dtArea .cardBtnGroup .cardGroup .cardItem .card .info i {
	font-style: normal;
}
.cptLoanDetail .dtArea .cardBtnGroup .swiper-pagination {
	bottom: 0;
}
.cptLoanDetail .dtArea .cardBtnGroup .swiper-pagination .swiper-pagination-bullet {
	width: 6px;
	height: 6px;
	margin: 0 2.5px;
	background: #dbdbdb;
	border-radius: 3px;
	transition: all 0.3s;
}
.cptLoanDetail .dtArea .cardBtnGroup .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
	width: 18px;
	height: 6px;
	background: #444;
}
.cptLoanDetail .dtArea .loanDtGroup {
	margin-top: 40px;
}
.cptLoanDetail .dtArea .loanDtGroup .dtItem {
	display: none;
}
.cptLoanDetail .dtArea .loanDtGroup .dtItem.on {
	display: block;
}
.cptLoanDetail .dtArea .loanDtGroup .dtBox {
	width: 100%;
	padding: 0 20px;
}
.cptLoanDetail .dtArea > .comBtnGroup {
	padding: 0 20px;
	margin-top: 60px;
}

/*--------------------------------- 예금주 확인 로딩바 - 일치 불일치 --------------------------------*/
.cptCheckProcess {
	width: 100%;
}
.cptCheckProcess .loadingWrap {
	padding: 80px 0;
	text-align: center;
}
.cptCheckProcess .loadingWrap .loadingBar {
	width: 100%;
	height: 7px;
	margin: 0 auto;
	border-radius: 3.5px;
	background: #f3f3f3;
	box-shadow: 0 3px 7px 0 rgba(68, 68, 68, 0.04);
	overflow: hidden;
}
.cptCheckProcess .loadingWrap .loadingBar .nowLoad {
	font-size: 0;
	height: 7px;
	border-radius: 3.5px;
	background: var(--key-blue01);
	animation: loadbar 3s linear infinite;
}
@keyframes loadbar {
	from {
		width: 0;
	}
	to {
		width: 100%;
	}
}
.cptCheckProcess .loadingWrap .loadingInfo {
	font-size: 16px;
	font-weight: 500;
	color: #fff;
	line-height: 1.625;
	margin-bottom: 20px;
}
.cptCheckProcess .infoArea {
	border-top: 1px solid #dcdcdc;
	padding: 80px 0;
	text-align: center;
}
.cptCheckProcess .infoArea:first-child {
	margin-top: 80px;
}
.cptCheckProcess .infoArea .infoTit {
	font-size: 20px;
	font-weight: 500;
}
.cptCheckProcess .infoArea .infoTit.t-red {
	color: #fe5f5f;
}
.cptCheckProcess .infoArea .infoTit.t-blue {
	color: var(--key-blue01);
}
.cptCheckProcess .infoArea .desc {
	margin-top: 20px;
	font-size: 16px;
	color: #444;
	line-height: 1.625;
}
.cptCheckProcess .infoArea .adds {
	margin-top: 40px;
	font-size: 14px;
	color: #666;
	line-height: 1.4;
}
.cptCheckProcess .infoArea .comBtnGroup {
	margin-top: 30px;
}

/* 개별 서브컨텐츠 */
.cptError {
	width: 100%;
	margin-top: 40px;
}
.cptError .errorArea {
	width: 100%;
	padding: 110px 20px 0 20px;
	background: url(../../images/common/img_logo_noti.png) center top/60px no-repeat;
}
.cptError .errorArea .errTitle {
	font-size: 1.8rem;
	line-height: 1.5;
	color: #000;
	font-weight: 700;
	text-align: center;
}
.cptError .errorArea .errMsg {
	margin-top: 20px;
	font-size: 1.6rem;
	color: #000;
	font-weight: 400;
	text-align: center;
}
.cptError .errorArea .infoBox {
	width: 100%;
}
.cptError .errorArea .infoBox .textBox {
	width: max-content;
	margin: 30px auto 0;
}
.cptError .errorArea .infoBox .textBox .text {
	font-size: 1.4rem;
	color: #000;
	font-weight: 400;
	text-align: left;
	display: block;
}

.comLoading {
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.5);
	display: block;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 1000;
}
.comLoading .loadArea {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}
.comLoading .loadBox {
	width: 65px;
	height: 65px;
	position: relative;
}
.comLoading .loadBox .ball {
	width: 32.5px;
	height: 0px;
	background: #fff;
	display: block;
	position: absolute;
	left: 0;
	top: 32.5px;
	transform-origin: top right;
}
.comLoading .loadBox .ball::before {
	content: "";
	width: 15px;
	height: 15px;
	border-radius: 50%;
	background: #fff;
	display: block;
	transform: scale(0);
	position: absolute;
	left: 0;
	top: -7.5px;
	transform-origin: center;
	animation: loading 1.6s infinite;
}
.comLoading .loadBox .ball:nth-child(1) {
	transform: rotate(0deg);
}
.comLoading .loadBox .ball:nth-child(1)::before {
	animation-delay: 0.2s;
}
.comLoading .loadBox .ball:nth-child(2) {
	transform: rotate(45deg);
}
.comLoading .loadBox .ball:nth-child(2)::before {
	animation-delay: 0.4s;
}
.comLoading .loadBox .ball:nth-child(3) {
	transform: rotate(90deg);
}
.comLoading .loadBox .ball:nth-child(3)::before {
	animation-delay: 0.6s;
}
.comLoading .loadBox .ball:nth-child(4) {
	transform: rotate(135deg);
}
.comLoading .loadBox .ball:nth-child(4)::before {
	animation-delay: 0.8s;
}
.comLoading .loadBox .ball:nth-child(5) {
	transform: rotate(180deg);
}
.comLoading .loadBox .ball:nth-child(5)::before {
	animation-delay: 1s;
}
.comLoading .loadBox .ball:nth-child(6) {
	transform: rotate(225deg);
}
.comLoading .loadBox .ball:nth-child(6)::before {
	animation-delay: 1.2s;
}
.comLoading .loadBox .ball:nth-child(7) {
	transform: rotate(270deg);
}
.comLoading .loadBox .ball:nth-child(7)::before {
	animation-delay: 1.4s;
}
.comLoading .loadBox .ball:nth-child(8) {
	transform: rotate(315deg);
}
.comLoading .loadBox .ball:nth-child(8)::before {
	animation-delay: 1.6s;
}

@keyframes loading {
	0% {
		transform: scale(0);
	}
	20% {
		transform: scale(1);
	}
	100% {
		transform: scale(0);
	}
}
/* 기타(로딩,에러,서비스공지 등) */
/*--------------------------------- 전자계약 리스트 --------------------------------*/
.cptContractList .listArea {
	padding: 0 20px;
}
.cptContractList .listArea .listAlert {
	width: 100%;
	margin: 60px 0 40px;
	text-align: center;
	word-break: keep-all;
}
.cptContractList .listArea .listAlert .alertTit {
	width: 100%;
	font-size: 2rem;
	color: #444;
	font-weight: 700;
	display: inline-block;
}
.cptContractList .listArea .listAlert .alertTit b {
	color: var(--key-blue01);
}
.cptContractList .listArea .listAlert i {
	margin-top: 20px;
	font-style: normal;
	font-size: 1.6rem;
	color: #666;
	display: inline-block;
}
.cptContractList .listArea .listGroup .item {
	margin-bottom: 10px;
	border-radius: 25px;
	border: 1px solid #dcdcdc;
	padding: 30px;
}
.cptContractList .listArea .listGroup .item:last-child {
	margin-bottom: 0;
}
.cptContractList .listArea .listGroup .item .itemTit .num {
	font-size: 2rem;
	font-weight: 700;
	color: #000;
}
.cptContractList .listArea .listGroup .item .itemTit .tit {
	font-size: 1.6rem;
	color: #444;
}
.cptContractList .listArea .listGroup .item .btnArea {
	margin-top: 30px;
	text-align: center;
}
.cptContractList .listArea .listGroup .item .btnArea .contBtn {
	width: calc(100% - 80px);
	height: 50px;
	border-radius: 10px;
	font-size: 1.4rem;
	font-weight: 500;
	text-align: center;
	line-height: 49px;
	color: #fff;
	background: #444;
}

/*--------------------------------- 서명 입력 캔버스 --------------------------------*/
.cptSignCanvas .canvasArea {
	width: 100%;
	height: 200px;
	border-radius: 15px;
	border: 1px solid #dcdcdc;
	background: #f7f8fc;
}
.cptSignCanvas .cnvsUI {
	margin-top: 10px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.cptSignCanvas .cnvsUI .info {
	font-size: 1.2rem;
	font-weight: 500;
	color: var(--key-blue01);
	font-weight: 500;
}
.cptSignCanvas .cnvsUI .cnvsRemove {
	padding-left: 24px;
	font-size: 1.4rem;
	color: #000;
	background: url(../../images/common/ico_reload.png) left center/17px no-repeat;
}

/*--------------------------------- 저당설정 확인사항 --------------------------------*/
.cptConfirmRadio {
	margin-top: 40px;
	padding-top: 40px;
	border-top: 10px solid #f3f3f3;
}
.cptConfirmRadio .radioArea {
	padding: 0 20px;
}
.cptConfirmRadio .radioArea .cfrmArea {
	margin: 30px 0 40px;
}
.cptConfirmRadio .radioArea .cfrmArea .cfrmTit {
	font-size: 1.6rem;
	font-weight: 500;
	color: #000;
}
.cptConfirmRadio .radioArea .cfrmArea .cfrmDesc {
	margin: 10px 0 20px;
	font-size: 1.4rem;
	color: #444;
	line-height: 1.6;
	word-break: keep-all;
}
.cptConfirmRadio .radioArea .cfrmArea .detailBox {
	width: 100%;
	border-radius: 15px;
	border: 1px solid #dcdcdc;
	padding: 20px;
}
.cptConfirmRadio .radioArea .cfrmArea .detailBox .item {
	margin-bottom: 20px;
}
.cptConfirmRadio .radioArea .cfrmArea .detailBox .item:last-child {
	margin-bottom: 0;
}
.cptConfirmRadio .radioArea .cfrmArea .detailBox .item .tit {
	display: block;
	font-size: 1.6rem;
	color: #444;
	font-weight: 700;
}
.cptConfirmRadio .radioArea .cfrmArea .detailBox .item .exp {
	display: block;
	margin-top: 10px;
	font-size: 1.4rem;
	color: #444;
	font-style: normal;
	word-break: keep-all;
}
.cptConfirmRadio .radioArea .cfrmArea .radioWrap {
	margin-top: 20px;
	text-align: center;
	position: relative;
}
.cptConfirmRadio .radioArea .cfrmArea .radioWrap input[type=radio] + label {
	width: 100%;
	height: 50px;
	padding: 0 20px;
	border: 1px solid #ccc;
	border-radius: 10px;
	line-height: 49px;
	font-size: 1.4rem;
	font-weight: 500;
	color: #444;
	display: inline-block;
	cursor: pointer;
}
.cptConfirmRadio .radioArea .cfrmArea .radioWrap input[type=radio]:checked + label {
	border: 2px solid var(--key-blue01);
	padding: 0 19px;
	line-height: 47px;
	color: var(--key-blue01);
	font-weight: 500;
}

/*--------------------------------- 안내사항 박스 --------------------------------*/
.comInfoBox {
	width: 100%;
	margin-bottom: 40px;
	padding: 40px 20px;
	text-align: center;
	border-radius: 15px;
	background: #f2f9ff;
}
.comInfoBox .infoTxt {
	padding-top: 65px;
	font-size: 1.4rem;
	color: #666;
	line-height: 1.6;
	background: url(../../images/common/ico_notice_round.png) center top/45px no-repeat;
	word-break: keep-all;
}
.comInfoBox .infoTxt b {
	width: 100%;
	font-size: 1.6rem;
	font-weight: 500;
	color: #000;
}
.comInfoBox .infoTxt i {
	margin-top: 20px;
	font-style: normal;
	display: inline-block;
}

/* -------------------------------- 이미지 설명문(도표) -------------------------------- */
.comImgDesc {
	width: 100%;
	text-align: center;
}
.comImgDesc img {
	max-width: 100%;
}

/*대출신청 여백 설정*/
.checkAllBox {
	margin-bottom: 2.4rem;
	margin-top: 4rem;
}

.checkList ul li {
	margin-bottom: 2.5rem;
}

.formTopArea {
	padding: 3rem 0 4rem 0;
	border-bottom: 10px solid #f3f3f3;
}
.formTopArea.noUnderLine {
	border-bottom: 0;
}

.formBotArea {
	padding: 4rem 0 4rem 0;
}
.formBotArea + .comBtnGroup {
	margin-top: 0px;
	margin-bottom: 60px;
}

/*팝업*/
.modFlPop {
	display: none;
	position: relative;
	z-index: 999;
}
.modFlPop .popCont {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #fff;
}
.modFlPop .popCont .titArea {
	padding: 30px 20px;
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	justify-content: space-between;
}
.modFlPop .popCont .titArea > p {
	font-size: 1.8rem;
	color: #000;
	font-weight: bold;
	line-height: 1.5;
}
.modFlPop .popCont .titArea > button {
	width: 2rem;
	height: 2rem;
	background: url("../../images/common/ico_pop_cls.svg") 50% 50% no-repeat;
}
.modFlPop .popCont .popContArea {
	width: 100%;
	height: calc(100% - 21.3rem);
	overflow-y: scroll;
	padding: 0 20px 30px;
}
.modFlPop .popCont .popContArea .txtInnCov {
	width: calc(100% - 3.4rem);
	font-size: 1.4rem;
	color: #000;
	font-weight: 400;
	line-height: 1.5;
}
.modFlPop .popCont .popContArea .clsBtn {
	width: 2rem;
	height: 2rem;
	background: url("../../images/common/ico_pop_cls.svg") 50% 50% no-repeat;
}
.modFlPop .popCont .cptLoanFloat {
	height: 126px;
}
.modFlPop .popCont .cptLoanFloat .floatBox {
	height: 106px;
}
.modFlPop .popCont .cptLoanFloat .floatBox .btnArea .loanBtn {
	height: 50px;
	line-height: 50px;
}

.loadingCov {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.5);
	z-index: 999;
}
.loadingCov .ldBar {
	position: absolute;
	width: 70%;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.processComplete {
	width: 100%;
	padding: 140px 20px 0 20px;
}
.processComplete .check {
	text-align: center;
}
.processComplete .check .tit {
	font-size: 24px;
	color: #000;
	font-weight: 500;
	line-height: 32px;
	letter-spacing: -0.6px;
	margin-top: 15px;
}
.processComplete .check .desc {
	font-size: 16px;
	color: #666;
	font-weight: 400;
	line-height: 26px;
	letter-spacing: -0.4px;
	margin-top: 30px;
}
.processComplete .check .desc.ty02 {
	font-size: 14px;
	color: #999;
	font-weight: 500;
}
.processComplete .loanInfo {
	width: 100%;
	border: 1px solid #dcdcdc;
	border-radius: 15px;
	padding: 0 20px 40px 20px;
	margin-top: 40px;
}
.processComplete .loanInfo .item {
	padding-bottom: 20px;
	margin-top: 20px !important;
	border-bottom: 1px solid #dddddd;
}
.processComplete .loanInfo .item:last-of-type {
	border: 0;
	padding-bottom: 0;
}

/*2024.05.28 작성안내 가이드 페이지 추가*/
.infoGdTab {
	padding: 0 2rem;
}
.infoGdTab .infoGuide {
	width: 100%;
	margin-top: 3rem;
}
.infoGdTab .infoGuide .infoCapture {
	width: 100%;
	text-align: center;
}
.infoGdTab .infoGuide .infoCapture img {
	display: inline-block;
}
.infoGdTab .infoGuide .divLine {
	display: block;
	width: 100%;
	height: 1px;
	background: #dcdcdc;
	margin: 6rem 0;
}
.infoGdTab .infoGuide .infoTxtBox {
	width: 100%;
	position: relative;
	padding: 3rem;
	background: #f8f8f8;
	margin-top: 2rem;
	border-radius: 1.5rem;
}
.infoGdTab .infoGuide .infoTxtBox .leftArea span.num {
	display: block;
	width: 3rem;
	height: 3rem;
	border-radius: 50%;
	background: #005ce6;
	font-size: 1.6rem;
	color: #fff;
	text-align: center;
	font-weight: 500;
	line-height: 3rem;
	margin-bottom: 1.5rem;
}
.infoGdTab .infoGuide .infoTxtBox .rightArea p.title {
	font-size: 1.6rem;
	color: #000;
	font-weight: 400;
	line-height: 2.6rem;
	letter-spacing: -0.45px;
	word-break: keep-all;
}
.infoGdTab .infoGuide .infoTxtBox .rightArea p.title > span {
	color: #005ce6;
	font-weight: 500;
}
.infoGdTab .infoGuide .infoTxtBox .rightArea p.desc {
	font-size: 1.4rem;
	color: #000;
	font-weight: 400;
	line-height: 2.4rem;
	letter-spacing: -0.4px;
	margin-top: 2rem;
	word-break: keep-all;
}

/*2024.07.08 직장검색 새창 팝업 추가*/
.cptSearchJob {
	width: 100%;
	position: relative;
}
.cptSearchJob > .title {
	padding: 2rem;
	font-size: 2rem;
	color: #000;
	font-weight: 500;
	line-height: 1;
	letter-spacing: -0.5px;
	border-bottom: 1px solid #dcdcdc;
}
.cptSearchJob .searchList {
	padding: 3rem 2rem 0 2rem;
	height: 52rem;
	overflow-y: scroll;
}
.cptSearchJob .searchList > .listTit {
	font-size: 16px;
	color: #999;
	font-weight: 400;
	line-height: 1;
	letter-spacing: -0.4px;
	margin-bottom: 1rem;
}
.cptSearchJob .searchList > ul > li.noList {
	width: 100%;
	font-size: 1.4rem;
	font-weight: bold;
	text-align: center;
	line-height: 1;
	padding: 5rem 0;
}
.cptSearchJob .searchList > ul > li > a {
	display: block;
	width: 100%;
	padding: 3rem;
	position: relative;
	background: #f3f3f3;
	border-radius: 1.5rem;
	margin-bottom: 1rem;
}
.cptSearchJob .searchList > ul > li > a > .jobListTit {
	display: block;
	font-size: 1.4rem;
	color: #000;
	font-weight: bold;
	line-height: 1;
	letter-spacing: -0.35px;
	margin-bottom: 0.5rem;
}
.cptSearchJob .searchList > ul > li > a > .jobListDesc {
	display: block;
	font-size: 1.4rem;
	color: #000;
	font-weight: 400;
	line-height: 2.4rem;
	letter-spacing: -0.35px;
	margin-bottom: 1.5rem;
}
.cptSearchJob .searchList > ul > li > a > .jobListDesc:last-of-type {
	margin-bottom: 0;
}
.cptSearchJob .searchList > ul > li:last-of-type a {
	margin-bottom: 0;
}
.cptSearchJob .comBtnGroup {
	padding: 0 2rem;
}

/*2024.05.16 약관 html 파일 css*/
.startTerms {
	width: 100%;
	position: relative;
	font-size: 1.6rem;
	color: #444;
	line-height: 2.4rem;
	letter-spacing: -0.4px;
}
.startTerms > .title {
	font-size: 1.8rem;
	font-weight: bold;
}
.startTerms > .title.head {
	font-size: 2.4rem;
	text-align: center;
}
.startTerms > .title:not(:first-of-type) {
	margin-top: 4rem;
}
.startTerms > .description {
	margin-top: 1rem;
}
.startTerms > .description.small {
	font-size: 1.4rem;
	color: #666;
}
.startTerms > .description.head {
	font-size: 1.6rem;
	text-align: center;
}
.startTerms .list {
	width: calc(100% - 2rem);
	position: relative;
	margin-left: 1rem;
	margin-top: 1rem;
}
.startTerms .list > ul {
	width: 100%;
}
.startTerms .list > ul > li {
	width: 100%;
	margin-top: 1rem;
}
.startTerms .list > ul > li:first-of-type {
	margin-top: 0;
}
.startTerms .list > ul > li div ul li {
	width: 100%;
	margin-top: 0.5rem;
}
.startTerms .list > ul > li div ul li:first-of-type {
	margin-top: 0;
}
.startTerms .tableBox {
	width: 100%;
	margin-top: 1rem;
	overflow-x: scroll;
}
.startTerms .tableBox table {
	width: 650px;
	border-collapse: collapse;
}
.startTerms .tableBox table thead tr th {
	background: #dcdcdc;
	text-align: center;
	padding: 1rem 1rem;
	border: 1px solid #ccc;
	font-size: 1.6rem;
	color: #444;
	font-weight: 500;
}
.startTerms .tableBox table tbody tr td {
	background: #fff;
	text-align: left;
	padding: 1rem 1rem;
	border: 1px solid #dfdfdf;
	font-size: 1.6rem;
	color: #444;
	font-weight: 400;
}

/*2024.07.30 신분증 가이드 및 안내 추가*/
.flsArea {
	width: 100%;
	background: #f7f9fc;
	border-radius: 1.5rem;
	padding: 2rem;
	text-align: center;
	margin-top: 2rem;
}
.flsArea .flsTit {
	font-size: 1.6rem;
	color: #f35f5f;
	line-height: 2.2rem;
	letter-spacing: -0.4px;
	font-weight: 500;
	margin-bottom: 1rem;
}
.flsArea .flsDesc {
	font-size: 1.3rem;
	color: #999;
	line-height: 2rem;
	letter-spacing: -0.33px;
	font-weight: 400;
}

.licenseGuide {
	width: 100%;
	background: #f7f9fc;
	border-radius: 1.5rem;
	padding: 2rem;
	text-align: center;
	margin-top: 2rem;
}
.licenseGuide .licTit {
	font-size: 1.6rem;
	line-height: 2.2rem;
	letter-spacing: -0.4px;
	font-weight: 500;
	margin-bottom: 1rem;
	color: var(--key-blue01);
}
.licenseGuide .licDesc {
	font-size: 1.3rem;
	color: #444;
	line-height: 2rem;
	letter-spacing: -0.33px;
	font-weight: 400;
}

/*2024.07.30 신분증 가이드 팝업*/
.uploadGuideBox {
	margin-bottom: 4rem;
}
.uploadGuideBox p.positive {
	padding-left: 2.7rem;
	font-size: 1.8rem;
	color: #000;
	font-weight: 500;
	line-height: 3.2rem;
	letter-spacing: -1.2px;
	position: relative;
	margin-bottom: 2rem;
}
.uploadGuideBox p.positive::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 2rem;
	height: 2rem;
	background: url(../../images/sub/ico_guide_true.png) center left no-repeat;
	transform: translateY(-50%);
}
.uploadGuideBox p.negative {
	padding-left: 2.7rem;
	font-size: 1.8rem;
	color: #000;
	font-weight: 500;
	line-height: 3.2rem;
	letter-spacing: -1.2px;
	position: relative;
	margin-bottom: 2rem;
	margin-top: 4rem;
}
.uploadGuideBox p.negative::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 2rem;
	height: 2rem;
	background: url(../../images/sub/ico_guide_false.png) center left no-repeat;
	transform: translateY(-50%);
}
.uploadGuideBox .guideImgBox {
	background: #f3f3f3;
	border-radius: 25px;
	padding: 2.6rem;
	text-align: center;
}

/*♥*/
.cptForm .formArea {
	padding: 0 20px;
	/*validation*/
}
.cptForm .formArea .frmPlace {
	padding: 50px 0 40px;
	position: relative;
}
.cptForm .formArea .frmPlace::after {
	content: "";
	width: calc(100% + 40px);
	height: 10px;
	background: #f3f3f3;
	display: block;
	position: absolute;
	top: 0;
	left: -20px;
}
.cptForm .formArea .frmPlace:first-child {
	padding: 0 0 40px;
}
.cptForm .formArea .frmPlace:first-child::after {
	display: none;
}
.cptForm .formArea .frmPlace:last-child {
	padding: 50px 0 0;
}
.cptForm .formArea .frmPlace:last-child:first-child {
	padding: 0;
}
.cptForm .formArea .frmPlace + .comBtnGroup {
	margin-top: 0px;
}
.cptForm .formArea .flsTxt {
	width: 100%;
	margin-top: 10px;
	font-size: 1.2rem;
	color: #fe5f5f;
	position: relative;
	display: none;
}
.cptForm .formArea .desc {
	width: 100%;
	margin-top: 10px;
	font-size: 1.2rem;
	color: var(--key-blue01);
	position: relative;
	display: inline-block;
}
.cptForm .formArea .frmTxt .optTit {
	font-size: 1.2rem;
	color: #999;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: -0.35px;
}
.cptForm .formArea .frmTxt .optTit .formalDataTxt {
	font-size: 1.4rem;
	color: var(--key-blue01);
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: -0.35px;
	display: inline-block;
	margin-left: 1rem;
}
.cptForm .formArea .frmTxt .dirTitle {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	padding-left: 27px;
	font-size: 1.4rem;
	color: #000;
	line-height: 1.5;
	letter-spacing: -0.45px;
}
.cptForm .formArea .frmTxt .dirTitle::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: var(--key-blue01) url(../../images/common/ico_notice.svg) 50% 50% no-repeat;
}
.cptForm .formArea .frmTxt .dirTitle.check {
	margin-top: 40px;
}
.cptForm .formArea .frmTxt .dirTitle.check::before {
	background: var(--key-blue01) url(../../images/common/ico_check_off.png) 50% 50%/10px no-repeat;
}
.cptForm .formArea .frmTxt .dirTitle.none {
	padding-left: 0;
	font-size: 1.8rem;
	font-weight: 500;
	color: #444;
}
.cptForm .formArea .frmTxt .dirTitle.none::before {
	display: none;
}
.cptForm .formArea .frmIpt {
	/*2024.07.26 추가*/
	margin-top: 10px;
	display: flex;
	position: relative;
}
.cptForm .formArea .frmIpt + .frmIpt {
	margin-top: 20px;
}
.cptForm .formArea .frmIpt .dataTxt {
	width: 100%;
	font-size: 1.6rem;
	font-weight: 500;
	color: #000;
	line-height: 1.5;
}
.cptForm .formArea .frmIpt input {
	width: 100%;
	padding: 0 0 10px 0;
	font-size: 1.6rem;
	color: #000;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: -0.53px;
	border: 0;
	border-bottom: 2px solid #dcdcdc;
}
.cptForm .formArea .frmIpt input::-webkit-input-placeholder {
	font-size: 1.6rem;
	color: #ccc;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: -0.45px;
}
.cptForm .formArea .frmIpt input:focus {
	outline: 0;
	border-bottom: 2px solid var(--key-blue01);
}
.cptForm .formArea .frmIpt .meas {
	width: 3rem;
	padding: 0 0 12px 0;
	font-size: 1.6rem;
	color: #000;
	font-weight: 500;
	line-height: 1.5;
	text-align: right;
	letter-spacing: -0.53px;
	position: absolute;
	right: 0;
	bottom: 0;
}
.cptForm .formArea .frmIpt .iptBtn {
	height: 29px;
	padding: 0 12px;
	font-size: 1.2rem;
	color: #fff;
	font-weight: 400;
	line-height: 27px;
	letter-spacing: -0.35px;
	background: #666;
	box-sizing: border-box;
	position: absolute;
	bottom: 12px;
	right: 0;
	border-radius: 5px;
}
.cptForm .formArea .frmIpt.inText1 input {
	padding-right: 3rem;
	text-align: right;
}
.cptForm .formArea .frmIpt.inText2 input {
	padding-right: 4.5rem;
	text-align: right;
}
.cptForm .formArea .frmIpt.inText2 .meas {
	width: 4.5rem;
}
.cptForm .formArea .frmIpt.inBtn .btnWrap {
	position: static;
}
.cptForm .formArea .frmIpt.inBtn .btnWrap .iptBtn {
	width: max-content;
	margin-left: 10px;
	position: static;
}
.cptForm .formArea .frmIpt .dash {
	width: 15px;
	min-width: 15px;
	padding-bottom: 12px;
	font-size: 1.6rem;
	line-height: 1.87;
	text-align: center;
}
.cptForm .formArea .frmIpt .resetBtn {
	display: none;
	width: 27px;
	height: 27px;
	background: url(../../images/common/ico_reset.svg) center center no-repeat;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
}
.cptForm .formArea .frmIpt .designSelect {
	width: 100%;
	height: 60px;
	padding: 0 20px;
	font-size: 1.6rem;
	line-height: 58px;
	font-weight: 400;
	color: #000;
	text-align: left;
	border: 1px solid #bebebe;
	border-radius: 13px;
	position: relative;
}
.cptForm .formArea .frmIpt .designSelect::after {
	content: "";
	width: 18px;
	height: 18px;
	background: url(../../images/common/ico_privacy_down.svg) center no-repeat;
	display: block;
	position: absolute;
	right: 20px;
	top: 20px;
}
.cptForm .formArea .frmIpt .halfWrap {
	width: calc(50% - 7.5px);
	margin-right: 12px;
	position: relative;
	display: inline-block;
}
.cptForm .formArea .frmIpt .halfWrap:last-child {
	margin-right: 0;
}
.cptForm .formArea .frmRdo {
	position: relative;
	display: inline-block;
	vertical-align: middle;
}
.cptForm .formArea .frmRdo input {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
	appearance: none;
	-webkit-appearance: none;
	cursor: pointer;
	padding: 0;
}
.cptForm .formArea .frmRdo input + label {
	width: 100%;
	height: 100%;
	min-height: 45px;
	padding: 9px 13px;
	font-size: 1.4rem;
	font-weight: 400;
	color: #444;
	text-align: center;
	line-height: 1.5;
	border: 1px solid #ccc;
	border-radius: 10px;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	box-sizing: border-box;
	cursor: pointer;
}
.cptForm .formArea .frmRdo input:checked + label {
	border: 2px solid var(--key-blue01);
	color: var(--key-blue01);
	font-weight: 500;
}
.cptForm .formArea .frmRdo:last-of-type {
	margin-right: 0;
}
.cptForm .formArea .frmRdo.lg input + label {
	min-height: 6rem;
	padding: 7px 13px;
	border-radius: 13px;
}
.cptForm .formArea .frmList {
	width: 100%;
	margin-top: 40px;
}
.cptForm .formArea .frmList .listGroup > .item {
	margin-top: 40px;
}
.cptForm .formArea .frmList .listGroup > .item:first-child {
	margin-top: 0;
}
.cptForm .formArea .radioWrap {
	width: 100%;
	display: flex;
	gap: 10px;
	margin-top: 10px;
}
.cptForm .formArea .radioWrap + .frmIpt {
	margin-top: 30px;
}
.cptForm .formArea .radioWrap .frmRdo {
	width: 100%;
	display: block;
}
.cptForm .formArea .radioWrap.multi {
	flex-wrap: wrap;
}
.cptForm .formArea .radioWrap.half .frmRdo {
	width: calc(50% - 5px);
}
.cptForm .formArea .radioWrap.third .frmRdo {
	width: calc(33% - 7px);
}
.cptForm .formArea .frmBtnGroup {
	margin-top: 10px;
}
.cptForm .formArea .frmBtnGroup .btnArea {
	display: flex;
	column-gap: 5px;
}
.cptForm .formArea .frmBtnGroup .btnArea.left {
	justify-content: flex-start;
}
.cptForm .formArea .frmBtnGroup .btnArea .option {
	width: calc(20% - 4px) !important;
	padding: 0 10px;
}
.cptForm .formArea .error input[type=text],
.cptForm .formArea .error input[type=password] {
	border-bottom: 2px solid #fe5f5f;
	color: #fe5f5f;
}
.cptForm .formArea .error input[type=radio] + label {
	border: 2px solid #fe5f5f;
	color: #fe5f5f;
}
.cptForm .formArea .error input[type=checkbox] + label > * {
	color: #fe5f5f !important;
}
.cptForm .formArea .error.frmCombo {
	border: 1px solid #fe5f5f;
}
.cptForm .formArea .error.frmCombo button {
	color: #fe5f5f;
}
.cptForm .formArea .error.frmCombo .drpdwBox {
	border: 1px solid #fe5f5f;
	border-top: 0;
}
.cptForm .formArea .error .optTit {
	color: #fe5f5f !important;
}
.cptForm .formArea .error .designSelect {
	border: 2px solid #fe5f5f;
}
.cptForm .formArea .error .flsTxt {
	display: block;
}
.cptForm .formArea .error .meas {
	color: #fe5f5f !important;
}

.cptForm .aptInfo {
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	justify-content: flex-start;
	margin-top: 20px;
}
.cptForm .aptInfo > div {
	width: 250px;
}
.cptForm .aptInfo > span {
	display: inline-block;
	vertical-align: middle;
	font-size: 15px;
	color: #000;
	font-weight: 500;
	line-height: 28px;
	margin: 0 10px 0 10px;
}

.topBar {
	margin-top: 40px;
	padding-top: 50px;
	position: relative;
}
.topBar::before {
	content: "";
	width: 100vw;
	height: 10px;
	background: #f3f3f3;
	display: block;
	position: absolute;
	left: 0;
	top: 0;
}

.comMsg {
	width: 100%;
	text-align: center;
}
.comMsg .strMsg {
	margin-top: 10px;
	font-size: 1.6rem;
	line-height: 1.5;
	font-weight: 500;
	color: #000;
}
.comMsg .strMsg:first-child {
	margin-top: 0;
}
.comMsg .strMsg b {
	font-weight: 700;
}
.comMsg .baseMsg {
	margin-top: 10px;
	font-size: 1.6rem;
	line-height: 1.5;
	font-weight: 400;
	color: #000;
}
.comMsg .baseMsg:first-child {
	margin-top: 0;
}
.comMsg .baseMsg b {
	font-weight: 500;
}
.comMsg + .comBtnGroup {
	margin-top: 40px;
}

.cptSubmitDoc {
	width: 100%;
}
.cptSubmitDoc .docuArea {
	width: 100%;
	padding: 0 20px;
}
.cptSubmitDoc .docuArea .cardBtnGroup .cardGroup .cardItem {
	width: 100%;
	position: relative;
}
.cptSubmitDoc .docuArea .cardBtnGroup .cardGroup .cardItem > input {
	position: absolute;
	left: 0;
	top: 0;
}
.cptSubmitDoc .docuArea .cardBtnGroup .cardGroup .cardItem > input:checked + .card {
	padding: 29px;
	border: 2px solid #d2f2ff;
	background: #f5fcff;
}
.cptSubmitDoc .docuArea .cardBtnGroup .cardGroup .cardItem .card {
	width: 100%;
	padding: 30px;
	margin-top: 10px;
	border: 1px solid #dcdcdc;
	border-radius: 25px;
	display: block;
}
.cptSubmitDoc .docuArea .cardBtnGroup .cardGroup .cardItem .card .tit {
	font-size: 2rem;
	font-weight: 700;
	color: #000;
}
.cptSubmitDoc .docuArea .cardBtnGroup .cardGroup .cardItem .card .infoGroup {
	margin-top: 10px;
}
.cptSubmitDoc .docuArea .cardBtnGroup .cardGroup .cardItem .card .infoGroup .info {
	width: 100%;
	font-size: 1.6rem;
	font-weight: 400;
	color: #444;
}
.cptSubmitDoc .docuArea .cardBtnGroup .cardGroup .cardItem .card .infoGroup .info b {
	font-weight: 400;
}
.cptSubmitDoc .docuArea .cardBtnGroup .cardGroup .cardItem .card .infoGroup .info i {
	margin-left: 7px;
	font-style: normal;
}
.cptSubmitDoc .docuArea .fileArea {
	margin-top: 40px;
	padding-top: 50px;
	position: relative;
}
.cptSubmitDoc .docuArea .fileArea::before {
	content: "";
	width: 100vw;
	height: 10px;
	background: #f3f3f3;
	display: block;
	position: absolute;
	left: -20px;
	top: 0;
}
.cptSubmitDoc .docuArea .fileArea .fileList {
	margin-top: 20px;
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
}
.cptSubmitDoc .docuArea .fileArea .imgWrap {
	width: 107px;
	height: 107px;
	border: 1px solid #dcdcdc;
	border-radius: 15px;
	position: relative;
	text-align: center;
	overflow: hidden;
}
.cptSubmitDoc .docuArea .fileArea .imgWrap img {
	border: 8px solid #fff;
	overflow: hidden;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 15px;
}
.cptSubmitDoc .docuArea .fileArea .imgWrap img.noFile {
	border: none;
}
.cptSubmitDoc .docuArea .fileArea .imgWrap .btnRemove {
	width: 20px;
	height: 20px;
	font-size: 0;
	background: url(../../images/common/ico_reset_circle.svg) center no-repeat;
	position: absolute;
	top: 10px;
	right: 10px;
}

.comClause .basicTxt {
	font-size: 1.4rem;
	font-weight: 400;
	color: #000;
}

/* -------------------------------- 공통 -------------------------------- */
.hidden {
	width: 1px;
	height: 1px;
	overflow: hidden;
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	display: inline-block;
	position: absolute;
}

.mt10 {
	margin-top: 10px;
}

.mt20 {
	margin-top: 20px;
}

/* 버튼 */
.btn {
	padding: 0 20px;
	text-align: center;
	display: inline-block;
	transition: all 0.3s;
	width: 100% !important;
	/*&.flow {height: 8.5rem; padding: 0 60px; border-radius: 1.5rem; line-height: 8.3rem; font-size: 2.4rem; font-weight: 500;}*/
}
.btn.flow {
	min-height: 7rem;
	padding: 20px 30px;
	border-radius: 15px;
	line-height: 1.5;
	font-size: 1.8rem;
	font-weight: 500;
}
.btn.crud {
	height: 5rem;
	padding: 0 20px;
	border-radius: 1rem;
	line-height: 4.8rem;
	font-size: 1.6rem;
}
.btn.option {
	height: 4rem;
	border-radius: 10px;
	font-size: 1.2rem;
	font-weight: 500;
}
.btn.map {
	height: 5rem;
	padding: 0 20px;
	border-radius: 25px;
	line-height: 48px;
	text-align: left;
	font-size: 16px;
	font-weight: 500;
	color: #fff;
	background: #00c300 url("../../images/common/icon_map_w.svg") calc(100% - 20px) center no-repeat;
}
.btn.print {
	height: 5rem;
	padding: 0 20px;
	border-radius: 25px;
	border: 1px solid #707070;
	line-height: 48px;
	text-align: left;
	font-size: 16px;
	font-weight: 500;
	color: #000;
	background: #fff url("../../images/common/icon_print_k.svg") calc(100% - 20px) center no-repeat;
}
.btn.acting {
	height: 6.5rem;
	border-radius: 10px;
	font-size: 16px;
	font-weight: 500;
}
.btn.download::after {
	display: inline-block;
	content: "";
	width: 28px;
	height: 28px;
	margin-left: 5px;
	background: url(../../images/common/ico_download_w.svg) center no-repeat;
	vertical-align: middle;
}
.btn.table {
	min-height: 50px;
	padding: 14px;
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.5;
	border-radius: 7px;
}
.btn.table .downTxt {
	min-height: 24px;
	padding-right: 29px;
	background: #fff url(../../images/common/icon_btn_download.svg) right center no-repeat;
}
.btn.shooting {
	min-height: 50px;
	padding: 14px;
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.5;
	border-radius: 10px;
}
.btn.grey {
	border: 1px solid #ccc;
	background: #ccc;
	color: #fff;
}
.btn.black {
	border: 1px solid #969494;
	background: #444;
	color: #fff;
}
.btn.blue {
	border: 1px solid var(--key-blue01);
	background: var(--key-blue01);
	color: #fff;
}
.btn.line-b {
	border: 1px solid var(--key-blue01);
	background-color: #fff;
	color: var(--key-blue01);
}
.btn.line-g {
	border: 1px solid #ccc;
	background: #fff;
	color: #000;
}
.btn.line-g.option, .btn.line-g.acting {
	color: #000;
}
.btn.line-g:disabled {
	background: #f3f3f3;
	color: #ccc;
}
.btn.overK:hover {
	border: 2px solid #444;
}

.comBtnGroup {
	width: 100%;
	margin-top: 40px;
}
.comBtnGroup:first-child {
	margin-top: 0;
}
.comBtnGroup .btnArea {
	display: flex;
	justify-content: center;
	align-items: center;
	column-gap: 10px;
}
.comBtnGroup .btnArea + .btnArea {
	margin-top: 10px;
}
.comBtnGroup .bfInfo {
	margin-bottom: 20px;
	font-size: 1.4rem;
	color: #666;
	text-align: center;
	word-break: keep-all;
}
.comBtnGroup .bfInfo .blue {
	font-weight: 500;
	color: var(--key-blue01);
}

/* -------------------------------- 개별 컨텐츠 소타이틀 -------------------------------- */
.comContTit {
	width: 100%;
	margin-top: 40px;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-end;
}
.comContTit:first-child {
	margin-top: 0;
}
.comContTit .contTit {
	width: 100%;
	font-size: 1.8rem;
	font-weight: 700;
	color: #000;
	word-break: keep-all;
}
.comContTit .contTxt .baseTxt {
	font-size: 1.4rem;
	font-weight: 400;
	color: #000;
	display: block;
}
.comContTit .contTxt .morePop {
	width: max-content;
	padding-right: 21px;
	margin-top: 7px;
	font-size: 1.4rem;
	font-weight: 700;
	color: var(--key-blue01);
	background: url(../../images/common/ico_more.svg) right calc(50% - 1px) no-repeat;
	display: block;
}
.comContTit .subDesc {
	width: 100%;
	font-size: 1.4rem;
	color: #999;
	display: inline-block;
	word-break: keep-all;
}
.comContTit .information {
	margin: 10px 0;
	color: var(--key-blue01);
	font-weight: bold;
}
.comContTit .subList {
	margin-top: 10px;
}
.comContTit .subList .listItem {
	margin-bottom: 20px;
	padding-left: 10px;
	font-size: 1.4rem;
	color: #000;
	position: relative;
}
.comContTit .subList .listItem::after {
	display: block;
	content: "";
	width: 4px;
	height: 4px;
	border-radius: 50%;
	background: #666;
	position: absolute;
	top: 8px;
	left: 0;
}
.comContTit .subList .listItem:last-child {
	margin-bottom: 0;
}
.comContTit.sm .contTit {
	font-size: 1.6rem;
	font-weight: 500;
}
.comContTit.sm .subDesc {
	font-size: 1.4rem;
}
.comContTit.center {
	text-align: center;
}
.comContTit + .comBtnGroup {
	margin-top: 30px;
}

.frmCombo {
	position: relative;
	width: 100%;
	padding: 0 20px;
	max-width: 418px; /*가로길이 추후 문의 필요*/
	border: 1px solid #ccc;
	border-radius: 10px;
	box-sizing: border-box;
}
.frmCombo.on {
	border-radius: 10px 10px 0 0;
}
.frmCombo + input {
	margin-top: 20px;
}
.frmCombo button {
	position: relative;
	width: 100%;
	height: 64px;
	font-size: 16px;
	color: #444;
	font-weight: 500;
	line-height: 64px;
	letter-spacing: -0.4px;
	text-align: left;
}
.frmCombo button .arrw {
	position: absolute;
	width: 14px;
	height: 8px;
	top: 50%;
	right: 0;
	background: url("../../images/common/ico_dropdown.png") top 50% right 0 no-repeat;
	transform: translateY(-50%);
	box-sizing: border-box;
	transition: all 0.4s;
}
.frmCombo button.on .arrw {
	transform: translateY(-50%) rotate(180deg);
}
.frmCombo button .bankLogoCov {
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	justify-content: flex-start;
}
.frmCombo button .bankLogoCov img {
	display: inline-block;
	margin-right: 10px;
}
.frmCombo .drpdwBox {
	display: none;
	position: absolute;
	top: 64px;
	left: -1px;
	width: calc(100% + 2px);
	background: #fff;
	border: 1px solid #ccc;
	border-top: 0;
	border-radius: 0 0 10px 10px;
	z-index: 99;
}
.frmCombo .drpdwBox .innerCover {
	width: calc(100% - 40px);
	margin: 0 auto;
	border-top: 1px solid #ccc;
	padding: 20px 0;
}
.frmCombo .drpdwBox .innerBox {
	height: 400px;
	overflow-y: scroll;
}
.frmCombo .drpdwBox .innerBox ul {
	width: 100%;
}
.frmCombo .drpdwBox .innerBox ul li {
	width: 100%;
}
.frmCombo .drpdwBox .innerBox ul li a {
	display: block;
	background: #fff;
	width: 100%;
	height: 40px;
	font-size: 16px;
	color: #444;
	font-weight: 400;
	line-height: 40px;
	letter-spacing: -0.4px;
	padding-left: 10px;
	border-radius: 5px;
	transition: all 0.4s;
}
.frmCombo .drpdwBox .innerBox ul li a:hover {
	background: #f2f9ff;
	color: var(--key-blue01);
}
.frmCombo .drpdwBox .innerBox ul li.active a {
	background: #f2f9ff;
	color: var(--key-blue01);
	font-weight: 500;
}

/*일반 라디오 공통*/
.frmRadio {
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	gap: 30px;
}
.frmRadio label {
	font-size: 1.4rem;
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	justify-content: flex-start;
	cursor: pointer;
}
.frmRadio [type=radio], .frmRadio span {
	vertical-align: middle;
}
.frmRadio [type=radio] {
	appearance: none;
	border: 1px solid #dcdcdc;
	border-radius: 50%;
	width: 30px;
	height: 30px;
	font-size: 24px;
	opacity: 1;
	margin-right: 10px;
	cursor: pointer;
}
.frmRadio [type=radio] + p {
	display: inline-block;
	vertical-align: middle;
	width: max-content;
	line-height: 30px;
}
.frmRadio [type=radio]:checked {
	border: 9px solid var(--key-blue01);
}
.frmRadio [type=radio]:disabled {
	background-color: lightgray;
	box-shadow: none;
	opacity: 1;
}
.frmRadio [type=radio]:disabled + p {
	cursor: not-allowed;
	opacity: 0.4;
}

/* 20240411 혹시 모를 백업
.frmRadio{
    display:flex; flex-flow: row nowrap; align-items: center; justify-content: center; gap:40px;

    label {
        font-size: 18px; display:flex; flex-flow: row nowrap; align-items: center; justify-content: flex-start; cursor:pointer;
    }

    [type="radio"], span {
        vertical-align: middle;
    }

    [type="radio"] {
        appearance: none; border: 1px solid #dcdcdc; border-radius: 50%; width:30px; height:30px; font-size:24px; opacity:1; margin-right:10px; cursor:pointer;
    }

    [type="radio"] + p {
        display:inline-block; vertical-align: middle; width:max-content; line-height:30px;
    }

    [type="radio"]:checked {
        border: 9px solid var(--key-blue01);
    }

    [type="radio"]:disabled {
        background-color: lightgray; box-shadow: none; opacity: 1;
    }

    [type="radio"]:disabled + p {
        cursor: not-allowed; opacity:.4;
    }
}
*/
/*--------------------------------- 폼 가이드 --------------------------------*/
.cptForm {
	/*checkbox*/
	/*radio type*/
	/*
	.frmRdo {
	    position:relative; display:inline-block; vertical-align:middle; margin-right:1rem;

	    input {
	        position:absolute; top:0; left:0; width:100%; height:100%; border:0; appearance:none; -webkit-appearance: none; cursor:pointer; padding:0;

	        + label {
	            width:100%; display:flex; justify-content: center; align-items: center; position:relative; height:4.5rem; border:1px solid #ccc; border-radius:1rem; color:#444; font-size:1.6rem; text-align:center; box-sizing:border-box; line-height:1.5rem; padding: 0 5rem; cursor:pointer; font-weight:400;
	        }

	        &:checked {
	            + label {
	                border:.2rem solid var(--key-blue01); color:var(--key-blue01); font-weight:500; padding: 0 4.9rem;
	            }
	        }
	    }

	    &:last-of-type {margin-right:0;}

	    &.lg {
	        input {
	            + label {
	                height:6.4rem; line-height:6.4rem;
	            }
	        }
	    }
	}
	*/
	/*input type text*/
	/*타이틀 영역*/
	/*validation*/
	/*
	.error {
	    input[type='text'],
	    input[type='password'] {border-bottom:2px solid #fe5f5f; color:#fe5f5f;}
	    input[type='radio'] + label {border:2px solid #fe5f5f; color:#fe5f5f;}
	    input[type='checkbox'] + label  > * {color:#fe5f5f !important;}
	    &.frmCombo {
	        border:1px solid #fe5f5f;

	        button {color:#fe5f5f;}
	        .drpdwBox {border:1px solid #fe5f5f; border-top:0;}
	    }
	    // .dash {background:#fe5f5f !important;}

	    .optTit {color:#fe5f5f !important;}
	}
	*/
}
.cptForm:first-child {
	margin-top: 0;
}
.cptForm + .cptForm {
	margin-top: 120px;
}
.cptForm .desc {
	display: inline-block;
	width: max-content;
	margin-top: 10px;
	font-size: 14px;
	color: var(--key-blue01);
}
.cptForm .flsTxt {
	position: relative;
	padding-left: 20px;
	display: inline-block;
	width: max-content;
	margin-top: 10px;
	font-size: 14px;
	color: #fe5f5f;
	margin-right: 10px;
}
.cptForm .flsTxt::before {
	content: "!";
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 16px;
	height: 16px;
	background: #fe5f5f;
	border-radius: 50%;
	color: #fff;
	font-size: 12px;
	font-weight: bold;
	text-align: center;
	line-height: 16px;
	padding-right: 1px;
}
.cptForm .frmCheck {
	position: relative;
	min-height: 3rem;
	/* 체크 */
	/* 체크 disabled */
	/* disabled */
	/*mini checkbox*/
	/*블랙 bg 화이트 chk*/
	/*블루 bg 화이트 chk*/
}
.cptForm .frmCheck button {
	width: 50px;
	height: 18px;
	position: absolute;
	top: 50%;
	right: 0;
	background: url("../../images/common/ryt_arrow.svg") top 50% right 0 no-repeat;
	transform: translateY(-50%);
	box-sizing: border-box;
}
.cptForm .frmCheck.standalone input + label {
	display: block;
	width: 30px;
	height: 30px;
	padding-left: 0;
}
.cptForm .frmCheck input {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: none;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	cursor: pointer;
}
.cptForm .frmCheck input + label {
	position: relative;
	padding-left: 42px;
	font-size: 16px;
	cursor: pointer;
	/*2024.05.27 추가*/
}
.cptForm .frmCheck input + label::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	width: 30px;
	height: 30px;
	background: url("../../images/common/check_off.svg") no-repeat center #dcdcdc;
	background-size: 14px 10px;
	border: 1px solid #dcdcdc;
	border-radius: 4px;
	transform: translateY(-50%);
	box-sizing: border-box;
}
.cptForm .frmCheck input + label > span:not(.hidden) {
	font-size: 16px;
	color: #444;
	line-height: 32px;
	letter-spacing: -0.4px;
	font-weight: 500;
}
.cptForm .frmCheck input + label > span.hglt {
	color: var(--key-blue01);
}
.cptForm .frmCheck input + label span.flag {
	display: inline-block;
	vertical-align: middle;
	font-size: 12px !important;
	color: #fff !important;
	font-weight: 500 !important;
	line-height: 1 !important;
	text-align: Center;
	padding: 6px 10px;
	margin-left: 5px;
	border-radius: 15px;
}
.cptForm .frmCheck input + label span.flag.type01 {
	background: #00b7fb;
}
.cptForm .frmCheck input + label span.flag.type02 {
	background: #01d186;
}
.cptForm .frmCheck input + label span.flag.type03 {
	background: #fdc000;
}
.cptForm .frmCheck input + label span.flag.type04 {
	background: #fc9448;
}
.cptForm .frmCheck input + label span.flag.type05 {
	background: #fe5f5f;
}
.cptForm .frmCheck input:checked:not(:disabled) + label::after {
	background: url("../../images/common/check_off.svg") no-repeat center var(--key-blue01);
	background-size: 14px 10px;
	border-color: var(--key-blue01);
}
.cptForm .frmCheck input:checked:disabled + label::after {
	background: url("../../images/common/check_off.svg") no-repeat center #dcdcdc;
	background-size: 14px 10px;
}
.cptForm .frmCheck input:disabled + label::after {
	background: url("../../images/common/check_off.svg") no-repeat center #dcdcdc;
	background-size: 14px 10px;
}
.cptForm .frmCheck.miniChk {
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	justify-content: flex-start;
	column-gap: 20px;
	/* 체크 */
	/* 체크 disabled */
	/* disabled */
}
.cptForm .frmCheck.miniChk > span.chkDiv {
	position: relative;
}
.cptForm .frmCheck.miniChk input {
	position: absolute;
	top: 0;
	left: 0;
	width: 1px;
	height: 1px;
	border: none;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	cursor: pointer;
}
.cptForm .frmCheck.miniChk input + label {
	position: relative;
	padding-left: 26px;
	margin-right: 30px;
	font-size: 16px;
	cursor: pointer;
}
.cptForm .frmCheck.miniChk input + label:last-child {
	margin-right: 0;
}
.cptForm .frmCheck.miniChk input + label::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	width: 16px;
	height: 24px;
	background: url("../../images/common/check_off.svg") no-repeat center;
	background-size: 16px 12px;
	transform: translateY(-50%);
	box-sizing: border-box;
	border: 0;
}
.cptForm .frmCheck.miniChk input + label > span:not(.hidden) {
	font-size: 16px;
	color: #444;
	line-height: 24px;
	letter-spacing: -0.4px;
	font-weight: 500;
}
.cptForm .frmCheck.miniChk input + label > span.hglt {
	color: var(--key-blue01);
}
.cptForm .frmCheck.miniChk input:checked:not(:disabled) + label::after {
	background: url("../../images/common/ico_check_on.svg") no-repeat center;
	background-size: 16px 12px;
	border: 0;
}
.cptForm .frmCheck.miniChk input:checked:disabled + label::after {
	background: url("../../images/common/check_off.svg") no-repeat center;
	background-size: 16px 12px;
}
.cptForm .frmCheck.miniChk input:disabled + label::after {
	background: url("../../images/common/check_off.svg") no-repeat center;
	background-size: 16px 12px;
}
.cptForm .frmCheck.blkChk {
	/* 체크 */
}
.cptForm .frmCheck.blkChk input + label::after {
	border-radius: 50%;
}
.cptForm .frmCheck.blkChk input:checked:not(:disabled) + label::after {
	background: url("../../images/common/chk_off.png") no-repeat center #444;
	background-size: 14px 10px;
	border-color: #444;
}
.cptForm .frmCheck.bluChk {
	/* 체크 */
}
.cptForm .frmCheck.bluChk input + label::after {
	border-radius: 50%;
}
.cptForm .frmCheck.bluChk input:checked:not(:disabled) + label::after {
	background: url("../../images/common/chk_off.png") no-repeat center var(--key-blue01);
	background-size: 14px 10px;
	border-color: var(--key-blue01);
}
.cptForm .frmCheck.type02 {
	/* 체크 */
	/* 체크 disabled */
	/* disabled */
}
.cptForm .frmCheck.type02 input {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: none;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	cursor: pointer;
}
.cptForm .frmCheck.type02 input + label {
	position: relative;
	padding-left: 30px;
	font-size: 1.6rem;
	cursor: pointer;
	display: block;
}
.cptForm .frmCheck.type02 input + label::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	width: 2rem;
	height: 2rem;
	border: 0;
	background: url("../../images/common/chk_ty02_off.svg") no-repeat center;
	transform: translateY(-50%);
	box-sizing: border-box;
}
.cptForm .frmCheck.type02 input + label > span:not(.hidden) {
	font-size: 16px;
	color: #444;
	line-height: 32px;
	letter-spacing: -0.4px;
	font-weight: 500;
}
.cptForm .frmCheck.type02 input + label > span.hglt {
	color: var(--key-blue01);
}
.cptForm .frmCheck.type02 input:checked:not(:disabled) + label::after {
	background: url("../../images/common/chk_ty02_on.svg") no-repeat center;
}
.cptForm .frmCheck.type02 input:checked:disabled + label::after {
	background: url("../../images/common/chk_ty02_off.svg") no-repeat center;
}
.cptForm .frmCheck.type02 input:disabled + label::after {
	background: url("../../images/common/chk_ty02_off.svg") no-repeat center;
}
.cptForm .frmIpt {
	position: relative;
	/*overlay type*/
	/*overlay type (long word)*/
	/*overlay type (short word)*/
}
.cptForm .frmIpt .grpCov {
	position: relative;
	width: 100%;
}
.cptForm .frmIpt .dataTxt {
	width: 100%;
	font-size: 18px;
	font-weight: 500;
	color: #000;
}
.cptForm .frmIpt .btnWrap {
	position: absolute;
	right: 0;
	bottom: 15px;
}
.cptForm .frmIpt .btnWrap .iptBtn {
	height: 40px;
	padding: 0 20px;
	margin-left: 2px;
	border-radius: 7px;
	line-height: 39px;
	font-size: 14px;
	color: #fff;
	display: inline-block;
}
.cptForm .frmIpt .btnWrap .iptBtn.blue {
	background: var(--key-blue01);
}
.cptForm .frmIpt .btnWrap .iptBtn.black {
	background: #444;
}
.cptForm .frmIpt.iptFlx {
	display: flex;
	flex-flow: row nowrap;
	align-items: flex-start;
	justify-content: flex-start;
	position: relative;
	flex-wrap: wrap;
}
.cptForm .frmIpt.iptFlx > span {
	display: inline-block;
	width: 120px;
	font-size: 14px;
	color: #444;
	font-weight: bold;
	line-height: 20px;
	letter-spacing: -0.35px;
	margin-right: 40px;
	padding-top: 4px;
}
.cptForm .frmIpt.iptFlx > input {
	width: calc(100% - 160px);
	padding: 0 0 16px 0;
}
.cptForm .frmIpt.ovrTxt .meas {
	font-size: 2rem;
	color: #000;
	font-weight: 500;
	line-height: 28px;
	letter-spacing: -0.45px;
	position: absolute;
	top: 0;
	right: 0;
}
.cptForm .frmIpt.lng input {
	padding-right: 30px;
	text-align: right;
}
.cptForm .frmIpt.lng .meas {
	width: 33px;
}
.cptForm .frmIpt.lng .formalDataTxt {
	left: auto;
	right: 30px;
	text-align: right;
}
.cptForm .frmIpt.srt input {
	padding-right: 24px;
	text-align: right;
}
.cptForm .frmIpt.srt .meas {
	width: 17px;
}
.cptForm .frmIpt.wTxt .iptTxt {
	display: flex;
	flex-flow: row nowrap;
	align-items: flex-start;
	justify-content: flex-start;
	margin-bottom: 1.4rem;
	color: #999;
}
.cptForm .frmIpt.wTxt .iptTxt .optTit {
	font-size: 1.2rem;
	color: #999999;
	font-weight: bold;
	line-height: 3.2rem;
}
.cptForm .frmIpt.wTxt .desc {
	font-size: 14px;
	color: var(--key-blue01);
	line-height: 32px;
	letter-spacing: -0.35px;
	font-weight: 400;
	margin-top: 10px;
}
.cptForm .frmIpt.half .iptCover {
	position: relative;
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	justify-content: center;
}
.cptForm .frmIpt.half .iptCover input {
	width: calc(50% - 20px);
	margin-right: 20px;
}
.cptForm .frmIpt.half .iptCover input:last-of-type {
	margin-right: 0;
	margin-left: 20px;
}
.cptForm .frmIpt.half .iptCover span.dash {
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 12px;
	height: 2px;
	background: #000;
}
.cptForm .frmIpt.flx {
	display: flex;
	column-gap: 20px;
}
.cptForm .frmIpt.flx .halfWrap {
	flex: 1 1 auto;
	display: inline-block;
	vertical-align: middle;
	position: relative;
}
.cptForm .frmIpt.flx .halfWrap input[type=text] {
	text-align: right;
	padding-right: 25px;
}
.cptForm .frmIpt.flx .halfWrap input[type=text].two {
	padding-right: 40px;
}
.cptForm .frmIpt.btnTy .iptCover {
	position: relative;
}
.cptForm .frmIpt.btnTy .iptCover button {
	font-size: 14px;
	color: #fff;
	font-weight: 400;
	line-height: 20px;
	letter-spacing: -0.35px;
	background: #444;
	padding: 10px 20px;
	box-sizing: border-box;
	position: absolute;
	bottom: 15px;
	right: 0;
	border-radius: 7px;
}
.cptForm .frmIpt.spEft .resetBtn {
	display: none;
	width: 27px;
	height: 27px;
	background: url("../../images/common/ico_reset.svg") center center no-repeat;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
}
.cptForm .frmTxt .required {
	display: inline-block;
	widtH: 5px;
	height: 5px;
	background: #005ce0;
	border-radius: 50%;
	vertical-align: text-top;
}
.cptForm .frmTxt:last-child {
	margin-bottom: 0;
}
.cptForm .frmTxt .title {
	font-size: 24px;
	color: #000;
	font-weight: bold;
	line-height: 42px;
	letter-spacing: -0.6px;
}
.cptForm .frmTxt .subTitle {
	font-size: 18px;
	color: #444;
	font-weight: 400;
	line-height: 32px;
	letter-spacing: -0.45px;
	margin-top: 5px;
}
.cptForm .frmTxt .dirTitle + span {
	display: inline-block;
	vertical-align: middle;
	padding-left: 10px;
	margin-left: 10px;
	border-left: 1px solid #dcdcdc;
	line-height: 15px;
	font-size: 16px;
	color: #444;
	font-weight: 400;
	letter-spacing: -0.4px;
}
.cptForm .frmTxt .optTit {
	font-size: 1.2rem;
	color: #999;
	font-weight: bold;
	line-height: 3.2rem;
}
.cptForm .datepick .datepickWrap {
	width: 100%;
}
.cptForm .datepick .datepickWrap .tui-datepicker-input {
	width: 100%;
	max-width: 420px;
	height: 60px;
	border-radius: 13px;
	border: 1px solid #bebebe;
	padding: 0 64px 0 20px;
}
.cptForm .datepick .datepickWrap .tui-datepicker-input input {
	border: none;
	border-radius: 10px;
	padding: 0;
	font-size: 16px;
	font-weight: 500;
}
.cptForm .datepick .datepickWrap .tui-datepicker-input .tui-ico-date {
	width: 24px;
	height: 24px;
	margin: 0;
	background: url(../../images/common/ico_calendar.svg) center no-repeat;
	right: 20px;
	transform: translateY(-50%);
}
.cptForm .frmBox {
	width: 100%;
	border: 1px solid #dcdcdc;
	border-radius: 15px;
	padding: 40px;
}
.cptForm .frmBox.typeOnly {
	padding: 30px;
}
.cptForm .frmBox + .frmBox {
	margin-top: 10px;
}
.cptForm .frmBox .boxGroup > .item {
	margin-bottom: 30px;
}
.cptForm .frmBox .boxGroup > .item:last-child {
	margin-bottom: 0;
}
.cptForm .imgWrap {
	margin: 2.4rem 0;
	text-align: center;
}
.cptForm .imgWrap img {
	max-width: 100%;
}
.cptForm .insertChkbox {
	padding: 0 1rem;
}
.cptForm .insertChkbox .divTxt {
	margin: 1rem 0;
	padding-left: 3rem;
	width: 100%;
	font-size: 1.4rem;
	color: #666;
	font-weight: 400;
	line-height: 2.2rem;
	letter-spacing: -0.0035rem;
	word-break: keep-all;
}
.cptForm .insertChkbox .divTxt + .frmCheck {
	padding-left: 30px;
}
.cptForm .frmList {
	width: 100%;
	margin-top: 30px;
}
.cptForm .frmList .listGroup > .item:last-child {
	margin-bottom: 0;
}
.cptForm .frmList .listGroup > .item.inline {
	margin-bottom: 25px;
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
}
.cptForm .frmList .listGroup > .item.inline .frmTxt {
	width: 130px;
	margin: 0 30px 0 0;
	padding-top: 10px;
}
.cptForm .frmList .listGroup > .item.inline .frmIpt {
	width: calc(100% - 160px);
}
.cptForm .frmList .listGroup > .item.inline .frmIpt .dataTxt {
	padding-top: 13px;
}
.cptForm .frmList .listGroup .frmCombo + .frmIpt {
	margin-top: 18px;
}
.cptForm .frmList + .frmTxt {
	margin-top: 40px;
}
.cptForm .frmRdoList {
	width: 100%;
	margin-top: 30px;
}
.cptForm .frmRdoList .listGroup > .item {
	margin-bottom: 4rem;
}
.cptForm .frmRdoList .listGroup > .item:last-child {
	margin-bottom: 0;
}
.cptForm .frmRdoList .listGroup > .item .txt {
	font-size: 1.4rem;
	color: #000;
	word-break: keep-all;
}
.cptForm .frmRdoList .listGroup > .item .radioWrap {
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	justify-content: center;
	margin-top: 2rem;
}
.cptForm .frmRdoList .listGroup > .item .radioWrap > div {
	width: calc(50% - 0.5rem);
}
.comAccorTable + .cptForm {
	margin-top: 40px;
	padding-top: 50px;
	position: relative;
}
.comAccorTable + .cptForm::before {
	content: "";
	width: 100vw;
	height: 10px;
	background: #f3f3f3;
	display: block;
	position: absolute;
	left: -20px;
	top: 0;
}
.cptForm .comBtnGroup:last-child {
	margin-top: 4rem;
}
.cptConfirmRadio + .cptForm {
	margin-top: 12rem;
}

@media all and (max-width: 370px) {
	.cptForm .frmCheck.type02 input + label {
		padding: 0 30px;
	}
}
/*--------------------------------- 유의사항(추가 알림) 박스 --------------------------------*/
.comAlertBox {
	width: 100%;
	padding: 20px;
	margin: 20px 0;
	border-radius: 15px;
	background: #f3f3f3;
}
.comAlertBox .alertTxt {
	margin-top: 10px;
	font-size: 1.4rem;
	color: #444;
	line-height: 1.57;
	word-break: keep-all;
}
.comAlertBox .alertTxt:first-child {
	margin-top: 0;
}

/* -------------------------------- 테이블 -------------------------------- */
.comTable {
	width: 100%;
	margin-top: 20px;
	position: relative;
}
.comTable .rightText {
	width: 100%;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 20px;
	color: #000;
	text-align: right;
	position: absolute;
	left: 0;
	top: -30px;
}
.comTable .scrollBox {
	width: 100%;
	overflow-x: auto;
}
.comTable table {
	width: 100%;
	table-layout: fixed;
	border-top: 1px solid #000;
	border-collapse: collapse;
	border-spacing: 0;
}
.comTable table.free {
	width: auto;
}
.comTable table tr th {
	padding: 15px 10px;
	font-size: 1.4rem;
	text-align: center;
	color: #000;
	font-weight: 400;
	line-height: 1.5;
	border-bottom: 1px solid #dcdcdc;
	border-right: 1px solid #dcdcdc;
	background: #f5f5f5;
}
.comTable table tr th:last-child {
	border-right: 0;
}
.comTable table tr td {
	padding: 15px 20px;
	font-size: 1.4rem;
	text-align: center;
	color: #000;
	font-weight: 400;
	line-height: 1.7;
	border-bottom: 1px solid #dcdcdc;
	letter-spacing: -0.4px;
	border-right: 1px solid #dcdcdc;
	background: #fff;
}
.comTable table tr td.lBdr {
	border-left: 1px solid #dcdcdc;
}
.comTable table tr td:last-child {
	border-right: 0;
}
.comTable table tr .left {
	text-align: left;
	padding-left: 20px;
}
.comTable + .comContTit {
	margin-top: 40px;
}

.comAccorTable {
	width: 100%;
	margin-top: 20px;
}
.comAccorTable .scrollBox {
	width: 100%;
	overflow-x: auto;
}
.comAccorTable .accorThead {
	border-top: 1px solid #dcdcdc;
	border-bottom: 1px solid #dcdcdc;
	display: flex;
	justify-content: flex-start;
	align-items: center;
}
.comAccorTable .accorThead .td {
	height: 60px;
	text-align: center;
	line-height: 59px;
	font-size: 14px;
	font-weight: 500;
	color: #000;
	background: #f5f5f5;
	flex: 0 0 33.3333%;
	position: relative;
}
.comAccorTable .accorThead .td::after {
	content: "";
	width: 1px;
	height: 30px;
	background: #ddd;
	position: absolute;
	top: 15px;
	right: 0;
}
.comAccorTable .accorThead .td:last-child::after {
	display: none;
}
.comAccorTable .accorTbody {
	width: 100%;
}
.comAccorTable .accorTbody .accorTit {
	width: 100%;
	display: flex;
	position: relative;
	border-bottom: 1px solid #dcdcdc;
}
.comAccorTable .accorTbody .accorTit::after {
	display: block;
	content: "";
	width: 18px;
	height: 10px;
	background: url(../../images/common/ico_table_down.svg) center no-repeat;
	position: absolute;
	right: 10px;
	top: 25px;
	transition: all 0.3s;
}
.comAccorTable .accorTbody .accorTit.nowOn + .accorDt {
	max-height: 804px;
}
.comAccorTable .accorTbody .accorTit.nowOn::after {
	transform: rotate(180deg);
}
.comAccorTable .accorTbody .accorTit .td {
	padding: 19px 0;
	text-align: center;
	font-size: 1.4rem;
	color: #000;
	flex: 0 0 33.3333%;
}
.comAccorTable .accorTbody .accorDt {
	height: auto;
	max-height: 0;
	overflow: hidden;
	transition: all 0.3s;
}
.comAccorTable .accorTbody .accorDt .detail {
	background: #f2f9ff;
}
.comAccorTable .accorTbody .accorDt .detail .dttr {
	border-bottom: 1px solid #bfdfff;
	display: flex;
}
.comAccorTable .accorTbody .accorDt .detail .dttr .td {
	padding: 14px 0;
	text-align: center;
	font-size: 14px;
	color: #000;
	flex: 0 0 33.3333%;
}

/* -------------------------------- 게시판 내 파일 다운로드 -------------------------------- */
.comDownFile {
	width: 100%;
	margin-top: 20px;
}
.comDownFile .download {
	width: 100%;
	margin-top: 10px;
	padding: 20px 24px;
	font-size: 1.4rem;
	line-height: 1.5;
	color: #333;
	border-radius: 10px;
	background: #f5fcff;
	display: block;
}

/* -------------------------------- 게시판 상단 검색 등 -------------------------------- */
.comBoardTop {
	width: 100%;
	padding: 0 20px;
}
.comBoardTop .searchGroup {
	width: 100%;
	height: 60px;
	position: relative;
}
.comBoardTop .searchGroup .searchIpt {
	width: 100%;
	padding: 0 20px;
	font-size: 16px;
	font-weight: 400;
	color: #000;
	line-height: 58px;
	border: 1px solid #bebebe;
	border-radius: 13px;
}
.comBoardTop .searchGroup .searchIpt::placeholder {
	color: #ccc;
}
.comBoardTop .searchGroup .searchBtn {
	width: 24px;
	height: 24px;
	font-size: 0;
	border: 0;
	background: url(../../images/common/ico_sch.svg) center no-repeat;
	position: absolute;
	right: 20px;
	top: 18px;
}

/* -------------------------------- 게시판 더보기 버튼 -------------------------------- */
.comMorePage {
	width: 100%;
	padding: 0 20px;
	margin-top: 30px;
}
.comMorePage .btnMore {
	width: 100%;
	height: 50px;
	font-size: 1.4rem;
	font-weight: 500;
	color: #444;
	text-align: center;
	line-height: 48px;
	border: 1px solid #dcdcdc;
	border-radius: 10px;
	position: relative;
}
.comMorePage .btnMore .icoDown {
	height: 100%;
	padding-right: 20px;
	display: inline-block;
	position: relative;
}
.comMorePage .btnMore .icoDown::after {
	content: "";
	width: 12px;
	height: 12px;
	background: url(../../images/common/ico_dep3_down.svg) right center no-repeat;
	display: inline-block;
	position: absolute;
	right: 0;
	top: calc(50% - 6px);
	transform: rotate(180deg);
}

/* --------------------------------게시판 페이징 추가 20240613 --------------------------------*/
.comPaging {
	width: 100%;
	position: relative;
	margin-top: 40px;
}
.comPaging ul {
	width: 100%;
	position: relative;
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	justify-content: center;
	gap: 30px;
}
.comPaging ul li.pgBtn > a {
	display: block;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	background: #e5e5e5;
	position: relative;
}
.comPaging ul li.pgBtn > a::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 8px;
	height: 12px;
	background: url(../../images/common/paging_btn.svg) 50% 50% no-repeat;
	transform: translate(-50%, -50%);
}
.comPaging ul li.prev > a::before {
	transform: translate(-50%, -50%) rotate(180deg);
}
.comPaging ul li.notAvail > a {
	opacity: 0.5;
	cursor: default;
}
.comPaging ul li.numInfo {
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	justify-content: flex-start;
	gap: 5px;
}
.comPaging ul li.numInfo span {
	font-size: 16px;
	color: #666;
	font-weight: 500;
	line-height: 42px;
	letter-spacing: -0.8px;
}

/* -------------------------------- 공통 버튼 -------------------------------- */
.comBtn {
	width: 100%;
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	margin-top: 30px;
	/*정렬*/
	/*버튼타입*/
}
.comBtn.center {
	justify-content: center;
}
.comBtn.left {
	justify-content: flex-start;
}
.comBtn.right {
	justify-content: flex-end;
}
.comBtn .showList {
	width: 100%;
	height: 50px;
	line-height: 50px;
	text-align: center;
	background: var(--key-blue01);
	border-radius: 10px;
	position: relative;
}
.comBtn .showList .ico_arr {
	padding-right: 20px;
	font-size: 1.4rem;
	color: #fff;
	font-weight: 500;
	background: url(../../images/common/ico_list_arr.svg) right center no-repeat;
}

/* -------------------------------- 공통 버튼 -------------------------------- */
.comSelectList .item {
	margin-top: 30px;
}
.comSelectList .item:first-child {
	margin-top: 0;
}
.comSelectList .item:last-child {
	padding-bottom: 20px;
}
.comSelectList .item .basic {
	font-size: 1.6rem;
	line-height: 1.5;
	font-weight: 500;
	color: #444;
}
.comSelectList .item .basic.active {
	color: var(--key-blue01);
}

/* -------------------------------- 공통 버튼 -------------------------------- */
.comResult {
	margin-top: 20px;
}
.comResult .rsltBox .rsltGroup .item {
	width: 100%;
	margin-top: 10px;
	padding: 30px;
	border: 1px solid #dcdcdc;
	border-radius: 25px;
}
.comResult .rsltBox .rsltGroup .item:first-child {
	margin-top: 0;
}
.comResult .rsltBox .rsltGroup .item .tag {
	width: 100%;
	font-size: 1.4rem;
	line-height: 1.5;
	font-weight: 500;
	color: #999;
	text-align: center;
}
.comResult .rsltBox .rsltGroup .item .rslt {
	width: 100%;
	margin-top: 20px;
}
.comResult .rsltBox .rsltGroup .item .rslt dt {
	width: 100%;
	font-size: 1.8rem;
	line-height: 1.5;
	font-weight: 500;
	color: #000;
	text-align: center;
}
.comResult .rsltBox .rsltGroup .item .rslt dd {
	width: 100%;
	font-family: "RedHatDisplay";
	font-size: 2.8rem;
	line-height: 1.5;
	font-weight: 700;
	color: var(--key-blue01);
	letter-spacing: -0.07rem;
	text-align: center;
}
/*2024.07.10 대출신청 및 기타 대출 프로세스에서 사용할 로딩이미지*/
.loanLoading {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.5);
	z-index: 999;
}
.loanLoading > div {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 9999;
	text-align: center;
	width: 100%;
}
.loanLoading > div img {
	display: inline-block;
	position: relative;
	width: 18rem;
	animation: motion 0.6s linear 0s infinite alternate;
	top: 0;
}
.loanLoading > div p {
	font-size: 1.8rem;
	color: #fff;
	font-weight: 400;
	line-height: 2.8rem;
	letter-spacing: -0.45px;
	text-align: center;
	margin-top: 1rem;
	width: 100%;
}

@keyframes motion {
	0% {
		top: 0px;
	}
	100% {
		top: 15px;
	}
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl9kZWZhdWx0LnNjc3MiLCJseXQvX2xheW91dC5zY3NzIiwiY3B0L19oZWFkZXIuc2NzcyIsImNwdC9fY29tcG9uZW50LnNjc3MiLCJjcHQvX21haW4uc2NzcyIsImNwdC9fZm9vdGVyLnNjc3MiLCJjcHQvX3NuYi5zY3NzIiwiY3B0L19ib2FyZC5zY3NzIiwiY3B0L19jb250ZW50cy5zY3NzIiwiY3B0L19ldGMuc2NzcyIsImNwdC9fc3V6LnNjc3MiLCJjcHQvX2pvbmF0aGFuS2ltLnNjc3MiLCJjcHQvX2Nob2dhbmdoYWUuc2NzcyIsImNvbS9fY29tbW9uLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUNBO0NBQ0U7Q0FDQTs7O0FBR0Y7QUFDQTtDQUNJO0NBQ0E7Q0FDQTtDQUNBOztBQU1GO0FBQ0E7Q0FDRTtDQUNBO0NBQ0E7Q0FDQTs7QUFLRjtBQUNBO0NBQ0U7Q0FDQTtDQUNBO0NBQ0E7O0FBSUY7QUFDQTtDQUNFO0NBQ0E7Q0FDQTtDQUNBOztBQUlGO0FBQ0E7Q0FDRTtDQUNBO0NBQ0E7Q0FDQTs7QUFJRjtBQUNBO0NBQ0U7Q0FDQTtDQUNBO0NBQ0E7O0FBRUY7QUFDQTtDQUNFO0NBQ0E7Q0FDQTtDQUNBOztBQUVGO0FBQ0E7Q0FDRTtDQUNBO0NBQ0E7Q0FDQTs7QUFFRjtDQUNFO0NBQ0E7Q0FDQTtDQUNBO0NBQ0E7O0FBRUo7Q0FBRztDQUF3QjtDQUFtRDs7O0FBQzlFO0NBQXFJO0NBQVM7OztBQUM5STtDQUFjOzs7QUFDZDtDQUFrQjs7O0FBQ2xCO0NBQWU7OztBQUNmO0NBQXVEO0NBQVc7OztBQUNsRTtDQUE4Qjs7O0FBQzlCO0NBQWlCO0NBQXlCOzs7QUFDMUM7Q0FBUTtDQUFjO0NBQTZCOzs7QUFDbkQ7Q0FBTTs7O0FBQ047Q0FBOEM7Q0FBZTtDQUFpQjtDQUF1RDtFQUFZO0FBQ2pKO0NBQUc7Q0FBVzs7O0FBQ2Q7Q0FBbUI7OztBQUNuQjtDQUFzQztDQUFrQjs7O0FBQ3hEO0NBQVM7OztBQUVUO0NBQW1CO0NBQVc7Q0FBWTtD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O0NBQVk7Q0FBaUI7OztBQUsvRTtBQUVJO0NBQ0k7O0FBQ0E7Q0FDSTs7QUFFSjtDQUNJOztBQUVKO0NBQ0k7Q0FBa0I7Q0FBaUI7Q0FBaUI7O0FBQ3BEO0NBQ0k7OztBQU1oQjtBQUNBO0NBQ0k7O0FBR1E7Q0FDSTtDQUFZO0NBQWlCO0NBQWM7Q0FBMEI7O0FBRXJFO0NBQWM7O0FBQ2Q7Q0FDSTtDQUFZO0NBQWtCO0NBQWlCO0NBQWlCO0NBQVk7O0FBRWhGO0NBQ0k7Q0FBWTs7QUFDWjtDQUNJO0NBQVk7Q0FBa0I7Q0FBaUI7Q0FBaUI7Q0FBWTs7QUFLaEY7Q0FDSTtDQUFZO0NBQTZCO0NBQWtCO0NBQWlCO0NBQWlCO0NBQXlCO0NBQXlCOztBQVl2SztBQUNBO0NBQ0k7Q0FBZ0I7Q0FBTztDQUFRO0NBQVk7Q0FBYTtDQUE0Qjs7QUFFcEY7Q0FDSTtDQUFtQjtDQUFTO0NBQVU7Q0FBZ0M7Q0FBYztDQUFtQjs7QUFDdkc7Q0FBSztDQUFzQjtDQUFtQjtDQUMxQztDQUFxRDs7QUFFekQ7Q0FBRztDQUFrQjtDQUFZO0NBQWlCO0NBQW9CO0NBQXdCO0NBQW1CO0NBQWlCOzs7QUFHMUk7Q0FDSTtFQUFJOztDQUNKO0VBQU0iLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiXHJcbjpyb290IHtcclxuICAtLWtleS1ibHVlMDE6IzBmNTA5NDtcclxuICAtLWtleS10ZXh0MDE6IzBmNTA5NDtcclxufVxyXG5cclxuLyog67O46rOg65SVIFRoaW4gKi9cclxuQGZvbnQtZmFjZSB7XHJcbiAgICBmb250LWZhbWlseTogXCJOb3RvU2Fuc0NKS2tyXCI7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICBmb250LXdlaWdodDogMjAwO1xyXG4gICAgc3JjOiB1cmwoXCIuLi8uLi9jb21tb24vd2ViZm9udC9Ob3RvU2Fuc0tSLVRoaW4ud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLFxyXG4gICAgICB1cmwoXCIuLi8uLi9jb21tb24vd2ViZm9udC9Ob3RvU2Fuc0tSLVRoaW4ud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXHJcbiAgICAgIHVybChcIi4uLy4uL2NvbW1vbi93ZWJmb250L05vdG9TYW5zS1ItVGhpbi5vdGZcIikgZm9ybWF0KFwib3BlbnR5cGVcIik7XHJcbiAgICAgIFxyXG4gIH1cclxuICBcclxuICAvKiDrs7jqs6DrlJUgTGlnaHQgKi9cclxuICBAZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiBcIk5vdG9TYW5zQ0pLa3JcIjtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgICBzcmM6IHVybChcIi4uLy4uL2NvbW1vbi93ZWJmb250L05vdG9TYW5zS1ItTGlnaHQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLFxyXG4gICAgICB1cmwoXCIuLi8uLi9jb21tb24vd2ViZm9udC9Ob3RvU2Fuc0tSLUxpZ2h0LndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLFxyXG4gICAgICB1cmwoXCIuLi8uLi9jb21tb24vd2ViZm9udC9Ob3RvU2Fuc0tSLUxpZ2h0Lm90ZlwiKSBmb3JtYXQoXCJvcGVudHlwZVwiKTtcclxuICAgICAgXHJcbiAgfVxyXG4gIC8qIOuzuOqzoOuUlSBSZWd1bGFyICovXHJcbiAgQGZvbnQtZmFjZSB7XHJcbiAgICBmb250LWZhbWlseTogXCJOb3RvU2Fuc0NKS2tyXCI7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgc3JjOiB1cmwoXCIuLi8uLi9jb21tb24vd2ViZm9udC9Ob3RvU2Fuc0tSLVJlZ3VsYXIud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLFxyXG4gICAgICB1cmwoXCIuLi8uLi9jb21tb24vd2ViZm9udC9Ob3RvU2Fuc0tSLVJlZ3VsYXIud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXHJcbiAgICAgIHVybChcIi4uLy4uL2NvbW1vbi93ZWJmb250L05vdG9TYW5zS1ItUmVndWxhci5vdGZcIikgZm9ybWF0KFwib3BlbnR5cGVcIik7XHJcbiAgfVxyXG4gIC8qIOuzuOqzoOuUlSBNZWRpdW0gKi9cclxuICBAZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiBcIk5vdG9TYW5zQ0pLa3JcIjtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICBzcmM6IHVybChcIi4uLy4uL2NvbW1vbi93ZWJmb250L05vdG9TYW5zS1ItTWVkaXVtLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSxcclxuICAgICAgdXJsKFwiLi4vLi4vY29tbW9uL3dlYmZvbnQvTm90b1NhbnNLUi1NZWRpdW0ud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXHJcbiAgICAgIHVybChcIi4uLy4uL2NvbW1vbi93ZWJmb250L05vdG9TYW5zS1ItTWVkaXVtLm90ZlwiKSBmb3JtYXQoXCJvcGVudHlwZVwiKTtcclxuICB9XHJcbiAgLyog67O46rOg65SVIEJvbGQgKi9cclxuICBAZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiBcIk5vdG9TYW5zQ0pLa3JcIjtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBzcmM6IHVybChcIi4uLy4uL2NvbW1vbi93ZWJmb250L05vdG9TYW5zS1ItQm9sZC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksXHJcbiAgICAgIHVybChcIi4uLy4uL2NvbW1vbi93ZWJmb250L05vdG9TYW5zS1ItQm9sZC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcclxuICAgICAgdXJsKFwiLi4vLi4vY29tbW9uL3dlYmZvbnQvTm90b1NhbnNLUi1Cb2xkLm90ZlwiKSBmb3JtYXQoXCJvcGVudHlwZVwiKTtcclxuICB9XHJcbiAgLyog7JaR7Y+JIG5vcm1hbCAqL1xyXG4gIEBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6IFwiWWFuZ1B5ZW9uZ01cIjtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICBzcmM6IHVybChcIi4uLy4uL2NvbW1vbi93ZWJmb250L1lhbmdQeWVvbmdNLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcclxuICB9XHJcbiAgLyog7JaR7Y+JIEJvbGQgKi9cclxuICBAZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiBcIllhbmdQeWVvbmdCXCI7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgc3JjOiB1cmwoXCIuLi8uLi9jb21tb24vd2ViZm9udC9ZYW5nUHllb25nQi53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XHJcbiAgfVxyXG4gIC8qIOyWke2PiSBMaWdodCAqL1xyXG4gIEBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6IFwiWWFuZ1B5ZW9uZ0xcIjtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgICBzcmM6IHVybChcIi4uLy4uL2NvbW1vbi93ZWJmb250L1lhbmdQeWVvbmdMLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcclxuICB9XHJcbiAgQGZvbnQtZmFjZSB7XHJcbiAgICBmb250LWZhbWlseTogJ1JlZEhhdERpc3BsYXknO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgZm9udC13ZWlnaHQ6IDMwMCA5MDA7XHJcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XHJcbiAgICBzcmM6IHVybChcIi4uLy4uL2NvbW1vbi93ZWJmb250L1JlZEhhdERpc3BsYXkud29mZjJcIikgZm9ybWF0KCd3b2ZmMicpO1xyXG4gIH1cclxuKiB7Ym94LXNpemluZzogYm9yZGVyLWJveDsgZm9udC1mYW1pbHk6J1JvYm90bycsICdOb3RvU2Fuc0NKS2tyJywgc2Fucy1zZXJpZjsgbGV0dGVyLXNwYWNpbmc6IC0wLjA1ZW07fVxyXG5ib2R5LGRpdixkbCxkdCxkZCx1bCxvbCxsaSxoMSxoMixoMyxoNCxoNSxoNixwcmUsY29kZSxmb3JtLGZpZWxkc2V0LGxlZ2VuZCx0ZXh0YXJlYSxwLGJsb2NrcXVvdGUsdGgsdGQsaW5wdXQsc2VsZWN0LHRleHRhcmVhLGJ1dHRvbiB7bWFyZ2luOjA7cGFkZGluZzowfVxyXG5maWVsZHNldCxpbWcge2JvcmRlcjowIG5vbmV9XHJcbmRsLHVsLG9sLG1lbnUsbGkge2xpc3Qtc3R5bGU6bm9uZX1cclxuYmxvY2txdW90ZSwgcSB7cXVvdGVzOiBub25lfVxyXG5ibG9ja3F1b3RlOmJlZm9yZSwgYmxvY2txdW90ZTphZnRlcixxOmJlZm9yZSwgcTphZnRlciB7Y29udGVudDonJztjb250ZW50Om5vbmV9XHJcbmlucHV0LHNlbGVjdCx0ZXh0YXJlYSxidXR0b24ge3ZlcnRpY2FsLWFsaWduOm1pZGRsZX1cclxuaW5wdXQsIHRleHRhcmVhIHstd2Via2l0LWJvcmRlci1yYWRpdXM6MDsgLXdlYmtpdC1hcHBlYXJhbmNlOm5vbmU7fVxyXG5idXR0b24ge2JvcmRlcjowIG5vbmU7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtjdXJzb3I6cG9pbnRlcn1cclxuYm9keSB7YmFja2dyb3VuZDojZmZmfVxyXG5odG1sLGJvZHksdGgsdGQsaW5wdXQsc2VsZWN0LHRleHRhcmVhLGJ1dHRvbiB7Zm9udC1zaXplOjEwcHg7bGluZS1oZWlnaHQ6MS41OyBmb250LWZhbWlseTonTW9udHNlcnJhdCcsICdOb3RvU2Fuc0NKS2tyJywgc2Fucy1zZXJpZjsgY29sb3I6IzAwMH0gLyogY29sb3LqsJLsnYAg65SU7J6Q7J246rCA7J2065Oc7JeQIOunnuqyjOyCrOyaqSAqL1xyXG5hIHtjb2xvcjojMDAwO3RleHQtZGVjb3JhdGlvbjpub25lfVxyXG5hOmFjdGl2ZSwgYTpob3ZlciB7dGV4dC1kZWNvcmF0aW9uOm5vbmU7fVxyXG5hZGRyZXNzLGNhcHRpb24sY2l0ZSxjb2RlLGRmbixlbSx2YXIge2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0Om5vcm1hbH1cclxuY2FwdGlvbiB7Zm9udC1zaXplOiAwO31cclxuXHJcbmlucHV0W3R5cGU9cmFkaW9dIHt3aWR0aDoxcHg7IGhlaWdodDoxcHg7IGZvbnQtc2l6ZTowOyBvcGFjaXR5OjAuMDE7IG92ZXJmbG93OmhpZGRlbjt9XHJcbmlucHV0W3R5cGU9Y2hlY2tib3hdIHt3aWR0aDoxcHg7IGhlaWdodDoxcHg7IGZvbnQtc2l6ZTowOyBvcGFjaXR5OjAuMDE7IG92ZXJmbG93OmhpZGRlbjt9XHJcblxyXG5zZWxlY3Qgey1tb3otYXBwZWFyYW5jZTpub25lOyAtd2Via2l0LWFwcGVhcmFuY2U6bm9uZTsgYXBwZWFyYW5jZTpub25lOyAtbW96LWJvcmRlci1yYWRpdXM6MDsgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwO2JvcmRlci1yYWRpdXM6IDA7ICBiYWNrZ3JvdW5kOiNmZmYgdXJsKC4uLy4uL2NvbW1vbi9pbWFnZXMvaWNvbl9zZWxlY3QucG5nKSBjYWxjKDEwMCUgLSA5cHgpIGNlbnRlciBuby1yZXBlYXQ7fVxyXG5zZWxlY3Q6Oi1tcy1leHBhbmQge2Rpc3BsYXk6bm9uZX1cclxubGFiZWwge2ZvbnQtc2l6ZTogMDt9XHJcblxyXG4uc2tpcCAucXVpY2tCdG4ge2Rpc3BsYXk6IGJsb2NrOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAwcHg7YmFja2dyb3VuZDogIzA5MjQ3MzsgZm9udC1zaXplOiAxNXB4OyBjb2xvcjogI2ZmZjsgb3ZlcmZsb3c6IGhpZGRlbjsgdGV4dC1hbGlnbjogY2VudGVyO31cclxuLnNraXAgLnF1aWNrQnRuOmZvY3VzIHtoZWlnaHQ6YXV0bzt9XHJcblxyXG4uaGlkZSB7Zm9udC1zaXplOjAgIWltcG9ydGFudDsgcG9zaXRpb246Zml4ZWQ7IGxlZnQ6LTUwMDBweDsgdG9wOjA7fVxyXG5cclxuLmlucHV0W3R5cGU9dGV4dF0ge31cclxuXHJcbmJvZHkubm9TY3JsIHtoZWlnaHQ6MTAwdmg7IG92ZXJmbG93OmhpZGRlbjt9XHJcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0g6riw67O4IOugiOydtOyVhOybgyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcbi5seXRMYXlvdXR7XHJcbiAgICB3aWR0aDoxMDAlO1xyXG5cclxuICAgIC5sYXlvdXRBcmVhIHtcclxuICAgICAgICB3aWR0aDoxMDAlO1xyXG5cclxuICAgICAgICAubGF5b3V0VG9we1xyXG4gICAgICAgICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmxheW91dENvbnRhaW5lciB7XHJcbiAgICAgICAgICAgIC5sYXlvdXRNYWluQ29udHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmxheW91dFN1YlZpc3VhbHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmxheW91dFN1YkNvbnR7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5zdWJDb250QXJlYXtcclxuICAgICAgICAgICAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmxheW91dENvbnR7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5sYXlvdXRGbG9hdCB7d2lkdGg6IDEwMCU7fVxyXG4gICAgICAgIH1cclxuICAgICAgICAubGF5b3V0Rm9vdGVye1xyXG4gICAgICAgICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0g66CI7J207Ja07Yyd7JeFIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLm1vZFBvcHVwe1xyXG4gICAgJi5mdWxse1xyXG4gICAgICAgIHdpZHRoOjEwMHZ3OyBoZWlnaHQ6MTAwZHZoOyBwb3NpdGlvbjpmaXhlZDsgbGVmdDowOyB0b3A6MDsgYmFja2dyb3VuZDojZmZmOyB6LWluZGV4OjEwMDA7XHJcblxyXG4gICAgICAgICYucG9wT3BlbntcclxuICAgICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5wb3B1cEJveHtcclxuICAgICAgICAgICAgd2lkdGg6MTAwJTsgaGVpZ2h0OjEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5wb3BUaXRBcmVhe1xyXG4gICAgICAgICAgICB3aWR0aDoxMDAlOyBoZWlnaHQ6NzBweDsgcGFkZGluZy1sZWZ0OjIwcHg7IGJhY2tncm91bmQ6I2ZmZjsgZGlzcGxheTpmbGV4OyBwb3NpdGlvbjpmaXhlZDsgbGVmdDowOyB0b3A6MDtcclxuICAgICAgICAgICAgLnRpdHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOmNhbGMoMTAwJSAtIDYwcHgpOyBoZWlnaHQ6IDEwMCU7IHBhZGRpbmctbGVmdDogMjdweDsgZm9udC1zaXplOiAycmVtOyBmb250LXdlaWdodDogNTAwOyBjb2xvcjogIzAwMDsgbGluZS1oZWlnaHQ6IDcwcHg7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAgICAgICAgICY6OmFmdGVye1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7IHdpZHRoOiAxMnB4OyBoZWlnaHQ6IDEycHg7IGJhY2tncm91bmQ6IHVybCguLi8uLi9pbWFnZXMvY29tbW9uL2ljb19nbmJfYmFjay5zdmcpIGNlbnRlciBuby1yZXBlYXQ7IFxyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyBwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IDA7IHRvcDogMzBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuY2xvc2VCdG57XHJcbiAgICAgICAgICAgICAgICB3aWR0aDo2MHB4OyBoZWlnaHQ6MTAwJTsgZm9udC1zaXplOjA7IGJhY2tncm91bmQ6dXJsKC4uLy4uL2ltYWdlcy9jb21tb24vaWNvX2Nsb3NlLnN2ZykgY2VudGVyIG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAucG9wQ29udEFyZWF7XHJcbiAgICAgICAgICAgIGhlaWdodDoxMDAlOyBwYWRkaW5nLXRvcDo5NHB4OyBwYWRkaW5nLWJvdHRvbTo2MHB4OyBvdmVyZmxvdy15OiBhdXRvO1xyXG5cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0g7Yag7Iqk7Yq47Yyd7JeFIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLm1vZFRvc3RQb3Age1xyXG4gICAgd2lkdGg6MTAwJTsgaGVpZ2h0OjE1MHZoOyBkaXNwbGF5Om5vbmU7IHBvc2l0aW9uOmZpeGVkOyBsZWZ0OjA7IGJvdHRvbTowOyB6LWluZGV4OjEwMDA7XHJcbiAgICAucG9wdXBEaW0ge1xyXG4gICAgICAgIHdpZHRoOjEwMCU7IGhlaWdodDoxMDAlOyBiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC41KTsgZm9udC1zaXplOiAwOyBwb3NpdGlvbjpmaXhlZDsgbGVmdDowOyBib3R0b206MDsgei1pbmRleDoxMDAwOyBhbmltYXRpb246IDAuM3MgaGlkZURpbTsgYW5pbWF0aW9uLWZpbGwtbW9kZTpmb3J3YXJkcztcclxuICAgIH1cclxuICAgIC5wb3B1cEFyZWF7XHJcbiAgICAgICAgd2lkdGg6MTAwJTsgaGVpZ2h0OmF1dG87IG1heC1oZWlnaHQ6Y2FsYygxMDBkdmggLSAyMHB4KTsgZGlzcGxheTpmbGV4OyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgcG9zaXRpb246YWJzb2x1dGU7IGxlZnQ6MDsgYm90dG9tOi0xMDAlOyB6LWluZGV4OjEwMDE7IGFuaW1hdGlvbjogMC41cyBkb3duUG9wOyBhbmltYXRpb24tZmlsbC1tb2RlOmZvcndhcmRzO1xyXG4gICAgICAgIC5wb3B1cEJveHtcclxuICAgICAgICAgICAgd2lkdGg6MTAwJTsgbWF4LXdpZHRoOjYwMHB4OyBoZWlnaHQ6MTAwJTsgbWF4LWhlaWdodDogY2FsYygxMDBkdmggLSAyMHB4KTsgcGFkZGluZzoyMHB4OyBib3JkZXItcmFkaXVzOjI1cHggMjVweCAwIDA7IGJhY2tncm91bmQ6I2ZmZjs7XHJcblxyXG4gICAgICAgICAgICAucG9wVGl0QXJlYXtcclxuICAgICAgICAgICAgICAgIHdpZHRoOjEwMCU7IHBhZGRpbmc6MjBweCAwOyAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAudGl0e1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDoyN3B4OyBmb250LXNpemU6MS44cmVtOyBmb250LXdlaWdodDo1MDA7IGxpbmUtaGVpZ2h0OjEuNTsgY29sb3I6IzAwMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5jbG9zZUJ0bntcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDozMHB4OyBoZWlnaHQ6MzBweDsgZm9udC1zaXplOjA7IGJhY2tncm91bmQ6dXJsKC4uLy4uL2ltYWdlcy9jb21tb24vaWNvXzIwX2Nsb3NlLnN2ZykgY2VudGVyIG5vLXJlcGVhdDsgcG9zaXRpb246YWJzb2x1dGU7IHRvcDotNXB4OyByaWdodDotNXB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5wb3BDb250QXJlYXtcclxuICAgICAgICAgICAgICAgIHdpZHRoOjEwMCU7IGhlaWdodDpjYWxjKDEwMCUgLSA2N3B4KTsgbWF4LWhlaWdodDogY2FsYygxMDBkdmggLSAxMjdweCk7IG92ZXJmbG93LXk6YXV0bztcclxuXHJcbiAgICAgICAgICAgICAgICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tIOydgO2WieyEoO2DnSDrgrTsmqkgLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4gICAgICAgICAgICAgICAgLmJhbmtUaXQge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToxOHB4OyBjb2xvcjojMDAwOyBmb250LXdlaWdodDogNTAwOyBsaW5lLWhlaWdodDoxOyBsZXR0ZXItc3BhY2luZzotMC40NXB4OyBtYXJnaW4tYm90dG9tOjIwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuYmFua0xpc3RDb3Z7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTpmbGV4OyBmbGV4LWZsb3c6IHJvdyB3cmFwOyBhbGlnbi1pdGVtczogY2VudGVyOyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IGdhcDoyMHB4OyBcclxuICAgICAgICAgICAgICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6Y2FsYyg1MCUgLSAyMHB4KTsgZGlzcGxheTpmbGV4OyBmbGV4LWZsb3c6IHJvdyBub3dyYXA7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgPiBpbWcge2Rpc3BsYXk6aW5saW5lLWJsb2NrOyBtYXJnaW4tcmlnaHQ6MTBweH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgPiBzcGFuIHtmb250LXNpemU6MTRweDsgY29sb3I6IzAwMDsgZm9udC13ZWlnaHQ6NDAwOyBsaW5lLWhlaWdodDoxLjcxOyBsZXR0ZXItc3BhY2luZzogLTAuMzVweDt9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLSAvLyDsnYDtlonshKDtg50g64K07JqpIC0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuXHJcbiAgICAgICAgICAgICAgICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tIOyYiOq4iOyjvCDsnbzsuZgm67aI7J287LmYIOuCtOyaqSAtLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbiAgICAgICAgICAgICAgICAuYWNjQ2hrQm94IHtcclxuICAgICAgICAgICAgICAgICAgICAudGl0IHtmb250LXNpemU6MThweDsgZm9udC13ZWlnaHQ6Ym9sZDsgbGluZS1oZWlnaHQ6Mi4zMzsgbGV0dGVyLXNwYWNpbmc6IC0wLjQ1cHg7IG1hcmdpbi1ib3R0b206MjBweDsgdGV4dC1hbGlnbjogY2VudGVyOyBwYWRkaW5nLXRvcDoyMHB4O31cclxuICAgICAgICAgICAgICAgICAgICAuZGVzYyB7Zm9udC1zaXplOjE0cHg7IGNvbG9yOiMwMDA7IGZvbnQtd2VpZ2h0OjQwMDsgbGluZS1oZWlnaHQ6IDEuNTc7IGxldHRlci1zcGFjaW5nOiAtMC4zNXB4OyBtYXJnaW4tYm90dG9tOjIwcHg7IHRleHQtYWxpZ246IGNlbnRlcjt9XHJcbiAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgPiAuYWN0Q29yciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC50aXQge2NvbG9yOnZhcigtLWtleS1ibHVlMDEpO31cclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgID4gLmFjdEluQ29yciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC50aXQge2NvbG9yOiNmZTVmNWY7fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuZGVzYyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOjEwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLnR5MDIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToxMnB4OyBjb2xvcjojOTk5OyBmb250LXdlaWdodDo0MDA7IGxpbmUtaGVpZ2h0OjEuNTsgbWFyZ2luLWJvdHRvbToyMHB4OyB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0gLy/smIjquIjso7wg7J287LmYJuu2iOydvOy5mCDrgrTsmqkgLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5wb3BCdG5BcmVhe1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6MTAwJTsgaGVpZ2h0OjkwcHg7IHBhZGRpbmc6MjBweCAwO1xyXG4gICAgICAgICAgICAgICAgLnBvcEJ0bnt3aWR0aDoxMDAlOyBoZWlnaHQ6NTBweDsgbGluZS1oZWlnaHQ6NTBweDsgZm9udC1zaXplOjE0cHg7IGNvbG9yOiNmZmY7IGZvbnQtd2VpZ2h0OjUwMDsgdGV4dC1hbGlnbjogY2VudGVyOyBib3JkZXItcmFkaXVzOiAxMHB4O31cclxuICAgICAgICAgICAgICAgIC5ibHVle2JhY2tncm91bmQ6dmFyKC0ta2V5LWJsdWUwMSk7IH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYucG9wT3BlbntcclxuICAgICAgICBib3R0b206MDtcclxuICAgICAgICAucG9wdXBEaW0ge1xyXG4gICAgICAgICAgICBhbmltYXRpb246IDAuM3Mgc2hvd0RpbTsgYW5pbWF0aW9uLWZpbGwtbW9kZTpmb3J3YXJkcztcclxuICAgICAgICB9XHJcbiAgICAgICAgLnBvcHVwQXJlYXtcclxuICAgICAgICAgICAgYW5pbWF0aW9uOiAwLjVzIHVwUG9wOyBhbmltYXRpb24tZmlsbC1tb2RlOmZvcndhcmRzO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5Aa2V5ZnJhbWVzIHNob3dEaW0ge1xyXG4gICAgMCUgeyBvcGFjaXR5OjA7IHZpc2liaWxpdHk6IGJsb2NrO31cclxuICAgIDEwMCUgeyBvcGFjaXR5OjE7ICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgaGlkZURpbSB7XHJcbiAgICAwJSB7IG9wYWNpdHk6MTsgfVxyXG4gICAgMTAwJSB7IG9wYWNpdHk6MDsgdmlzaWJpbGl0eTogaGlkZGVuOyAgfVxyXG59XHJcbkBrZXlmcmFtZXMgdXBQb3Age1xyXG4gICAgMCUgeyBib3R0b206LTEwMCU7fVxyXG4gICAgMTAwJSB7IGJvdHRvbTogMDsgIH1cclxufVxyXG5Aa2V5ZnJhbWVzIGRvd25Qb3Age1xyXG4gICAgMCUgeyBib3R0b206MDsgfVxyXG4gICAgMTAwJSB7IGJvdHRvbTotMTAwJTsgfVxyXG59XHJcblxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0g7YOtIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcbi5tb2RUYWJ7XHJcbiAgICBtYXJnaW4tdG9wOjIwcHg7XHJcblxyXG4gICAgJjpmaXJzdC1jaGlsZHttYXJnaW4tdG9wOjA7fVxyXG4gICAgLnRhYkJ0bntcclxuICAgICAgICB3aWR0aDogMTAwJTsgaGVpZ2h0OjU1cHg7IGJvcmRlci1yYWRpdXM6MjcuNXB4OyBiYWNrZ3JvdW5kOiNmM2YzZjM7IGRpc3BsYXk6IGZsZXg7IHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgICAgIFxyXG4gICAgICAgICY6OmJlZm9yZXtcclxuICAgICAgICAgICAgY29udGVudDpcIlwiOyB3aWR0aDo1MCU7IGhlaWdodDo1NXB4OyBib3JkZXItcmFkaXVzOjI3LjVweDsgYmFja2dyb3VuZDp2YXIoLS1rZXktYmx1ZTAxKTsgZGlzcGxheTpibG9jazsgcG9zaXRpb246YWJzb2x1dGU7IGxlZnQ6MDsgdG9wOjA7IHRyYW5zaXRpb246YWxsIDAuMnM7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYucG9pbnQwMSB7XHJcbiAgICAgICAgICAgICY6OmJlZm9yZXtcclxuICAgICAgICAgICAgICAgIGxlZnQ6MDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLnBvaW50MDIge1xyXG4gICAgICAgICAgICAmOjpiZWZvcmV7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OjUwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgbGl7XHJcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7IGhlaWdodDogNTVweDsgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgICAgIGJ1dHRvbntcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IGZvbnQtc2l6ZTogMS40cmVtOyBmb250LXdlaWdodDogNTAwOyBjb2xvcjogIzk5OTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLmFjdGl2ZXtcclxuICAgICAgICAgICAgICAgIGJ1dHRvbntcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCJcclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSDsg4Hri6gg66mU64m0IOyYgeyXrSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcbi5jcHRHbmJ7XHJcbiAgICB3aWR0aDoxMDAlOyBtaW4taGVpZ2h0OjE1MHB4OyBwb3NpdGlvbjpyZWxhdGl2ZTsgei1pbmRleDozMDA7XHJcblxyXG4gICAgJi5mbG9hdHtcclxuICAgICAgICAuZ25iQXJlYXtcclxuICAgICAgICAgICAgLmduYkJvZHl7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZGNkY2RjO1xyXG4gICAgICAgICAgICAgICAgLmJvZHlBcmVhe2JhY2tncm91bmQ6I2ZmZjt9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuZ25iQXJlYXtcclxuICAgICAgICB3aWR0aDoxMDAlOyBwb3NpdGlvbjpmaXhlZDsgbGVmdDowOyB0b3A6MDtcclxuICAgICAgICBcclxuICAgICAgICAvKiDstZzsg4Hri6gg7JiB7JetICovXHJcbiAgICAgICAgLmduYlRvcHtcclxuICAgICAgICAgICAgd2lkdGg6MTAwJTsgbWluLWhlaWdodDo2MHB4OyBiYWNrZ3JvdW5kOiM0YjlmZjk7XHJcblxyXG4gICAgICAgICAgICAudG9wQXJlYXtcclxuICAgICAgICAgICAgICAgIHdpZHRoOjEwMCU7IHBhZGRpbmc6MTBweCAyNHB4O1xyXG5cclxuICAgICAgICAgICAgICAgIGkge2ZvbnQtc2l6ZToycmVtOyBmb250LXN0eWxlOm5vcm1hbDsgbGluZS1oZWlnaHQ6MS41OyBjb2xvcjojZmZmO31cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLyog7IOB64uoIOuplOuJtCDsmIHsl60gKi9cclxuICAgICAgICAuZ25iQm9keXtcclxuICAgICAgICAgICAgLy8gYmFja2dyb3VuZDojZmZmO1xyXG4gICAgICAgICAgICAuYm9keUFyZWF7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OmZsZXg7IGZsZXgtd3JhcDpub3dyYXA7IGFsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7IGJhY2tncm91bmQ6bm9uZTsgYmFja2dyb3VuZDojZmZmO1xyXG5cclxuICAgICAgICAgICAgICAgIC5sb2dve1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOjE0MHB4OyBoZWlnaHQ6NjRweDsgcGFkZGluZy1sZWZ0OjIwcHg7IGRpc3BsYXk6ZmxleDsgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgaW1ne3dpZHRoOjc5cHg7fVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC5tZW51QXJlYXtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDpjYWxjKDEwMCUgLSA1MHB4KTsgcG9zaXRpb246cmVsYXRpdmU7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICYuYXBwbGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDpjYWxjKDEwMCUgLSA3MHB4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLm1lbnVUaXRsZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5idXR0b24yRGVwe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC50ZXh0e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6MDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXJ7ZGlzcGxheTpub25lO31cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC5tZW51VGl0bGV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6I2ZmZjsgd2lkdGg6MTAwJTsgaGVpZ2h0OjcwcHg7IHBhZGRpbmctbGVmdDoyMHB4OyBkaXNwbGF5OmZsZXg7IHBvc2l0aW9uOnJlbGF0aXZlOyBhbGlnbi1pdGVtczpjZW50ZXI7IGNvbHVtbi1nYXA6NXB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAuYnV0dG9uMkRlcHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246bGVmdDsgZGlzcGxheTpibG9jazsgd2lkdGg6MjRweDsgaGVpZ2h0OjI0cHg7IGJhY2tncm91bmQ6dXJsKC4uLy4uL2ltYWdlcy9jb21tb24vaWNvX2duYl9iYWNrLnN2ZykgY2VudGVyIG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5idG5Eb3dueyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOm1heC1jb250ZW50OyBoZWlnaHQ6MTAwJTsgZGlzcGxheTpibG9jazsgdHJhbnNpdGlvbjphbGwgMC40czsgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAudGV4dHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6MTAwJTsgZm9udC1zaXplOjJyZW07IGZvbnQtd2VpZ2h0OjUwMDsgY29sb3I6IzAwMDsgbGluZS1oZWlnaHQ6NzBweDsgZGlzcGxheTppbmxpbmUtYmxvY2s7IHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge2NvbnRlbnQ6ICcnOyBwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOjUwJTsgcmlnaHQ6LTMxcHg7IHdpZHRoOjIxcHg7IGhlaWdodDoyMXB4OyBiYWNrZ3JvdW5kOnVybCguLi8uLi9pbWFnZXMvY29tbW9uL2ljb19nbmJfZG93bi5zdmcpIGNlbnRlciBuby1yZXBlYXQ7IHRyYW5zZm9ybTpyb3RhdGUoMGRlZykgdHJhbnNsYXRlWSgtNTAlKTt9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICYuYWN0aXZle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAuZHJvcERvd25NZW51e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgLmJ0bkRvd257XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7dHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpIHRyYW5zbGF0ZVkoNTAlKTt9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICAgICAgICAgIC5kcm9wRG93bk1lbnV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOjEwMHZ3OyBoZWlnaHQ6Y2FsYygxMDBkdmggLSAxMjZweCk7IG92ZXJmbG93LXk6YXV0bzsgYmFja2dyb3VuZDojZmZmOyBib3gtc2hhZG93OiAwIDdweCA5cHggMCByZ2JhKDAsIDAsIDAsIDAuMDcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5Om5vbmU7IHBvc2l0aW9uOmFic29sdXRlOyBsZWZ0OjA7IHRvcDo2NHB4O1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgLmRlcHRoMkdyb3Vwe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6MTAwJTsgcGFkZGluZzowIDIwcHggMjBweCAyMHB4OyBcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZGVwdGgyTWVudXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDoxMDAlOyBib3JkZXItdG9wOjFweCBzb2xpZCAjZGNkY2RjOyBwb3NpdGlvTjpyZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5hZGR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6XCJcIjsgd2lkdGg6MTJweDsgaGVpZ2h0OjEycHg7IGJhY2tncm91bmQ6dXJsKC4uLy4uL2ltYWdlcy9jb21tb24vaWNvX2RlcDNfZG93bi5zdmcpOyB0cmFuc2Zvcm06cm90YXRlKDE4MGRlZyk7IGRpc3BsYXk6YmxvY2s7IHBvc2l0aW9uOmFic29sdXRlOyByaWdodDowOyB0b3A6MjVweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLm9ue1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOnJvdGF0ZSgwZGVnKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5kZXB0aDNHcm91cHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmRlcHRoMk5hbWV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmRlcHRoMkxpbmt7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OjUwMDsgY29sb3I6IzAwMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDowO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZGVwdGgyTmFtZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmRlcHRoMkxpbmt7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOjIwcHggMDsgZm9udC1zaXplOjEuNnJlbTsgZm9udC13ZWlnaHQ6NDAwOyBsaW5lLWhlaWdodDoxLjU7IGNvbG9yOiM2NjY7IGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5kZXB0aDNHcm91cHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTpub25lO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmRlcHRoM01lbnV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZGVwdGgzTmFtZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6MTBweDsgcGFkZGluZy1ib3R0b206MjBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5kZXB0aDNMaW5re1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToxLjRyZW07IGxpbmUtaGVpZ2h0OjEuNTsgZm9udC13ZWlnaHQ6NDAwOyBjb2xvcjojMDAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC5hcHBsaUNhbmNlbHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDo3MHB4OyBwYWRkaW5nLXJpZ2h0OjIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgYnV0dG9ue1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6MS40cmVtOyBmb250LXdlaWdodDo0MDA7IGxpbmUtaGVpZ2h0OiA3MHB4OyBjb2xvcjojNjY2OyBib3JkZXI6MDsgYmFja2dyb3VuZDp0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIC5teVBhZ2V7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6Y2FsYygxMDAlIC0gMTkwcHgpOyBkaXNwbGF5OmZsZXg7IGp1c3RpZnktY29udGVudDpmbGV4LWVuZDtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgLmxpbmt7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOjQwcHg7IGhlaWdodDo2NHB4OyBmb250LXNpemU6MDsgYmFja2dyb3VuZDp1cmwoLi4vLi4vaW1hZ2VzL2NvbW1vbi9pY29uX215LnN2ZykgY2VudGVyIG5vLXJlcGVhdDsgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLmFsbE1lbnVCdG57XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6NTBweDsgaGVpZ2h0OjcwcHg7IGJvcmRlcjowOyBwb3NpdGlvbjpyZWxhdGl2ZTsgb3V0bGluZTpub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIHNwYW57XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDoycHg7IGZvbnQtc2l6ZTowOyBiYWNrZ3JvdW5kOiM0NDQ7IGRpc3BsYXk6YmxvY2s7IHBvc2l0aW9uOmFic29sdXRlOyByaWdodDoyMHB4OyB0cmFuc2l0aW9uLWR1cmF0aW9uOjAuNHM7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgxKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOjIwcHg7IHRvcDoyNnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6MjBweDsgdG9wOjM0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMyl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDoyMHB4O3RvcDo0MnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAvLyAmLmFjdGl2ZXtcclxuICAgICAgICAgICAgICAgICAgICAvLyAgICAgc3BhbntcclxuICAgICAgICAgICAgICAgICAgICAvLyAgICAgICAgICY6bnRoLWNoaWxkKDEpe1xyXG4gICAgICAgICAgICAgICAgICAgIC8vICAgICAgICAgICAgIHdpZHRoOjIwcHg7IHRvcDozNHB4OyByaWdodDoyMHB4OyB0cmFuc2Zvcm06cm90YXRlKC00NWRlZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gICAgICAgICAmOm50aC1jaGlsZCgyKXtcclxuICAgICAgICAgICAgICAgICAgICAvLyAgICAgICAgICAgICB3aWR0aDowOyB0b3A6MzRweDsgcmlnaHQ6MzBweDsgb3BhY2l0eTowO1xyXG4gICAgICAgICAgICAgICAgICAgIC8vICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIC8vICAgICAgICAgJjpudGgtY2hpbGQoMyl7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gICAgICAgICAgICAgd2lkdGg6MjBweDsgdG9wOjM0cHg7IHJpZ2h0OjIwcHg7IHRyYW5zZm9ybTpyb3RhdGUoNDVkZWcpO1xyXG4gICAgICAgICAgICAgICAgICAgIC8vICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIC8vICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC5hbGxNZW51Q292IHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5Om5vbmU7IHBvc2l0aW9uOmZpeGVkOyB0b3A6MHB4OyBsZWZ0OjA7IHdpZHRoOjEwMCU7IGhlaWdodDoxMDAlOyBiYWNrZ3JvdW5kOiNmZmY7IHBhZGRpbmc6MjBweCAwIDtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgLnRvcEFyZWEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OmZsZXg7IGZsZXgtZmxvdzpyb3cgbm93cmFwOyBhbGlnbi1pdGVtczogY2VudGVyOyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IG1hcmdpbi1ib3R0b206MjBweDsgcGFkZGluZzogMCAyMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IC5sb2dvIHtwYWRkaW5nLWxlZnQ6MDsgd2lkdGg6MTIwcHg7IGhlaWdodDphdXRvICFpbXBvcnRhbnQ7fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuYnRuT3B0aW9uIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6ZmxleDsgZmxleC1mbG93OnJvdyBub3dyYXA7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgZ2FwOjIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAubXlwYWdlSWNvbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBhIHtkaXNwbGF5OmJsb2NrOyB3aWR0aDoyMHB4OyBoZWlnaHQ6MjBweDsgZm9udC1zaXplOjA7IGJhY2tncm91bmQ6dXJsKC4uLy4uL2ltYWdlcy9jb21tb24vaWNvbl9teS5zdmcpIGNlbnRlciBuby1yZXBlYXQ7fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmNsb3NlSWNvbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBhIHtkaXNwbGF5OmJsb2NrOyB3aWR0aDoyMHB4OyBoZWlnaHQ6MjBweDsgZm9udC1zaXplOjA7IGJhY2tncm91bmQ6dXJsKC4uLy4uL2ltYWdlcy9jb21tb24vYWxsbWVudUNscy5wbmcpIGNlbnRlciBuby1yZXBlYXQ7fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAubWVudUFyZWEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDoxMDAlOyBwb3NpdGlvbjpyZWxhdGl2ZTsgaGVpZ2h0OjEwMCU7IG92ZXJmbG93LXk6c2Nyb2xsO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IHVsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gbGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7cGFkZGluZy10b3A6MzBweDt9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206MTBweCBzb2xpZCAjZjNmM2YzOyBwYWRkaW5nLWJvdHRvbTozMHB4OyBtYXJnaW4tYm90dG9tOjMwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGUge2JvcmRlci1ib3R0b206MDt9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLm1lbnVUaXRsZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6MCAyMHB4OyBoZWlnaHQ6YXV0bzsgZGlzcGxheTpibG9jazsgbWFyZ2luLWJvdHRvbTozMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IHAge2ZvbnQtc2l6ZToxOHB4OyBjb2xvcjojMDAwOyBmb250LXdlaWdodDpib2xkOyBsaW5lLWhlaWdodDoxOyBsZXR0ZXItc3BhY2luZzotMC40NXB4OyB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tZW51U3ViIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gdWwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTpmbGV4OyBmbGV4LWZsb3c6IGNvbHVtbjsgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgZ2FwOjMwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDoxMDAlOyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoMyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToxNnB4OyBjb2xvcjojMDAwOyBmb250LXdlaWdodDo0MDA7IGxldHRlci1zcGFjaW5nOi0wLjRweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBhIHtwYWRkaW5nOjAgMjBweDsgZGlzcGxheTpibG9jazsgd2lkdGg6MTAwJTsgaGVpZ2h0OjEwMCU7fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tZW51M3JkIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGgzIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTpibG9jazsgd2lkdGg6MTAwJTsgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6Jyc7IHBvc2l0aW9uOmFic29sdXRlOyB0b3A6NTAlOyByaWdodDoyMHB4OyB3aWR0aDoxMnB4OyBoZWlnaHQ6MTJweDsgYmFja2dyb3VuZDogdXJsKC4uLy4uL2ltYWdlcy9jb21tb24vaWNvX2J0bl9kb3duLnBuZykgNTAlIDUwJSBuby1yZXBlYXQ7IHRyYW5zZm9ybTpyb3RhdGUoMCkgdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKSB0cmFuc2xhdGVZKDUwJSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6I2Y2ZjdmOTsgcGFkZGluZzoxNXB4IDMwcHg7IG1hcmdpbi10b3A6MjBweDsgZGlzcGxheTpub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6MTAwJTsgbWFyZ2luLWJvdHRvbTozMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToxNHB4OyBjb2xvcjojMDAwOyBmb250LXdlaWdodDo0MDA7IGxpbmUtaGVpZ2h0OjE7IGxldHRlci1zcGFjaW5nOi0wLjM1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6bGFzdC1vZi10eXBlIHttYXJnaW4tYm90dG9tOjA7fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIkBpbXBvcnQgJ2hlYWRlcic7ICAgLyog66mU7J24LOyEnOu4jCDsg4Hri6ggKi9cclxuQGltcG9ydCAnbWFpbic7ICAgICAvKiDrqZTsnbgg7L2Y7YWQ7LigICovXHJcbkBpbXBvcnQgJ2Zvb3Rlcic7ICAgLyog66mU7J24LOyEnOu4jCDtlZjri6ggKi9cclxuXHJcbkBpbXBvcnQgJ3N1YnZpc3VhbCc7ICAgLyog7ISc67iMIOyDgeuLqCDruYTso7zslrwgKi9cclxuQGltcG9ydCAnc25iJzsgICAvKiDshJzruIwg66mU64m0ICovXHJcbkBpbXBvcnQgJ2JvYXJkJzsgICAvKiDrs7Trk5wgKi9cclxuQGltcG9ydCAndGFibGUnOyAvKiDthYzsnbTruJQg7KCE7JqpICovXHJcbkBpbXBvcnQgJ2NvbnRlbnRzJzsgLyog6rCc67OEIOyEnOu4jOy7qO2FkOy4oCAqL1xyXG5AaW1wb3J0ICdldGMnOyAvKiDquLDtg4Ao66Gc65SpLOyXkOufrCzshJzruYTsiqTqs7Xsp4Ag65OxKSAqL1xyXG5cclxuXHJcbi8vIOyehOyLnFxyXG5AaW1wb3J0ICdzdXonOyBcclxuQGltcG9ydCAnam9uYXRoYW5LaW0nOy8q4pmlKi9cclxuQGltcG9ydCAnY2hvZ2FuZ2hhZSc7XHJcbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0g66mU7J24IOyDgeuLqCDsubTtlLzsmIHsl60gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG4uY3B0TWFpbkNvcHl7XHJcbiAgICB3aWR0aDoxMDAlO1xyXG5cclxuICAgIC5jb3B5QXJlYXtcclxuICAgICAgICBcclxuXHJcbiAgICAgICAgaDF7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OlwiWWFuZ1B5ZW9uZ01cIjsgZm9udC1zaXplOjVyZW07IGZvbnQtd2VpZ2h0OjQwMDsgbGluZS1oZWlnaHQ6MTsgY29sb3I6IzAwMDsgZGlzcGxheTpibG9jazsgdHJhbnNmb3JtLW9yaWdpbjpsZWZ0OyB0cmFuc2Zvcm06c2NhbGVYKDAuOTcpO1xyXG5cclxuICAgICAgICAgICAgLmNfYmx1ZXtcclxuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OlwiWWFuZ1B5ZW9uZ01cIjsgY29sb3I6dmFyKC0ta2V5LWJsdWUwMSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgaXtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDo1cHg7IGZvbnQtc2l6ZToxLjZyZW07IGZvbnQtc3R5bGU6bm9ybWFsOyBsaW5lLWhlaWdodDoxLjU7IGNvbG9yOiM0NDQ7IGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIOuplOyduCDruYTso7zslrwg7JiB7JetIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuLmNwdE1haW5WaXN1YWx7XHJcbiAgICB3aWR0aDoxMDAlOyBtYXJnaW4tdG9wOi0yMHB4O1xyXG5cclxuICAgIC52aXN1YWxBcmVhe1xyXG4gICAgICAgIHdpZHRoOjEwMCU7XHJcblxyXG4gICAgICAgIC52aXN1YWxNYWlue1xyXG4gICAgICAgICAgICB3aWR0aDoxMDAlOyBwYWRkaW5nOjAgMjBweDtcclxuICAgICAgICAgICAgLmJuQm94e1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6MTAwJTsgaGVpZ2h0OjEwMCU7IGJvcmRlci1yYWRpdXM6IDI1cHg7IGJveC1zaGFkb3c6IDAgNXB4IDE1cHggMCByZ2JhKDAsIDAsIDAsIDAuMzUpLCBpbnNldCAtMTBweCAtMTBweCA0MHB4IDAgcmdiYSgwLCAzMSwgMjMwLCAwLjk1KTsgYmFja2dyb3VuZDp2YXIoLS1rZXktYmx1ZTAxKTsgcGFkZGluZzozMHB4OyBwb3NpdGlvbjpyZWxhdGl2ZTsgb3ZlcmZsb3c6aGlkZGVuOyBcclxuICAgICAgICAgICAgICAgID4gKiB7cG9zaXRpb246cmVsYXRpdmU7IHotaW5kZXg6Mjt9XHJcbiAgICAgICAgICAgICAgICA+IGkge2ZvbnQtc2l6ZToxNnB4OyBjb2xvcjojZmZmOyBmb250LXdlaWdodDo1MDA7IGZvbnQtc3R5bGU6IG5vcm1hbDt9XHJcbiAgICAgICAgICAgICAgICA+IGgxIHtmb250LXNpemU6MzhweDsgY29sb3I6I2ZmZjsgZm9udC13ZWlnaHQ6NTAwOyBmb250LWZhbWlseTogXCJZYW5nUHllb25nTVwiOyBsaW5lLWhlaWdodDoxOyBtYXJnaW46NXB4IDAgMTBweDsgbGV0dGVyLXNwYWNpbmc6LTIuODVweDt9XHJcbiAgICAgICAgICAgICAgICA+IHVsIHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6bWF4LWNvbnRlbnQ7IHBhZGRpbmc6OXB4IDE0cHggOHB4OyBiYWNrZ3JvdW5kOiMwMTRlYzI7IGJvcmRlci1yYWRpdXM6MTcuNXB4OyBmb250LXNpemU6MTJweDsgY29sb3I6I2ZmZjsgZm9udC13ZWlnaHQ6NDAwOyB0ZXh0LWFsaWduOmNlbnRlcjsgbGluZS1oZWlnaHQ6MTsgbWFyZ2luLWJvdHRvbTo1cHg7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7bWFyZ2luLWJvdHRvbTowO31cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICA+IC5idG5TdGFydExvYW4ge2Rpc3BsYXk6YmxvY2s7IG1hcmdpbi10b3A6MzNweDsgd2lkdGg6MTAwJTsgcGFkZGluZzoxNnB4IDA7IHRleHQtYWxpZ246Y2VudGVyOyBmb250LXNpemU6MTZweDsgY29sb3I6I2ZmZjsgZm9udC13ZWlnaHQ6NTAwOyBiYWNrZ3JvdW5kOiM0YjlmZjk7IGJvcmRlcjoycHggc29saWQgIzI5OTBmZjsgYm9yZGVyLXJhZGl1czoyNy41cHg7fVxyXG4gICAgICAgICAgICAgICAgPiBpbWcge3Bvc2l0aW9uOmFic29sdXRlOyBib3R0b206LTcuNXJlbTsgcmlnaHQ6LTMuNXJlbTsgei1pbmRleDoxO31cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnZpc3VhbFN1YntcclxuICAgICAgICAgICAgd2lkdGg6MTAwJTsgb3ZlcmZsb3c6aGlkZGVuO1xyXG5cclxuICAgICAgICAgICAgLnZpc3VhbEdyb3Vwe1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6MTAwJTsgaGVpZ2h0OjMxMHB4OyBwYWRkaW5nOjIwcHg7IGRpc3BsYXk6ZmxleDsgZmxleC13cmFwOm5vd3JhcDsgYm94LXNpemluZzpib3JkZXItYm94O1xyXG4gICAgXHJcbiAgICAgICAgICAgICAgICAuaXRlbXtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDoyMzBweDsgaGVpZ2h0OjI2MHB4OyAgbWFyZ2luLXJpZ2h0OjIwcHg7IGJvcmRlci1yYWRpdXM6MjVweDsgYmFja2dyb3VuZDojZmZmOyBib3gtc2hhZG93OiAwIDAgMjBweCAwIHJnYmEoMCwgMCwgMCwgMC4xMyk7IHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgXHJcbiAgICAgICAgICAgICAgICAgICAgLmJuQm94e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDoxMDAlOyBoZWlnaHQ6MTAwJTsgcGFkZGluZzoyMHB4OyBwb3NpdGlvbjpyZWxhdGl2ZTsgei1pbmRleDoyO1xyXG4gICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5oZWFkbGluZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToycmVtOyBmb250LXdlaWdodDo1MDA7IGxpbmUtaGVpZ2h0OjEuMzsgY29sb3I6IzAwMDsgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuZGVzY3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToxLjJyZW07IGZvbnQtc3R5bGU6bm9ybWFsOyBmb250LXdlaWdodDo1MDA7IGNvbG9yOiM2NjY7IGxpbmUtaGVpZ2h0OjEuNTsgZGlzcGxheTpibG9jazsgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgLmxpbmsge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6Y2FsYygxMDAlIC0gNDBweCk7IGhlaWdodDo0MHB4OyBmb250LXNpemU6MTRweDsgbGluZS1oZWlnaHQ6MzlweDsgY29sb3I6IzAwMDsgdGV4dC1hbGlnbjpjZW50ZXI7IGJvcmRlci1yYWRpdXM6MjBweDsgYmFja2dyb3VuZDojZGJlY2ZmO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7IGxlZnQ6MjBweDsgYm90dG9tOjIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgJi50eXBlMDF7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6I2YxZjhmZiB1cmwoLi4vLi4vaW1hZ2VzL21haW4vdnNsMDFfYmcucG5nKSBjZW50ZXIgY2FsYygxMDAlIC0gNTNweCkvMTYwcHggbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmLnR5cGUwMntcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDojZjFmOGZmIHVybCguLi8uLi9pbWFnZXMvbWFpbi92c2wwMl9iZy5wbmcpIGNlbnRlciBjYWxjKDEwMCUgLSAzNnB4KS8xMjZweCBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIOuplOyduCDrsLDrhIgg7JiB7JetIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuLmNwdE1haW5CYW5uZXJ7XHJcbiAgICB3aWR0aDoxMDAlOyBwYWRkaW5nLXRvcDoxMHB4OyBiYWNrZ3JvdW5kOiNmM2YzZjM7XHJcblxyXG4gICAgLmJhbm5lckFyZWF7XHJcbiAgICAgICAgd2lkdGg6MTAwJTsgcGFkZGluZzozMHB4IDIwcHggMDsgYmFja2dyb3VuZDojZmZmO1xyXG5cclxuICAgICAgICAuc3dpcGVyQ29udHtcclxuICAgICAgICAgICAgd2lkdGg6MTAwJTsgaGVpZ2h0OmF1dG87IGJvcmRlci1yYWRpdXM6MjBweDsgcG9zaXRpb246cmVsYXRpdmU7IG92ZXJmbG93OmhpZGRlbjtcclxuXHJcbiAgICAgICAgICAgIC5zd2lwZXItd3JhcHBlcntcclxuICAgICAgICAgICAgICAgIC5zd2lwZXItc2xpZGV7XHJcbiAgICAgICAgICAgICAgICAgICAgLmxpbmt7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOjEwMCU7IHBhZGRpbmctdG9wOjU2LjcxNiU7IHBvc2l0aW9uOnJlbGF0aXZlOyBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpbWd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDoxMDAlOyBoZWlnaHQ6MTAwJTsgcG9zaXRpb246YWJzb2x1dGU7IGxlZnQ6MDsgdG9wOjA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnN3aXBlci1wYWdpbmF0aW9ue1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMXB4OyBkaXNwbGF5OiBmbGV4OyBwb3NpdGlvbjphYnNvbHV0ZTsgbGVmdDowOyBib3R0b206MjRweDtcclxuICAgICAgICAgICAgICAgIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXR7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6NnB4OyBoZWlnaHQ6NnB4OyBtYXJnaW46IDAgMi41cHg7IGJvcmRlci1yYWRpdXM6M3B4OyBiYWNrZ3JvdW5kOiNjYmNiY2I7IG9wYWNpdHk6MTsgdHJhbnNpdGlvbjp3aWR0aCAwLjVzO1xyXG4gICAgICAgICAgICAgICAgICAgICYuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6MThweDsgYmFja2dyb3VuZDojNDQ0O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIOuplOyduCDsvZjthZDsuKAg7JiB7JetIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuLmNwdE1haW5Db250Ym94e1xyXG4gICAgd2lkdGg6MTAwJTsgcGFkZGluZzoyMHB4IDIwcHggMCAyMHB4O1xyXG5cclxuICAgIC5jb250QXJlYXtcclxuICAgICAgICB3aWR0aDoxMDAlOyBkaXNwbGF5OmZsZXg7IGZsZXgtd3JhcDp3cmFwOyBcclxuXHJcbiAgICAgICAgLmJhbm5lcjAxe1xyXG4gICAgICAgICAgICB3aWR0aDoxMDAlOyBoZWlnaHQ6MTE0cHg7IHBhZGRpbmc6MjBweDsgYm9yZGVyLXJhZGl1czoyMHB4OyBiYWNrZ3JvdW5kOiNmNGY1ZmEgdXJsKC4uLy4uL2ltYWdlcy9tYWluL2JuMDFfQmcucG5nKSBjYWxjKDEwMCUgLSAyMHB4KSBjYWxjKDEwMCUgLSAyM3B4KSAvIDYwcHggbm8tcmVwZWF0O1xyXG5cclxuICAgICAgICAgICAgLnRpdGxle1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOjJyZW07IGZvbnQtd2VpZ2h0OjUwMDsgbGluZS1oZWlnaHQ6MS4zOyBjb2xvcjojMDAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5kZXNje1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDo3MHB4OyBmb250LXNpemU6MS4ycmVtOyBmb250LXdlaWdodDo1MDA7IGxpbmUtaGVpZ2h0OjEuNTsgY29sb3I6IzY2Njsgb3BhY2l0eTowLjg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmJhbm5lcjAye1xyXG4gICAgICAgICAgICB3aWR0aDoxMDAlOyBtYXJnaW4tdG9wOjMwcHg7IGRpc3BsYXk6ZmxleDsgZmxleC13cmFwOm5vd3JhcDtcclxuICAgICAgICAgICAgLmJuQm94e1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6NTAlOyBoZWlnaHQ6MzBweDsgcGFkZGluZy1sZWZ0OjQ4cHg7IGZvbnQtc2l6ZToxLjZyZW07IGZvbnQtd2VpZ2h0OjUwMDsgY29sb3I6IzAwMDtcclxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpe1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6dXJsKC4uLy4uL2ltYWdlcy9tYWluL2JuMDJfQmcucG5nKSAxMHB4IGNlbnRlciAvIDI4cHggbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMil7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDp1cmwoLi4vLi4vaW1hZ2VzL21haW4vYm4wM19CZy5wbmcpIDEwcHggY2VudGVyIC8gMjhweCBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0g66mU7J24IO2VmOuLqCDrsLDrhIgg7JiB7JetIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuLmNwdEZsb2F0aW5ne1xyXG4gICAgd2lkdGg6MTAwJTsgaGVpZ2h0OjE1MHB4OyBtYXJnaW4tYm90dG9tOi02MHB4OyBwYWRkaW5nLXRvcDo0MHB4OyBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuXHJcbiAgICAuZnRBcmVhe1xyXG4gICAgICAgIHdpZHRoOjEwMCU7IHBhZGRpbmctdG9wOjIwcHg7IG92ZXJmbG93OmhpZGRlbjsgcG9zaXRpb246c3RhdGljOyBsZWZ0OjA7IGJvdHRvbTowOyB6LWluZGV4OjIwMDtcclxuXHJcbiAgICAgICAgLnN3aXBlckNvbnQge1xyXG4gICAgICAgICAgICB3aWR0aDoxMDAlOyBvdmVyZmxvdzpoaWRkZW47IHBhZGRpbmc6MjVweCAwIDI1cHggMjBweDsgYm9yZGVyLXJhZGl1czoxNXB4IDE1cHggMCAwOyBib3gtc2hhZG93OiAwIC0zcHggMTVweCAwIHJnYmEoMCwgMCwgMCwgMC4xKTsgYmFja2dyb3VuZDojZmZmO1xyXG5cclxuICAgICAgICAgICAgLnN3aXBlci1zbGlkZSB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDphdXRvOyBoZWlnaHQ6NDBweDsgcGFkZGluZzowIDE0cHggMCAzNHB4IDsgZm9udC1zaXplOjEuNHJlbTsgZm9udC13ZWlnaHQ6NTAwOyBjb2xvcjojMDAwOyBsaW5lLWhlaWdodDo0MHB4OyBib3JkZXI6IHNvbGlkIDFweCAjZGNkY2RjOyBib3JkZXItcmFkaXVzOjIwcHg7IGFsaWduLWNvbnRlbnQ6Y2VudGVyO1xyXG5cclxuICAgICAgICAgICAgICAgICYudHlwZTAxe3dpZHRoOjQwcHg7IHBhZGRpbmc6MDsgZm9udC1zaXplOjA7IGJvcmRlcjogc29saWQgMXB4ICNmOGY5ZmI7IGJhY2tncm91bmQ6I2YyZjlmZiB1cmwoLi4vLi4vaW1hZ2VzL21haW4vaWNvX2hvbWUucG5nKSBjZW50ZXIgLyAxOHB4IG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgICAgICAgICBhe2ZvbnQtc2l6ZTowOyBkaXNwbGF5OmJsb2NrOyB3aWR0aDoxMDAlOyBoZWlnaHQ6MTAwJTt9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmLnR5cGUwMntib3JkZXI6IHNvbGlkIDFweCAjZjhmOWZiOyBiYWNrZ3JvdW5kOiNmMmY5ZmYgdXJsKC4uLy4uL2ltYWdlcy9tYWluL2ljb18zMDAucG5nKSAxMHB4IGNlbnRlciAvIDE4cHggbm8tcmVwZWF0O31cclxuICAgICAgICAgICAgICAgICYudHlwZTAze2JvcmRlcjogc29saWQgMXB4ICNmOGY5ZmI7IGJhY2tncm91bmQ6I2YyZjlmZiB1cmwoLi4vLi4vaW1hZ2VzL21haW4vaWNvX2FwYXJ0LnBuZykgMTBweCBjZW50ZXIgLyAxOHB4IG5vLXJlcGVhdDt9XHJcbiAgICAgICAgICAgICAgICAmLnR5cGUwNHtib3JkZXI6IHNvbGlkIDFweCAjZjhmOWZiOyBiYWNrZ3JvdW5kOiNmMmY5ZmYgdXJsKC4uLy4uL2ltYWdlcy9tYWluL2ljb19jYXIucG5nKSAxMHB4IGNlbnRlciAvIDE4cHggbm8tcmVwZWF0O31cclxuICAgICAgICAgICAgICAgIGF7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07IGZvbnQtd2VpZ2h0OiA1MDA7IGNvbG9yOiAjMDAwOyBsaW5lLWhlaWdodDogNDBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLmZpeGVke1xyXG4gICAgICAgIC5mdEFyZWF7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOmZpeGVkO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIuY3B0Rm9vdGVye1xyXG4gICAgd2lkdGg6MTAwJTsgbWFyZ2luLXRvcDo2MHB4O1xyXG5cclxuICAgIC5mb290ZXJBcmVhe1xyXG4gICAgICAgIHdpZHRoOjEwMCU7XHJcblxyXG4gICAgICAgIC5mb290VG9we1xyXG4gICAgICAgICAgICB3aWR0aDoxMDAlOyBiYWNrZ3JvdW5kOiNmNWY1ZjU7XHJcblxyXG4gICAgICAgICAgICAudG9wQXJlYXtcclxuICAgICAgICAgICAgICAgIHdpZHRoOjEwMCU7IHBhZGRpbmc6MTdweCAyMHB4O1xyXG5cclxuICAgICAgICAgICAgICAgIC5idG1NZW51R3JvdXB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTpmbGV4OyBmbGV4LXdyYXA6d3JhcDtcclxuICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAuYnRtTWVudXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDoxNnB4OyBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6OmFmdGVye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDpcIlwiOyB3aWR0aDoxcHg7IGhlaWdodDo4cHg7IGJhY2tncm91bmQ6I2FhYTsgZGlzcGxheTpibG9jazsgcG9zaXRpb246YWJzb2x1dGU7IHRvcDo4cHg7IHJpZ2h0OjdweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OjA7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTpub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGF7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6MC45cmVtOyBjb2xvcjojOGI5Mjk3OyBsaW5lLWhlaWdodDoyM3B4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZm9vdFNpdGV7XHJcbiAgICAgICAgICAgIHdpZHRoOjEwMCU7IGhlaWdodDozMnB4OyBwYWRkaW5nLWxlZnQ6MjBweDsgYmFja2dyb3VuZDojZjVmNWY1OyBwb3NpdGlvbjpyZWxhdGl2ZTsgei1pbmRleDoxMDA7XHJcblxyXG4gICAgICAgICAgICAuc2l0ZUdyb3Vwe1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6MjIwcHg7IGhlaWdodDozMnB4OyBib3JkZXItcmFkaXVzOjE2cHg7IGJhY2tncm91bmQ6I2ZmZjsgb3ZlcmZsb3c6aGlkZGVuOyBwb3NpdGlvbjphYnNvbHV0ZTsgbGVmdDoyMHB4OyB0b3A6MDtcclxuXHJcbiAgICAgICAgICAgICAgICAuaXRlbXtcclxuICAgICAgICAgICAgICAgICAgICAubGlua1RleHR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6MCA1MHB4IDAgMjBweDsgZm9udC1zaXplOjEuMnJlbTsgZm9udC13ZWlnaHQ6NTAwOyBjb2xvcjojMTExOyBsaW5lLWhlaWdodDozMnB4OyB3aGl0ZS1zcGFjZTpub3dyYXA7IGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OlwiXCI7IHdpZHRoOjEycHg7IGhlaWdodDoxMnB4OyBiYWNrZ3JvdW5kOnVybCguLi8uLi9pbWFnZXMvY29tbW9uL2J0bl9vcGVuLnN2Zykgbm8tcmVwZWF0OyBkaXNwbGF5OmJsb2NrOyB0cmFuc2Zvcm06cm90YXRlKDBkZWcpOyBwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOjEwcHg7IHJpZ2h0OjIwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6YXV0bzsgb3ZlcmZsb3c6YXV0bztcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06cm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIGEgLmxpbmtUZXh0e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMDUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZm9vdEJvZHl7XHJcbiAgICAgICAgICAgIHdpZHRoOjEwMCU7IGJhY2tncm91bmQ6I2Y1ZjVmNTsgcGFkZGluZzoyMHB4O1xyXG5cclxuICAgICAgICAgICAgLmJvZHlBcmVhe1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6MTAwJTsgcG9zaXRpb246cmVsYXRpdmU7XHJcblxyXG4gICAgICAgICAgICAgICAgLmZvb3RMb2dve1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOjg4cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgaW1ne1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5jb3B5cmlnaHR7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDoxMnB4OyBmb250LXNpemU6MS4xcmVtOyBmb250LXdlaWdodDo1MDA7IGNvbG9yOiM0NDQ7IGxpbmUtaGVpZ2h0OjEuNTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5mb290SW5mb3tcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOjEycHg7IGZvbnQtc2l6ZTowLjlyZW07IGZvbnQtd2VpZ2h0OjQwMDsgY29sb3I6IzQ0NDsgbGluZS1oZWlnaHQ6MTZweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmZvb3RCdG17XHJcbiAgICAgICAgICAgIHdpZHRoOjEwMCU7IGJhY2tncm91bmQ6I2Y1ZjVmNTsgcGFkZGluZzowIDIwcHggMjBweDtcclxuXHJcbiAgICAgICAgICAgIC5idG1BcmVhe1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6MTAwJTsgcGFkZGluZy10b3A6MjBweDsgYm9yZGVyLXRvcDoxcHggc29saWQgI2RjZGNkYztcclxuXHJcbiAgICAgICAgICAgICAgICAudGV4dHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6MnJlbTsgY29sb3I6IzQ0NDsgbGluZS1oZWlnaHQ6MS41O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLmJ0bUJue1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6MTBweDsgZGlzcGxheTpmbGV4OyBmbGV4LXdyYXA6bm93cmFwO1xyXG4gICAgICAgICAgICAgICAgICAgIC5pbWd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOjY1cHg7IG1peC1ibGVuZC1tb2RlOiBkYXJrZW47XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGltZ3t3aWR0aDoxMDAlO31cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgLnRleHR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OjEwcHg7IGZvbnQtc2l6ZToxcmVtOyBjb2xvcjojOGI5Mjk3OyBsaW5lLWhlaWdodDoxLjU7IGFsaWduLXNlbGY6Y2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0g7ISc67iMIOyKpOyZgOydtO2UhCAy646B7IqkIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuLmNwdFN1Yk1lbnV7XHJcbiAgICBwYWRkaW5nOjEwcHggMCAzMHB4O1xyXG5cclxuICAgIC5zdWJNZW51QXJlYXtcclxuICAgICAgICBwYWRkaW5nOjAgMjBweDsgb3ZlcmZsb3c6aGlkZGVuOyBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgJjo6YWZ0ZXJ7Y29udGVudDpcIlwiOyB3aWR0aDoxMDAlOyBoZWlnaHQ6MXB4OyBiYWNrZ3JvdW5kOiNkY2RjZGM7IHBvc2l0aW9uOmFic29sdXRlOyBsZWZ0OjA7IGJvdHRvbTowO31cclxuXHJcbiAgICAgICAgLmRlcHRoMkdyb3Vwe1xyXG4gICAgICAgICAgICAuZGVwdGgyTWVudXtcclxuICAgICAgICAgICAgICAgIHdpZHRoOm1heC1jb250ZW50O1xyXG5cclxuICAgICAgICAgICAgICAgIC5kZXB0aDJOYW1le1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOm1heC1jb250ZW50O1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAuZGVwdGgyTGlua3t3aWR0aDptYXgtY29udGVudDsgaGVpZ2h0OjQ2cHg7IGxpbmUtaGVpZ2h0OjQ0cHg7IGZvbnQtc2l6ZToxLjZyZW07IGZvbnQtd2VpZ2h0OjQwMDsgY29sb3I6Izk5OTsgZGlzcGxheTpibG9jazt9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmLmFjdGl2ZXtcclxuICAgICAgICAgICAgICAgICAgICAuZGVwdGgyTmFtZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmRlcHRoMkxpbmt7Zm9udC13ZWlnaHQ6NTAwOyBjb2xvcjojMDAwOyBib3JkZXItYm90dG9tOjJweCBzb2xpZCAjMDAwO31cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0g7ISc67iMIOyKpOyZgOydtO2UhCAz646B7IqkIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuLmNwdFN1YjNEZXB0aHtcclxuICAgIHBhZGRpbmc6MCAwIDMwcHg7XHJcblxyXG4gICAgLnN1Yk1lbnVBcmVhe1xyXG4gICAgICAgIHBhZGRpbmc6MCAyMHB4OyBvdmVyZmxvdzpoaWRkZW47IHBvc2l0aW9uOnJlbGF0aXZlO1xyXG5cclxuICAgICAgICAuZGVwdGgzR3JvdXB7XHJcbiAgICAgICAgICAgIC5kZXB0aDNNZW51e1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6bWF4LWNvbnRlbnQ7XHJcblxyXG4gICAgICAgICAgICAgICAgLmRlcHRoM05hbWV7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6bWF4LWNvbnRlbnQ7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC5kZXB0aDNMaW5re1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDptYXgtY29udGVudDsgcGFkZGluZzowIDIwcHg7IGhlaWdodDo0MHB4OyBsaW5lLWhlaWdodDozOHB4OyBmb250LXNpemU6MS4ycmVtOyBmb250LXdlaWdodDo0MDA7IGNvbG9yOiM5OTk7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6MXB4IHNvbGlkICNkZGQ7IGJvcmRlci1yYWRpdXM6MjBweDsgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmLmFjdGl2ZXtcclxuICAgICAgICAgICAgICAgICAgICAuZGVwdGgzTmFtZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmRlcHRoM0xpbmt7Y29sb3I6I2ZmZjsgYm9yZGVyOjFweCBzb2xpZCAjMDAwOyBiYWNrZ3JvdW5kOiMwMDA7fVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIOydvOuwmCDqsozsi5ztjJAg66as7Iqk7Yq4IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcbi5jcHRCb2FyZExpc3R7XHJcbiAgICB3aWR0aDoxMDAlOyBcclxuXHJcbiAgICAuYm9hcmRBcmVhe1xyXG4gICAgICAgIHdpZHRoOjEwMCU7IFxyXG5cclxuICAgICAgICAuYm9hcmRMaXN0e1xyXG4gICAgICAgICAgICB3aWR0aDoxMDAlOyBtYXJnaW4tdG9wOjEwcHg7IHBhZGRpbmc6MCAyMHB4O1xyXG5cclxuICAgICAgICAgICAgLmxpc3RHcm91cHtcclxuICAgICAgICAgICAgICAgIC5pdGVte1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOjEwMCU7IHBhZGRpbmc6MzBweCAwOyBib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZGNkY2RjOyBkaXNwbGF5OmZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgLmxpbmt7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIC5uZXd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOjI5cHg7IGhlaWdodDoxMDAlOyBtaW4taGVpZ2h0OjI0cHg7IGZvbnQtc2l6ZTowOyBiYWNrZ3JvdW5kOnVybCguLi8uLi9pbWFnZXMvY29tbW9uL2ljb19uZXcuc3ZnKSBsZWZ0IHRvcCBuby1yZXBlYXQ7IGRpc3BsYXk6YmxvY2s7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmICsgLmxpbmt7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDpjYWxjKDEwMCUgLSAyOXB4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH0gXHJcbiAgICAgICAgICAgICAgICAgICAgLmJvYXJkVGl0bGV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOm1heC1jb250ZW50OyBtYXgtd2lkdGg6MTAwJTsgbWF4LWhlaWdodDo0LjhyZW07IGZvbnQtc2l6ZToxLjZyZW07IGZvbnQtd2VpZ2h0OjQwMDsgbGluZS1oZWlnaHQ6MS41OyBjb2xvcjojMDAwOyBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDI7IC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7IGRpc3BsYXk6IC13ZWJraXQtYm94OyBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLypcclxuICAgICAgICAgICAgICAgICAgICAgICAgJi5uZXc6OmFmdGVye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDp1cmwoLi4vLi4vaW1hZ2VzL2NvbW1vbi9pY29fbmV3LnN2Zyk7IHdpZHRoOjI0cHg7IGhlaWdodDoyNHB4OyBtYXJnaW4tbGVmdDoxMHB4OyB2ZXJ0aWNhbC1hbGlnbjp0b3A7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgKi9cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgLmRhdGV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6N3B4OyBmb250LXNpemU6MS40cmVtOyBmb250LXdlaWdodDo0MDA7IGZvbnQtc3R5bGU6bm9ybWFsOyBsaW5lLWhlaWdodDoxLjU7IGNvbG9yOiM2NjY7IGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAmLmZpbGV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5kYXRle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge2NvbnRlbnQ6Jyc7IHBvc2l0aW9uOmFic29sdXRlOyB3aWR0aDoxLjhyZW07IGhlaWdodDoxLjhyZW07IHRvcDo1MCU7IHJpZ2h0Oi0yLjVyZW07IHRyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpOyBiYWNrZ3JvdW5kOiB1cmwoLi4vLi4vaW1hZ2VzL3N1Yi9pY29fZmlsZS5zdmcpNTAlIDUwJSBuby1yZXBlYXQ7fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfSBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIOqyjOyLnO2MkCDsg4HshLggLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuLmNwdEJvYXJkVmlld3tcclxuICAgIHdpZHRoOjEwMCU7IFxyXG5cclxuICAgIC5ib2FyZEFyZWF7XHJcbiAgICAgICAgd2lkdGg6MTAwJTsgcGFkZGluZzowIDIwcHg7XHJcblxyXG4gICAgICAgIC5ib2FyZFRvcHtcclxuICAgICAgICAgICAgcGFkZGluZzowIDEwcHggMzBweDsgYm9yZGVyLWJvdHRvbToxcHggc29saWQgIzY2NjtcclxuXHJcbiAgICAgICAgICAgIC50aXRsZXtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToxLjhyZW07IGZvbnQtd2VpZ2h0OjcwMDsgbGluZS1oZWlnaHQ6MS41OyBjb2xvcjojMDAwOyBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5kYXRle1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDoxMHB4OyBmb250LXNpemU6MS40cmVtOyBsaW5lLWhlaWdodDoxLjhyZW07IGNvbG9yOiM2NjY7IGxldHRlci1zcGFjaW5nOjAuMDI4cmVtOyBmb250LWZhbWlseTpcIlJlZEhhdERpc3BsYXlcIjsgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuYm9hcmRDb250e1xyXG4gICAgICAgICAgICB3aWR0aDoxMDAlOyBwYWRkaW5nOjMwcHggMTBweDsgZm9udC1zaXplOjEuNHJlbTsgbGluZS1oZWlnaHQ6MjsgYm9yZGVyLWJvdHRvbToxcHggc29saWQgI2RjZGNkYztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0g7J6Q7KO87ZWY64qUIOyniOusuCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG4uY3B0QWNjb3JkaW9ue1xyXG4gICAgd2lkdGg6MTAwJTtcclxuXHJcbiAgICAuYXJyQXJlYXtcclxuICAgICAgICB3aWR0aDoxMDAlO1xyXG4gICAgXHJcbiAgICAgICAgLmFjY0lubmVye1xyXG4gICAgICAgICAgICB3aWR0aDoxMDAlOyBtYXJnaW4tdG9wOjdweDsgcGFkZGluZzowIDIwcHg7XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICBsaXtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlOyBwb3NpdGlvbjogcmVsYXRpdmU7IHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICAgICAgICBidXR0b257XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7IGRpc3BsYXk6IGZsZXg7IGZsZXgtZmxvdzogcm93IG5vd3JhcDsgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgcGFkZGluZzogMzBweCAwOyBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RjZGNkYztcclxuICAgICAgICAgICAgICAgICAgICAucVR4dHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6Y2FsYygxMDAlIC0gMzhweCk7IGRpc3BsYXk6IGZsZXg7IGZsZXgtZmxvdzogcm93IG5vd3JhcDsgYWxpZ24taXRlbXM6IGJhc2VsaW5lOyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5xTWt7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHdpZHRoOiAzMHB4OyBoZWlnaHQ6IDMwcHg7IGxpbmUtaGVpZ2h0OiAzMHB4OyBiYWNrZ3JvdW5kOiB2YXIoLS1rZXktYmx1ZTAxKTsgYm9yZGVyLXJhZGl1czogNTAlOyB0ZXh0LWFsaWduOiBjZW50ZXI7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiUmVkSGF0RGlzcGxheVwiOyBmb250LXNpemU6IDE4cHg7IGNvbG9yOiAjZmZmOyBmb250LXdlaWdodDogYm9sZDsgbGV0dGVyLXNwYWNpbmc6IC0wLjQ1cHg7IG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAudGl0bGV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDpjYWxjKDEwMCUgLSAzMHB4KTsgZm9udC1zaXplOiAxNnB4OyBjb2xvcjogIzAwMDsgZm9udC13ZWlnaHQ6IDUwMDsgbGluZS1oZWlnaHQ6IDI0cHg7IGxldHRlci1zcGFjaW5nOiAtMC40cHg7IHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgLmFjY0FycntcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6MzhweDsgcGFkZGluZy10b3A6MTBweDsgdGV4dC1hbGlnbjpyaWdodDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaW1ne1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNHM7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLm9ue1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuY29udEJveHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lOyB3aWR0aDogMTAwJTsgYmFja2dyb3VuZDogI2Y1ZmNmZjsgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkY2RjZGM7IG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICAgICAgcHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMzBweCAxMHB4OyBmb250LXNpemU6IDEuNHJlbTsgY29sb3I6ICMwMDA7IGZvbnQtd2VpZ2h0OiA0MDA7IGxpbmUtaGVpZ2h0OiAyOyBsZXR0ZXItc3BhY2luZzogLTAuNHB4OyB3b3JkLWJyZWFrOiBrZWVwLWFsbDsgZGlzcGxheTpibG9jaztcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0g7J6E7KeB7JuQIO2WieuPmeqwleuguSDslYTsvZTrlJTslrggLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuLypcclxuLmNwdEFjY29yQ29udCB7XHJcbiAgICBAZXh0ZW5kIC5jcHRBY2NvcmRpb247XHJcbiAgICAuYWNjSW5uZXIgbGkgYnV0dG9uIHtwYWRkaW5nOiAzMHB4IDIwcHg7fVxyXG4gICAgLmFjY0lubmVyIGxpIC5jb250Qm94IHtwYWRkaW5nOiAyN3B4IDIwcHg7fVxyXG5cclxuICAgICYgKyAmIHttYXJnaW4tdG9wOiA2NHB4O31cclxufVxyXG4qL1xyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSDsjbjrhKTsnbwt7IOB7IS47ISk66qFIOuqqeuhnSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG4vKlxyXG4uY3B0R2FsbERlc2NMaXN0IHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgIC5nYWxsVGFibGUge1xyXG4gICAgICAgIC5nYWxsR3JvdXAge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTsgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMwMDA7XHJcbiAgICAgICAgICAgIC5nYWxsSXRlbSB7XHJcbiAgICAgICAgICAgICAgICAmID4gYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7IHBhZGRpbmc6IDQwcHggMjBweDsgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkY2RjZGM7IGRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGNvbHVtbi1nYXA6IDMwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgLnRodW1BcmVhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIxM3B4OyBoZWlnaHQ6IDEyMHB4OyBiYWNrZ3JvdW5kOiAjZjVmNWY1O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpbWcge3dpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IG9iamVjdC1maXQ6IGNvdmVyO31cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgLmRlc2NBcmVhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDI0M3B4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmdhbGxUaXQge21hcmdpbi1ib3R0b206IDE1cHg7IGZvbnQtc2l6ZTogMjRweDsgY29sb3I6ICMwMDA7IGZvbnQtd2VpZ2h0OiA3MDA7IG92ZXJmbG93OiBoaWRkZW47IHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOyB3aGl0ZS1zcGFjZTogbm93cmFwO31cclxuICAgICAgICAgICAgICAgICAgICAgICAgLmdhbGxEZXNjIHtmb250LXNpemU6IDE2cHg7IGNvbG9yOiAjMDAwOyBsaW5lLWhlaWdodDogMjsgIC13ZWJraXQtbGluZS1jbGFtcDogMzsgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDsgZGlzcGxheTogLXdlYmtpdC1ib3g7IG92ZXJmbG93OiBoaWRkZW47IHdvcmQtYnJlYWs6IGtlZXAtYWxsO31cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuKi8iLCJcclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0g64yA7LacIOyGjOqwnO2OmOydtOyngCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG4uY3B0TG9hbkluZm8ge1xyXG4gICAgd2lkdGg6MTAwJTtcclxuICAgIC5sb2FuaW5mb0JveCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7IHBhZGRpbmc6MCAyMHB4O1xyXG4gICAgICAgIC5sb2FuVGl0QXJlYSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlOyBwYWRkaW5nOjQwcHggMjBweDsgYm9yZGVyLXJhZGl1czogMjVweDsgYmFja2dyb3VuZDojZjFmOGZmIGNlbnRlciAxODZweCAvIDIwMHB4IG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgJi5sb2FuIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uLy4uL2ltYWdlcy9zdWIvbG9hbl8zMDAucG5nXCIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYuZXN0YXRlIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uLy4uL2ltYWdlcy9zdWIvbG9hbl9lc3RhdGUucG5nXCIpO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcCAyMTBweDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTMwcHg7XHJcbiAgICAgICAgICAgICAgICAuc3VtbWFyeUdyb3VwIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOjE4NHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYuY2FyIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uLy4uL2ltYWdlcy9zdWIvbG9hbl9jYXIucG5nXCIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAubG9hblRpdCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOjAgMTBweDtcclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgaSB7Zm9udC1zaXplOiAxLjRyZW07IGZvbnQtd2VpZ2h0OiA1MDA7IGNvbG9yOiAjNDQ0OyBkaXNwbGF5OiBibG9jazsgZm9udC1zdHlsZTogbm9ybWFsO31cclxuICAgICAgICAgICAgICAgIGIge21hcmdpbi10b3A6NXB4OyBmb250LXNpemU6IDMuNnJlbTsgY29sb3I6ICMwMDA7IGZvbnQtd2VpZ2h0OiA1MDA7IGZvbnQtZmFtaWx5OiBcIllhbmdQeWVvbmdNXCI7IGxpbmUtaGVpZ2h0OiAxOyBsZXR0ZXItc3BhY2luZzogLTAuMDc1ZW07IGRpc3BsYXk6IGJsb2NrO31cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAudGFnR3JvdXAge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAyMHB4IDEwcHggMCAxMHB4OyBkaXNwbGF5OiBpbmxpbmUtZmxleDsgYWxpZ24taXRlbXM6IGNlbnRlcjsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IGNvbHVtbi1nYXA6IDVweDtcclxuICAgICAgICAgICAgICAgIC50YWcge21pbi1oZWlnaHQ6IDMwcHg7IHBhZGRpbmc6IDAgMTJweDsgYm9yZGVyLXJhZGl1czogMTVweDsgbGluZS1oZWlnaHQ6IDI4cHg7IGZvbnQtc2l6ZTogMS4ycmVtOyBmb250LXdlaWdodDogNDAwOyBjb2xvcjogIzAwMDsgYm9yZGVyOjFweCBzb2xpZCAjZGNkY2RjOyBiYWNrZ3JvdW5kOiAjZjhmOWZiO31cclxuICAgICAgICAgICAgfVxyXG4gICAgXHJcbiAgICAgICAgICAgIC5zdW1tYXJ5R3JvdXAge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjIwcHg7IGRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xyXG4gICAgICAgICAgICAgICAgLml0ZW0ge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMThweDsgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtwYWRkaW5nLWxlZnQ6IDIxcHg7fVxyXG4gICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDMpIHtwYWRkaW5nLWxlZnQ6IDM0cHg7fVxyXG4gICAgXHJcbiAgICAgICAgICAgICAgICAgICAgZGwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGR0IHtwYWRkaW5nLXRvcDogNDBweDsgZm9udC1zaXplOiAxLjJyZW07IGZvbnQtd2VpZ2h0OiA1MDA7IGNvbG9yOiAjODg4OyBiYWNrZ3JvdW5kOiBjZW50ZXIgdG9wIC8gMzBweCBuby1yZXBlYXQ7fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmLnBlcmlvZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLnBlcjYwIGR0IHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi8uLi9pbWFnZXMvc3ViL2xvYW5faWNvMTAucG5nXCIpOyBiYWNrZ3JvdW5kLXNpemU6NDBweCA0MHB4OyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IC01cHg7fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZHQge2JhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uLy4uL2ltYWdlcy9zdWIvbG9hbl9pY28wMS5wbmdcIik7fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYubWF4IGR0IHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi8uLi9pbWFnZXMvc3ViL2xvYW5faWNvMDIucG5nXCIpO31cclxuICAgICAgICAgICAgICAgICAgICAgICAgJi5zdGVwIGR0IHtiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi8uLi9pbWFnZXMvc3ViL2xvYW5faWNvMDMucG5nXCIpO31cclxuICAgICAgICAgICAgICAgICAgICAgICAgZGQge21hcmdpbi10b3A6NHB4OyBmb250LXNpemU6IDEuNHJlbTsgZm9udC13ZWlnaHQ6IDUwMDsgY29sb3I6ICMwMDA7fVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgLmJ0bkFyZWEge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6MTAwJTsgbWFyZ2luLXRvcDogMjBweDsgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgLmxvYW5CdG4ge21pbi13aWR0aDogMTAwJTsgaGVpZ2h0OiA2NXB4OyBib3JkZXItcmFkaXVzOiAxNXB4OyBmb250LXNpemU6IDEuOHJlbTsgY29sb3I6ICNmZmY7IHRleHQtYWxpZ246IGNlbnRlcjsgbGluZS1oZWlnaHQ6IDY1cHg7IGJhY2tncm91bmQ6IHZhcigtLWtleS1ibHVlMDEpOyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7fVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcbiAgICAubG9hblN1bW17XHJcbiAgICAgICAgcGFkZGluZzoxMHB4IDIwcHggMjBweDtcclxuXHJcbiAgICAgICAgLm5lZWRzR3JvdXAge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4OyBjb2x1bW4tZ2FwOiAxMHB4O1xyXG5cclxuICAgICAgICAgICAgLml0ZW0ge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwJTsgbWluLWhlaWdodDogMTQ5cHg7IHBhZGRpbmc6IDIwcHg7IGJvcmRlci1yYWRpdXM6IDE1cHg7IGJvcmRlcjogMXB4IHNvbGlkICNmM2YzZjM7IGJhY2tncm91bmQ6ICNmOGY5ZmI7IGRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgY29sdW1uLWdhcDogMTBweDtcclxuXHJcbiAgICAgICAgICAgICAgICAubmVlZHMge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOjEwMCU7IGhlaWdodDoxMDAlOyBmb250LXNpemU6IDEuNHJlbTsgZm9udC13ZWlnaHQ6IDUwMDsgY29sb3I6ICMwMDA7IGxpbmUtaGVpZ2h0OjEuNTsgZGlzcGxheTogYmxvY2s7IGJhY2tncm91bmQ6IHJpZ2h0IGJvdHRvbSAvIDYwcHggbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5sb2FuRGV0YWlsIHtcclxuICAgICAgICBib3JkZXItdG9wOiAxMHB4IHNvbGlkICNmM2YzZjM7XHJcbiAgICAgICAgLmR0bEdyb3VwIHtcclxuICAgICAgICAgICAgcGFkZGluZzowIDIwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZHRsSXRlbSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6NDBweCAxMHB4OyBib3JkZXItdG9wOjFweCBzb2xpZCAjZGNkY2RjO1xyXG5cclxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOjMwcHg7IGJvcmRlci10b3A6MDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmRldGFpbCB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4OyBmbGV4LXdyYXA6d3JhcDtcclxuICAgICAgICAgICAgICAgIGR0IHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsgZm9udC1zaXplOiAxLjhyZW07IGZvbnQtd2VpZ2h0OiA3MDA7IGNvbG9yOiAjMDAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgZGQge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlOyBtYXJnaW4tdG9wOjIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgLmRlc2Mge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTsgY29sb3I6ICMwMDA7IGxpbmUtaGVpZ2h0OiAyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAudW5pdCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgYiB7Zm9udC13ZWlnaHQ6IDUwMDt9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC50Qmx1ZSB7Y29sb3I6IHZhcigtLWtleS1ibHVlMDEpO31cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgLmFkZHMge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC50eHQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07IGNvbG9yOiAjNDQ0OyBsaW5lLWhlaWdodDoyMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIOuMgOy2nCDshozqsJwg7ZSM66Gc7YyFIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcbi5jcHRMb2FuRmxvYXQge1xyXG4gICAgd2lkdGg6IDEwMCU7IG1hcmdpbjogMCAwIC02MHB4IDA7IGhlaWdodDogMTQxcHg7IHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAuZmxvYXRXcmFwLCAuZmxvYXRBcFdyYXAsIC5mbG9hdFBvcFdyYXAge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlOyBwb3NpdGlvbjogZml4ZWQ7IGJvdHRvbTogLTE0MXB4OyBsZWZ0OiAwOyB0cmFuc2l0aW9uOiBhbGwgMC4yczsgei1pbmRleDogMTUwO1xyXG4gICAgICAgIFxyXG4gICAgICAgICY6OmJlZm9yZSB7ZGlzcGxheTogYmxvY2s7IGNvbnRlbnQ6IFwiXCI7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEyMXB4OyBib3JkZXItcmFkaXVzOiAxNXB4IDE1cHggMCAwOyBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LDAuNSk7IGJhY2tkcm9wLWZpbHRlcjogYmx1cigzcHgpOyBwb3NpdGlvbjogYWJzb2x1dGU7IGJvdHRvbTogMDsgbGVmdDogMDsgei1pbmRleDogLTk7fVxyXG4gICAgICAgICYuZmxvYXRPbiB7Ym90dG9tOiAwO31cclxuICAgICAgICAmLmZsb2F0Tm9uZSB7cG9zaXRpb246IGFic29sdXRlOyBib3R0b206IDA7XHJcbiAgICAgICAgICAgIC5mbG9hdEJveHtcclxuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6bm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmZsb2F0Qm94IHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7IGhlaWdodDogMTIxcHg7IHBhZGRpbmc6IDIwcHggMjBweCAzNnB4IDIwcHg7IGJvcmRlci1yYWRpdXM6IDE1cHggMTVweCAwIDA7IGRpc3BsYXk6IGZsZXg7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgYWxpZ24taXRlbXM6IGNlbnRlcjsgIGJveC1zaGFkb3c6IDAgLTVweCAxNXB4IDAgcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG4gICAgICAgIFxyXG4gICAgICAgICAgICAuYnRuQXJlYSB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgLmxvYW5CdG4ge3dpZHRoOjEwMCU7IGhlaWdodDogNjVweDsgcGFkZGluZzogMCAyMHB4OyBib3JkZXItcmFkaXVzOiAxNXB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7IGxpbmUtaGVpZ2h0OiA2NXB4OyBmb250LXNpemU6IDEuOHJlbTsgY29sb3I6ICNmZmY7IFxyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWtleS1ibHVlMDEpOyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IFxyXG4gICAgICAgICAgICAgICAgICAgICYuZGFya3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDojNDQ0O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZmxvYXRQb3BXcmFwIHtcclxuICAgICAgICAmLmZsb2F0Tm9uZXtcclxuICAgICAgICAgICAgcG9zaXRpb246Zml4ZWQ7XHJcbiAgICAgICAgICAgIC5mbG9hdEJveHtcclxuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgLTVweCAxNXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIOyVveq0gCDrsI8g64yA7LacICgzLTEgfiAzLTMpIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcbi5jcHRUZXJtc1NlcnZpY2V7XHJcbiAgICB3aWR0aDogMTAwJTsgcGFkZGluZzowIDIwcHg7XHJcbiAgICAuc2VydmljZUFyZWF7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7IFxyXG4gICAgICAgIC5iYXNlTXNne1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4OyBmb250LXNpemU6IDEuNHJlbTsgbGluZS1oZWlnaHQ6IDEuNTsgZm9udC13ZWlnaHQ6IDQwMDsgY29sb3I6ICMwMDA7XHJcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuYnRuQXJlYXtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDsgd2lkdGg6IDEwMCU7IGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIC5zZXJ2aWNlQnRue1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7IGhlaWdodDogNzBweDsgcGFkZGluZzogMCAzNXB4OyBmb250LXNpemU6IDEuOHJlbTsgZm9udC13ZWlnaHQ6IDUwMDsgY29sb3I6ICNmZmY7IHRleHQtYWxpZ246IGNlbnRlcjsgbGluZS1oZWlnaHQ6IDcwcHg7IGJvcmRlci1yYWRpdXM6IDE1cHg7IGJhY2tncm91bmQ6IHZhcigtLWtleS1ibHVlMDEpOyBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAubGlzdEJ0bkFyZWF7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XHJcblxyXG4gICAgICAgICAgICAuaXRlbXtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlOyBtYXJnaW4tdG9wOjQwcHg7IHBhZGRpbmc6IDMwcHggMjBweDsgYm9yZGVyLXJhZGl1czogMjVweDsgYmFja2dyb3VuZDojZjhmYmZmOyB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMnM7IHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxke21hcmdpbi10b3A6MDt9XHJcbiAgICAgICAgICAgICAgICAuYnRuTmFtZXtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsgZm9udC1zaXplOiAzcmVtOyBmb250LWZhbWlseTogXCJZYW5nUHllb25nTVwiOyBmb250LXdlaWdodDogNTAwOyBjb2xvcjogIzAwMDsgbGluZS1oZWlnaHQ6IDE7IHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5zZXJ2aWNlQnRue1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDU1cHg7IG1hcmdpbi10b3A6MjBweDsgZm9udC1zaXplOiAxNnB4OyBmb250LXdlaWdodDogNDAwOyBjb2xvcjogdmFyKC0ta2V5LWJsdWUwMSk7IGxpbmUtaGVpZ2h0OiA1M3B4OyB0ZXh0LWFsaWduOiBjZW50ZXI7IFxyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNkZGVjZmM7IGJvcmRlci1yYWRpdXM6IDI3LjVweDsgYmFja2dyb3VuZDogI2ZmZjsgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmLnR5cGUwMSAuYnRuTmFtZXtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbToxNTdweDsgYmFja2dyb3VuZDp1cmwoLi4vLi4vaW1hZ2VzL3N1Yi9iZ19sb2FuXzMwMC5wbmcpIGNlbnRlciBib3R0b20gLyAyMDNweCBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmLnR5cGUwMiAuYnRuTmFtZXtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbToxMjNweDsgYmFja2dyb3VuZDp1cmwoLi4vLi4vaW1hZ2VzL3N1Yi9iZ19sb2FuX2hvdXNlLnBuZykgY2VudGVyIGJvdHRvbSAvIDIwM3B4IG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYudHlwZTAzIC5idG5OYW1le1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOjE0OHB4OyBiYWNrZ3JvdW5kOnVybCguLi8uLi9pbWFnZXMvc3ViL2JnX2xvYW5fY2FyLnBuZykgY2VudGVyIGJvdHRvbSAvIDEzMnB4IG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuY29tQ29udFRpdHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0g7JW96rSAIOuwjyDsoJXssYUgKDMtNCB+IDMtMTApIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcbi5jcHRUZXJtc1ByaXZhY3l7XHJcbiAgICB3aWR0aDogMTAwJTsgcGFkZGluZzowIDIwcHg7XHJcbiAgICAucHJpdmFjeUFyZWF7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7IFxyXG4gICAgICAgIFxyXG4gICAgICAgIC5lZmZlY3RpdmVEYXRle1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOjIwcHg7IHBhZGRpbmctYm90dG9tOjUwcHg7IHBvc2l0aW9uOnJlbGF0aXZlO1xyXG5cclxuICAgICAgICAgICAgJjo6YWZ0ZXJ7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OlwiXCI7IHdpZHRoOmNhbGMoMTAwJSArIDQwcHgpOyBoZWlnaHQ6MTBweDsgYmFja2dyb3VuZDojZjNmM2YzOyBkaXNwbGF5OmJsb2NrOyBwb3NpdGlvbjphYnNvbHV0ZTsgbGVmdDotMjBweDsgYm90dG9tOjEwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnRleHR7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6MS42cmVtOyBsaW5lLWhlaWdodDoxLjU7IGZvbnQtd2VpZ2h0OjQwMDsgY29sb3I6IzAwMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuZGF0ZXtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6MTBweDtcclxuICAgICAgICAgICAgICAgIHNlbGVjdHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDoxMDAlOyBoZWlnaHQ6NjBweDsgcGFkZGluZzowIDIwcHg7IGZvbnQtc2l6ZToxLjZyZW07IGxpbmUtaGVpZ2h0OjU4cHg7IGNvbG9yOiM5OTk7IGJvcmRlcjoxcHggc29saWQgI2JlYmViZTsgYm9yZGVyLXJhZGl1czoxM3B4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6dXJsKC4uLy4uL2ltYWdlcy9jb21tb24vaWNvX3ByaXZhY3lfZG93bi5zdmcpIGNhbGMoMTAwJSAtIDIwcHgpIGNlbnRlciBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnByaXZhY3lQbGFjZXtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7IG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5iYXNlVGl0bGV7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7IGZvbnQtc2l6ZToxLjZyZW07IGZvbnQtd2VpZ2h0OjUwMDsgbGluZS1oZWlnaHQ6MS41OyBjb2xvcjogIzAwMDtcclxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5iYXNlTXNne1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4OyBmb250LXNpemU6IDEuNHJlbTsgbGluZS1oZWlnaHQ6IDEuNTsgZm9udC13ZWlnaHQ6IDQwMDsgY29sb3I6ICMwMDA7XHJcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuYmFzZUxpc3R7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgICAgIC5iYXNlSXRlbXtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDsgZm9udC1zaXplOiAxLjRyZW07IGxpbmUtaGVpZ2h0OiAxLjU7IGZvbnQtd2VpZ2h0OiA0MDA7IGNvbG9yOiAjMDAwOyBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmV7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjsgd2lkdGg6IDRweDsgaGVpZ2h0OiA0cHg7IGJhY2tncm91bmQ6ICMwMDA7IGJvcmRlci1yYWRpdXM6IDUwJTsgZGlzcGxheTogYmxvY2s7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgbGVmdDogMDsgdG9wOiAwLjlyZW07XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmNvbUNvbnRUaXR7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206MDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIOq4iOycteyGjOu5hOyekCDslYjrgrQgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuLmNwdENvbnRGaW5hbmNle1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgLmZpbmFuY2VBcmVhe1xyXG4gICAgICAgIHdpZHRoOjEwMCU7IHBhZGRpbmc6MCAyMHB4O1xyXG5cclxuICAgICAgICAuY29udEJveHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7IG1hcmdpbi10b3A6IDQwcHg7IHBhZGRpbmc6IDYwcHggMzVweDsgYm9yZGVyOiAxcHggc29saWQgI2RjZGNkYzsgYm9yZGVyLXJhZGl1czogMTVweDsgYmFja2dyb3VuZDogI2ZjZmNmYztcclxuICAgICAgICAgICAgJi50eXBlMDF7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOjIwcHg7IHBhZGRpbmc6MzBweCAzMHB4IDIwMHB4OyBib3JkZXI6IDA7IGJvcmRlci1yYWRpdXM6IDI1cHg7IGJhY2tncm91bmQ6ICNmNWZjZmYgdXJsKC4uLy4uL2ltYWdlcy9zdWIvZmluYW5jZV9pbWcwMS5wbmcpIGNlbnRlciBib3R0b20gLyAxOTBweCBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmJveFRpdHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7IGZvbnQtc2l6ZTogMS44cmVtOyBsaW5lLWhlaWdodDogMS41OyBmb250LXdlaWdodDogNzAwOyBjb2xvcjogIzAwMDtcclxuICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5rZXlDb2xvciB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDsgY29sb3I6IHZhcigtLWtleS1ibHVlMDEpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5ib3hCe1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDsgZm9udC1zaXplOiAxLjZyZW07IGxpbmUtaGVpZ2h0OiAxLjU7IGZvbnQtd2VpZ2h0OiA1MDA7IGNvbG9yOiAjMDAwO1xyXG4gICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOjA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmJveFRleHR7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4OyBmb250LXNpemU6IDEuNHJlbTsgbGluZS1oZWlnaHQ6IDEuNTsgZm9udC13ZWlnaHQ6IDQwMDsgY29sb3I6ICMwMDA7XHJcbiAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxke1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6MDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuaW5mb1R4dHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6NDBweDsgZm9udC1zaXplOjEuNHJlbTsgZm9udC13ZWlnaHQ6NDAwOyBsaW5lLWhlaWdodDoxLjcxOyBjb2xvcjojOTk5OyBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuY2VudGVye1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmNvbUJ0bkdyb3VwIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcbiAgICAgICAgICAgICAgICAuYnRuLmNydWR7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OmF1dG87IGZvbnQtc2l6ZToxLjRyZW07IHBhZGRpbmc6MTRweCAyMHB4OyBsaW5lLWhlaWdodDoycmVtO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5maW5hbmNlVGl0bGV7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlOyBtYXJnaW4tdG9wOiAzMHB4OyBmb250LXNpemU6IDEuNnJlbTsgbGluZS1oZWlnaHQ6IDEuNTsgZm9udC13ZWlnaHQ6IDUwMDsgY29sb3I6ICMwMDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5jYXJkR3JvdXB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlOyBtYXJnaW4tdG9wOiAyMHB4OyBkaXNwbGF5OiBibG9jaztcclxuXHJcbiAgICAgICAgICAgIC5pdGVte1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7IG1hcmdpbi10b3A6IDIwcHg7IHBhZGRpbmc6IDIwcHggMjBweCAzMHB4OyBib3JkZXI6IDFweCBzb2xpZCAjZGRkOyBib3JkZXItcmFkaXVzOiAxNXB4OyBiYWNrZ3JvdW5kOiAjZmNmY2ZjO1xyXG5cclxuICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGR7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDowO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLmNhcmRDb250e1xyXG4gICAgICAgICAgICAgICAgICAgIC5jYXJkVGl0e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDJyZW07IGZvbnQtd2VpZ2h0OiA3MDA7IGxpbmUtaGVpZ2h0OiAzMHB4OyBjb2xvcjogIzAwMDtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5udW17XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE3cHg7IGZvbnQtZmFtaWx5OiBcIlJlZEhhdERpc3BsYXlcIjsgZm9udC1zaXplOiAzcmVtOyBmb250LXdlaWdodDogNDAwOyBsaW5lLWhlaWdodDogNDBweDsgY29sb3I6ICMwMDA7IHZlcnRpY2FsLWFsaWduOiBib3R0b207XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgJi5pY28wMXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOm1heC1jb250ZW50OyBwYWRkaW5nLXJpZ2h0OjM5cHg7IGJhY2tncm91bmQ6dXJsKC4uLy4uL2ltYWdlcy9zdWIvaWNvX2NhcmQwMS5zdmcpIHJpZ2h0IGNlbnRlciBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgJi5pY28wMntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOm1heC1jb250ZW50OyBwYWRkaW5nLXJpZ2h0OjM5cHg7IGJhY2tncm91bmQ6dXJsKC4uLy4uL2ltYWdlcy9zdWIvaWNvX2NhcmQwMi5zdmcpIHJpZ2h0IGNlbnRlciBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgJi5pY28wM3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOm1heC1jb250ZW50OyBwYWRkaW5nLXJpZ2h0OjM5cHg7IGJhY2tncm91bmQ6dXJsKC4uLy4uL2ltYWdlcy9zdWIvaWNvX2NhcmQwMy5zdmcpIHJpZ2h0IGNlbnRlciBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgJi5pY28wNHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOm1heC1jb250ZW50OyBwYWRkaW5nLXJpZ2h0OjM5cHg7IGJhY2tncm91bmQ6dXJsKC4uLy4uL2ltYWdlcy9zdWIvaWNvX2NhcmQwNC5zdmcpIHJpZ2h0IGNlbnRlciBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgLmNhcmRUZXh0e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4OyBmb250LXNpemU6IDEuNHJlbTsgZm9udC13ZWlnaHQ6IDQwMDsgbGluZS1oZWlnaHQ6IDEuNzsgY29sb3I6ICMwMDA7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIC5leHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOjEuMnJlbTsgZm9udC13ZWlnaHQ6NDAwOyBsaW5lLWhlaWdodDoyOyBjb2xvcjojOTk5O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuYmFzZU1zZ3tcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDsgZm9udC1zaXplOiAxLjRyZW07IGxpbmUtaGVpZ2h0OiAxLjU7IGZvbnQtd2VpZ2h0OiA0MDA7IGNvbG9yOiAjMDAwO1xyXG4gICAgICAgICAgICAmLnhse1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOjEuNnJlbTtcclxuICAgICAgICAgICAgICAgICYgKyAuY29tVGFibGUge21hcmdpbi10b3A6MTBweDt9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5iYXNlTGlzdHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7IG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgICAgIC5pdGVte1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogOHB4OyBwYWRkaW5nLWxlZnQ6IDlweDsgZm9udC1zaXplOiAxLjRyZW07IGZvbnQtd2VpZ2h0OiA0MDA7IGxpbmUtaGVpZ2h0OiAxLjU7IGNvbG9yOiAjMDAwOyBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxke1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmV7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCItXCI7IGRpc3BsYXk6IGJsb2NrOyBwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IDA7IHRvcDogLTFweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuaW5mb1R4dHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDozMHB4O1xyXG4gICAgICAgICAgICBwe1xyXG4gICAgICAgICAgICAgcGFkZGluZy1sZWZ0OjE2cHg7IHRleHQtaW5kZW50Oi0xNnB4OyBmb250LXNpemU6MS40cmVtOyBmb250LXdlaWdodDo0MDA7IGxpbmUtaGVpZ2h0OjEuNzE7IGNvbG9yOiMwMDA7IFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYgKyAuaW5mb1R4dHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6MDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuaW1nQm94e1xyXG4gICAgICAgICAgICB3aWR0aDoxMDAlOyBtYXJnaW4tdG9wOjIwcHg7XHJcbiAgICAgICAgICAgIGltZ3tcclxuICAgICAgICAgICAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmNvbUNvbnRUaXR7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6NDBweDsgbWFyZ2luLWJvdHRvbTowO1xyXG4gICAgICAgICAgICAmICsgLmZpbmFuY2VUaXRsZXtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6MjBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmICsgLmNvbnRCb3h7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOjIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6MDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuY29tVGFibGUgKyAuY29tQnRuR3JvdXAge21hcmdpbi10b3A6MjBweDt9XHJcbiAgICAgICAgLmNvbUJ0bkdyb3Vwe1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOjQwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8v7Iug67aE7KadIOy0rOyYgSwg7KCc7LacXHJcbi5jcHRJZGVudGlmaXtcclxuICAgIHdpZHRoOjEwMCU7XHJcbiAgICAuaWRlbnRpZmlQbGFjZXtcclxuICAgICAgICB3aWR0aDoxMDAlOyBwYWRkaW5nOjAgMjBweDtcclxuXHJcbiAgICAgICAgLmlkZW50aUJveHtcclxuICAgICAgICAgICAgd2lkdGg6MTAwJTsgbWFyZ2luLXRvcDo0MHB4OyBwYWRkaW5nOjQwcHggMjBweDsgYm9yZGVyOjFweCBzb2xpZCAjOTJjZGZmOyBib3JkZXItcmFkaXVzOjE1cHg7IGJhY2tncm91bmQ6I2YyZjlmZjtcclxuXHJcbiAgICAgICAgICAgIC5pZGVudGlUaXR7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICAgICAgICAgICAgZHR7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6MTAwJTsgZm9udC1zaXplOjEuNnJlbTsgZm9udC13ZWlnaHQ6NTAwOyBjb2xvcjojMDAwOyB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGRke1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOjEwMCU7IGZvbnQtc2l6ZToxLjRyZW07IGZvbnQtd2VpZ2h0OjQwMDsgY29sb3I6Izk5OTsgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmZpbGVBcmVhe1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6MTAwJTsgbWFyZ2luLXRvcDoyMHB4OyBkaXNwbGF5OmZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cclxuICAgICAgICAgICAgICAgIC5pbWdCb3h7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI0NXB4OyBoZWlnaHQ6IDE1NXB4OyBkaXNwbGF5OiBmbGV4OyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTsgbWF4LWhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmFkZHN7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMnB4OyBwYWRkaW5nLWxlZnQ6IDI3cHg7IGZvbnQtc2l6ZTogMS4ycmVtOyBjb2xvcjogIzAwMDsgbGluZS1oZWlnaHQ6IDEuNTsgbGV0dGVyLXNwYWNpbmc6IC0wLjQ1cHg7IHBvc2l0aW9uOiByZWxhdGl2ZTsgXHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiA1MCU7IGxlZnQ6IDA7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgd2lkdGg6IDIwcHg7IGhlaWdodDogMjBweDsgYm9yZGVyLXJhZGl1czogNTAlOyBcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOnVybCguLi8uLi9pbWFnZXMvY29tbW9uL2ljb19hbGVydC5zdmcpIDUwJSA1MCUgbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5jb21CdG5Hcm91cCB7bWFyZ2luLXRvcDozMHB4O31cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuaWRlbnRpZmlBcmVhe1xyXG4gICAgICAgIC5pbWdCb3h7XHJcbiAgICAgICAgICAgIHdpZHRoOjEwMCU7IHBhZGRpbmctdG9wOjYzJTsgcG9zaXRpb246cmVsYXRpdmU7IGJvcmRlcjoxcHggc29saWQgI2RjZGNkYzsgYm9yZGVyLXJhZGl1czoxNXB4OyBiYWNrZ3JvdW5kOiNmM2YzZjMgdXJsKC4uLy4uL2ltYWdlcy9jb21tb24vaWNvX2NhbWVyYS5zdmcpIGNlbnRlciBuby1yZXBlYXQ7IG92ZXJmbG93OmhpZGRlbjtcclxuICAgICAgICAgICAgaW1ne1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6MTAwJTsgaGVpZ2h0OjEwMCU7IG9iamVjdC1maXQ6IGNvdmVyOyBwb3NpdGlvbjphYnNvbHV0ZTsgbGVmdDowOyB0b3A6MDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuZGlyVGl0bGV7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6MTJweDsgcGFkZGluZy1sZWZ0OiAyN3B4OyBmb250LXNpemU6IDEuNHJlbTsgY29sb3I6ICMwMDA7IGxpbmUtaGVpZ2h0OiAxLjU7IGxldHRlci1zcGFjaW5nOiAtMC40NXB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgXHJcbiAgICAgICAgICAgICY6OmJlZm9yZXtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiA1MCU7IGxlZnQ6IDA7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgd2lkdGg6IDIwcHg7IGhlaWdodDogMjBweDsgYm9yZGVyLXJhZGl1czogNTAlOyBcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWtleS1ibHVlMDEpIHVybCguLi8uLi9pbWFnZXMvY29tbW9uL2ljb19ub3RpY2Uuc3ZnKSA1MCUgNTAlIG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmICsgLmNvbUJ0bkdyb3Vwe21hcmdpbi10b3A6NDBweDt9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5mbHNUeHR7XHJcbiAgICAgICAgICAgIHdpZHRoOjEwMCU7IG1hcmdpbi10b3A6MjBweDsgZm9udC1zaXplOjEuNnJlbTsgZm9udC13ZWlnaHQ6NTAwOyBsaW5lLWhlaWdodDoxLjU7IGNvbG9yOiNmZTVmNWY7IHRleHQtYWxpZ246Y2VudGVyO1xyXG4gICAgICAgICAgICAmICsgLmNvbUJ0bkdyb3Vwe21hcmdpbi10b3A6MzBweDt9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICDrjIDstpwg7Iq57J24IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBcclxuLmNwdEFwcHJvdmUge1xyXG4gICAgLmFsZXJ0Qm94e1xyXG4gICAgICAgIHdpZHRoOiAxMDAlOyBwYWRkaW5nOiAxNDBweCAyMHB4IDA7IHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAuYWxlcnRUaXR7XHJcbiAgICAgICAgICAgIGR0e1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDg1cHg7IGZvbnQtc2l6ZTogMi40cmVtOyBjb2xvcjogIzAwMDsgZm9udC13ZWlnaHQ6IDUwMDsgYmFja2dyb3VuZDogdXJsKC4uLy4uL2ltYWdlcy9jb21tb24vaWNvX2FwcHJvdmUuc3ZnKSBjZW50ZXIgdG9wIG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBkZHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7IGZvbnQtc2l6ZTogMS42cmVtOyBjb2xvcjogIzY2NjsgbGluZS1oZWlnaHQ6IDEuNjI1O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOiAxMDBweDt9XHJcbiAgICAgICAgICAgICYgKyAuY29tQnRuR3JvdXB7bWFyZ2luLXRvcDogMTAwcHg7fVxyXG4gICAgICAgIH1cclxuICAgICAgICAuYWxlcnRBZGRze1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOjEwcHg7IG1hcmdpbi1ib3R0b206MTAwcHg7XHJcbiAgICAgICAgICAgIHB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6MS40cmVtOyBsaW5lLWhlaWdodDoxLjU7IGZvbnQtd2VpZ2h0OjUwMDsgY29sb3I6Izk5OTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLmRlbnl7XHJcbiAgICAgICAgICAgIC5hbGVydFRpdHtcclxuICAgICAgICAgICAgICAgIGR0e1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi8uLi9pbWFnZXMvY29tbW9uL2ljb19kZW55LnN2ZykgY2VudGVyIHRvcCBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmFsZXJ0QWRkc3tcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6MjBweDtcclxuICAgICAgICAgICAgICAgIHB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6I2ZlNWY1ZjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5jb21CdG5Hcm91cHtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTo0MHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICDqsITtjrjsnbjspp0oTm8gRGF0YSkgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFxyXG4uY3B0Tm9uZURhdGF7XHJcbiAgICAuZGF0YUFyZWF7XHJcbiAgICAgICAgcGFkZGluZzogMCAyMHB4O1xyXG4gICAgICAgIC5kYXRhQm94e1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTsgcGFkZGluZzogNDBweCAwIDQwcHg7IHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAgICAgICAgIC50eHRBcmVhe1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuXHJcbiAgICAgICAgICAgICAgICAuYWxlcnR7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyLjRyZW07IGZvbnQtd2VpZ2h0OiA1MDA7IGNvbG9yOiAjMDAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLmFkZHN7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDsgZm9udC1zaXplOiAxLjZyZW07IGNvbG9yOiAjNjY2O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5jb21CdG5Hcm91cHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDo0MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAuY29tSW5mb0JveCArIC5jb21CdG5Hcm91cCB7bWFyZ2luLXRvcDogNDBweDt9XHJcblxyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSDrgpjsnZjrjIDstpzsobDtmowgPiDrjIDstpzsi6zsgqztmITtmakgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi5jcHRTdGF0ZUJveHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgIC5sb2FuQXJlYXtcclxuICAgICAgICB3aWR0aDoxMDAlOyBwYWRkaW5nOjAgMjBweDtcclxuICAgIH1cclxuXHJcbiAgICAuc3RhdGVHcm91cHtcclxuICAgICAgICAuaXRlbXtcclxuICAgICAgICAgICAgd2lkdGg6MTAwJTsgbWFyZ2luLXRvcDoyMHB4O1xyXG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxke1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDowO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN0YXRlQm94e1xyXG4gICAgICAgIHdpZHRoOiAxMDAlOyBwYWRkaW5nOiA0MHB4IDMwcHg7IGJvcmRlci1yYWRpdXM6IDI1cHg7IGJhY2tncm91bmQ6ICNmNWZjZmY7XHJcblxyXG4gICAgICAgIC5pdGVtSW5mbyB7XHJcbiAgICAgICAgICAgIC5uYW1le1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyLjRyZW07IGZvbnQtd2VpZ2h0OiA1MDA7IGNvbG9yOiAjMDAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5kYXRle1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogN3B4OyBmb250LXNpemU6IDEuNnJlbTsgY29sb3I6ICM0NDQ7XHJcblxyXG4gICAgICAgICAgICAgICAgYntmb250LXdlaWdodDogNDAwO31cclxuICAgICAgICAgICAgICAgIGl7bWFyZ2luLWxlZnQ6N3B4OyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiA1MDA7fVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5zdGF0ZUJhcntcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDoyMHB4O1xyXG5cclxuICAgICAgICAgICAgLmJhcldyYXB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsgaGVpZ2h0OiA3cHg7IGJvcmRlci1yYWRpdXM6IDMuNXB4OyBiYWNrZ3JvdW5kOiAjZmZmOyBib3gtc2hhZG93OiAwIDNweCA3cHggMCByZ2JhKDY4LCA2OCwgNjgsIDAuMDQpOyBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAuYmFye1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogN3B4OyBib3JkZXItcmFkaXVzOiAzLjVweDsgZm9udC1zaXplOiAwOyBiYWNrZ3JvdW5kOiB2YXIoLS1rZXktYmx1ZTAxKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuc3RhdGVUaXQge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogOHB4OyBkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogY2VudGVyOyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgICAgICAuc3RhdGUge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNSU7IGZvbnQtc2l6ZTogMTRweDsgY29sb3I6ICM4ODg7IGZvbnQtd2VpZ2h0OiA1MDA7IHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICAgICAgICAgICAgICAgICYubm93IHtjb2xvcjogIzAwMDt9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIC8vICYuZGVueXtcclxuICAgICAgICAgICAgLy8gICAgIC5iYXJXcmFwe1xyXG4gICAgICAgICAgICAvLyAgICAgICAgIC5iYXJ7YmFja2dyb3VuZDojZmU1ZjVmOyAgfVxyXG4gICAgICAgICAgICAvLyAgICAgfVxyXG4gICAgICAgICAgICAvLyB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5zdGF0ZU5vd3tcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcclxuXHJcbiAgICAgICAgICAgIC5ub3d7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuOHJlbTsgZm9udC13ZWlnaHQ6IDUwMDsgY29sb3I6ICMwMDA7IFxyXG4gICAgICAgICAgICAgICAgYntmb250LXdlaWdodDo3MDA7IGNvbG9yOnZhcigtLWtleS1ibHVlMDEpO31cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuYWRkc3tcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7IGZvbnQtc2l6ZTogMS40cmVtOyBjb2xvcjogIzY2NjsgbGluZS1oZWlnaHQ6IDEuNjI1O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5tb3Jle1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7IG1hcmdpbi10b3A6IDEwcHg7IGZvbnQtc2l6ZTogMS40cmVtOyBjb2xvcjogIzk5OTsgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5kZW55e1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7IG1hcmdpbi10b3A6IDEwcHg7IGZvbnQtc2l6ZTogMS40cmVtOyBjb2xvcjogI2ZlNWY1ZjsgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmNvbUJ0bkdyb3Vwe1xyXG4gICAgICAgIG1hcmdpbi10b3A6MzBweDtcclxuICAgICAgICAuYnRuLmNydWR7XHJcbiAgICAgICAgICAgIHdpZHRoOjE5NnB4ICFpbXBvcnRhbnQ7IGZvbnQtc2l6ZToxLjRyZW07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSDrgpjsnZjrjIDstpzsobDtmowgPiDrjIDstpzsoJXrs7TsobDtmowgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4uY3B0TG9hbkRldGFpbHtcclxuICAgIHdpZHRoOjEwMCU7IFxyXG4gICAgLmR0QXJlYXtcclxuICAgICAgICAuY2FyZEJ0bkdyb3Vwe1xyXG4gICAgICAgICAgICB3aWR0aDoxMDAlOyBoZWlnaHQ6MjI3cHg7IHBhZGRpbmc6MCAyMHB4OyBvdmVyZmxvdzpoaWRkZW47IHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgICAgICAgICAuY2FyZEdyb3Vwe1xyXG4gICAgICAgICAgICAgICAgLmNhcmRJdGVte1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOjI4MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIC5jYXJke1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDoyODBweDsgcGFkZGluZzozMHB4OyBib3JkZXI6MXB4IHNvbGlkICNkY2RjZGM7IGJvcmRlci1yYWRpdXM6MjVweDsgYmFja2dyb3VuZDojZmZmO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgJi5ub3dPbntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6MjlweDsgYm9yZGVyOjFweCBzb2xpZCAjYmZkZmZmOyBiYWNrZ3JvdW5kOiNmMmY5ZmY7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgLnRpdHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToycmVtOyBmb250LXdlaWdodDo3MDA7IGNvbG9yOiMwMDA7IGxpbmUtaGVpZ2h0OjEuNjsgdGV4dC1hbGlnbjpsZWZ0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5pbmZvR3JvdXB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOjIwcHg7IHRleHQtYWxpZ246bGVmdDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuaW5mb3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6N3B4OyBmb250LXNpemU6MS42cmVtOyBmb250LXdlaWdodDo0MDA7IGNvbG9yOiM0NDQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxke1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6MDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6NTAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXN0eWxlOm5vcm1hbDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuc3dpcGVyLXBhZ2luYXRpb257XHJcbiAgICAgICAgICAgICAgICBib3R0b206MDtcclxuICAgICAgICAgICAgICAgIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXR7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6NnB4OyBoZWlnaHQ6NnB4OyBtYXJnaW46MCAyLjVweDsgYmFja2dyb3VuZDojZGJkYmRiOyBib3JkZXItcmFkaXVzOjNweDsgdHJhbnNpdGlvbjphbGwgMC4zcztcclxuICAgICAgICAgICAgICAgICAgICAmLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmV7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOjE4cHg7IGhlaWdodDo2cHg7IGJhY2tncm91bmQ6IzQ0NDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmxvYW5EdEdyb3Vwe1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOjQwcHg7IFxyXG4gICAgICAgICAgICAuZHRJdGVte1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTpub25lO1xyXG4gICAgICAgICAgICAgICAgJi5vbntcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5kdEJveHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOjEwMCU7IHBhZGRpbmc6MCAyMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgID4gLmNvbUJ0bkdyb3VwIHtwYWRkaW5nOjAgMjBweDsgbWFyZ2luLXRvcDo2MHB4O31cclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIOyYiOq4iOyjvCDtmZXsnbgg66Gc65Sp67CUIC0g7J287LmYIOu2iOydvOy5mCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIFxyXG4uY3B0Q2hlY2tQcm9jZXNzIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgLmxvYWRpbmdXcmFwIHtcclxuICAgICAgICBwYWRkaW5nOiA4MHB4IDA7IHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAubG9hZGluZ0JhciB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDdweDsgbWFyZ2luOiAwIGF1dG87IGJvcmRlci1yYWRpdXM6IDMuNXB4OyAgYmFja2dyb3VuZDogI2YzZjNmMzsgYm94LXNoYWRvdzogIDAgM3B4IDdweCAwIHJnYmEoNjgsIDY4LCA2OCwgMC4wNCk7IG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgIC5ub3dMb2FkIHtmb250LXNpemU6IDA7IGhlaWdodDogN3B4OyBib3JkZXItcmFkaXVzOiAzLjVweDsgYmFja2dyb3VuZDogdmFyKC0ta2V5LWJsdWUwMSk7IGFuaW1hdGlvbjogbG9hZGJhciAzcyBsaW5lYXIgaW5maW5pdGU7fVxyXG5cclxuICAgICAgICAgICAgQGtleWZyYW1lcyBsb2FkYmFyIHtcclxuICAgICAgICAgICAgICAgIGZyb20ge3dpZHRoOiAwO31cclxuICAgICAgICAgICAgICAgIHRvIHt3aWR0aDogMTAwJTt9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmxvYWRpbmdJbmZvIHtmb250LXNpemU6IDE2cHg7IGZvbnQtd2VpZ2h0OiA1MDA7IGNvbG9yOiAjZmZmOyBsaW5lLWhlaWdodDogMS42MjU7IG1hcmdpbi1ib3R0b206MjBweDt9XHJcbiAgICB9XHJcbiAgICAuaW5mb0FyZWEge1xyXG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGNkY2RjOyBwYWRkaW5nOiA4MHB4IDA7IHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAmOmZpcnN0LWNoaWxkIHttYXJnaW4tdG9wOiA4MHB4O31cclxuICAgICAgICAuaW5mb1RpdCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDsgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICAgICAgJi50LXJlZCB7Y29sb3I6ICNmZTVmNWY7fVxyXG4gICAgICAgICAgICAmLnQtYmx1ZSB7Y29sb3I6IHZhcigtLWtleS1ibHVlMDEpO31cclxuICAgICAgICB9XHJcbiAgICAgICAgLmRlc2Mge21hcmdpbi10b3A6IDIwcHg7IGZvbnQtc2l6ZTogMTZweDsgY29sb3I6ICM0NDQ7IGxpbmUtaGVpZ2h0OiAxLjYyNTt9XHJcbiAgICAgICAgLmFkZHMge21hcmdpbi10b3A6IDQwcHg7IGZvbnQtc2l6ZTogMTRweDsgY29sb3I6ICM2NjY7IGxpbmUtaGVpZ2h0OiAxLjQ7fVxyXG4gICAgICAgIC5jb21CdG5Hcm91cCB7bWFyZ2luLXRvcDogMzBweDt9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuIiwiXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSDshJzruYTsiqQg6rO17KeAL+yXkOufrCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLmNwdEVycm9ye1xyXG4gICAgd2lkdGg6IDEwMCU7IG1hcmdpbi10b3A6IDQwcHg7XHJcbiAgICAuZXJyb3JBcmVhIHtcclxuICAgICAgICB3aWR0aDogMTAwJTsgcGFkZGluZzogMTEwcHggMjBweCAwIDIwcHg7IGJhY2tncm91bmQ6IHVybCguLi8uLi9pbWFnZXMvY29tbW9uL2ltZ19sb2dvX25vdGkucG5nKSBjZW50ZXIgdG9wIC8gNjBweCBuby1yZXBlYXQ7XHJcbiAgICAgICAgLmVyclRpdGxlIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxLjhyZW07IGxpbmUtaGVpZ2h0OiAxLjU7IGNvbG9yOiAjMDAwOyBmb250LXdlaWdodDogNzAwOyB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5lcnJNc2cge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4OyBmb250LXNpemU6IDEuNnJlbTsgY29sb3I6ICMwMDA7IGZvbnQtd2VpZ2h0OiA0MDA7IHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmluZm9Cb3gge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgLnRleHRCb3gge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6bWF4LWNvbnRlbnQ7IG1hcmdpbjozMHB4IGF1dG8gMDtcclxuICAgICAgICAgICAgICAgIC50ZXh0IHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTsgY29sb3I6ICMwMDA7IGZvbnQtd2VpZ2h0OiA0MDA7IHRleHQtYWxpZ246IGxlZnQ7IGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIOuhnOuUqSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLmNvbUxvYWRpbmcge1xyXG4gICAgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpOyBkaXNwbGF5OiBibG9jazsgcG9zaXRpb246IGZpeGVkOyBsZWZ0OiAwOyB0b3A6IDA7IHotaW5kZXg6IDEwMDA7XHJcbiAgICAubG9hZEFyZWEge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IGRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgfVxyXG4gICAgLmxvYWRCb3gge1xyXG4gICAgICAgIHdpZHRoOjY1cHg7IGhlaWdodDo2NXB4OyBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgICAgICBcclxuICAgICAgICAuYmFsbHtcclxuICAgICAgICAgICAgJjo6YmVmb3Jle1xyXG4gICAgICAgICAgICAgICAgY29udGVudDpcIlwiOyB3aWR0aDoxNXB4OyBoZWlnaHQ6MTVweDsgYm9yZGVyLXJhZGl1czo1MCU7IGJhY2tncm91bmQ6I2ZmZjsgZGlzcGxheTpibG9jazsgdHJhbnNmb3JtOnNjYWxlKDApO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7IGxlZnQ6MDsgdG9wOi03LjVweDsgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyOyBhbmltYXRpb246IGxvYWRpbmcgMS42cyBpbmZpbml0ZTsgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgd2lkdGg6MzIuNXB4OyBoZWlnaHQ6MHB4OyBiYWNrZ3JvdW5kOiNmZmY7IGRpc3BsYXk6YmxvY2s7IHBvc2l0aW9uOmFic29sdXRlOyBsZWZ0OjA7IHRvcDozMi41cHg7IHRyYW5zZm9ybS1vcmlnaW46IHRvcCByaWdodDsgXHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgxKXt0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuICAgICAgICAgICAgICAgICY6OmJlZm9yZXtcclxuICAgICAgICAgICAgICAgICAgICBhbmltYXRpb24tZGVsYXk6MC4ycztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgyKXt0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmV7XHJcbiAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OjAuNHM7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMyl7dHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xyXG4gICAgICAgICAgICAgICAgJjo6YmVmb3Jle1xyXG4gICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTowLjZzO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDQpe3RyYW5zZm9ybTogcm90YXRlKDEzNWRlZyk7XHJcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmV7XHJcbiAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OjAuOHM7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoNSl7dHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgICAgICY6OmJlZm9yZXtcclxuICAgICAgICAgICAgICAgICAgICBhbmltYXRpb24tZGVsYXk6MXM7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoNil7dHJhbnNmb3JtOiByb3RhdGUoMjI1ZGVnKTtcclxuICAgICAgICAgICAgICAgICY6OmJlZm9yZXtcclxuICAgICAgICAgICAgICAgICAgICBhbmltYXRpb24tZGVsYXk6MS4ycztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOm50aC1jaGlsZCg3KXt0cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpO1xyXG4gICAgICAgICAgICAgICAgJjo6YmVmb3Jle1xyXG4gICAgICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheToxLjRzO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDgpe3RyYW5zZm9ybTogcm90YXRlKDMxNWRlZyk7XHJcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmV7XHJcbiAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OjEuNnM7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuQGtleWZyYW1lcyBsb2FkaW5nIHtcclxuICAgIDAlIHtcclxuICAgICAgICB0cmFuc2Zvcm06c2NhbGUoMCk7XHJcbiAgICB9XHJcblxyXG4gICAgMjAlIHtcclxuICAgICAgICB0cmFuc2Zvcm06c2NhbGUoMSk7XHJcbiAgICB9XHJcbiAgXHJcbiAgICAxMDAlIHtcclxuICAgICAgICB0cmFuc2Zvcm06c2NhbGUoMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbiIsIi8vIGJvYXJkXHJcblxyXG5cclxuLy8gY29udGVudHNcclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0g7KCE7J6Q6rOE7JW9IOumrOyKpO2KuCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi5jcHRDb250cmFjdExpc3Qge1xyXG4gICAgLmxpc3RBcmVhIHtcclxuICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XHJcbiAgICAgICAgLmxpc3RBbGVydCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlOyBtYXJnaW46IDYwcHggMCA0MHB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7IHdvcmQtYnJlYWs6IGtlZXAtYWxsO1xyXG4gICAgICAgICAgICAuYWxlcnRUaXQge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7IGZvbnQtc2l6ZTogMnJlbTsgY29sb3I6ICM0NDQ7IGZvbnQtd2VpZ2h0OiA3MDA7IGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgIGIge2NvbG9yOiB2YXIoLS1rZXktYmx1ZTAxKTt9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaSB7bWFyZ2luLXRvcDogMjBweDsgZm9udC1zdHlsZTogbm9ybWFsOyBmb250LXNpemU6IDEuNnJlbTsgY29sb3I6ICM2NjY7IGRpc3BsYXk6IGlubGluZS1ibG9jazt9IFxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmxpc3RHcm91cCB7XHJcbiAgICAgICAgICAgIC5pdGVtIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IGJvcmRlci1yYWRpdXM6IDI1cHg7IGJvcmRlcjogMXB4IHNvbGlkICNkY2RjZGM7IHBhZGRpbmc6IDMwcHg7XHJcbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge21hcmdpbi1ib3R0b206IDA7fVxyXG4gICAgICAgICAgICAgICAgLml0ZW1UaXQge1xyXG4gICAgICAgICAgICAgICAgICAgIC5udW0ge2ZvbnQtc2l6ZTogMnJlbTsgZm9udC13ZWlnaHQ6IDcwMDsgY29sb3I6ICMwMDA7fVxyXG4gICAgICAgICAgICAgICAgICAgIC50aXQge2ZvbnQtc2l6ZTogMS42cmVtOyBjb2xvcjogIzQ0NDt9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuYnRuQXJlYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDsgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgIC5jb250QnRuIHt3aWR0aDogY2FsYygxMDAlIC0gODBweCk7IGhlaWdodDogNTBweDsgYm9yZGVyLXJhZGl1czogMTBweDsgZm9udC1zaXplOiAxLjRyZW07IGZvbnQtd2VpZ2h0OiA1MDA7IHRleHQtYWxpZ246IGNlbnRlcjsgbGluZS1oZWlnaHQ6IDQ5cHg7IGNvbG9yOiAjZmZmOyBiYWNrZ3JvdW5kOiAjNDQ0O31cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0g7ISc66qFIOyeheugpSDsupTrsoTsiqQgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLyBcclxuLmNwdFNpZ25DYW52YXMge1xyXG4gICAgLmNhbnZhc0FyZWEge3dpZHRoOiAxMDAlOyBoZWlnaHQ6IDIwMHB4OyBib3JkZXItcmFkaXVzOiAxNXB4OyBib3JkZXI6IDFweCBzb2xpZCAjZGNkY2RjOyBiYWNrZ3JvdW5kOiAjZjdmOGZjO31cclxuICAgIC5jbnZzVUkge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7IGRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAuaW5mbyB7Zm9udC1zaXplOjEuMnJlbTsgZm9udC13ZWlnaHQ6IDUwMDsgY29sb3I6IHZhcigtLWtleS1ibHVlMDEpOyBmb250LXdlaWdodDogNTAwO31cclxuICAgICAgICAuY252c1JlbW92ZSB7cGFkZGluZy1sZWZ0OiAyNHB4OyBmb250LXNpemU6IDEuNHJlbTsgY29sb3I6ICMwMDA7IGJhY2tncm91bmQ6IHVybCguLi8uLi9pbWFnZXMvY29tbW9uL2ljb19yZWxvYWQucG5nKSBsZWZ0IGNlbnRlciAvIDE3cHggbm8tcmVwZWF0O31cclxuICAgIH1cclxufVxyXG5cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0g7KCA64u57ISk7KCVIO2ZleyduOyCrO2VrSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIFxyXG4uY3B0Q29uZmlybVJhZGlvIHtcclxuICAgIG1hcmdpbi10b3A6IDQwcHg7IHBhZGRpbmctdG9wOiA0MHB4OyBib3JkZXItdG9wOiAxMHB4IHNvbGlkICNmM2YzZjM7XHJcbiAgICAucmFkaW9BcmVhIHtcclxuICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XHJcbiAgICAgICAgLmNmcm1BcmVhIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAzMHB4IDAgNDBweDtcclxuICAgICAgICAgICAgLmNmcm1UaXQge2ZvbnQtc2l6ZTogMS42cmVtOyBmb250LXdlaWdodDogNTAwOyBjb2xvcjogIzAwMDt9XHJcbiAgICAgICAgICAgIC5jZnJtRGVzYyB7bWFyZ2luOiAxMHB4IDAgMjBweDsgZm9udC1zaXplOiAxLjRyZW07IGNvbG9yOiAjNDQ0OyBsaW5lLWhlaWdodDogMS42OyB3b3JkLWJyZWFrOiBrZWVwLWFsbDt9XHJcbiAgICAgICAgICAgIC5kZXRhaWxCb3gge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7IGJvcmRlci1yYWRpdXM6IDE1cHg7IGJvcmRlcjogMXB4IHNvbGlkICNkY2RjZGM7IHBhZGRpbmc6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICAuaXRlbSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge21hcmdpbi1ib3R0b206IDA7fVxyXG4gICAgICAgICAgICAgICAgICAgIC50aXQge2Rpc3BsYXk6IGJsb2NrOyBmb250LXNpemU6IDEuNnJlbTsgY29sb3I6ICM0NDQ7IGZvbnQtd2VpZ2h0OiA3MDA7fVxyXG4gICAgICAgICAgICAgICAgICAgIC5leHAge2Rpc3BsYXk6IGJsb2NrOyBtYXJnaW4tdG9wOiAxMHB4OyBmb250LXNpemU6IDEuNHJlbTsgY29sb3I6ICM0NDQ7IGZvbnQtc3R5bGU6IG5vcm1hbDsgd29yZC1icmVhazoga2VlcC1hbGw7fVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5yYWRpb1dyYXAge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDsgdGV4dC1hbGlnbjogY2VudGVyOyBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPXJhZGlvXSArIGxhYmVsIHt3aWR0aDogMTAwJTsgaGVpZ2h0OiA1MHB4OyBwYWRkaW5nOiAwIDIwcHg7IGJvcmRlcjogMXB4IHNvbGlkICNjY2M7IGJvcmRlci1yYWRpdXM6IDEwcHg7IGxpbmUtaGVpZ2h0OiA0OXB4OyBmb250LXNpemU6IDEuNHJlbTsgZm9udC13ZWlnaHQ6IDUwMDsgY29sb3I6ICM0NDQ7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgY3Vyc29yOiBwb2ludGVyO31cclxuICAgICAgICAgICAgICAgIGlucHV0W3R5cGU9cmFkaW9dOmNoZWNrZWQgKyBsYWJlbCB7Ym9yZGVyOiAycHggc29saWQgdmFyKC0ta2V5LWJsdWUwMSk7IHBhZGRpbmc6IDAgMTlweDsgbGluZS1oZWlnaHQ6IDQ3cHg7IGNvbG9yOiB2YXIoLS1rZXktYmx1ZTAxKTsgZm9udC13ZWlnaHQ6IDUwMDt9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBcclxufVxyXG5cclxuLy8gY29tbW9uXHJcblxyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSDslYjrgrTsgqztla0g67CV7IqkIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLmNvbUluZm9Cb3gge1xyXG4gICAgd2lkdGg6IDEwMCU7IG1hcmdpbi1ib3R0b206IDQwcHg7IHBhZGRpbmc6IDQwcHggMjBweDsgdGV4dC1hbGlnbjogY2VudGVyOyBib3JkZXItcmFkaXVzOiAxNXB4OyBiYWNrZ3JvdW5kOiAjZjJmOWZmO1xyXG4gICAgLmluZm9UeHQge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiA2NXB4OyBmb250LXNpemU6IDEuNHJlbTsgY29sb3I6ICM2NjY7IGxpbmUtaGVpZ2h0OiAxLjY7IGJhY2tncm91bmQ6IHVybCguLi8uLi9pbWFnZXMvY29tbW9uL2ljb19ub3RpY2Vfcm91bmQucG5nKSBjZW50ZXIgdG9wIC8gNDVweCBuby1yZXBlYXQ7IHdvcmQtYnJlYWs6IGtlZXAtYWxsO1xyXG4gICAgICAgIGIge3dpZHRoOiAxMDAlOyBmb250LXNpemU6IDEuNnJlbTsgZm9udC13ZWlnaHQ6IDUwMDsgY29sb3I6ICMwMDA7fVxyXG4gICAgICAgIGkge21hcmdpbi10b3A6IDIwcHg7Zm9udC1zdHlsZTogbm9ybWFsOyAgZGlzcGxheTogaW5saW5lLWJsb2NrO31cclxuICAgIH1cclxufVxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0g7J2066+47KeAIOyEpOuqheusuCjrj4TtkZwpIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcbi5jb21JbWdEZXNjIHtcclxuICAgIHdpZHRoOiAxMDAlOyB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBpbWcge21heC13aWR0aDogMTAwJTt9XHJcbn0iLCIvKuuMgOy2nOyLoOyyrSDsl6zrsLEg7ISk7KCVKi9cclxuLmNoZWNrQWxsQm94IHttYXJnaW4tYm90dG9tOjIuNHJlbTsgbWFyZ2luLXRvcDo0cmVtO31cclxuLmNoZWNrTGlzdCB1bCBsaSB7bWFyZ2luLWJvdHRvbToyLjVyZW07fVxyXG4uZm9ybVRvcEFyZWEge1xyXG4gICAgcGFkZGluZzozcmVtIDAgNHJlbSAwOyBib3JkZXItYm90dG9tOjEwcHggc29saWQgI2YzZjNmMztcclxuXHJcbiAgICAmLm5vVW5kZXJMaW5lIHtib3JkZXItYm90dG9tOjA7fVxyXG59XHJcbi5mb3JtQm90QXJlYSB7XHJcbiAgICBwYWRkaW5nOjRyZW0gMCA0cmVtIDA7XHJcbiAgICAgICAgICAgIFxyXG4gICAgJiArIC5jb21CdG5Hcm91cHtcclxuICAgICAgICBtYXJnaW4tdG9wOjBweDsgbWFyZ2luLWJvdHRvbTo2MHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4vKu2MneyXhSovXHJcbi5tb2RGbFBvcCB7XHJcbiAgICBkaXNwbGF5Om5vbmU7IHBvc2l0aW9uOnJlbGF0aXZlOyB6LWluZGV4Ojk5OTtcclxuXHJcbiAgICAucG9wQ29udCB7XHJcbiAgICAgICAgcG9zaXRpb246Zml4ZWQ7IHRvcDowOyBsZWZ0OjA7IHdpZHRoOjEwMCU7IGhlaWdodDoxMDAlOyBiYWNrZ3JvdW5kOiNmZmY7XHJcblxyXG4gICAgICAgIC50aXRBcmVhIHtcclxuICAgICAgICAgICAgcGFkZGluZzozMHB4IDIwcHg7IGRpc3BsYXk6ZmxleDsgZmxleC1mbG93OiByb3cgbm93cmFwOyBhbGlnbi1pdGVtczogY2VudGVyOyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblxyXG4gICAgICAgICAgICA+IHAge2ZvbnQtc2l6ZToxLjhyZW07IGNvbG9yOiMwMDA7IGZvbnQtd2VpZ2h0OmJvbGQ7IGxpbmUtaGVpZ2h0OjEuNTt9XHJcblxyXG4gICAgICAgICAgICA+IGJ1dHRvbiB7d2lkdGg6MnJlbTsgaGVpZ2h0OjJyZW07IGJhY2tncm91bmQ6dXJsKFwiLi4vLi4vaW1hZ2VzL2NvbW1vbi9pY29fcG9wX2Nscy5zdmdcIik1MCUgNTAlIG5vLXJlcGVhdDt9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAucG9wQ29udEFyZWEge1xyXG4gICAgICAgICAgICB3aWR0aDoxMDAlOyBoZWlnaHQ6Y2FsYygxMDAlIC0gMjEuM3JlbSk7IG92ZXJmbG93LXk6IHNjcm9sbDsgcGFkZGluZzowIDIwcHggMzBweDtcclxuXHJcbiAgICAgICAgICAgIC50eHRJbm5Db3Yge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6Y2FsYygxMDAlIC0gMy40cmVtKTsgZm9udC1zaXplOiAxLjRyZW07IGNvbG9yOiMwMDA7IGZvbnQtd2VpZ2h0OiA0MDA7IGxpbmUtaGVpZ2h0OjEuNVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuY2xzQnRuIHt3aWR0aDoycmVtOyBoZWlnaHQ6MnJlbTsgYmFja2dyb3VuZDogdXJsKFwiLi4vLi4vaW1hZ2VzL2NvbW1vbi9pY29fcG9wX2Nscy5zdmdcIik1MCUgNTAlIG5vLXJlcGVhdDsgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuY3B0TG9hbkZsb2F0IHtcclxuICAgICAgICAgICAgaGVpZ2h0OjEyNnB4O1xyXG4gICAgICAgICAgICAuZmxvYXRCb3h7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6MTA2cHg7XHJcbiAgICAgICAgICAgICAgICAuYnRuQXJlYXtcclxuICAgICAgICAgICAgICAgICAgICAubG9hbkJ0bntcclxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OjUwcHg7IGxpbmUtaGVpZ2h0OjUwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcbn1cclxuXHJcbi5sb2FkaW5nQ292IHtcclxuICAgIHBvc2l0aW9uOmZpeGVkOyB0b3A6MDsgbGVmdDowOyB3aWR0aDoxMDAlOyBoZWlnaHQ6MTAwJTsgYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuNSk7IHotaW5kZXg6OTk5O1xyXG5cclxuICAgIC5sZEJhciB7XHJcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7IHdpZHRoOjcwJTsgdG9wOjUwJTsgbGVmdDo1MCU7IHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5wcm9jZXNzQ29tcGxldGUge1xyXG4gICAgd2lkdGg6MTAwJTsgcGFkZGluZzoxNDBweCAyMHB4IDAgMjBweDtcclxuICAgIC5jaGVjayB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIC50aXQge2ZvbnQtc2l6ZToyNHB4OyBjb2xvcjojMDAwOyBmb250LXdlaWdodDo1MDA7IGxpbmUtaGVpZ2h0OjMycHg7IGxldHRlci1zcGFjaW5nOiAtMC42cHg7IG1hcmdpbi10b3A6MTVweDt9XHJcbiAgICAgICAgLmRlc2Mge1xyXG4gICAgICAgICAgICBmb250LXNpemU6MTZweDsgY29sb3I6IzY2NjsgZm9udC13ZWlnaHQ6NDAwOyBsaW5lLWhlaWdodDoyNnB4OyBsZXR0ZXItc3BhY2luZzogLTAuNHB4OyBtYXJnaW4tdG9wOjMwcHg7XHJcbiAgICAgICAgICAgICYudHkwMiB7Zm9udC1zaXplOjE0cHg7IGNvbG9yOiM5OTk7IGZvbnQtd2VpZ2h0OjUwMDt9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmxvYW5JbmZvIHtcclxuICAgICAgICB3aWR0aDoxMDAlOyBib3JkZXI6MXB4IHNvbGlkICNkY2RjZGM7IGJvcmRlci1yYWRpdXM6MTVweDsgcGFkZGluZzowIDIwcHggNDBweCAyMHB4OyBtYXJnaW4tdG9wOjQwcHg7XHJcblxyXG4gICAgICAgIC5pdGVtIHtwYWRkaW5nLWJvdHRvbToyMHB4OyBtYXJnaW4tdG9wOjIwcHggIWltcG9ydGFudDsgYm9yZGVyLWJvdHRvbToxcHggc29saWQgI2RkZGRkZDt9XHJcbiAgICAgICAgLml0ZW06bGFzdC1vZi10eXBlIHtib3JkZXI6MDsgcGFkZGluZy1ib3R0b206MDt9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qMjAyNC4wNS4yOCDsnpHshLHslYjrgrQg6rCA7J2065OcIO2OmOydtOyngCDstpTqsIAqL1xyXG4uaW5mb0dkVGFiIHtcclxuICAgIHBhZGRpbmc6IDAgMnJlbTtcclxuICAgIC5pbmZvR3VpZGUge1xyXG4gICAgICAgIHdpZHRoOjEwMCU7IG1hcmdpbi10b3A6M3JlbTtcclxuICAgICAgICAuaW5mb0NhcHR1cmUge1xyXG4gICAgICAgICAgICB3aWR0aDoxMDAlOyB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICAgIFxyXG4gICAgICAgICAgICBpbWcge2Rpc3BsYXk6aW5saW5lLWJsb2NrO31cclxuICAgICAgICB9XHJcbiAgICBcclxuICAgICAgICAuZGl2TGluZSB7ZGlzcGxheTpibG9jazsgd2lkdGg6MTAwJTsgaGVpZ2h0OjFweDsgYmFja2dyb3VuZDojZGNkY2RjOyBtYXJnaW46NnJlbSAwO31cclxuICAgIFxyXG4gICAgICAgIC5pbmZvVHh0Qm94IHtcclxuICAgICAgICAgICAgd2lkdGg6MTAwJTsgcG9zaXRpb246cmVsYXRpdmU7IHBhZGRpbmc6M3JlbTsgYmFja2dyb3VuZDojZjhmOGY4OyBtYXJnaW4tdG9wOjJyZW07IGJvcmRlci1yYWRpdXM6MS41cmVtO1xyXG4gICAgXHJcbiAgICAgICAgICAgIC5sZWZ0QXJlYSB7XHJcbiAgICAgICAgICAgICAgICBzcGFuLm51bSB7ZGlzcGxheTpibG9jazsgd2lkdGg6M3JlbTsgaGVpZ2h0OjNyZW07IGJvcmRlci1yYWRpdXM6NTAlOyBiYWNrZ3JvdW5kOiMwMDVjZTY7IGZvbnQtc2l6ZToxLjZyZW07IGNvbG9yOiNmZmY7IHRleHQtYWxpZ246Y2VudGVyOyBmb250LXdlaWdodDo1MDA7IGxpbmUtaGVpZ2h0OjNyZW07IG1hcmdpbi1ib3R0b206MS41cmVtfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5yaWdodEFyZWEge1xyXG4gICAgICAgICAgICAgICAgcC50aXRsZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOjEuNnJlbTsgY29sb3I6IzAwMDsgZm9udC13ZWlnaHQ6NDAwOyBsaW5lLWhlaWdodDoyLjZyZW07IGxldHRlci1zcGFjaW5nOi0wLjQ1cHg7IHdvcmQtYnJlYWs6a2VlcC1hbGw7XHJcbiAgICBcclxuICAgICAgICAgICAgICAgICAgICA+IHNwYW4ge2NvbG9yOiMwMDVjZTY7IGZvbnQtd2VpZ2h0OjUwMDt9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBwLmRlc2Mge2ZvbnQtc2l6ZToxLjRyZW07IGNvbG9yOiMwMDA7IGZvbnQtd2VpZ2h0OjQwMDsgbGluZS1oZWlnaHQ6Mi40cmVtOyBsZXR0ZXItc3BhY2luZzotMC40cHg7IG1hcmdpbi10b3A6MnJlbTsgd29yZC1icmVhazprZWVwLWFsbDt9XHJcbiAgICAgICAgICAgIH1cclxuICAgIFxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8qMjAyNC4wNy4wOCDsp4HsnqXqsoDsg4kg7IOI7LC9IO2MneyXhSDstpTqsIAqL1xyXG4uY3B0U2VhcmNoSm9iIHtcclxuICAgIHdpZHRoOjEwMCU7IHBvc2l0aW9uOnJlbGF0aXZlO1xyXG5cclxuICAgID4udGl0bGUge3BhZGRpbmc6MnJlbTsgZm9udC1zaXplOjJyZW07IGNvbG9yOiMwMDA7IGZvbnQtd2VpZ2h0OjUwMDsgbGluZS1oZWlnaHQ6MTsgbGV0dGVyLXNwYWNpbmc6LTAuNXB4OyBib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZGNkY2RjO31cclxuXHJcbiAgICAuc2VhcmNoTGlzdCB7XHJcbiAgICAgICAgcGFkZGluZzogM3JlbSAycmVtIDAgMnJlbTsgaGVpZ2h0OjUycmVtOyBvdmVyZmxvdy15OnNjcm9sbDtcclxuICAgICAgICBcclxuICAgICAgICA+Lmxpc3RUaXQge2ZvbnQtc2l6ZToxNnB4OyBjb2xvcjojOTk5OyBmb250LXdlaWdodDo0MDA7IGxpbmUtaGVpZ2h0OjE7IGxldHRlci1zcGFjaW5nOi0wLjRweDsgbWFyZ2luLWJvdHRvbToxcmVtO31cclxuXHJcbiAgICAgICAgPiB1bCB7XHJcbiAgICAgICAgICAgID4gbGkge1xyXG4gICAgICAgICAgICAgICAgJi5ub0xpc3Qge3dpZHRoOjEwMCU7IGZvbnQtc2l6ZToxLjRyZW07IGZvbnQtd2VpZ2h0OmJvbGQ7IHRleHQtYWxpZ246Y2VudGVyOyBsaW5lLWhlaWdodDoxOyBwYWRkaW5nOiA1cmVtIDA7fVxyXG4gICAgICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OmJsb2NrOyB3aWR0aDoxMDAlOyBwYWRkaW5nOiAzcmVtOyBwb3NpdGlvbjpyZWxhdGl2ZTsgYmFja2dyb3VuZDojZjNmM2YzOyBib3JkZXItcmFkaXVzOjEuNXJlbTsgbWFyZ2luLWJvdHRvbToxcmVtO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICA+IC5qb2JMaXN0VGl0IHtkaXNwbGF5OmJsb2NrOyBmb250LXNpemU6MS40cmVtOyBjb2xvcjojMDAwOyBmb250LXdlaWdodDpib2xkOyBsaW5lLWhlaWdodDoxOyBsZXR0ZXItc3BhY2luZzotMC4zNXB4OyBtYXJnaW4tYm90dG9tOi41cmVtO31cclxuICAgICAgICAgICAgICAgICAgICA+IC5qb2JMaXN0RGVzYyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7IGZvbnQtc2l6ZToxLjRyZW07IGNvbG9yOiMwMDA7IGZvbnQtd2VpZ2h0OjQwMDsgbGluZS1oZWlnaHQ6Mi40cmVtOyBsZXR0ZXItc3BhY2luZzotMC4zNXB4OyBtYXJnaW4tYm90dG9tOjEuNXJlbTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGUge21hcmdpbi1ib3R0b206MDt9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xyXG4gICAgICAgICAgICAgICAgICAgIGEge21hcmdpbi1ib3R0b206MDt9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbUJ0bkdyb3VwIHtwYWRkaW5nOiAwIDJyZW07fVxyXG59XHJcblxyXG5cclxuLyoyMDI0LjA1LjE2IOyVveq0gCBodG1sIO2MjOydvCBjc3MqL1xyXG4uc3RhcnRUZXJtcyB7XHJcbiAgICB3aWR0aDoxMDAlOyBwb3NpdGlvbjpyZWxhdGl2ZTsgZm9udC1zaXplOjEuNnJlbTsgY29sb3I6IzQ0NDsgbGluZS1oZWlnaHQ6Mi40cmVtOyBsZXR0ZXItc3BhY2luZzotMC40cHg7XHJcblxyXG4gICAgPiAudGl0bGUge1xyXG4gICAgICAgIGZvbnQtc2l6ZToxLjhyZW07IGZvbnQtd2VpZ2h0OmJvbGQ7XHJcblxyXG4gICAgICAgICYuaGVhZCB7Zm9udC1zaXplOjIuNHJlbTsgdGV4dC1hbGlnbjpjZW50ZXI7fVxyXG4gICAgfVxyXG4gICAgPiAudGl0bGU6bm90KDpmaXJzdC1vZi10eXBlKSB7bWFyZ2luLXRvcDo0cmVtO31cclxuXHJcbiAgICA+IC5kZXNjcmlwdGlvbiB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDoxcmVtO1xyXG4gICAgICAgICYuc21hbGwge1xyXG4gICAgICAgICAgICBmb250LXNpemU6MS40cmVtOyBjb2xvcjojNjY2O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5oZWFkIHtmb250LXNpemU6MS42cmVtOyB0ZXh0LWFsaWduOmNlbnRlcjt9XHJcbiAgICB9XHJcblxyXG4gICAgLmxpc3Qge1xyXG4gICAgICAgIHdpZHRoOmNhbGMoMTAwJSAtIDJyZW0pOyBwb3NpdGlvbjpyZWxhdGl2ZTsgbWFyZ2luLWxlZnQ6MXJlbTsgbWFyZ2luLXRvcDoxcmVtO1xyXG5cclxuICAgICAgICA+IHVsIHtcclxuICAgICAgICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgICAgICAgPiBsaSB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDoxMDAlOyBtYXJnaW4tdG9wOjFyZW07XHJcblxyXG4gICAgICAgICAgICAgICAgJjpmaXJzdC1vZi10eXBlIHttYXJnaW4tdG9wOjA7fVxyXG5cclxuICAgICAgICAgICAgICAgIGRpdiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdWwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDoxMDAlOyBtYXJnaW4tdG9wOi41cmVtO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7bWFyZ2luLXRvcDowO31cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudGFibGVCb3gge1xyXG4gICAgICAgIHdpZHRoOjEwMCU7IG1hcmdpbi10b3A6MXJlbTsgb3ZlcmZsb3cteDogc2Nyb2xsO1xyXG4gICAgICAgIHRhYmxlIHtcclxuICAgICAgICAgICAgd2lkdGg6NjUwcHg7IGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IFxyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgdGhlYWQge1xyXG4gICAgICAgICAgICAgICAgdHIge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiNkY2RjZGM7IHRleHQtYWxpZ246Y2VudGVyOyBwYWRkaW5nOiAxcmVtIDFyZW07IGJvcmRlcjoxcHggc29saWQgI2NjYzsgZm9udC1zaXplOjEuNnJlbTsgY29sb3I6IzQ0NDsgZm9udC13ZWlnaHQ6NTAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgdGJvZHkge1xyXG4gICAgICAgICAgICAgICAgdHIge1xyXG4gICAgICAgICAgICAgICAgICAgIHRkIHsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6I2ZmZjsgdGV4dC1hbGlnbjpsZWZ0OyBwYWRkaW5nOiAxcmVtIDFyZW07IGJvcmRlcjoxcHggc29saWQgI2RmZGZkZjsgZm9udC1zaXplOjEuNnJlbTsgY29sb3I6IzQ0NDsgZm9udC13ZWlnaHQ6NDAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcbn1cclxuXHJcbi8qMjAyNC4wNy4zMCDsi6DrtoTspp0g6rCA7J2065OcIOuwjyDslYjrgrQg7LaU6rCAKi9cclxuLmZsc0FyZWEge1xyXG4gICAgd2lkdGg6MTAwJTsgYmFja2dyb3VuZDojZjdmOWZjOyBib3JkZXItcmFkaXVzOjEuNXJlbTsgcGFkZGluZzoycmVtOyB0ZXh0LWFsaWduOmNlbnRlcjsgbWFyZ2luLXRvcDoycmVtO1xyXG4gICAgLmZsc1RpdCB7Zm9udC1zaXplOjEuNnJlbTsgY29sb3I6I2YzNWY1ZjsgbGluZS1oZWlnaHQ6Mi4ycmVtOyBsZXR0ZXItc3BhY2luZzotMC40cHg7IGZvbnQtd2VpZ2h0OjUwMDsgbWFyZ2luLWJvdHRvbToxcmVtO31cclxuICAgIC5mbHNEZXNjIHtmb250LXNpemU6MS4zcmVtOyBjb2xvcjojOTk5OyBsaW5lLWhlaWdodDoycmVtOyBsZXR0ZXItc3BhY2luZzotMC4zM3B4OyBmb250LXdlaWdodDo0MDA7fVxyXG59XHJcblxyXG4ubGljZW5zZUd1aWRlIHtcclxuICAgIHdpZHRoOjEwMCU7IGJhY2tncm91bmQ6I2Y3ZjlmYzsgYm9yZGVyLXJhZGl1czoxLjVyZW07IHBhZGRpbmc6MnJlbTsgdGV4dC1hbGlnbjpjZW50ZXI7IG1hcmdpbi10b3A6MnJlbTtcclxuXHJcbiAgICAubGljVGl0IHtmb250LXNpemU6MS42cmVtOyBsaW5lLWhlaWdodDoyLjJyZW07IGxldHRlci1zcGFjaW5nOi0wLjRweDsgZm9udC13ZWlnaHQ6NTAwOyBtYXJnaW4tYm90dG9tOjFyZW07IGNvbG9yOnZhcigtLWtleS1ibHVlMDEpO31cclxuICAgIC5saWNEZXNjIHtmb250LXNpemU6MS4zcmVtOyBjb2xvcjojNDQ0OyBsaW5lLWhlaWdodDoycmVtOyBsZXR0ZXItc3BhY2luZzotMC4zM3B4OyBmb250LXdlaWdodDo0MDA7fVxyXG5cclxufVxyXG5cclxuLyoyMDI0LjA3LjMwIOyLoOu2hOymnSDqsIDsnbTrk5wg7Yyd7JeFKi9cclxuLnVwbG9hZEd1aWRlQm94IHtcclxuICAgIG1hcmdpbi1ib3R0b206NHJlbTtcclxuICAgIHAucG9zaXRpdmUge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDoyLjdyZW07IGZvbnQtc2l6ZToxLjhyZW07IGNvbG9yOiMwMDA7IGZvbnQtd2VpZ2h0OjUwMDsgbGluZS1oZWlnaHQ6My4ycmVtOyBsZXR0ZXItc3BhY2luZzotMS4ycHg7IHBvc2l0aW9uOnJlbGF0aXZlOyBtYXJnaW4tYm90dG9tOjJyZW07XHJcbiAgICAgICAgJjo6YmVmb3JlIHtjb250ZW50OicnOyBwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOiA1MCU7IGxlZnQ6MDsgd2lkdGg6MnJlbTsgaGVpZ2h0OjJyZW07IGJhY2tncm91bmQ6dXJsKC4uLy4uL2ltYWdlcy9zdWIvaWNvX2d1aWRlX3RydWUucG5nKWNlbnRlciBsZWZ0IG5vLXJlcGVhdDsgdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7fVxyXG4gICAgfVxyXG5cclxuICAgIHAubmVnYXRpdmUge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDoyLjdyZW07IGZvbnQtc2l6ZToxLjhyZW07IGNvbG9yOiMwMDA7IGZvbnQtd2VpZ2h0OjUwMDsgbGluZS1oZWlnaHQ6My4ycmVtOyBsZXR0ZXItc3BhY2luZzotMS4ycHg7IHBvc2l0aW9uOnJlbGF0aXZlOyBtYXJnaW4tYm90dG9tOjJyZW07IG1hcmdpbi10b3A6NHJlbTtcclxuICAgICAgICAmOjpiZWZvcmUge2NvbnRlbnQ6Jyc7IHBvc2l0aW9uOmFic29sdXRlOyB0b3A6IDUwJTsgbGVmdDowOyB3aWR0aDoycmVtOyBoZWlnaHQ6MnJlbTsgYmFja2dyb3VuZDp1cmwoLi4vLi4vaW1hZ2VzL3N1Yi9pY29fZ3VpZGVfZmFsc2UucG5nKWNlbnRlciBsZWZ0IG5vLXJlcGVhdDsgdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7fVxyXG4gICAgfVxyXG5cclxuICAgIC5ndWlkZUltZ0JveCB7YmFja2dyb3VuZDojZjNmM2YzOyBib3JkZXItcmFkaXVzOjI1cHg7IHBhZGRpbmc6Mi42cmVtOyB0ZXh0LWFsaWduOmNlbnRlcjt9XHJcbn1cclxuIiwiLmNwdEZvcm17XHJcbiAgICAuZm9ybUFyZWF7XHJcbiAgICAgICAgcGFkZGluZzowIDIwcHg7XHJcbiAgICAgICAgLmZybVBsYWNle1xyXG4gICAgICAgICAgICBwYWRkaW5nOjUwcHggMCA0MHB4OyBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgICAgICAgICAgJjo6YWZ0ZXJ7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OlwiXCI7IHdpZHRoOmNhbGMoMTAwJSArIDQwcHgpOyBoZWlnaHQ6MTBweDsgYmFja2dyb3VuZDojZjNmM2YzOyBkaXNwbGF5OmJsb2NrOyBwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOjA7IGxlZnQ6LTIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6MCAwIDQwcHg7XHJcbiAgICAgICAgICAgICAgICAmOjphZnRlcntcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5Om5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpsYXN0LWNoaWxke1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzo1MHB4IDAgMDtcclxuICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGR7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzowO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAmICsgLmNvbUJ0bkdyb3Vwe1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDowcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0g64uo64+FIO2PvCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gXHJcbiAgICAgICAgLmZsc1R4dHsgLy/snpjrqrvrkJwg7J6F66ClIOuwjyDtlYTsiJjsnoXroKUg7JWI64K0IOuplOyLnOyngFxyXG4gICAgICAgICAgICB3aWR0aDoxMDAlOyBtYXJnaW4tdG9wOiAxMHB4OyBmb250LXNpemU6IDEuMnJlbTsgY29sb3I6ICNmZTVmNWY7IHBvc2l0aW9uOiByZWxhdGl2ZTsgZGlzcGxheTpub25lOyBcclxuICAgICAgICB9XHJcbiAgICAgICAgLmRlc2N7ICAvL+yViOuCtCDrqZTsi5zsp4BcclxuICAgICAgICAgICAgd2lkdGg6MTAwJTsgbWFyZ2luLXRvcDogMTBweDsgZm9udC1zaXplOiAxLjJyZW07IGNvbG9yOiB2YXIoLS1rZXktYmx1ZTAxKTsgcG9zaXRpb246IHJlbGF0aXZlOyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IFxyXG4gICAgICAgIH1cclxuICAgICAgICAuZnJtVHh0e1xyXG4gICAgICAgICAgICAub3B0VGl0eyAvL+2PvCDsmLXshZgg7YOA7J207YuAXHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMnJlbTsgY29sb3I6ICM5OTk7IGZvbnQtd2VpZ2h0OiA3MDA7IGxpbmUtaGVpZ2h0OiAxLjU7IGxldHRlci1zcGFjaW5nOiAtMC4zNXB4O1xyXG5cclxuICAgICAgICAgICAgICAgIC5mb3JtYWxEYXRhVHh0IHtmb250LXNpemU6MS40cmVtOyBjb2xvcjp2YXIoLS1rZXktYmx1ZTAxKTsgZm9udC13ZWlnaHQ6NzAwOyBsaW5lLWhlaWdodDoxLjU7IGxldHRlci1zcGFjaW5nOi0wLjM1cHg7IGRpc3BsYXk6aW5saW5lLWJsb2NrOyBtYXJnaW4tbGVmdDoxcmVtO31cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuZGlyVGl0bGV7IC8v7KCV67O0IOuplOyLnOyngFxyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IHBhZGRpbmctbGVmdDogMjdweDsgZm9udC1zaXplOiAxLjRyZW07IGNvbG9yOiAjMDAwOyBsaW5lLWhlaWdodDogMS41OyBsZXR0ZXItc3BhY2luZzogLTAuNDVweDtcclxuICAgICAgICAgICAgICAgICY6OmJlZm9yZXtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiOyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogNTAlOyBsZWZ0OiAwOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IHdpZHRoOiAyMHB4OyBoZWlnaHQ6IDIwcHg7IGJvcmRlci1yYWRpdXM6IDUwJTsgXHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0ta2V5LWJsdWUwMSkgdXJsKC4uLy4uL2ltYWdlcy9jb21tb24vaWNvX25vdGljZS5zdmcpIDUwJSA1MCUgbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJi5jaGVja3tcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOjQwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3Jle2JhY2tncm91bmQ6IHZhcigtLWtleS1ibHVlMDEpIHVybCguLi8uLi9pbWFnZXMvY29tbW9uL2ljb19jaGVja19vZmYucG5nKSA1MCUgNTAlIC8gMTBweCBuby1yZXBlYXQ7fVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJi5ub25le1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDowOyBmb250LXNpemU6MS44cmVtOyBmb250LXdlaWdodDo1MDA7IGNvbG9yOiM0NDQ7XHJcbiAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3Jle2Rpc3BsYXk6bm9uZTt9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmZybUlwdHtcclxuICAgICAgICAgICAgLyoyMDI0LjA3LjI2IOy2lOqwgCovXHJcbiAgICAgICAgICAgICYub2N3IHtcclxuICAgICAgICAgICAgICAgIC8vIGlucHV0IHtwb3NpdGlvbjpyZWxhdGl2ZTsgei1pbmRleDoyOyBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O31cclxuICAgICAgICAgICAgICAgIC8vIC5mb3JtYWxEYXRhVHh0IHtwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOjA7IGxlZnQ6MDsgZm9udC1zaXplOjEuNnJlbTsgY29sb3I6I2NjYzsgZm9udC13ZWlnaHQ6NTAwOyBsaW5lLWhlaWdodDoxLjU7IGxldHRlci1zcGFjaW5nOi0wLjUzcHg7IHBhZGRpbmctYm90dG9tOjEwcHg7fVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6MTBweDsgZGlzcGxheTpmbGV4OyBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICAgICAmICsgLmZybUlwdHttYXJnaW4tdG9wOjIwcHg7fVxyXG4gICAgICAgICAgICAuZGF0YVR4dHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlOyBmb250LXNpemU6IDEuNnJlbTsgZm9udC13ZWlnaHQ6IDUwMDsgY29sb3I6ICMwMDA7IGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIGlucHV0e1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6MTAwJTsgcGFkZGluZzowIDAgMTBweCAwOyBmb250LXNpemU6MS42cmVtOyBjb2xvcjojMDAwOyBmb250LXdlaWdodDo1MDA7IGxpbmUtaGVpZ2h0OjEuNTsgbGV0dGVyLXNwYWNpbmc6IC0wLjUzcHg7IGJvcmRlcjowOyBib3JkZXItYm90dG9tOiAycHggc29saWQgI2RjZGNkYztcclxuXHJcbiAgICAgICAgICAgICAgICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtmb250LXNpemU6MS42cmVtOyBjb2xvcjojY2NjOyBmb250LXdlaWdodDo1MDA7IGxpbmUtaGVpZ2h0OjEuNTsgbGV0dGVyLXNwYWNpbmc6LTAuNDVweDt9XHJcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtvdXRsaW5lOjA7IGJvcmRlci1ib3R0b206MnB4IHNvbGlkIHZhcigtLWtleS1ibHVlMDEpO31cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAubWVhc3tcclxuICAgICAgICAgICAgICAgIHdpZHRoOjNyZW07IHBhZGRpbmc6MCAwIDEycHggMDsgZm9udC1zaXplOjEuNnJlbTsgY29sb3I6IzAwMDsgZm9udC13ZWlnaHQ6NTAwOyBsaW5lLWhlaWdodDoxLjU7IHRleHQtYWxpZ246cmlnaHQ7IGxldHRlci1zcGFjaW5nOiAtMC41M3B4OyBcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlOyByaWdodDowOyBib3R0b206MDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuaXB0QnRue1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OjI5cHg7IHBhZGRpbmc6MCAxMnB4OyBmb250LXNpemU6IDEuMnJlbTsgY29sb3I6ICNmZmY7IGZvbnQtd2VpZ2h0OiA0MDA7IGxpbmUtaGVpZ2h0OiAyN3B4OyBsZXR0ZXItc3BhY2luZzogLTAuMzVweDsgYmFja2dyb3VuZDogIzY2NjsgIFxyXG4gICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgcG9zaXRpb246IGFic29sdXRlOyBib3R0b206IDEycHg7IHJpZ2h0OiAwOyBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5pblRleHQxeyAvL+yasOy4oSDrgZ3sl5Ag7ZWc6riA7J6QIOunjO2BvCDsmIHsl60g7LCo7KeA7ZWY6rOgIOyasOy4oSDsoJXroKxcclxuICAgICAgICAgICAgICAgIGlucHV0IHtwYWRkaW5nLXJpZ2h0OjNyZW07IHRleHQtYWxpZ246cmlnaHQ7fVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYuaW5UZXh0MnsgLy/smrDsuKEg64Gd7JeQIOuRkOq4gOyekCDrp4ztgbwg7JiB7JetIOywqOyngO2VmOqzoCDsmrDsuKEg7KCV66CsXHJcbiAgICAgICAgICAgICAgICBpbnB1dCB7cGFkZGluZy1yaWdodDo0LjVyZW07IHRleHQtYWxpZ246cmlnaHQ7fVxyXG4gICAgICAgICAgICAgICAgLm1lYXN7d2lkdGg6NC41cmVtO31cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLmluQnRueyAvL+yasOy4oSDrgZ3sl5Ag67KE7Yq87J20IOyhtOyerO2VmOqzoCDsnoXroKUg7JiB7Jet7J2AIOq3uOunjO2BvCDspITslrTrk6xcclxuICAgICAgICAgICAgICAgIGlucHV0IHt9XHJcbiAgICAgICAgICAgICAgICAuYnRuV3JhcHtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjpzdGF0aWM7XHJcbiAgICAgICAgICAgICAgICAgICAgLmlwdEJ0bntcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IG1heC1jb250ZW50OyBtYXJnaW4tbGVmdDoxMHB4OyBwb3NpdGlvbjpzdGF0aWM7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuZGFzaHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOjE1cHg7IG1pbi13aWR0aDoxNXB4OyBwYWRkaW5nLWJvdHRvbToxMnB4OyBmb250LXNpemU6MS42cmVtOyBsaW5lLWhlaWdodDoxLjg3OyB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAucmVzZXRCdG4ge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTsgd2lkdGg6IDI3cHg7IGhlaWdodDogMjdweDsgYmFja2dyb3VuZDogdXJsKC4uLy4uL2ltYWdlcy9jb21tb24vaWNvX3Jlc2V0LnN2ZykgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7IFxyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlOyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogNTAlOyByaWdodDogMDsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuZGVzaWduU2VsZWN0e1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6MTAwJTsgaGVpZ2h0OjYwcHg7IHBhZGRpbmc6MCAyMHB4OyBmb250LXNpemU6MS42cmVtOyBsaW5lLWhlaWdodDo1OHB4OyBmb250LXdlaWdodDo0MDA7IGNvbG9yOiMwMDA7IHRleHQtYWxpZ246bGVmdDsgYm9yZGVyOjFweCBzb2xpZCAjYmViZWJlOyBcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6MTNweDsgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAmOjphZnRlcntcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OlwiXCI7IHdpZHRoOjE4cHg7IGhlaWdodDoxOHB4OyBiYWNrZ3JvdW5kOnVybCguLi8uLi9pbWFnZXMvY29tbW9uL2ljb19wcml2YWN5X2Rvd24uc3ZnKSBjZW50ZXIgbm8tcmVwZWF0OyBkaXNwbGF5OmJsb2NrOyBwb3NpdGlvbjphYnNvbHV0ZTsgcmlnaHQ6MjBweDsgdG9wOjIwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5oYWxmV3JhcCB7IC8v7JiB7Jet7J2EIOygiOuwmOycvOuhnCDspITsnoRcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDcuNXB4KTsgbWFyZ2luLXJpZ2h0OiAxMnB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7bWFyZ2luLXJpZ2h0OiAwO31cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuZnJtUmRvIHtcclxuICAgICAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7IGRpc3BsYXk6aW5saW5lLWJsb2NrOyB2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7XHJcbiAgICBcclxuICAgICAgICAgICAgaW5wdXQge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7IHRvcDowOyBsZWZ0OjA7IHdpZHRoOjEwMCU7IGhlaWdodDoxMDAlOyBib3JkZXI6MDsgYXBwZWFyYW5jZTpub25lOyAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IGN1cnNvcjpwb2ludGVyOyBwYWRkaW5nOjA7XHJcbiAgICBcclxuICAgICAgICAgICAgICAgICsgbGFiZWwge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOjEwMCU7IGhlaWdodDoxMDAlOyBtaW4taGVpZ2h0OjQ1cHg7IHBhZGRpbmc6IDlweCAxM3B4OyBmb250LXNpemU6MS40cmVtOyBmb250LXdlaWdodDo0MDA7IGNvbG9yOiM0NDQ7IHRleHQtYWxpZ246Y2VudGVyOyBsaW5lLWhlaWdodDoxLjU7IGJvcmRlcjoxcHggc29saWQgI2NjYzsgYm9yZGVyLXJhZGl1czoxMHB4OyBcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OmZsZXg7IGp1c3RpZnktY29udGVudDogY2VudGVyOyBhbGlnbi1pdGVtczogY2VudGVyOyBwb3NpdGlvbjpyZWxhdGl2ZTsgYm94LXNpemluZzpib3JkZXItYm94OyBjdXJzb3I6cG9pbnRlcjsgXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICBcclxuICAgICAgICAgICAgICAgICY6Y2hlY2tlZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgKyBsYWJlbCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjoycHggc29saWQgdmFyKC0ta2V5LWJsdWUwMSk7IGNvbG9yOnZhcigtLWtleS1ibHVlMDEpOyBmb250LXdlaWdodDo1MDA7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICBcclxuICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGUge21hcmdpbi1yaWdodDowO31cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICYubGcge1xyXG4gICAgICAgICAgICAgICAgaW5wdXQge1xyXG4gICAgICAgICAgICAgICAgICAgICsgbGFiZWwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OjZyZW07IHBhZGRpbmc6IDdweCAxM3B4OyBib3JkZXItcmFkaXVzOjEzcHg7IFxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gIOumrOyKpO2KuCDtj7wgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFxyXG4gICAgICAgIC8v7ZWc7KSE7Kec66asIOumrOyKpO2KuFxyXG4gICAgICAgIC5mcm1MaXN0e1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTsgbWFyZ2luLXRvcDogNDBweDtcclxuICAgICAgICAgICAgLmxpc3RHcm91cHtcclxuICAgICAgICAgICAgICAgID4gLml0ZW17XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcclxuICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxke21hcmdpbi10b3A6MDt9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgLy/rnbzrlJTsmKQg6re466O5IO2PvFxyXG4gICAgICAgIC5yYWRpb1dyYXB7XHJcbiAgICAgICAgICAgIHdpZHRoOjEwMCU7IGRpc3BsYXk6ZmxleDsgZ2FwOjEwcHg7IG1hcmdpbi10b3A6MTBweDtcclxuXHJcbiAgICAgICAgICAgICYgKyAuZnJtSXB0e1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDozMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5mcm1SZG97XHJcbiAgICAgICAgICAgICAgICB3aWR0aDoxMDAlOyBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYubXVsdGl7XHJcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5oYWxme1xyXG4gICAgICAgICAgICAgICAgLmZybVJkb3tcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDpjYWxjKDUwJSAtIDVweCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi50aGlyZHtcclxuICAgICAgICAgICAgICAgIC5mcm1SZG97XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6Y2FsYygzMyUgLSA3cHgpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZnJtQnRuR3JvdXAge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgICAgICAuYnRuQXJlYSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4OyBjb2x1bW4tZ2FwOiA1cHg7XHJcbiAgICAgICAgICAgICAgICAmLmxlZnQge2p1c3RpZnktY29udGVudDogZmxleC1zdGFydDt9XHJcbiAgICAgICAgICAgICAgICAub3B0aW9ue3dpZHRoOmNhbGMoMjAlIC0gNHB4KSAhaW1wb3J0YW50OyBwYWRkaW5nOjAgMTBweDt9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8qdmFsaWRhdGlvbiovXHJcbiAgICAgICAgLmVycm9yIHtcclxuICAgICAgICAgICAgaW5wdXRbdHlwZT0ndGV4dCddLFxyXG4gICAgICAgICAgICBpbnB1dFt0eXBlPSdwYXNzd29yZCddIHtib3JkZXItYm90dG9tOjJweCBzb2xpZCAjZmU1ZjVmOyBjb2xvcjojZmU1ZjVmO31cclxuICAgICAgICAgICAgaW5wdXRbdHlwZT0ncmFkaW8nXSArIGxhYmVsIHtib3JkZXI6MnB4IHNvbGlkICNmZTVmNWY7IGNvbG9yOiNmZTVmNWY7fVxyXG4gICAgICAgICAgICBpbnB1dFt0eXBlPSdjaGVja2JveCddICsgbGFiZWwgID4gKiB7Y29sb3I6I2ZlNWY1ZiAhaW1wb3J0YW50O31cclxuICAgICAgICAgICAgJi5mcm1Db21ibyB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6MXB4IHNvbGlkICNmZTVmNWY7XHJcblxyXG4gICAgICAgICAgICAgICAgYnV0dG9uIHtjb2xvcjojZmU1ZjVmO31cclxuICAgICAgICAgICAgICAgIC5kcnBkd0JveCB7Ym9yZGVyOjFweCBzb2xpZCAjZmU1ZjVmOyBib3JkZXItdG9wOjA7fVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC8vIC5kYXNoIHtiYWNrZ3JvdW5kOiNmZTVmNWYgIWltcG9ydGFudDt9XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAub3B0VGl0IHtjb2xvcjojZmU1ZjVmICFpbXBvcnRhbnQ7fVxyXG4gICAgICAgICAgICAuZGVzaWduU2VsZWN0IHtib3JkZXI6MnB4IHNvbGlkICNmZTVmNWY7fVxyXG4gICAgICAgICAgICAuZmxzVHh0IHtkaXNwbGF5OmJsb2NrO31cclxuICAgICAgICAgICAgLm1lYXMge2NvbG9yOiNmZTVmNWYgIWltcG9ydGFudDt9XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxufVxyXG5cclxuLnRvcEJhcntcclxuICAgIG1hcmdpbi10b3A6NDBweDsgcGFkZGluZy10b3A6NTBweDsgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICAmOjpiZWZvcmV7XHJcbiAgICAgICAgY29udGVudDpcIlwiOyB3aWR0aDoxMDB2dzsgaGVpZ2h0OjEwcHg7IGJhY2tncm91bmQ6I2YzZjNmMzsgZGlzcGxheTpibG9jazsgcG9zaXRpb246YWJzb2x1dGU7IGxlZnQ6MDsgdG9wOjA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIO2GoOyKpO2KuO2MneyXhSDrqZTsi5zsp4AgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi5jb21Nc2cge1xyXG4gICAgd2lkdGg6MTAwJTsgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgICAuc3RyTXNnIHtcclxuICAgICAgICBtYXJnaW4tdG9wOjEwcHg7IGZvbnQtc2l6ZToxLjZyZW07IGxpbmUtaGVpZ2h0OjEuNTsgZm9udC13ZWlnaHQ6NTAwOyBjb2xvcjojMDAwO1xyXG5cclxuICAgICAgICAmOmZpcnN0LWNoaWxke1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOjA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGJ7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuYmFzZU1zZyB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDoxMHB4OyBmb250LXNpemU6MS42cmVtOyBsaW5lLWhlaWdodDoxLjU7IGZvbnQtd2VpZ2h0OjQwMDsgY29sb3I6IzAwMDtcclxuXHJcbiAgICAgICAgJjpmaXJzdC1jaGlsZHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDowO1xyXG4gICAgICAgIH1cclxuICAgICAgICBie1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDo1MDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJiArIC5jb21CdG5Hcm91cHtcclxuICAgICAgICBtYXJnaW4tdG9wOjQwcHg7XHJcbiAgICB9XHJcbn1cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIOuMgOy2nOyLrOyCrO2YhO2ZqSA+IOqwgeyiheyEnOulmCDsoJzstpwgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi5jcHRTdWJtaXREb2N7XHJcbiAgICB3aWR0aDoxMDAlO1xyXG4gICAgLmRvY3VBcmVhe1xyXG4gICAgICAgIHdpZHRoOjEwMCU7IHBhZGRpbmc6MCAyMHB4O1xyXG5cclxuICAgICAgICAuY2FyZEJ0bkdyb3Vwe1xyXG4gICAgICAgICAgICAuY2FyZEdyb3Vwe1xyXG4gICAgICAgICAgICAgICAgLmNhcmRJdGVte1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOjEwMCU7IHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgID4gaW5wdXR7cG9zaXRpb246YWJzb2x1dGU7IGxlZnQ6MDsgdG9wOjA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6Y2hlY2tlZCArIC5jYXJke1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzoyOXB4OyBib3JkZXI6MnB4IHNvbGlkICNkMmYyZmY7IGJhY2tncm91bmQ6I2Y1ZmNmZjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAuY2FyZHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6MTAwJTsgcGFkZGluZzozMHB4OyBtYXJnaW4tdG9wOjEwcHg7IGJvcmRlcjoxcHggc29saWQgI2RjZGNkYzsgYm9yZGVyLXJhZGl1czoyNXB4OyBkaXNwbGF5OmJsb2NrO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgLnRpdHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToycmVtOyBmb250LXdlaWdodDo3MDA7IGNvbG9yOiMwMDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgLmluZm9Hcm91cHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6MTBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5pbmZve1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOjEwMCU7IGZvbnQtc2l6ZToxLjZyZW07IGZvbnQtd2VpZ2h0OjQwMDsgY29sb3I6IzQ0NDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBie2ZvbnQtd2VpZ2h0OjQwMDt9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXttYXJnaW4tbGVmdDo3cHg7IGZvbnQtc3R5bGU6bm9ybWFsO31cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuZmlsZUFyZWF7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6NDBweDsgcGFkZGluZy10b3A6NTBweDsgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICAgICAgICAgICY6OmJlZm9yZXtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6XCJcIjsgd2lkdGg6MTAwdnc7IGhlaWdodDoxMHB4OyBiYWNrZ3JvdW5kOiNmM2YzZjM7IGRpc3BsYXk6YmxvY2s7IHBvc2l0aW9uOmFic29sdXRlOyBsZWZ0Oi0yMHB4OyB0b3A6MDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuZmlsZUxpc3R7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4OyBkaXNwbGF5OiBmbGV4OyBmbGV4LXdyYXA6IHdyYXA7IGdhcDogN3B4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5pbWdXcmFwe1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwN3B4OyBoZWlnaHQ6IDEwN3B4OyBib3JkZXI6IDFweCBzb2xpZCAjZGNkY2RjOyBib3JkZXItcmFkaXVzOiAxNXB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IHRleHQtYWxpZ246IGNlbnRlcjsgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICAgICAgICAgICAgICBpbWd7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiA4cHggc29saWQgI2ZmZjsgb3ZlcmZsb3c6IGhpZGRlbjsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgb2JqZWN0LWZpdDogY292ZXI7IGJvcmRlci1yYWRpdXM6IDE1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgJi5ub0ZpbGUge2JvcmRlcjpub25lO31cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5idG5SZW1vdmV7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7IGhlaWdodDogMjBweDsgZm9udC1zaXplOiAwOyBiYWNrZ3JvdW5kOiB1cmwoLi4vLi4vaW1hZ2VzL2NvbW1vbi9pY29fcmVzZXRfY2lyY2xlLnN2ZykgY2VudGVyIG5vLXJlcGVhdDsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDEwcHg7IHJpZ2h0OiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSDtjJ3sl4Ug7J2867CYIO2FjeyKpO2KuCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLmNvbUNsYXVzZXtcclxuICAgIC5iYXNpY1R4dHtcclxuICAgICAgICBmb250LXNpemU6MS40cmVtOyBmb250LXdlaWdodDo0MDA7IGNvbG9yOiMwMDA7XHJcbiAgICB9XHJcbn1cclxuIiwiXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIOqzte2GtSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG4uaGlkZGVuIHt3aWR0aDoxcHg7aGVpZ2h0OjFweDtvdmVyZmxvdzpoaWRkZW47Ym9yZGVyOjA7Y2xpcDpyZWN0KDFweCwxcHgsMXB4LDFweCk7Y2xpcC1wYXRoOmluc2V0KDUwJSk7ZGlzcGxheTppbmxpbmUtYmxvY2s7cG9zaXRpb246YWJzb2x1dGU7fVxyXG4ubXQxMCB7bWFyZ2luLXRvcDoxMHB4O31cclxuLm10MjAge21hcmdpbi10b3A6MjBweDt9XHJcbi8qIOuyhO2KvCAqL1xyXG4uYnRuIHtcclxuICAgIHBhZGRpbmc6IDAgMjBweDsgdGV4dC1hbGlnbjogY2VudGVyOyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHRyYW5zaXRpb246IGFsbCAwLjNzOyB3aWR0aDoxMDAlICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgLy8g7Jqp64+EXHJcbiAgICAvKiYuZmxvdyB7aGVpZ2h0OiA4LjVyZW07IHBhZGRpbmc6IDAgNjBweDsgYm9yZGVyLXJhZGl1czogMS41cmVtOyBsaW5lLWhlaWdodDogOC4zcmVtOyBmb250LXNpemU6IDIuNHJlbTsgZm9udC13ZWlnaHQ6IDUwMDt9Ki9cclxuICAgICYuZmxvdyB7bWluLWhlaWdodDogN3JlbTsgcGFkZGluZzogMjBweCAzMHB4OyBib3JkZXItcmFkaXVzOiAxNXB4OyBsaW5lLWhlaWdodDogMS41OyBmb250LXNpemU6IDEuOHJlbTsgZm9udC13ZWlnaHQ6IDUwMDt9XHJcbiAgICAmLmNydWQge2hlaWdodDogNXJlbTsgcGFkZGluZzogMCAyMHB4OyBib3JkZXItcmFkaXVzOiAxcmVtOyBsaW5lLWhlaWdodDogNC44cmVtOyBmb250LXNpemU6IDEuNnJlbTt9XHJcbiAgICAvLyYub3B0aW9uIHtoZWlnaHQ6IDQuNXJlbTsgYm9yZGVyLXJhZGl1czogMTBweDsgZm9udC1zaXplOiAxNHB4OyBmb250LXdlaWdodDogNTAwO31cclxuICAgICYub3B0aW9uIHtoZWlnaHQ6IDRyZW07IGJvcmRlci1yYWRpdXM6IDEwcHg7IGZvbnQtc2l6ZTogMS4ycmVtOyBmb250LXdlaWdodDogNTAwO31cclxuICAgICYubWFwIHtoZWlnaHQ6IDVyZW07IHBhZGRpbmc6IDAgMjBweDsgYm9yZGVyLXJhZGl1czogMjVweDsgbGluZS1oZWlnaHQ6IDQ4cHg7IHRleHQtYWxpZ246IGxlZnQ7IGZvbnQtc2l6ZTogMTZweDsgZm9udC13ZWlnaHQ6IDUwMDsgY29sb3I6ICNmZmY7IGJhY2tncm91bmQ6ICMwMGMzMDAgdXJsKFwiLi4vLi4vaW1hZ2VzL2NvbW1vbi9pY29uX21hcF93LnN2Z1wiKSBjYWxjKDEwMCUgLSAyMHB4KSBjZW50ZXIgbm8tcmVwZWF0O31cclxuICAgICYucHJpbnQge2hlaWdodDogNXJlbTsgcGFkZGluZzogMCAyMHB4OyBib3JkZXItcmFkaXVzOiAyNXB4OyBib3JkZXI6IDFweCBzb2xpZCAjNzA3MDcwOyBsaW5lLWhlaWdodDogNDhweDsgdGV4dC1hbGlnbjogbGVmdDsgZm9udC1zaXplOiAxNnB4OyBmb250LXdlaWdodDogNTAwOyBjb2xvcjogIzAwMDsgYmFja2dyb3VuZDogI2ZmZiB1cmwoXCIuLi8uLi9pbWFnZXMvY29tbW9uL2ljb25fcHJpbnRfay5zdmdcIikgY2FsYygxMDAlIC0gMjBweCkgY2VudGVyIG5vLXJlcGVhdDt9XHJcbiAgICAmLmFjdGluZyB7aGVpZ2h0OiA2LjVyZW07IGJvcmRlci1yYWRpdXM6IDEwcHg7IGZvbnQtc2l6ZTogMTZweDsgZm9udC13ZWlnaHQ6IDUwMDt9XHJcbiAgICAmLmRvd25sb2FkIHtcclxuICAgICAgICAmOjphZnRlciB7ZGlzcGxheTogaW5saW5lLWJsb2NrOyBjb250ZW50OiBcIlwiOyB3aWR0aDogMjhweDsgaGVpZ2h0OiAyOHB4OyBtYXJnaW4tbGVmdDogNXB4OyBiYWNrZ3JvdW5kOiB1cmwoLi4vLi4vaW1hZ2VzL2NvbW1vbi9pY29fZG93bmxvYWRfdy5zdmcpIGNlbnRlciBuby1yZXBlYXQ7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7fVxyXG4gICAgfVxyXG4gICAgJi50YWJsZSB7XHJcbiAgICAgICAgbWluLWhlaWdodDo1MHB4OyBwYWRkaW5nOjE0cHg7IGZvbnQtc2l6ZToxLjRyZW07IGZvbnQtd2VpZ2h0OjUwMDsgbGluZS1oZWlnaHQ6MS41OyBib3JkZXItcmFkaXVzOjdweDtcclxuICAgICAgICAuZG93blR4dCB7bWluLWhlaWdodDoyNHB4OyBwYWRkaW5nLXJpZ2h0OjI5cHg7IGJhY2tncm91bmQ6I2ZmZiB1cmwoLi4vLi4vaW1hZ2VzL2NvbW1vbi9pY29uX2J0bl9kb3dubG9hZC5zdmcpIHJpZ2h0IGNlbnRlciBuby1yZXBlYXQ7fVxyXG4gICAgfVxyXG4gICAgJi5zaG9vdGluZ3tcclxuICAgICAgICBtaW4taGVpZ2h0OjUwcHg7IHBhZGRpbmc6MTRweDsgZm9udC1zaXplOjEuNHJlbTsgZm9udC13ZWlnaHQ6NTAwOyBsaW5lLWhlaWdodDoxLjU7IGJvcmRlci1yYWRpdXM6MTBweDtcclxuICAgIH1cclxuXHJcbiAgICAvLyDsu6zrn6xcclxuICAgICYuZ3JleSB7Ym9yZGVyOiAxcHggc29saWQgI2NjYzsgYmFja2dyb3VuZDogI2NjYzsgY29sb3I6ICNmZmY7fVxyXG4gICAgJi5ibGFjayB7Ym9yZGVyOiAxcHggc29saWQgIzk2OTQ5NDsgYmFja2dyb3VuZDogIzQ0NDsgY29sb3I6ICNmZmY7fVxyXG4gICAgJi5ibHVlIHtib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1rZXktYmx1ZTAxKTsgYmFja2dyb3VuZDogdmFyKC0ta2V5LWJsdWUwMSk7IGNvbG9yOiAjZmZmO31cclxuICAgICYubGluZS1iIHtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWtleS1ibHVlMDEpOyBiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7IGNvbG9yOnZhcigtLWtleS1ibHVlMDEpOyB9XHJcbiAgICAmLmxpbmUtZyB7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NjYzsgYmFja2dyb3VuZDogI2ZmZjsgY29sb3I6ICMwMDA7XHJcbiAgICAgICAgJi5vcHRpb24sICYuYWN0aW5nIHtjb2xvcjojMDAwO31cclxuICAgICAgICAmOmRpc2FibGVke2JhY2tncm91bmQ6ICNmM2YzZjM7IGNvbG9yOiAjY2NjO31cclxuICAgICAgICAvLyYub3B0aW9uLCAmLmFjdGluZyB7Y29sb3I6IzQ0NDt9XHJcbiAgICB9XHJcblxyXG4gICAgLy8g7J2067Kk7Yq4XHJcbiAgICAmLm92ZXJLOmhvdmVyIHtib3JkZXI6IDJweCBzb2xpZCAjNDQ0O31cclxufVxyXG5cclxuLy/rsoTtirwg6re466O5XHJcbi5jb21CdG5Hcm91cHtcclxuICAgIHdpZHRoOiAxMDAlOyBtYXJnaW4tdG9wOjQwcHg7XHJcbiAgICAmOmZpcnN0LWNoaWxkIHttYXJnaW4tdG9wOjA7fVxyXG4gICAgLmJ0bkFyZWEge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7IGp1c3RpZnktY29udGVudDogY2VudGVyOyBhbGlnbi1pdGVtczogY2VudGVyOyBjb2x1bW4tZ2FwOiAxMHB4O1xyXG4gICAgICAgICYgKyAuYnRuQXJlYXttYXJnaW4tdG9wOjEwcHg7fVxyXG4gICAgfVxyXG4gICAgLmJmSW5mbyB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgZm9udC1zaXplOiAxLjRyZW07IGNvbG9yOiAjNjY2OyB0ZXh0LWFsaWduOiBjZW50ZXI7IHdvcmQtYnJlYWs6IGtlZXAtYWxsO1xyXG4gICAgICAgIC5ibHVlIHtmb250LXdlaWdodDogNTAwOyBjb2xvcjogdmFyKC0ta2V5LWJsdWUwMSk7fVxyXG4gICAgfVxyXG59XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSDqsJzrs4Qg7Luo7YWQ7LigIOyGjO2DgOydtO2LgCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG4uY29tQ29udFRpdCB7XHJcbiAgICAvL3dpZHRoOiAxMDAlOyBtYXJnaW4tYm90dG9tOiA0cmVtOyBkaXNwbGF5OiBmbGV4OyBmbGV4LXdyYXA6IHdyYXA7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xyXG4gICAgd2lkdGg6IDEwMCU7IG1hcmdpbi10b3A6NDBweDsgZGlzcGxheTogZmxleDsgZmxleC13cmFwOiB3cmFwOyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcclxuICAgICY6Zmlyc3QtY2hpbGQge21hcmdpbi10b3A6MDt9XHJcbiAgICAuY29udFRpdCB7d2lkdGg6IDEwMCU7IGZvbnQtc2l6ZTogMS44cmVtOyBmb250LXdlaWdodDogNzAwOyBjb2xvcjogIzAwMDt3b3JkLWJyZWFrOmtlZXAtYWxsO31cclxuICAgIC5jb250VHh0IHtcclxuICAgICAgICAuYmFzZVR4dCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZToxLjRyZW07IGZvbnQtd2VpZ2h0OjQwMDsgY29sb3I6IzAwMDsgZGlzcGxheTpibG9jaztcclxuICAgICAgICB9XHJcbiAgICAgICAgLm1vcmVQb3Age1xyXG4gICAgICAgICAgICB3aWR0aDptYXgtY29udGVudDsgcGFkZGluZy1yaWdodDoyMXB4OyBtYXJnaW4tdG9wOjdweDsgZm9udC1zaXplOjEuNHJlbTsgZm9udC13ZWlnaHQ6NzAwOyBjb2xvcjp2YXIoLS1rZXktYmx1ZTAxKTsgYmFja2dyb3VuZDp1cmwoLi4vLi4vaW1hZ2VzL2NvbW1vbi9pY29fbW9yZS5zdmcpIHJpZ2h0IGNhbGMoNTAlIC0gMXB4KSBuby1yZXBlYXQ7IGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN1YkRlc2Mge3dpZHRoOiAxMDAlOyBmb250LXNpemU6IDEuNHJlbTsgY29sb3I6ICM5OTk7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgd29yZC1icmVhazprZWVwLWFsbDt9XHJcbiAgICAuaW5mb3JtYXRpb24ge21hcmdpbjoxMHB4IDA7IGNvbG9yOnZhcigtLWtleS1ibHVlMDEpOyBmb250LXdlaWdodDpib2xkO31cclxuICAgIC5zdWJMaXN0IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgIC5saXN0SXRlbSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IHBhZGRpbmctbGVmdDogMTBweDsgZm9udC1zaXplOiAxLjRyZW07IGNvbG9yOiAjMDAwO3Bvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgJjo6YWZ0ZXIge2Rpc3BsYXk6IGJsb2NrOyBjb250ZW50OiBcIlwiOyB3aWR0aDogNHB4OyBoZWlnaHQ6IDRweDsgYm9yZGVyLXJhZGl1czogNTAlOyBiYWNrZ3JvdW5kOiAjNjY2OyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDo4cHg7IGxlZnQ6IDA7fVxyXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge21hcmdpbi1ib3R0b206IDA7fVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYuc217XHJcbiAgICAgICAgLmNvbnRUaXQge2ZvbnQtc2l6ZToxLjZyZW07IGZvbnQtd2VpZ2h0OjUwMDt9XHJcbiAgICAgICAgLnN1YkRlc2Mge2ZvbnQtc2l6ZToxLjRyZW07fVxyXG4gICAgfVxyXG4gICAgJi5jZW50ZXJ7XHJcbiAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgICB9XHJcbiAgICAvLyAubW9yZVBvcCB7bWFyZ2luLXRvcDogMTBweDsgY29sb3I6IHZhcigtLWtleS1ibHVlMDEpOyBmb250LXNpemU6IDE2cHg7IGZvbnQtd2VpZ2h0OiA1MDA7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB0ZXh0LXVuZGVybGluZS1wb3NpdGlvbjogYm90dG9tO31cclxuICAgIC8vIC5zdWJMaXN0IHtcclxuICAgIC8vICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgLy8gICAgIC5saXN0SXRlbSB7XHJcbiAgICAvLyAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IHBhZGRpbmctbGVmdDogMTVweDsgZm9udC1zaXplOiAxOHB4OyBjb2xvcjogIzQ0NDtwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAvLyAgICAgICAgICY6OmFmdGVyIHtkaXNwbGF5OiBibG9jazsgY29udGVudDogXCJcIjsgd2lkdGg6IDVweDsgaGVpZ2h0OiA1cHg7IGJvcmRlci1yYWRpdXM6IDUwJTsgYmFja2dyb3VuZDogIzY2NjsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6MTBweDsgbGVmdDogMDt9XHJcbiAgICAvLyAgICAgICAgICY6bGFzdC1jaGlsZCB7bWFyZ2luLWJvdHRvbTogMDt9XHJcbiAgICAvLyAgICAgfVxyXG4gICAgLy8gfVxyXG4gICAgLy8gLnJpZ2h0U2lkZSB7XHJcbiAgICAvLyAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAvLyAgICAgaSB7XHJcbiAgICAvLyAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4OyBmb250LXN0eWxlOiBub3JtYWw7IGZvbnQtc2l6ZTogMTRweDsgY29sb3I6ICMwMDA7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIC8vICAgICAgICAgJjpsYXN0LWNoaWxkIHttYXJnaW4tcmlnaHQ6IDA7fVxyXG4gICAgLy8gICAgIH1cclxuICAgIC8vICAgICBpbWcge21hcmdpbjogMCA1cHg7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgdmVydGljYWwtYWxpZ246IG1pZGRsZTt9XHJcbiAgICAvLyB9XHJcbiAgICAvLyYgKyAuY29tVGFibGV7bWFyZ2luLXRvcDotMjBweDt9XHJcbiAgICAvLyYgKyAuY29tQWNjb3JUYWJsZXttYXJnaW4tdG9wOi0yMHB4O31cclxuICAgICYgKyAuY29tQnRuR3JvdXB7bWFyZ2luLXRvcDozMHB4O31cclxufVxyXG5cclxuLy8gRm9ybSBDb21tb25cclxuLy8g7L2k67O067CV7IqkIOqzte2GtVxyXG4uZnJtQ29tYm8ge1xyXG4gICAgcG9zaXRpb246cmVsYXRpdmU7IHdpZHRoOjEwMCU7IHBhZGRpbmc6MCAyMHB4OyBtYXgtd2lkdGg6NDE4cHg7LyrqsIDroZzquLjsnbQg7LaU7ZuEIOusuOydmCDtlYTsmpQqLyBib3JkZXI6MXB4IHNvbGlkICNjY2M7IGJvcmRlci1yYWRpdXM6MTBweDsgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHJcbiAgICAmLm9uIHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOjEwcHggMTBweCAwIDA7XHJcbiAgICB9XHJcbiAgICAmICsgaW5wdXQge21hcmdpbi10b3A6IDIwcHg7fVxyXG5cclxuICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7IHdpZHRoOjEwMCU7IGhlaWdodDo2NHB4OyBmb250LXNpemU6MTZweDsgY29sb3I6IzQ0NDsgZm9udC13ZWlnaHQ6NTAwOyBsaW5lLWhlaWdodDo2NHB4OyBsZXR0ZXItc3BhY2luZzotMC40cHg7IHRleHQtYWxpZ246bGVmdDtcclxuXHJcbiAgICAgICAgLmFycncge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTsgd2lkdGg6MTRweDsgaGVpZ2h0OjhweDsgdG9wOjUwJTsgcmlnaHQ6MDsgYmFja2dyb3VuZDp1cmwoXCIuLi8uLi9pbWFnZXMvY29tbW9uL2ljb19kcm9wZG93bi5wbmdcIikgdG9wIDUwJSByaWdodCAwIG5vLXJlcGVhdDsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyBib3gtc2l6aW5nOmJvcmRlci1ib3g7IHRyYW5zaXRpb246YWxsIDAuNHM7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLm9uIHtcclxuICAgICAgICAgICAgLmFycncge3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgxODBkZWcpO31cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5iYW5rTG9nb0NvdiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6ZmxleDsgZmxleC1mbG93OiByb3cgbm93cmFwOyBhbGlnbi1pdGVtczogY2VudGVyOyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgIGltZyB7ZGlzcGxheTppbmxpbmUtYmxvY2s7IG1hcmdpbi1yaWdodDoxMHB4O31cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmRycGR3Qm94IHtcclxuICAgICAgICBkaXNwbGF5Om5vbmU7IHBvc2l0aW9uOmFic29sdXRlOyB0b3A6NjRweDsgbGVmdDotMXB4OyB3aWR0aDpjYWxjKDEwMCUgKyAycHgpOyBiYWNrZ3JvdW5kOiNmZmY7IGJvcmRlcjoxcHggc29saWQgI2NjYzsgYm9yZGVyLXRvcDowOyBib3JkZXItcmFkaXVzOjAgMCAxMHB4IDEwcHg7IHotaW5kZXg6OTk7XHJcblxyXG4gICAgICAgIC5pbm5lckNvdmVyIHtcclxuICAgICAgICAgICAgd2lkdGg6Y2FsYygxMDAlIC0gNDBweCk7IG1hcmdpbjowIGF1dG87IGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2NjOyBwYWRkaW5nOjIwcHggMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmlubmVyQm94IHtcclxuICAgICAgICAgICAgaGVpZ2h0OjQwMHB4OyBvdmVyZmxvdy15OnNjcm9sbDtcclxuXHJcbiAgICAgICAgICAgIHVsIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6MTAwJTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7IGJhY2tncm91bmQ6I2ZmZjsgd2lkdGg6MTAwJTsgaGVpZ2h0OjQwcHg7IGZvbnQtc2l6ZToxNnB4OyBjb2xvcjojNDQ0OyBmb250LXdlaWdodDo0MDA7IGxpbmUtaGVpZ2h0OjQwcHg7IGxldHRlci1zcGFjaW5nOi0wLjRweDsgcGFkZGluZy1sZWZ0OjEwcHg7IGJvcmRlci1yYWRpdXM6NXB4OyB0cmFuc2l0aW9uOmFsbCAwLjRzO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiNmMmY5ZmY7IGNvbG9yOnZhcigtLWtleS1ibHVlMDEpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDojZjJmOWZmOyBjb2xvcjp2YXIoLS1rZXktYmx1ZTAxKTsgZm9udC13ZWlnaHQ6NTAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKuydvOuwmCDrnbzrlJTsmKQg6rO17Ya1Ki9cclxuLmZybVJhZGlve1xyXG4gICAgZGlzcGxheTpmbGV4OyBmbGV4LWZsb3c6IHJvdyBub3dyYXA7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGdhcDozMHB4O1xyXG5cclxuICAgIGxhYmVsIHtcclxuICAgICAgICBmb250LXNpemU6IDEuNHJlbTsgZGlzcGxheTpmbGV4OyBmbGV4LWZsb3c6IHJvdyBub3dyYXA7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgY3Vyc29yOnBvaW50ZXI7XHJcbiAgICB9XHJcbiAgICAgIFxyXG4gICAgW3R5cGU9XCJyYWRpb1wiXSwgc3BhbiB7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIH1cclxuICAgICAgXHJcbiAgICBbdHlwZT1cInJhZGlvXCJdIHsgXHJcbiAgICAgICAgYXBwZWFyYW5jZTogbm9uZTsgYm9yZGVyOiAxcHggc29saWQgI2RjZGNkYzsgYm9yZGVyLXJhZGl1czogNTAlOyB3aWR0aDozMHB4OyBoZWlnaHQ6MzBweDsgZm9udC1zaXplOjI0cHg7IG9wYWNpdHk6MTsgbWFyZ2luLXJpZ2h0OjEwcHg7IGN1cnNvcjpwb2ludGVyO1xyXG4gICAgfVxyXG5cclxuICAgIFt0eXBlPVwicmFkaW9cIl0gKyBwIHsgXHJcbiAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IHdpZHRoOm1heC1jb250ZW50OyBsaW5lLWhlaWdodDozMHB4O1xyXG4gICAgfVxyXG4gICAgICBcclxuICAgIFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCB7XHJcbiAgICAgICAgYm9yZGVyOiA5cHggc29saWQgdmFyKC0ta2V5LWJsdWUwMSk7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIFt0eXBlPVwicmFkaW9cIl06ZGlzYWJsZWQge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0Z3JheTsgYm94LXNoYWRvdzogbm9uZTsgb3BhY2l0eTogMTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgW3R5cGU9XCJyYWRpb1wiXTpkaXNhYmxlZCArIHAge1xyXG4gICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IG9wYWNpdHk6LjQ7XHJcbiAgICB9XHJcbn1cclxuLyogMjAyNDA0MTEg7Zi57IucIOuqqOulvCDrsLHsl4VcclxuLmZybVJhZGlve1xyXG4gICAgZGlzcGxheTpmbGV4OyBmbGV4LWZsb3c6IHJvdyBub3dyYXA7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGp1c3RpZnktY29udGVudDogY2VudGVyOyBnYXA6NDBweDtcclxuXHJcbiAgICBsYWJlbCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxOHB4OyBkaXNwbGF5OmZsZXg7IGZsZXgtZmxvdzogcm93IG5vd3JhcDsgYWxpZ24taXRlbXM6IGNlbnRlcjsganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyBjdXJzb3I6cG9pbnRlcjtcclxuICAgIH1cclxuICAgICAgXHJcbiAgICBbdHlwZT1cInJhZGlvXCJdLCBzcGFuIHtcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgfVxyXG4gICAgICBcclxuICAgIFt0eXBlPVwicmFkaW9cIl0geyBcclxuICAgICAgICBhcHBlYXJhbmNlOiBub25lOyBib3JkZXI6IDFweCBzb2xpZCAjZGNkY2RjOyBib3JkZXItcmFkaXVzOiA1MCU7IHdpZHRoOjMwcHg7IGhlaWdodDozMHB4OyBmb250LXNpemU6MjRweDsgb3BhY2l0eToxOyBtYXJnaW4tcmlnaHQ6MTBweDsgY3Vyc29yOnBvaW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgW3R5cGU9XCJyYWRpb1wiXSArIHAgeyBcclxuICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jazsgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgd2lkdGg6bWF4LWNvbnRlbnQ7IGxpbmUtaGVpZ2h0OjMwcHg7XHJcbiAgICB9XHJcbiAgICAgIFxyXG4gICAgW3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkIHtcclxuICAgICAgICBib3JkZXI6IDlweCBzb2xpZCB2YXIoLS1rZXktYmx1ZTAxKTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgW3R5cGU9XCJyYWRpb1wiXTpkaXNhYmxlZCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRncmF5OyBib3gtc2hhZG93OiBub25lOyBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBbdHlwZT1cInJhZGlvXCJdOmRpc2FibGVkICsgcCB7XHJcbiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgb3BhY2l0eTouNDtcclxuICAgIH1cclxufVxyXG4qL1xyXG5cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0g7Y+8IOqwgOydtOuTnCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi5jcHRGb3JtIHtcclxuICAgIC8qY2hlY2tib3gqL1xyXG4gICAgLml0ZW0ge1xyXG4gICAgICAgIC8vbWFyZ2luLWJvdHRvbTo0cmVtO1xyXG4gICAgfVxyXG5cclxuICAgICY6Zmlyc3QtY2hpbGQge21hcmdpbi10b3A6IDA7fVxyXG4gICAgJiArICYge21hcmdpbi10b3A6IDEyMHB4O31cclxuICAgIC5kZXNjIHsgZGlzcGxheTppbmxpbmUtYmxvY2s7IHdpZHRoOm1heC1jb250ZW50OyBtYXJnaW4tdG9wOiAxMHB4OyBmb250LXNpemU6IDE0cHg7IGNvbG9yOiB2YXIoLS1rZXktYmx1ZTAxKTt9XHJcbiAgICAuZmxzVHh0IHsgXHJcbiAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7IHBhZGRpbmctbGVmdDogMjBweDsgZGlzcGxheTppbmxpbmUtYmxvY2s7IHdpZHRoOm1heC1jb250ZW50OyBtYXJnaW4tdG9wOiAxMHB4OyBmb250LXNpemU6IDE0cHg7IGNvbG9yOiAjZmU1ZjVmOyBtYXJnaW4tcmlnaHQ6MTBweDtcclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb250ZW50OiAnISc7IHBvc2l0aW9uOmFic29sdXRlOyB0b3A6NTAlOyBsZWZ0OjA7IHRyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpOyB3aWR0aDoxNnB4OyBoZWlnaHQ6MTZweDsgYmFja2dyb3VuZDojZmU1ZjVmOyBib3JkZXItcmFkaXVzOjUwJTsgY29sb3I6I2ZmZjsgZm9udC1zaXplOjEycHg7IGZvbnQtd2VpZ2h0OmJvbGQ7IHRleHQtYWxpZ246Y2VudGVyOyBsaW5lLWhlaWdodDoxNnB4OyBwYWRkaW5nLXJpZ2h0OjFweDtcclxuICAgICAgICB9XHJcbiAgICB9ICAgXHJcbiAgICAuZnJtQ2hlY2sge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgbWluLWhlaWdodDogM3JlbTtcclxuXHJcbiAgICAgICAgYnV0dG9uIHtcclxuICAgICAgICAgICAgd2lkdGg6NTBweDsgaGVpZ2h0OjE4cHg7IHBvc2l0aW9uOmFic29sdXRlOyB0b3A6NTAlOyByaWdodDowOyBiYWNrZ3JvdW5kOiB1cmwoXCIuLi8uLi9pbWFnZXMvY29tbW9uL3J5dF9hcnJvdy5zdmdcIikgdG9wIDUwJSByaWdodCAwIG5vLXJlcGVhdDsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5zdGFuZGFsb25lIHtcclxuICAgICAgICAgICAgaW5wdXQge1xyXG4gICAgICAgICAgICAgICAgKyBsYWJlbCB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7IHdpZHRoOiAzMHB4OyBoZWlnaHQ6IDMwcHg7IHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaW5wdXQge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogMDsgbGVmdDogMDsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgYm9yZGVyOiBub25lOyBhcHBlYXJhbmNlOiBub25lOyAtbW96LWFwcGVhcmFuY2U6IG5vbmU7IC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICAgICAgICAgICAgKyBsYWJlbCB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IHBhZGRpbmctbGVmdDogNDJweDsgZm9udC1zaXplOiAxNnB4OyBjdXJzb3I6cG9pbnRlcjtcclxuXHJcbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjsgZGlzcGxheTogYmxvY2s7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiA1MCU7IGxlZnQ6IDA7IHdpZHRoOiAzMHB4OyBoZWlnaHQ6IDMwcHg7IGJhY2tncm91bmQ6IHVybChcIi4uLy4uL2ltYWdlcy9jb21tb24vY2hlY2tfb2ZmLnN2Z1wiKSBuby1yZXBlYXQgY2VudGVyICNkY2RjZGM7IGJhY2tncm91bmQtc2l6ZTogMTRweCAxMHB4OyBib3JkZXI6IDFweCBzb2xpZCAjZGNkY2RjOyBib3JkZXItcmFkaXVzOiA0cHg7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICA+IHNwYW46bm90KC5oaWRkZW4pIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6MTZweDsgY29sb3I6IzQ0NDsgbGluZS1oZWlnaHQ6MzJweDsgbGV0dGVyLXNwYWNpbmc6LTAuNHB4OyBmb250LXdlaWdodDo1MDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgPiBzcGFuLmhnbHQge2NvbG9yOnZhcigtLWtleS1ibHVlMDEpO31cclxuXHJcbiAgICAgICAgICAgICAgICAvKjIwMjQuMDUuMjcg7LaU6rCAKi9cclxuICAgICAgICAgICAgICAgIHNwYW4uZmxhZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7IHZlcnRpY2FsLWFsaWduOm1pZGRsZTsgZm9udC1zaXplOjEycHggIWltcG9ydGFudDsgY29sb3I6I2ZmZiAhaW1wb3J0YW50OyBmb250LXdlaWdodDo1MDAgIWltcG9ydGFudDsgbGluZS1oZWlnaHQ6MSAhaW1wb3J0YW50OyB0ZXh0LWFsaWduOkNlbnRlcjsgcGFkZGluZzo2cHggMTBweDsgbWFyZ2luLWxlZnQ6NXB4OyBib3JkZXItcmFkaXVzOjE1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgJi50eXBlMDEge2JhY2tncm91bmQ6IzAwYjdmYn1cclxuICAgICAgICAgICAgICAgICAgICAmLnR5cGUwMiB7YmFja2dyb3VuZDojMDFkMTg2fVxyXG4gICAgICAgICAgICAgICAgICAgICYudHlwZTAzIHtiYWNrZ3JvdW5kOiNmZGMwMDB9XHJcbiAgICAgICAgICAgICAgICAgICAgJi50eXBlMDQge2JhY2tncm91bmQ6I2ZjOTQ0OH1cclxuICAgICAgICAgICAgICAgICAgICAmLnR5cGUwNSB7YmFja2dyb3VuZDojZmU1ZjVmfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgIC8qIOyytO2BrCAqL1xyXG4gICAgICAgIGlucHV0OmNoZWNrZWQ6bm90KDpkaXNhYmxlZCl7XHJcbiAgICAgICAgICAgICsgbGFiZWw6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uLy4uL2ltYWdlcy9jb21tb24vY2hlY2tfb2ZmLnN2Z1wiKSBuby1yZXBlYXQgY2VudGVyIHZhcigtLWtleS1ibHVlMDEpOyBiYWNrZ3JvdW5kLXNpemU6IDE0cHggMTBweDsgYm9yZGVyLWNvbG9yOiB2YXIoLS1rZXktYmx1ZTAxKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICAvKiDssrTtgawgZGlzYWJsZWQgKi9cclxuICAgICAgICBpbnB1dDpjaGVja2VkOmRpc2FibGVkIHtcclxuICAgICAgICAgICAgKyBsYWJlbDo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vLi4vaW1hZ2VzL2NvbW1vbi9jaGVja19vZmYuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIgI2RjZGNkYzsgYmFja2dyb3VuZC1zaXplOiAxNHB4IDEwcHg7XHJcbiAgICAgICAgICAgIH0gICBcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8qIGRpc2FibGVkICovXHJcbiAgICAgICAgaW5wdXQ6ZGlzYWJsZWQge1xyXG4gICAgICAgICAgICArIGxhYmVsOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi8uLi9pbWFnZXMvY29tbW9uL2NoZWNrX29mZi5zdmdcIikgbm8tcmVwZWF0IGNlbnRlciAjZGNkY2RjOyBiYWNrZ3JvdW5kLXNpemU6IDE0cHggMTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLyptaW5pIGNoZWNrYm94Ki9cclxuICAgICAgICAmLm1pbmlDaGsge1xyXG4gICAgICAgICAgICBkaXNwbGF5OmZsZXg7IGZsZXgtZmxvdzogcm93IG5vd3JhcDsgYWxpZ24taXRlbXM6IGNlbnRlcjsganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyBjb2x1bW4tZ2FwOjIwcHg7XHJcbiAgICAgICAgICAgID4gc3Bhbi5jaGtEaXYge3Bvc2l0aW9uOnJlbGF0aXZlO31cclxuICAgICAgICAgICAgaW5wdXQge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IGxlZnQ6IDA7IHdpZHRoOiAxcHg7IGhlaWdodDogMXB4OyBib3JkZXI6IG5vbmU7IGFwcGVhcmFuY2U6IG5vbmU7IC1tb3otYXBwZWFyYW5jZTogbm9uZTsgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBcclxuICAgICAgICAgICAgICAgICsgbGFiZWwge1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgcGFkZGluZy1sZWZ0OiAyNnB4OyBtYXJnaW4tcmlnaHQ6IDMwcHg7IGZvbnQtc2l6ZTogMTZweDsgY3Vyc29yOnBvaW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHttYXJnaW4tcmlnaHQ6IDA7fVxyXG4gICAgXHJcbiAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiOyBkaXNwbGF5OiBibG9jazsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDUwJTsgbGVmdDogMDsgd2lkdGg6IDE2cHg7IGhlaWdodDogMjRweDsgYmFja2dyb3VuZDogdXJsKFwiLi4vLi4vaW1hZ2VzL2NvbW1vbi9jaGVja19vZmYuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXI7IGJhY2tncm91bmQtc2l6ZTogMTZweCAxMnB4OyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IGJveC1zaXppbmc6IGJvcmRlci1ib3g7IGJvcmRlcjowO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgIFxyXG4gICAgICAgICAgICAgICAgICAgID4gc3Bhbjpub3QoLmhpZGRlbikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6MTZweDsgY29sb3I6IzQ0NDsgbGluZS1oZWlnaHQ6MjRweDsgbGV0dGVyLXNwYWNpbmc6LTAuNHB4OyBmb250LXdlaWdodDo1MDA7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgXHJcbiAgICAgICAgICAgICAgICAgICAgPiBzcGFuLmhnbHQge2NvbG9yOnZhcigtLWtleS1ibHVlMDEpO31cclxuICAgIFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAvKiDssrTtgawgKi9cclxuICAgICAgICAgICAgaW5wdXQ6Y2hlY2tlZDpub3QoOmRpc2FibGVkKXtcclxuICAgICAgICAgICAgICAgICsgbGFiZWw6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi8uLi9pbWFnZXMvY29tbW9uL2ljb19jaGVja19vbi5zdmdcIikgbm8tcmVwZWF0IGNlbnRlcjsgYmFja2dyb3VuZC1zaXplOiAxNnB4IDEycHg7IGJvcmRlcjowO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAvKiDssrTtgawgZGlzYWJsZWQgKi9cclxuICAgICAgICAgICAgaW5wdXQ6Y2hlY2tlZDpkaXNhYmxlZCB7XHJcbiAgICAgICAgICAgICAgICArIGxhYmVsOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vLi4vaW1hZ2VzL2NvbW1vbi9jaGVja19vZmYuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXI7IGJhY2tncm91bmQtc2l6ZTogMTZweCAxMnB4O1xyXG4gICAgICAgICAgICAgICAgfSAgIFxyXG4gICAgICAgICAgICB9XHJcbiAgICBcclxuICAgICAgICAgICAgLyogZGlzYWJsZWQgKi9cclxuICAgICAgICAgICAgaW5wdXQ6ZGlzYWJsZWQge1xyXG4gICAgICAgICAgICAgICAgKyBsYWJlbDo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uLy4uL2ltYWdlcy9jb21tb24vY2hlY2tfb2ZmLnN2Z1wiKSBuby1yZXBlYXQgY2VudGVyOyBiYWNrZ3JvdW5kLXNpemU6IDE2cHggMTJweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLyrruJTrnpkgYmcg7ZmU7J207Yq4IGNoayovXHJcbiAgICAgICAgJi5ibGtDaGsge1xyXG4gICAgICAgICAgICBpbnB1dCB7XHJcbiAgICAgICAgICAgICAgICArIGxhYmVsIHtcclxuICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7Ym9yZGVyLXJhZGl1czo1MCU7fVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAvKiDssrTtgawgKi9cclxuICAgICAgICAgICAgaW5wdXQ6Y2hlY2tlZDpub3QoOmRpc2FibGVkKXtcclxuICAgICAgICAgICAgICAgICsgbGFiZWw6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi8uLi9pbWFnZXMvY29tbW9uL2Noa19vZmYucG5nXCIpIG5vLXJlcGVhdCBjZW50ZXIgIzQ0NDsgYmFja2dyb3VuZC1zaXplOiAxNHB4IDEwcHg7IGJvcmRlci1jb2xvcjogIzQ0NDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLyrruJTro6ggYmcg7ZmU7J207Yq4IGNoayovXHJcbiAgICAgICAgJi5ibHVDaGsge1xyXG4gICAgICAgICAgICBpbnB1dCB7XHJcbiAgICAgICAgICAgICAgICArIGxhYmVsIHtcclxuICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7Ym9yZGVyLXJhZGl1czo1MCU7fVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAvKiDssrTtgawgKi9cclxuICAgICAgICAgICAgaW5wdXQ6Y2hlY2tlZDpub3QoOmRpc2FibGVkKXtcclxuICAgICAgICAgICAgICAgICsgbGFiZWw6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi8uLi9pbWFnZXMvY29tbW9uL2Noa19vZmYucG5nXCIpIG5vLXJlcGVhdCBjZW50ZXIgdmFyKC0ta2V5LWJsdWUwMSk7IGJhY2tncm91bmQtc2l6ZTogMTRweCAxMHB4OyBib3JkZXItY29sb3I6IHZhcigtLWtleS1ibHVlMDEpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLnR5cGUwMiB7XHJcbiAgICAgICAgICAgIGlucHV0IHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwOyBsZWZ0OiAwOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyBib3JkZXI6IG5vbmU7IGFwcGVhcmFuY2U6IG5vbmU7IC1tb3otYXBwZWFyYW5jZTogbm9uZTsgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgICAgICAgICAgICAgKyBsYWJlbCB7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyBwYWRkaW5nLWxlZnQ6IDMwcHg7IGZvbnQtc2l6ZTogMS42cmVtOyBjdXJzb3I6cG9pbnRlcjsgZGlzcGxheTpibG9jaztcclxuICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjsgZGlzcGxheTogYmxvY2s7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiA1MCU7IGxlZnQ6IDA7IHdpZHRoOiAycmVtOyBoZWlnaHQ6IDJyZW07IGJvcmRlcjowOyBiYWNrZ3JvdW5kOiB1cmwoXCIuLi8uLi9pbWFnZXMvY29tbW9uL2Noa190eTAyX29mZi5zdmdcIikgbm8tcmVwZWF0IGNlbnRlcjsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgIFxyXG4gICAgICAgICAgICAgICAgICAgID4gc3Bhbjpub3QoLmhpZGRlbikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6MTZweDsgY29sb3I6IzQ0NDsgbGluZS1oZWlnaHQ6MzJweDsgbGV0dGVyLXNwYWNpbmc6LTAuNHB4OyBmb250LXdlaWdodDo1MDA7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgXHJcbiAgICAgICAgICAgICAgICAgICAgPiBzcGFuLmhnbHQge2NvbG9yOnZhcigtLWtleS1ibHVlMDEpO31cclxuICAgIFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAvKiDssrTtgawgKi9cclxuICAgICAgICAgICAgaW5wdXQ6Y2hlY2tlZDpub3QoOmRpc2FibGVkKXtcclxuICAgICAgICAgICAgICAgICsgbGFiZWw6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi8uLi9pbWFnZXMvY29tbW9uL2Noa190eTAyX29uLnN2Z1wiKSBuby1yZXBlYXQgY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAvKiDssrTtgawgZGlzYWJsZWQgKi9cclxuICAgICAgICAgICAgaW5wdXQ6Y2hlY2tlZDpkaXNhYmxlZCB7XHJcbiAgICAgICAgICAgICAgICArIGxhYmVsOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vLi4vaW1hZ2VzL2NvbW1vbi9jaGtfdHkwMl9vZmYuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICB9ICAgXHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC8qIGRpc2FibGVkICovXHJcbiAgICAgICAgICAgIGlucHV0OmRpc2FibGVkIHtcclxuICAgICAgICAgICAgICAgICsgbGFiZWw6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi8uLi9pbWFnZXMvY29tbW9uL2Noa190eTAyX29mZi5zdmdcIikgbm8tcmVwZWF0IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKnJhZGlvIHR5cGUqL1xyXG4gICAgLypcclxuICAgIC5mcm1SZG8ge1xyXG4gICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlOyBkaXNwbGF5OmlubGluZS1ibG9jazsgdmVydGljYWwtYWxpZ246bWlkZGxlOyBtYXJnaW4tcmlnaHQ6MXJlbTtcclxuXHJcbiAgICAgICAgaW5wdXQge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOjA7IGxlZnQ6MDsgd2lkdGg6MTAwJTsgaGVpZ2h0OjEwMCU7IGJvcmRlcjowOyBhcHBlYXJhbmNlOm5vbmU7IC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgY3Vyc29yOnBvaW50ZXI7IHBhZGRpbmc6MDtcclxuXHJcbiAgICAgICAgICAgICsgbGFiZWwge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6MTAwJTsgZGlzcGxheTpmbGV4OyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgYWxpZ24taXRlbXM6IGNlbnRlcjsgcG9zaXRpb246cmVsYXRpdmU7IGhlaWdodDo0LjVyZW07IGJvcmRlcjoxcHggc29saWQgI2NjYzsgYm9yZGVyLXJhZGl1czoxcmVtOyBjb2xvcjojNDQ0OyBmb250LXNpemU6MS42cmVtOyB0ZXh0LWFsaWduOmNlbnRlcjsgYm94LXNpemluZzpib3JkZXItYm94OyBsaW5lLWhlaWdodDoxLjVyZW07IHBhZGRpbmc6IDAgNXJlbTsgY3Vyc29yOnBvaW50ZXI7IGZvbnQtd2VpZ2h0OjQwMDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpjaGVja2VkIHtcclxuICAgICAgICAgICAgICAgICsgbGFiZWwge1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjouMnJlbSBzb2xpZCB2YXIoLS1rZXktYmx1ZTAxKTsgY29sb3I6dmFyKC0ta2V5LWJsdWUwMSk7IGZvbnQtd2VpZ2h0OjUwMDsgcGFkZGluZzogMCA0LjlyZW07XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6bGFzdC1vZi10eXBlIHttYXJnaW4tcmlnaHQ6MDt9XHJcblxyXG4gICAgICAgICYubGcge1xyXG4gICAgICAgICAgICBpbnB1dCB7XHJcbiAgICAgICAgICAgICAgICArIGxhYmVsIHtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6Ni40cmVtOyBsaW5lLWhlaWdodDo2LjRyZW07XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAqL1xyXG5cclxuICAgIC8qaW5wdXQgdHlwZSB0ZXh0Ki9cclxuICAgIC5mcm1JcHQge1xyXG4gICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG5cclxuICAgICAgICAuZ3JwQ292IHtwb3NpdGlvbjpyZWxhdGl2ZTsgd2lkdGg6MTAwJTt9XHJcbiAgICAgICAgLmRhdGFUeHQge3dpZHRoOiAxMDAlOyBmb250LXNpemU6IDE4cHg7IGZvbnQtd2VpZ2h0OiA1MDA7IGNvbG9yOiAjMDAwO31cclxuICAgICAgICAuYnRuV3JhcCB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgcmlnaHQ6IDA7IGJvdHRvbTogMTVweDtcclxuICAgICAgICAgICAgLmlwdEJ0biB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDQwcHg7IHBhZGRpbmc6IDAgMjBweDsgbWFyZ2luLWxlZnQ6IDJweDsgYm9yZGVyLXJhZGl1czogN3B4OyBsaW5lLWhlaWdodDogMzlweDsgZm9udC1zaXplOiAxNHB4OyBjb2xvcjogI2ZmZjsgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgJi5ibHVlIHtiYWNrZ3JvdW5kOiB2YXIoLS1rZXktYmx1ZTAxKTt9XHJcbiAgICAgICAgICAgICAgICAmLmJsYWNrIHtiYWNrZ3JvdW5kOiAjNDQ0O31cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICAmLmlwdEZseCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6ZmxleDsgZmxleC1mbG93OnJvdyBub3dyYXA7IGFsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgcG9zaXRpb246IHJlbGF0aXZlOyBmbGV4LXdyYXA6IHdyYXA7XHJcblxyXG4gICAgICAgICAgICAmID4gc3BhbiB7ZGlzcGxheTppbmxpbmUtYmxvY2s7IHdpZHRoOjEyMHB4OyBmb250LXNpemU6MTRweDsgY29sb3I6IzQ0NDsgZm9udC13ZWlnaHQ6Ym9sZDsgbGluZS1oZWlnaHQ6MjBweDsgbGV0dGVyLXNwYWNpbmc6LTAuMzVweDsgbWFyZ2luLXJpZ2h0OjQwcHg7IHBhZGRpbmctdG9wOiA0cHg7fVxyXG4gICAgICAgICAgICAmID4gaW5wdXQge3dpZHRoOmNhbGMoMTAwJSAtIDE2MHB4KTtwYWRkaW5nOjAgMCAxNnB4IDA7IH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlucHV0IHtcclxuICAgICAgICAgICAgLy93aWR0aDoxMDAlOyBmb250LXNpemU6MThweDsgY29sb3I6IzAwMDsgZm9udC13ZWlnaHQ6NTAwOyBsaW5lLWhlaWdodDoyN3B4OyBsZXR0ZXItc3BhY2luZzogLTAuNTNweDsgcGFkZGluZzoxNHB4IDA7IGJvcmRlcjowOyBib3JkZXItYm90dG9tOiAycHggc29saWQgI2RjZGNkYztcclxuXHJcbiAgICAgICAgICAgIC8vJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7Zm9udC1zaXplOjE4cHg7IGNvbG9yOiNjY2M7IGZvbnQtd2VpZ2h0OjUwMDsgbGluZS1oZWlnaHQ6MjdweDsgbGV0dGVyLXNwYWNpbmc6LTAuNDVweDt9XHJcbiAgICAgICAgICAgIC8vJjpmb2N1cyB7b3V0bGluZTowOyBib3JkZXItYm90dG9tOjJweCBzb2xpZCB2YXIoLS1rZXktYmx1ZTAxKTt9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvKm92ZXJsYXkgdHlwZSovXHJcbiAgICAgICAgJi5vdnJUeHQge1xyXG4gICAgICAgICAgIC5tZWFzIHtmb250LXNpemU6MnJlbTsgY29sb3I6IzAwMDsgZm9udC13ZWlnaHQ6NTAwOyBsaW5lLWhlaWdodDoyOHB4OyBsZXR0ZXItc3BhY2luZzogLTAuNDVweDsgcG9zaXRpb246YWJzb2x1dGU7IHRvcDowOyByaWdodDowO31cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8qb3ZlcmxheSB0eXBlIChsb25nIHdvcmQpKi9cclxuICAgICAgICAmLmxuZyB7XHJcbiAgICAgICAgICAgIGlucHV0IHtwYWRkaW5nLXJpZ2h0OjMwcHg7IHRleHQtYWxpZ246cmlnaHQ7fVxyXG4gICAgICAgICAgIC5tZWFzIHt3aWR0aDozM3B4O31cclxuICAgICAgICAgICAuZm9ybWFsRGF0YVR4dCB7bGVmdDphdXRvOyByaWdodDozMHB4OyB0ZXh0LWFsaWduOnJpZ2h0O31cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8qb3ZlcmxheSB0eXBlIChzaG9ydCB3b3JkKSovXHJcbiAgICAgICAgJi5zcnQge1xyXG4gICAgICAgICAgICBpbnB1dCB7cGFkZGluZy1yaWdodDoyNHB4OyB0ZXh0LWFsaWduOnJpZ2h0O31cclxuICAgICAgICAgICAgLm1lYXMge3dpZHRoOjE3cHg7fVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi53VHh0IHtcclxuICAgICAgICAgICAgLmlwdFR4dCB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OmZsZXg7IGZsZXgtZmxvdzpyb3cgbm93cmFwOyBhbGlnbi1pdGVtczpmbGV4LXN0YXJ0OyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IG1hcmdpbi1ib3R0b206MS40cmVtOyBjb2xvcjojOTk5O1xyXG5cclxuICAgICAgICAgICAgICAgIC5vcHRUaXQge2ZvbnQtc2l6ZToxLjJyZW07IGNvbG9yOiM5OTk5OTk7IGZvbnQtd2VpZ2h0OmJvbGQ7IGxpbmUtaGVpZ2h0OjMuMnJlbTt9XHJcbiAgICAgICAgICAgICAgICAvLyAucmVxdWlyZWQge2Rpc3BsYXk6aW5saW5lLWJsb2NrOyB3aWR0SDo1cHg7IGhlaWdodDo1cHg7IGJhY2tncm91bmQ6IzAwNWNlMDsgYm9yZGVyLXJhZGl1czo1MCU7fVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuZGVzYyB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6MTRweDsgY29sb3I6dmFyKC0ta2V5LWJsdWUwMSk7IGxpbmUtaGVpZ2h0OjMycHg7IGxldHRlci1zcGFjaW5nOi0wLjM1cHg7IGZvbnQtd2VpZ2h0OjQwMDsgbWFyZ2luLXRvcDoxMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmhhbGYge1xyXG4gICAgICAgICAgICAuaXB0Q292ZXIge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7IGRpc3BsYXk6ZmxleDsgZmxleC1mbG93OnJvdyBub3dyYXA7IGFsaWduLWl0ZW1zOmNlbnRlcjsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblxyXG4gICAgICAgICAgICAgICAgaW5wdXQge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOmNhbGMoNTAlIC0gMjBweCk7IG1hcmdpbi1yaWdodDoyMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1vZi10eXBlIHttYXJnaW4tcmlnaHQ6MDsgbWFyZ2luLWxlZnQ6MjBweDt9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBzcGFuLmRhc2gge2Rpc3BsYXk6aW5saW5lLWJsb2NrOyBwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOjUwJTsgbGVmdDo1MCU7IHRyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKTsgd2lkdGg6MTJweDsgaGVpZ2h0OjJweDsgYmFja2dyb3VuZDojMDAwO31cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuaGFsZldyYXAge1xyXG4gICAgICAgICAgICAgICAvLyB3aWR0aDogY2FsYyg1MCUgLSAyMHB4KTsgbWFyZ2luLXJpZ2h0OiAxN3B4OyBwb3NpdGlvbjogcmVsYXRpdmU7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICAgICAgICAgLy8gJjpsYXN0LWNoaWxkIHttYXJnaW4tcmlnaHQ6IDA7fVxyXG4gICAgICAgICAgICAgICAvLyBpbnB1dCB7dGV4dC1hbGlnbjogcmlnaHQ7IHBhZGRpbmctcmlnaHQ6IDI1cHg7fVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuZmx4IHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDsgY29sdW1uLWdhcDogMjBweDtcclxuICAgICAgICAgICAgLmhhbGZXcmFwIHtcclxuICAgICAgICAgICAgICAgIGZsZXg6IDEgMSBhdXRvOyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgIGlucHV0W3R5cGU9J3RleHQnXSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IHBhZGRpbmctcmlnaHQ6IDI1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgJi50d28ge3BhZGRpbmctcmlnaHQ6IDQwcHg7fVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmJ0blR5IHtcclxuICAgICAgICAgICAgLmlwdENvdmVyIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG5cclxuICAgICAgICAgICAgICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOjE0cHg7IGNvbG9yOiNmZmY7IGZvbnQtd2VpZ2h0OjQwMDsgbGluZS1oZWlnaHQ6MjBweDsgbGV0dGVyLXNwYWNpbmc6LTAuMzVweDsgYmFja2dyb3VuZDojNDQ0OyBwYWRkaW5nOjEwcHggMjBweDsgYm94LXNpemluZzpib3JkZXItYm94OyBwb3NpdGlvbjphYnNvbHV0ZTsgYm90dG9tOjE1cHg7IHJpZ2h0OjA7IGJvcmRlci1yYWRpdXM6N3B4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLnNwRWZ0IHtcclxuICAgICAgICAgICAgLnJlc2V0QnRuIHtkaXNwbGF5Om5vbmU7IHdpZHRoOjI3cHg7IGhlaWdodDoyN3B4OyBiYWNrZ3JvdW5kOnVybChcIi4uLy4uL2ltYWdlcy9jb21tb24vaWNvX3Jlc2V0LnN2Z1wiKWNlbnRlciBjZW50ZXIgbm8tcmVwZWF0OyBib3JkZXItcmFkaXVzOjUwJTsgcG9zaXRpb246YWJzb2x1dGU7IHRvcDo1MCU7IHJpZ2h0OjA7IHRyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpOyB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8q7YOA7J207YuAIOyYgeyXrSovXHJcbiAgICAuZnJtVHh0IHtcclxuICAgICAgICAvLyBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cclxuICAgICAgICAucmVxdWlyZWQge1xyXG4gICAgICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jazsgd2lkdEg6NXB4OyBoZWlnaHQ6NXB4OyBiYWNrZ3JvdW5kOiMwMDVjZTA7IGJvcmRlci1yYWRpdXM6NTAlOyB2ZXJ0aWNhbC1hbGlnbjp0ZXh0LXRvcDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6bGFzdC1jaGlsZCB7bWFyZ2luLWJvdHRvbTogMDt9XHJcbiAgICAgICAgLnRpdGxlIHtmb250LXNpemU6MjRweDsgY29sb3I6IzAwMDsgZm9udC13ZWlnaHQ6Ym9sZDsgbGluZS1oZWlnaHQ6NDJweDsgbGV0dGVyLXNwYWNpbmc6LTAuNnB4O31cclxuICAgICAgICAuc3ViVGl0bGUge2ZvbnQtc2l6ZToxOHB4OyBjb2xvcjojNDQ0OyBmb250LXdlaWdodDo0MDA7IGxpbmUtaGVpZ2h0OjMycHg7IGxldHRlci1zcGFjaW5nOi0wLjQ1cHg7IG1hcmdpbi10b3A6NXB4O31cclxuICAgICAgICAuZGlyVGl0bGUge1xyXG4gICAgICAgICAgICAvL3Bvc2l0aW9uOnJlbGF0aXZlOyBkaXNwbGF5OmlubGluZS1ibG9jazsgdmVydGljYWwtYWxpZ246bWlkZGxlOyBwYWRkaW5nLWxlZnQ6MzhweDsgZm9udC1zaXplOjE4cHg7IGNvbG9yOiM0NDQ7IGxpbmUtaGVpZ2h0OjMycHg7IGxldHRlci1zcGFjaW5nOi0wLjQ1cHg7XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgLy9jb250ZW50OiAnJztwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOjUwJTsgbGVmdDowOyB0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTsgd2lkdGg6MzBweDsgaGVpZ2h0OjMwcHg7IGJvcmRlci1yYWRpdXM6NTAlOyBiYWNrZ3JvdW5kOnZhcigtLWtleS1ibHVlMDEpIHVybChcIi4uLy4uL2ltYWdlcy9jb21tb24vY2hlY2tfb2ZmLnN2Z1wiKSA1MCUgNTAlIG5vLXJlcGVhdDsgXHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICsgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jazsgdmVydGljYWwtYWxpZ246bWlkZGxlOyBwYWRkaW5nLWxlZnQ6MTBweDsgbWFyZ2luLWxlZnQ6MTBweDsgYm9yZGVyLWxlZnQ6MXB4IHNvbGlkICNkY2RjZGM7IGxpbmUtaGVpZ2h0OjE1cHg7IGZvbnQtc2l6ZToxNnB4OyBjb2xvcjojNDQ0OyBmb250LXdlaWdodDo0MDA7IGxldHRlci1zcGFjaW5nOi0wLjRweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAub3B0VGl0IHtmb250LXNpemU6MS4ycmVtOyBjb2xvcjojOTk5OyBmb250LXdlaWdodDpib2xkOyBsaW5lLWhlaWdodDozLjJyZW07fVxyXG4gICAgfVxyXG5cclxuICAgIC8qdmFsaWRhdGlvbiovXHJcbiAgICAvKlxyXG4gICAgLmVycm9yIHtcclxuICAgICAgICBpbnB1dFt0eXBlPSd0ZXh0J10sXHJcbiAgICAgICAgaW5wdXRbdHlwZT0ncGFzc3dvcmQnXSB7Ym9yZGVyLWJvdHRvbToycHggc29saWQgI2ZlNWY1ZjsgY29sb3I6I2ZlNWY1Zjt9XHJcbiAgICAgICAgaW5wdXRbdHlwZT0ncmFkaW8nXSArIGxhYmVsIHtib3JkZXI6MnB4IHNvbGlkICNmZTVmNWY7IGNvbG9yOiNmZTVmNWY7fVxyXG4gICAgICAgIGlucHV0W3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbCAgPiAqIHtjb2xvcjojZmU1ZjVmICFpbXBvcnRhbnQ7fVxyXG4gICAgICAgICYuZnJtQ29tYm8ge1xyXG4gICAgICAgICAgICBib3JkZXI6MXB4IHNvbGlkICNmZTVmNWY7XHJcblxyXG4gICAgICAgICAgICBidXR0b24ge2NvbG9yOiNmZTVmNWY7fVxyXG4gICAgICAgICAgICAuZHJwZHdCb3gge2JvcmRlcjoxcHggc29saWQgI2ZlNWY1ZjsgYm9yZGVyLXRvcDowO31cclxuICAgICAgICB9XHJcbiAgICAgICAgLy8gLmRhc2gge2JhY2tncm91bmQ6I2ZlNWY1ZiAhaW1wb3J0YW50O31cclxuICAgICAgICBcclxuICAgICAgICAub3B0VGl0IHtjb2xvcjojZmU1ZjVmICFpbXBvcnRhbnQ7fVxyXG4gICAgfVxyXG4gICAgKi9cclxuXHJcbiAgICBcclxuXHJcbiAgICAvLyBkYXRlcGlja2VyXHJcbiAgICAuZGF0ZXBpY2sge1xyXG4gICAgICAgIC5kYXRlcGlja1dyYXAge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgLnR1aS1kYXRlcGlja2VyLWlucHV0IHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlOyBtYXgtd2lkdGg6IDQyMHB4OyBoZWlnaHQ6IDYwcHg7IGJvcmRlci1yYWRpdXM6IDEzcHg7IGJvcmRlcjogMXB4IHNvbGlkICNiZWJlYmU7IHBhZGRpbmc6IDAgNjRweCAwIDIwcHg7XHJcbiAgICAgICAgICAgICAgICBpbnB1dCB7Ym9yZGVyOiBub25lOyBib3JkZXItcmFkaXVzOiAxMHB4OyBwYWRkaW5nOiAwO2ZvbnQtc2l6ZTogMTZweDsgZm9udC13ZWlnaHQ6IDUwMDt9XHJcbiAgICAgICAgICAgICAgICAudHVpLWljby1kYXRlIHt3aWR0aDogMjRweDsgaGVpZ2h0OiAyNHB4OyBtYXJnaW46IDA7IGJhY2tncm91bmQ6IHVybCguLi8uLi9pbWFnZXMvY29tbW9uL2ljb19jYWxlbmRhci5zdmcpIGNlbnRlciBuby1yZXBlYXQ7IHJpZ2h0OiAyMHB4OyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7fVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIEZvcm0g66CI7J207JWE7JuDXHJcbiAgICAvLyBib3jroIjsnbTslYTsm4NcclxuICAgIC5mcm1Cb3h7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7IGJvcmRlcjogMXB4IHNvbGlkICNkY2RjZGM7IGJvcmRlci1yYWRpdXM6IDE1cHg7IHBhZGRpbmc6IDQwcHg7XHJcbiAgICAgICAgJi50eXBlT25seSB7cGFkZGluZzogMzBweDt9XHJcbiAgICAgICAgJiArIC5mcm1Cb3gge21hcmdpbi10b3A6IDEwcHg7fVxyXG4gICAgICAgIC5ib3hHcm91cCB7XHJcbiAgICAgICAgICAgICYgPiAuaXRlbSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHttYXJnaW4tYm90dG9tOiAwO31cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaW1nV3JhcCB7XHJcbiAgICAgICAgbWFyZ2luOjIuNHJlbSAwOyB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgaW1nIHttYXgtd2lkdGg6MTAwJTt9XHJcbiAgICB9XHJcblxyXG4gICAgLmluc2VydENoa2JveCB7XHJcbiAgICAgICAgcGFkZGluZzogMCAxcmVtO1xyXG4gICAgICAgIFxyXG4gICAgICAgIC5kaXZUeHQge1xyXG4gICAgICAgICAgICBtYXJnaW46MXJlbSAwOyBwYWRkaW5nLWxlZnQ6M3JlbTsgd2lkdGg6MTAwJTsgZm9udC1zaXplOjEuNHJlbTsgY29sb3I6IzY2NjsgZm9udC13ZWlnaHQ6NDAwOyBsaW5lLWhlaWdodDoyLjJyZW07IGxldHRlci1zcGFjaW5nOi0wLjAwMzVyZW07IHdvcmQtYnJlYWs6a2VlcC1hbGw7XHJcblxyXG4gICAgICAgICAgICAmICsgLmZybUNoZWNrIHtwYWRkaW5nLWxlZnQ6MzBweDt9XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcbiAgICAvLyBGb3JtIOuCmOyXtCDrpqzsiqTtirgg66CI7J207JWE7JuDXHJcbiAgICAuZnJtTGlzdCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7IG1hcmdpbi10b3A6IDMwcHg7XHJcbiAgICAgICAgLmxpc3RHcm91cCB7XHJcbiAgICAgICAgICAgICYgPiAuaXRlbSB7XHJcbiAgICAgICAgICAgICAgICAvL21hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge21hcmdpbi1ib3R0b206IDA7fVxyXG4gICAgICAgICAgICAgICAgJi5pbmxpbmUge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7IGRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgLmZybVR4dCB7d2lkdGg6IDEzMHB4OyBtYXJnaW46IDAgMzBweCAwIDA7IHBhZGRpbmctdG9wOiAxMHB4O31cclxuICAgICAgICAgICAgICAgICAgICAuZnJtSXB0IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDE2MHB4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmRhdGFUeHQge3BhZGRpbmctdG9wOiAxM3B4O31cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmZybVR4dCB7XHJcbiAgICAgICAgICAgICAgICAvL21hcmdpbi1ib3R0b206IDE0cHg7XHJcbiAgICAgICAgICAgICAgICAub3BUaXQge1xyXG4gICAgICAgICAgICAgICAgICAgIC8vbWFyZ2luLWJvdHRvbTogMTRweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAucmFkaW9XcmFwIHt9XHJcbiAgICAgICAgICAgIC5mcm1Db21ibyArIC5mcm1JcHQge21hcmdpbi10b3A6IDE4cHg7fVxyXG4gICAgICAgIH1cclxuICAgICAgICAmICsgLmZybVR4dCB7bWFyZ2luLXRvcDogNDBweDt9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gUmFkaW8g66as7Iqk7Yq4IOugiOydtOyVhOybg1xyXG4gICAgLmZybVJkb0xpc3Qge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlOyBtYXJnaW4tdG9wOjMwcHg7XHJcbiAgICAgICAgLmxpc3RHcm91cCB7XHJcbiAgICAgICAgICAgICYgPiAuaXRlbSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0cmVtO1xyXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHttYXJnaW4tYm90dG9tOiAwO31cclxuXHJcbiAgICAgICAgICAgICAgICAudHh0IHtmb250LXNpemU6IDEuNHJlbTsgY29sb3I6IzAwMDsgd29yZC1icmVhazoga2VlcC1hbGw7fVxyXG4gICAgICAgICAgICAgICAgLnJhZGlvV3JhcCB7ZGlzcGxheTpmbGV4OyBmbGV4LWZsb3c6cm93IG5vd3JhcDsgYWxpZ24taXRlbXM6IGNlbnRlcjsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IG1hcmdpbi10b3A6MnJlbTt9XHJcbiAgICAgICAgICAgICAgICAucmFkaW9XcmFwID4gZGl2IHt3aWR0aDpjYWxjKDUwJSAtIC41cmVtKTt9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmZybUJ0bkdyb3VwIHtcclxuICAgICAgIC8vIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgLmJ0bkFyZWEge1xyXG4gICAgICAgICAgICAvL2Rpc3BsYXk6IGZsZXg7IGNvbHVtbi1nYXA6IDEwcHg7XHJcbiAgICAgICAgICAgIC8vJi5sZWZ0IHtqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7fVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyDsl6zrsLFcclxuICAgIC5jb21BY2NvclRhYmxlICsgJiB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDo0MHB4OyBwYWRkaW5nLXRvcDo1MHB4OyBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgICAgICAmOjpiZWZvcmV7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6XCJcIjsgd2lkdGg6MTAwdnc7IGhlaWdodDoxMHB4OyBiYWNrZ3JvdW5kOiNmM2YzZjM7IGRpc3BsYXk6YmxvY2s7IHBvc2l0aW9uOmFic29sdXRlOyBsZWZ0Oi0yMHB4OyB0b3A6MDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuY29tQnRuR3JvdXA6bGFzdC1jaGlsZCB7bWFyZ2luLXRvcDogNHJlbTt9XHJcbiAgICAuY3B0Q29uZmlybVJhZGlvICsgJiB7bWFyZ2luLXRvcDogMTJyZW07fVxyXG59XHJcblxyXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOjM3MHB4KSB7XHJcbiAgICAuY3B0Rm9ybSAuZnJtQ2hlY2sudHlwZTAyIGlucHV0ICsgbGFiZWwge3BhZGRpbmc6MCAzMHB4O31cclxufVxyXG5cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0g7Jyg7J2Y7IKs7ZWtKOy2lOqwgCDslYzrprwpIOuwleyKpCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi5jb21BbGVydEJveCB7XHJcbiAgICB3aWR0aDogMTAwJTsgcGFkZGluZzogMjBweDsgbWFyZ2luOiAyMHB4IDA7IGJvcmRlci1yYWRpdXM6IDE1cHg7IGJhY2tncm91bmQ6I2YzZjNmMztcclxuICAgIC8vLmFsZXJ0VGl0IHt3aWR0aDogMTAwJTsgcGFkZGluZy1sZWZ0OiAzMnB4OyBmb250LXNpemU6IDE2cHg7IGZvbnQtd2VpZ2h0OiA3MDA7IGNvbG9yOiAjNDQ0OyBiYWNrZ3JvdW5kOiB1cmwoLi4vLi4vaW1hZ2VzL2NvbW1vbi9pY29fbm90aWNlLnBuZykgbGVmdCBjZW50ZXIgbm8tcmVwZWF0O31cclxuICAgIC5hbGVydFR4dCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDsgZm9udC1zaXplOiAxLjRyZW07IGNvbG9yOiAjNDQ0OyBsaW5lLWhlaWdodDogMS41Nzsgd29yZC1icmVhazoga2VlcC1hbGw7XHJcbiAgICAgICAgJjpmaXJzdC1jaGlsZHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDowO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0g7YWM7J2067iUIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcbi5jb21UYWJsZXtcclxuICAgIHdpZHRoOiAxMDAlOyBtYXJnaW4tdG9wOjIwcHg7IHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAucmlnaHRUZXh0e1xyXG4gICAgICAgIHdpZHRoOiAxMDAlOyBmb250LXNpemU6IDEuNHJlbTsgZm9udC13ZWlnaHQ6IDQwMDsgbGluZS1oZWlnaHQ6IDIwcHg7IGNvbG9yOiAjMDAwOyB0ZXh0LWFsaWduOiByaWdodDsgcG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiAwOyB0b3A6IC0zMHB4O1xyXG4gICAgfVxyXG4gICAgLnNjcm9sbEJveCB7XHJcbiAgICAgICAgd2lkdGg6MTAwJTsgb3ZlcmZsb3cteDogYXV0bztcclxuICAgIH1cclxuICAgIHRhYmxle1xyXG4gICAgICAgIHdpZHRoOiAxMDAlOyB0YWJsZS1sYXlvdXQ6IGZpeGVkOyBib3JkZXItdG9wOiAxcHggc29saWQgIzAwMDsgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsgYm9yZGVyLXNwYWNpbmc6IDA7XHJcblxyXG4gICAgICAgICYuZnJlZSB7d2lkdGg6YXV0bzt9XHJcbiAgICAgICAgdHJ7XHJcbiAgICAgICAgICAgIHRoe1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTVweCAxMHB4OyBmb250LXNpemU6IDEuNHJlbTsgdGV4dC1hbGlnbjogY2VudGVyOyBjb2xvcjogIzAwMDsgZm9udC13ZWlnaHQ6IDQwMDsgbGluZS1oZWlnaHQ6IDEuNTsgXHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RjZGNkYzsgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2RjZGNkYzsgYmFja2dyb3VuZDogI2Y1ZjVmNTtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0ZHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMjBweDsgZm9udC1zaXplOiAxLjRyZW07IHRleHQtYWxpZ246IGNlbnRlcjsgY29sb3I6ICMwMDA7IGZvbnQtd2VpZ2h0OiA0MDA7IGxpbmUtaGVpZ2h0OiAxLjc7IFxyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkY2RjZGM7IGxldHRlci1zcGFjaW5nOiAtMC40cHg7IGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNkY2RjZGM7IGJhY2tncm91bmQ6ICNmZmY7XHJcblxyXG4gICAgICAgICAgICAgICAgJi5sQmRye1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2RjZGNkYztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5sZWZ0IHtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7IHBhZGRpbmctbGVmdDoyMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJiArIC5jb21Db250VGl0IHttYXJnaW4tdG9wOjQwcHg7fVxyXG59XHJcblxyXG5cclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0g7JWE7L2U65SU7Ja4IO2FjOydtOu4lCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLmNvbUFjY29yVGFibGUge1xyXG4gICAgd2lkdGg6IDEwMCU7IG1hcmdpbi10b3A6MjBweDtcclxuXHJcbiAgICAuc2Nyb2xsQm94e1xyXG4gICAgICAgIHdpZHRoOiAxMDAlOyBvdmVyZmxvdy14OiBhdXRvO1xyXG4gICAgfVxyXG4gICAgLmFjY29yVGhlYWR7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkY2RjZGM7IGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGNkY2RjOyBkaXNwbGF5OiBmbGV4OyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgLnRke1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDYwcHg7IHRleHQtYWxpZ246IGNlbnRlcjsgbGluZS1oZWlnaHQ6IDU5cHg7IGZvbnQtc2l6ZTogMTRweDsgZm9udC13ZWlnaHQ6NTAwOyBjb2xvcjogIzAwMDsgYmFja2dyb3VuZDogI2Y1ZjVmNTsgZmxleDogMCAwIDMzLjMzMzMlOyBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgICAgICAgICAgJjo6YWZ0ZXJ7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OlwiXCI7IHdpZHRoOjFweDsgaGVpZ2h0OjMwcHg7IGJhY2tncm91bmQ6I2RkZDsgcG9zaXRpb246YWJzb2x1dGU7IHRvcDoxNXB4OyByaWdodDowO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZHtcclxuICAgICAgICAgICAgICAgICY6OmFmdGVye2Rpc3BsYXk6bm9uZTt9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuYWNjb3JUYm9keXtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAuYWNjb3JUaXR7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlOyBkaXNwbGF5OiBmbGV4OyBwb3NpdGlvbjogcmVsYXRpdmU7IGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGNkY2RjO1xyXG5cclxuICAgICAgICAgICAgJjo6YWZ0ZXJ7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgY29udGVudDogXCJcIjsgd2lkdGg6IDE4cHg7IGhlaWdodDogMTBweDsgYmFja2dyb3VuZDogdXJsKC4uLy4uL2ltYWdlcy9jb21tb24vaWNvX3RhYmxlX2Rvd24uc3ZnKSBjZW50ZXIgbm8tcmVwZWF0OyBcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgcmlnaHQ6IDEwcHg7IHRvcDogMjVweDsgdHJhbnNpdGlvbjogYWxsIDAuM3M7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5ub3dPbntcclxuICAgICAgICAgICAgICAgICsgLmFjY29yRHR7XHJcbiAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogODA0cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOjphZnRlcntcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC50ZHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE5cHggMDsgdGV4dC1hbGlnbjogY2VudGVyOyBmb250LXNpemU6IDEuNHJlbTsgY29sb3I6ICMwMDA7IGZsZXg6IDAgMCAzMy4zMzMzJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuYWNjb3JEdHtcclxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvOyBtYXgtaGVpZ2h0OiAwOyBvdmVyZmxvdzogaGlkZGVuOyB0cmFuc2l0aW9uOiBhbGwgMC4zcztcclxuICAgICAgICAgICAgLmRldGFpbHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmMmY5ZmY7XHJcbiAgICAgICAgICAgICAgICAuZHR0cntcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2JmZGZmZjsgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgICAudGR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE0cHggMDsgdGV4dC1hbGlnbjogY2VudGVyOyBmb250LXNpemU6IDE0cHg7IGNvbG9yOiAjMDAwOyBmbGV4OiAwIDAgMzMuMzMzMyU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0g6rKM7Iuc7YyQIOuCtCDtjIzsnbwg64uk7Jq066Gc65OcIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcbi5jb21Eb3duRmlsZXtcclxuICAgIHdpZHRoOjEwMCU7IG1hcmdpbi10b3A6MjBweDtcclxuICAgIC5kb3dubG9hZHtcclxuICAgICAgICB3aWR0aDoxMDAlOyBtYXJnaW4tdG9wOjEwcHg7IHBhZGRpbmc6MjBweCAyNHB4OyBmb250LXNpemU6MS40cmVtOyBsaW5lLWhlaWdodDoxLjU7IGNvbG9yOiMzMzM7IGJvcmRlci1yYWRpdXM6MTBweDsgYmFja2dyb3VuZDojZjVmY2ZmOyBkaXNwbGF5OmJsb2NrO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSDqsozsi5ztjJAg7IOB64uoIOqygOyDiSDrk7EgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuLmNvbUJvYXJkVG9we1xyXG4gICAgd2lkdGg6MTAwJTsgcGFkZGluZzowIDIwcHg7XHJcbiAgICAuc2VhcmNoR3JvdXB7XHJcbiAgICAgICAgd2lkdGg6MTAwJTsgaGVpZ2h0OjYwcHg7IHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgICAgIC5zZWFyY2hJcHR7XHJcbiAgICAgICAgICAgIHdpZHRoOjEwMCU7IHBhZGRpbmc6MCAyMHB4OyBmb250LXNpemU6MTZweDsgZm9udC13ZWlnaHQ6NDAwOyBjb2xvcjojMDAwOyBsaW5lLWhlaWdodDo1OHB4OyBib3JkZXI6MXB4IHNvbGlkICNiZWJlYmU7IGJvcmRlci1yYWRpdXM6MTNweDtcclxuICAgICAgICAgICAgJjo6cGxhY2Vob2xkZXJ7Y29sb3I6I2NjYzt9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5zZWFyY2hCdG57XHJcbiAgICAgICAgICAgIHdpZHRoOjI0cHg7IGhlaWdodDoyNHB4OyBmb250LXNpemU6MDsgYm9yZGVyOjA7IGJhY2tncm91bmQ6dXJsKC4uLy4uL2ltYWdlcy9jb21tb24vaWNvX3NjaC5zdmcpIGNlbnRlciBuby1yZXBlYXQ7IHBvc2l0aW9uOmFic29sdXRlOyByaWdodDoyMHB4OyB0b3A6MThweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIOqyjOyLnO2MkCDrjZTrs7TquLAg67KE7Yq8IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcbi5jb21Nb3JlUGFnZXtcclxuICAgIHdpZHRoOjEwMCU7IHBhZGRpbmc6MCAyMHB4OyBtYXJnaW4tdG9wOjMwcHg7XHJcbiAgICAuYnRuTW9yZXtcclxuICAgICAgICB3aWR0aDoxMDAlOyBoZWlnaHQ6NTBweDsgZm9udC1zaXplOjEuNHJlbTsgZm9udC13ZWlnaHQ6NTAwOyBjb2xvcjojNDQ0OyB0ZXh0LWFsaWduOmNlbnRlcjsgbGluZS1oZWlnaHQ6NDhweDsgYm9yZGVyOjFweCBzb2xpZCAjZGNkY2RjOyBib3JkZXItcmFkaXVzOjEwcHg7IHBvc2l0aW9uOnJlbGF0aXZlO1xyXG5cclxuICAgICAgICAuaWNvRG93biB7XHJcbiAgICAgICAgICAgIGhlaWdodDoxMDAlOyBwYWRkaW5nLXJpZ2h0OjIwcHg7IGRpc3BsYXk6aW5saW5lLWJsb2NrOyBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgICAgICY6OmFmdGVyeyBcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6XCJcIjsgd2lkdGg6MTJweDsgaGVpZ2h0OjEycHg7IGJhY2tncm91bmQ6dXJsKC4uLy4uL2ltYWdlcy9jb21tb24vaWNvX2RlcDNfZG93bi5zdmcpIHJpZ2h0IGNlbnRlciBuby1yZXBlYXQ7IGRpc3BsYXk6aW5saW5lLWJsb2NrOyBcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlOyByaWdodDowOyB0b3A6Y2FsYyg1MCUgLSA2cHgpOyB0cmFuc2Zvcm06cm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t6rKM7Iuc7YyQIO2OmOydtOynlSDstpTqsIAgMjAyNDA2MTMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5cclxuLmNvbVBhZ2luZyB7XHJcbiAgICB3aWR0aDoxMDAlOyBwb3NpdGlvbjpyZWxhdGl2ZTsgbWFyZ2luLXRvcDo0MHB4O1xyXG4gICAgXHJcbiAgICB1bCB7XHJcbiAgICAgICAgd2lkdGg6MTAwJTsgcG9zaXRpb246cmVsYXRpdmU7IGRpc3BsYXk6ZmxleDsgZmxleC1mbG93OnJvdyBub3dyYXA7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGp1c3RpZnktY29udGVudDogY2VudGVyOyBnYXA6MzBweDtcclxuXHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAmLnBnQnRuIHtcclxuICAgICAgICAgICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTpibG9jazsgd2lkdGg6MzBweDsgaGVpZ2h0OjMwcHg7IGJvcmRlci1yYWRpdXM6NTAlOyBiYWNrZ3JvdW5kOiNlNWU1ZTU7IHBvc2l0aW9uOnJlbGF0aXZlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge2NvbnRlbnQ6ICcnOyBwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOjUwJTsgbGVmdDo1MCU7IHdpZHRoOjhweDsgaGVpZ2h0OjEycHg7IGJhY2tncm91bmQ6dXJsKC4uLy4uL2ltYWdlcy9jb21tb24vcGFnaW5nX2J0bi5zdmcpNTAlIDUwJSBuby1yZXBlYXQ7IHRyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKTt9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYucHJldiB7XHJcbiAgICAgICAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpIHJvdGF0ZSgxODBkZWcpO31cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJi5ub3RBdmFpbCB7XHJcbiAgICAgICAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6MC41OyBjdXJzb3I6ZGVmYXVsdDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJi5udW1JbmZvIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6ZmxleDsgZmxleC1mbG93OnJvdyBub3dyYXA7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgZ2FwOjVweDtcclxuXHJcbiAgICAgICAgICAgICAgICBzcGFuIHtmb250LXNpemU6MTZweDsgY29sb3I6IzY2NjsgZm9udC13ZWlnaHQ6NTAwOyBsaW5lLWhlaWdodDo0MnB4OyBsZXR0ZXItc3BhY2luZzogLTAuOHB4O31cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0g6rO17Ya1IOuyhO2KvCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG4uY29tQnRuIHtcclxuICAgIHdpZHRoOjEwMCU7IGRpc3BsYXk6ZmxleDsgZmxleC1mbG93OnJvdyBub3dyYXA7IGFsaWduLWl0ZW1zOmNlbnRlcjsgbWFyZ2luLXRvcDozMHB4O1xyXG5cclxuICAgIC8q7KCV66CsKi9cclxuICAgICYuY2VudGVyIHtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIH1cclxuICAgICYubGVmdCB7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgfVxyXG4gICAgJi5yaWdodCB7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuICAgIH1cclxuXHJcbiAgICAvKuuyhO2KvO2DgOyehSovXHJcbiAgICAuc2hvd0xpc3Qge1xyXG4gICAgICAgIHdpZHRoOjEwMCU7IGhlaWdodDo1MHB4OyBsaW5lLWhlaWdodDo1MHB4OyB0ZXh0LWFsaWduOmNlbnRlcjsgIGJhY2tncm91bmQ6dmFyKC0ta2V5LWJsdWUwMSk7IGJvcmRlci1yYWRpdXM6MTBweDsgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICAgICAgLmljb19hcnJ7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6MjBweDsgZm9udC1zaXplOjEuNHJlbTsgY29sb3I6I2ZmZjsgZm9udC13ZWlnaHQ6NTAwOyBiYWNrZ3JvdW5kOnVybCguLi8uLi9pbWFnZXMvY29tbW9uL2ljb19saXN0X2Fyci5zdmcpIHJpZ2h0IGNlbnRlciBuby1yZXBlYXQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59ICAgXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSDqs7XthrUg67KE7Yq8IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcbi5jb21TZWxlY3RMaXN0e1xyXG4gICAgLml0ZW17XHJcbiAgICAgICAgbWFyZ2luLXRvcDozMHB4O1xyXG4gICAgICAgICY6Zmlyc3QtY2hpbGR7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6MDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpsYXN0LWNoaWxke1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbToyMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAuYmFzaWN7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZToxLjZyZW07IGxpbmUtaGVpZ2h0OjEuNTsgZm9udC13ZWlnaHQ6NTAwOyBjb2xvcjojNDQ0O1xyXG4gICAgICAgICAgICAmLmFjdGl2ZXtcclxuICAgICAgICAgICAgICAgIGNvbG9yOnZhcigtLWtleS1ibHVlMDEpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSDqs7XthrUg67KE7Yq8IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcbi5jb21SZXN1bHR7XHJcbiAgICBtYXJnaW4tdG9wOjIwcHg7XHJcbiAgICAucnNsdEJveHtcclxuICAgICAgICAucnNsdEdyb3Vwe1xyXG4gICAgICAgICAgICAuaXRlbXtcclxuICAgICAgICAgICAgICAgIHdpZHRoOjEwMCU7IG1hcmdpbi10b3A6MTBweDsgcGFkZGluZzozMHB4OyBib3JkZXI6MXB4IHNvbGlkICNkY2RjZGM7IGJvcmRlci1yYWRpdXM6MjVweDtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxke21hcmdpbi10b3A6MDt9XHJcbiAgICAgICAgICAgICAgICAudGFne1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOjEwMCU7IGZvbnQtc2l6ZToxLjRyZW07IGxpbmUtaGVpZ2h0OjEuNTsgZm9udC13ZWlnaHQ6NTAwOyBjb2xvcjojOTk5OyB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5yc2x0e1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOjEwMCU7IG1hcmdpbi10b3A6MjBweDtcclxuICAgICAgICAgICAgICAgICAgICBkdHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6MTAwJTsgZm9udC1zaXplOjEuOHJlbTsgbGluZS1oZWlnaHQ6MS41OyBmb250LXdlaWdodDo1MDA7IGNvbG9yOiMwMDA7IHRleHQtYWxpZ246Y2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBie1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgZGR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOjEwMCU7IGZvbnQtZmFtaWx5OlwiUmVkSGF0RGlzcGxheVwiOyBmb250LXNpemU6Mi44cmVtOyBsaW5lLWhlaWdodDoxLjU7IGZvbnQtd2VpZ2h0OjcwMDsgY29sb3I6dmFyKC0ta2V5LWJsdWUwMSk7IGxldHRlci1zcGFjaW5nOi0wLjA3cmVtOyB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYntcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4vKjIwMjQuMDcuMTAg64yA7Lac7Iug7LKtIOuwjyDquLDtg4Ag64yA7LacIO2UhOuhnOyEuOyKpOyXkOyEnCDsgqzsmqntlaAg66Gc65Sp7J2066+47KeAKi9cclxuLmxvYW5Mb2FkaW5nIHtcclxuICAgIHBvc2l0aW9uOmZpeGVkOyB0b3A6MDsgbGVmdDowOyB3aWR0aDoxMDAlOyBoZWlnaHQ6MTAwJTsgYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuNSk7IHotaW5kZXg6OTk5OyBcclxuXHJcbiAgICAmID4gZGl2IHtcclxuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOjUwJTsgbGVmdDo1MCU7IHRyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKTsgei1pbmRleDo5OTk5OyB0ZXh0LWFsaWduOmNlbnRlcjsgd2lkdGg6MTAwJTtcclxuICAgICAgICBpbWcge2Rpc3BsYXk6aW5saW5lLWJsb2NrOyBwb3NpdGlvbjpyZWxhdGl2ZTsgd2lkdGg6MThyZW07IFxyXG4gICAgICAgICAgICBhbmltYXRpb246IG1vdGlvbiAwLjZzIGxpbmVhciAwcyBpbmZpbml0ZSBhbHRlcm5hdGU7IHRvcDogMDsgXHJcbiAgICAgICAgfVxyXG4gICAgICAgIHAge2ZvbnQtc2l6ZToxLjhyZW07IGNvbG9yOiNmZmY7IGZvbnQtd2VpZ2h0OjQwMDsgbGluZS1oZWlnaHQ6Mi44cmVtOyBsZXR0ZXItc3BhY2luZzotMC40NXB4OyB0ZXh0LWFsaWduOmNlbnRlcjsgbWFyZ2luLXRvcDoxcmVtOyB3aWR0aDoxMDAlO31cclxuICAgIH1cclxufVxyXG5Aa2V5ZnJhbWVzIG1vdGlvbiB7XHJcbiAgICAwJSB7dG9wOiAwcHg7fVxyXG4gICAgMTAwJSB7dG9wOiAxNXB4O31cclxufSJdfQ== */


/* 간편인증 */
#dsh-root label {font-size: 14px !important;}
#dsh-root input {font-size: 16px;}
#dsh-root input[type=checkbox] {opacity: 1 !important;}