@charset "utf-8";
@import url("../css/style.min.css");
@import url("notosans_kr.css");

/* language */
body,
input,
textarea,
select {
	font-family: 'NanumSquare', 'Noto Sans kr', sans-serif;
}

.bull {
	display: inline-block;
	vertical-align: middle;
	width: 4px;
	height: 4px;
	background-color: #555;
	position: relative;
	top: -1px;
	border-radius: 2px;
	margin-right: 2px;
}


html,
body {
	height: 100%;
}

html {
	letter-spacing: -0.025em;
	color: #666;
	font-size: 16px;
}

img {
	max-width: 100%;
}

.comBg {
	background-color: #fff;
}

.grayBg {
	background-color: #eff1f6;
}

.red {
	color: #ff0404 !important;
}

.cred {
	color: #f05c4a !important;
}

.rred {
	color: #ce1701 !important;
}

.orange {
	color: #ff7a01 !important;
}

.point_color {
	color: #2e7bd9 !important;
}

.point_color2 {
	color: #2d598f !important;
}

.underline {
	text-decoration: underline !important;
}

.borderline {
	border-bottom: 1px solid #666;
}

.borderline:hover {
	text-decoration: none !important;
}

.txt_c1 {
	color: #999 !important;
}

.center {
	text-align: center !important;
}

.right {
	text-align: right !important;
}

.left {
	text-align: left !important;
}

.mdl-js-button {
	position: relative;
}

/* loading */
.loading {
	display: block;
	height: 40px;
	background: url('../images/common/loading.gif') no-repeat 50% 50%;
	background-size: 20px auto;
}

.loadings {
	z-index: 10000;
	position: fixed;
	top: -50px;
	left: -50px;
	bottom: -50px;
	right: -50px;
	background-color: rgba(255, 255, 255, 0.6);
	animation: loading_show 0.2s 1 linear;
	-webkit-animation: loading_show 0.2s 1 linear;
}

.loadings>div {
	width: 30px;
	height: 30px;
	position: fixed;
	left: 50%;
	margin: -15px 0 0 -15px;
	top: 50%;
}

.loadings>div>i {
	display: block;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: url('../images/common/loading.gif') no-repeat 0 0;
	background-size: 100% auto;
}

.loadings>div>i.a {
	background-image: url('../images/common/loadings.png');
	animation: loading 1s infinite linear;
	-webkit-animation: loading 1s infinite linear;
}

.loadings.inner {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
}

.loadings.inner>div {
	position: absolute;
}

@keyframes loading {
	0% {
		transform: rotate(0);
	}

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

@-webkit-keyframes loading {
	0% {
		-webkit-transform: rotate(0);
	}

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

@keyframes loading_show {
	0% {
		opacity: 0;
	}

	100% {
		opacity: 1;
	}
}

@-webkit-keyframes loading_show {
	0% {
		opacity: 0;
	}

	100% {
		opacity: 1;
	}
}

/* slick Slider */
.slick-slider {
	position: relative;
	display: block;
	box-sizing: border-box;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-touch-callout: none;
	-khtml-user-select: none;
	touch-action: pan-y;
	-webkit-tap-highlight-color: transparent;
}

.slick-list {
	position: relative;
	display: block;
	overflow: hidden;
	margin: 0;
	padding: 0;
}

.slick-list:focus {
	outline: none;
}

.slick-list.dragging {
	cursor: pointer;
	cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
	transform: translate3d(0, 0, 0);
}

.slick-track {
	position: relative;
	top: 0;
	left: 0;
	display: block;
}

.slick-track:before,
.slick-track:after {
	display: table;
	content: '';
}

.slick-track:after {
	clear: both;
}

.slick-loading .slick-track {
	visibility: hidden;
}

.slick-slide {
	display: none;
	float: left;
	height: 100%;
	min-height: 1px;
}

[dir='rtl'] .slick-slide {
	float: right;
}

.slick-slide img {
	display: block;
}

.slick-slide.slick-loading img {
	display: none;
}

.slick-slide.dragging img {
	pointer-events: none;
}

.slick-initialized .slick-slide {
	display: block;
}

.slick-loading .slick-slide {
	visibility: hidden;
}

.slick-vertical .slick-slide {
	display: block;
	height: auto;
	border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
	display: none;
}

.slider {
	opacity: 0;
	transition: opacity 0.3s;
}

.slider:after {
	content: "";
	display: block;
	clear: both;
}

.slider.slick-initialized {
	opacity: 1;
}

.slider>.item:not(:first-of-type) {
	position: absolute;
	opacity: 0;
}


/** JQuery datepicker css */
#ui-datepicker-div {
	margin-top: 3px;
	margin-left: -5px;
	width: 250px !important;
	padding: 0 !important;
	border-radius: 0 !important;
	font-size: 14px !important;
	-webkit-perspective: 1;
	border: 2px solid #2e7bd9;
	z-index: 9 !important;
}

.ui-widget {
	font-family: inherit !important;
}

.ui-datepicker-header {
	padding: 0 !important;
	background: #f8f8fa !important;
	border: none !important;
	margin-bottom: 0 !important;
	border-radius: 0 !important;
}

.ui-datepicker .ui-datepicker-title {
	color: #222;
	height: 40px;
	line-height: 40px !important;
	font-size: 15px;
	font-weight: normal;
}

.ui-datepicker .ui-datepicker-prev-hover,
.ui-datepicker .ui-datepicker-next-hover {
	background: none !important;
	border: none !important;
}

.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
	top: 0 !important;
	width: 40px !important;
	height: 40px !important;
}

.ui-datepicker-prevYear:before,
.ui-datepicker-nextYear:before,
.ui-icon-circle-triangle-w,
.ui-icon-circle-triangle-e {
	width: 8px !important;
	height: 13px !important;
	background-image: url('../images/icons/icons.png') !important;
	background-repeat: no-repeat !important;
	background-size: 500px auto !important;
	margin: -7px 0 0 -4px !important;
}

.ui-icon-circle-triangle-w {
	background-position: -200px -125px !important;
}

.ui-icon-circle-triangle-e {
	background-position: -225px -125px !important;
}

.ui-datepicker-prevYear,
.ui-datepicker-nextYear {
	top: 1px;
	width: 24px;
	height: 24px;
	overflow: hidden;
	position: absolute;
}

.ui-datepicker-prevYear>span,
.ui-datepicker-nextYear>span {
	opacity: 0;
	height: 100%;
	display: block;
	position: absolute;
}

.ui-datepicker-prevYear {
	left: 10px;
}

.ui-datepicker-nextYear {
	right: 10px;
}

.ui-datepicker-prevYear:before,
.ui-datepicker-nextYear:before {
	position: absolute;
	content: "";
	top: 50%;
	left: 50%;
	width: 14px !important;
	margin-left: -7px !important;
}

.ui-datepicker-prevYear:before {
	background-position: -50px 0 !important;
}

.ui-datepicker-nextYear:before {
	background-position: -75px 0 !important;
}

.ui-datepicker .ui-datepicker-next {
	right: 5px !important;
}

.ui-datepicker .ui-datepicker-prev {
	left: 5px !important;
}

.ui-state-disabled span {
	border: none !important;
	background: none !important;
	text-align: center !important;
}

.ui-datepicker .ui-datepicker-prev-hover,
.ui-datepicker .ui-datepicker-next-hover {
	top: 2px;
}

.ui-state-hover {
	color: #222 !important;
	font-weight: bold !important;
}

.ui-datepicker table {
	margin: 0 !important;
	width: 238px;
	margin: 5px auto !important;
	font-size: 12px !important;
	font-weight: bold;
	color: #666;
}

.ui-datepicker-calendar {
	border-top: 0 !important;
}

.ui-datepicker-calendar th {
	padding: 0 !important;
	border: 0 !important;
	background-color: transparent !important;
	width: auto;
	height: 30px;
	color: inherit;
}

.ui-datepicker-calendar td {
	padding: 2px !important;
	border: 0 solid #fff !important;
	background-color: #fff;
	box-sizing: border-box;
	height: 34px;
	width: auto !important;
}

.ui-datepicker-calendar thead tr th:first-child,
.ui-datepicker-calendar .ui-datepicker-week-end {
	color: #007edd;
	font-weight: bold;
}

.ui-datepicker-calendar thead tr>*:first-child,
.ui-datepicker-calendar td:first-child {
	color: #e44450 !important;
}

.ui-datepicker-calendar td a {
	z-index: 0;
	background: none !important;
	border: none !important;
	text-align: center !important;
	color: inherit !important;
	font-weight: normal !important;
}

.ui-state-default,
.ui-datepicker-calendar td a {
	position: relative;
	display: block;
	padding: 0 !important;
	height: 30px;
	width: 30px;
	line-height: 30px;
}

.ui-datepicker-today {
	background-color: #fff !important;
}

.ui-datepicker-today .ui-state-default:before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	border: 1px solid #2e7bd9;
}

.ui-datepicker-current-day {}

.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active {
	color: #fff !important;
	background-color: #2e7bd9 !important;
}

.ui-datepicker-calendar .ui-datepicker-days-cell-over a {
	outline: 1px dashed #aaa !important;
}

.ui-datepicker-calendar a.ui-state-active,
.ui-datepicker-calendar .ui-datepicker-today a {
	outline: 0 !important;
}

/* */
.scroller {
	height: 100%;
	width: 100%;
	position: relative;
	overflow: hidden;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
}

.ftscroller_container {
	height: 100%;
	box-sizing: border-box;
}

/* */
.centers {
	display: -webkit-box;
	-webkit-box-pack: center;
	-webkit-box-align: center;
	display: -ms-flexbox;
	-ms-flex-pack: center;
	-ms-flex-align: center;
	display: -moz-box;
	-moz-box-pack: center;
	-moz-box-align: center;
	display: box;
	box-pack: center;
	box-align: center;
}

.boxLeft {
	box-pack: start;
}

.hText {
	position: absolute;
	z-index: -1;
	overflow: hidden;
	width: 0;
	height: 0;
	opacity: 0;
}

.stit {
	color: #333;
	font-size: 30px;
	line-height: 1.1;
}


/* */
button {
	border-radius: 0;
}

.comTa,
.comText.ime {
	ime-mode: active;
}

.selectbox .txt,
.comSelect,
.txtDate,
.comText {
	height: 40px;
	padding: 5px 15px;
}

.comText:not(input) {
	line-height: 28px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	letter-spacing: 0;
}

.selectbox .txt,
.comSelect,
.comTa,
.txtDate,
.comText {
	color: #333;
	border-radius: 0;
	background-color: #fff;
	border: 1px solid #e5e5e5;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	transition: background-color 0.2s ease, border-color 0.2s ease;
	-webkit-transition: background-color 0.2s ease, border-color 0.2s ease;
}

.selectbox .txt.focus,
.comSelect:focus,
.comTa:focus,
.txtDate:focus,
.txtDate.focus,
.comText.focus,
.comText:focus {
	background-color: #fff;
	border-color: #333;
	outline: 0;
}

.comTa.alert,
.comTa.alert,
.selectbox.alert .txt,
.comText.alert {
	border-color: #e8424e;
	color: #e8424e;
}

.comTa {
	height: 100px;
	line-height: 20px;
	padding: 10px 15px;
}

.comSelect {
	padding-right: 40px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.comSelect::-ms-expand {
	display: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.hid_chk,
.hid_rdo {
	position: absolute !important;
	opacity: 0;
	filter: alpha(opacity=0);
	top: 0;
	left: 0;
}

.hid_input {
	position: absolute !important;
	opacity: 0;
	filter: alpha(opacity=0);
	left: 0;
}

.hid_chk~.icon:before,
.hid_rdo~.icon:before,
.hid_input~.icon:before {
	content: "";
	width: 24px;
	height: 24px;
	display: inline-block;
	vertical-align: middle;
	position: relative;
	top: -1px;
	box-sizing: border-box;
	background-image: url('../images/icons/icons.png');
	background-repeat: no-repeat;
	background-size: 500px auto;
	margin-right: 5px;
	transition: border-color 0.2s;
	cursor: pointer;
}

.hid_chk:disabled~.icon:before,
.hid_rdo:disabled~.icon:before,
.hid_input:disabled~.icon:before {
	opacity: 0.7;
}

/* */

/* select box */
.selectbox {
	display: inline-block;
	position: relative;
	vertical-align: middle;
}

.selectbox .txt {
	position: relative;
	display: block;
	text-decoration: none;
	max-width: 100%;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	line-height: 30px;
	text-align: left;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	padding-right: 45px;
}

.selectbox .txt.focus {
	outline: 1px solid #96b8ef;
	z-index: 1;
	outline: none;
}

.selectbox select:disabled+.txt,
.selectbox select.disabled+.txt {
	background-color: #e7e7e7 !important;
}

.selectbox select {
	position: absolute;
	z-index: 1;
	left: 0;
	bottom: 0;
	height: 100%;
	*height: auto;
	padding: 5px 15px;
	border: 0;
	border-radius: 0;
	width: 100%;
	max-width: 100%;
	opacity: 0;
	filter: alpha(opacity=0);
	color: inherit;
	background-color: transparent;
}

.selectbox select:focus {
	outline: 0;
}

/* dropdownlist */
.dropLst {
	display: inline-block;
	/* position:relative; */
	vertical-align: middle;
	color: #666;
}

.dropLst .txt {
	position: relative;
	display: block;
	text-align: left;
	text-decoration: none;
	max-width: 100%;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	height: 40px;
	padding: 0 40px 0 10px;
	box-sizing: border-box;
	color: #333;
}

.dropLst .hidradio {
	opacity: 0;
	filter: alpha(opacity=0);
	position: absolute;
	z-index: -1;
	top: 5px;
	left: 5px;
}

.dropLst .dlst {
	display: none;
	position: absolute;
	top: 100%;
	z-index: 9;
	min-width: 100%;
	box-shadow: 1px 1px 1px rgba(0, 0, 0, .2);
	-webkit-box-shadow: 1px 1px 1px rgba(0, 0, 0, .2);
}

.dropLst.bottom .dlst {
	top: auto;
	bottom: 100%;
}

.dropLst .dlst.aright {
	right: 0;
}

.dropLst ul {
	margin-top: -1px;
	background-color: #fff;
	max-height: 300px;
	padding: 0;
	overflow-x: hidden;
	overflow-y: auto;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
}

.dropLst ul>li {
	position: relative;
}

.dropLst ul>li>label {
	display: block;
	position: relative;
	cursor: pointer;
}

.dropLst ul>li>label>span {
	display: block;
}

.dropLst ul>li>a:hover,
.dropLst ul>li>label:hover>span,
.dropLst ul>li>label.hover>span {
	/* background-color:#f3f3f3; */
}

.dropLst .txt,
.dropLst ul {
	border: 1px solid #d7d7d7;
}

.dropLst .txt,
.dropLst li span,
.dropLst li a {
	line-height: 38px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.dropLst li span,
.dropLst li a {
	padding: 0 10px;
}

.dropLst li a.selected,
.dropLst li a.on,
.dropLst li label.on span {
	/*font-weight:bold;*/
}

.dropLst li span,
.dropLst li a {
	display: block;
}

/* file */
.comFile {
	cursor: pointer;
	position: relative;
	display: block;
	vertical-align: middle;
	padding-right: 124px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
}

.comFile .comText {
	display: block;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	width: 100% !important;
	line-height: 28px;
}

.comFile .comText.unselect {
	color: #bbb;
}

.comFile .hidFile:disabled+.comText {
	background-color: #e7e7e7 !important;
}

.comFile .fileName.disabled {
	background-color: #e7e7e7 !important;
}

.comFile .fileName.focus {
	outline: 1px solid #96b8ef;
}

.comFile .hidFile.readonly+.comText {
	background-color: #f8f8f9 !important;
	color: #333 !important;
}

.comFile .fileName {
	display: block;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	text-align: left;
}

.comFile .hidFile {
	position: absolute;
	z-index: -1;
	opacity: 0;
	filter: alpha(opacity=0);
	top: 5px;
	left: 5px;
	width: 0;
	height: 0;
	overflow: hidden;
}

.comFile .sbtn {
	position: absolute;
	right: 0;
	top: 0;
	width: 125px;
	line-height: 38px;
	text-align: center;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	color: #fff;
	background-color: #fff;
	color: #2e7bd9;
	border: 1px solid #2e7bd9;
}

/* layout */
.clear {
	clear: both;
	display: block;
}

.vscroll_area {
	overflow-x: hidden;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
}

.vscroll_area::-webkit-scrollbar {
	-webkit-appearance: none;
}

.vscroll_area::-webkit-scrollbar:vertical {
	width: 4px;
}

.vscroll_area::-webkit-scrollbar-thumb {
	border-radius: 0;
	background-color: rgba(229, 229, 229, 1);
}

.vscroll_area::-webkit-scrollbar-track {
	background-color: rgba(248, 248, 250, 1);
	border-radius: 0;
}

.hscroll_area {
	overflow-y: hidden;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.hscroll_area::-webkit-scrollbar {
	-webkit-appearance: none;
}

.hscroll_area::-webkit-scrollbar:horizontal {
	height: 12px;
}

.hscroll_area::-webkit-scrollbar-thumb {
	border-radius: 0;
	background-color: rgba(229, 229, 229, 1);
}

.hscroll_area::-webkit-scrollbar-track {
	background-color: rgba(248, 248, 250, 1);
	border-radius: 0;
}

.wrap {
	min-width: 320px;
}

.wrap {
	height: 100%;
}

.wrap .areas {
	min-height: 100%;
	margin-bottom: -407px;
}

.wrap .container {
	padding-bottom: 407px;
}

@media all and (max-width:800px) {
	.wrap .areas {
		min-height: 100%;
		margin-bottom: -134px;
	}

	.wrap .container {
		padding-bottom: 134px;
	}
}

body.scroll_off {
	overflow: hidden;
}

.clearfix:after {
	content: "";
	display: block;
	clear: both;
}

.clearfix>li {
	display: block;
	float: left;
}

/*.isDisabled {color: currentColor; cursor: not-allowed; text-decoration: none;}*/
/*# sourceMappingURL=data:application/json;base64,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QkFBdUIsRUFBRTtBQUM1RCw0Q0FBNEMsU0FBUyxFQUFFO0FBQ3ZELHlDQUF5QyxlQUFlLEVBQUUsb0NBQW9DLEVBQUU7QUFDaEcseUNBQXlDLG9DQUFvQyxFQUFFLGVBQWUsRUFBRTtBQUNoRyxnQkFBZ0IsaUJBQWlCLEVBQUUsZUFBZSxFQUFFLGdDQUFnQyxFQUFFO0FBQ3RGLG1DQUFtQyx1QkFBdUIsRUFBRTtBQUM1RCw4Q0FBOEMsV0FBVyxFQUFFO0FBQzNELHlDQUF5QyxlQUFlLEVBQUUsb0NBQW9DLEVBQUU7QUFDaEcseUNBQXlDLG9DQUFvQyxFQUFFLGVBQWUsRUFBRTtBQUNoRyxRQUFRLGVBQWUsRUFBRTtBQUN6QixRQUFRLFdBQVcsRUFBRTtBQUNyQixjQUFjLGVBQWUsRUFBRSxvQkFBb0IsQ0FBQztBQUNwRCxrQkFBa0Isb0JBQW9CLENBQUM7QUFDdkM7Q0FDQyxjQUFjLGVBQWUsRUFBRSxvQkFBb0IsQ0FBQztDQUNwRCxrQkFBa0Isb0JBQW9CLENBQUM7QUFDeEM7O0FBRUEsa0JBQWtCLGVBQWUsRUFBRTs7QUFFbkMsaUJBQWlCLFdBQVcsRUFBRSxjQUFjLEVBQUUsV0FBVyxDQUFDO0FBQzFELGdCQUFnQixjQUFjLEVBQUUsVUFBVSxDQUFDO0FBQzNDLGlGQUFpRiIsImZpbGUiOiJjb21tb24uY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJ1dGYtOFwiO1xuQGltcG9ydCB1cmwoXCIuLi9kaXN0L2Nzcy9zdHlsZS5taW4uY3NzXCIpO1xuQGltcG9ydCB1cmwoXCJub3Rvc2Fuc19rci5jc3NcIik7XG5cbi8qIGxhbmd1YWdlICovXG5ib2R5LCBpbnB1dCwgdGV4dGFyZWEsIHNlbGVjdCB7Zm9udC1mYW1pbHk6ICdOYW51bVNxdWFyZScsICdOb3RvIFNhbnMga3InLCBzYW5zLXNlcmlmO31cbi5idWxsIHsgZGlzcGxheTppbmxpbmUtYmxvY2s7IHZlcnRpY2FsLWFsaWduOm1pZGRsZTsgd2lkdGg6NHB4OyBoZWlnaHQ6NHB4OyBiYWNrZ3JvdW5kLWNvbG9yOiM1NTU7IHBvc2l0aW9uOnJlbGF0aXZlOyB0b3A6LTFweDsgYm9yZGVyLXJhZGl1czoycHg7IG1hcmdpbi1yaWdodDoycHg7IH1cblxuXG5odG1sLCBib2R5IHsgaGVpZ2h0OjEwMCU7IH1cbmh0bWwge2xldHRlci1zcGFjaW5nOi0wLjAyNWVtOyBjb2xvcjojNjY2OyBmb250LXNpemU6MTZweDsgfVxuaW1nIHsgbWF4LXdpZHRoOjEwMCU7IH1cbi5jb21CZyB7IGJhY2tncm91bmQtY29sb3I6I2ZmZjsgfVxuLmdyYXlCZyB7IGJhY2tncm91bmQtY29sb3I6I2VmZjFmNjsgfVxuLnJlZCB7IGNvbG9yOiNmZjA0MDQgIWltcG9ydGFudDt9XG4uY3JlZCB7IGNvbG9yOiNmMDVjNGEgIWltcG9ydGFudDsgfVxuLnJyZWQgeyBjb2xvcjojY2UxNzAxICFpbXBvcnRhbnQ7IH1cbi5vcmFuZ2UgeyBjb2xvcjojZmY3YTAxICFpbXBvcnRhbnQ7IH1cbi5wb2ludF9jb2xvciB7IGNvbG9yOiMyZTdiZDkgIWltcG9ydGFudDsgfVxuLnBvaW50X2NvbG9yMiB7IGNvbG9yOiMyZDU5OGYgIWltcG9ydGFudDsgfVxuLnVuZGVybGluZSB7IHRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmUgIWltcG9ydGFudDsgfVxuLmJvcmRlcmxpbmUgeyBib3JkZXItYm90dG9tOjFweCBzb2xpZCAjNjY2OyB9XG4uYm9yZGVybGluZTpob3ZlciB7IHRleHQtZGVjb3JhdGlvbjpub25lICFpbXBvcnRhbnQ7IH1cbi50eHRfYzEgeyBjb2xvcjojOTk5ICFpbXBvcnRhbnQ7IH1cbi5jZW50ZXIgeyB0ZXh0LWFsaWduOmNlbnRlciAhaW1wb3J0YW50OyB9XG4ucmlnaHQgeyB0ZXh0LWFsaWduOnJpZ2h0ICFpbXBvcnRhbnQ7IH1cbi5sZWZ0IHsgdGV4dC1hbGlnbjpsZWZ0ICFpbXBvcnRhbnQ7IH1cbi5tZGwtanMtYnV0dG9uIHsgcG9zaXRpb246cmVsYXRpdmU7IH1cblxuLyogbG9hZGluZyAqL1xuLmxvYWRpbmcgeyBkaXNwbGF5OmJsb2NrOyBoZWlnaHQ6NDBweDsgYmFja2dyb3VuZDp1cmwoJy4uL2ltYWdlcy9jb21tb24vbG9hZGluZy5naWYnKSBuby1yZXBlYXQgNTAlIDUwJTsgYmFja2dyb3VuZC1zaXplOjIwcHggYXV0bzsgfVxuLmxvYWRpbmdzIHsgei1pbmRleDoxMDAwMDsgcG9zaXRpb246Zml4ZWQ7IHRvcDotNTBweDsgbGVmdDotNTBweDsgYm90dG9tOi01MHB4OyByaWdodDotNTBweDsgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNik7IGFuaW1hdGlvbjpsb2FkaW5nX3Nob3cgMC4ycyAxIGxpbmVhcjsgLXdlYmtpdC1hbmltYXRpb246bG9hZGluZ19zaG93IDAuMnMgMSBsaW5lYXI7IH1cbi5sb2FkaW5ncz5kaXYgeyB3aWR0aDozMHB4OyBoZWlnaHQ6MzBweDsgcG9zaXRpb246Zml4ZWQ7IGxlZnQ6NTAlOyBtYXJnaW46LTE1cHggMCAwIC0xNXB4OyB0b3A6NTAlOyB9XG4ubG9hZGluZ3M+ZGl2PmkgeyBkaXNwbGF5OmJsb2NrOyB3aWR0aDoxMDAlOyBoZWlnaHQ6MTAwJTsgdG9wOjA7IGxlZnQ6MDsgYmFja2dyb3VuZDp1cmwoJy4uL2ltYWdlcy9jb21tb24vbG9hZGluZy5naWYnKSBuby1yZXBlYXQgMCAwOyBiYWNrZ3JvdW5kLXNpemU6MTAwJSBhdXRvOyB9XG4ubG9hZGluZ3M+ZGl2PmkuYSB7IGJhY2tncm91bmQtaW1hZ2U6dXJsKCcuLi9pbWFnZXMvY29tbW9uL2xvYWRpbmdzLnBuZycpOyBhbmltYXRpb246bG9hZGluZyAxcyBpbmZpbml0ZSBsaW5lYXI7IC13ZWJraXQtYW5pbWF0aW9uOmxvYWRpbmcgMXMgaW5maW5pdGUgbGluZWFyOyB9XG4ubG9hZGluZ3MuaW5uZXIgeyBwb3NpdGlvbjphYnNvbHV0ZTsgdG9wOjA7IGxlZnQ6MDsgYm90dG9tOjA7IHJpZ2h0OjA7IH1cbi5sb2FkaW5ncy5pbm5lcj5kaXYgeyBwb3NpdGlvbjphYnNvbHV0ZTsgfVxuXG5Aa2V5ZnJhbWVzIGxvYWRpbmcge1xuXHQwJSB7IHRyYW5zZm9ybTpyb3RhdGUoMCk7IH1cblx0MTAwJSB7IHRyYW5zZm9ybTpyb3RhdGUoMzYwZGVnKTsgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGxvYWRpbmcge1xuXHQwJSB7IC13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgwKTsgfVxuXHQxMDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDM2MGRlZyk7IH1cbn1cbkBrZXlmcmFtZXMgbG9hZGluZ19zaG93IHtcblx0MCUgeyBvcGFjaXR5OjA7IH1cblx0MTAwJSB7IG9wYWNpdHk6MTsgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGxvYWRpbmdfc2hvdyB7XG5cdDAlIHsgb3BhY2l0eTowOyB9XG5cdDEwMCUgeyBvcGFjaXR5OjE7IH1cbn1cblxuLyogc2xpY2sgU2xpZGVyICovXG4uc2xpY2stc2xpZGVyIHsgcG9zaXRpb246IHJlbGF0aXZlOyBkaXNwbGF5OiBibG9jazsgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94OyBib3gtc2l6aW5nOiBib3JkZXItYm94OyAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lOyAtbW96LXVzZXItc2VsZWN0OiBub25lOyAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7IHVzZXItc2VsZWN0OiBub25lOyAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7IC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTsgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7IHRvdWNoLWFjdGlvbjogcGFuLXk7IC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbi5zbGljay1saXN0IHsgcG9zaXRpb246IHJlbGF0aXZlOyBkaXNwbGF5OiBibG9jazsgb3ZlcmZsb3c6IGhpZGRlbjsgbWFyZ2luOiAwOyBwYWRkaW5nOiAwOyB9XG4uc2xpY2stbGlzdDpmb2N1cyB7IG91dGxpbmU6IG5vbmU7IH1cbi5zbGljay1saXN0LmRyYWdnaW5nIHsgY3Vyc29yOiBwb2ludGVyOyBjdXJzb3I6IGhhbmQ7IH1cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7IC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuLnNsaWNrLXRyYWNrIHsgcG9zaXRpb246IHJlbGF0aXZlOyB0b3A6IDA7IGxlZnQ6IDA7IGRpc3BsYXk6IGJsb2NrOyB9XG4uc2xpY2stdHJhY2s6YmVmb3JlLFxuLnNsaWNrLXRyYWNrOmFmdGVyIHsgZGlzcGxheTogdGFibGU7IGNvbnRlbnQ6ICcnOyB9XG4uc2xpY2stdHJhY2s6YWZ0ZXIgeyBjbGVhcjogYm90aDsgfVxuLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXRyYWNrIHsgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4uc2xpY2stc2xpZGUgeyBkaXNwbGF5OiBub25lOyBmbG9hdDogbGVmdDsgaGVpZ2h0OiAxMDAlOyBtaW4taGVpZ2h0OiAxcHg7IH1cbltkaXI9J3J0bCddIC5zbGljay1zbGlkZSB7IGZsb2F0OiByaWdodDsgfVxuLnNsaWNrLXNsaWRlIGltZyB7IGRpc3BsYXk6IGJsb2NrOyB9XG4uc2xpY2stc2xpZGUuc2xpY2stbG9hZGluZyBpbWcgeyBkaXNwbGF5OiBub25lOyB9XG4uc2xpY2stc2xpZGUuZHJhZ2dpbmcgaW1nIHsgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cbi5zbGljay1pbml0aWFsaXplZCAuc2xpY2stc2xpZGUgeyBkaXNwbGF5OiBibG9jazsgfVxuLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXNsaWRlIHsgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4uc2xpY2stdmVydGljYWwgLnNsaWNrLXNsaWRlIHsgZGlzcGxheTogYmxvY2s7IGhlaWdodDogYXV0bzsgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4geyBkaXNwbGF5OiBub25lOyB9XG4uc2xpZGVyIHsgb3BhY2l0eTowOyAtd2Via2l0LXRyYW5zaXRpb246b3BhY2l0eSAwLjNzOyB0cmFuc2l0aW9uOm9wYWNpdHkgMC4zczsgfVxuLnNsaWRlcjphZnRlciB7IGNvbnRlbnQ6XCJcIjsgZGlzcGxheTpibG9jazsgY2xlYXI6Ym90aDsgfVxuLnNsaWRlci5zbGljay1pbml0aWFsaXplZCB7IG9wYWNpdHk6MTsgfVxuLnNsaWRlciA+IC5pdGVtOm5vdCg6Zmlyc3Qtb2YtdHlwZSkgeyBwb3NpdGlvbjphYnNvbHV0ZTsgb3BhY2l0eTowOyB9XG5cblxuLyoqIEpRdWVyeSBkYXRlcGlja2VyIGNzcyAqL1xuI3VpLWRhdGVwaWNrZXItZGl2IHsgbWFyZ2luLXRvcDozcHg7IG1hcmdpbi1sZWZ0Oi01cHg7IHdpZHRoOjI1MHB4ICFpbXBvcnRhbnQ7IHBhZGRpbmc6MCAhaW1wb3J0YW50OyBib3JkZXItcmFkaXVzOjAgIWltcG9ydGFudDsgZm9udC1zaXplOjE0cHggIWltcG9ydGFudDsgLXdlYmtpdC1wZXJzcGVjdGl2ZToxOyBib3JkZXI6MnB4IHNvbGlkICMyZTdiZDk7IHotaW5kZXg6OSAhaW1wb3J0YW50OyB9XG4udWktd2lkZ2V0IHsgZm9udC1mYW1pbHk6aW5oZXJpdCAhaW1wb3J0YW50OyB9XG4udWktZGF0ZXBpY2tlci1oZWFkZXIgeyBwYWRkaW5nOjAgIWltcG9ydGFudDsgYmFja2dyb3VuZDojZjhmOGZhICFpbXBvcnRhbnQ7IGJvcmRlcjpub25lICFpbXBvcnRhbnQ7IG1hcmdpbi1ib3R0b206MCAhaW1wb3J0YW50OyBib3JkZXItcmFkaXVzOjAgIWltcG9ydGFudDsgfVxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItdGl0bGUgeyBjb2xvcjojMjIyOyBoZWlnaHQ6NDBweDsgbGluZS1oZWlnaHQ6NDBweCAhaW1wb3J0YW50OyBmb250LXNpemU6MTVweDsgZm9udC13ZWlnaHQ6bm9ybWFsOyB9XG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1wcmV2LWhvdmVyLCAudWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1uZXh0LWhvdmVyIHsgYmFja2dyb3VuZDpub25lICFpbXBvcnRhbnQ7IGJvcmRlcjpub25lICFpbXBvcnRhbnQ7IH1cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXByZXYsIC51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLW5leHQgeyB0b3A6MCAhaW1wb3J0YW50OyB3aWR0aDo0MHB4ICFpbXBvcnRhbnQ7IGhlaWdodDo0MHB4ICFpbXBvcnRhbnQ7IH1cbi51aS1kYXRlcGlja2VyLXByZXZZZWFyOmJlZm9yZSwgLnVpLWRhdGVwaWNrZXItbmV4dFllYXI6YmVmb3JlLFxuLnVpLWljb24tY2lyY2xlLXRyaWFuZ2xlLXcsIC51aS1pY29uLWNpcmNsZS10cmlhbmdsZS1lIHsgd2lkdGg6OHB4ICFpbXBvcnRhbnQ7IGhlaWdodDoxM3B4ICFpbXBvcnRhbnQ7IGJhY2tncm91bmQtaW1hZ2U6dXJsKCcuLi9pbWFnZXMvaWNvbnMvaWNvbnMucG5nJykgIWltcG9ydGFudDsgYmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0ICFpbXBvcnRhbnQ7IGJhY2tncm91bmQtc2l6ZTo1MDBweCBhdXRvICFpbXBvcnRhbnQ7IG1hcmdpbjotN3B4IDAgMCAtNHB4ICFpbXBvcnRhbnQ7IH1cbi51aS1pY29uLWNpcmNsZS10cmlhbmdsZS13IHsgYmFja2dyb3VuZC1wb3NpdGlvbjotMjAwcHggLTEyNXB4ICFpbXBvcnRhbnQ7IH1cbi51aS1pY29uLWNpcmNsZS10cmlhbmdsZS1lIHsgYmFja2dyb3VuZC1wb3NpdGlvbjotMjI1cHggLTEyNXB4ICFpbXBvcnRhbnQ7IH1cbi51aS1kYXRlcGlja2VyLXByZXZZZWFyLCAudWktZGF0ZXBpY2tlci1uZXh0WWVhciB7IHRvcDoxcHg7IHdpZHRoOjI0cHg7IGhlaWdodDoyNHB4OyBvdmVyZmxvdzpoaWRkZW47IHBvc2l0aW9uOmFic29sdXRlOyB9XG4udWktZGF0ZXBpY2tlci1wcmV2WWVhciA+IHNwYW4sIC51aS1kYXRlcGlja2VyLW5leHRZZWFyID4gc3BhbiB7IG9wYWNpdHk6MDsgaGVpZ2h0OjEwMCU7IGRpc3BsYXk6YmxvY2s7IHBvc2l0aW9uOmFic29sdXRlOyB9XG4udWktZGF0ZXBpY2tlci1wcmV2WWVhciB7IGxlZnQ6MTBweDsgfVxuLnVpLWRhdGVwaWNrZXItbmV4dFllYXIgeyByaWdodDoxMHB4OyB9XG4udWktZGF0ZXBpY2tlci1wcmV2WWVhcjpiZWZvcmUsIC51aS1kYXRlcGlja2VyLW5leHRZZWFyOmJlZm9yZSB7IHBvc2l0aW9uOmFic29sdXRlOyBjb250ZW50OlwiXCI7IHRvcDo1MCU7IGxlZnQ6NTAlOyB3aWR0aDoxNHB4ICFpbXBvcnRhbnQ7IG1hcmdpbi1sZWZ0Oi03cHggIWltcG9ydGFudDsgfVxuLnVpLWRhdGVwaWNrZXItcHJldlllYXI6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjotNTBweCAwICFpbXBvcnRhbnQ7IH1cbi51aS1kYXRlcGlja2VyLW5leHRZZWFyOmJlZm9yZSB7IGJhY2tncm91bmQtcG9zaXRpb246LTc1cHggMCAhaW1wb3J0YW50OyB9XG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1uZXh0IHsgcmlnaHQ6NXB4ICFpbXBvcnRhbnQ7IH1cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXByZXYgeyBsZWZ0OjVweCAhaW1wb3J0YW50OyB9XG4udWktc3RhdGUtZGlzYWJsZWQgc3BhbiB7IGJvcmRlcjpub25lICFpbXBvcnRhbnQ7IGJhY2tncm91bmQ6bm9uZSAhaW1wb3J0YW50OyB0ZXh0LWFsaWduOmNlbnRlciAhaW1wb3J0YW50OyB9XG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1wcmV2LWhvdmVyLCAudWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1uZXh0LWhvdmVyIHsgdG9wOjJweDsgfVxuLnVpLXN0YXRlLWhvdmVyIHsgY29sb3I6IzIyMiAhaW1wb3J0YW50OyAgZm9udC13ZWlnaHQ6Ym9sZCAhaW1wb3J0YW50OyB9XG4udWktZGF0ZXBpY2tlciB0YWJsZSB7IG1hcmdpbjowICFpbXBvcnRhbnQ7IHdpZHRoOjIzOHB4OyBtYXJnaW46NXB4IGF1dG8gIWltcG9ydGFudDsgZm9udC1zaXplOjEycHggIWltcG9ydGFudDsgZm9udC13ZWlnaHQ6Ym9sZDsgY29sb3I6IzY2NjsgfVxuLnVpLWRhdGVwaWNrZXItY2FsZW5kYXIgeyBib3JkZXItdG9wOjAgIWltcG9ydGFudDsgfVxuLnVpLWRhdGVwaWNrZXItY2FsZW5kYXIgdGggeyBwYWRkaW5nOjAgIWltcG9ydGFudDsgYm9yZGVyOjAgIWltcG9ydGFudDsgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudCAhaW1wb3J0YW50OyB3aWR0aDphdXRvOyBoZWlnaHQ6MzBweDsgY29sb3I6aW5oZXJpdDsgfVxuLnVpLWRhdGVwaWNrZXItY2FsZW5kYXIgdGQgeyBwYWRkaW5nOjJweCAhaW1wb3J0YW50OyBib3JkZXI6MCBzb2xpZCAjZmZmICFpbXBvcnRhbnQ7IGJhY2tncm91bmQtY29sb3I6I2ZmZjsgYm94LXNpemluZzpib3JkZXItYm94OyBoZWlnaHQ6MzRweDsgd2lkdGg6YXV0byAhaW1wb3J0YW50OyB9XG4udWktZGF0ZXBpY2tlci1jYWxlbmRhciB0aGVhZCB0ciB0aDpmaXJzdC1jaGlsZCxcbi51aS1kYXRlcGlja2VyLWNhbGVuZGFyIC51aS1kYXRlcGlja2VyLXdlZWstZW5kIHsgY29sb3I6IzAwN2VkZDsgZm9udC13ZWlnaHQ6Ym9sZDsgfVxuLnVpLWRhdGVwaWNrZXItY2FsZW5kYXIgdGhlYWQgdHIgPiAqOmZpcnN0LWNoaWxkLFxuLnVpLWRhdGVwaWNrZXItY2FsZW5kYXIgdGQ6Zmlyc3QtY2hpbGQgeyBjb2xvcjojZTQ0NDUwICFpbXBvcnRhbnQ7IH1cbi51aS1kYXRlcGlja2VyLWNhbGVuZGFyIHRkIGEgeyB6LWluZGV4OjA7IGJhY2tncm91bmQ6bm9uZSAhaW1wb3J0YW50OyBib3JkZXI6bm9uZSAhaW1wb3J0YW50OyB0ZXh0LWFsaWduOmNlbnRlciAhaW1wb3J0YW50OyBjb2xvcjppbmhlcml0ICFpbXBvcnRhbnQ7IGZvbnQtd2VpZ2h0Om5vcm1hbCAhaW1wb3J0YW50OyB9XG4udWktc3RhdGUtZGVmYXVsdCxcbi51aS1kYXRlcGlja2VyLWNhbGVuZGFyIHRkIGEgeyBwb3NpdGlvbjpyZWxhdGl2ZTsgZGlzcGxheTpibG9jazsgcGFkZGluZzowICFpbXBvcnRhbnQ7IGhlaWdodDozMHB4OyB3aWR0aDozMHB4OyBsaW5lLWhlaWdodDozMHB4OyB9XG4udWktZGF0ZXBpY2tlci10b2RheSB7IGJhY2tncm91bmQtY29sb3I6I2ZmZiAhaW1wb3J0YW50OyB9XG4udWktZGF0ZXBpY2tlci10b2RheSAudWktc3RhdGUtZGVmYXVsdDpiZWZvcmUgeyBjb250ZW50OlwiXCI7IHBvc2l0aW9uOmFic29sdXRlOyB0b3A6MDsgYm90dG9tOjA7IGxlZnQ6MDsgcmlnaHQ6MDsgYm9yZGVyOjFweCBzb2xpZCAjMmU3YmQ5OyB9XG4udWktZGF0ZXBpY2tlci1jdXJyZW50LWRheSB7ICB9XG4udWktc3RhdGUtYWN0aXZlLFxuLnVpLXdpZGdldC1jb250ZW50IC51aS1zdGF0ZS1hY3RpdmUsXG4udWktd2lkZ2V0LWhlYWRlciAudWktc3RhdGUtYWN0aXZlIHsgY29sb3I6I2ZmZiAhaW1wb3J0YW50OyBiYWNrZ3JvdW5kLWNvbG9yOiMyZTdiZDkgIWltcG9ydGFudDsgfVxuLnVpLWRhdGVwaWNrZXItY2FsZW5kYXIgLnVpLWRhdGVwaWNrZXItZGF5cy1jZWxsLW92ZXIgYSB7IG91dGxpbmU6MXB4IGRhc2hlZCAjYWFhICFpbXBvcnRhbnQ7IH1cbi51aS1kYXRlcGlja2VyLWNhbGVuZGFyIGEudWktc3RhdGUtYWN0aXZlLFxuLnVpLWRhdGVwaWNrZXItY2FsZW5kYXIgLnVpLWRhdGVwaWNrZXItdG9kYXkgYSB7IG91dGxpbmU6MCAhaW1wb3J0YW50OyB9XG5cbi8qICovXG4uc2Nyb2xsZXIgeyBoZWlnaHQ6MTAwJTsgd2lkdGg6MTAwJTsgcG9zaXRpb246cmVsYXRpdmU7IG92ZXJmbG93OmhpZGRlbjsgYm94LXNpemluZzpib3JkZXItYm94OyAtd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDsgfVxuLmZ0c2Nyb2xsZXJfY29udGFpbmVyIHtoZWlnaHQ6IDEwMCU7IGJveC1zaXppbmc6IGJvcmRlci1ib3g7fVxuXG4vKiAqL1xuLmNlbnRlcnMgeyBkaXNwbGF5Oi13ZWJraXQtYm94OyAtd2Via2l0LWJveC1wYWNrOmNlbnRlcjsgLXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOyBkaXNwbGF5Oi1tcy1mbGV4Ym94OyAtbXMtZmxleC1wYWNrOmNlbnRlcjsgLW1zLWZsZXgtYWxpZ246Y2VudGVyOyBkaXNwbGF5Oi1tb3otYm94OyAtbW96LWJveC1wYWNrOmNlbnRlcjsgLW1vei1ib3gtYWxpZ246Y2VudGVyOyBkaXNwbGF5OmJveDsgYm94LXBhY2s6Y2VudGVyOyBib3gtYWxpZ246Y2VudGVyOyB9XG4uYm94TGVmdCB7IC13ZWJraXQtYm94LXBhY2s6c3RhcnQ7IC1tcy1mbGV4LXBhY2s6c3RhcnQ7IC1tb3otYm94LXBhY2s6c3RhcnQ7IGJveC1wYWNrOnN0YXJ0OyB9XG4uaFRleHQgeyBwb3NpdGlvbjphYnNvbHV0ZTsgei1pbmRleDotMTsgb3ZlcmZsb3c6aGlkZGVuOyB3aWR0aDowOyBoZWlnaHQ6MDsgb3BhY2l0eTowOyB9XG4uc3RpdCB7IGNvbG9yOiMzMzM7IGZvbnQtc2l6ZTozMHB4OyBsaW5lLWhlaWdodDoxLjE7IH1cblxuXG4vKiAqL1xuYnV0dG9uIHsgYm9yZGVyLXJhZGl1czowOyB9XG5cbi5jb21UYSxcbi5jb21UZXh0LmltZSB7IGltZS1tb2RlOmFjdGl2ZTsgfVxuLnNlbGVjdGJveCAudHh0LFxuLmNvbVNlbGVjdCxcbi50eHREYXRlLFxuLmNvbVRleHQgeyBoZWlnaHQ6NDBweDsgcGFkZGluZzo1cHggMTVweDsgfVxuLmNvbVRleHQ6bm90KGlucHV0KSB7IGxpbmUtaGVpZ2h0OjI4cHg7IHdoaXRlLXNwYWNlOm5vd3JhcDsgb3ZlcmZsb3c6aGlkZGVuOyB0ZXh0LW92ZXJmbG93OmVsbGlwc2lzOyBsZXR0ZXItc3BhY2luZzowOyB9XG4uc2VsZWN0Ym94IC50eHQsXG4uY29tU2VsZWN0LFxuLmNvbVRhLFxuLnR4dERhdGUsXG4uY29tVGV4dCB7IGNvbG9yOiMzMzM7IGJvcmRlci1yYWRpdXM6MDsgYmFja2dyb3VuZC1jb2xvcjojZmZmOyBib3JkZXI6MXB4IHNvbGlkICNlNWU1ZTU7IGJveC1zaXppbmc6Ym9yZGVyLWJveDsgLXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7IHRyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2UsIGJvcmRlci1jb2xvciAwLjJzIGVhc2U7IC13ZWJraXQtdHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZSwgYm9yZGVyLWNvbG9yIDAuMnMgZWFzZTsgfVxuLnNlbGVjdGJveCAudHh0LmZvY3VzLFxuLmNvbVNlbGVjdDpmb2N1cyxcbi5jb21UYTpmb2N1cyxcbi50eHREYXRlOmZvY3VzLFxuLnR4dERhdGUuZm9jdXMsXG4uY29tVGV4dC5mb2N1cyxcbi5jb21UZXh0OmZvY3VzIHsgYmFja2dyb3VuZC1jb2xvcjojZmZmOyBib3JkZXItY29sb3I6IzMzMzsgb3V0bGluZTowOyB9XG4uY29tVGEuYWxlcnQsXG4uY29tVGEuYWxlcnQsXG4uc2VsZWN0Ym94LmFsZXJ0IC50eHQsXG4uY29tVGV4dC5hbGVydCB7IGJvcmRlci1jb2xvcjojZTg0MjRlOyBjb2xvcjojZTg0MjRlOyB9XG4uY29tVGEgeyBoZWlnaHQ6MTAwcHg7IGxpbmUtaGVpZ2h0OjIwcHg7IHBhZGRpbmc6MTBweCAxNXB4OyB9XG4uY29tU2VsZWN0IHsgcGFkZGluZy1yaWdodDo0MHB4OyAtd2Via2l0LWFwcGVhcmFuY2U6bm9uZTsgLW1vei1hcHBlYXJhbmNlOm5vbmU7IGFwcGVhcmFuY2U6bm9uZTsgfVxuLmNvbVNlbGVjdDo6LW1zLWV4cGFuZCB7IGRpc3BsYXk6bm9uZTsgLXdlYmtpdC1hcHBlYXJhbmNlOm5vbmU7IC1tb3otYXBwZWFyYW5jZTpub25lOyBhcHBlYXJhbmNlOm5vbmU7IH1cblxuLmhpZF9jaGssXG4uaGlkX3JkbyB7IHBvc2l0aW9uOmFic29sdXRlICFpbXBvcnRhbnQ7IG9wYWNpdHk6MDsgZmlsdGVyOmFscGhhKG9wYWNpdHk9MCk7IHRvcDowOyBsZWZ0OjA7fVxuLmhpZF9pbnB1dCB7IHBvc2l0aW9uOmFic29sdXRlICFpbXBvcnRhbnQ7IG9wYWNpdHk6MDsgZmlsdGVyOmFscGhhKG9wYWNpdHk9MCk7IGxlZnQ6MDsgfVxuLmhpZF9jaGsgfiAuaWNvbjpiZWZvcmUsXG4uaGlkX3JkbyB+IC5pY29uOmJlZm9yZSxcbi5oaWRfaW5wdXQgfiAuaWNvbjpiZWZvcmUgeyBjb250ZW50OlwiXCI7IHdpZHRoOjI0cHg7IGhlaWdodDoyNHB4OyBkaXNwbGF5OmlubGluZS1ibG9jazsgdmVydGljYWwtYWxpZ246bWlkZGxlOyBwb3NpdGlvbjpyZWxhdGl2ZTsgdG9wOi0xcHg7IGJveC1zaXppbmc6Ym9yZGVyLWJveDsgYmFja2dyb3VuZC1pbWFnZTp1cmwoJy4uL2ltYWdlcy9pY29ucy9pY29ucy5wbmcnKTsgYmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0OyBiYWNrZ3JvdW5kLXNpemU6NTAwcHggYXV0bzsgbWFyZ2luLXJpZ2h0OjVweDsgLXdlYmtpdC10cmFuc2l0aW9uOmJvcmRlci1jb2xvciAwLjJzOyB0cmFuc2l0aW9uOmJvcmRlci1jb2xvciAwLjJzOyBjdXJzb3I6cG9pbnRlcjsgfVxuLmhpZF9jaGs6ZGlzYWJsZWQgfiAuaWNvbjpiZWZvcmUsXG4uaGlkX3JkbzpkaXNhYmxlZCB+IC5pY29uOmJlZm9yZSxcbi5oaWRfaW5wdXQ6ZGlzYWJsZWQgfiAuaWNvbjpiZWZvcmUgeyBvcGFjaXR5OjAuNzsgfVxuXG4vKiAqL1xuXG4vKiBzZWxlY3QgYm94ICovXG4uc2VsZWN0Ym94IHsgZGlzcGxheTppbmxpbmUtYmxvY2s7IHBvc2l0aW9uOnJlbGF0aXZlOyB2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7IH1cbi5zZWxlY3Rib3ggLnR4dCB7IHBvc2l0aW9uOnJlbGF0aXZlOyBkaXNwbGF5OmJsb2NrOyB0ZXh0LWRlY29yYXRpb246bm9uZTsgbWF4LXdpZHRoOjEwMCU7IHdoaXRlLXNwYWNlOm5vd3JhcDsgb3ZlcmZsb3c6aGlkZGVuOyB0ZXh0LW92ZXJmbG93OmVsbGlwc2lzOyBsaW5lLWhlaWdodDozMHB4OyB0ZXh0LWFsaWduOmxlZnQ7IGJveC1zaXppbmc6Ym9yZGVyLWJveDsgLXdlYmtpdC1ib3gtc2l6aW5nOmJvcmRlci1ib3g7IHBhZGRpbmctcmlnaHQ6NDVweDsgfVxuLnNlbGVjdGJveCAudHh0LmZvY3VzIHsgb3V0bGluZToxcHggc29saWQgIzk2YjhlZjsgei1pbmRleDoxOyBvdXRsaW5lOm5vbmU7IH1cbi5zZWxlY3Rib3ggc2VsZWN0OmRpc2FibGVkICsgLnR4dCxcbi5zZWxlY3Rib3ggc2VsZWN0LmRpc2FibGVkICsgLnR4dCB7IGJhY2tncm91bmQtY29sb3I6I2U3ZTdlNyAhaW1wb3J0YW50OyB9XG4uc2VsZWN0Ym94IHNlbGVjdCB7IHBvc2l0aW9uOmFic29sdXRlOyB6LWluZGV4OjE7IGxlZnQ6MDsgYm90dG9tOjA7IGhlaWdodDoxMDAlOyAqaGVpZ2h0OmF1dG87IHBhZGRpbmc6NXB4IDE1cHg7IGJvcmRlcjowOyBib3JkZXItcmFkaXVzOjA7IHdpZHRoOjEwMCU7IG1heC13aWR0aDoxMDAlOyBvcGFjaXR5OjA7IGZpbHRlcjphbHBoYShvcGFjaXR5PTApOyBjb2xvcjppbmhlcml0OyBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50OyB9XG4uc2VsZWN0Ym94IHNlbGVjdDpmb2N1cyB7IG91dGxpbmU6MDsgfVxuXG4vKiBkcm9wZG93bmxpc3QgKi9cbi5kcm9wTHN0IHsgZGlzcGxheTppbmxpbmUtYmxvY2s7IC8qIHBvc2l0aW9uOnJlbGF0aXZlOyAqLyB2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7IGNvbG9yOiM2NjY7IH1cbi5kcm9wTHN0IC50eHQgeyBwb3NpdGlvbjpyZWxhdGl2ZTsgZGlzcGxheTpibG9jazsgdGV4dC1hbGlnbjpsZWZ0OyB0ZXh0LWRlY29yYXRpb246bm9uZTsgbWF4LXdpZHRoOjEwMCU7IHdoaXRlLXNwYWNlOm5vd3JhcDsgb3ZlcmZsb3c6aGlkZGVuOyB0ZXh0LW92ZXJmbG93OmVsbGlwc2lzOyBoZWlnaHQ6NDBweDsgcGFkZGluZzowIDQwcHggMCAxMHB4OyBib3gtc2l6aW5nOmJvcmRlci1ib3g7IGNvbG9yOiMzMzM7IH1cbi5kcm9wTHN0IC5oaWRyYWRpbyB7IG9wYWNpdHk6MDsgZmlsdGVyOmFscGhhKG9wYWNpdHk9MCk7IHBvc2l0aW9uOmFic29sdXRlOyB6LWluZGV4Oi0xOyB0b3A6NXB4OyBsZWZ0OjVweDsgfVxuLmRyb3BMc3QgLmRsc3QgeyBkaXNwbGF5Om5vbmU7IHBvc2l0aW9uOmFic29sdXRlOyB0b3A6MTAwJTsgei1pbmRleDo5OyBtaW4td2lkdGg6MTAwJTsgYm94LXNoYWRvdzoxcHggMXB4IDFweCByZ2JhKDAsMCwwLC4yKTsgLXdlYmtpdC1ib3gtc2hhZG93OjFweCAxcHggMXB4IHJnYmEoMCwwLDAsLjIpOyB9XG4uZHJvcExzdC5ib3R0b20gLmRsc3QgeyB0b3A6YXV0bzsgYm90dG9tOjEwMCU7IH1cbi5kcm9wTHN0IC5kbHN0LmFyaWdodCB7IHJpZ2h0OjA7IH1cbi5kcm9wTHN0IHVsIHsgbWFyZ2luLXRvcDotMXB4OyBiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7IG1heC1oZWlnaHQ6MzAwcHg7IHBhZGRpbmc6MDsgb3ZlcmZsb3cteDpoaWRkZW47IG92ZXJmbG93LXk6YXV0bzsgYm94LXNpemluZzpib3JkZXItYm94OyAtd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDsgfVxuLmRyb3BMc3QgdWwgPiBsaSB7IHBvc2l0aW9uOnJlbGF0aXZlOyB9XG4uZHJvcExzdCB1bCA+IGxpID4gbGFiZWwgeyBkaXNwbGF5OmJsb2NrOyBwb3NpdGlvbjpyZWxhdGl2ZTsgY3Vyc29yOnBvaW50ZXI7IH1cbi5kcm9wTHN0IHVsID4gbGkgPiBsYWJlbCA+IHNwYW4geyBkaXNwbGF5OmJsb2NrOyB9XG4uZHJvcExzdCB1bCA+IGxpID4gYTpob3ZlciwgLmRyb3BMc3QgdWwgPiBsaSA+IGxhYmVsOmhvdmVyID4gc3BhbiwgLmRyb3BMc3QgdWwgPiBsaSA+IGxhYmVsLmhvdmVyID4gc3BhbiB7IC8qIGJhY2tncm91bmQtY29sb3I6I2YzZjNmMzsgKi8gfVxuLmRyb3BMc3QgLnR4dCwgLmRyb3BMc3QgdWwgeyBib3JkZXI6MXB4IHNvbGlkICNkN2Q3ZDc7IH1cbi5kcm9wTHN0IC50eHQsIC5kcm9wTHN0IGxpIHNwYW4sIC5kcm9wTHN0IGxpIGEgeyBsaW5lLWhlaWdodDozOHB4OyB3aGl0ZS1zcGFjZTpub3dyYXA7IG92ZXJmbG93OmhpZGRlbjsgdGV4dC1vdmVyZmxvdzplbGxpcHNpczsgfVxuLmRyb3BMc3QgbGkgc3BhbiwgLmRyb3BMc3QgbGkgYSB7IHBhZGRpbmc6MCAxMHB4OyB9XG4uZHJvcExzdCBsaSBhLnNlbGVjdGVkLCAuZHJvcExzdCBsaSBhLm9uLCAuZHJvcExzdCBsaSBsYWJlbC5vbiBzcGFuIHsvKmZvbnQtd2VpZ2h0OmJvbGQ7Ki99XG4uZHJvcExzdCBsaSBzcGFuLCAuZHJvcExzdCBsaSBhIHsgZGlzcGxheTpibG9jazsgfVxuXG4vKiBmaWxlICovXG4uY29tRmlsZSB7IGN1cnNvcjpwb2ludGVyOyBwb3NpdGlvbjpyZWxhdGl2ZTsgZGlzcGxheTpibG9jazsgdmVydGljYWwtYWxpZ246bWlkZGxlOyBwYWRkaW5nLXJpZ2h0OjEyNHB4OyBib3gtc2l6aW5nOmJvcmRlci1ib3g7IC13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94OyB9XG4uY29tRmlsZSAuY29tVGV4dCB7IGRpc3BsYXk6YmxvY2s7IG92ZXJmbG93OmhpZGRlbjsgdGV4dC1vdmVyZmxvdzplbGxpcHNpczsgd2hpdGUtc3BhY2U6bm93cmFwOyB3aWR0aDoxMDAlICFpbXBvcnRhbnQ7IGxpbmUtaGVpZ2h0OjI4cHg7IH1cbi5jb21GaWxlIC5jb21UZXh0LnVuc2VsZWN0IHsgY29sb3I6I2JiYjsgfVxuLmNvbUZpbGUgLmhpZEZpbGU6ZGlzYWJsZWQgKyAuY29tVGV4dCB7IGJhY2tncm91bmQtY29sb3I6I2U3ZTdlNyAhaW1wb3J0YW50OyB9XG4uY29tRmlsZSAuZmlsZU5hbWUuZGlzYWJsZWQgeyBiYWNrZ3JvdW5kLWNvbG9yOiNlN2U3ZTcgIWltcG9ydGFudDsgfVxuLmNvbUZpbGUgLmZpbGVOYW1lLmZvY3VzIHsgb3V0bGluZToxcHggc29saWQgIzk2YjhlZjsgfVxuLmNvbUZpbGUgLmhpZEZpbGUucmVhZG9ubHkgKyAuY29tVGV4dCB7IGJhY2tncm91bmQtY29sb3I6I2Y4ZjhmOSAhaW1wb3J0YW50OyBjb2xvcjojMzMzICFpbXBvcnRhbnQ7IH1cbi5jb21GaWxlIC5maWxlTmFtZSB7IGRpc3BsYXk6YmxvY2s7IHdoaXRlLXNwYWNlOm5vd3JhcDsgb3ZlcmZsb3c6aGlkZGVuOyB0ZXh0LW92ZXJmbG93OmVsbGlwc2lzOyB0ZXh0LWFsaWduOmxlZnQ7IH1cbi5jb21GaWxlIC5oaWRGaWxlIHsgcG9zaXRpb246YWJzb2x1dGU7IHotaW5kZXg6LTE7IG9wYWNpdHk6MDsgZmlsdGVyOmFscGhhKG9wYWNpdHk9MCk7IHRvcDo1cHg7IGxlZnQ6NXB4OyB3aWR0aDowOyBoZWlnaHQ6MDsgb3ZlcmZsb3c6aGlkZGVuOyB9XG4uY29tRmlsZSAuc2J0biB7IHBvc2l0aW9uOmFic29sdXRlOyByaWdodDowOyB0b3A6MDsgd2lkdGg6MTI1cHg7IGxpbmUtaGVpZ2h0OjM4cHg7IHRleHQtYWxpZ246Y2VudGVyOyBib3gtc2l6aW5nOmJvcmRlci1ib3g7IC13ZWJraXQtYm94LXNpemluZzpib3JkZXItYm94OyBjb2xvcjojZmZmOyBiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7IGNvbG9yOiMyZTdiZDk7IGJvcmRlcjoxcHggc29saWQgIzJlN2JkOTsgfVxuXG4vKiBsYXlvdXQgKi9cbi5jbGVhciB7IGNsZWFyOmJvdGg7IGRpc3BsYXk6YmxvY2s7IH1cbi52c2Nyb2xsX2FyZWEgeyBvdmVyZmxvdy14OmhpZGRlbjsgb3ZlcmZsb3cteTphdXRvOyAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzp0b3VjaDsgfVxuLnZzY3JvbGxfYXJlYTo6LXdlYmtpdC1zY3JvbGxiYXIgeyAtd2Via2l0LWFwcGVhcmFuY2U6bm9uZTsgfVxuLnZzY3JvbGxfYXJlYTo6LXdlYmtpdC1zY3JvbGxiYXI6dmVydGljYWwgeyB3aWR0aDo0cHg7IH1cbi52c2Nyb2xsX2FyZWE6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHsgYm9yZGVyLXJhZGl1czowOyBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjI5LDIyOSwyMjksMSk7IH1cbi52c2Nyb2xsX2FyZWE6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHsgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI0OCwyNDgsMjUwLDEpOyBib3JkZXItcmFkaXVzOjA7IH1cbi5oc2Nyb2xsX2FyZWEgeyBvdmVyZmxvdy15OmhpZGRlbjsgb3ZlcmZsb3cteDphdXRvOyAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzp0b3VjaDsgfVxuLmhzY3JvbGxfYXJlYTo6LXdlYmtpdC1zY3JvbGxiYXIgeyAtd2Via2l0LWFwcGVhcmFuY2U6bm9uZTsgfVxuLmhzY3JvbGxfYXJlYTo6LXdlYmtpdC1zY3JvbGxiYXI6aG9yaXpvbnRhbCB7IGhlaWdodDoxMnB4OyB9XG4uaHNjcm9sbF9hcmVhOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7IGJvcmRlci1yYWRpdXM6MDsgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDIyOSwyMjksMjI5LDEpOyB9XG4uaHNjcm9sbF9hcmVhOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7IGJhY2tncm91bmQtY29sb3I6cmdiYSgyNDgsMjQ4LDI1MCwxKTsgYm9yZGVyLXJhZGl1czowOyB9XG4ud3JhcCB7IG1pbi13aWR0aDozMjBweDsgfVxuLndyYXAgeyBoZWlnaHQ6MTAwJTsgfVxuLndyYXAgLmFyZWFzIHttaW4taGVpZ2h0OjEwMCU7IG1hcmdpbi1ib3R0b206LTQwN3B4O31cbi53cmFwIC5jb250YWluZXIge3BhZGRpbmctYm90dG9tOjQwN3B4O31cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6ODAwcHgpIHtcblx0LndyYXAgLmFyZWFzIHttaW4taGVpZ2h0OjEwMCU7IG1hcmdpbi1ib3R0b206LTEzNHB4O31cblx0LndyYXAgLmNvbnRhaW5lciB7cGFkZGluZy1ib3R0b206MTM0cHg7fVxufVxuXG5ib2R5LnNjcm9sbF9vZmYgeyBvdmVyZmxvdzpoaWRkZW47IH1cblxuLmNsZWFyZml4OmFmdGVyIHtjb250ZW50OiBcIlwiOyBkaXNwbGF5OiBibG9jazsgY2xlYXI6IGJvdGg7fVxuLmNsZWFyZml4ID4gbGkge2Rpc3BsYXk6IGJsb2NrOyBmbG9hdDpsZWZ0O31cbi8qLmlzRGlzYWJsZWQge2NvbG9yOiBjdXJyZW50Q29sb3I7IGN1cnNvcjogbm90LWFsbG93ZWQ7IHRleHQtZGVjb3JhdGlvbjogbm9uZTt9Ki9cbiJdfQ== */