/*
  0 			// 		Helpers
  1 			// 		Theme utils
  2 			// 		Variables
  3 			// 		Base
  4 			//		Theme styles
  5 			// 		Utils
  6 			// 		Vendor
  7 			// 		Components
  8 			// 		Layouts
  9 			// 		Templates
 */
/* Default fonts */
/* App fonts */
.materialInput textarea, .comment-respond .materialInput textarea,
.materialInput input,
.comment-respond .materialInput input, .searchForm__input,
.formControl {
  display: block;
  width: 100%;
  overflow: hidden;
  margin: 0;
  border: none;
  -webkit-border-radius: 0;
  border-radius: 0;
  padding: 0;
  background: transparent;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  resize: none;
}

.searchForm__submit, .header__bottom__actions__search, .header__responsiveMenu .dropdown-toggle, .footer__doctolib > a, .form-submit button[type="submit"], .header__bottom__actions__menu > * {
  cursor: pointer;
  margin: 0;
  border: none;
  -webkit-border-radius: 0;
  border-radius: 0;
  padding: 0;
  background: transparent;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.materialInput {
  height: 50px;
  height: var(--materialInputHeight, 50px);
  position: relative;
  overflow: hidden;
}

.comment-respond .materialInput {
  height: 50px;
  height: var(--materialInputHeight, 50px);
  position: relative;
  overflow: hidden;
}

.materialInput textarea, .comment-respond .materialInput textarea,
.materialInput input,
.comment-respond .materialInput input {
  width: 100%;
  height: 100%;
  border: none;
  padding-top: 20px;
}

.materialInput textarea {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--materialInputFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.9375rem;
  font-size: var(--materialInputFontSize, 1rem);
  color: #252525;
  color: var(--materialInputColor, #9E9E9E);
  font-weight: 300;
  font-weight: var(--materialInputFontWeight, 400);
  line-height: 1;
  line-height: var(--materialInputLineHeight, 1);
  letter-spacing: 0.03em;
  letter-spacing: var(--materialInputLetterSpacing, 0px);
}

.comment-respond .materialInput textarea {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--materialInputFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.9375rem;
  font-size: var(--materialInputFontSize, 1rem);
  color: #252525;
  color: var(--materialInputColor, #9E9E9E);
  font-weight: 300;
  font-weight: var(--materialInputFontWeight, 400);
  line-height: 1;
  line-height: var(--materialInputLineHeight, 1);
  letter-spacing: 0.03em;
  letter-spacing: var(--materialInputLetterSpacing, 0px);
}

.materialInput textarea::-webkit-input-placeholder {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--materialInputFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.9375rem;
  font-size: var(--materialInputFontSize, 1rem);
  color: #252525;
  color: var(--materialInputColor, #9E9E9E);
  font-weight: 300;
  font-weight: var(--materialInputFontWeight, 400);
  line-height: 1;
  line-height: var(--materialInputLineHeight, 1);
  letter-spacing: 0.03em;
  letter-spacing: var(--materialInputLetterSpacing, 0px);
}

.materialInput textarea::-moz-placeholder {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--materialInputFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.9375rem;
  font-size: var(--materialInputFontSize, 1rem);
  color: #252525;
  color: var(--materialInputColor, #9E9E9E);
  font-weight: 300;
  font-weight: var(--materialInputFontWeight, 400);
  line-height: 1;
  line-height: var(--materialInputLineHeight, 1);
  letter-spacing: 0.03em;
  letter-spacing: var(--materialInputLetterSpacing, 0px);
}

.materialInput textarea:-ms-input-placeholder {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--materialInputFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.9375rem;
  font-size: var(--materialInputFontSize, 1rem);
  color: #252525;
  color: var(--materialInputColor, #9E9E9E);
  font-weight: 300;
  font-weight: var(--materialInputFontWeight, 400);
  line-height: 1;
  line-height: var(--materialInputLineHeight, 1);
  letter-spacing: 0.03em;
  letter-spacing: var(--materialInputLetterSpacing, 0px);
}

.materialInput textarea::-ms-input-placeholder {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--materialInputFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.9375rem;
  font-size: var(--materialInputFontSize, 1rem);
  color: #252525;
  color: var(--materialInputColor, #9E9E9E);
  font-weight: 300;
  font-weight: var(--materialInputFontWeight, 400);
  line-height: 1;
  line-height: var(--materialInputLineHeight, 1);
  letter-spacing: 0.03em;
  letter-spacing: var(--materialInputLetterSpacing, 0px);
}

.materialInput textarea::placeholder {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--materialInputFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.9375rem;
  font-size: var(--materialInputFontSize, 1rem);
  color: #252525;
  color: var(--materialInputColor, #9E9E9E);
  font-weight: 300;
  font-weight: var(--materialInputFontWeight, 400);
  line-height: 1;
  line-height: var(--materialInputLineHeight, 1);
  letter-spacing: 0.03em;
  letter-spacing: var(--materialInputLetterSpacing, 0px);
}

.comment-respond .materialInput textarea::-webkit-input-placeholder {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--materialInputFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.9375rem;
  font-size: var(--materialInputFontSize, 1rem);
  color: #252525;
  color: var(--materialInputColor, #9E9E9E);
  font-weight: 300;
  font-weight: var(--materialInputFontWeight, 400);
  line-height: 1;
  line-height: var(--materialInputLineHeight, 1);
  letter-spacing: 0.03em;
  letter-spacing: var(--materialInputLetterSpacing, 0px);
}

.comment-respond .materialInput textarea::-moz-placeholder {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--materialInputFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.9375rem;
  font-size: var(--materialInputFontSize, 1rem);
  color: #252525;
  color: var(--materialInputColor, #9E9E9E);
  font-weight: 300;
  font-weight: var(--materialInputFontWeight, 400);
  line-height: 1;
  line-height: var(--materialInputLineHeight, 1);
  letter-spacing: 0.03em;
  letter-spacing: var(--materialInputLetterSpacing, 0px);
}

.comment-respond .materialInput textarea:-ms-input-placeholder {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--materialInputFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.9375rem;
  font-size: var(--materialInputFontSize, 1rem);
  color: #252525;
  color: var(--materialInputColor, #9E9E9E);
  font-weight: 300;
  font-weight: var(--materialInputFontWeight, 400);
  line-height: 1;
  line-height: var(--materialInputLineHeight, 1);
  letter-spacing: 0.03em;
  letter-spacing: var(--materialInputLetterSpacing, 0px);
}

.comment-respond .materialInput textarea::-ms-input-placeholder {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--materialInputFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.9375rem;
  font-size: var(--materialInputFontSize, 1rem);
  color: #252525;
  color: var(--materialInputColor, #9E9E9E);
  font-weight: 300;
  font-weight: var(--materialInputFontWeight, 400);
  line-height: 1;
  line-height: var(--materialInputLineHeight, 1);
  letter-spacing: 0.03em;
  letter-spacing: var(--materialInputLetterSpacing, 0px);
}

.comment-respond .materialInput textarea::placeholder {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--materialInputFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.9375rem;
  font-size: var(--materialInputFontSize, 1rem);
  color: #252525;
  color: var(--materialInputColor, #9E9E9E);
  font-weight: 300;
  font-weight: var(--materialInputFontWeight, 400);
  line-height: 1;
  line-height: var(--materialInputLineHeight, 1);
  letter-spacing: 0.03em;
  letter-spacing: var(--materialInputLetterSpacing, 0px);
}

.materialInput input {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--materialInputFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.9375rem;
  font-size: var(--materialInputFontSize, 1rem);
  color: #252525;
  color: var(--materialInputColor, #9E9E9E);
  font-weight: 300;
  font-weight: var(--materialInputFontWeight, 400);
  line-height: 1;
  line-height: var(--materialInputLineHeight, 1);
  letter-spacing: 0.03em;
  letter-spacing: var(--materialInputLetterSpacing, 0px);
}

.comment-respond .materialInput input {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--materialInputFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.9375rem;
  font-size: var(--materialInputFontSize, 1rem);
  color: #252525;
  color: var(--materialInputColor, #9E9E9E);
  font-weight: 300;
  font-weight: var(--materialInputFontWeight, 400);
  line-height: 1;
  line-height: var(--materialInputLineHeight, 1);
  letter-spacing: 0.03em;
  letter-spacing: var(--materialInputLetterSpacing, 0px);
}

.materialInput input::-webkit-input-placeholder {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--materialInputFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.9375rem;
  font-size: var(--materialInputFontSize, 1rem);
  color: #252525;
  color: var(--materialInputColor, #9E9E9E);
  font-weight: 300;
  font-weight: var(--materialInputFontWeight, 400);
  line-height: 1;
  line-height: var(--materialInputLineHeight, 1);
  letter-spacing: 0.03em;
  letter-spacing: var(--materialInputLetterSpacing, 0px);
}

.materialInput input::-moz-placeholder {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--materialInputFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.9375rem;
  font-size: var(--materialInputFontSize, 1rem);
  color: #252525;
  color: var(--materialInputColor, #9E9E9E);
  font-weight: 300;
  font-weight: var(--materialInputFontWeight, 400);
  line-height: 1;
  line-height: var(--materialInputLineHeight, 1);
  letter-spacing: 0.03em;
  letter-spacing: var(--materialInputLetterSpacing, 0px);
}

.materialInput input:-ms-input-placeholder {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--materialInputFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.9375rem;
  font-size: var(--materialInputFontSize, 1rem);
  color: #252525;
  color: var(--materialInputColor, #9E9E9E);
  font-weight: 300;
  font-weight: var(--materialInputFontWeight, 400);
  line-height: 1;
  line-height: var(--materialInputLineHeight, 1);
  letter-spacing: 0.03em;
  letter-spacing: var(--materialInputLetterSpacing, 0px);
}

.materialInput input::-ms-input-placeholder {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--materialInputFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.9375rem;
  font-size: var(--materialInputFontSize, 1rem);
  color: #252525;
  color: var(--materialInputColor, #9E9E9E);
  font-weight: 300;
  font-weight: var(--materialInputFontWeight, 400);
  line-height: 1;
  line-height: var(--materialInputLineHeight, 1);
  letter-spacing: 0.03em;
  letter-spacing: var(--materialInputLetterSpacing, 0px);
}

.materialInput input::placeholder {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--materialInputFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.9375rem;
  font-size: var(--materialInputFontSize, 1rem);
  color: #252525;
  color: var(--materialInputColor, #9E9E9E);
  font-weight: 300;
  font-weight: var(--materialInputFontWeight, 400);
  line-height: 1;
  line-height: var(--materialInputLineHeight, 1);
  letter-spacing: 0.03em;
  letter-spacing: var(--materialInputLetterSpacing, 0px);
}

.comment-respond .materialInput input::-webkit-input-placeholder {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--materialInputFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.9375rem;
  font-size: var(--materialInputFontSize, 1rem);
  color: #252525;
  color: var(--materialInputColor, #9E9E9E);
  font-weight: 300;
  font-weight: var(--materialInputFontWeight, 400);
  line-height: 1;
  line-height: var(--materialInputLineHeight, 1);
  letter-spacing: 0.03em;
  letter-spacing: var(--materialInputLetterSpacing, 0px);
}

.comment-respond .materialInput input::-moz-placeholder {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--materialInputFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.9375rem;
  font-size: var(--materialInputFontSize, 1rem);
  color: #252525;
  color: var(--materialInputColor, #9E9E9E);
  font-weight: 300;
  font-weight: var(--materialInputFontWeight, 400);
  line-height: 1;
  line-height: var(--materialInputLineHeight, 1);
  letter-spacing: 0.03em;
  letter-spacing: var(--materialInputLetterSpacing, 0px);
}

.comment-respond .materialInput input:-ms-input-placeholder {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--materialInputFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.9375rem;
  font-size: var(--materialInputFontSize, 1rem);
  color: #252525;
  color: var(--materialInputColor, #9E9E9E);
  font-weight: 300;
  font-weight: var(--materialInputFontWeight, 400);
  line-height: 1;
  line-height: var(--materialInputLineHeight, 1);
  letter-spacing: 0.03em;
  letter-spacing: var(--materialInputLetterSpacing, 0px);
}

.comment-respond .materialInput input::-ms-input-placeholder {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--materialInputFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.9375rem;
  font-size: var(--materialInputFontSize, 1rem);
  color: #252525;
  color: var(--materialInputColor, #9E9E9E);
  font-weight: 300;
  font-weight: var(--materialInputFontWeight, 400);
  line-height: 1;
  line-height: var(--materialInputLineHeight, 1);
  letter-spacing: 0.03em;
  letter-spacing: var(--materialInputLetterSpacing, 0px);
}

.comment-respond .materialInput input::placeholder {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--materialInputFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.9375rem;
  font-size: var(--materialInputFontSize, 1rem);
  color: #252525;
  color: var(--materialInputColor, #9E9E9E);
  font-weight: 300;
  font-weight: var(--materialInputFontWeight, 400);
  line-height: 1;
  line-height: var(--materialInputLineHeight, 1);
  letter-spacing: 0.03em;
  letter-spacing: var(--materialInputLetterSpacing, 0px);
}

.materialInput textarea:focus + label > span {
  color: #777;
  color: var(--materialInputLabelActiveColor, #4285F4);
  -webkit-transform: translateY(-webkit-calc(-130% - 0px)) scale(.8);
  -ms-transform: translateY(calc(-130% - 0px)) scale(.8);
  transform: translateY(calc(-130% - 0px)) scale(.8);
  -webkit-transform: translateY(-webkit-calc(-130% - var(--materialInputExtraHeight, 0px))) scale(var(--materialInputLabelActiveScale, 1));
  -ms-transform: translateY(calc(-130% - var(--materialInputExtraHeight, 0px))) scale(var(--materialInputLabelActiveScale, 1));
  transform: translateY(calc(-130% - var(--materialInputExtraHeight, 0px))) scale(var(--materialInputLabelActiveScale, 1));
}

.materialInput textarea.isActive + label > span {
  color: #777;
  color: var(--materialInputLabelActiveColor, #4285F4);
  -webkit-transform: translateY(-webkit-calc(-130% - 0px)) scale(.8);
  -ms-transform: translateY(calc(-130% - 0px)) scale(.8);
  transform: translateY(calc(-130% - 0px)) scale(.8);
  -webkit-transform: translateY(-webkit-calc(-130% - var(--materialInputExtraHeight, 0px))) scale(var(--materialInputLabelActiveScale, 1));
  -ms-transform: translateY(calc(-130% - var(--materialInputExtraHeight, 0px))) scale(var(--materialInputLabelActiveScale, 1));
  transform: translateY(calc(-130% - var(--materialInputExtraHeight, 0px))) scale(var(--materialInputLabelActiveScale, 1));
}

.materialInput input:focus + label > span {
  color: #777;
  color: var(--materialInputLabelActiveColor, #4285F4);
  -webkit-transform: translateY(-webkit-calc(-130% - 0px)) scale(.8);
  -ms-transform: translateY(calc(-130% - 0px)) scale(.8);
  transform: translateY(calc(-130% - 0px)) scale(.8);
  -webkit-transform: translateY(-webkit-calc(-130% - var(--materialInputExtraHeight, 0px))) scale(var(--materialInputLabelActiveScale, 1));
  -ms-transform: translateY(calc(-130% - var(--materialInputExtraHeight, 0px))) scale(var(--materialInputLabelActiveScale, 1));
  transform: translateY(calc(-130% - var(--materialInputExtraHeight, 0px))) scale(var(--materialInputLabelActiveScale, 1));
}

.materialInput input.isActive + label > span {
  color: #777;
  color: var(--materialInputLabelActiveColor, #4285F4);
  -webkit-transform: translateY(-webkit-calc(-130% - 0px)) scale(.8);
  -ms-transform: translateY(calc(-130% - 0px)) scale(.8);
  transform: translateY(calc(-130% - 0px)) scale(.8);
  -webkit-transform: translateY(-webkit-calc(-130% - var(--materialInputExtraHeight, 0px))) scale(var(--materialInputLabelActiveScale, 1));
  -ms-transform: translateY(calc(-130% - var(--materialInputExtraHeight, 0px))) scale(var(--materialInputLabelActiveScale, 1));
  transform: translateY(calc(-130% - var(--materialInputExtraHeight, 0px))) scale(var(--materialInputLabelActiveScale, 1));
}

.materialInput textarea:focus + label::after,
.materialInput textarea.isActive + label::after,
.materialInput input:focus + label::after,
.materialInput input.isActive + label::after {
  -webkit-transform: scaleX(1);
  -ms-transform: scaleX(1);
  transform: scaleX(1);
}

.materialInput textarea, .comment-respond .materialInput textarea {
  padding-top: 25px;
}

.materialInput label {
  width: 100%;
  height: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  pointer-events: none;
  border-bottom: 1px solid #252525;
  border-bottom: 1px solid var(--materialInputBorderColor, #9E9E9E);
}

.comment-respond .materialInput label {
  width: 100%;
  height: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  pointer-events: none;
  border-bottom: 1px solid #252525;
  border-bottom: 1px solid var(--materialInputBorderColor, #9E9E9E);
}

.materialInput label::after {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  right: 0;
  bottom: -1px;
  left: 0;
  -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: -webkit-transform 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: transform 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: transform 0.3s cubic-bezier(0.25, 0.1, 0.25, 1), -webkit-transform 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  border-bottom: 2px solid #252525;
  border-bottom: var(--materialInputBorderActiveHeight, 3px) solid var(--materialInputBorderActiveColor, #4285F4);
  -webkit-transform: scaleX(0);
  -ms-transform: scaleX(0);
  transform: scaleX(0);
}

.comment-respond .materialInput label::after {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  right: 0;
  bottom: -1px;
  left: 0;
  -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: -webkit-transform 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: transform 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: transform 0.3s cubic-bezier(0.25, 0.1, 0.25, 1), -webkit-transform 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  border-bottom: 2px solid #252525;
  border-bottom: var(--materialInputBorderActiveHeight, 3px) solid var(--materialInputBorderActiveColor, #4285F4);
  -webkit-transform: scaleX(0);
  -ms-transform: scaleX(0);
  transform: scaleX(0);
}

.materialInput label > span {
  position: absolute;
  bottom: 5px;
  left: 0;
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--materialInputLabelFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.9375rem;
  font-size: var(--materialInputLabelFontSize, 1rem);
  color: #252525;
  color: var(--materialInputLabelColor, #9E9E9E);
  font-weight: 300;
  font-weight: var(--materialInputLabelFontWeight, 400);
  letter-spacing: 0.03em;
  letter-spacing: var(--materialInputLabelLetterSpacing, 0.03em);
  -webkit-transition: color 0.3s cubic-bezier(0.25, 0.1, 0.25, 1), -webkit-transform 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: color 0.3s cubic-bezier(0.25, 0.1, 0.25, 1), -webkit-transform 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: transform 0.3s cubic-bezier(0.25, 0.1, 0.25, 1), color 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: transform 0.3s cubic-bezier(0.25, 0.1, 0.25, 1), color 0.3s cubic-bezier(0.25, 0.1, 0.25, 1), -webkit-transform 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  -webkit-transform-origin: left;
  -ms-transform-origin: left;
  transform-origin: left;
}

.comment-respond .materialInput label > span {
  position: absolute;
  bottom: 5px;
  left: 0;
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--materialInputLabelFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.9375rem;
  font-size: var(--materialInputLabelFontSize, 1rem);
  color: #252525;
  color: var(--materialInputLabelColor, #9E9E9E);
  font-weight: 300;
  font-weight: var(--materialInputLabelFontWeight, 400);
  letter-spacing: 0.03em;
  letter-spacing: var(--materialInputLabelLetterSpacing, 0.03em);
  -webkit-transition: color 0.3s cubic-bezier(0.25, 0.1, 0.25, 1), -webkit-transform 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: color 0.3s cubic-bezier(0.25, 0.1, 0.25, 1), -webkit-transform 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: transform 0.3s cubic-bezier(0.25, 0.1, 0.25, 1), color 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: transform 0.3s cubic-bezier(0.25, 0.1, 0.25, 1), color 0.3s cubic-bezier(0.25, 0.1, 0.25, 1), -webkit-transform 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  -webkit-transform-origin: left;
  -ms-transform-origin: left;
  transform-origin: left;
}

.footer__doctolib > a {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--doctolibButtonFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.75rem;
  font-size: var(--doctolibButtonFontSize, 1rem);
  color: #000;
  color: var(--doctolibButtonTextColor, #000);
  font-weight: 700;
  font-weight: var(--doctolibButtonFontWeight, 400);
  line-height: 1.25;
  line-height: var(--doctolibButtonLineHeight, 1.25);
  text-align: center;
  text-transform: uppercase;
  text-transform: var(--doctolibButtonTextTransform, none);
  padding: 0.8125rem 1.5rem 0.8125rem 1.5rem;
  padding: var(--doctolibButtonPaddingTop, 1em) var(--doctolibButtonPaddingRight, 1em) var(--doctolibButtonPaddingBottom, 1em) var(--doctolibButtonPaddingLeft, 1em);
  background-color: #ECE4D8;
  background-color: var(--doctolibButtonBackgroundColor, #FFF);
}

.doctolibButton {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--doctolibButtonFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.75rem;
  font-size: var(--doctolibButtonFontSize, 1rem);
  color: #000;
  color: var(--doctolibButtonTextColor, #000);
  font-weight: 700;
  font-weight: var(--doctolibButtonFontWeight, 400);
  line-height: 1.25;
  line-height: var(--doctolibButtonLineHeight, 1.25);
  text-align: center;
  text-transform: uppercase;
  text-transform: var(--doctolibButtonTextTransform, none);
  padding: 0.8125rem 1.5rem 0.8125rem 1.5rem;
  padding: var(--doctolibButtonPaddingTop, 1em) var(--doctolibButtonPaddingRight, 1em) var(--doctolibButtonPaddingBottom, 1em) var(--doctolibButtonPaddingLeft, 1em);
  background-color: #ECE4D8;
  background-color: var(--doctolibButtonBackgroundColor, #FFF);
}

.footer__doctolib > a svg {
  margin-left: 0.625rem;
  margin-left: var(--doctolibButtonLogoMarginLeft, 1em);
}

.doctolibButton svg {
  margin-left: 0.625rem;
  margin-left: var(--doctolibButtonLogoMarginLeft, 1em);
}

.footer__doctolib > a svg path {
  fill: #000;
  fill: var(--doctolibButtonLogoColor, #000);
}

.doctolibButton svg path {
  fill: #000;
  fill: var(--doctolibButtonLogoColor, #000);
}

back-to-top {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 50px;
  width: var(--backToTopWidth, 50px);
  height: 50px;
  height: var(--backToTopHeight, 50px);
  position: fixed;
  z-index: 20;
  z-index: var(--backToTopZindex, 20);
  right: 0px;
  right: var(--backToTopRight, 0px);
  bottom: -webkit-calc(35px + 2.8125rem);
  bottom: calc(35px + 2.8125rem);
  bottom: var(--backToTopBottom, 20px);
  cursor: pointer;
  -webkit-border-radius: 0px;
  border-radius: 0px;
  -webkit-border-radius: var(--backToTopBorderRadius, 0px);
  border-radius: var(--backToTopBorderRadius, 0px);
  background-color: #56625F;
  background-color: var(--backToTopBackgroundColor, #000);
  -webkit-transition: background-color 0.3s, -webkit-transform 0.3s cubic-bezier(0.42, 0, 0.58, 1);
  transition: background-color 0.3s, -webkit-transform 0.3s cubic-bezier(0.42, 0, 0.58, 1);
  transition: background-color 0.3s, transform 0.3s cubic-bezier(0.42, 0, 0.58, 1);
  transition: background-color 0.3s, transform 0.3s cubic-bezier(0.42, 0, 0.58, 1), -webkit-transform 0.3s cubic-bezier(0.42, 0, 0.58, 1);
  -webkit-transform: translate3d(-webkit-calc(100% + 15px), 0, 0) rotate(45deg);
  transform: translate3d(calc(100% + 15px), 0, 0) rotate(45deg);
  -webkit-transform: var(--backToTopTransform, translate3d(-webkit-calc(100% + var(--backToTopExtraOffset, 0px)), 0, 0)) var(--backToTopTransformExtra, rotate(0deg));
  transform: var(--backToTopTransform, translate3d(calc(100% + var(--backToTopExtraOffset, 0px)), 0, 0)) var(--backToTopTransformExtra, rotate(0deg));
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

@media only screen and (min-width: 1100px) {
  back-to-top {
  bottom: 35px;
  bottom: var(--backToTopBottom, 20px);
  }
}

back-to-top svg {
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transform: var(--backToTopSvgTransform, none);
  -ms-transform: var(--backToTopSvgTransform, none);
  transform: var(--backToTopSvgTransform, none);
}

back-to-top svg path {
  -webkit-transition: stroke 0.3s;
  transition: stroke 0.3s;
  stroke: #FFF;
  stroke: var(--backToTopSvgColor, #FFF);
}

@media (hover: hover) {
  back-to-top:hover {
    background-color: #ECE4D8;
    background-color: var(--backToTopActiveBackgroundColor, #FFF);
  }
  back-to-top:hover svg path {
    stroke: #000;
    stroke: var(--backToTopSvgActiveColor, #000);
  }
}

back-to-top.is-active {
  -webkit-transform: translate3d(-webkit-calc((20px + 15px) * -1), 0, 0) rotate(45deg);
  transform: translate3d(calc((20px + 15px) * -1), 0, 0) rotate(45deg);
  -webkit-transform: var(--backToTopActiveTransform, translate3d(-webkit-calc((var(--backToTopOffsetRight, 20px) + var(--backToTopExtraOffset, 0px)) * -1), 0, 0)) var(--backToTopActiveTransformExtra, var(--backToTopTransformExtra, rotate(0deg)));
  transform: var(--backToTopActiveTransform, translate3d(calc((var(--backToTopOffsetRight, 20px) + var(--backToTopExtraOffset, 0px)) * -1), 0, 0)) var(--backToTopActiveTransformExtra, var(--backToTopTransformExtra, rotate(0deg)));
}

/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: inherit;
  font-variant: inherit;
  font-style: inherit;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

body {
  line-height: 1;
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

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

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

a {
  text-decoration: none;
  color: inherit;
}

@media screen and (max-device-width: 480px) {
  body {
    -webkit-text-size-adjust: none;
  }
}

*,
*::before,
*::after {
  min-width: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

html,
body {
  max-width: 100%;
  -webkit-tap-highlight-color: transparent;
}

html {
  font-size: -webkit-calc((100% * 16) / 16);
  font-size: calc((100% * 16) / 16);
}

body {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--baseFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 1rem;
  color: #000;
  color: var(--baseColor, #000);
  font-weight: 400;
  font-weight: var(--baseFontWeight, 400);
  line-height: 1.2;
  line-height: var(--baseLineHeight, 1.2);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  word-break: break-word;
  overflow-x: hidden;
  text-rendering: optimizeSpeed;
}

img {
  max-width: 100%;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
}

svg {
  max-width: 100%;
}

strong {
  font-weight: 700;
  font-weight: var(--baseFontWeightBold, var(--fontWeightBold, 700));
}

em {
  font-style: italic;
}

table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}

input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 1000px #FFF inset;
}

input:not(input:-webkit-autofill)::-webkit-contacts-auto-fill-button {
  background-color: #FFF;
}

small {
  font-size: smaller;
}

textarea {
  resize: vertical;
}

.isRollHover > div {
  position: relative;
  overflow: hidden;
}

.isRollHover > div > * {
  display: block;
  -webkit-transition: -webkit-transform 0.35s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: -webkit-transform 0.35s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: transform 0.35s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: transform 0.35s cubic-bezier(0.25, 0.1, 0.25, 1), -webkit-transform 0.35s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.isRollHover > div > *:nth-child(2) {
  width: 100%;
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  -webkit-transform: translateY(100%);
  -ms-transform: translateY(100%);
  transform: translateY(100%);
  white-space: nowrap;
}

@media (hover: hover) {
  .isRollHover:hover > div > *:nth-child(1) {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
  }
  .isRollHover:hover > div > *:nth-child(2) {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
}

/* Prevent iOS from zooming in on input fields */
@supports (-webkit-touch-callout: none) {
  input[type='color'],
  input[type='date'],
  input[type='datetime'],
  input[type='datetime-local'],
  input[type='email'],
  input[type='month'],
  input[type='number'],
  input[type='password'],
  input[type='search'],
  input[type='tel'],
  input[type='text'],
  input[type='time'],
  input[type='url'],
  input[type='week'],
  select,
  select:focus,
  textarea {
    font-size: initial !important;
  }
}

.container {
  width: 100%;
  max-width: -webkit-calc(1300px + (15px * 2));
  max-width: calc(1300px + (15px * 2));
  max-width: -webkit-calc(var(--containerWidth) + (var(--containerGutter) * 2));
  max-width: calc(var(--containerWidth) + (var(--containerGutter) * 2));
  margin-right: auto;
  margin-left: auto;
  padding-right: 15px;
  padding-right: var(--containerGutter);
  padding-left: 15px;
  padding-left: var(--containerGutter);
}

@media only screen and (min-width: 768px) {
  .container {
  padding-left: 30px;
  padding-left: var(--containerGutter);
  }
}

@media only screen and (min-width: 768px) {
  .container {
  padding-right: 30px;
  padding-right: var(--containerGutter);
  }
}

@media only screen and (min-width: 768px) {
  .container {
  max-width: -webkit-calc(1300px + (30px * 2));
  max-width: calc(1300px + (30px * 2));
  max-width: -webkit-calc(var(--containerWidth) + (var(--containerGutter) * 2));
  max-width: calc(var(--containerWidth) + (var(--containerGutter) * 2));
  }
}

@media only screen and (min-width: 768px) {
  .container {
  max-width: -webkit-calc(1300px + (30px * 2));
  max-width: calc(1300px + (30px * 2));
  max-width: -webkit-calc(var(--containerWidth) + (var(--containerGutter) * 2));
  max-width: calc(var(--containerWidth) + (var(--containerGutter) * 2));
  }
}

.container-fluid {
  width: 100%;
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-right: 15px;
  padding-right: var(--containerGutter);
  padding-left: 15px;
  padding-left: var(--containerGutter);
}

@media only screen and (min-width: 768px) {
  .container-fluid {
  padding-left: 30px;
  padding-left: var(--containerGutter);
  }
}

@media only screen and (min-width: 768px) {
  .container-fluid {
  padding-right: 30px;
  padding-right: var(--containerGutter);
  }
}

.section {
  color: #000;
  color: var(--sectionColor, var(--baseColor, #000));
  background: transparent;
  background: var(--sectionBackgroundColor, transparent);
}

.section + .section:not(.section--no-topMargin) {
  margin-top: 2.1875rem;
  margin-top: var(--sectionMarginTop, 2.1875rem);
}

@media only screen and (min-width: 1024px) {
  .section + .section:not(.section--no-topMargin) {
  margin-top: 4.6875rem;
  margin-top: var(--sectionMarginTop, 2.1875rem);
  }
}

.section .sectionContent__column + .sectionContent__column {
  margin-top: 2.1875rem;
  margin-top: var(--sectionInnerMarginTop, 2.1875rem);
}

.section .sectionContent__column > * + * {
  margin-top: 2.1875rem;
  margin-top: var(--sectionInnerMarginTop, 2.1875rem);
}

.section:not(.section--no-paddings) {
  padding: 1.5625rem 0;
  padding: var(--sectionPadding, 1.5625rem) 0;
}

.sectionHeader {
  margin-bottom: 2.1875rem;
  margin-bottom: var(--sectionHeaderMarginBottom, 2.1875rem);
}

.sectionHeader--center {
  text-align: center;
}

.sectionHeader--left {
  text-align: left;
}

.sectionHeader--right {
  text-align: right;
}

:root {
  --alto2Color: #DEDEDE;
  --altoColor: #CFCFCF;
  --boulder2Color: #797979;
  --boulderColor: #777;
  --cararraColor: #F3F2F0;
  --codGray2Color: #121212;
  --codGray3Color: #151515;
  --codGrayColor: #0D0D0D;
  --concrete2Color: #F3F3F3;
  --concreteColor: #F2F2F2;
  --corduroy2Color: #656E6C;
  --corduroyColor: #56625F;
  --doveGrayColor: #686868;
  --duneColor: #2B2523;
  --dustyGrayColor: #9C9C9C;
  --gallery2Color: #EBEAE9;
  --gallery3Color: #EDEDED;
  --galleryColor: #EFEFEF;
  --grayColor: #8C8C8C;
  --hollyColor: #011510;
  --makoColor: #444951;
  --mercuryColor: #E2E2E2;
  --mineShaft2Color: #252525;
  --mineShaft3Color: #202020;
  --mineShaft4Color: #3C3C3C;
  --mineShaft5Color: #232323;
  --mineShaftColor: #282828;
  --mortarColor: #534756;
  --pavlovaColor: #D7C1A1;
  --seashellColor: #F1F1F1;
  --silver2Color: #CDCDCD;
  --silverChalice2Color: #A3A3A3;
  --silverChalice3Color: #A8A8A8;
  --silverChaliceColor: #9F9F9F;
  --silverColor: #C4C4C4;
  --tunaColor: #39393C;
  --tundora2Color: #454545;
  --tundoraColor: #404040;
  --viridianGreen: #618170;
  --whiteRockColor: #ECE4D8;
}

:root {
  --containerGutter: 15px;
  --containerWidth: 1300px;
}

@media only screen and (min-width: 768px) {
  :root {
    --containerGutter: 30px;
  }
}

:root {
  --fontFamily: azo-sans-web, arial, helvetica, sans-serif;
  --fontWeight: var(--fontWeightRegular);
}

:root {
  --fontWeightBlack: 900;
  --fontWeightBold: 700;
  --fontWeightExtraBold: 800;
  --fontWeightLight: 300;
  --fontWeightMedium: 500;
  --fontWeightRegular: 400;
  --fontWeightSemiBold: 600;
  --fontWeightThin: 100;
}

.pageWrapper {
  position: relative;
}

html.focus-outline-hidden *:focus {
  outline: none !important;
}

#wpadminbar {
  position: fixed !important;
}

.applyStyles blockquote + * {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.textImage__text__content blockquote + * {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.homeHero__content__text blockquote + * {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.applyStyles .defaultSlider + * {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.textImage__text__content .defaultSlider + * {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.homeHero__content__text .defaultSlider + * {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.applyStyles p {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--textFontFamily, var(--baseFontFamily, var(--fontFamily, Arial, sans-serif)));
  font-size: 0.875rem;
  font-size: var(--textSize, 1rem);
  color: #404040;
  color: var(--textColor, #000);
  font-weight: 300;
  font-weight: var(--textFontWeight, 400);
  line-height: 1.86;
  line-height: var(--textLineHeight, 1.2);
  letter-spacing: 0;
  letter-spacing: var(--textLetterSpacing, 0);
  text-align: initial;
}

.textImage__text__content p {
  font-family: Mulish, arial, helvetica, sans-serif;
  font-family: var(--textFontFamily, var(--baseFontFamily, var(--fontFamily, Arial, sans-serif)));
  font-size: 0.875rem;
  font-size: var(--textSize, 1rem);
  color: #404040;
  color: var(--textColor, #000);
  font-weight: 300;
  font-weight: var(--textFontWeight, 400);
  line-height: 1.4;
  line-height: var(--textLineHeight, 1.2);
  letter-spacing: 0;
  letter-spacing: var(--textLetterSpacing, 0);
  text-align: initial;
}

.homeHero__content__text p {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--textFontFamily, var(--baseFontFamily, var(--fontFamily, Arial, sans-serif)));
  font-size: 0.875rem;
  font-size: var(--textSize, 1rem);
  color: #000;
  color: var(--textColor, #000);
  font-weight: 300;
  font-weight: var(--textFontWeight, 400);
  line-height: 1.6;
  line-height: var(--textLineHeight, 1.2);
  letter-spacing: 0;
  letter-spacing: var(--textLetterSpacing, 0);
  text-align: initial;
}

.applyStyles p + * {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.textImage__text__content p + * {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.homeHero__content__text p + * {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.applyStyles p + h1 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.textImage__text__content p + h1 {
  margin-top: undefined;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.homeHero__content__text p + h1 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.applyStyles p + h2 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.textImage__text__content p + h2 {
  margin-top: undefined;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.homeHero__content__text p + h2 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.applyStyles p + h3 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.textImage__text__content p + h3 {
  margin-top: undefined;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.homeHero__content__text p + h3 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.applyStyles p + h4 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.textImage__text__content p + h4 {
  margin-top: undefined;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.homeHero__content__text p + h4 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.applyStyles p + h5 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.textImage__text__content p + h5 {
  margin-top: undefined;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.homeHero__content__text p + h5 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.applyStyles p + h6 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.textImage__text__content p + h6 {
  margin-top: undefined;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.homeHero__content__text p + h6 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.applyStyles p + p > img {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.textImage__text__content p + p > img {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.homeHero__content__text p + p > img {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.applyStyles p a {
  font-size: 0.875rem;
  font-size: var(--textSize, 1rem);
}

.textImage__text__content p a {
  font-size: 0.875rem;
  font-size: var(--textSize, 1rem);
}

.homeHero__content__text p a {
  font-size: 0.875rem;
  font-size: var(--textSize, 1rem);
}

.applyStyles p img, .textImage__text__content p img, .homeHero__content__text p img {
  margin-top: 0 !important;
}

.applyStyles ul:not(.dontApplyStyle) {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--textFontFamily, var(--baseFontFamily, var(--fontFamily, Arial, sans-serif)));
  font-size: 0.875rem;
  font-size: var(--textSize, 1rem);
  color: #404040;
  color: var(--textColor, #000);
  font-weight: 300;
  font-weight: var(--textFontWeight, 400);
  line-height: 1.86;
  line-height: var(--textLineHeight, 1.2);
  letter-spacing: 0px;
  letter-spacing: var(--textLetterSpacing, 0px);
  text-align: justify;
  text-align: var(--textAlign, justify);
}

.textImage__text__content ul:not(.dontApplyStyle) {
  font-family: Mulish, arial, helvetica, sans-serif;
  font-family: var(--textFontFamily, var(--baseFontFamily, var(--fontFamily, Arial, sans-serif)));
  font-size: 0.875rem;
  font-size: var(--textSize, 1rem);
  color: #404040;
  color: var(--textColor, #000);
  font-weight: 300;
  font-weight: var(--textFontWeight, 400);
  line-height: 1.4;
  line-height: var(--textLineHeight, 1.2);
  letter-spacing: 0px;
  letter-spacing: var(--textLetterSpacing, 0px);
  text-align: left;
  text-align: var(--textAlign, justify);
}

.homeHero__content__text ul:not(.dontApplyStyle) {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--textFontFamily, var(--baseFontFamily, var(--fontFamily, Arial, sans-serif)));
  font-size: 0.875rem;
  font-size: var(--textSize, 1rem);
  color: #000;
  color: var(--textColor, #000);
  font-weight: 300;
  font-weight: var(--textFontWeight, 400);
  line-height: 1.6;
  line-height: var(--textLineHeight, 1.2);
  letter-spacing: 0px;
  letter-spacing: var(--textLetterSpacing, 0px);
  text-align: left;
  text-align: var(--textAlign, justify);
}

.applyStyles ul:not(.dontApplyStyle) + p {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.textImage__text__content ul:not(.dontApplyStyle) + p {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.homeHero__content__text ul:not(.dontApplyStyle) + p {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.applyStyles ul:not(.dontApplyStyle) + ul {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.textImage__text__content ul:not(.dontApplyStyle) + ul {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.homeHero__content__text ul:not(.dontApplyStyle) + ul {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.applyStyles ul:not(.dontApplyStyle) + ol {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.textImage__text__content ul:not(.dontApplyStyle) + ol {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.homeHero__content__text ul:not(.dontApplyStyle) + ol {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.applyStyles ul:not(.dontApplyStyle) + h1 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.textImage__text__content ul:not(.dontApplyStyle) + h1 {
  margin-top: undefined;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.homeHero__content__text ul:not(.dontApplyStyle) + h1 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.applyStyles ul:not(.dontApplyStyle) + h2 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.textImage__text__content ul:not(.dontApplyStyle) + h2 {
  margin-top: undefined;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.homeHero__content__text ul:not(.dontApplyStyle) + h2 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.applyStyles ul:not(.dontApplyStyle) + h3 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.textImage__text__content ul:not(.dontApplyStyle) + h3 {
  margin-top: undefined;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.homeHero__content__text ul:not(.dontApplyStyle) + h3 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.applyStyles ul:not(.dontApplyStyle) + h4 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.textImage__text__content ul:not(.dontApplyStyle) + h4 {
  margin-top: undefined;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.homeHero__content__text ul:not(.dontApplyStyle) + h4 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.applyStyles ul:not(.dontApplyStyle) + h5 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.textImage__text__content ul:not(.dontApplyStyle) + h5 {
  margin-top: undefined;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.homeHero__content__text ul:not(.dontApplyStyle) + h5 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.applyStyles ul:not(.dontApplyStyle) + h6 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.textImage__text__content ul:not(.dontApplyStyle) + h6 {
  margin-top: undefined;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.homeHero__content__text ul:not(.dontApplyStyle) + h6 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.applyStyles ul:not(.dontApplyStyle) + p > img {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.textImage__text__content ul:not(.dontApplyStyle) + p > img {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.homeHero__content__text ul:not(.dontApplyStyle) + p > img {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.applyStyles ul:not(.dontApplyStyle) a {
  font-size: 0.875rem;
  font-size: var(--textSize, 1rem);
}

.textImage__text__content ul:not(.dontApplyStyle) a {
  font-size: 0.875rem;
  font-size: var(--textSize, 1rem);
}

.homeHero__content__text ul:not(.dontApplyStyle) a {
  font-size: 0.875rem;
  font-size: var(--textSize, 1rem);
}

.applyStyles ol:not(.dontApplyStyle) {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--textFontFamily, var(--baseFontFamily, var(--fontFamily, Arial, sans-serif)));
  font-size: 0.875rem;
  font-size: var(--textSize, 1rem);
  color: #404040;
  color: var(--textColor, #000);
  font-weight: 300;
  font-weight: var(--textFontWeight, 400);
  line-height: 1.86;
  line-height: var(--textLineHeight, 1.2);
  letter-spacing: 0px;
  letter-spacing: var(--textLetterSpacing, 0px);
  text-align: justify;
  text-align: var(--textAlign, justify);
}

.textImage__text__content ol:not(.dontApplyStyle) {
  font-family: Mulish, arial, helvetica, sans-serif;
  font-family: var(--textFontFamily, var(--baseFontFamily, var(--fontFamily, Arial, sans-serif)));
  font-size: 0.875rem;
  font-size: var(--textSize, 1rem);
  color: #404040;
  color: var(--textColor, #000);
  font-weight: 300;
  font-weight: var(--textFontWeight, 400);
  line-height: 1.4;
  line-height: var(--textLineHeight, 1.2);
  letter-spacing: 0px;
  letter-spacing: var(--textLetterSpacing, 0px);
  text-align: left;
  text-align: var(--textAlign, justify);
}

.homeHero__content__text ol:not(.dontApplyStyle) {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--textFontFamily, var(--baseFontFamily, var(--fontFamily, Arial, sans-serif)));
  font-size: 0.875rem;
  font-size: var(--textSize, 1rem);
  color: #000;
  color: var(--textColor, #000);
  font-weight: 300;
  font-weight: var(--textFontWeight, 400);
  line-height: 1.6;
  line-height: var(--textLineHeight, 1.2);
  letter-spacing: 0px;
  letter-spacing: var(--textLetterSpacing, 0px);
  text-align: left;
  text-align: var(--textAlign, justify);
}

.applyStyles ol:not(.dontApplyStyle) + p {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.textImage__text__content ol:not(.dontApplyStyle) + p {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.homeHero__content__text ol:not(.dontApplyStyle) + p {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.applyStyles ol:not(.dontApplyStyle) + ul {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.textImage__text__content ol:not(.dontApplyStyle) + ul {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.homeHero__content__text ol:not(.dontApplyStyle) + ul {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.applyStyles ol:not(.dontApplyStyle) + ol {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.textImage__text__content ol:not(.dontApplyStyle) + ol {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.homeHero__content__text ol:not(.dontApplyStyle) + ol {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.applyStyles ol:not(.dontApplyStyle) + h1 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.textImage__text__content ol:not(.dontApplyStyle) + h1 {
  margin-top: undefined;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.homeHero__content__text ol:not(.dontApplyStyle) + h1 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.applyStyles ol:not(.dontApplyStyle) + h2 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.textImage__text__content ol:not(.dontApplyStyle) + h2 {
  margin-top: undefined;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.homeHero__content__text ol:not(.dontApplyStyle) + h2 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.applyStyles ol:not(.dontApplyStyle) + h3 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.textImage__text__content ol:not(.dontApplyStyle) + h3 {
  margin-top: undefined;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.homeHero__content__text ol:not(.dontApplyStyle) + h3 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.applyStyles ol:not(.dontApplyStyle) + h4 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.textImage__text__content ol:not(.dontApplyStyle) + h4 {
  margin-top: undefined;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.homeHero__content__text ol:not(.dontApplyStyle) + h4 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.applyStyles ol:not(.dontApplyStyle) + h5 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.textImage__text__content ol:not(.dontApplyStyle) + h5 {
  margin-top: undefined;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.homeHero__content__text ol:not(.dontApplyStyle) + h5 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.applyStyles ol:not(.dontApplyStyle) + h6 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.textImage__text__content ol:not(.dontApplyStyle) + h6 {
  margin-top: undefined;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.homeHero__content__text ol:not(.dontApplyStyle) + h6 {
  margin-top: 2.1875rem;
  margin-top: var(--headingMarginTop, 2.1875rem);
}

.applyStyles ol:not(.dontApplyStyle) + p > img {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.textImage__text__content ol:not(.dontApplyStyle) + p > img {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.homeHero__content__text ol:not(.dontApplyStyle) + p > img {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.applyStyles ol:not(.dontApplyStyle) a {
  font-size: 0.875rem;
  font-size: var(--textSize, 1rem);
}

.textImage__text__content ol:not(.dontApplyStyle) a {
  font-size: 0.875rem;
  font-size: var(--textSize, 1rem);
}

.homeHero__content__text ol:not(.dontApplyStyle) a {
  font-size: 0.875rem;
  font-size: var(--textSize, 1rem);
}

.applyStyles h1, .textImage__text__content h1, .homeHero__content__text h1,
.applyStyles h2,
.textImage__text__content h2,
.homeHero__content__text h2,
.applyStyles h3,
.textImage__text__content h3,
.homeHero__content__text h3,
.applyStyles h4,
.textImage__text__content h4,
.homeHero__content__text h4,
.applyStyles h5,
.textImage__text__content h5,
.homeHero__content__text h5,
.applyStyles h6,
.textImage__text__content h6,
.homeHero__content__text h6 {
  display: block;
}

.applyStyles h1 + h1, .textImage__text__content h1 + h1, .homeHero__content__text h1 + h1, .applyStyles h2 + h1, .textImage__text__content h2 + h1, .homeHero__content__text h2 + h1, .applyStyles h3 + h1, .textImage__text__content h3 + h1, .homeHero__content__text h3 + h1, .applyStyles h4 + h1, .textImage__text__content h4 + h1, .homeHero__content__text h4 + h1, .applyStyles h5 + h1, .textImage__text__content h5 + h1, .homeHero__content__text h5 + h1, .applyStyles h6 + h1, .textImage__text__content h6 + h1, .homeHero__content__text h6 + h1,
.applyStyles h1 + h2,
.textImage__text__content h1 + h2,
.homeHero__content__text h1 + h2,
.applyStyles h2 + h2,
.textImage__text__content h2 + h2,
.homeHero__content__text h2 + h2,
.applyStyles h3 + h2,
.textImage__text__content h3 + h2,
.homeHero__content__text h3 + h2,
.applyStyles h4 + h2,
.textImage__text__content h4 + h2,
.homeHero__content__text h4 + h2,
.applyStyles h5 + h2,
.textImage__text__content h5 + h2,
.homeHero__content__text h5 + h2,
.applyStyles h6 + h2,
.textImage__text__content h6 + h2,
.homeHero__content__text h6 + h2,
.applyStyles h1 + h3,
.textImage__text__content h1 + h3,
.homeHero__content__text h1 + h3,
.applyStyles h2 + h3,
.textImage__text__content h2 + h3,
.homeHero__content__text h2 + h3,
.applyStyles h3 + h3,
.textImage__text__content h3 + h3,
.homeHero__content__text h3 + h3,
.applyStyles h4 + h3,
.textImage__text__content h4 + h3,
.homeHero__content__text h4 + h3,
.applyStyles h5 + h3,
.textImage__text__content h5 + h3,
.homeHero__content__text h5 + h3,
.applyStyles h6 + h3,
.textImage__text__content h6 + h3,
.homeHero__content__text h6 + h3,
.applyStyles h1 + h4,
.textImage__text__content h1 + h4,
.homeHero__content__text h1 + h4,
.applyStyles h2 + h4,
.textImage__text__content h2 + h4,
.homeHero__content__text h2 + h4,
.applyStyles h3 + h4,
.textImage__text__content h3 + h4,
.homeHero__content__text h3 + h4,
.applyStyles h4 + h4,
.textImage__text__content h4 + h4,
.homeHero__content__text h4 + h4,
.applyStyles h5 + h4,
.textImage__text__content h5 + h4,
.homeHero__content__text h5 + h4,
.applyStyles h6 + h4,
.textImage__text__content h6 + h4,
.homeHero__content__text h6 + h4,
.applyStyles h1 + h5,
.textImage__text__content h1 + h5,
.homeHero__content__text h1 + h5,
.applyStyles h2 + h5,
.textImage__text__content h2 + h5,
.homeHero__content__text h2 + h5,
.applyStyles h3 + h5,
.textImage__text__content h3 + h5,
.homeHero__content__text h3 + h5,
.applyStyles h4 + h5,
.textImage__text__content h4 + h5,
.homeHero__content__text h4 + h5,
.applyStyles h5 + h5,
.textImage__text__content h5 + h5,
.homeHero__content__text h5 + h5,
.applyStyles h6 + h5,
.textImage__text__content h6 + h5,
.homeHero__content__text h6 + h5,
.applyStyles h1 + h6,
.textImage__text__content h1 + h6,
.homeHero__content__text h1 + h6,
.applyStyles h2 + h6,
.textImage__text__content h2 + h6,
.homeHero__content__text h2 + h6,
.applyStyles h3 + h6,
.textImage__text__content h3 + h6,
.homeHero__content__text h3 + h6,
.applyStyles h4 + h6,
.textImage__text__content h4 + h6,
.homeHero__content__text h4 + h6,
.applyStyles h5 + h6,
.textImage__text__content h5 + h6,
.homeHero__content__text h5 + h6,
.applyStyles h6 + h6,
.textImage__text__content h6 + h6,
.homeHero__content__text h6 + h6 {
  display: block;
  margin-top: 0;
}

ul.dontApplyStyle > li + li {
  margin-top: undefined;
  margin-top: var(--text-base-margin);
}

ol.dontApplyStyle > li + li {
  margin-top: undefined;
  margin-top: var(--text-base-margin);
}

@media only screen and (max-width: 767px) {
  html {
    font-size: 115%;
  }
}

@media only screen and (min-width: 1024px) {
  :root {
    --sectionMarginTop: 4.6875rem;
  }
}

:root {
  --headerBottomActionsGap: 1.25rem;
  --headerMenuAccentColor: #000;
  --headerMenuItemColor: var(--dustyGrayColor);
  --headerMenuItemFontSize: 0.9375rem;
  --headerMenuItemGap: 0.625rem;
  --headerMenuItemItemFontWeight: var(--fontWeightMedium);
  --headerMenu__simpleMenuBorderColor: var(--whiteRockColor);
  --headerMenu__simpleMenuBorderWidth: 0.375rem;
  --headerMenu__simpleMenuItemBackgroundColor: var(--cararraColor);
  --headerMenu__simpleMenuItemPaddingBottom: 0.625rem;
  --headerMenu__simpleMenuItemPaddingLeft: 0.9375rem;
  --headerMenu__simpleMenuItemPaddingRight: 0.9375rem;
  --headerMenu__simpleMenuItemPaddingTop: 0.625rem;
  --headerMenu__simpleMenuPaddingBottom: 0px;
  --headerMenu__simpleMenuPaddingLeft: 0px;
  --headerMenu__simpleMenuPaddingRight: 0px;
  --headerMenu__simpleMenuPaddingTop: 0px;
  --headerTopAddressTextTransform: none;
  --headerTopBackgroundColor: var(--corduroyColor);
  --headerTopColor: #FFF;
  --headerTopContactFontWeight: var(--fontWeightBold);
  --headerTopContactMarginLeft: 2.1875rem;
  --headerTopFontSize: 0.75rem;
  --headerTopFontWeight: var(--fontWeightRegular);
  --headerTopHeight: 2.6875rem;
  --headerTopLetterSpacing: 0.06em;
  --headerTopPhoneFontSize: 0.875rem;
  --headerTopPhoneFontWeight: var(--fontWeightBold);
  --headerTopPhoneLetterSpacing: 0.06em;
  --headerTopSocialsTop: 2px;
  --headerTopTextTransform: uppercase;
  --headerZindex: 1007;
  --responsiveMenuAccentColor: #000;
  --responsiveMenuBackgroundColor: rgba(255, 255, 255, 0.95);
  --responsiveMenuBorderLeftColor: var(--corduroyColor);
  --responsiveMenuBorderLeftWidth: 0.375rem;
  --responsiveMenuBoxShadow: 0 4px 4px rgba(0, 0, 0, 0.15);
  --responsiveMenuColor: var(--dustyGrayColor);
  --responsiveMenuDropdownToggleColor: var(--dustyGrayColor);
  --responsiveMenuDropdownToggleMinWidth: 15px;
  --responsiveMenuFirstLevelGap: 0.625rem;
  --responsiveMenuFontSize: 1.0625rem;
  --responsiveMenuFontWeight: var(--fontWeightMedium);
  --responsiveMenuLetterSpacing: 0.03em;
  --responsiveMenuMaxHeight: 10vh;
  --responsiveMenuOverlayBackgroundColor: rgba(0, 0, 0, 0.4);
  --responsiveMenuOverlayZindex: 1005;
  --responsiveMenuPaddingBottom: 1.25rem;
  --responsiveMenuPaddingTop: 1.25rem;
  --responsiveMenuSubMenuGapBetweenItems: 0.9375rem;
  --responsiveMenuSubMenuGapBetweenItemsInner: 0.9375rem;
  --responsiveMenuSubMenuPaddingLeft: 1.5625rem;
  --responsiveMenuSubMenuTitleDropdownMenuMarginTop: 0.9375rem;
  --responsiveMenuZindex: 1006;
  --searchBarBackgroundColor: var(--corduroyColor);
  --searchBarOverlayBackgroundColor: rgba(86, 98, 95, 0.8);
  --searchBarOverlayZindex: 1003;
  --searchBarPaddingBottom: 1.875rem;
  --searchBarPaddingTop: 1.5625rem;
  --searchBarZindex: 1004;
  --searchFormInputBorderHeight: 2px;
  --searchFormInputColor: #FFF;
  --searchFormInputMarginLeft: 0.625rem;
  --searchFormInputMarginRight: 0.625rem;
  --searchFormInputPaddingBottom: 0.125rem;
}

@media only screen and (min-width: 1250px) {
  :root {
    --headerBottomActionsGap: 2.1875rem;
    --headerMenuItemGap: 2.1875rem;
  }
}

:root {
  --callToActionsBackgroundColor: var(--corduroyColor);
  --callToActionsHeight: 2.8125rem;
  --callToActionsZindex: 1002;
}

:root {
  --materialInputBorderActiveColor: var(--mineShaft2Color);
  --materialInputBorderActiveHeight: 2px;
  --materialInputBorderColor: var(--mineShaft2Color);
  --materialInputColor: var(--mineShaft2Color);
  --materialInputFontSize: 0.9375rem;
  --materialInputFontWeight: var(--fontWeightLight);
  --materialInputLabelActiveColor: #777;
  --materialInputLabelActiveScale: .8;
  --materialInputLabelColor: var(--mineShaft2Color);
  --materialInputLabelFontSize: 0.9375rem;
  --materialInputLabelFontWeight: var(--fontWeightLight);
  --materialInputLabelLetterSpacing: 0.03em;
  --materialInputLetterSpacing: 0.03em;
}

:root {
  --commentFormTitle: meno-banner, georgia, serif;
  --commentFormTitleBorderColor: var(--mineShaft2Color);
  --commentFormTitleColor: var(--mineShaft2Color);
  --commentsBlockTitleFontFamily: meno-banner, georgia, serif;
}

:root {
  --footerAddressNameColor: #000;
  --footerAddressNameFontSize: 0.875rem;
  --footerAddressNameFontWeight: var(--fontWeightMedium);
  --footerAddressNameLineHeight: 1.67;
  --footerAddressPhoneColor: #000;
  --footerAddressPhoneFontSize: 0.875rem;
  --footerAddressPhoneFontWeight: var(--fontWeightBold);
  --footerAddressPhoneLineHeight: 1.43;
  --footerAddressesBorderColor: #E5E5E5;
  --footerAddressesGap: 0.625rem;
  --footerAddressesPlacesGap: 0.125rem;
  --footerBottomMenuColor: var(--mortarColor);
  --footerBottomMenuFontSize: 0.8125rem;
  --footerBottomMenuFontWeight: var(--fontWeightMedium);
  --footerBottomMenuLetterSpacing: 0.05em;
  --footerMenuBackgroundColor: var(--duneColor);
  --footerMenuColor: #FFF;
  --footerMenuFontSize: 0.75rem;
  --footerMenuFontWeight: var(--fontWeightMedium);
  --footerMenuLetterSpacing: 0.1em;
  --footerMenuLineHeight: 2.08;
  --footerMenuTextTransform: uppercase;
}

@media only screen and (min-width: 768px) {
  :root {
    --footerMenuFontSize: 0.875rem;
    --footerMenuLineHeight: 2.14;
    --footerMenuTextTransform: none;
  }
}

@media only screen and (min-width: 1024px) {
  :root {
    --footerAddressNameColor: var(--mineShaft2Color);
    --footerAddressNameFontWeight: var(--fontWeightRegular);
    --footerAddressNameLetterSpacing: 0px;
    --footerAddressNameLineHeight: 1.25;
    --footerAddressNameTextTransform: uppercase;
    --footerAddressPhoneColor: var(--mineShaft2Color);
    --footerAddressPhoneLetterSpacing: 0;
    --footerAddressPhoneLineHeight: 1.28;
  }
}

:root {
  --doctolibButtonBackgroundColor: var(--whiteRockColor);
  --doctolibButtonFontSize: 0.75rem;
  --doctolibButtonFontWeight: var(--fontWeightBold);
  --doctolibButtonLineHeight: 1.25;
  --doctolibButtonLogoMarginLeft: 0.625rem;
  --doctolibButtonPaddingBottom: 0.8125rem;
  --doctolibButtonPaddingLeft: 1.5rem;
  --doctolibButtonPaddingRight: 1.5rem;
  --doctolibButtonPaddingTop: 0.8125rem;
  --doctolibButtonTextColor: #000;
  --doctolibButtonTextTransform: uppercase;
}

:root {
  --backToTopActiveBackgroundColor: var(--whiteRockColor);
  --backToTopBackgroundColor: var(--corduroyColor);
  --backToTopBottom: -webkit-calc(35px + var(--callToActionsHeight, 0px));
  --backToTopBottom: calc(35px + var(--callToActionsHeight, 0px));
  --backToTopExtraOffset: 15px;
  --backToTopSvgTransform: rotate(-45deg);
  --backToTopTransformExtra: rotate(45deg);
}

@media only screen and (min-width: 1100px) {
  :root {
    --backToTopBottom: 35px;
  }
}

:root {
  --cookieColor: var(--corduroyColor);
}

:root {
  --postAccentColor: var(--corduroyColor);
  --postCategoryColor: var(--corduroyColor);
  --postCategoryFontSize: 0.8125rem;
  --postCategoryFontWeight: var(--fontWeightBold);
  --postContentPaddingBottom: 0.9375rem;
  --postContentPaddingLeft: 1.25rem;
  --postContentPaddingRight: 1.25rem;
  --postContentPaddingTop: 1.25rem;
  --postDateColor: var(--silverChalice2Color);
  --postDateFontSize: 0.8125rem;
  --postExcerptColor: var(--tundoraColor);
  --postExcerptFontSize: 0.875rem;
  --postExcerptFontWeight: var(--fontWeightLight);
  --postExcerptLineHeight: 1.5;
  --postReadMoreArrowColor: var(--corduroyColor);
  --postReadMoreMarginTop: 1.5625rem;
  --postReadMoreTextColor: var(--corduroyColor);
  --postReadMoreTextFontFamily: Mulish, arial, helvetica, sans-serif;
  --postReadMoreTextFontSize: 0.9375rem;
  --postReadMoreTextMarginLeft: 1.25rem;
  --postTitleColor: var(--codGrayColor);
  --postTitleFontFamily: meno-banner, georgia, serif;
  --postTitleMarginBottom: 0.54167em;
  --postTitleMarginTop: 0.625em;
}

:root {
  --archivePageHeaderDescriptionColor: var(--tundoraColor);
  --archivePageHeaderDescriptionFontSize: 0.875rem;
  --archivePageHeaderDescriptionLineHeight: 1.64;
  --archivePageHeaderTitleFontFamily: meno-banner, georgia, serif;
  --archivePagePostsColumnGap: 2.1875rem;
  --archivePagePostsMinWidth: 18.75rem;
  --archivePagePostsRowGap: 3.125rem;
  --archivePageSidebarBorderColor: var(--codGray3Color);
  --archivePageSidebarCategoryActiveFontWeight: var(--fontWeightBold);
  --archivePageSidebarCategoryColor: var(--duneColor);
  --archivePageSidebarCategoryFontSize: 0.875rem;
  --archivePageSidebarCategoryFontWeight: var(--fontWeightMedium);
  --archivePageSidebarCategoryLetterSpacing: 0.1em;
  --archivePageSidebarTitleColor: var(--duneColor);
  --archivePageSidebarTitleFontWeight: var(--fontWeightBold);
  --archivePageSidebarTitleLetterSpacing: 0.1em;
  --archivePageSidebarTitleTextTransform: uppercase;
}

@media only screen and (min-width: 1024px) {
  :root {
    --archivePagePostsColumnGap: 2.5rem;
    --archivePagePostsRowGap: 4.6875rem;
  }
}

@media only screen and (min-width: 1500px) {
  :root {
    --archivePagePostsColumnGap: 3.125rem;
    --archivePagePostsRowGap: 6.25rem;
  }
}

:root {
  --paginationAccentColor: var(--whiteRockColor);
  --paginationBorderColor: var(--whiteRockColor);
  --paginationCurrentPageFontSize: 1.25rem;
  --paginationCurrentPageFontWeight: var(--fontWeightBold);
  --paginationPageColor: var(--tundoraColor);
  --paginationPageFontSize: 0.8125rem;
  --paginationPageLetterSpacing: 0.07em;
  --paginationPagesGap: 0.5rem;
}

@media only screen and (min-width: 768px) {
  :root {
    --paginationPagesGap: 0.9375rem;
  }
}

:root {
  --textColor: var(--tundoraColor);
  --textFontWeight: var(--fontWeightLight);
  --textLineHeight: 1.86;
  --textSize: 0.875rem;
}

.modal-cookie {
  display: none;
  width: 100%;
  height: 100%;
  position: fixed;
  z-index: 9999;
  z-index: var(--zIndexCookie, 9999);
  top: 0;
  left: 0;
  background-color: rgba(255, 255, 255, 0.8);
}

.container-cookies-popup {
  width: 75%;
  max-width: 420px;
  position: fixed;
  top: 50%;
  right: auto;
  bottom: auto;
  left: 50%;
  padding: 30px;
  background-color: #FFF;
  -webkit-box-shadow: 0 0 3px #CCC;
  box-shadow: 0 0 3px #CCC;
  border-top: 4px solid #000;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.modal-overlay {
  display: none;
  position: absolute;
  z-index: 9999;
  z-index: var(--zIndexCookie, 9999);
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(255, 255, 255, 0.7);
}

#cookie-notice {
  display: none;
  width: -webkit-calc(100% - 30px);
  width: calc(100% - 30px);
  max-width: 33.125rem;
  max-width: var(--cookieNoticeMaxWidth, 33.125rem);
  position: fixed;
  z-index: 999;
  z-index: var(-zIndexCookieNotice, 999);
  bottom: 15px;
  bottom: var(--cookieNoticeBottom, 15px);
  left: 15px;
  left: var(--cookieNoticeLeft, 15px);
  text-align: left !important;
  border: 4px solid #56625F;
  border: var(--cookieNoticeBorderWidth, 4px) solid var(--cookieColor, #F00);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-top: 0.9375rem;
  padding-top: var(--cookieNoticePaddingTop, 0.9375rem);
  padding-bottom: 0.9375rem;
  padding-bottom: var(--cookieNoticePaddingBottom, 0.9375rem);
  background-color: #FFF;
  background-color: var(--cookieNoticeBackgroundColor, #FFF);
}

#cookie-notice .container {
  width: 100%;
  max-width: 100%;
  margin: auto;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-right: 0.9375rem;
  padding-right: var(--cookieContainerPaddingRight, 0.9375rem);
  padding-left: 0.9375rem;
  padding-left: var(--cookieContainerPaddingLeft, 0.9375rem);
}

.container-cookies-popup p {
  line-height: 18px;
  letter-spacing: 0.5px;
  margin-bottom: 10px;
  padding-bottom: 0;
}

#cookie-notice p {
  letter-spacing: 0.5px;
  padding-bottom: 0;
}

.cookie-notice-h2 {
  font-size: 13px !important;
  color: #000 !important;
  font-weight: bold !important;
  letter-spacing: 1px !important;
  text-transform: uppercase;
  padding-bottom: 7px !important;
}

.cookie-notice-divider {
  display: block;
  width: 29px;
  height: 2px;
  margin-top: 5px;
  background-color: #000;
}

.cookie-notice-paragraph {
  font-size: 13px !important;
  color: #000 !important;
  padding-bottom: 12px !important;
}

.cookie-notice-close {
  display: block;
  width: 20px;
  height: 20px;
  position: absolute;
  z-index: 10;
  top: 10px;
  right: 10px;
}

.cookie-notice-close::before {
  content: '';
  display: block;
  width: 20px;
  height: 2px;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  background-color: #56625F;
  background-color: var(--cookieColor, #F00);
}

.cookie-notice-close::after {
  content: '';
  display: block;
  width: 20px;
  height: 2px;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  background-color: #56625F;
  background-color: var(--cookieColor, #F00);
}

.cookie-notice-close::before {
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.cookie-notice-close::after {
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.cookie-notice-close i {
  font-size: 18px;
  color: #56625F;
  color: var(--cookieColor, #F00);
}

.cookie-notice-h2-regular {
  font-size: 12px !important;
  color: #000 !important;
  font-weight: 300 !important;
  letter-spacing: 1px;
  text-transform: uppercase;
  margin: 0;
}

.cookie-notice-h2-regular a {
  display: inline-block;
  font-size: 13px !important;
  color: #56625F !important;
  color: var(--cookieColor, #F00) !important;
  font-weight: bold !important;
  line-height: 13px;
  letter-spacing: 0.5px !important;
  text-transform: uppercase;
  border: 2px solid #56625F !important;
  border: 2px solid var(--cookieColor, #F00) !important;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  padding: 8px 15px;
  text-decoration: none;
}

.cookie-notice-h2-regular a:hover {
  text-decoration: underline;
}

.modal-cookie-paragraph {
  font-size: 12px;
  color: #000;
  font-weight: bold;
}

.modal-cookie-paragraph-bold {
  font-size: 13px;
  color: #000;
  font-weight: 300 !important;
}

.modal-cookie-paragraph-label {
  font-size: 13px;
  color: #56625F;
  color: var(--cookieColor, #F00);
  font-weight: bold;
}

.modal-cookie-button-div {
  text-align: right;
  margin-top: 20px;
}

.modal-cookie-button {
  font-size: 12px;
  color: #FFF !important;
  text-transform: uppercase;
  border: 1px solid #56625F !important;
  border: 1px solid var(--cookieColor, #F00) !important;
  -webkit-border-radius: 0;
  border-radius: 0;
  padding: 10px 15px;
  background-color: #56625F;
  background-color: var(--cookieColor, #F00);
  text-decoration: none !important;
}

.modal-cookie-button:hover {
  color: #56625F !important;
  color: var(--cookieColor, #F00) !important;
  background-color: #FFF;
}

.cookies-popup--radiogroup {
  padding: 16px 0 25px;
}

.cookies-popup--content label {
  display: inline-block;
  position: relative;
  cursor: pointer;
  font-size: 13px;
  line-height: 22px;
  letter-spacing: 0.5px;
  padding-left: 22px;
}

.cookies-popup--content label span {
  display: inline-block;
  width: 12px;
  height: 12px;
  position: absolute;
  bottom: 4px;
  left: 0;
  margin-right: 10px;
  border: 1px solid #BBBDBE;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  background-color: #FFF;
}

.cookies-popup--content input[type=radio]:checked + label span::before {
  content: '';
  width: 8px;
  height: 8px;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  background-color: #56625F;
  background-color: var(--cookieColor, #F00);
}

.cookies-popup--content input {
  margin: 0;
}

.cookies-popup--radiogroup > div {
  display: block;
  margin-bottom: 5px;
  vertical-align: middle;
}

.cookies-popup--radiogroup input[type=radio] {
  display: none;
}

@media (max-width: 920px) {
  #cookie-notice .container h2:last-child {
    letter-spacing: 0 !important;
  }
}

@media (max-width: 767px) {
  #cookie-notice {
    width: -webkit-calc(100% - 20px);
    width: calc(100% - 20px);
    bottom: 10px;
    left: 10px;
  }
  .cookie-notice-close {
    top: 5px;
    right: 10px;
  }
}

.screenReaderOnly {
  width: 1px;
  height: 1px;
  position: absolute;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  margin: -1px;
  padding: 0;
  border-width: 0;
  border-style: initial;
  border-color: initial;
  -webkit-border-image: initial;
  -o-border-image: initial;
  border-image: initial;
}

.screenReaderOnly--focusable:focus,
.screenReaderOnly--focusable:active {
  width: auto;
  height: auto;
  position: static;
  overflow: visible;
  clip: auto;
  margin: 0;
}

.skipToContent:focus {
  position: absolute;
  z-index: 10000;
  top: 3px;
  left: 3px;
  font-size: 18px;
  line-height: 64px;
  padding: 0 24px;
  background-color: #FFF;
  text-decoration: underline;
}

.admin-bar .skipToContent:focus {
  top: 49px;
}

@media screen and (min-width: 783px) {
  .admin-bar .skipToContent:focus {
    top: 35px;
  }
}

.header {
  position: -webkit-sticky;
  position: sticky;
  z-index: 1007;
  z-index: var(--headerZindex, 100);
  top: 0;
  right: 0;
  left: 0;
  background-color: #FFF;
  background-color: var(--headerBackgroundColor, #FFF);
}

.admin-bar .header {
  top: 46px;
}

@media screen and (min-width: 783px) {
  .admin-bar .header {
    top: 32px;
  }
}

.header__top {
  display: none;
}

@media only screen and (min-width: 1100px) {
  .header__top {
    display: block;
    height: 2.6875rem;
    height: var(--headerTopHeight, 40px);
    position: relative;
    z-index: 1007;
    z-index: var(--headerZindex, 100);
    font-family: azo-sans-web, arial, helvetica, sans-serif;
    font-family: var(--headerTopFontFamily, var(--fontFamily, Arial, sans-serif));
    font-size: 0.75rem;
    font-size: var(--headerTopFontSize, 1rem);
    color: #FFF;
    color: var(--headerTopColor, #FFF);
    font-weight: 400;
    font-weight: var(--headerTopFontWeight, 400);
    line-height: 2.6875rem;
    line-height: var(--headerTopHeight, 40px);
    letter-spacing: 0.06em;
    letter-spacing: var(--headerTopLetterSpacing, 0);
    text-transform: uppercase;
    text-transform: var(--headerTopTextTransform, none);
    background-color: #56625F;
    background-color: var(--headerTopBackgroundColor, #000);
  }
  .header__top:not(.header__top--customTemplate) > div {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding-right: 0;
  }
}

@media only screen and (min-width: 1100px) {
  .header__top:not(.header__top--customTemplate) .header__top__left {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .header__top:not(.header__top--customTemplate) .header__top__left > * + * {
    position: relative;
    margin-left: 1rem;
    margin-left: var(--headerTopLeftGap, 1rem);
    padding-left: 1rem;
    padding-left: var(--headerTopLeftGap, 1rem);
  }
  .header__top:not(.header__top--customTemplate) .header__top__left > * + *::before {
    content: '';
    display: block;
    width: 1px;
    height: -webkit-calc(100% - 20px);
    height: calc(100% - 20px);
    height: -webkit-calc(100% - var(--headerTopLeftDividerRemoveHeight, 20px));
    height: calc(100% - var(--headerTopLeftDividerRemoveHeight, 20px));
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    background-color: #FFF;
    background-color: var(--headerTopLeftDividerColor, var(--headerTopColor, #FFF));
  }
  .header__top:not(.header__top--customTemplate) .header__top__left .socialsListing {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .header__top:not(.header__top--customTemplate) .header__top__left .socialsListing a {
    display: inline-block;
  }
  .header__top:not(.header__top--customTemplate) .header__top__left .socialsListing li {
    display: inline-block;
    position: relative;
    top: 2px;
    top: var(--headerTopSocialsTop, 1px);
  }
  .header__top:not(.header__top--customTemplate) .header__top__left .socialsListing li + li {
    margin-left: 1rem;
    margin-left: var(--headerTopSocialsGap, 1rem);
  }
  .header__top:not(.header__top--customTemplate) .header__top__left .socialsListing li svg path {
    -webkit-transition: fill 0.3s;
    transition: fill 0.3s;
    fill: #FFF;
    fill: var(--headerTopSocialsColor, var(--headerTopColor, #FFF));
  }
  .header__top:not(.header__top--customTemplate) .header__top__left .socialsListing li svg polygon {
    -webkit-transition: fill 0.3s;
    transition: fill 0.3s;
    fill: #FFF;
    fill: var(--headerTopSocialsColor, var(--headerTopColor, #FFF));
  }
  .header__top:not(.header__top--customTemplate) .header__top__left .socialsListing li a:hover svg path {
    fill: #FFF;
    fill: var(--headerTopSocialsActiveColor, var(--headerTopAccentColor, var(--headerTopColor, #FFF)));
  }
  .header__top:not(.header__top--customTemplate) .header__top__left .socialsListing li a:hover svg polygon {
    fill: #FFF;
    fill: var(--headerTopSocialsActiveColor, var(--headerTopAccentColor, var(--headerTopColor, #FFF)));
  }
  .header__top:not(.header__top--customTemplate) .header__top__left .socialsListing li a:focus svg path {
    fill: #FFF;
    fill: var(--headerTopSocialsActiveColor, var(--headerTopAccentColor, var(--headerTopColor, #FFF)));
  }
  .header__top:not(.header__top--customTemplate) .header__top__left .socialsListing li a:focus svg polygon {
    fill: #FFF;
    fill: var(--headerTopSocialsActiveColor, var(--headerTopAccentColor, var(--headerTopColor, #FFF)));
  }
  .header__top:not(.header__top--customTemplate) .header__top__left__addresses {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .header__top:not(.header__top--customTemplate) .header__top__left__addresses > * {
    font-family: azo-sans-web, arial, helvetica, sans-serif;
    font-family: var(--headerTopAddressFontFamily, var(--headerTopFontFamily, var(--fontFamily, Arial, sans-serif)));
    font-size: 0.75rem;
    font-size: var(--headerTopAddressFontSize, var(--headerTopFontSize, 1rem));
    color: #FFF;
    color: var(--headerTopAddressColor, var(--headerTopColor, #FFF));
    font-weight: 400;
    font-weight: var(--headerTopAddressFontWeight, var(--headerTopFontWeight, 400));
    letter-spacing: 0.06em;
    letter-spacing: var(--headerTopAddressLetterSpacing, var(--headerTopLetterSpacing, 0));
    text-transform: none;
    text-transform: var(--headerTopAddressTextTransform, var(--headerTopTextTransform, none));
    -webkit-transition: color 0.3s;
    transition: color 0.3s;
  }
  .header__top:not(.header__top--customTemplate) .header__top__left__addresses > *:hover {
    fill: #FFF;
    fill: var(--headerTopAddressActiveColor, var(--headerTopAccentColor, var(--headerTopColor, #FFF)));
  }
  .header__top:not(.header__top--customTemplate) .header__top__left__addresses > *:focus {
    fill: #FFF;
    fill: var(--headerTopAddressActiveColor, var(--headerTopAccentColor, var(--headerTopColor, #FFF)));
  }
}

@media only screen and (min-width: 1100px) {
  .header__top:not(.header__top--customTemplate) .header__top__right {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .header__top:not(.header__top--customTemplate) .header__top__right__phone {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .header__top:not(.header__top--customTemplate) .header__top__right__phone > a {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    font-family: azo-sans-web, arial, helvetica, sans-serif;
    font-family: var(--headerTopPhoneFontFamily, var(--headerTopFontFamily, var(--fontFamily, Arial, sans-serif)));
    font-size: 0.875rem;
    font-size: var(--headerTopPhoneFontSize, var(--headerTopFontSize, 1rem));
    color: #FFF;
    color: var(--headerTopPhoneColor, var(--headerTopColor, #FFF));
    font-weight: 700;
    font-weight: var(--headerTopPhoneFontWeight, var(--headerTopFontWeight, 400));
    line-height: 1.2;
    line-height: var(--headerTopPhoneLineHeight, 1.2);
    letter-spacing: 0.06em;
    letter-spacing: var(--headerTopPhoneLetterSpacing, var(--headerTopLetterSpacing, 0));
    text-transform: uppercase;
    text-transform: var(--headerTopPhoneTextTransform, var(--headerTopTextTransform, none));
  }
  .header__top:not(.header__top--customTemplate) .header__top__right__phone > a svg {
    margin-right: 1em;
    margin-right: var(--headerTopPhoneLogoMarginRight, 1em);
  }
  .header__top:not(.header__top--customTemplate) .header__top__right__phone > a svg path {
    fill: #FFF;
    fill: var(--headerTopPhoneLogoColor, var(--headerTopColor, #FFF));
  }
  .header__top:not(.header__top--customTemplate) .header__top__right__contact {
    margin-left: 2.1875rem;
    margin-left: var(--headerTopContactMarginLeft, 1.25rem);
  }
  .header__top:not(.header__top--customTemplate) .header__top__right__contact > a {
    position: relative;
    font-family: azo-sans-web, arial, helvetica, sans-serif;
    font-family: var(--headerTopContactFontFamily, var(--headerTopFontFamily, var(--fontFamily, Arial, sans-serif)));
    font-size: 0.75rem;
    font-size: var(--headerTopContactFontSize, var(--headerTopFontSize, 1rem));
    color: #FFF;
    color: var(--headerTopContactColor, var(--headerTopColor, #FFF));
    font-weight: 700;
    font-weight: var(--headerTopContactFontWeight, var(--headerTopFontWeight, 400));
    line-height: 1.2;
    line-height: var(--headerTopContactLineHeight, 1.2);
    letter-spacing: 0.06em;
    letter-spacing: var(--headerTopContactLetterSpacing, var(--headerTopLetterSpacing, 0));
    text-transform: uppercase;
    text-transform: var(--headerTopContactTextTransform, var(--headerTopTextTransform, none));
  }
  .header__top:not(.header__top--customTemplate) .header__top__right__contact > a::after {
    content: '';
    display: block;
    width: 100%;
    height: 1px;
    position: absolute;
    right: 0;
    bottom: -2px;
    left: 0;
    background-color: transparent;
    background-color: var(--headerTopContactLineColor, transparent);
  }
  .header__top:not(.header__top--customTemplate) .header__top__right__contact > a::before {
    content: '';
    display: block;
    width: 0;
    height: 1px;
    position: absolute;
    z-index: 1;
    right: 0;
    bottom: -2px;
    background-color: #FFF;
    background-color: var(--headerTopContactActiveLineColor, var(--headerTopAccentColor, var(--headerTopColor, #FFF)));
    -webkit-transition: width 0.3s cubic-bezier(0.86, 0, 0.07, 1);
    transition: width 0.3s cubic-bezier(0.86, 0, 0.07, 1);
  }
}

@media only screen and (min-width: 1100px) and (hover: hover) {
  .header__top:not(.header__top--customTemplate) .header__top__right__contact > a:hover::before {
    width: 100%;
    right: inherit;
    left: 0;
  }
}

@media only screen and (min-width: 1100px) {
  .header__top:not(.header__top--customTemplate) .header__top__right__doctolib {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    height: 2.6875rem;
    height: var(--headerTopHeight, 40px);
    margin-left: 1.25rem;
    margin-left: var(--headerTopDoctolibMarginLeft, 1.25rem);
  }
}

.header__bottom {
  position: relative;
  z-index: 1005;
  padding-top: 0.625rem;
  padding-top: var(--headerBottomPaddingTop, 0.625rem);
  padding-bottom: 0.625rem;
  padding-bottom: var(--headerBottomPaddingBottom, 0.625rem);
  background-color: #FFF;
  background-color: var(--headerBottomBackgroundColor, var(--headerBackgroundColor, #FFF));
  -webkit-box-shadow: 0 4px 11px rgba(0, 0, 0, 0.07);
  box-shadow: 0 4px 11px rgba(0, 0, 0, 0.07);
  -webkit-box-shadow: var(--headerBoxShadow, 0 4px 11px rgba(0, 0, 0, 0.07));
  box-shadow: var(--headerBoxShadow, 0 4px 11px rgba(0, 0, 0, 0.07));
}

.header__bottom > div {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

.header__bottom__logo {
  display: inline-block;
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  margin-right: auto;
}

.header__bottom__actions {
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  position: relative;
  top: 3px;
  margin-left: 1.25rem;
  margin-left: var(--headerBottomActionsGap, 2.1875rem);
}

@media only screen and (min-width: 1250px) {
  .header__bottom__actions {
  margin-left: 2.1875rem;
  margin-left: var(--headerBottomActionsGap, 2.1875rem);
  }
}

.header__top__left__instagram svg {
  position: relative;
  top: 2px;
}

.header__bottom__menu {
  display: none;
}

@media only screen and (min-width: 1100px) {
  .header__bottom__menu {
    display: block;
  }
  .header__bottom__menu > nav > ul > li {
    display: inline-block;
  }
  .header__bottom__menu > nav > ul li > a span {
    pointer-events: none;
  }
  .header__bottom__menu > nav > ul li > a svg {
    display: none;
    stroke: #000;
    stroke: var(--headerMenuSvgColor, var(--headerMenuColor, #000));
  }
  .header__bottom__menu > nav > ul > li + li {
    padding-left: 0.625rem;
    padding-left: var(--headerMenuItemGap, 2.1875rem);
  }
  @media only screen and (min-width: 1250px) {
    .header__bottom__menu > nav > ul > li + li {
    padding-left: 2.1875rem;
    padding-left: var(--headerMenuItemGap, 2.1875rem);
    }
  }
  .header__bottom__menu > nav > ul > li > a {
    font-family: azo-sans-web, arial, helvetica, sans-serif;
    font-family: var(--headerMenuItemFontFamily, var(--fontFamily, Arial, sans-serif));
    font-size: 0.9375rem;
    font-size: var(--headerMenuItemFontSize, var(--headerMenuFontSize, 1rem));
    color: #9C9C9C;
    color: var(--headerMenuItemColor, var(--headerMenuColor, #000));
    font-weight: 500;
    font-weight: var(--headerMenuItemItemFontWeight, var(--headerMenuFontWeight, 400));
    line-height: 1;
    line-height: var(--headerMenuItemLineHeight, var(--headerMenuLineHeight, 1));
    letter-spacing: 0;
    letter-spacing: var(--headerMenuItemLetterSpacing, var(--headerMenuLetterSpacing, 0));
    text-transform: none;
    text-transform: var(--headerMenuItemTextTransform, var(--headerMenuTextTransform, none));
    -webkit-transition: color 0.3s;
    transition: color 0.3s;
  }
  .header__bottom__menu > nav > ul > li > a:hover {
    color: #000;
    color: var(--headerMenuItemAccentColor, var(--headerMenuAccentColor, #F00));
  }
  .header__bottom__menu > nav > ul > li > a:focus {
    color: #000;
    color: var(--headerMenuItemAccentColor, var(--headerMenuAccentColor, #F00));
  }
  .header__bottom__menu > nav > ul > li > a svg {
    display: none;
  }
  /* stylelint-disable no-duplicate-selectors */
  .header__bottom__menu > nav > ul > li.is-active > a {
    color: #000;
    color: var(--headerMenuItemAccentColor, var(--headerMenuAccentColor, #F00));
  }
  .header__bottom__menu > nav > ul > li.current-menu-item > a {
    color: #000;
    color: var(--headerMenuItemAccentColor, var(--headerMenuAccentColor, #F00));
  }
  .header__bottom__menu > nav > ul > li.current-menu-ancestor > a {
    color: #000;
    color: var(--headerMenuItemAccentColor, var(--headerMenuAccentColor, #F00));
  }
  .header__bottom__menu > nav > ul > li.current-category-ancestor > a {
    color: #000;
    color: var(--headerMenuItemAccentColor, var(--headerMenuAccentColor, #F00));
  }
  .header__bottom__menu > nav > ul > li.current-post-ancestor > a {
    color: #000;
    color: var(--headerMenuItemAccentColor, var(--headerMenuAccentColor, #F00));
  }
  .header__bottom__menu > nav > ul > li.current-page-ancestor > a {
    color: #000;
    color: var(--headerMenuItemAccentColor, var(--headerMenuAccentColor, #F00));
  }
  /* stylelint-enable no-duplicate-selectors */
  .header__bottom__menu > nav > ul li.menu-item-has-children > ul.nav-drop > .nav-drop__wrapper {
    max-height: -webkit-calc(100vh - 0 - (0 + 20px));
    max-height: calc(100vh - 0 - (0 + 20px));
    max-height: -webkit-calc(100vh - var(--headerMenu__simpleMenuTop, 0) - (var(--headerHeight, 0) + 20px));
    max-height: calc(100vh - var(--headerMenu__simpleMenuTop, 0) - (var(--headerHeight, 0) + 20px));
    border-left: 0.375rem solid #ECE4D8;
    border-left: var(--headerMenu__simpleMenuBorderWidth, 0) solid var(--headerMenu__simpleMenuBorderColor, #000);
    overflow-x: hidden;
    overflow-y: auto;
  }
  .header__bottom__menu > nav > ul > li.menu-item-has-children > ul.nav-drop {
    min-width: 11.25rem;
    max-width: 14.375rem;
    max-width: var(--headerMenu__simpleMenuWidth, 14.375rem);
    position: absolute;
    opacity: 0;
    background-color: #FFF;
    -webkit-box-shadow: 3px 9px 14px rgba(0, 0, 0, 0.11);
    box-shadow: 3px 9px 14px rgba(0, 0, 0, 0.11);
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
    pointer-events: none;
  }
  .header__bottom__menu > nav > ul > li.menu-item-has-children > ul.nav-drop li.menu-item-has-children > ul.nav-drop {
    min-width: 11.25rem;
    max-width: 14.375rem;
    max-width: var(--headerMenu__simpleMenuWidth, 14.375rem);
    position: absolute;
    opacity: 0;
    background-color: #FFF;
    -webkit-box-shadow: 3px 9px 14px rgba(0, 0, 0, 0.11);
    box-shadow: 3px 9px 14px rgba(0, 0, 0, 0.11);
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
    pointer-events: none;
  }
  .header__bottom__menu > nav > ul > li.menu-item-has-children > ul.nav-drop.edge {
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .header__bottom__menu > nav > ul > li.menu-item-has-children > ul.nav-drop > .nav-drop__wrapper {
    padding: 0px 0px 0px 0px;
    padding: var(--headerMenu__simpleMenuPaddingTop, 0.3125rem) var(--headerMenu__simpleMenuPaddingRight, 1.25rem) var(--headerMenu__simpleMenuPaddingBottom, 0.3125rem) var(--headerMenu__simpleMenuPaddingLeft, 0.9375rem);
  }
  .header__bottom__menu > nav > ul > li.menu-item-has-children > ul.nav-drop > .nav-drop__wrapper li.menu-item-has-children > ul.nav-drop {
    padding: 0px 0px 0px 0px;
    padding: var(--headerMenu__simpleMenuPaddingTop, 0.3125rem) var(--headerMenu__simpleMenuPaddingRight, 1.25rem) var(--headerMenu__simpleMenuPaddingBottom, 0.3125rem) var(--headerMenu__simpleMenuPaddingLeft, 0.9375rem);
  }
  .header__bottom__menu > nav > ul > li.menu-item-has-children > ul.nav-drop li.menu-item-has-children {
    position: static;
  }
  .header__bottom__menu > nav > ul > li.menu-item-has-children > ul.nav-drop li.menu-item-has-children > ul.nav-drop {
    width: 14.375rem;
    width: var(--headerMenu__simpleMenuWidth, 14.375rem);
    position: absolute;
    top: 0;
    top: var(--headerMenu__simpleMenuTop, 0);
    opacity: 0;
    background-color: #FFF;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
    pointer-events: none;
  }
  .header__bottom__menu > nav > ul > li.menu-item-has-children > ul.nav-drop li.menu-item-has-children > ul.nav-drop:not(.edge) {
    left: -webkit-calc(0px + 0.125rem);
    left: calc(0px + 0.125rem);
    left: -webkit-calc(var(--headerMenu__simpleMenuLeft, 0px) + var(--headerMenu__simpleMenuGapBetween, 0.125rem));
    left: calc(var(--headerMenu__simpleMenuLeft, 0px) + var(--headerMenu__simpleMenuGapBetween, 0.125rem));
  }
  .header__bottom__menu > nav > ul > li.menu-item-has-children > ul.nav-drop li.menu-item-has-children > ul.nav-drop.edge {
    left: -webkit-calc( (0px + 0.125rem + (0px - 0px)) * -1);
    left: calc( (0px + 0.125rem + (0px - 0px)) * -1);
    left: -webkit-calc( (var(--headerMenu__simpleMenuLeft, 0px) + var(--headerMenu__simpleMenuGapBetween, 0.125rem) + (var(--headerMenu__simpleMenuWidth, 0px) - var(--headerMenu__simpleMenuLeft, 0px))) * -1);
    left: calc( (var(--headerMenu__simpleMenuLeft, 0px) + var(--headerMenu__simpleMenuGapBetween, 0.125rem) + (var(--headerMenu__simpleMenuWidth, 0px) - var(--headerMenu__simpleMenuLeft, 0px))) * -1);
  }
  .header__bottom__menu > nav > ul > li.menu-item-has-children > ul.nav-drop li.menu-item-has-children > ul.nav-drop.edge .nav-drop {
    left: -webkit-calc( (0px + 0.125rem + (0px - 0px)) * -1);
    left: calc( (0px + 0.125rem + (0px - 0px)) * -1);
    left: -webkit-calc( (var(--headerMenu__simpleMenuLeft, 0px) + var(--headerMenu__simpleMenuGapBetween, 0.125rem) + (var(--headerMenu__simpleMenuWidth, 0px) - var(--headerMenu__simpleMenuLeft, 0px))) * -1);
    left: calc( (var(--headerMenu__simpleMenuLeft, 0px) + var(--headerMenu__simpleMenuGapBetween, 0.125rem) + (var(--headerMenu__simpleMenuWidth, 0px) - var(--headerMenu__simpleMenuLeft, 0px))) * -1);
  }
  .header__bottom__menu > nav > ul > li.menu-item-has-children.is-active > ul.nav-drop {
    opacity: 1;
    pointer-events: auto;
  }
  .header__bottom__menu > nav > ul > li.menu-item-has-children.is-active > ul.nav-drop li.menu-item-has-children.is-active > ul.nav-drop {
    opacity: 1;
    pointer-events: auto;
  }
  .header__bottom__menu > nav > ul > li.menu-item-has-children ul.nav-drop > .nav-drop__wrapper > li {
    display: block;
  }
  .header__bottom__menu > nav > ul > li.menu-item-has-children ul.nav-drop > .nav-drop__wrapper > li > a {
    font-family: azo-sans-web, arial, helvetica, sans-serif;
    font-family: var(--headerMenu__simpleMenuItemFontFamily, var(--headerMenuItemFontFamily, var(--fontFamily, Arial, sans-serif)));
    font-size: 0.9375rem;
    font-size: var(--headerMenu__simpleMenuItemFontSize, var(--headerMenuItemFontSize, var(--headerMenuFontSize, 1rem)));
    font-weight: 500;
    font-weight: var(--headerMenu__simpleMenuItemFontWeight, var(--headerMenuItemItemFontWeight, var(--headerMenuFontWeight, 400)));
    color: #9C9C9C;
    color: var(--headerMenu__simpleMenuItemColor, var(--headerMenuItemColor, var(--headerMenuColor, #000)));
    line-height: 1;
    line-height: var(--headerMenu__simpleMenuItemLineHeight, var(--headerMenuItemLineHeight, var(--headerMenuLineHeight, 1)));
    letter-spacing: 0;
    letter-spacing: var(--headerMenu__simpleMenuItemLetterSpacing, var(--headerMenuItemLetterSpacing, var(--headerMenuLetterSpacing, 0)));
    -webkit-transition: color 0.3s, background-color 0.3s;
    transition: color 0.3s, background-color 0.3s;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding: 0.625rem 0.9375rem 0.625rem;
    padding: var(--headerMenu__simpleMenuItemPaddingTop, 0.3125rem) var(--headerMenu__simpleMenuItemPaddingRight, 0) var(--headerMenu__simpleMenuItemPaddingBottom, 0.3125rem);
  }
  .header__bottom__menu > nav > ul > li.menu-item-has-children ul.nav-drop > .nav-drop__wrapper > li > a span {
    padding-right: 1.25rem;
  }
  .header__bottom__menu > nav > ul > li.menu-item-has-children ul.nav-drop > .nav-drop__wrapper > li.menu-item-has-children > a svg {
    display: block;
    -webkit-align-self: center;
    -ms-flex-item-align: center;
    -ms-grid-row-align: center;
    align-self: center;
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    position: relative;
    margin-left: auto;
    -webkit-transition: stroke 0.3s;
    transition: stroke 0.3s;
  }
  .header__bottom__menu > nav > ul > li.menu-item-has-children ul.nav-drop > .nav-drop__wrapper > li:hover > a {
    color: #000;
    color: var(--headerMenu__simpleMenuItemAccentColor, var(--headerMenuAccentColor, #F00));
    background-color: #F3F2F0;
    background-color: var(--headerMenu__simpleMenuItemBackgroundColor, transparent);
  }
  .header__bottom__menu > nav > ul > li.menu-item-has-children ul.nav-drop > .nav-drop__wrapper > li.current-menu-item > a {
    color: #000;
    color: var(--headerMenu__simpleMenuItemAccentColor, var(--headerMenuAccentColor, #F00));
    background-color: #F3F2F0;
    background-color: var(--headerMenu__simpleMenuItemBackgroundColor, transparent);
  }
  .header__bottom__menu > nav > ul > li.menu-item-has-children ul.nav-drop > .nav-drop__wrapper > li.current-menu-ancestor > a {
    color: #000;
    color: var(--headerMenu__simpleMenuItemAccentColor, var(--headerMenuAccentColor, #F00));
    background-color: #F3F2F0;
    background-color: var(--headerMenu__simpleMenuItemBackgroundColor, transparent);
  }
  .header__bottom__menu > nav > ul > li.menu-item-has-children ul.nav-drop > .nav-drop__wrapper > li.current-category-ancestor > a {
    color: #000;
    color: var(--headerMenu__simpleMenuItemAccentColor, var(--headerMenuAccentColor, #F00));
    background-color: #F3F2F0;
    background-color: var(--headerMenu__simpleMenuItemBackgroundColor, transparent);
  }
  .header__bottom__menu > nav > ul > li.menu-item-has-children ul.nav-drop > .nav-drop__wrapper > li.current-post-ancestor > a {
    color: #000;
    color: var(--headerMenu__simpleMenuItemAccentColor, var(--headerMenuAccentColor, #F00));
    background-color: #F3F2F0;
    background-color: var(--headerMenu__simpleMenuItemBackgroundColor, transparent);
  }
  .header__bottom__menu > nav > ul > li.menu-item-has-children ul.nav-drop > .nav-drop__wrapper > li.current-page-ancestor > a {
    color: #000;
    color: var(--headerMenu__simpleMenuItemAccentColor, var(--headerMenuAccentColor, #F00));
    background-color: #F3F2F0;
    background-color: var(--headerMenu__simpleMenuItemBackgroundColor, transparent);
  }
  .header__bottom__menu > nav > ul > li.menu-item-has-children ul.nav-drop > .nav-drop__wrapper > li.is-active > a {
    color: #000;
    color: var(--headerMenu__simpleMenuItemAccentColor, var(--headerMenuAccentColor, #F00));
    background-color: #F3F2F0;
    background-color: var(--headerMenu__simpleMenuItemBackgroundColor, transparent);
  }
  .header__bottom__menu > nav > ul > li.menu-item-has-children ul.nav-drop > .nav-drop__wrapper > li:hover > a svg {
    stroke: #000;
    stroke: var(--headerMenuAccentColor, #F00);
  }
  .header__bottom__menu > nav > ul > li.menu-item-has-children ul.nav-drop > .nav-drop__wrapper > li.current-menu-item > a svg {
    stroke: #000;
    stroke: var(--headerMenuAccentColor, #F00);
  }
  .header__bottom__menu > nav > ul > li.menu-item-has-children ul.nav-drop > .nav-drop__wrapper > li.current-menu-ancestor > a svg {
    stroke: #000;
    stroke: var(--headerMenuAccentColor, #F00);
  }
  .header__bottom__menu > nav > ul > li.menu-item-has-children ul.nav-drop > .nav-drop__wrapper > li.current-category-ancestor > a svg {
    stroke: #000;
    stroke: var(--headerMenuAccentColor, #F00);
  }
  .header__bottom__menu > nav > ul > li.menu-item-has-children ul.nav-drop > .nav-drop__wrapper > li.current-post-ancestor > a svg {
    stroke: #000;
    stroke: var(--headerMenuAccentColor, #F00);
  }
  .header__bottom__menu > nav > ul > li.menu-item-has-children ul.nav-drop > .nav-drop__wrapper > li.current-page-ancestor > a svg {
    stroke: #000;
    stroke: var(--headerMenuAccentColor, #F00);
  }
  .header__bottom__menu > nav > ul > li.menu-item-has-children ul.nav-drop > .nav-drop__wrapper > li.is-active > a svg {
    stroke: #000;
    stroke: var(--headerMenuAccentColor, #F00);
  }
  .header__bottom__menu > nav > ul > li.menu-item-has-children ul.nav-drop > .nav-drop__wrapper > li > a:focus {
    color: #000;
    color: var(--headerMenu__simpleMenuItemAccentColor, var(--headerMenuAccentColor, #F00));
    background-color: #F3F2F0;
    background-color: var(--headerMenu__simpleMenuItemBackgroundColor, transparent);
  }
  .header__bottom__menu > nav > ul > li.menu-item-has-children ul.nav-drop > .nav-drop__wrapper > li > a:focus svg {
    stroke: #000;
    stroke: var(--headerMenuAccentColor, #F00);
  }
}

.header__searchBar {
  width: 100%;
  position: absolute;
  z-index: 1004;
  z-index: var(--searchBarZindex, 50);
  right: 0;
  bottom: 0;
  left: 0;
  color: #FFF;
  color: var(--searchBarColor, #FFF);
  padding-top: 1.5625rem;
  padding-top: var(--searchBarPaddingTop, 1.25rem);
  padding-bottom: 1.875rem;
  padding-bottom: var(--searchBarPaddingBottom, 1.25rem);
  background-color: #56625F;
  background-color: var(--searchBarBackgroundColor, #000);
  -webkit-transition: -webkit-transform 0.2s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: -webkit-transform 0.2s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: transform 0.2s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: transform 0.2s cubic-bezier(0.25, 0.1, 0.25, 1), -webkit-transform 0.2s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.header__searchBar svg path,
.header__searchBar svg polygon {
  fill: #FFF;
}

.searchBarOverlay {
  width: 100%;
  height: 100%;
  position: fixed;
  z-index: 1003;
  z-index: var(--searchBarOverlayZindex, 50);
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  opacity: 0;
  background-color: rgba(86, 98, 95, 0.8);
  background-color: var(--searchBarOverlayBackgroundColor, rgba(255, 255, 255, 0.8));
  -webkit-transition: opacity 0.2s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: opacity 0.2s cubic-bezier(0.25, 0.1, 0.25, 1);
  pointer-events: none;
}

body.searchBarIsActive .header__searchBar {
  -webkit-transform: translateY(100%);
  -ms-transform: translateY(100%);
  transform: translateY(100%);
}

body.searchBarIsActive .searchBarOverlay {
  opacity: 1;
  pointer-events: auto;
}

body.searchBarIsActive .header__responsiveMenu,
body.searchBarIsActive .responsiveMenuOverlay {
  opacity: 0 !important;
  pointer-events: none !important;
}

.searchForm {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.searchForm > div {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
}

.searchForm__label {
  font-size: 1rem;
  font-size: var(--searchFormLabelFontSize, var(--searchBarFontSize, 1rem));
  font-weight: 400;
  font-weight: var(--searchFormLabelFontWeight, var(--searchBarFontWeight, 400));
  line-height: 1;
  line-height: var(--searchFormLabelLineHeight, var(--searchBarLineHeight, 1));
  text-transform: none;
  text-transform: var(--searchFormLabelTextTransform, var(--searchBarTextTransform, none));
}

.searchForm__input {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
  width: 100%;
  max-width: 33.75rem;
  max-width: var(--searchFormInputMaxWidth, 33.75rem);
  margin-right: 0.625rem;
  margin-right: var(--searchFormInputMarginRight, 0.625rem);
  margin-bottom: -0.25rem;
  margin-bottom: var(--searchFormInputMarginBottom, -0.25rem);
  margin-left: 0.625rem;
  margin-left: var(--searchFormInputMarginLeft, 0.625rem);
  padding-bottom: 0.125rem;
  padding-bottom: var(--searchFormInputPaddingBottom, 0.625rem);
  border-bottom: 2px solid #FFF;
  border-bottom: var(--searchFormInputBorderHeight, 3px) solid var(--searchFormInputBorderColor, #FFF);
}

.searchForm__input {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--searchFormInputFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 1rem;
  font-size: var(--searchFormInputFonSize, var(--fontSize, 1rem));
  color: #FFF;
  color: var(--searchFormInputColor, var(--searchBarColor, var(--textColor, #FFF)));
  font-weight: 400;
  font-weight: var(--searchFormInputFontWeight, var(--searchBarFontWeight, var(--fontWeight, 400)));
  line-height: 1.2;
  line-height: var(--searchFormInputLineHeight, var(--searchBarLineHeight, 1.2));
}

.searchForm__input::-webkit-input-placeholder {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--searchFormInputFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 1rem;
  font-size: var(--searchFormInputFonSize, var(--fontSize, 1rem));
  color: #FFF;
  color: var(--searchFormInputColor, var(--searchBarColor, var(--textColor, #FFF)));
  font-weight: 400;
  font-weight: var(--searchFormInputFontWeight, var(--searchBarFontWeight, var(--fontWeight, 400)));
  line-height: 1.2;
  line-height: var(--searchFormInputLineHeight, var(--searchBarLineHeight, 1.2));
}

.searchForm__input::-moz-placeholder {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--searchFormInputFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 1rem;
  font-size: var(--searchFormInputFonSize, var(--fontSize, 1rem));
  color: #FFF;
  color: var(--searchFormInputColor, var(--searchBarColor, var(--textColor, #FFF)));
  font-weight: 400;
  font-weight: var(--searchFormInputFontWeight, var(--searchBarFontWeight, var(--fontWeight, 400)));
  line-height: 1.2;
  line-height: var(--searchFormInputLineHeight, var(--searchBarLineHeight, 1.2));
}

.searchForm__input:-ms-input-placeholder {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--searchFormInputFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 1rem;
  font-size: var(--searchFormInputFonSize, var(--fontSize, 1rem));
  color: #FFF;
  color: var(--searchFormInputColor, var(--searchBarColor, var(--textColor, #FFF)));
  font-weight: 400;
  font-weight: var(--searchFormInputFontWeight, var(--searchBarFontWeight, var(--fontWeight, 400)));
  line-height: 1.2;
  line-height: var(--searchFormInputLineHeight, var(--searchBarLineHeight, 1.2));
}

.searchForm__input::-ms-input-placeholder {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--searchFormInputFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 1rem;
  font-size: var(--searchFormInputFonSize, var(--fontSize, 1rem));
  color: #FFF;
  color: var(--searchFormInputColor, var(--searchBarColor, var(--textColor, #FFF)));
  font-weight: 400;
  font-weight: var(--searchFormInputFontWeight, var(--searchBarFontWeight, var(--fontWeight, 400)));
  line-height: 1.2;
  line-height: var(--searchFormInputLineHeight, var(--searchBarLineHeight, 1.2));
}

.searchForm__input::placeholder {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--searchFormInputFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 1rem;
  font-size: var(--searchFormInputFonSize, var(--fontSize, 1rem));
  color: #FFF;
  color: var(--searchFormInputColor, var(--searchBarColor, var(--textColor, #FFF)));
  font-weight: 400;
  font-weight: var(--searchFormInputFontWeight, var(--searchBarFontWeight, var(--fontWeight, 400)));
  line-height: 1.2;
  line-height: var(--searchFormInputLineHeight, var(--searchBarLineHeight, 1.2));
}

.searchForm__submit {
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

.searchForm__close:not(:focus) {
  width: 1px;
  height: 1px;
  position: absolute;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  margin: -1px;
  border: 0;
  padding: 0;
}

.searchForm__close:focus {
  width: 40px;
  height: 40px;
  position: absolute;
  right: 15px;
  right: var(--containerGutter);
  margin-left: 1.25rem;
}

@media only screen and (min-width: 768px) {
  .searchForm__close:focus {
  right: 30px;
  right: var(--containerGutter);
  }
}

.searchForm__close:focus span {
  display: block;
  width: 25px;
  height: 3px;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  -webkit-border-radius: 25px;
  border-radius: 25px;
  background-color: #FFF;
}

.searchForm__close:focus span:nth-child(1) {
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.searchForm__close:focus span:nth-child(2) {
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.header__bottom__actions {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

.header__bottom__actions > * + * {
  margin-left: 0.625rem;
  margin-left: var(--headerActionsItemsGap, 0.625rem);
}

.header__bottom__actions__search {
  display: inline-block;
}

.header__bottom__actions__search svg {
  width: 1.5625rem;
  width: var(--headerActionsSearchWidth, 1.5625rem);
  height: 1.5625rem;
  height: var(--headerActionsSearchHeight, 1.5625rem);
}

.header__bottom__actions__search svg path {
  -webkit-transition: fill 0.3s;
  transition: fill 0.3s;
  fill: #000;
  fill: var(--headerActionsSearchColor, var(--headerMenuColor, #000));
}

.header__bottom__actions__search:hover svg path {
  fill: #000;
  fill: var(--headerActionsSearchAccentColor, var(--headerMenuAccentColor, #F00));
}

.header__bottom__actions__search:focus svg path {
  fill: #000;
  fill: var(--headerActionsSearchAccentColor, var(--headerMenuAccentColor, #F00));
}

@media only screen and (min-width: 1100px) {
  .header__bottom__actions__menu {
    display: none !important;
  }
}

@media only screen and (min-width: 1100px) {
  .header__responsiveMenu {
    display: none;
  }
}

@media only screen and (max-width: 1099px) {
  .header__responsiveMenu .dropdown-toggle {
    height: 15px;
    height: var(--responsiveMenuDropdownToggleMinWidth, 1.25rem);
    position: relative;
    opacity: 1;
    opacity: var(--responsiveMenuDropdownToggleOpacity, var(--responsiveMenuOpacity, 1));
    -webkit-transition: opacity .3s;
    transition: opacity .3s;
  }
  .header__responsiveMenu .dropdown-toggle > * {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    background-color: #9C9C9C;
    background-color: var(--responsiveMenuDropdownToggleColor, var(--responsiveMenuItemColor, var(--responsiveMenuColor, #000)));
  }
  .header__responsiveMenu .dropdown-toggle > *:first-child {
    width: 100%;
    height: 2px;
  }
  .header__responsiveMenu .dropdown-toggle > *:last-child {
    width: 2px;
    height: 100%;
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
  }
  .header__responsiveMenu .dropdown-toggle[aria-expanded="true"] {
    opacity: 1;
    opacity: var(--responsiveMenuDropdownToggleAccentOpacity, var(--responsiveMenuAccentOpacity, 1));
  }
  .header__responsiveMenu .dropdown-toggle[aria-expanded="true"] > * {
    background-color: #000;
    background-color: var(--responsiveMenuDropdownToggleActiveColor, var(--responsiveMenuItemAccentColor, var(--responsiveMenuAccentColor, #F00)));
  }
  .header__responsiveMenu .dropdown-toggle[aria-expanded="true"] > *:last-child {
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
  }
  .header__responsiveMenu {
    max-height: -webkit-calc(100vh - 0px - 10vh);
    max-height: calc(100vh - 0px - 10vh);
    max-height: -webkit-calc(100vh - var(--headerHeight, 0px) - var(--responsiveMenuMaxHeight, 10vh));
    max-height: calc(100vh - var(--headerHeight, 0px) - var(--responsiveMenuMaxHeight, 10vh));
    position: fixed;
    z-index: 1006;
    z-index: var(--responsiveMenuZindex, 99);
    top: 0px;
    top: var(--headerHeight, 0px);
    right: 0;
    left: 0;
    overflow: auto;
    font-size: 1.0625rem;
    font-size: var(--responsiveMenuFontSize, 1rem);
    padding-top: -webkit-calc(1.25rem - (0.625rem / 2));
    padding-top: calc(1.25rem - (0.625rem / 2));
    padding-top: -webkit-calc(var(--responsiveMenuPaddingTop, 1.25rem) - (var(--responsiveMenuFirstLevelGap, 0.625rem) / 2));
    padding-top: calc(var(--responsiveMenuPaddingTop, 1.25rem) - (var(--responsiveMenuFirstLevelGap, 0.625rem) / 2));
    padding-bottom: -webkit-calc(1.25rem - (0.625rem / 2));
    padding-bottom: calc(1.25rem - (0.625rem / 2));
    padding-bottom: -webkit-calc(var(--responsiveMenuPaddingBottom, 1.25rem) - (var(--responsiveMenuFirstLevelGap, 0.625rem) / 2));
    padding-bottom: calc(var(--responsiveMenuPaddingBottom, 1.25rem) - (var(--responsiveMenuFirstLevelGap, 0.625rem) / 2));
    background-color: rgba(255, 255, 255, 0.95);
    background-color: var(--responsiveMenuBackgroundColor, #FFF);
    -webkit-box-shadow: 0 4px 4px rgba(0, 0, 0, 0.15);
    box-shadow: 0 4px 4px rgba(0, 0, 0, 0.15);
    -webkit-box-shadow: var(--responsiveMenuBoxShadow, none);
    box-shadow: var(--responsiveMenuBoxShadow, none);
    -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.42, 0, 0.58, 1);
    transition: -webkit-transform 0.4s cubic-bezier(0.42, 0, 0.58, 1);
    transition: transform 0.4s cubic-bezier(0.42, 0, 0.58, 1);
    transition: transform 0.4s cubic-bezier(0.42, 0, 0.58, 1), -webkit-transform 0.4s cubic-bezier(0.42, 0, 0.58, 1);
    border-left: 0.375rem solid #56625F;
    border-left: var(--responsiveMenuBorderLeftWidth, 0) solid var(--responsiveMenuBorderLeftColor, #000);
    pointer-events: none;
    -webkit-transform: translate3d(0, -webkit-calc(-100% - 0px), 0);
    transform: translate3d(0, calc(-100% - 0px), 0);
    -webkit-transform: translate3d(0, -webkit-calc(-100% - var(--headerHeight, 0px)), 0);
    transform: translate3d(0, calc(-100% - var(--headerHeight, 0px)), 0);
  }
  body.admin-bar .header__responsiveMenu {
    top: -webkit-calc(0px + 46px);
    top: calc(0px + 46px);
    top: -webkit-calc(var(--headerHeight, 0px) + 46px);
    top: calc(var(--headerHeight, 0px) + 46px);
  }
}

@media only screen and (max-width: 1099px) and (min-width: 783px) {
  body.admin-bar .header__responsiveMenu {
    top: -webkit-calc(0px + 32px);
    top: calc(0px + 32px);
    top: -webkit-calc(var(--headerHeight, 0px) + 32px);
    top: calc(var(--headerHeight, 0px) + 32px);
  }
}

@media only screen and (max-width: 1099px) {
  body.responsiveMenuIsOpen .header__responsiveMenu {
    pointer-events: auto;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@media only screen and (max-width: 1099px) {
  .header__responsiveMenu > ul > li {
    padding: 0 15px;
    padding: 0 var(--containerGutter);
  }
  @media only screen and (min-width: 768px) {
    .header__responsiveMenu > ul > li {
    padding: 0 30px;
    padding: 0 var(--containerGutter);
    }
  }
  .header__responsiveMenu > ul > li > *:first-child {
    display: block;
    font-size: 1.0625rem;
    font-size: var(--responsiveMenuItemFontSize, var(--responsiveMenuFontSize, 1rem));
    line-height: 1;
    line-height: var(--responsiveMenuItemLineHeight, var(--responsiveMenuLineHeight, 1));
    font-weight: 500;
    font-weight: var(--responsiveMenuItemFontWeight, var(--responsiveMenuFontWeight, 400));
    letter-spacing: 0.03em;
    letter-spacing: var(--responsiveMenuItemLetterSpacing, var(--responsiveMenuLetterSpacing, 0));
    text-transform: none;
    text-transform: var(--responsiveMenuItemTextTransform, var(--responsiveMenuTextTransform, none));
    color: #9C9C9C;
    color: var(--responsiveMenuItemColor, var(--responsiveMenuColor, #000));
    opacity: 1;
    opacity: var(--responsiveMenuItemOpacity, var(--responsiveMenuOpacity, 1));
    -webkit-transition: color 0.3s, opacity 0.3s;
    transition: color 0.3s, opacity 0.3s;
    padding-top: -webkit-calc((0.625rem / 2) + 2px);
    padding-top: calc((0.625rem / 2) + 2px);
    padding-top: -webkit-calc((var(--responsiveMenuFirstLevelGap, 0.625rem) / 2) + 2px);
    padding-top: calc((var(--responsiveMenuFirstLevelGap, 0.625rem) / 2) + 2px);
    padding-bottom: -webkit-calc(0.625rem / 2);
    padding-bottom: calc(0.625rem / 2);
    padding-bottom: -webkit-calc(var(--responsiveMenuFirstLevelGap, 0.625rem) / 2);
    padding-bottom: calc(var(--responsiveMenuFirstLevelGap, 0.625rem) / 2);
  }
  .header__responsiveMenu > ul > li.current-menu-item > *:first-child {
    color: #000;
    color: var(--responsiveMenuItemAccentColor, var(--responsiveMenuAccentColor, #F00));
    opacity: 1;
    opacity: var(--responsiveMenuItemAccentOpacity, var(--responsiveMenuAccentOpacity, 1));
  }
  .header__responsiveMenu > ul > li.current-menu-ancestor > *:first-child {
    color: #000;
    color: var(--responsiveMenuItemAccentColor, var(--responsiveMenuAccentColor, #F00));
    opacity: 1;
    opacity: var(--responsiveMenuItemAccentOpacity, var(--responsiveMenuAccentOpacity, 1));
  }
  .header__responsiveMenu > ul > li.current-category-ancestor > *:first-child {
    color: #000;
    color: var(--responsiveMenuItemAccentColor, var(--responsiveMenuAccentColor, #F00));
    opacity: 1;
    opacity: var(--responsiveMenuItemAccentOpacity, var(--responsiveMenuAccentOpacity, 1));
  }
  .header__responsiveMenu > ul > li.current-post-ancestor > *:first-child {
    color: #000;
    color: var(--responsiveMenuItemAccentColor, var(--responsiveMenuAccentColor, #F00));
    opacity: 1;
    opacity: var(--responsiveMenuItemAccentOpacity, var(--responsiveMenuAccentOpacity, 1));
  }
  .header__responsiveMenu > ul > li.current-page-ancestor > *:first-child {
    color: #000;
    color: var(--responsiveMenuItemAccentColor, var(--responsiveMenuAccentColor, #F00));
    opacity: 1;
    opacity: var(--responsiveMenuItemAccentOpacity, var(--responsiveMenuAccentOpacity, 1));
  }
  .header__responsiveMenu > ul > li.isActive > *:first-child {
    color: #000;
    color: var(--responsiveMenuItemAccentColor, var(--responsiveMenuAccentColor, #F00));
    opacity: 1;
    opacity: var(--responsiveMenuItemAccentOpacity, var(--responsiveMenuAccentOpacity, 1));
  }
  .header__responsiveMenu > ul > li + li {
    border-top: 0 solid #000;
    border-top: var(--responsiveMenuBorderWidth, 0) solid var(--responsiveMenuBorderColor, #000);
  }
}

@media only screen and (max-width: 1099px) {
  .header__responsiveMenu li.menu-item-has-children {
    display: -ms-grid;
    display: grid;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    grid-template-areas: "menu-item dropdown-toggle" "dropdown dropdown";
    -ms-grid-columns: auto var(--responsiveMenuItemsInnerGap, 3.75rem) 1fr;
    grid-template-columns: auto 1fr;
    grid-column-gap: 3.75rem;
    grid-column-gap: var(--responsiveMenuItemsInnerGap, 3.75rem);
    cursor: pointer;
  }
  .header__responsiveMenu li.menu-item-has-children > *:first-child {
    grid-area: menu-item;
  }
  .header__responsiveMenu li.menu-item-has-children > .dropdown-toggle {
    grid-area: dropdown-toggle;
    min-width: 15px;
    min-width: var(--responsiveMenuDropdownToggleMinWidth, 1.25rem);
    justify-self: flex-end;
  }
  .header__responsiveMenu li.menu-item-has-children > .dropdown-toggle > svg {
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
  }
  .header__responsiveMenu li.menu-item-has-children > .dropdown-toggle > svg path {
    -webkit-transition: fill 0.3s;
    transition: fill 0.3s;
    fill: #9C9C9C;
    fill: var(--responsiveMenuColor, #000);
  }
  .header__responsiveMenu li.menu-item-has-children > .nav-drop {
    grid-area: dropdown;
  }
  .header__responsiveMenu li.menu-item-has-children.isActive > .dropdown-toggle > svg {
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
  }
  .header__responsiveMenu li.menu-item-has-children.isActive > .dropdown-toggle path {
    fill: #000;
    fill: var(--responsiveMenuAccentColor, #F00);
  }
}

@media only screen and (max-width: 1099px) {
  .header__responsiveMenu li.menu-item-has-children > *:first-child {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .header__responsiveMenu li.menu-item-has-children > .dropdown-toggle {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .header__responsiveMenu li.menu-item-has-children > .nav-drop {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
  }
}

@media only screen and (max-width: 1099px) {
  .header__responsiveMenu .nav-drop {
    display: none;
    padding-left: 1.5625rem;
    padding-left: var(--responsiveMenuSubMenuPaddingLeft, 0.625rem);
  }
  .header__responsiveMenu > ul > li.menu-item-has-children > .nav-drop > .nav-drop__wrapper {
    margin-top: 0.625rem;
    margin-top: var(--responsiveMenuSubMenuMarginTop, 0.625rem);
    margin-bottom: 0.625rem;
    margin-bottom: var(--responsiveMenuSubMenuMarginBottom, 0.625rem);
  }
  .header__responsiveMenu > ul > li.menu-item-has-children > .nav-drop > .nav-drop__wrapper > li + li {
    margin-top: 0.9375rem;
    margin-top: var(--responsiveMenuSubMenuGapBetweenItems, 0.625rem);
  }
  .header__responsiveMenu > ul > li.menu-item-has-children > .nav-drop > .nav-drop__wrapper li.menu-item-has-children > .nav-drop > .nav-drop__wrapper {
    margin-top: 0.9375rem;
    margin-top: var(--responsiveMenuSubMenuTitleDropdownMenuMarginTop, 0.625rem);
  }
  .header__responsiveMenu > ul > li.menu-item-has-children > .nav-drop > .nav-drop__wrapper li.menu-item-has-children > .nav-drop > .nav-drop__wrapper li + li {
    margin-top: 0.9375rem;
    margin-top: var(--responsiveMenuSubMenuGapBetweenItemsInner, 0.625rem);
  }
}

@media only screen and (max-width: 1099px) {
  .header__responsiveMenu > ul > li.menu-item-has-children:not(.isMegaMenu) > .nav-drop > .nav-drop__wrapper {
    font-size: 0.91304em;
    font-size: var(--responsiveMenuFontSizeFactor, 0.91304em);
  }
  .header__responsiveMenu > ul > li.menu-item-has-children:not(.isMegaMenu) > .nav-drop > .nav-drop__wrapper .nav-drop__wrapper {
    font-size: 0.91304em;
    font-size: var(--responsiveMenuFontSizeFactor, 0.91304em);
  }
  .header__responsiveMenu > ul > li.menu-item-has-children:not(.isMegaMenu) > .nav-drop > .nav-drop__wrapper li:not(.menu-item-has-children) > a {
    font-size: 1.0625rem;
    font-size: var(--responsiveSubMenuItemFontSize, var(--responsiveMenuFontSize, 1rem));
    line-height: 1;
    line-height: var(--responsiveSubMenuItemLineHeight, var(--responsiveMenuLineHeight, 1));
    font-weight: 500;
    font-weight: var(--responsiveSubMenuItemFontWeight, var(--responsiveMenuFontWeight, 400));
    letter-spacing: 0.03em;
    letter-spacing: var(--responsiveSubMenuItemLetterSpacing, var(--responsiveMenuLetterSpacing, 0));
    text-transform: none;
    text-transform: var(--responsiveSubMenuItemTextTransform, var(--responsiveMenuTextTransform, none));
    color: #9C9C9C;
    color: var(--responsiveSubMenuItemColor, var(--responsiveMenuColor, #000));
    opacity: 1;
    opacity: var(--responsiveSubMenuItemOpacity, var(--responsiveMenuOpacity, 1));
    -webkit-transition: color 0.3s, opacity 0.3s;
    transition: color 0.3s, opacity 0.3s;
  }
  .header__responsiveMenu > ul > li.menu-item-has-children:not(.isMegaMenu) > .nav-drop > .nav-drop__wrapper li.current-menu-item:not(.menu-item-has-children) > a {
    color: #000;
    color: var(--responsiveSubMenuItemAccentColor, var(--responsiveMenuAccentColor, #F00));
    opacity: 1;
    opacity: var(--responsiveSubMenuItemAccentOpacity, var(--responsiveMenuAccentOpacity, 1));
  }
  .header__responsiveMenu > ul > li.menu-item-has-children:not(.isMegaMenu) > .nav-drop > .nav-drop__wrapper li.current-menu-ancestor:not(.menu-item-has-children) > a {
    color: #000;
    color: var(--responsiveSubMenuItemAccentColor, var(--responsiveMenuAccentColor, #F00));
    opacity: 1;
    opacity: var(--responsiveSubMenuItemAccentOpacity, var(--responsiveMenuAccentOpacity, 1));
  }
  .header__responsiveMenu > ul > li.menu-item-has-children:not(.isMegaMenu) > .nav-drop > .nav-drop__wrapper li.current-category-ancestor:not(.menu-item-has-children) > a {
    color: #000;
    color: var(--responsiveSubMenuItemAccentColor, var(--responsiveMenuAccentColor, #F00));
    opacity: 1;
    opacity: var(--responsiveSubMenuItemAccentOpacity, var(--responsiveMenuAccentOpacity, 1));
  }
  .header__responsiveMenu > ul > li.menu-item-has-children:not(.isMegaMenu) > .nav-drop > .nav-drop__wrapper li.current-post-ancestor:not(.menu-item-has-children) > a {
    color: #000;
    color: var(--responsiveSubMenuItemAccentColor, var(--responsiveMenuAccentColor, #F00));
    opacity: 1;
    opacity: var(--responsiveSubMenuItemAccentOpacity, var(--responsiveMenuAccentOpacity, 1));
  }
  .header__responsiveMenu > ul > li.menu-item-has-children:not(.isMegaMenu) > .nav-drop > .nav-drop__wrapper li.current-page-ancestor:not(.menu-item-has-children) > a {
    color: #000;
    color: var(--responsiveSubMenuItemAccentColor, var(--responsiveMenuAccentColor, #F00));
    opacity: 1;
    opacity: var(--responsiveSubMenuItemAccentOpacity, var(--responsiveMenuAccentOpacity, 1));
  }
  .header__responsiveMenu > ul > li.menu-item-has-children:not(.isMegaMenu) > .nav-drop > .nav-drop__wrapper li:not(.menu-item-has-children).isActive > a {
    color: #000;
    color: var(--responsiveSubMenuItemAccentColor, var(--responsiveMenuAccentColor, #F00));
    opacity: 1;
    opacity: var(--responsiveSubMenuItemAccentOpacity, var(--responsiveMenuAccentOpacity, 1));
  }
  .header__responsiveMenu > ul > li.menu-item-has-children:not(.isMegaMenu) > .nav-drop > .nav-drop__wrapper li.menu-item-has-children > a {
    font-size: 1.0625rem;
    font-size: var(--responsiveSubMenuItemFontSize, var(--responsiveMenuFontSize, 1rem));
    line-height: 1;
    line-height: var(--responsiveSubMenuItemLineHeight, var(--responsiveMenuLineHeight, 1));
    font-weight: 500;
    font-weight: var(--responsiveSubMenuItemFontWeight, var(--responsiveMenuFontWeight, 400));
    letter-spacing: 0.03em;
    letter-spacing: var(--responsiveSubMenuItemLetterSpacing, var(--responsiveMenuLetterSpacing, 0));
    text-transform: none;
    text-transform: var(--responsiveSubMenuItemTextTransform, var(--responsiveMenuTextTransform, none));
    color: #9C9C9C;
    color: var(--responsiveSubMenuItemColor, var(--responsiveMenuColor, #000));
    opacity: 1;
    opacity: var(--responsiveSubMenuItemOpacity, var(--responsiveMenuOpacity, 1));
    -webkit-transition: color 0.3s, opacity 0.3s;
    transition: color 0.3s, opacity 0.3s;
  }
  .header__responsiveMenu > ul > li.menu-item-has-children:not(.isMegaMenu) > .nav-drop > .nav-drop__wrapper li.menu-item-has-children > a:not([href]) {
    font-size: 1.0625rem;
    font-size: var(--responsiveMenuSubMenuTitleWithoutLinkFontSize, var(--responsiveMenuFontSize, 1rem));
    line-height: 1;
    line-height: var(--responsiveMenuSubMenuTitleWithoutLinkLineHeight, var(--responsiveMenuLineHeight, 1));
    font-weight: 500;
    font-weight: var(--responsiveMenuSubMenuTitleWithoutLinkFontWeight, var(--responsiveMenuFontWeight, 400));
    letter-spacing: 0.03em;
    letter-spacing: var(--responsiveMenuSubMenuTitleWithoutLinkLetterSpacing, var(--responsiveMenuLetterSpacing, 0));
    text-transform: none;
    text-transform: var(--responsiveMenuSubMenuTitleWithoutLinkTextTransform, var(--responsiveMenuTextTransform, none));
    color: #9C9C9C;
    color: var(--responsiveMenuSubMenuTitleWithoutLinkColor, var(--responsiveMenuColor, #000));
    opacity: 1;
    opacity: var(--responsiveMenuSubMenuTitleWithoutLinkOpacity, var(--responsiveMenuOpacity, 1));
    -webkit-transition: color 0.3s, opacity 0.3s;
    transition: color 0.3s, opacity 0.3s;
  }
  .header__responsiveMenu > ul > li.menu-item-has-children:not(.isMegaMenu) > .nav-drop > .nav-drop__wrapper li.menu-item-has-children.current-menu-item > a {
    color: #000;
    color: var(--responsiveMenuSubMenuTitleWithoutLinkAccentColor, var(--responsiveMenuAccentColor, #F00));
    opacity: 1;
    opacity: var(--responsiveMenuSubMenuTitleWithoutLinkAccentOpacity, var(--responsiveMenuAccentOpacity, 1));
  }
  .header__responsiveMenu > ul > li.menu-item-has-children:not(.isMegaMenu) > .nav-drop > .nav-drop__wrapper li.menu-item-has-children.current-menu-ancestor > a {
    color: #000;
    color: var(--responsiveMenuSubMenuTitleWithoutLinkAccentColor, var(--responsiveMenuAccentColor, #F00));
    opacity: 1;
    opacity: var(--responsiveMenuSubMenuTitleWithoutLinkAccentOpacity, var(--responsiveMenuAccentOpacity, 1));
  }
  .header__responsiveMenu > ul > li.menu-item-has-children:not(.isMegaMenu) > .nav-drop > .nav-drop__wrapper li.menu-item-has-children.current-category-ancestor > a {
    color: #000;
    color: var(--responsiveMenuSubMenuTitleWithoutLinkAccentColor, var(--responsiveMenuAccentColor, #F00));
    opacity: 1;
    opacity: var(--responsiveMenuSubMenuTitleWithoutLinkAccentOpacity, var(--responsiveMenuAccentOpacity, 1));
  }
  .header__responsiveMenu > ul > li.menu-item-has-children:not(.isMegaMenu) > .nav-drop > .nav-drop__wrapper li.menu-item-has-children.current-post-ancestor > a {
    color: #000;
    color: var(--responsiveMenuSubMenuTitleWithoutLinkAccentColor, var(--responsiveMenuAccentColor, #F00));
    opacity: 1;
    opacity: var(--responsiveMenuSubMenuTitleWithoutLinkAccentOpacity, var(--responsiveMenuAccentOpacity, 1));
  }
  .header__responsiveMenu > ul > li.menu-item-has-children:not(.isMegaMenu) > .nav-drop > .nav-drop__wrapper li.menu-item-has-children.current-page-ancestor > a {
    color: #000;
    color: var(--responsiveMenuSubMenuTitleWithoutLinkAccentColor, var(--responsiveMenuAccentColor, #F00));
    opacity: 1;
    opacity: var(--responsiveMenuSubMenuTitleWithoutLinkAccentOpacity, var(--responsiveMenuAccentOpacity, 1));
  }
  .header__responsiveMenu > ul > li.menu-item-has-children:not(.isMegaMenu) > .nav-drop > .nav-drop__wrapper li.menu-item-has-children.isActive > a {
    color: #000;
    color: var(--responsiveMenuSubMenuTitleWithoutLinkAccentColor, var(--responsiveMenuAccentColor, #F00));
    opacity: 1;
    opacity: var(--responsiveMenuSubMenuTitleWithoutLinkAccentOpacity, var(--responsiveMenuAccentOpacity, 1));
  }
}

.responsiveMenuOverlay {
  display: none;
}

@media only screen and (max-width: 1099px) {
  .responsiveMenuOverlay {
    display: block;
    width: 100%;
    height: 100%;
    position: fixed;
    z-index: 1005;
    z-index: var(--responsiveMenuOverlayZindex, 50);
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 0;
    background-color: rgba(0, 0, 0, 0.4);
    background-color: var(--responsiveMenuOverlayBackgroundColor, rgba(255, 255, 255, 0.8));
    -webkit-transition: opacity 0.2s cubic-bezier(0.25, 0.1, 0.25, 1);
    transition: opacity 0.2s cubic-bezier(0.25, 0.1, 0.25, 1);
    pointer-events: none;
  }
  body.responsiveMenuIsOpen .responsiveMenuOverlay {
    opacity: 1;
    pointer-events: auto;
  }
}

.callToActions {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 2.8125rem;
  height: var(--callToActionsHeight, 3.125rem);
  position: fixed;
  z-index: 1002;
  z-index: var(--callToActionsZindex, 50);
  right: 0;
  bottom: 0;
  left: 0;
  background: #56625F;
  background: var(--callToActionsBackgroundColor, #000);
  -webkit-box-shadow: none;
  box-shadow: none;
  -webkit-box-shadow: var(--callToActionsBoxShadow, none);
  box-shadow: var(--callToActionsBoxShadow, none);
}

@media only screen and (min-width: 1100px) {
  .callToActions {
    display: none;
  }
}

.callToActions > * {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-self: center;
  -ms-flex-item-align: center;
  -ms-grid-row-align: center;
  align-self: center;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
  height: 100%;
}

.callToActions > * + * {
  border-left: 1px solid #FFF;
  border-left: var(--callToActionsBorderLeftWidth, 1px) solid var(--callToActionsBorderLeftColor, #FFF);
}

.callToActions > * svg path {
  fill: #FFF;
  fill: var(--callToActionsLogoColor, #FFF);
}

.callToActions > * svg polygon {
  fill: #FFF;
  fill: var(--callToActionsLogoColor, #FFF);
}

.commentsBlock > .commentsBlock__commentsContainer {
  background-color: #F3F3F3;
  background-color: var(--commentsBlockBackgroundColor, #F3F3F3);
  padding-top: -webkit-calc(1.40625rem + 1.875vw);
  padding-top: calc(1.40625rem + 1.875vw);
  padding-bottom: -webkit-calc(1.40625rem + 1.875vw);
  padding-bottom: calc(1.40625rem + 1.875vw);
}

@media (min-width: 1200px) {
  .commentsBlock > .commentsBlock__commentsContainer {
    padding-top: 2.8125rem;
  }
}

@media (min-width: 1200px) {
  .commentsBlock > .commentsBlock__commentsContainer {
    padding-bottom: 2.8125rem;
  }
}

.commentsBlock {
  margin-top: -webkit-calc(1.75rem + 6vw);
  margin-top: calc(1.75rem + 6vw);
}

@media (min-width: 1200px) {
  .commentsBlock {
    margin-top: 6.25rem;
  }
}

.commentsBlock__comments > * + * {
  margin-top: 0.9375rem;
}

.commentsBlocks__comment > * + * {
  margin-top: 0.9375rem;
}

.commentsBlocks__comment__replies > * + * {
  margin-top: 0.9375rem;
}

.commentsBlock--paged:not(.isActive) .commentsBlock__wrapper {
  position: relative;
}

.commentsBlock--paged:not(.isActive) .commentsBlock__wrapper::after {
  content: '';
  display: block;
  width: 100vw;
  height: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  left: -webkit-calc(50% - 50vw);
  left: calc(50% - 50vw);
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(241, 241, 241, 0)), color-stop(90%, #F1F1F1));
  background: linear-gradient(180deg, rgba(241, 241, 241, 0) 0%, #F1F1F1 90%);
  pointer-events: none;
}

.commentsBlock--paged:not(.isActive) .commentsBlock__comments {
  max-height: 50rem;
  max-height: var(--commentsPagedMaxHeight, 50rem);
  overflow: hidden;
}

.commentsBlock__title {
  text-align: center;
  text-align: var(--commentsBlockTitleTextAlign, center);
  margin-bottom: -webkit-calc(1.34375rem + 1.125vw);
  margin-bottom: calc(1.34375rem + 1.125vw);
}

@media (min-width: 1200px) {
  .commentsBlock__title {
    margin-bottom: 2.1875rem;
  }
}

.commentsBlock__title > *:first-child {
  font-family: meno-banner, georgia, serif;
  font-family: var(--commentsBlockTitleFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: -webkit-calc(1.28125rem + 0.375vw);
  font-size: calc(1.28125rem + 0.375vw);
  color: #000;
  color: var(--commentsBlockTitleColor, #000);
  font-weight: 700;
  font-weight: var(--commentsBlockTitleFontWeight, 700);
  line-height: 1.2;
  line-height: var(--commentsBlockTitleLineHeight, 1.2);
}

@media (min-width: 1200px) {
  .commentsBlock__title > *:first-child {
    font-size: 1.5625rem;
  }
}

.commentsBlocks__comment__content {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: auto var(--commentInnerGap, 1.5625rem) auto;
  grid-template-areas: "avatar" "content";
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  grid-gap: 1.5625rem;
  grid-gap: var(--commentInnerGap, 1.5625rem);
  background-color: #FFF;
  background-color: var(--commentBackgroundColor, #FFF);
  padding: 1.25rem -webkit-calc(1.28125rem + 0.375vw) 1.25rem -webkit-calc(1.28125rem + 0.375vw);
  padding: 1.25rem calc(1.28125rem + 0.375vw) 1.25rem calc(1.28125rem + 0.375vw);
  -webkit-box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
  -webkit-box-shadow: var(--commentBoxShadow, 0 4px 10px rgba(0, 0, 0, 0.05));
  box-shadow: var(--commentBoxShadow, 0 4px 10px rgba(0, 0, 0, 0.05));
}

@media (min-width: 1200px) {
  .commentsBlocks__comment__content {
    padding: 1.25rem 1.5625rem 1.25rem 1.5625rem;
  }
}

.commentsBlocks__comment__avatar {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: avatar;
  display: block;
}

.commentsBlocks__comment__avatar img {
  display: block;
  -webkit-border-radius: 100%;
  border-radius: 100%;
  -webkit-border-radius: var(--commentAvatarBorderRadius, 100%);
  border-radius: var(--commentAvatarBorderRadius, 100%);
}

.commentsBlocks__comment__inner {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  grid-area: content;
}

.commentsBlocks__comment__author {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--commentAuthorFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.875rem;
  color: #000;
  color: var(--commentAuthorColor, #000);
  font-weight: 700;
  font-weight: var(--commentAuthorFontWeight, 700);
  line-height: 1.4;
  line-height: var(--commentAuthorLineHeight, 1.4);
}

.commentsBlocks__comment__date {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--commentDateFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.875rem;
  color: #9F9F9F;
  color: var(--commentDateColor, #9F9F9F);
  font-weight: 300;
  font-weight: var(--commentDateFontWeight, 300);
  line-height: 1.4;
  line-height: var(--commentDateLineHeight, 1.4);
}

.commentsBlocks__comment__reply {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--commentReplyButtonFontFamily, var(--fontFamily, Arial, sans-serif));
  color: #56625F;
  color: var(--commentReplyButtonColor, #56625F);
  font-weight: 700;
  font-weight: var(--commentReplyButtonFontWeight, 700);
  line-height: 1.4;
  line-height: var(--commentReplyButtonLineHeight, 1.4);
  font-size: 0.875rem;
  text-transform: uppercase;
  text-transform: var(--commentReplyButtonTextTransform, uppercase);
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}

.commentsBlocks__comment__reply:hover {
  color: #000;
  color: var(--commentReplyButtonActiveColor, #000);
}

.commentsBlocks__comment__reply a:focus {
  color: #000;
  color: var(--commentReplyButtonActiveColor, #000);
}

.commentsBlocks__comment__text {
  margin-top: 0.9375rem;
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--commentTextFontFamily, var(--fontFamily, Arial, sans-serif));
  color: #454545;
  color: var(--commentTextColor, #454545);
  font-weight: 300;
  font-weight: var(--commentTextFontWeight, 300);
  font-size: 0.875rem;
  line-height: 1.4;
  line-height: var(--commentTextLineHeight, 1.4);
}

@media only screen and (min-width: 500px) {
  .commentsBlocks__comment__content {
    grid-template-areas: "avatar content";
    -ms-grid-columns: auto var(--commentInnerGap, 1.5625rem) 1fr;
    grid-template-columns: auto 1fr;
  }
  .commentsBlocks__comment__date,
  .commentsBlocks__comment__reply {
    display: inline-block;
  }
  .commentsBlocks__comment__reply {
    padding-left: 0.625rem;
    padding-left: var(--commentReplyButtonPaddingLeft, 0.625rem);
  }
  .commentsBlocks__comment__avatar {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .commentsBlocks__comment__inner {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
}

.commentsBlocks__comment__replies {
  margin-left: -webkit-calc(1.6875rem + 5.25vw);
  margin-left: calc(1.6875rem + 5.25vw);
}

@media (min-width: 1200px) {
  .commentsBlocks__comment__replies {
    margin-left: 5.625rem;
  }
}

.commentsBlock__form {
  margin-top: -webkit-calc(1.34375rem + 1.125vw);
  margin-top: calc(1.34375rem + 1.125vw);
}

@media (min-width: 1200px) {
  .commentsBlock__form {
    margin-top: 2.1875rem;
  }
}

.commentsBlock__loadMore {
  position: relative;
  z-index: 1;
  top: -0.9375rem;
  top: var(--commentLoadMoreTop, -0.9375rem);
  text-align: center;
}

.commentsBlock--paged.isActive .commentsBlock__loadMore {
  display: none;
}

.commentForm__title {
  font-family: meno-banner, georgia, serif;
  font-family: var(--commentFormTitle, var(--fontFamily, Arial, sans-serif));
  color: #252525;
  color: var(--commentFormTitleColor, #000);
  font-size: -webkit-calc(1.2875rem + 0.45vw);
  font-size: calc(1.2875rem + 0.45vw);
  font-weight: 700;
  font-weight: var(--commentFormTitleFontWeight, 700);
  line-height: 1.2;
  line-height: var(--commentFormTitleLineHeight, 1.2);
  margin-bottom: 0.5em;
  margin-bottom: var(--commentFormTitleMarginBottom, 0.5em);
}

@media (min-width: 1200px) {
  .commentForm__title {
    font-size: 1.625rem;
  }
}

.commentForm__title::after {
  content: '';
  display: block;
  width: 1.5625rem;
  width: var(--commentFormTitleBorderWidth, 1.5625rem);
  height: 1px;
  height: var(--commentFormTitleBorderHeight, 1px);
  margin-top: 0.4em;
  margin-top: var(--commentFormTitleBorderMarginTop, 0.4em);
  background-color: #252525;
  background-color: var(--commentFormTitleBorderColor, #000);
}

.comment-respond form > * + *:not(.form-submit) {
  margin-top: 0.625rem;
}

.comment-respond .form-submit {
  margin-top: 0.9375rem;
}

.footer {
  --footerItemsGap: 1.5625rem;
  margin-top: -webkit-calc(1.9375rem + 8.25vw);
  margin-top: calc(1.9375rem + 8.25vw);
}

@media (min-width: 1200px) {
  .footer {
    margin-top: 8.125rem;
  }
}

.footer > div {
  display: -ms-grid;
  display: grid;
  grid-template-areas: "logo" "addresses" "buttons" "menu" "bottom-menu";
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  grid-column-gap: 0;
  grid-column-gap: var(--footerColumnsGap, 0);
}

@media only screen and (min-width: 1024px) {
  .footer > div {
  grid-column-gap: 1.875rem;
  grid-column-gap: var(--footerColumnsGap, 0);
  }
}

@media only screen and (min-width: 768px) {
  .footer {
    --footerMenuTextAlign: center;
  }
}

@media only screen and (min-width: 1024px) {
  .footer {
    --footerAddressesBorderWidth: 0;
    --footerAddressesPaddingTop: 0;
    --footerColumnsGap: 1.875rem;
    --footerDoctolibMarginTop: 0;
    --footerLogoPaddingBottom: 0;
  }
  .footer > div {
    grid-template-areas: "logo 				addresses 				buttons" "menu 				menu 					menu" "bottom-menu 			bottom-menu 			bottom-menu";
    -ms-grid-columns: auto 1fr auto;
    grid-template-columns: auto 1fr auto;
    border-top: none;
  }
}

.footer__logo {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: logo;
  display: inline-block;
  padding-bottom: 0.625rem;
  padding-bottom: var(--footerLogoPaddingBottom, 0.625rem);
}

.footer__addresses {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
  grid-area: addresses;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  grid-gap: 0.625rem;
  grid-gap: var(--footerAddressesGap, 1.5625rem);
  padding-top: 1.5625rem;
  padding-top: var(--footerAddressesPaddingTop, var(--footerItemsGap, 1.5625rem));
  border-top: 3px solid #E5E5E5;
  border-top: var(--footerAddressesBorderWidth, 3px) solid var(--footerAddressesBorderColor, #000);
}

.footer__addresses > * {
  -webkit-align-self: center;
  -ms-flex-item-align: center;
  -ms-grid-row-align: center;
  align-self: center;
}

.footer__addresses__place .footer__addresses__place__name {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--footerAddressNameFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.875rem;
  font-size: var(--footerAddressNameFontSize, 1rem);
  color: #000;
  color: var(--footerAddressNameColor, #000);
  font-weight: 500;
  font-weight: var(--footerAddressNameFontWeight, 400);
  line-height: 1.67;
  line-height: var(--footerAddressNameLineHeight, 1.2);
  letter-spacing: 0;
  letter-spacing: var(--footerAddressNameLetterSpacing, 0);
  text-transform: initial;
  text-transform: var(--footerAddressNameTextTransform, initial);
}

@media only screen and (min-width: 1024px) {
  .footer__addresses__place .footer__addresses__place__name {
  text-transform: uppercase;
  text-transform: var(--footerAddressNameTextTransform, initial);
  }
}

@media only screen and (min-width: 1024px) {
  .footer__addresses__place .footer__addresses__place__name {
  letter-spacing: 0px;
  letter-spacing: var(--footerAddressNameLetterSpacing, 0);
  }
}

@media only screen and (min-width: 1024px) {
  .footer__addresses__place .footer__addresses__place__name {
  line-height: 1.25;
  line-height: var(--footerAddressNameLineHeight, 1.2);
  }
}

@media only screen and (min-width: 1024px) {
  .footer__addresses__place .footer__addresses__place__name {
  font-weight: 400;
  font-weight: var(--footerAddressNameFontWeight, 400);
  }
}

@media only screen and (min-width: 1024px) {
  .footer__addresses__place .footer__addresses__place__name {
  color: #252525;
  color: var(--footerAddressNameColor, #000);
  }
}

.footer__addresses__place > .footer__addresses__place__phone {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--footerAddressPhoneFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.875rem;
  font-size: var(--footerAddressPhoneFontSize, 1rem);
  color: #000;
  color: var(--footerAddressPhoneColor, #000);
  font-weight: 700;
  font-weight: var(--footerAddressPhoneFontWeight, 400);
  line-height: 1.43;
  line-height: var(--footerAddressPhoneLineHeight, 1.2);
  letter-spacing: 0;
  letter-spacing: var(--footerAddressPhoneLetterSpacing, 0);
}

@media only screen and (min-width: 1024px) {
  .footer__addresses__place > .footer__addresses__place__phone {
  letter-spacing: 0;
  letter-spacing: var(--footerAddressPhoneLetterSpacing, 0);
  }
}

@media only screen and (min-width: 1024px) {
  .footer__addresses__place > .footer__addresses__place__phone {
  line-height: 1.28;
  line-height: var(--footerAddressPhoneLineHeight, 1.2);
  }
}

@media only screen and (min-width: 1024px) {
  .footer__addresses__place > .footer__addresses__place__phone {
  color: #252525;
  color: var(--footerAddressPhoneColor, #000);
  }
}

.footer__addresses__place > * + * {
  margin-top: 0.125rem;
  margin-top: var(--footerAddressesPlacesGap, 0.625rem);
}

@media only screen and (min-width: 768px) {
  .footer__addresses {
    grid-template-columns: repeat(auto-fill, minmax(15.625rem, 1fr));
    grid-template-columns: repeat(auto-fill, minmax(var(--footerAddressesMinimumWidth, 15.625rem), 1fr));
    grid-gap: 0.625rem;
    grid-gap: var(--footerAddressesGap, 1.5625rem);
  }
}

.footer__buttons {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  grid-area: buttons;
  margin-top: 1.5625rem;
  margin-top: var(--footerButtonsMarginTop, var(--footerItemsGap, 1.5625rem));
}

.footer__doctolib {
  display: inline-block;
}

.footer__menu {
  -ms-grid-row: 4;
  -ms-grid-column: 1;
  grid-area: menu;
  position: relative;
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--footerMenuFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.75rem;
  font-size: var(--footerMenuFontSize, 1rem);
  color: #FFF;
  color: var(--footerMenuColor, #FFF);
  font-weight: 500;
  font-weight: var(--footerMenuFontWeight, 400);
  line-height: 2.08;
  line-height: var(--footerMenuLineHeight, 2);
  letter-spacing: 0.1em;
  letter-spacing: var(--footerMenuLetterSpacing, 0);
  text-align: left;
  text-align: var(--footerMenuTextAlign, left);
  text-transform: uppercase;
  text-transform: var(--footerMenuTextTransform, uppercase);
  margin-top: 1.5625rem;
  margin-top: var(--footerMenuMarginTop, var(--footerItemsGap, 1.5625rem));
  padding-top: 0.9375rem;
  padding-top: var(--footerMenuPaddingTop, 0.9375rem);
  padding-bottom: 0.9375rem;
  padding-bottom: var(--footerMenuPaddingBottom, 0.9375rem);
}

@media only screen and (min-width: 768px) {
  .footer__menu {
  text-transform: none;
  text-transform: var(--footerMenuTextTransform, uppercase);
  }
}

@media only screen and (min-width: 768px) {
  .footer__menu {
  line-height: 2.14;
  line-height: var(--footerMenuLineHeight, 2);
  }
}

@media only screen and (min-width: 768px) {
  .footer__menu {
  font-size: 0.875rem;
  font-size: var(--footerMenuFontSize, 1rem);
  }
}

.footer__menu > * {
  position: relative;
  z-index: 1;
}

.footer__menu li {
  display: block;
}

.footer__menu::before {
  content: '';
  display: block;
  width: 100vw;
  height: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  left: -webkit-calc(50% - 50vw);
  left: calc(50% - 50vw);
  background-color: #2B2523;
  background-color: var(--footerMenuBackgroundColor, #000);
}

@media only screen and (min-width: 768px) {
  .footer__menu li {
    display: inline-block;
  }
  .footer__menu li + li::before {
    content: '|';
    color: rgba(255, 255, 255, 0.5);
    color: var(--footerMenuItemsDividerColor, rgba(255, 255, 255, 0.5));
    margin: 0 0.625rem;
    margin: 0 var(--footerMenuItemsGap, 0.625rem);
  }
}

.footer__bottomMenu {
  -ms-grid-row: 5;
  -ms-grid-column: 1;
  grid-area: bottom-menu;
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--footerBottomMenuFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.8125rem;
  font-size: var(--footerBottomMenuFontSize, 1rem);
  color: #534756;
  color: var(--footerBottomMenuColor, #000);
  font-weight: 500;
  font-weight: var(--footerBottomMenuFontWeight, 400);
  line-height: 1.2;
  line-height: var(--footerBottomMenuLineHeight, 1.2);
  letter-spacing: 0.05em;
  letter-spacing: var(--footerBottomMenuLetterSpacing, 0);
  text-align: center;
  text-align: var(--footerBottomMenuTextAlign, center);
  text-transform: initial;
  text-transform: var(--footerBottomMenuTextTransform, initial);
  padding-top: 0.9375rem;
  padding-top: var(--footerBottomMenuPaddingTop, 0.9375rem);
  padding-bottom: 0.9375rem;
  padding-bottom: var(--footerBottomMenuPaddingBottom, 0.9375rem);
}

@media only screen and (min-width: 1024px) {
  .footer__logo {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .footer__addresses {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
  .footer__buttons {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .footer__menu {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
  }
  .footer__bottomMenu {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
  }
}

.footer__bottomMenu li {
  display: inline-block;
}

.footer__bottomMenu li + li::before {
  content: '|';
  display: inline-block;
  margin: 0 0.9375rem;
  margin: 0 var(--footerBottomMenuItemsGap, 0.9375rem);
}

.applyStyles h2 {
  font-family: "meno-banner", georgia, serif;
  color: #000;
  font-size: -webkit-calc(1.34375rem + 1.125vw);
  font-size: calc(1.34375rem + 1.125vw);
  font-weight: 400;
  font-weight: var(--fontWeightRegular);
  line-height: 1.43;
  margin-bottom: 0.4em;
}

.textImage__text__content h2 {
  font-family: "meno-banner", georgia, serif;
  color: #000;
  font-size: -webkit-calc(1.34375rem + 1.125vw);
  font-size: calc(1.34375rem + 1.125vw);
  font-weight: 400;
  font-weight: var(--fontWeightRegular);
  line-height: 1.43;
  margin-bottom: 0.4em;
}

.homeHero__content__text h2 {
  font-family: "meno-banner", georgia, serif;
  color: #000;
  font-size: -webkit-calc(1.34375rem + 1.125vw);
  font-size: calc(1.34375rem + 1.125vw);
  font-weight: 400;
  font-weight: var(--fontWeightRegular);
  line-height: 1.43;
  margin-bottom: 0.4em;
}

@media (min-width: 1200px) {
  .applyStyles h2, .textImage__text__content h2, .homeHero__content__text h2 {
    font-size: 2.1875rem;
  }
}

.applyStyles h3 {
  font-family: "meno-banner", georgia, serif;
  color: #404040;
  color: var(--tundoraColor);
  font-size: -webkit-calc(1.3rem + 0.6vw);
  font-size: calc(1.3rem + 0.6vw);
  font-weight: 400;
  font-weight: var(--fontWeightRegular);
  line-height: 1;
  margin-bottom: 0.4em;
}

.textImage__text__content h3 {
  font-family: "meno-banner", georgia, serif;
  color: #404040;
  color: var(--tundoraColor);
  font-size: -webkit-calc(1.3rem + 0.6vw);
  font-size: calc(1.3rem + 0.6vw);
  font-weight: 400;
  font-weight: var(--fontWeightRegular);
  line-height: 1;
  margin-bottom: 0.4em;
}

.homeHero__content__text h3 {
  font-family: "meno-banner", georgia, serif;
  color: #404040;
  color: var(--tundoraColor);
  font-size: -webkit-calc(1.3rem + 0.6vw);
  font-size: calc(1.3rem + 0.6vw);
  font-weight: 400;
  font-weight: var(--fontWeightRegular);
  line-height: 1;
  margin-bottom: 0.4em;
}

@media (min-width: 1200px) {
  .applyStyles h3, .textImage__text__content h3, .homeHero__content__text h3 {
    font-size: 1.75rem;
  }
}

.applyStyles ul:not(.dontApplyStyle), .textImage__text__content ul:not(.dontApplyStyle), .homeHero__content__text ul:not(.dontApplyStyle) {
  margin-left: 2em;
  list-style-position: inside;
}

.applyStyles ul:not(.dontApplyStyle) li::before, .textImage__text__content ul:not(.dontApplyStyle) li::before, .homeHero__content__text ul:not(.dontApplyStyle) li::before {
  content: url("data:image/svg+xml;charset=utf8,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Ccircle cx='6' cy='6' r='6' fill='%23ECE4D8'/%3E %3C/svg%3E ");
  display: inline-block;
  margin-right: 0.9375rem;
}

.applyStyles ol:not(.dontApplyStyle), .textImage__text__content ol:not(.dontApplyStyle), .homeHero__content__text ol:not(.dontApplyStyle) {
  margin-left: 2em;
  list-style: decimal;
  list-style-position: inside;
}

.applyStyles p a {
  background-color: #EDEDED;
  background-color: var(--gallery3Color);
  -webkit-transition: background-color 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: background-color 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.textImage__text__content p a {
  background-color: #EDEDED;
  background-color: var(--gallery3Color);
  -webkit-transition: background-color 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: background-color 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.homeHero__content__text p a {
  background-color: #EDEDED;
  background-color: var(--gallery3Color);
  -webkit-transition: background-color 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: background-color 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.applyStyles ul:not(.dontApplyStyle) a {
  background-color: #EDEDED;
  background-color: var(--gallery3Color);
  -webkit-transition: background-color 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: background-color 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.textImage__text__content ul:not(.dontApplyStyle) a {
  background-color: #EDEDED;
  background-color: var(--gallery3Color);
  -webkit-transition: background-color 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: background-color 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.homeHero__content__text ul:not(.dontApplyStyle) a {
  background-color: #EDEDED;
  background-color: var(--gallery3Color);
  -webkit-transition: background-color 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: background-color 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.applyStyles ol:not(.dontApplyStyle) a {
  background-color: #EDEDED;
  background-color: var(--gallery3Color);
  -webkit-transition: background-color 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: background-color 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.textImage__text__content ol:not(.dontApplyStyle) a {
  background-color: #EDEDED;
  background-color: var(--gallery3Color);
  -webkit-transition: background-color 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: background-color 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.homeHero__content__text ol:not(.dontApplyStyle) a {
  background-color: #EDEDED;
  background-color: var(--gallery3Color);
  -webkit-transition: background-color 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: background-color 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.applyStyles p a:hover {
  background-color: #ECE4D8;
  background-color: var(--whiteRockColor);
}

.textImage__text__content p a:hover {
  background-color: #ECE4D8;
  background-color: var(--whiteRockColor);
}

.homeHero__content__text p a:hover {
  background-color: #ECE4D8;
  background-color: var(--whiteRockColor);
}

.applyStyles ul:not(.dontApplyStyle) a:hover {
  background-color: #ECE4D8;
  background-color: var(--whiteRockColor);
}

.textImage__text__content ul:not(.dontApplyStyle) a:hover {
  background-color: #ECE4D8;
  background-color: var(--whiteRockColor);
}

.homeHero__content__text ul:not(.dontApplyStyle) a:hover {
  background-color: #ECE4D8;
  background-color: var(--whiteRockColor);
}

.applyStyles ol:not(.dontApplyStyle) a:hover {
  background-color: #ECE4D8;
  background-color: var(--whiteRockColor);
}

.textImage__text__content ol:not(.dontApplyStyle) a:hover {
  background-color: #ECE4D8;
  background-color: var(--whiteRockColor);
}

.homeHero__content__text ol:not(.dontApplyStyle) a:hover {
  background-color: #ECE4D8;
  background-color: var(--whiteRockColor);
}

.applyStyles p a:focus {
  background-color: #ECE4D8;
  background-color: var(--whiteRockColor);
}

.textImage__text__content p a:focus {
  background-color: #ECE4D8;
  background-color: var(--whiteRockColor);
}

.homeHero__content__text p a:focus {
  background-color: #ECE4D8;
  background-color: var(--whiteRockColor);
}

.applyStyles ul:not(.dontApplyStyle) a:focus {
  background-color: #ECE4D8;
  background-color: var(--whiteRockColor);
}

.textImage__text__content ul:not(.dontApplyStyle) a:focus {
  background-color: #ECE4D8;
  background-color: var(--whiteRockColor);
}

.homeHero__content__text ul:not(.dontApplyStyle) a:focus {
  background-color: #ECE4D8;
  background-color: var(--whiteRockColor);
}

.applyStyles ol:not(.dontApplyStyle) a:focus {
  background-color: #ECE4D8;
  background-color: var(--whiteRockColor);
}

.textImage__text__content ol:not(.dontApplyStyle) a:focus {
  background-color: #ECE4D8;
  background-color: var(--whiteRockColor);
}

.homeHero__content__text ol:not(.dontApplyStyle) a:focus {
  background-color: #ECE4D8;
  background-color: var(--whiteRockColor);
}

.applyStyles blockquote, .textImage__text__content blockquote, .homeHero__content__text blockquote {
  --blockquoteSvgWidth: 40px;
  position: relative;
  color: red;
  line-height: 24px;
  font-style: italic;
}

.applyStyles blockquote > * {
  padding-left: -webkit-calc(40px + 0.9375rem);
  padding-left: calc(40px + 0.9375rem);
  padding-left: -webkit-calc(var(--blockquoteSvgWidth) + 0.9375rem);
  padding-left: calc(var(--blockquoteSvgWidth) + 0.9375rem);
}

.textImage__text__content blockquote > * {
  padding-left: -webkit-calc(18px + 0.9375rem);
  padding-left: calc(18px + 0.9375rem);
  padding-left: -webkit-calc(var(--blockquoteSvgWidth) + 0.9375rem);
  padding-left: calc(var(--blockquoteSvgWidth) + 0.9375rem);
}

.homeHero__content__text blockquote > * {
  padding-left: -webkit-calc(40px + 0.9375rem);
  padding-left: calc(40px + 0.9375rem);
  padding-left: -webkit-calc(var(--blockquoteSvgWidth) + 0.9375rem);
  padding-left: calc(var(--blockquoteSvgWidth) + 0.9375rem);
}

.applyStyles blockquote::before, .textImage__text__content blockquote::before, .homeHero__content__text blockquote::before {
  content: url("data:image/svg+xml;charset=utf8,%3Csvg width='40' height='31' viewBox='0 0 40 31' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M15.4331 3.85492C13.1234 6.21071 11.3911 8.45941 10.2362 10.601C9.18635 12.6356 8.50394 14.8307 8.18898 17.1865H14.6457L13.5433 31H0L0.787401 20.7202C1.10236 16.6511 1.99475 12.9568 3.46457 9.63731C5.03937 6.21071 7.45407 2.99827 10.7087 0L15.4331 3.85492ZM40 3.85492C37.6903 6.21071 35.958 8.45941 34.8032 10.601C33.7533 12.6356 33.0709 14.8307 32.7559 17.1865H39.2126L38.1102 31H24.5669L25.3543 20.7202C25.6693 16.6511 26.5617 12.9568 28.0315 9.63731C29.6063 6.21071 32.021 2.99827 35.2756 0L40 3.85492Z' fill='%23FFF'/%3E %3C/svg%3E ");
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}


.btnRounded {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 0.8125rem;
  font-weight: 700;
  line-height: 1.54;
  text-align: center;
  text-transform: uppercase;
  border: 3px solid #56625F;
  border: 3px solid var(--corduroyColor);
  -webkit-border-radius: 50px;
  border-radius: 50px;
  padding: 0.53125em 3.125em 0.5em;
  background: -webkit-gradient(linear, left bottom, left top, from(#56625F), to(#56625F)) no-repeat right bottom/0% 100%;
  background: linear-gradient(to top, #56625F 0%, #56625F 100%) no-repeat right bottom/0% 100%;
  background: -webkit-gradient(linear, left bottom, left top, from(var(--corduroyColor)), to(var(--corduroyColor))) no-repeat right bottom/0% 100%;
  background: linear-gradient(to top, var(--corduroyColor) 0%, var(--corduroyColor) 100%) no-repeat right bottom/0% 100%;
  -webkit-transition: background-size 0.35s cubic-bezier(0.645, 0.045, 0.355, 1), color 0.8s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: background-size 0.35s cubic-bezier(0.645, 0.045, 0.355, 1), color 0.8s cubic-bezier(0.25, 0.1, 0.25, 1);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}


.btnRounded:hover {
  color: #FFF;
  background-size: 100% 100%;
  background-position: left bottom;
  -webkit-transition: background-size 0.35s cubic-bezier(0.645, 0.045, 0.355, 1), color 0.4s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: background-size 0.35s cubic-bezier(0.645, 0.045, 0.355, 1), color 0.4s cubic-bezier(0.25, 0.1, 0.25, 1);
}


.buttonRounded {
  display: inline-block;
  font-size: 0.8125rem;
  color: #FFF;
  font-weight: 600;
  line-height: 1.2;
  text-align: center;
  text-transform: uppercase;
  -webkit-border-radius: 10px;
  border-radius: 10px;
  padding: 0.92308em 1.53846em;
  background-color: red;
}


.buttonArrow {
  display: inline-block;
  color: #000;
}


.buttonArrow::before {
  content: url("data:image/svg+xml;charset=utf8,%3Csvg width='16' height='12' viewBox='0 0 16 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M1.5 5.75694H14' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3Cpath d='M11 1.00641L15 5.44024L11 10.5075' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E %3C/svg%3E ");
  display: inline-block;
  margin-right: 1em;
  -webkit-transition: -webkit-transform .3s;
  transition: -webkit-transform .3s;
  transition: transform .3s;
  transition: transform .3s, -webkit-transform .3s;
  -webkit-transform: translateX(0);
  -ms-transform: translateX(0);
  transform: translateX(0);
}


.buttonArrow span {
  font-size: 0.9375rem;
  font-weight: 700;
  line-height: 1;
  text-decoration: underline;
}

@media (hover: hover) {
  
  .buttonArrow:hover::before {
    -webkit-transform: translateX(3px);
    -ms-transform: translateX(3px);
    transform: translateX(3px);
  }
}


.buttonArrowDiamond {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  color: yellow;
}


.buttonArrowDiamond svg > * {
  stroke: violet;
}


.buttonArrowDiamond svg > g {
  -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.42, 0, 0.58, 1);
  transition: -webkit-transform 0.3s cubic-bezier(0.42, 0, 0.58, 1);
  transition: transform 0.3s cubic-bezier(0.42, 0, 0.58, 1);
  transition: transform 0.3s cubic-bezier(0.42, 0, 0.58, 1), -webkit-transform 0.3s cubic-bezier(0.42, 0, 0.58, 1);
  transform-box: fill-box;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
}


.buttonArrowDiamond span {
  font-size: 0.9375rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.06em;
  margin-left: 0.66667em;
}

@media (hover: hover) {
  
  .buttonArrowDiamond:hover > svg > g {
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
  }
}


.buttonOutline {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
  color: red;
  font-weight: 600;
  line-height: 1;
  text-align: center;
  text-transform: uppercase;
  border: 1px solid red;
  padding: 0.9375em 2.5em;
  padding-top: 1em;
  -webkit-transition: color .3s;
  transition: color .3s;
}

@media only screen and (min-width: 500px) {
  
  .buttonOutline {
    min-width: 11.25rem;
  }
}


.buttonOutline::before {
  content: '';
  display: block;
  width: 0;
  height: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  background-color: red;
  -webkit-transition: width .3s;
  transition: width .3s;
}


.buttonOutline span {
  position: relative;
  z-index: 1;
  font-size: 0.75rem;
}

@media (hover: hover) {
  
  .buttonOutline:hover {
    color: #FFF;
  }
  
  .buttonOutline:hover::before {
    width: 100%;
  }
}

:root {
  --button-outline-border-background-color: #FFF;
  --button-outline-border-color: aliceblue;
  --button-outline-border-max-width: 17.5rem;
  --button-outline-border-padding: 0.9375rem 1.5625rem;
}


.buttonOutlineBorder {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  max-width: 17.5rem;
  max-width: var(--button-outline-border-max-width);
  position: relative;
  padding: 0.3125rem;
}


.buttonOutlineBorder > span {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  font-size: 0.9375rem;
  color: aliceblue;
  color: var(--button-outline-border-color);
  font-weight: 700;
  letter-spacing: 0.08em;
  text-align: center;
  text-transform: uppercase;
  padding: 0.9375rem 1.5625rem;
  padding: var(--button-outline-border-padding);
  background-color: #FFF;
  background-color: var(--button-outline-border-background-color);
}


.buttonOutlineBorder svg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}


.buttonOutlineBorder svg rect {
  -webkit-transition: all .35s linear;
  transition: all .35s linear;
  stroke: #FFF;
  fill: none;
  stroke-dasharray: 1500, 0;
}

@media (hover: hover) {
  
  .buttonOutlineBorder:hover svg rect {
    -webkit-transition: all 0.8s cubic-bezier(0.25, 0.1, 0.25, 1);
    transition: all 0.8s cubic-bezier(0.25, 0.1, 0.25, 1);
    stroke-width: 5;
    stroke-dasharray: 0, 1500;
  }
}


.buttonSquareArrow {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  font-family: "azo-sans-web", arial, helvetica, sans-serif;
  font-size: 0.9375rem;
  color: #56625F;
  color: var(--buttonSquareArrowColor, var(--corduroyColor));
  font-weight: 300;
  font-weight: var(--fontWeightLight);
  line-height: 1;
  text-align: center;
  margin-left: 1.25rem;
  margin-left: var(--buttonSquareArrowLeft, 1.25rem);
  border: 1px solid #56625F;
  border: 1px solid var(--buttonSquareArrowColor, var(--corduroyColor));
  padding: 0.75rem 0.4375rem;
  -webkit-transition: border-color .3s;
  transition: border-color .3s;
}


.form-submit button[type="submit"] {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  font-family: "azo-sans-web", arial, helvetica, sans-serif;
  font-size: 0.9375rem;
  color: #56625F;
  color: var(--buttonSquareArrowColor, var(--corduroyColor));
  font-weight: 300;
  font-weight: var(--fontWeightLight);
  line-height: 1;
  text-align: center;
  margin-left: 1.25rem;
  margin-left: var(--buttonSquareArrowLeft, 1.25rem);
  border: 1px solid #56625F;
  border: 1px solid var(--buttonSquareArrowColor, var(--corduroyColor));
  padding: 0.75rem 0.4375rem;
  -webkit-transition: border-color .3s;
  transition: border-color .3s;
}


.buttonSquareArrow span,
.form-submit button[type="submit"] span {
  margin-left: 0.5rem;
}


.buttonSquareArrow svg {
  margin-left: -webkit-calc(1.25rem * -1);
  margin-left: calc(1.25rem * -1);
  margin-left: -webkit-calc(var(--buttonSquareArrowLeft, 1.25rem) * -1);
  margin-left: calc(var(--buttonSquareArrowLeft, 1.25rem) * -1);
  -webkit-transition: -webkit-transform .3s;
  transition: -webkit-transform .3s;
  transition: transform .3s;
  transition: transform .3s, -webkit-transform .3s;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}


.form-submit button[type="submit"] svg {
  margin-left: -webkit-calc(1.25rem * -1);
  margin-left: calc(1.25rem * -1);
  margin-left: -webkit-calc(var(--buttonSquareArrowLeft, 1.25rem) * -1);
  margin-left: calc(var(--buttonSquareArrowLeft, 1.25rem) * -1);
  -webkit-transition: -webkit-transform .3s;
  transition: -webkit-transform .3s;
  transition: transform .3s;
  transition: transform .3s, -webkit-transform .3s;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}


.buttonSquareArrow svg path {
  fill: #56625F;
  fill: var(--buttonSquareArrowColor, var(--corduroyColor));
}


.form-submit button[type="submit"] svg path {
  fill: #56625F;
  fill: var(--buttonSquareArrowColor, var(--corduroyColor));
}


.buttonSquareArrow:hover,
.form-submit button:hover[type="submit"],
.buttonSquareArrow:focus,
.form-submit button:focus[type="submit"] {
  border-color: transparent;
}


.buttonSquareArrow:hover svg,
.form-submit button:hover[type="submit"] svg,
.buttonSquareArrow:focus svg,
.form-submit button:focus[type="submit"] svg {
  -webkit-animation: moveArrow .4s infinite alternate;
  animation: moveArrow .4s infinite alternate;
}

@-webkit-keyframes moveArrow {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    -webkit-transform: translate3d(0.3125rem, 0, 0);
    transform: translate3d(0.3125rem, 0, 0);
  }
}

@keyframes moveArrow {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    -webkit-transform: translate3d(0.3125rem, 0, 0);
    transform: translate3d(0.3125rem, 0, 0);
  }
}

.button:not(.qbutton) {
  display: inline-block;
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--buttonFontFamily, var(--baseFontFamily, var(--fontFamily, Arial, sans-serif)));
  font-size: 1rem;
  font-size: var(--buttonFontSize, 1rem);
  color: #FFF;
  color: var(--buttonColor, #FFF);
  font-weight: 400;
  font-weight: var(--buttonFontWeight, 400);
  letter-spacing: 0px;
  letter-spacing: var(--buttonLetterSpacing, 0px);
  text-align: center;
  text-transform: initial;
  text-transform: var(--buttonTextTransform, initial);
  -webkit-border-radius: 0px;
  border-radius: 0px;
  -webkit-border-radius: var(--buttonBorderRadius, 0px);
  border-radius: var(--buttonBorderRadius, 0px);
  padding: 0.5625rem 2.1875rem 0.5625rem 2.1875rem;
  padding: var(--buttonPaddingTop, 0.5625rem) var(--buttonPaddingRight, 2.1875rem) var(--buttonPaddingBottom, 0.5625rem) var(--buttonPaddingLeft, 2.1875rem);
  background: -webkit-gradient(linear, right top, left top, color-stop(50%, #000), color-stop(50%, #F00)) right bottom;
  background: linear-gradient(to left, #000 50%, #F00 50%) right bottom;
  background: -webkit-gradient(linear, right top, left top, color-stop(50%, var(--buttonBackgroundColor, #000)), color-stop(50%, var(--buttonHoverBackgroundColor, #F00))) right bottom;
  background: linear-gradient(to left, var(--buttonBackgroundColor, #000) 50%, var(--buttonHoverBackgroundColor, #F00) 50%) right bottom;
  background-size: 200% 100%;
  -webkit-transition: background-position 0.3s cubic-bezier(0.445, 0.05, 0.55, 0.95), color 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: background-position 0.3s cubic-bezier(0.445, 0.05, 0.55, 0.95), color 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}

@media (hover: hover) {
  .button:not(.qbutton):hover {
    color: #FFF;
    color: var(--buttonHoverColor, var(--buttonColor, #FFF));
    background-position: left bottom;
  }
  .button:not(.qbutton):focus {
    color: #FFF;
    color: var(--buttonHoverColor, var(--buttonColor, #FFF));
    background-position: left bottom;
  }
}


.formControl {
  padding-bottom: 0.3125rem;
  border-bottom: 1px solid #404040;
  border-bottom: 1px solid var(--tundoraColor);
}


.formControl {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--baseFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.8125rem;
  color: #404040;
  color: var(--tundoraColor);
  font-weight: 400;
  line-height: 1.22;
  letter-spacing: 0.1em;
}


.formControl::-webkit-input-placeholder {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--baseFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.8125rem;
  color: #404040;
  color: var(--tundoraColor);
  font-weight: 400;
  line-height: 1.22;
  letter-spacing: 0.1em;
}


.formControl::-moz-placeholder {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--baseFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.8125rem;
  color: #404040;
  color: var(--tundoraColor);
  font-weight: 400;
  line-height: 1.22;
  letter-spacing: 0.1em;
}


.formControl:-ms-input-placeholder {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--baseFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.8125rem;
  color: #404040;
  color: var(--tundoraColor);
  font-weight: 400;
  line-height: 1.22;
  letter-spacing: 0.1em;
}


.formControl::-ms-input-placeholder {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--baseFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.8125rem;
  color: #404040;
  color: var(--tundoraColor);
  font-weight: 400;
  line-height: 1.22;
  letter-spacing: 0.1em;
}


.formControl::placeholder {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--baseFontFamily, var(--fontFamily, Arial, sans-serif));
  font-size: 0.8125rem;
  color: #404040;
  color: var(--tundoraColor);
  font-weight: 400;
  line-height: 1.22;
  letter-spacing: 0.1em;
}

.commentsBlock__loadMore > a {
  display: inline-block;
  font-size: 0.875rem;
  color: #000;
  font-weight: 300;
  font-weight: var(--fontWeightLight);
  line-height: 1.4;
  text-align: center;
  border: 1px solid #56625F;
  border: 1px solid var(--corduroyColor);
  background-color: #FFF;
  -webkit-box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
  padding: 0.625rem 1.125rem;
  -webkit-transition: -webkit-transform .3s;
  transition: -webkit-transform .3s;
  transition: transform .3s;
  transition: transform .3s, -webkit-transform .3s;
}

.commentsBlock__loadMore > a:focus, .commentsBlock__loadMore > a:hover {
  -webkit-transform: translateY(-5px);
  -ms-transform: translateY(-5px);
  transform: translateY(-5px);
}

.form-submit button[type="submit"] {
  margin-left: 0;
  padding: 0.625rem -webkit-calc(1.34375rem + 1.125vw);
  padding: 0.625rem calc(1.34375rem + 1.125vw);
  -webkit-transition: background-color .3s, color .3s, border-color .3s;
  transition: background-color .3s, color .3s, border-color .3s;
}

@media (min-width: 1200px) {
  .form-submit button[type="submit"] {
    padding: 0.625rem 2.1875rem;
  }
}

.form-submit button[type="submit"]:hover, .form-submit button[type="submit"]:focus {
  color: #FFF;
  background-color: #000;
  border-color: #FFF;
}

.commentsForm {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--fontFamily);
  font-style: normal;
  font-weight: 300;
  font-size: 15px;
  line-height: 18px;
  letter-spacing: 0.03em;
}

.commentsForm .materialInput {
  overflow: initial;
  --materialInputFontWeight: 400;
  --materialInputFontSize: .9375rem;
  --materialInputColor: #252525 !important;
  --materialInputLabelFontSize: 0.9375rem;
  --materialInputLabelFontWeight: 300;
  --materialInputLabelColor: var(--fireflyColor);
  --materialInputBorderColor: var(--fireflyColor);
  --materialInputLabelActiveColor: #252525;
}

.commentsForm .materialInput.email input:focus ~ .material-input__help-text,
.commentsForm .materialInput.email input.isActive ~ .material-input__help-text {
  opacity: 0;
  pointer-events: none;
}

.commentsForm .material-input__help-text svg {
  cursor: pointer;
  position: absolute;
  top: 25px;
  left: 50px;
}

.commentsForm .material-input__help-text svg:hover + div {
  display: block;
}

.commentsForm .material-input__help-text svg path {
  stroke: #D5BD74;
}

.commentsForm .material-input__help-text div {
  display: none;
  max-width: 300px;
  padding: 12px;
  background: #ffffff;
  -webkit-border-radius: 8px;
  border-radius: 8px;
  position: absolute;
  z-index: 1;
  -webkit-box-shadow: 0px 12px 16px -4px rgba(16, 24, 40, 0.08), 0px 4px 6px -2px rgba(16, 24, 40, 0.03);
  box-shadow: 0px 12px 16px -4px rgba(16, 24, 40, 0.08), 0px 4px 6px -2px rgba(16, 24, 40, 0.03);
  left: 33px;
  bottom: 36px;
  font-family: "Montserrat", arial, helvetica, sans-serif;
  font-style: normal;
  font-weight: 400;
  font-size: 0.8125rem;
  line-height: 1.38;
  letter-spacing: 0.03em;
  color: #0A1C2B;
  opacity: 1;
  pointer-events: auto;
  -webkit-transition: all .2s;
  transition: all .2s;
}

.commentsForm .material-input__help-text div::after {
  content: '';
  position: absolute;
  width: 12px;
  height: 12px;
  bottom: -6px;
  left: 19px;
  background: #FFFFFF;
  -webkit-border-radius: 1px;
  border-radius: 1px;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.commentsForm .isNotValid {
  display: none;
  font-style: normal;
  font-weight: 400;
  font-size: 0.875rem;
  line-height: 1.42;
  -webkit-font-feature-settings: 'salt' on;
  font-feature-settings: 'salt' on;
  color: #F04438;
  margin-top: 6px;
  margin-bottom: 5px;
}

.commentsForm .isNotValid--icone,
.commentsForm .valid--icone {
  display: none;
  position: absolute;
  right: 0;
  bottom: 8px;
}

.commentsForm .materialInput.error {
  position: relative;
  margin-top: 19px;
}

.commentsForm .materialInput.error label {
  border-bottom-color: #F04438 !important;
}

.commentsForm .materialInput.error label::after {
  border-bottom: none;
}

.commentsForm .materialInput.error .isNotValid {
  display: block;
}

.commentsForm .materialInput.error .isNotValid--icone {
  display: block;
}

.commentsForm .materialInput.success {
  position: relative;
}

.commentsForm .materialInput.success label {
  border-bottom-color: #3A9C17 !important;
}

.commentsForm .materialInput.success label::after {
  border-bottom: none;
}

.commentsForm .materialInput.success .valid--icone {
  display: block;
}

.commentsForm flash-message {
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.5;
  letter-spacing: -0.012em;
  color: #FFFFFF;
}

.commentsForm .materialInput label > span {
  width: 100%;
  background: #fff;
  font-weight: 300;
}

#wait-approval {
  display: block;
  position: relative;
  top: -200px;
}

.materialInput textarea.isActive + label > span {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--fontFamily);
  font-weight: 400;
  font-size: 0.75rem;
  letter-spacing: 0.03em;
  color: #D5BD74;
}

.materialInput input.isActive + label > span {
  font-family: azo-sans-web, arial, helvetica, sans-serif;
  font-family: var(--fontFamily);
  font-weight: 400;
  font-size: 0.75rem;
  letter-spacing: 0.03em;
  color: #D5BD74;
}

.materialInput textarea, .materialInput input {
  padding-top: 1.25rem;
  padding-bottom: 4px;
}

.materialInput input:focus + label > span {
  bottom: -5px;
}

.comment-form-subscriptions {
  display: none;
}

.commentsBlocks__comment__content {
  scroll-margin-top: 18.75rem;
}

.materialInput textarea {
  color: #252525;
  color: var(--mineShaft2Color);
}

.comment-respond .materialInput textarea {
  color: #252525;
  color: var(--mineShaft2Color);
}

.contactButtons {
  display: none;
}

@media only screen and (min-width: 1100px) {
  .contactButtons {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .contactButtons--fixed {
    position: fixed;
    z-index: 1001;
    right: 0.9375rem;
    right: var(--contactButtonsBaseRight, 0.9375rem);
    bottom: 35px;
    bottom: var(--backToTopBottom, 2.1875rem);
    -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.42, 0, 0.58, 1);
    transition: -webkit-transform 0.3s cubic-bezier(0.42, 0, 0.58, 1);
    transition: transform 0.3s cubic-bezier(0.42, 0, 0.58, 1);
    transition: transform 0.3s cubic-bezier(0.42, 0, 0.58, 1), -webkit-transform 0.3s cubic-bezier(0.42, 0, 0.58, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  @media only screen and (min-width: 1100px) {
    .contactButtons--fixed {
    bottom: 35px;
    bottom: var(--backToTopBottom, 2.1875rem);
    }
  }
  body.search .contactButtons--fixed {
    display: none;
  }
  body.backToTop--isActive .contactButtons--fixed {
    -webkit-transform: translate3d(-webkit-calc(-2.1875rem + 0px * -1), 0, 0);
    transform: translate3d(calc(-2.1875rem + 0px * -1), 0, 0);
    -webkit-transform: translate3d(-webkit-calc(-2.1875rem + var(--extraRight, 0px) * -1), 0, 0);
    transform: translate3d(calc(-2.1875rem + var(--extraRight, 0px) * -1), 0, 0);
  }
  body.backToTop--isActive .contactButtons--fixed.isHidden {
    -webkit-transform: translate3d(-webkit-calc(-2.1875rem + 0px * -1), -webkit-calc((100% + 35px)), 0);
    transform: translate3d(calc(-2.1875rem + 0px * -1), calc((100% + 35px)), 0);
    -webkit-transform: translate3d(-webkit-calc(-2.1875rem + var(--extraRight, 0px) * -1), -webkit-calc((100% + var(--backToTopBottom, 2.1875rem))), 0);
    transform: translate3d(calc(-2.1875rem + var(--extraRight, 0px) * -1), calc((100% + var(--backToTopBottom, 2.1875rem))), 0);
  }
  @media only screen and (min-width: 1100px) {
    body.backToTop--isActive .contactButtons--fixed.isHidden {
    -webkit-transform: translate3d(-webkit-calc(-2.1875rem + 0px * -1), -webkit-calc((100% + 35px)), 0);
    transform: translate3d(calc(-2.1875rem + 0px * -1), calc((100% + 35px)), 0);
    -webkit-transform: translate3d(-webkit-calc(-2.1875rem + var(--extraRight, 0px) * -1), -webkit-calc((100% + var(--backToTopBottom, 2.1875rem))), 0);
    transform: translate3d(calc(-2.1875rem + var(--extraRight, 0px) * -1), calc((100% + var(--backToTopBottom, 2.1875rem))), 0);
    }
  }
  @media only screen and (min-width: 1100px) {
    body.backToTop--isActive .contactButtons--fixed.isHidden {
    -webkit-transform: translate3d(-webkit-calc(-2.1875rem + 0px * -1), -webkit-calc((100% + 35px)), 0);
    transform: translate3d(calc(-2.1875rem + 0px * -1), calc((100% + 35px)), 0);
    -webkit-transform: translate3d(-webkit-calc(-2.1875rem + var(--extraRight, 0px) * -1), -webkit-calc((100% + var(--backToTopBottom, 2.1875rem))), 0);
    transform: translate3d(calc(-2.1875rem + var(--extraRight, 0px) * -1), calc((100% + var(--backToTopBottom, 2.1875rem))), 0);
    }
  }
  .contactButtons.isHidden {
    -webkit-transform: translate3d(0, -webkit-calc((100% + 35px)), 0);
    transform: translate3d(0, calc((100% + 35px)), 0);
    -webkit-transform: translate3d(0, -webkit-calc((100% + var(--backToTopBottom, 2.1875rem))), 0);
    transform: translate3d(0, calc((100% + var(--backToTopBottom, 2.1875rem))), 0);
  }
  @media only screen and (min-width: 1100px) {
    .contactButtons.isHidden {
    -webkit-transform: translate3d(0, -webkit-calc((100% + 35px)), 0);
    transform: translate3d(0, calc((100% + 35px)), 0);
    -webkit-transform: translate3d(0, -webkit-calc((100% + var(--backToTopBottom, 2.1875rem))), 0);
    transform: translate3d(0, calc((100% + var(--backToTopBottom, 2.1875rem))), 0);
    }
  }
}

@media only screen and (min-width: 1100px) and (max-width: 767px) {
  .contactButtons {
    display: none;
  }
}

@media only screen and (min-width: 1100px) {
  .contactButtons > a {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-border-radius: 10px;
    border-radius: 10px;
    padding: 0.9375rem 1.25rem;
    -webkit-box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.25);
    box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.25);
  }
  .contactButtons > a > div {
    position: relative;
    overflow: hidden;
  }
  .contactButtons > a > div > strong {
    display: block;
    font-size: 0.75rem;
    color: #FFF;
    font-weight: 500;
    line-height: 1.25;
    letter-spacing: 1px;
    text-align: center;
    -webkit-transition: -webkit-transform 0.35s cubic-bezier(0.25, 0.1, 0.25, 1);
    transition: -webkit-transform 0.35s cubic-bezier(0.25, 0.1, 0.25, 1);
    transition: transform 0.35s cubic-bezier(0.25, 0.1, 0.25, 1);
    transition: transform 0.35s cubic-bezier(0.25, 0.1, 0.25, 1), -webkit-transform 0.35s cubic-bezier(0.25, 0.1, 0.25, 1);
  }
  .contactButtons > a > div > strong:nth-child(2) {
    width: 100%;
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    -webkit-transform: translateY(100%);
    -ms-transform: translateY(100%);
    transform: translateY(100%);
    white-space: nowrap;
  }
  .contactButtons > a svg {
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }
}

@media only screen and (min-width: 1100px) and (hover: hover) {
  .contactButtons > a:hover > div > strong:nth-child(1) {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
  }
  .contactButtons > a:hover > div > strong:nth-child(2) {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
}

@media only screen and (min-width: 1100px) {
  .contactButtons > a + a {
    margin-left: 1.25rem;
  }
  .contactButtons__phone {
    background-color: #56625F;
    background-color: var(--corduroyColor);
  }
  .contactButtons__phone svg {
    margin-left: 0.625rem;
  }
  .contactButtons__doctolib {
    --doctolibButtonTextTransform: none;
    background-color: #ECE4D8;
    background-color: var(--whiteRockColor);
  }
  .contactButtons__doctolib strong {
    color: #000 !important;
  }
  .contactButtons__doctolib svg {
    margin-left: 0.3125rem;
  }
  .contactButtons__doctolib svg path {
    fill: #000;
  }
}

.imagesBlocks {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  grid-gap: 0.25rem;
}

.imagesBlocks__row {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  grid-auto-rows: 1fr;
  grid-gap: 0.25rem;
}

.imagesBlocks__block {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  position: relative;
}

.imagesBlocks__block > * {
  -ms-grid-column: 1;
  grid-column: 1;
  -ms-grid-row: 1;
  grid-row: 1;
}

.imagesBlocks__block__content {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  padding-top: -webkit-calc(1.75rem + 6vw);
  padding-top: calc(1.75rem + 6vw);
  padding-right: 0.9375rem;
  padding-bottom: -webkit-calc(1.75rem + 6vw);
  padding-bottom: calc(1.75rem + 6vw);
  padding-left: 0.9375rem;
}

@media (min-width: 1200px) {
  .imagesBlocks__block__content {
    padding-top: 6.25rem;
  }
}

@media (min-width: 1200px) {
  .imagesBlocks__block__content {
    padding-bottom: 6.25rem;
  }
}

.imagesBlocks__block__content > * {
  -ms-grid-column: 1;
  grid-column: 1;
  -ms-grid-row: 1;
  grid-row: 1;
  -ms-grid-row-align: center;
  align-self: center;
  position: relative;
  z-index: 1;
  text-align: center;
  -ms-grid-column-align: center;
  justify-self: center;
}

.imagesBlocks__block__content__notHover {
  opacity: 1;
  -webkit-transition: opacity .3s;
  transition: opacity .3s;
}

.imagesBlocks__block__content__hover {
  opacity: 0;
  -webkit-transition: opacity .3s;
  transition: opacity .3s;
}

.imagesBlocks__block__image::before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.5);
  background-color: var(--imagesBlocksImageBackgroundColor, rgba(0, 0, 0, 0.5));
  -webkit-transition: background-color .3s;
  transition: background-color .3s;
}

.imagesBlocks__block__image picture,
.imagesBlocks__block__image img {
  width: 100%;
  height: 100%;
}

@media only screen and (max-width: 1023px) {
  .imagesBlocks__block__image {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
  }
}

.imagesBlocks__block__content__title {
  color: #FFF;
  font-weight: 700;
  font-weight: var(--fontWeightBold);
  font-size: -webkit-calc(1.3125rem + 0.75vw);
  font-size: calc(1.3125rem + 0.75vw);
  line-height: 1.2;
  text-align: center;
  text-transform: uppercase;
  font-style: normal;
}

@media (min-width: 1200px) {
  .imagesBlocks__block__content__title {
    font-size: 1.875rem;
  }
}

.imagesBlocks__block__content__title::after {
  content: '';
  display: block;
  width: 90px;
  height: 2px;
  margin: 12px auto;
  background-color: #FFF;
}

@media only screen and (min-width: 768px) {
  .imagesBlocks__block__content__title::after {
    margin-bottom: 25px;
  }
}

.imagesBlocks__block__content__description {
  font-family: "Montserrat", arial, helvetica, sans-serif;
  font-size: 0.8125rem;
  color: #FFF;
  font-weight: 500;
  font-weight: var(--fontWeightMedium);
  line-height: 1.77;
  letter-spacing: 0.1em;
  text-align: center;
  margin-top: 1.25rem;
}

.imagesBlocks__block__content__description > p + p {
  margin-top: 0.9375rem;
  margin-top: var(--imagesBlocksDescriptionParagraphGap, var(--paragraphGap, 0.9375rem));
}

.imagesBlocks__block__content__link {
  margin-top: 0.9375rem;
}

.imagesBlocks__block__content__link > * {
  display: block;
  font-size: 1.25rem;
  font-family: "azo-sans-web", arial, helvetica, sans-serif;
  color: #FFF;
  font-weight: 700;
  font-weight: var(--fontWeightBold);
  margin-top: 1.25rem;
  -webkit-text-decoration-line: underline;
  text-decoration-line: underline;
}

.imagesBlocks__block:hover .imagesBlocks__block__image::before {
  background-color: rgba(86, 98, 95, 0.62);
  background-color: var(--imagesBlocksImageActiveBackgroundColor, rgba(86, 98, 95, 0.62));
}

.imagesBlocks__block.hover .imagesBlocks__block__image::before {
  background-color: rgba(86, 98, 95, 0.62);
  background-color: var(--imagesBlocksImageActiveBackgroundColor, rgba(86, 98, 95, 0.62));
}

.imagesBlocks__block:hover .imagesBlocks__block__content__notHover,
.imagesBlocks__block.hover .imagesBlocks__block__content__notHover {
  opacity: 0;
}

.imagesBlocks__block:hover .imagesBlocks__block__content__hover,
.imagesBlocks__block.hover .imagesBlocks__block__content__hover {
  opacity: 1;
}

.imagesBlocks__link {
  text-align: center;
  padding-right: 15px;
  padding-right: var(--containerGutter);
  padding-left: 15px;
  padding-left: var(--containerGutter);
  margin-top: -webkit-calc(1.28125rem + 0.375vw);
  margin-top: calc(1.28125rem + 0.375vw);
}

@media only screen and (min-width: 768px) {
  .imagesBlocks__link {
  padding-left: 30px;
  padding-left: var(--containerGutter);
  }
}

@media only screen and (min-width: 768px) {
  .imagesBlocks__link {
  padding-right: 30px;
  padding-right: var(--containerGutter);
  }
}

@media (min-width: 1200px) {
  .imagesBlocks__link {
    margin-top: 1.5625rem;
  }
}

@media only screen and (min-width: 768px) {
  .imagesBlocks__row--2 {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    grid-gap: 0;
  }
  .imagesBlocks__row--2 > * {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
  }
  .imagesBlocks__row--2 > * + * {
    margin-left: 0.25rem;
  }
  .imagesBlocks__block > div,
  .imagesBlocks img {
    height: 100%;
  }
  .imagesBlocks__block > img {
    position: absolute;
  }
}

@media only screen and (min-width: 1024px) {
  .imagesBlocks__row {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    grid-gap: 0;
  }
  .imagesBlocks__row > * {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
  }
  .imagesBlocks__row > * + * {
    margin-left: 0.25rem;
  }
  .imagesBlocks__block__content {
    padding-top: -webkit-calc(1.4375rem + 2.25vw);
    padding-top: calc(1.4375rem + 2.25vw);
    padding-right: 0.9375rem;
    padding-bottom: -webkit-calc(1.4375rem + 2.25vw);
    padding-bottom: calc(1.4375rem + 2.25vw);
    padding-left: 0.9375rem;
  }
}

@media only screen and (min-width: 1024px) and (min-width: 1200px) {
  .imagesBlocks__block__content {
    padding-top: 3.125rem;
  }
}

@media only screen and (min-width: 1024px) and (min-width: 1200px) {
  .imagesBlocks__block__content {
    padding-bottom: 3.125rem;
  }
}

.textImage {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
  -ms-flex-direction: column-reverse;
  flex-direction: column-reverse;
}

@media only screen and (min-width: 1024px) {
  .textImage--left {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
  }
  .textImage--left .textImage__text {
    margin-left: -webkit-calc(1.6875rem + 5.25vw);
    margin-left: calc(1.6875rem + 5.25vw);
  }
}

@media only screen and (min-width: 1024px) and (min-width: 1200px) {
  .textImage--left .textImage__text {
    margin-left: 5.625rem;
  }
}

@media only screen and (min-width: 1024px) {
  .textImage--right {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }
  .textImage--right .textImage__text {
    margin-right: -webkit-calc(1.6875rem + 5.25vw);
    margin-right: calc(1.6875rem + 5.25vw);
  }
}

@media only screen and (min-width: 1024px) and (min-width: 1200px) {
  .textImage--right .textImage__text {
    margin-right: 5.625rem;
  }
}

.textImage__image > * {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  width: 100%;
}

@media only screen and (max-width: 1023px) {
  .textImage__image {
    width: 100% !important;
    margin-top: -webkit-calc(1.34375rem + 1.125vw);
    margin-top: calc(1.34375rem + 1.125vw);
  }
}

@media only screen and (max-width: 1023px) and (min-width: 1200px) {
  .textImage__image {
    margin-top: 2.1875rem;
  }
}

@media only screen and (min-width: 1024px) {
  .textImage__image > * {
    height: 100%;
  }
}

@media only screen and (min-width: 1024px) {
  .textImage__image--colorBlockBehind {
    position: relative;
    padding-left: -webkit-calc(1.4375rem + 2.25vw);
    padding-left: calc(1.4375rem + 2.25vw);
    padding-right: -webkit-calc(1.4375rem + 2.25vw);
    padding-right: calc(1.4375rem + 2.25vw);
  }
}

@media only screen and (min-width: 1024px) and (min-width: 1200px) {
  .textImage__image--colorBlockBehind {
    padding-left: 3.125rem;
  }
}

@media only screen and (min-width: 1024px) and (min-width: 1200px) {
  .textImage__image--colorBlockBehind {
    padding-right: 3.125rem;
  }
}

@media only screen and (min-width: 1024px) {
  .textImage__image--colorBlockBehind > * {
    position: relative;
    z-index: 1;
  }
  .textImage__image--colorBlockBehind::before {
    content: '';
    display: block;
    width: 100%;
    height: -webkit-calc(100% - 100px);
    height: calc(100% - 100px);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    background-color: #D7C1A1;
    background-color: var(--pavlovaColor);
  }
}

.textImage__text {
  -webkit-align-self: center;
  -ms-flex-item-align: center;
  -ms-grid-row-align: center;
  align-self: center;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

.textImage__text__title {
  font-family: "meno-banner", georgia, serif;
  color: #000;
  font-size: -webkit-calc(1.40625rem + 1.875vw);
  font-size: calc(1.40625rem + 1.875vw);
  font-weight: 700;
  font-weight: var(--fontWeightBold);
  line-height: 1;
  letter-spacing: 0.02em;
  margin-bottom: 0.4em;
}

@media (min-width: 1200px) {
  .textImage__text__title {
    font-size: 2.8125rem;
  }
}

.textImage__text__content {
  --headingMarginTop: var(--paragraphGap);
  --textAlign: left;
  --textColor: var(--tundoraColor);
  --textFontFamily: Mulish, arial, helvetica, sans-serif;
  --textFontSize: 0.9375rem;
  --textLineHeight: 1.4;
}

.textImage__text__content blockquote {
  --blockquoteSvgWidth: 18px;
}

.textImage__text__content blockquote::before {
  content: url("data:image/svg+xml;charset=utf8,%3Csvg width='18' height='14' viewBox='0 0 18 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M6.94488 1.74093C5.90551 2.80484 5.12598 3.82038 4.6063 4.78756C4.13386 5.70639 3.82677 6.69775 3.68504 7.76166H6.59055L6.09449 14H0L0.354331 9.35751C0.496063 7.51986 0.897638 5.85147 1.55905 4.35233C2.26772 2.80484 3.35433 1.35406 4.8189 0L6.94488 1.74093ZM18 1.74093C16.9606 2.80484 16.1811 3.82038 15.6614 4.78756C15.189 5.70639 14.8819 6.69775 14.7402 7.76166H17.6457L17.1496 14H11.0551L11.4094 9.35751C11.5512 7.51986 11.9528 5.85147 12.6142 4.35233C13.3228 2.80484 14.4094 1.35406 15.874 0L18 1.74093Z' fill='black'/%3E %3C/svg%3E ");
}

.textImage__text__link {
  margin-top: -webkit-calc(1.28125rem + 0.375vw);
  margin-top: calc(1.28125rem + 0.375vw);
}

@media (min-width: 1200px) {
  .textImage__text__link {
    margin-top: 1.5625rem;
  }
}

.section[class*="section--backgroundColor"][class*="section--no-paddings"] .textImage__text {
  padding-top: 2.1875rem;
  padding-top: var(--sectionPadding, 2.1875rem);
}

@media only screen and (min-width: 1024px) {
  .section[class*="section--backgroundColor"][class*="section--no-paddings"] .textImage__text {
    padding-top: 0;
  }
}

@media only screen and (max-width: 1023px) {
  body.home .textImage {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  body.home .textImage .textImage__image {
    margin-top: 0;
  }
  body.home .textImage .textImage__text {
    margin-top: -webkit-calc(1.34375rem + 1.125vw);
    margin-top: calc(1.34375rem + 1.125vw);
  }
}

@media only screen and (max-width: 1023px) and (min-width: 1200px) {
  body.home .textImage .textImage__text {
    margin-top: 2.1875rem;
  }
}

@media only screen and (max-width: 1023px) {
  body.home .section[class*="section--backgroundColor"][class*="section--no-paddings"] .textImage__text {
    padding-top: 0;
    padding-bottom: 2.1875rem;
    padding-bottom: var(--sectionPadding, 2.1875rem);
  }
}

@media only screen and (max-width: 767px) {
  body.home .section[class*="section--backgroundColor"][class*="section--no-paddings"] .textImage__text {
    padding-top: 0;
    padding-bottom: 0;
  }
}

.question {
  text-align: center;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(86, 98, 95, 0.95)), to(#21322E));
  background: linear-gradient(180deg, rgba(86, 98, 95, 0.95) 0%, #21322E 100%);
  padding: 1.25rem 0.625rem;
}

.question__title {
  font-family: "meno-banner", georgia, serif;
  color: #FFF;
  font-size: -webkit-calc(1.3875rem + 1.65vw);
  font-size: calc(1.3875rem + 1.65vw);
  font-weight: 700;
  font-weight: var(--fontWeightBold);
  line-height: 1.11;
}

@media (min-width: 1200px) {
  .question__title {
    font-size: 2.625rem;
  }
}

.question__content {
  font-family: "Mulish", arial, helvetica, sans-serif;
  font-size: 1rem;
  color: #FFF;
  font-weight: 700;
  font-weight: var(--fontWeightBold);
  line-height: 1.35;
  margin-top: -webkit-calc(1.28125rem + 0.375vw);
  margin-top: calc(1.28125rem + 0.375vw);
}

@media (min-width: 1200px) {
  .question__content {
    margin-top: 1.5625rem;
  }
}

.question__content > p + p {
  margin-top: 0.9375rem;
  margin-top: var(--paragraphGap, 0.9375rem);
}

.question__content strong {
  font-size: 1.0625rem;
  font-weight: 800;
  font-weight: var(--fontWeightExtraBold);
}

.question__link {
  margin-top: -webkit-calc(1.28125rem + 0.375vw);
  margin-top: calc(1.28125rem + 0.375vw);
}

@media (min-width: 1200px) {
  .question__link {
    margin-top: 1.5625rem;
  }
}

.question__link .buttonSquareArrow, .question__link .form-submit button[type="submit"], .form-submit .question__link button[type="submit"] {
  --buttonSquareArrowColor: #FFF;
}

.lastPosts__posts {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  grid-gap: 1.5625rem;
}

@media only screen and (min-width: 768px) {
  .lastPosts__posts {
    grid-template-columns: repeat(auto-fit, minmax(21.875rem, 1fr));
  }
}

.lastPosts__link {
  text-align: center;
  margin-top: -webkit-calc(1.40625rem + 1.875vw);
  margin-top: calc(1.40625rem + 1.875vw);
}

@media (min-width: 1200px) {
  .lastPosts__link {
    margin-top: 2.8125rem;
  }
}

:root {
  --languages-selector__padding: 11px;
}

.languages-selector {
  all: unset;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: -webkit-calc(60px - 11px);
  width: calc(60px - 11px);
  width: -webkit-calc(60px - var(--languages-selector__padding));
  width: calc(60px - var(--languages-selector__padding));
  height: 30px;
  cursor: pointer;
  font-family: "Montserrat", arial, helvetica, sans-serif;
  color: #0c1d2c;
  font-weight: 400;
  line-height: 1;
  font-size: 0.875rem;
  text-transform: uppercase;
  border: undefined;
  border: 1px solid var(--firefly2Color);
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg width='10' height='7' viewBox='0 0 10 7' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M1 0.5L5 5.5L9 0.5' stroke='%23ffffff'/%3E %3C/svg%3E ");
  background-repeat: no-repeat;
  background-position-y: -webkit-calc(50% + 1px);
  background-position-y: calc(50% + 1px);
  background-position-x: -webkit-calc(125% - 11px);
  background-position-x: calc(125% - 11px);
  background-position-x: -webkit-calc(125% - var(--languages-selector__padding));
  background-position-x: calc(125% - var(--languages-selector__padding));
}

.header__bottom__actions .languages-selector {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg width='10' height='7' viewBox='0 0 10 7' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath d='M1 0.5L5 5.5L9 0.5' stroke='%23000000'/%3E %3C/svg%3E ");
}

@media only screen and (min-width: 1100px) {
  .header__bottom__actions .languages-selector {
    display: none;
  }
}

.header__top .socialsListing a {
  -webkit-transition: -webkit-transform .3s;
  transition: -webkit-transform .3s;
  transition: transform .3s;
  transition: transform .3s, -webkit-transform .3s;
}

.header__top .socialsListing a:hover, .header__top .socialsListing a:focus {
  -webkit-transform: translateY(-2px);
  -ms-transform: translateY(-2px);
  transform: translateY(-2px);
}

.header__bottom__logo svg {
  width: 200px;
  height: auto;
}

@media only screen and (min-width: 1350px) {
  .header__bottom__logo svg {
    width: auto;
  }
}

.header__top__right__doctolib {
  letter-spacing: 0;
}

.header__top__right__doctolib > a > div {
  position: relative;
  overflow: hidden;
}

.header__top__right__doctolib > a > div > * {
  display: block;
  -webkit-transition: -webkit-transform 0.35s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: -webkit-transform 0.35s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: transform 0.35s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: transform 0.35s cubic-bezier(0.25, 0.1, 0.25, 1), -webkit-transform 0.35s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.header__top__right__doctolib > a > div > *:nth-child(2) {
  width: 100%;
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  -webkit-transform: translateY(100%);
  -ms-transform: translateY(100%);
  transform: translateY(100%);
  white-space: nowrap;
}

@media (hover: hover) {
  .header__top__right__doctolib > a:hover > div > *:nth-child(1) {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
  }
  .header__top__right__doctolib > a:hover > div > *:nth-child(2) {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
}

.header__top__right__doctolib > a span {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

.header__top__right__phone > a > div {
  position: relative;
  overflow: hidden;
}

.header__top__right__phone > a > div > * {
  display: block;
  -webkit-transition: -webkit-transform 0.35s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: -webkit-transform 0.35s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: transform 0.35s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: transform 0.35s cubic-bezier(0.25, 0.1, 0.25, 1), -webkit-transform 0.35s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.header__top__right__phone > a > div > *:nth-child(2) {
  width: 100%;
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  -webkit-transform: translateY(100%);
  -ms-transform: translateY(100%);
  transform: translateY(100%);
  white-space: nowrap;
}

@media (hover: hover) {
  .header__top__right__phone > a:hover > div > *:nth-child(1) {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
  }
  .header__top__right__phone > a:hover > div > *:nth-child(2) {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
}

.header__bottom__actions__menu {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-border-radius: 100%;
  border-radius: 100%;
  background-color: #56625F;
  background-color: var(--corduroyColor);
}

.header__bottom__actions__menu > * {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 3.125rem;
  height: 3.125rem;
}

.header__bottom__actions__menu > * > .hamburger-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 8px;
}

.header__bottom__actions__menu > * .hamburger-inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.header__bottom__actions__menu > *:not(.is-active) .hamburger-inner::after,
.header__bottom__actions__menu > *:not(.is-active) .hamburger-inner {
  width: 15px;
  margin-right: auto;
  margin-left: auto;
}

.hamburger--slider .hamburger-box .hamburger-inner {
  display: block;
  width: 25px;
  height: 3px;
  position: relative;
  background: #FFF;
}

.hamburger--slider.is-active .hamburger-box .hamburger-inner:nth-child(1) {
  top: 5px;
  -webkit-transform: rotate(53deg);
  -ms-transform: rotate(53deg);
  transform: rotate(53deg);
  left: 0px;
  width: 30px;
}

.hamburger--slider.is-active .hamburger-box .hamburger-inner:nth-child(2) {
  display: none !important;
}

.hamburger--slider.is-active .hamburger-box .hamburger-inner:nth-child(3) {
  -webkit-transform: rotate(126deg);
  -ms-transform: rotate(126deg);
  transform: rotate(126deg);
  top: -6px;
  width: 30px;
}

.header__bottom__menu > nav > ul > li.menu-item-has-children > ul.nav-drop li.menu-item-has-children > a {
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 10px;
}

.header__bottom__menu > nav > ul > li.menu-item-has-children > ul.nav-drop li.menu-item-has-children > a::after {
  content: '';
  background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg width='7' height='9' viewBox='0 0 7 9' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M1 8L5 4.5L1 1' stroke='%2348323E' stroke-width='2'/%3e%3c/svg%3e ");
  width: 7px;
  background-repeat: no-repeat;
  margin-top: 4px;
}

.languages-selector .lang_current {
  position: relative;
  cursor: pointer;
  line-height: 1;
  padding-right: 12px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.languages-selector {
  position: relative;
}

.languages-selector svg {
  width: 28px;
  height: 19px;
}

.languages-selector .list_lang {
  display: none;
  position: absolute;
  background-color: #FFF;
  -webkit-box-shadow: 0px -6px 11px rgba(0, 0, 0, 0.09);
  box-shadow: 0px -6px 11px rgba(0, 0, 0, 0.09);
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  left: 0;
  top: 110%;
  z-index: 9999999;
}

.languages-selector .list_lang li {
  list-style: none !important;
}

.languages-selector .list_lang li a {
  line-height: 1;
  width: 100%;
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 5px;
  -webkit-transition: background-color ease .3s;
  transition: background-color ease .3s;
}

.languages-selector .list_lang li a:hover {
  background: rgba(86, 98, 95, 0.7);
}

.languages-selector .list_lang li + li {
  margin-top: 3px;
  padding-top: 3px;
  border-top: 1px solid #56625f;
}

.languages-selector .list_lang.is-active {
  display: block;
}

@media only screen and (max-width: 1099px) {
  .footer {
    margin-bottom: 2.8125rem;
    margin-bottom: var(--callToActionsHeight);
  }
}

.footer__addresses__place__phone > div {
  position: relative;
  overflow: hidden;
}

.footer__addresses__place__phone > div > * {
  display: block;
  -webkit-transition: -webkit-transform 0.35s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: -webkit-transform 0.35s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: transform 0.35s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: transform 0.35s cubic-bezier(0.25, 0.1, 0.25, 1), -webkit-transform 0.35s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.footer__addresses__place__phone > div > *:nth-child(2) {
  width: 100%;
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  -webkit-transform: translateY(100%);
  -ms-transform: translateY(100%);
  transform: translateY(100%);
  white-space: nowrap;
}

@media (hover: hover) {
  .footer__addresses__place__phone:hover > div > *:nth-child(1) {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
  }
  .footer__addresses__place__phone:hover > div > *:nth-child(2) {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
}

.footer__doctolib > a > div {
  position: relative;
  overflow: hidden;
}

.footer__doctolib > a > div > * {
  display: block;
  -webkit-transition: -webkit-transform 0.35s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: -webkit-transform 0.35s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: transform 0.35s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition: transform 0.35s cubic-bezier(0.25, 0.1, 0.25, 1), -webkit-transform 0.35s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.footer__doctolib > a > div > *:nth-child(2) {
  width: 100%;
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  -webkit-transform: translateY(100%);
  -ms-transform: translateY(100%);
  transform: translateY(100%);
  white-space: nowrap;
}

@media (hover: hover) {
  .footer__doctolib > a:hover > div > *:nth-child(1) {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
  }
  .footer__doctolib > a:hover > div > *:nth-child(2) {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
}

.footer__doctolib > a span {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

.section + .section:not(.section--no-topMargin).section--topMargin--sm {
  margin-top: -webkit-calc(1.34375rem + 1.125vw);
  margin-top: calc(1.34375rem + 1.125vw);
}

@media (min-width: 1200px) {
  .section + .section:not(.section--no-topMargin).section--topMargin--sm {
    margin-top: 2.1875rem;
  }
}

@media only screen and (max-width: 767px) {
  .section--no-margin-mobile {
    margin-top: 0 !important;
  }
}

.section--backgroundColor-1:not(.section--backgroundColor--afterTablet) {
  --sectionBackgroundColor: linear-gradient(180deg, rgba(86, 98, 95, 0.95) 0%, #21322E 100%);
  --sectionColor: #FFF;
}

.section--backgroundColor-2:not(.section--backgroundColor--afterTablet) {
  --sectionBackgroundColor: var(--whiteRockColor);
}

.section--backgroundColor-3:not(.section--backgroundColor--afterTablet) {
  --sectionBackgroundColor: var(--corduroyColor);
}

@media only screen and (min-width: 768px) {
  .section[class*="section--backgroundColor"].section--backgroundColor--afterTablet.section--backgroundColor-1 {
    --sectionBackgroundColor: linear-gradient(180deg, rgba(86, 98, 95, 0.95) 0%, #21322E 100%);
    --sectionColor: #FFF;
  }
  .section[class*="section--backgroundColor"].section--backgroundColor--afterTablet.section--backgroundColor-2 {
    --sectionBackgroundColor: var(--whiteRockColor);
  }
  .section[class*="section--backgroundColor"].section--backgroundColor--afterTablet.section--backgroundColor-3 {
    --sectionBackgroundColor: var(--corduroyColor);
  }
}

.sectionHeader--style-1 .sectionHeader__title {
  display: inline-block;
  font-size: -webkit-calc(1.34375rem + 1.125vw);
  font-size: calc(1.34375rem + 1.125vw);
  font-family: "meno-banner", georgia, serif;
  font-weight: 600;
  font-weight: var(--fontWeightSemiBold);
  line-height: 1.2;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
  border-top: 5px solid #F2F2F2;
  border-top: 5px solid var(--sectionHeaderBorderColor, var(--concreteColor));
  border-bottom: 5px solid #F2F2F2;
  border-bottom: 5px solid var(--sectionHeaderBorderColor, var(--concreteColor));
}

@media (min-width: 1200px) {
  .sectionHeader--style-1 .sectionHeader__title {
    font-size: 2.1875rem;
  }
}

.sectionHeader--style-1 .sectionHeader__title strong {
  display: block;
  font-family: "azo-sans-web", arial, helvetica, sans-serif;
  font-size: 0.57em;
  color: #56625F;
  color: var(--sectionHeaderSecondColor, var(--corduroyColor));
  font-weight: 400;
  font-weight: var(--fontWeightRegular);
  letter-spacing: 0.14em;
  margin-top: 0.2em;
}

.sectionHeader--style-1 .sectionHeader__description {
  font-size: 0.9375rem;
  color: #56625F;
  color: var(--corduroyColor);
  font-weight: 300;
  font-weight: var(--fontWeightLight);
  line-height: 1.4;
  margin-top: 0.9375rem;
}

@media only screen and (max-width: 1023px) {
  .section--question {
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(86, 98, 95, 0.95)), to(#21322E));
    background: linear-gradient(180deg, rgba(86, 98, 95, 0.95) 0%, #21322E 100%);
  }
  .section--question .question {
    background: none;
  }
}

.homeHero > .container {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: auto 2.1875rem auto;
  grid-template-areas: "text" "image";
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  grid-gap: 2.1875rem;
}

.homeHero + .section {
  margin-top: -webkit-calc(1.625rem + 4.5vw);
  margin-top: calc(1.625rem + 4.5vw);
}

@media (min-width: 1200px) {
  .homeHero + .section {
    margin-top: 5rem;
  }
}

@media only screen and (min-width: 768px) {
  .homeHero > .container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    grid-gap: 0;
  }
  .homeHero > .container > * {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
  }
}

@media only screen and (min-width: 1024px) {
  .homeHero > .container {
    --containerWidth: 90vw;
  }
}

@media only screen and (min-width: 1900px) {
  .homeHero {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    min-height: 700px;
    max-height: 70vh;
  }
  .homeHero > * {
    height: auto !important;
  }
  .homeHero .homeHero__image img {
    height: 100%;
    -o-object-position: top;
    object-position: top;
  }
  .homeHero__content {
    -webkit-box-flex: 45% !important;
    -webkit-flex: 45% !important;
    -ms-flex: 45% !important;
    flex: 45% !important;
  }
  .homeHero__image {
    -webkit-box-flex: 55% !important;
    -webkit-flex: 55% !important;
    -ms-flex: 55% !important;
    flex: 55% !important;
  }
}

.homeHero__content {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: text;
  -ms-grid-row-align: center;
  align-self: center;
  margin-top: 2.1875rem;
}

.homeHero__content__title {
  font-family: "meno-banner", georgia, serif;
  color: #000;
  font-size: -webkit-calc(1.375rem + 1.5vw);
  font-size: calc(1.375rem + 1.5vw);
  font-weight: 300;
  font-weight: var(--fontWeightLight);
  line-height: 1.2;
  letter-spacing: 0.02em;
}

@media (min-width: 1200px) {
  .homeHero__content__title {
    font-size: 2.5rem;
  }
}

.homeHero__content__title strong {
  display: block;
  font-size: 0.63em;
  color: #56625F;
  color: var(--corduroyColor);
  font-weight: 400;
  font-weight: var(--fontWeightRegular);
  letter-spacing: 0.05em;
  font-style: italic;
}

.homeHero__content__text {
  --textAlign: left;
  --textColor: #000;
  --textFontSize: 0.9375rem;
  --textLineHeight: 1.6;
  margin-top: 0.9375rem;
}

.homeHero__button {
  margin-top: -webkit-calc(1.34375rem + 1.125vw);
  margin-top: calc(1.34375rem + 1.125vw);
}

@media (min-width: 1200px) {
  .homeHero__button {
    margin-top: 2.1875rem;
  }
}

@media only screen and (min-width: 768px) {
  .homeHero__content {
    margin-top: 0;
    margin-right: -webkit-calc(1.34375rem + 1.125vw);
    margin-right: calc(1.34375rem + 1.125vw);
    padding-top: -webkit-calc(1.34375rem + 1.125vw);
    padding-top: calc(1.34375rem + 1.125vw);
    padding-bottom: -webkit-calc(1.34375rem + 1.125vw);
    padding-bottom: calc(1.34375rem + 1.125vw);
  }
}

@media only screen and (min-width: 768px) and (min-width: 1200px) {
  .homeHero__content {
    margin-right: 2.1875rem;
  }
}

@media only screen and (min-width: 768px) and (min-width: 1200px) {
  .homeHero__content {
    padding-top: 2.1875rem;
  }
}

@media only screen and (min-width: 768px) and (min-width: 1200px) {
  .homeHero__content {
    padding-bottom: 2.1875rem;
  }
}

.homeHero__image {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  grid-area: image;
  margin-right: -webkit-calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  margin-left: -webkit-calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
}

.homeHero__image img {
  display: block;
  width: 100%;
  height: 100%;
}

@media only screen and (min-width: 768px) {
  .homeHero__image {
    margin-right: -webkit-calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    margin-left: 0;
  }
  .homeHero__image img {
    width: 100%;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImhvbWUuc2NzcyIsImhvbWUuY3NzIiwiaGVscGVycy92YXJpYWJsZXMuc2NzcyIsIi4uLy4uLy4uL3dvcmRwcmVzcy10aGVtZS9yZXNvdXJjZXMvc2Nzcy91dGlscy9nZW5lcmFsLnNjc3MiLCIuLi8uLi8uLi93b3JkcHJlc3MtdGhlbWUvcmVzb3VyY2VzL3Njc3MvdXRpbHMvZm9ybS5zY3NzIiwiLi4vLi4vLi4vd29yZHByZXNzLXRoZW1lL3Jlc291cmNlcy9zY3NzL2hlbHBlcnMvZWFzZXMuc2NzcyIsIi4uLy4uLy4uL3dvcmRwcmVzcy10aGVtZS9yZXNvdXJjZXMvc2Nzcy91dGlscy9idXR0b25zLnNjc3MiLCIuLi8uLi8uLi93b3JkcHJlc3MtdGhlbWUvcmVzb3VyY2VzL3Njc3MvdXRpbHMvd2lkZ2V0cy5zY3NzIiwiLi4vLi4vLi4vd29yZHByZXNzLXRoZW1lL3Jlc291cmNlcy9zY3NzL2hlbHBlcnMvbWl4aW5zLnNjc3MiLCIuLi8uLi8uLi93b3JkcHJlc3MtdGhlbWUvcmVzb3VyY2VzL3Njc3MvYmFzZS9yZXNldC5zY3NzIiwiLi4vLi4vLi4vd29yZHByZXNzLXRoZW1lL3Jlc291cmNlcy9zY3NzL2Jhc2UvYmFzZS5zY3NzIiwiLi4vLi4vLi4vd29yZHByZXNzLXRoZW1lL3Jlc291cmNlcy9zY3NzL2Jhc2UvZ3JpZC5zY3NzIiwiLi4vLi4vLi4vd29yZHByZXNzLXRoZW1lL3Jlc291cmNlcy9zY3NzL2xheW91dHMvc2VjdGlvbi5zY3NzIiwidmFyaWFibGVzL2NvbG9ycy5zY3NzIiwidmFyaWFibGVzL2dyaWQuc2NzcyIsInZhcmlhYmxlcy9mb250LnNjc3MiLCJiYXNlL2Jhc2Uuc2NzcyIsImJhc2UvdGhlbWUuc2NzcyIsIi4uLy4uLy4uL3dvcmRwcmVzcy10aGVtZS9yZXNvdXJjZXMvc2Nzcy9jb21wb25lbnRzL2Nvb2tpZS5zY3NzIiwiLi4vLi4vLi4vd29yZHByZXNzLXRoZW1lL3Jlc291cmNlcy9zY3NzL2NvbXBvbmVudHMvc2NyZWVuLXJlYWRlci5zY3NzIiwibGF5b3V0cy9oZWFkZXIvaGVhZGVyLnNjc3MiLCJsYXlvdXRzL2hlYWRlci9tZW51LnNjc3MiLCIuLi8uLi8uLi93b3JkcHJlc3MtdGhlbWUvcmVzb3VyY2VzL3Njc3MvaGVscGVycy9mdW5jdGlvbnMuc2NzcyIsImxheW91dHMvaGVhZGVyL3NlYXJjaC1iYXIuc2NzcyIsImxheW91dHMvaGVhZGVyL2FjdGlvbnMuc2NzcyIsImxheW91dHMvaGVhZGVyL3Jlc3BvbnNpdmUtbWVudS5zY3NzIiwiPG5vIHNvdXJjZT4iLCIuLi8uLi8uLi93b3JkcHJlc3MtdGhlbWUvdGhlbWUvaGVhZGVyLzEvc2Nzcy9jYWxsLXRvLWFjdGlvbnMuc2NzcyIsIi4uLy4uLy4uL3dvcmRwcmVzcy10aGVtZS90aGVtZS9jb21tZW50cy8xL3Njc3MvY29tbWVudHMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9yZnMvc2Nzcy5zY3NzIiwiLi4vLi4vLi4vd29yZHByZXNzLXRoZW1lL3RoZW1lL2NvbW1lbnRzL2Zvcm0vMS9zY3NzL2Zvcm0uc2NzcyIsIi4uLy4uLy4uL3dvcmRwcmVzcy10aGVtZS90aGVtZS9mb290ZXIvMS9zY3NzL2Zvb3Rlci5zY3NzIiwidXRpbHMvZ2VuZXJhbC5zY3NzIiwidXRpbHMvYnV0dG9ucy5zY3NzIiwidXRpbHMvZm9ybS5zY3NzIiwiY29tcG9uZW50cy9jb21tZW50cy5zY3NzIiwiY29tcG9uZW50cy9jb250YWN0LWJ1dHRvbnMuc2NzcyIsImNvbXBvbmVudHMvaW1hZ2UtYmxvY2tzLnNjc3MiLCJjb21wb25lbnRzL3RleHQtaW1hZ2Uuc2NzcyIsImNvbXBvbmVudHMvcXVlc3Rpb24uc2NzcyIsImNvbXBvbmVudHMvbGFzdC1wb3N0cy5zY3NzIiwiY29tcG9uZW50cy9sYW5ndWFnZXMtc2VsZWN0b3Iuc2NzcyIsImxheW91dHMvaGVhZGVyLnNjc3MiLCJsYXlvdXRzL2Zvb3Rlci5zY3NzIiwibGF5b3V0cy9zZWN0aW9uLnNjc3MiLCJsYXlvdXRzL2hvbWUtaGVyby5zY3Nz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OENBQStDO0Fmc2xCbEQ7O0FldHBCQTtFQWdFRyxxQkFBK0M7RUFBL0MsOENBQStDO0Fmc2xCbEQ7O0FldHBCQTtFQWdFRyxxQkFBK0M7RUFBL0MsOENBQStDO0Fmc2xCbEQ7O0FldHBCQTtFQWdFRyxxQkFBK0M7RUFBL0MsOENBQStDO0Fmc2xCbEQ7O0FldHBCQTtFQWdFRyxxQkFBK0M7RUFBL0MsOENBQStDO0Fmc2xCbEQ7O0FldHBCQTtFQWdFRyxxQkFBK0M7RUFBL0MsOENBQStDO0Fmc2xCbEQ7O0FldHBCQTtFQWdFRyxxQkFBK0M7RUFBL0MsOENBQStDO0Fmc2xCbEQ7O0FldHBCQTtFQWdFRyxxQkFBK0M7RUFBL0MsOENBQStDO0Fmc2xCbEQ7O0FldHBCQTtFQWdFRyxxQkFBK0M7RUFBL0MsOENBQStDO0Fmc2xCbEQ7O0FldHBCQTtFQWdFRyxxQkFBK0M7RUFBL0MsOENBQStDO0Fmc2xCbEQ7O0FldHBCQTtFQWdFRyxxQkFBK0M7RUFBL0MsOENBQStDO0Fmc2xCbEQ7O0FldHBCQTtFQWdFRyxxQkFBK0M7RUFBL0MsOENBQStDO0Fmc2xCbEQ7O0FldHBCQTtFQWdFRyxxQkFBK0M7RUFBL0MsOENBQStDO0Fmc2xCbEQ7O0FldHBCQTtFQWdFRyxxQkFBK0M7RUFBL0MsOENBQStDO0Fmc2xCbEQ7O0FldHBCQTtFQWdFRyxxQkFBK0M7RUFBL0MsOENBQStDO0Fmc2xCbEQ7O0FldHBCQTtFQWdFRyxxQkFBK0M7RUFBL0MsOENBQStDO0Fmc2xCbEQ7O0FldHBCQTtFQWdFRyxxQkFBK0M7RUFBL0MsOENBQStDO0Fmc2xCbEQ7O0FldHBCQTtFQW9FRyxxQkFBMkM7RUFBM0MsMENBQTJDO0Fmc2xCOUM7O0FlMXBCQTtFQW9FRyxxQkFBMkM7RUFBM0MsMENBQTJDO0Fmc2xCOUM7O0FlMXBCQTtFQW9FRyxxQkFBMkM7RUFBM0MsMENBQTJDO0Fmc2xCOUM7O0FlMXBCQTtFQXlFRyxtQkFBZ0M7RUFBaEMsZ0NBQWdDO0FmcWxCbkM7O0FlOXBCQTtFQXlFRyxtQkFBZ0M7RUFBaEMsZ0NBQWdDO0FmcWxCbkM7O0FlOXBCQTtFQXlFRyxtQkFBZ0M7RUFBaEMsZ0NBQWdDO0FmcWxCbkM7O0FlOXBCQTtFQStFQyx1REFBK0Y7RUFBL0YsK0ZBQStGO0VBQy9GLG1CQUFnQztFQUFoQyxnQ0FBZ0M7RUFDaEMsY0FBNkI7RUFBN0IsNkJBQTZCO0VBQzdCLGdCQUF1QztFQUF2Qyx1Q0FBdUM7RUFDdkMsaUJBQXVDO0VBQXZDLHVDQUF1QztFQUN2QyxtQkFBNkM7RUFBN0MsNkNBQTZDO0VBQzdDLG1CQUFxQztFQUFyQyxxQ0FBcUM7QWZtbEJ0Qzs7QWV4cUJBO0VBK0VDLGlEQUErRjtFQUEvRiwrRkFBK0Y7RUFDL0YsbUJBQWdDO0VBQWhDLGdDQUFnQztFQUNoQyxjQUE2QjtFQUE3Qiw2QkFBNkI7RUFDN0IsZ0JBQXVDO0VBQXZDLHVDQUF1QztFQUN2QyxnQkFBdUM7RUFBdkMsdUNBQXVDO0VBQ3ZDLG1CQUE2QztFQUE3Qyw2Q0FBNkM7RUFDN0MsZ0JBQXFDO0VBQXJDLHFDQUFxQztBZm1sQnRDOztBZXhxQkE7RUErRUMsdURBQStGO0VBQS9GLCtGQUErRjtFQUMvRixtQkFBZ0M7RUFBaEMsZ0NBQWdDO0VBQ2hDLFdBQTZCO0VBQTdCLDZCQUE2QjtFQUM3QixnQkFBdUM7RUFBdkMsdUNBQXVDO0VBQ3ZDLGdCQUF1QztFQUF2Qyx1Q0FBdUM7RUFDdkMsbUJBQTZDO0VBQTdDLDZDQUE2QztFQUM3QyxnQkFBcUM7RUFBckMscUNBQXFDO0FmbWxCdEM7O0FleHFCQTtFQTBGRyxxQkFBMkM7RUFBM0MsMENBQTJDO0Fmd2xCOUM7O0FlbHJCQTtFQTBGRyxxQkFBMkM7RUFBM0MsMENBQTJDO0Fmd2xCOUM7O0FlbHJCQTtFQTBGRyxxQkFBMkM7RUFBM0MsMENBQTJDO0Fmd2xCOUM7O0FlbHJCQTtFQTBGRyxxQkFBMkM7RUFBM0MsMENBQTJDO0Fmd2xCOUM7O0FlbHJCQTtFQTBGRyxxQkFBMkM7RUFBM0MsMENBQTJDO0Fmd2xCOUM7O0FlbHJCQTtFQTBGRyxxQkFBMkM7RUFBM0MsMENBQTJDO0Fmd2xCOUM7O0FlbHJCQTtFQTBGRyxxQkFBMkM7RUFBM0MsMENBQTJDO0Fmd2xCOUM7O0FlbHJCQTtFQTBGRyxxQkFBMkM7RUFBM0MsMENBQTJDO0Fmd2xCOUM7O0FlbHJCQTtFQTBGRyxxQkFBMkM7RUFBM0MsMENBQTJDO0Fmd2xCOUM7O0FlbHJCQTtFQThGRyxxQkFBK0M7RUFBL0MsOENBQStDO0FmdW1CbEQ7O0FlcnNCQTtFQThGRyxxQkFBK0M7RUFBL0MsOENBQStDO0FmdW1CbEQ7O0FlcnNCQTtFQThGRyxxQkFBK0M7RUFBL0MsOENBQStDO0FmdW1CbEQ7O0FlcnNCQTtFQThGRyxxQkFBK0M7RUFBL0MsOENBQStDO0FmdW1CbEQ7O0FlcnNCQTtFQThGRyxxQkFBK0M7RUFBL0MsOENBQStDO0FmdW1CbEQ7O0FlcnNCQTtFQThGRyxxQkFBK0M7RUFBL0MsOENBQStDO0FmdW1CbEQ7O0FlcnNCQTtFQThGRyxxQkFBK0M7RUFBL0MsOENBQStDO0FmdW1CbEQ7O0FlcnNCQTtFQThGRyxxQkFBK0M7RUFBL0MsOENBQStDO0FmdW1CbEQ7O0FlcnNCQTtFQThGRyxxQkFBK0M7RUFBL0MsOENBQStDO0FmdW1CbEQ7O0FlcnNCQTtFQThGRyxxQkFBK0M7RUFBL0MsOENBQStDO0FmdW1CbEQ7O0FlcnNCQTtFQThGRyxxQkFBK0M7RUFBL0MsOENBQStDO0FmdW1CbEQ7O0FlcnNCQTtFQThGRyxxQkFBK0M7RUFBL0MsOENBQStDO0FmdW1CbEQ7O0FlcnNCQTtFQThGRyxxQkFBK0M7RUFBL0MsOENBQStDO0FmdW1CbEQ7O0FlcnNCQTtFQThGRyxxQkFBK0M7RUFBL0MsOENBQStDO0FmdW1CbEQ7O0FlcnNCQTtFQThGRyxxQkFBK0M7RUFBL0MsOENBQStDO0FmdW1CbEQ7O0FlcnNCQTtFQThGRyxxQkFBK0M7RUFBL0MsOENBQStDO0FmdW1CbEQ7O0FlcnNCQTtFQThGRyxxQkFBK0M7RUFBL0MsOENBQStDO0FmdW1CbEQ7O0FlcnNCQTtFQThGRyxxQkFBK0M7RUFBL0MsOENBQStDO0FmdW1CbEQ7O0FlcnNCQTtFQWtHRyxxQkFBMkM7RUFBM0MsMENBQTJDO0Fm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dkM7O0Flbm9GQTtFZ0JpQkUseUJBQXNDO0VBQXRDLHNDQUFzQztFQUN0QywwRTNCdENxQztFMkJzQ3JDLGtFM0J0Q3FDO0FKdXBGdkM7O0Flbm9GQTtFZ0JpQkUseUJBQXNDO0VBQXRDLHNDQUFzQztFQUN0QywwRTNCdENxQztFMkJzQ3JDLGtFM0J0Q3FDO0FKdXBGdkM7O0Flbm9GQTtFZ0JpQkUseUJBQXNDO0VBQXRDLHNDQUFzQztFQUN0QywwRTNCdENxQztFMkJzQ3JDLGtFM0J0Q3FDO0FKdXBGdkM7O0Flbm9GQTtFZ0JpQkUseUJBQXNDO0VBQXRDLHNDQUFzQztFQUN0QywwRTNCdENxQztFMkJzQ3JDLGtFM0J0Q3FDO0FKdXBGdkM7O0Flbm9GQTtFZ0JpQkUseUJBQXNDO0VBQXRDLHNDQUFzQztFQUN0QywwRTNCdENxQztFMkJzQ3JDLGtFM0J0Q3FDO0FKdXBGdkM7O0Flbm9GQTtFZ0JzQkMseUJBQXVDO0VBQXZDLHVDQUF1QztBL0JpbkZ4Qzs7QWV2b0ZBO0VnQnNCQyx5QkFBdUM7RUFBdkMsdUNBQXVDO0EvQmluRnhDOztBZXZvRkE7RWdCc0JDLHlCQUF1QztFQUF2Qyx1Q0FBdUM7QS9CaW5GeEM7O0Fldm9GQTtFZ0JzQkMseUJBQXVDO0VBQXZDLHVDQUF1QztBL0JpbkZ4Qzs7QWV2b0ZBO0VnQnNCQyx5QkFBdUM7RUFBdkMsdUNBQXVDO0EvQmluRnhDOztBZXZvRkE7RWdCc0JDLHlCQUF1QztFQUF2Qyx1Q0FBdUM7QS9CaW5GeEM7O0Fldm9GQTtFZ0JzQkMseUJBQXVDO0VBQXZDLHVDQUF1QztBL0JpbkZ4Qzs7QWV2b0ZBO0VnQnNCQyx5QkFBdUM7RUFBdkMsdUNBQXVDO0EvQmluRnhDOztBZXZvRkE7RWdCc0JDLHlCQUF1QztFQUF2Qyx1Q0FBdUM7QS9CaW5GeEM7O0Fldm9GQTtFZ0JzQkMseUJBQXVDO0VBQXZDLHVDQUF1QztBL0JpbkZ4Qzs7QWV2b0ZBO0VnQnNCQyx5QkFBdUM7RUFBdkMsdUNBQXVDO0EvQmluRnhDOztBZXZvRkE7RWdCc0JDLHlCQUF1QztFQUF2Qyx1Q0FBdUM7QS9C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QzN0SUE7RUFDRSxpQkFBWTtFQUVaLGlCQUFZO0VBQ1oseUJBQWU7RUFDZixxQkFBaUI7RUFDakIscUJ2Qm5Ea0M7QXJCZ3hJcEM7O0E0QzN0SUE7RWhCeU5RLDhDQWY2QjtFQWU3QixzQ0FmNkI7QTVCcWhJckM7O0E0QnhxSUk7RWdCdkRKO0loQmdPUSxxQkFsRjZCO0U1QnNsSW5DO0FBQ0Y7O0FPNXZJRTtFcUNsQkE7SUE4Q0QsYUFBYTtJaEJvTk4sZ0RBZjZCO0lBZTdCLHdDQWY2QjtJQWU3QiwrQ0FmNkI7SUFlN0IsdUNBZjZCO0lBZTdCLGtEQWY2QjtJQWU3QiwwQ0FmNkI7RTVCbWlJbkM7QUFDRjs7QTRCdnJJSTtFZ0JoR0Y7SWhCeVFNLHVCQWxGNkI7RTVCcW1JbkM7QUFDRjs7QTRCN3JJSTtFZ0JoR0Y7SWhCeVFNLHNCQWxGNkI7RTVCMm1JbkM7QUFDRjs7QTRCbnNJSTtFZ0JoR0Y7SWhCeVFNLHlCQWxGNkI7RTVCaW5JbkM7QUFDRjs7QTRDdHlJRTtFbkIxQ0YsZ0JBQUE7RUFBQSxtQkFBQTtFbUJnR0UsZ0JBQWdCO0VBQ2hCLHNDQUE4QjtFQUE5Qiw4QkFBOEI7RUFDOUIscUNBQTZCO0VBQTdCLDZCQUE2QjtBNUNvdkkvQjs7QTRDdnZJQTtFQU1DLGNBQWM7RUFDZCxXQUFXO0VBQ1gsWUFBWTtBNUNxdkliOztBT255SUU7RXFDZkE7SUFrRUQsc0NBQThCO0lBQTlCLDhCQUE4QjtJQUM5QixjQUFjO0U1Q3F2SWI7RTRDbndJRjtJQWlCRyxXQUFXO0U1Q3F2SVo7QUFDRiIsImZpbGUiOiJob21lLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgXCIuLi8uLi9ub2RlX21vZHVsZXMvcmZzL3Nhc3NcIjtcblxuLypcbiAgMCBcdFx0XHQvLyBcdFx0SGVscGVyc1xuICAxIFx0XHRcdC8vIFx0XHRUaGVtZSB1dGlsc1xuICAyIFx0XHRcdC8vIFx0XHRWYXJpYWJsZXNcbiAgMyBcdFx0XHQvLyBcdFx0QmFzZVxuICA0IFx0XHRcdC8vXHRcdFRoZW1lIHN0eWxlc1xuICA1IFx0XHRcdC8vIFx0XHRVdGlsc1xuICA2IFx0XHRcdC8vIFx0XHRWZW5kb3JcbiAgNyBcdFx0XHQvLyBcdFx0Q29tcG9uZW50c1xuICA4IFx0XHRcdC8vIFx0XHRMYXlvdXRzXG4gIDkgXHRcdFx0Ly8gXHRcdFRlbXBsYXRlc1xuICovXG5cbi8vIDAgLSBIZWxwZXJzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaW1wb3J0IFwiaGVscGVycy92YXJpYWJsZXNcIjtcblxuLy8gMSAtIFRoZW1lIHV0aWxzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaW1wb3J0IFwiLi4vLi4vLi4vd29yZHByZXNzLXRoZW1lL3Jlc291cmNlcy9zY3NzL3RoZW1lXCI7XG5cbi8vIDIgLSBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29sb3JzXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL2dyaWRcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvZm9udFwiO1xuXG4vLyAzIC0gQmFzZVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGltcG9ydCBcImJhc2UvYmFzZVwiO1xuQGltcG9ydCBcImJhc2UvdGhlbWVcIjtcblxuLy8gNCAtIFRoZW1lIFN0eWxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGltcG9ydCBcIi4uLy4uLy4uL3dvcmRwcmVzcy10aGVtZS9yZXNvdXJjZXMvc2Nzcy9jb21wb25lbnRzL2Nvb2tpZVwiO1xuQGltcG9ydCBcIi4uLy4uLy4uL3dvcmRwcmVzcy10aGVtZS9yZXNvdXJjZXMvc2Nzcy9jb21wb25lbnRzL3NjcmVlbi1yZWFkZXJcIjtcblxuLy8gSGVhZGVyXG5AaW1wb3J0IFwibGF5b3V0cy9oZWFkZXIvaGVhZGVyXCI7XG5AaW1wb3J0IFwiLi4vLi4vLi4vd29yZHByZXNzLXRoZW1lL3RoZW1lL2hlYWRlci8xL3Njc3MvY2FsbC10by1hY3Rpb25zXCI7XG5cbi8vIENvbW1lbnRzXG5AaW1wb3J0IFwiLi4vLi4vLi4vd29yZHByZXNzLXRoZW1lL3RoZW1lL2NvbW1lbnRzLzEvc2Nzcy9jb21tZW50c1wiO1xuQGltcG9ydCBcIi4uLy4uLy4uL3dvcmRwcmVzcy10aGVtZS90aGVtZS9jb21tZW50cy9mb3JtLzEvc2Nzcy9mb3JtXCI7XG5cbi8vIEZvb3RlclxuQGltcG9ydCBcIi4uLy4uLy4uL3dvcmRwcmVzcy10aGVtZS90aGVtZS9mb290ZXIvMS9zY3NzL2Zvb3RlclwiO1xuXG4vLyA1IC0gVXRpbHNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpbXBvcnQgXCJ1dGlscy9nZW5lcmFsXCI7XG5AaW1wb3J0IFwidXRpbHMvYnV0dG9uc1wiO1xuQGltcG9ydCBcInV0aWxzL2Zvcm1cIjtcblxuLy8gNyAtIENvbXBvbmVudHNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpbXBvcnQgXCJjb21wb25lbnRzL2NvbW1lbnRzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9iYWNrLXRvLXRvcFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvYnV0dG9uc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvY29udGFjdC1idXR0b25zXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9pbWFnZS1ibG9ja3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3RleHQtaW1hZ2VcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3F1ZXN0aW9uXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9sYXN0LXBvc3RzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9sYW5ndWFnZXMtc2VsZWN0b3JcIjtcblxuLy8gOCAtIExheW91dHNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpbXBvcnQgXCJsYXlvdXRzL2hlYWRlclwiO1xuQGltcG9ydCBcImxheW91dHMvZm9vdGVyXCI7XG5AaW1wb3J0IFwibGF5b3V0cy9zZWN0aW9uXCI7XG5AaW1wb3J0IFwibGF5b3V0cy9ob21lLWhlcm9cIjtcbiIsIi8qXG4gIDAgXHRcdFx0Ly8gXHRcdEhlbHBlcnNcbiAgMSBcdFx0XHQvLyBcdFx0VGhlbWUgdXRpbHNcbiAgMiBcdFx0XHQvLyBcdFx0VmFyaWFibGVzXG4gIDMgXHRcdFx0Ly8gXHRcdEJhc2VcbiAgNCBcdFx0XHQvL1x0XHRUaGVtZSBzdHlsZXNcbiAgNSBcdFx0XHQvLyBcdFx0VXRpbHNcbiAgNiBcdFx0XHQvLyBcdFx0VmVuZG9yXG4gIDcgXHRcdFx0Ly8gXHRcdENvbXBvbmVudHNcbiAgOCBcdFx0XHQvLyBcdFx0TGF5b3V0c1xuICA5IFx0XHRcdC8vIFx0XHRUZW1wbGF0ZXNcbiAqL1xuLyogRGVmYXVsdCBmb250cyAqL1xuLyogQXBwIGZvbnRzICovXG4ubWF0ZXJpYWxJbnB1dCB0ZXh0YXJlYSwgLmNvbW1lbnQtcmVzcG9uZCAubWF0ZXJpYWxJbnB1dCB0ZXh0YXJlYSxcbi5tYXRlcmlhbElucHV0IGlucHV0LFxuLmNvbW1lbnQtcmVzcG9uZCAubWF0ZXJpYWxJbnB1dCBpbnB1dCwgLnNlYXJjaEZvcm1fX2lucHV0LFxuLmZvcm1Db250cm9sIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIHJlc2l6ZTogbm9uZTtcbn1cblxuLnNlYXJjaEZvcm1fX3N1Ym1pdCwgLmhlYWRlcl9fYm90dG9tX19hY3Rpb25zX19zZWFyY2gsIC5oZWFkZXJfX3Jlc3BvbnNpdmVNZW51IC5kcm9wZG93bi10b2dnbGUsIC5mb290ZXJfX2RvY3RvbGliID4gYSwgLmZvcm0tc3VibWl0IGJ1dHRvblt0eXBlPVwic3VibWl0XCJdLCAuaGVhZGVyX19ib3R0b21fX2FjdGlvbnNfX21lbnUgPiAqIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi5tYXRlcmlhbElucHV0LCAuY29tbWVudC1yZXNwb25kIC5tYXRlcmlhbElucHV0IHtcbiAgaGVpZ2h0OiB2YXIoLS1tYXRlcmlhbElucHV0SGVpZ2h0LCA1MHB4KTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ubWF0ZXJpYWxJbnB1dCB0ZXh0YXJlYSwgLmNvbW1lbnQtcmVzcG9uZCAubWF0ZXJpYWxJbnB1dCB0ZXh0YXJlYSxcbi5tYXRlcmlhbElucHV0IGlucHV0LFxuLmNvbW1lbnQtcmVzcG9uZCAubWF0ZXJpYWxJbnB1dCBpbnB1dCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG59XG5cbi5tYXRlcmlhbElucHV0IHRleHRhcmVhLCAuY29tbWVudC1yZXNwb25kIC5tYXRlcmlhbElucHV0IHRleHRhcmVhLCAubWF0ZXJpYWxJbnB1dCB0ZXh0YXJlYTo6cGxhY2Vob2xkZXIsIC5jb21tZW50LXJlc3BvbmQgLm1hdGVyaWFsSW5wdXQgdGV4dGFyZWE6OnBsYWNlaG9sZGVyLFxuLm1hdGVyaWFsSW5wdXQgaW5wdXQsXG4uY29tbWVudC1yZXNwb25kIC5tYXRlcmlhbElucHV0IGlucHV0LFxuLm1hdGVyaWFsSW5wdXQgaW5wdXQ6OnBsYWNlaG9sZGVyLFxuLmNvbW1lbnQtcmVzcG9uZCAubWF0ZXJpYWxJbnB1dCBpbnB1dDo6cGxhY2Vob2xkZXIge1xuICBmb250LWZhbWlseTogdmFyKC0tbWF0ZXJpYWxJbnB1dEZvbnRGYW1pbHksIHZhcigtLWZvbnRGYW1pbHksIEFyaWFsLCBzYW5zLXNlcmlmKSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tbWF0ZXJpYWxJbnB1dEZvbnRTaXplLCAxcmVtKTtcbiAgY29sb3I6IHZhcigtLW1hdGVyaWFsSW5wdXRDb2xvciwgIzlFOUU5RSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1tYXRlcmlhbElucHV0Rm9udFdlaWdodCwgNDAwKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLW1hdGVyaWFsSW5wdXRMaW5lSGVpZ2h0LCAxKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLW1hdGVyaWFsSW5wdXRMZXR0ZXJTcGFjaW5nLCAwcHgpO1xufVxuXG4ubWF0ZXJpYWxJbnB1dCB0ZXh0YXJlYTpmb2N1cyArIGxhYmVsID4gc3Bhbixcbi5tYXRlcmlhbElucHV0IHRleHRhcmVhLmlzQWN0aXZlICsgbGFiZWwgPiBzcGFuLFxuLm1hdGVyaWFsSW5wdXQgaW5wdXQ6Zm9jdXMgKyBsYWJlbCA+IHNwYW4sXG4ubWF0ZXJpYWxJbnB1dCBpbnB1dC5pc0FjdGl2ZSArIGxhYmVsID4gc3BhbiB7XG4gIGNvbG9yOiB2YXIoLS1tYXRlcmlhbElucHV0TGFiZWxBY3RpdmVDb2xvciwgIzQyODVGNCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWShjYWxjKC0xMzAlIC0gdmFyKC0tbWF0ZXJpYWxJbnB1dEV4dHJhSGVpZ2h0LCAwcHgpKSkgc2NhbGUodmFyKC0tbWF0ZXJpYWxJbnB1dExhYmVsQWN0aXZlU2NhbGUsIDEpKTtcbn1cblxuLm1hdGVyaWFsSW5wdXQgdGV4dGFyZWE6Zm9jdXMgKyBsYWJlbDo6YWZ0ZXIsXG4ubWF0ZXJpYWxJbnB1dCB0ZXh0YXJlYS5pc0FjdGl2ZSArIGxhYmVsOjphZnRlcixcbi5tYXRlcmlhbElucHV0IGlucHV0OmZvY3VzICsgbGFiZWw6OmFmdGVyLFxuLm1hdGVyaWFsSW5wdXQgaW5wdXQuaXNBY3RpdmUgKyBsYWJlbDo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlWCgxKTtcbn1cblxuLm1hdGVyaWFsSW5wdXQgdGV4dGFyZWEsIC5jb21tZW50LXJlc3BvbmQgLm1hdGVyaWFsSW5wdXQgdGV4dGFyZWEge1xuICBwYWRkaW5nLXRvcDogMjVweDtcbn1cblxuLm1hdGVyaWFsSW5wdXQgbGFiZWwsIC5jb21tZW50LXJlc3BvbmQgLm1hdGVyaWFsSW5wdXQgbGFiZWwge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1tYXRlcmlhbElucHV0Qm9yZGVyQ29sb3IsICM5RTlFOUUpO1xufVxuXG4ubWF0ZXJpYWxJbnB1dCBsYWJlbDo6YWZ0ZXIsIC5jb21tZW50LXJlc3BvbmQgLm1hdGVyaWFsSW5wdXQgbGFiZWw6OmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IC0xcHg7XG4gIGxlZnQ6IDA7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGN1YmljLWJlemllcigwLjI1LCAwLjEsIDAuMjUsIDEpO1xuICBib3JkZXItYm90dG9tOiB2YXIoLS1tYXRlcmlhbElucHV0Qm9yZGVyQWN0aXZlSGVpZ2h0LCAzcHgpIHNvbGlkIHZhcigtLW1hdGVyaWFsSW5wdXRCb3JkZXJBY3RpdmVDb2xvciwgIzQyODVGNCk7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDApO1xufVxuXG4ubWF0ZXJpYWxJbnB1dCBsYWJlbCA+IHNwYW4sIC5jb21tZW50LXJlc3BvbmQgLm1hdGVyaWFsSW5wdXQgbGFiZWwgPiBzcGFuIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDVweDtcbiAgbGVmdDogMDtcbiAgZm9udC1mYW1pbHk6IHZhcigtLW1hdGVyaWFsSW5wdXRMYWJlbEZvbnRGYW1pbHksIHZhcigtLWZvbnRGYW1pbHksIEFyaWFsLCBzYW5zLXNlcmlmKSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tbWF0ZXJpYWxJbnB1dExhYmVsRm9udFNpemUsIDFyZW0pO1xuICBjb2xvcjogdmFyKC0tbWF0ZXJpYWxJbnB1dExhYmVsQ29sb3IsICM5RTlFOUUpO1xuICBmb250LXdlaWdodDogdmFyKC0tbWF0ZXJpYWxJbnB1dExhYmVsRm9udFdlaWdodCwgNDAwKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLW1hdGVyaWFsSW5wdXRMYWJlbExldHRlclNwYWNpbmcsIDAuMDNlbSk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGN1YmljLWJlemllcigwLjI1LCAwLjEsIDAuMjUsIDEpLCBjb2xvciAwLjNzIGN1YmljLWJlemllcigwLjI1LCAwLjEsIDAuMjUsIDEpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xufVxuXG4uZm9vdGVyX19kb2N0b2xpYiA+IGEsIC5kb2N0b2xpYkJ1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWRvY3RvbGliQnV0dG9uRm9udEZhbWlseSwgdmFyKC0tZm9udEZhbWlseSwgQXJpYWwsIHNhbnMtc2VyaWYpKTtcbiAgZm9udC1zaXplOiB2YXIoLS1kb2N0b2xpYkJ1dHRvbkZvbnRTaXplLCAxcmVtKTtcbiAgY29sb3I6IHZhcigtLWRvY3RvbGliQnV0dG9uVGV4dENvbG9yLCAjMDAwKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWRvY3RvbGliQnV0dG9uRm9udFdlaWdodCwgNDAwKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWRvY3RvbGliQnV0dG9uTGluZUhlaWdodCwgMS4yNSk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHZhcigtLWRvY3RvbGliQnV0dG9uVGV4dFRyYW5zZm9ybSwgbm9uZSk7XG4gIHBhZGRpbmc6IHZhcigtLWRvY3RvbGliQnV0dG9uUGFkZGluZ1RvcCwgMWVtKSB2YXIoLS1kb2N0b2xpYkJ1dHRvblBhZGRpbmdSaWdodCwgMWVtKSB2YXIoLS1kb2N0b2xpYkJ1dHRvblBhZGRpbmdCb3R0b20sIDFlbSkgdmFyKC0tZG9jdG9saWJCdXR0b25QYWRkaW5nTGVmdCwgMWVtKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZG9jdG9saWJCdXR0b25CYWNrZ3JvdW5kQ29sb3IsICNGRkYpO1xufVxuXG4uZm9vdGVyX19kb2N0b2xpYiA+IGEgc3ZnLCAuZG9jdG9saWJCdXR0b24gc3ZnIHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLWRvY3RvbGliQnV0dG9uTG9nb01hcmdpbkxlZnQsIDFlbSk7XG59XG5cbi5mb290ZXJfX2RvY3RvbGliID4gYSBzdmcgcGF0aCwgLmRvY3RvbGliQnV0dG9uIHN2ZyBwYXRoIHtcbiAgZmlsbDogdmFyKC0tZG9jdG9saWJCdXR0b25Mb2dvQ29sb3IsICMwMDApO1xufVxuXG5iYWNrLXRvLXRvcCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aWR0aDogdmFyKC0tYmFja1RvVG9wV2lkdGgsIDUwcHgpO1xuICBoZWlnaHQ6IHZhcigtLWJhY2tUb1RvcEhlaWdodCwgNTBweCk7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogdmFyKC0tYmFja1RvVG9wWmluZGV4LCAyMCk7XG4gIHJpZ2h0OiB2YXIoLS1iYWNrVG9Ub3BSaWdodCwgMHB4KTtcbiAgYm90dG9tOiB2YXIoLS1iYWNrVG9Ub3BCb3R0b20sIDIwcHgpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJhY2tUb1RvcEJvcmRlclJhZGl1cywgMHB4KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja1RvVG9wQmFja2dyb3VuZENvbG9yLCAjMDAwKTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjNzLCB0cmFuc2Zvcm0gMC4zcyBjdWJpYy1iZXppZXIoMC40MiwgMCwgMC41OCwgMSk7XG4gIHRyYW5zZm9ybTogdmFyKC0tYmFja1RvVG9wVHJhbnNmb3JtLCB0cmFuc2xhdGUzZChjYWxjKDEwMCUgKyB2YXIoLS1iYWNrVG9Ub3BFeHRyYU9mZnNldCwgMHB4KSksIDAsIDApKSB2YXIoLS1iYWNrVG9Ub3BUcmFuc2Zvcm1FeHRyYSwgcm90YXRlKDBkZWcpKTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG5iYWNrLXRvLXRvcCBzdmcge1xuICB0cmFuc2Zvcm06IHZhcigtLWJhY2tUb1RvcFN2Z1RyYW5zZm9ybSwgbm9uZSk7XG59XG5cbmJhY2stdG8tdG9wIHN2ZyBwYXRoIHtcbiAgdHJhbnNpdGlvbjogc3Ryb2tlIDAuM3M7XG4gIHN0cm9rZTogdmFyKC0tYmFja1RvVG9wU3ZnQ29sb3IsICNGRkYpO1xufVxuXG5AbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuICBiYWNrLXRvLXRvcDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja1RvVG9wQWN0aXZlQmFja2dyb3VuZENvbG9yLCAjRkZGKTtcbiAgfVxuICBiYWNrLXRvLXRvcDpob3ZlciBzdmcgcGF0aCB7XG4gICAgc3Ryb2tlOiB2YXIoLS1iYWNrVG9Ub3BTdmdBY3RpdmVDb2xvciwgIzAwMCk7XG4gIH1cbn1cblxuYmFjay10by10b3AuaXMtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB2YXIoLS1iYWNrVG9Ub3BBY3RpdmVUcmFuc2Zvcm0sIHRyYW5zbGF0ZTNkKGNhbGMoKHZhcigtLWJhY2tUb1RvcE9mZnNldFJpZ2h0LCAyMHB4KSArIHZhcigtLWJhY2tUb1RvcEV4dHJhT2Zmc2V0LCAwcHgpKSAqIC0xKSwgMCwgMCkpIHZhcigtLWJhY2tUb1RvcEFjdGl2ZVRyYW5zZm9ybUV4dHJhLCB2YXIoLS1iYWNrVG9Ub3BUcmFuc2Zvcm1FeHRyYSwgcm90YXRlKDBkZWcpKSk7XG59XG5cbi8qIGh0dHA6Ly9tZXllcndlYi5jb20vZXJpYy90b29scy9jc3MvcmVzZXQvXG4gICB2Mi4wIHwgMjAxMTAxMjZcbiAgIExpY2Vuc2U6IG5vbmUgKHB1YmxpYyBkb21haW4pXG4qL1xuaHRtbCxcbmJvZHksXG5kaXYsXG5zcGFuLFxuYXBwbGV0LFxub2JqZWN0LFxuaWZyYW1lLFxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2LFxucCxcbmJsb2NrcXVvdGUsXG5wcmUsXG5hLFxuYWJicixcbmFjcm9ueW0sXG5hZGRyZXNzLFxuYmlnLFxuY2l0ZSxcbmNvZGUsXG5kZWwsXG5kZm4sXG5lbSxcbmltZyxcbmlucyxcbmtiZCxcbnEsXG5zLFxuc2FtcCxcbnNtYWxsLFxuc3RyaWtlLFxuc3Ryb25nLFxuc3ViLFxuc3VwLFxudHQsXG52YXIsXG5iLFxudSxcbmksXG5jZW50ZXIsXG5kbCxcbmR0LFxuZGQsXG5vbCxcbnVsLFxubGksXG5maWVsZHNldCxcbmZvcm0sXG5sYWJlbCxcbmxlZ2VuZCxcbnRhYmxlLFxuY2FwdGlvbixcbnRib2R5LFxudGZvb3QsXG50aGVhZCxcbnRyLFxudGgsXG50ZCxcbmFydGljbGUsXG5hc2lkZSxcbmNhbnZhcyxcbmRldGFpbHMsXG5lbWJlZCxcbmZpZ3VyZSxcbmZpZ2NhcHRpb24sXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tZW51LFxubmF2LFxub3V0cHV0LFxucnVieSxcbnNlY3Rpb24sXG5zdW1tYXJ5LFxudGltZSxcbm1hcmssXG5hdWRpbyxcbnZpZGVvIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICBmb250LXZhcmlhbnQ6IGluaGVyaXQ7XG4gIGZvbnQtc3R5bGU6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLyogSFRNTDUgZGlzcGxheS1yb2xlIHJlc2V0IGZvciBvbGRlciBicm93c2VycyAqL1xuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tZW51LFxubmF2LFxuc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5ib2R5IHtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbm9sLFxudWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG5ibG9ja3F1b3RlLFxucSB7XG4gIHF1b3Rlczogbm9uZTtcbn1cblxuYmxvY2txdW90ZTo6YmVmb3JlLFxuYmxvY2txdW90ZTo6YWZ0ZXIsXG5xOjpiZWZvcmUsXG5xOjphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBjb250ZW50OiBub25lO1xufVxuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xufVxuXG5hIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDQ4MHB4KSB7XG4gIGJvZHkge1xuICAgIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogbm9uZTtcbiAgfVxufVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBtaW4td2lkdGg6IDA7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuaHRtbCxcbmJvZHkge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbmh0bWwge1xuICBmb250LXNpemU6IGNhbGMoKDEwMCUgKiAxNikgLyAxNik7XG59XG5cbmJvZHkge1xuICBmb250LWZhbWlseTogdmFyKC0tYmFzZUZvbnRGYW1pbHksIHZhcigtLWZvbnRGYW1pbHksIEFyaWFsLCBzYW5zLXNlcmlmKSk7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgY29sb3I6IHZhcigtLWJhc2VDb2xvciwgIzAwMCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1iYXNlRm9udFdlaWdodCwgNDAwKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWJhc2VMaW5lSGVpZ2h0LCAxLjIpO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVTcGVlZDtcbn1cblxuaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG5zdmcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1iYXNlRm9udFdlaWdodEJvbGQsIHZhcigtLWZvbnRXZWlnaHRCb2xkLCA3MDApKTtcbn1cblxuZW0ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbnRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xufVxuXG5pbnB1dDotd2Via2l0LWF1dG9maWxsIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMCAxMDAwcHggI0ZGRiBpbnNldDtcbn1cblxuaW5wdXQ6bm90KGlucHV0Oi13ZWJraXQtYXV0b2ZpbGwpOjotd2Via2l0LWNvbnRhY3RzLWF1dG8tZmlsbC1idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xufVxuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogc21hbGxlcjtcbn1cblxudGV4dGFyZWEge1xuICByZXNpemU6IHZlcnRpY2FsO1xufVxuXG4uaXNSb2xsSG92ZXIgPiBkaXYge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5pc1JvbGxIb3ZlciA+IGRpdiA+ICoge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMzVzIGN1YmljLWJlemllcigwLjI1LCAwLjEsIDAuMjUsIDEpO1xufVxuXG4uaXNSb2xsSG92ZXIgPiBkaXYgPiAqOm50aC1jaGlsZCgyKSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcbiAgLmlzUm9sbEhvdmVyOmhvdmVyID4gZGl2ID4gKjpudGgtY2hpbGQoMSkge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gIH1cbiAgLmlzUm9sbEhvdmVyOmhvdmVyID4gZGl2ID4gKjpudGgtY2hpbGQoMikge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuXG4vKiBQcmV2ZW50IGlPUyBmcm9tIHpvb21pbmcgaW4gb24gaW5wdXQgZmllbGRzICovXG5Ac3VwcG9ydHMgKC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZSkge1xuICBpbnB1dFt0eXBlPSdjb2xvciddLFxuICBpbnB1dFt0eXBlPSdkYXRlJ10sXG4gIGlucHV0W3R5cGU9J2RhdGV0aW1lJ10sXG4gIGlucHV0W3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sXG4gIGlucHV0W3R5cGU9J2VtYWlsJ10sXG4gIGlucHV0W3R5cGU9J21vbnRoJ10sXG4gIGlucHV0W3R5cGU9J251bWJlciddLFxuICBpbnB1dFt0eXBlPSdwYXNzd29yZCddLFxuICBpbnB1dFt0eXBlPSdzZWFyY2gnXSxcbiAgaW5wdXRbdHlwZT0ndGVsJ10sXG4gIGlucHV0W3R5cGU9J3RleHQnXSxcbiAgaW5wdXRbdHlwZT0ndGltZSddLFxuICBpbnB1dFt0eXBlPSd1cmwnXSxcbiAgaW5wdXRbdHlwZT0nd2VlayddLFxuICBzZWxlY3QsXG4gIHNlbGVjdDpmb2N1cyxcbiAgdGV4dGFyZWEge1xuICAgIGZvbnQtc2l6ZTogaW5pdGlhbCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiBjYWxjKHZhcigtLWNvbnRhaW5lcldpZHRoKSArICh2YXIoLS1jb250YWluZXJHdXR0ZXIpICogMikpO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1jb250YWluZXJHdXR0ZXIpO1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLWNvbnRhaW5lckd1dHRlcik7XG59XG5cbi5jb250YWluZXItZmx1aWQge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1jb250YWluZXJHdXR0ZXIpO1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLWNvbnRhaW5lckd1dHRlcik7XG59XG5cbi5zZWN0aW9uIHtcbiAgY29sb3I6IHZhcigtLXNlY3Rpb25Db2xvciwgdmFyKC0tYmFzZUNvbG9yLCAjMDAwKSk7XG4gIGJhY2tncm91bmQ6IHZhcigtLXNlY3Rpb25CYWNrZ3JvdW5kQ29sb3IsIHRyYW5zcGFyZW50KTtcbn1cblxuLnNlY3Rpb24gKyAuc2VjdGlvbjpub3QoLnNlY3Rpb24tLW5vLXRvcE1hcmdpbikge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zZWN0aW9uTWFyZ2luVG9wLCAyLjE4NzVyZW0pO1xufVxuXG4uc2VjdGlvbiAuc2VjdGlvbkNvbnRlbnRfX2NvbHVtbiArIC5zZWN0aW9uQ29udGVudF9fY29sdW1uLFxuLnNlY3Rpb24gLnNlY3Rpb25Db250ZW50X19jb2x1bW4gPiAqICsgKiB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNlY3Rpb25Jbm5lck1hcmdpblRvcCwgMi4xODc1cmVtKTtcbn1cblxuLnNlY3Rpb246bm90KC5zZWN0aW9uLS1uby1wYWRkaW5ncykge1xuICBwYWRkaW5nOiB2YXIoLS1zZWN0aW9uUGFkZGluZywgMS41NjI1cmVtKSAwO1xufVxuXG4uc2VjdGlvbkhlYWRlciB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNlY3Rpb25IZWFkZXJNYXJnaW5Cb3R0b20sIDIuMTg3NXJlbSk7XG59XG5cbi5zZWN0aW9uSGVhZGVyLS1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5zZWN0aW9uSGVhZGVyLS1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLnNlY3Rpb25IZWFkZXItLXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbjpyb290IHtcbiAgLS1hbHRvMkNvbG9yOiAjREVERURFO1xuICAtLWFsdG9Db2xvcjogI0NGQ0ZDRjtcbiAgLS1ib3VsZGVyMkNvbG9yOiAjNzk3OTc5O1xuICAtLWJvdWxkZXJDb2xvcjogIzc3NztcbiAgLS1jYXJhcnJhQ29sb3I6ICNGM0YyRjA7XG4gIC0tY29kR3JheTJDb2xvcjogIzEyMTIxMjtcbiAgLS1jb2RHcmF5M0NvbG9yOiAjMTUxNTE1O1xuICAtLWNvZEdyYXlDb2xvcjogIzBEMEQwRDtcbiAgLS1jb25jcmV0ZTJDb2xvcjogI0YzRjNGMztcbiAgLS1jb25jcmV0ZUNvbG9yOiAjRjJGMkYyO1xuICAtLWNvcmR1cm95MkNvbG9yOiAjNjU2RTZDO1xuICAtLWNvcmR1cm95Q29sb3I6ICM1NjYyNUY7XG4gIC0tZG92ZUdyYXlDb2xvcjogIzY4Njg2ODtcbiAgLS1kdW5lQ29sb3I6ICMyQjI1MjM7XG4gIC0tZHVzdHlHcmF5Q29sb3I6ICM5QzlDOUM7XG4gIC0tZ2FsbGVyeTJDb2xvcjogI0VCRUFFOTtcbiAgLS1nYWxsZXJ5M0NvbG9yOiAjRURFREVEO1xuICAtLWdhbGxlcnlDb2xvcjogI0VGRUZFRjtcbiAgLS1ncmF5Q29sb3I6ICM4QzhDOEM7XG4gIC0taG9sbHlDb2xvcjogIzAxMTUxMDtcbiAgLS1tYWtvQ29sb3I6ICM0NDQ5NTE7XG4gIC0tbWVyY3VyeUNvbG9yOiAjRTJFMkUyO1xuICAtLW1pbmVTaGFmdDJDb2xvcjogIzI1MjUyNTtcbiAgLS1taW5lU2hhZnQzQ29sb3I6ICMyMDIwMjA7XG4gIC0tbWluZVNoYWZ0NENvbG9yOiAjM0MzQzNDO1xuICAtLW1pbmVTaGFmdDVDb2xvcjogIzIzMjMyMztcbiAgLS1taW5lU2hhZnRDb2xvcjogIzI4MjgyODtcbiAgLS1tb3J0YXJDb2xvcjogIzUzNDc1NjtcbiAgLS1wYXZsb3ZhQ29sb3I6ICNEN0MxQTE7XG4gIC0tc2Vhc2hlbGxDb2xvcjogI0YxRjFGMTtcbiAgLS1zaWx2ZXIyQ29sb3I6ICNDRENEQ0Q7XG4gIC0tc2lsdmVyQ2hhbGljZTJDb2xvcjogI0EzQTNBMztcbiAgLS1zaWx2ZXJDaGFsaWNlM0NvbG9yOiAjQThBOEE4O1xuICAtLXNpbHZlckNoYWxpY2VDb2xvcjogIzlGOUY5RjtcbiAgLS1zaWx2ZXJDb2xvcjogI0M0QzRDNDtcbiAgLS10dW5hQ29sb3I6ICMzOTM5M0M7XG4gIC0tdHVuZG9yYTJDb2xvcjogIzQ1NDU0NTtcbiAgLS10dW5kb3JhQ29sb3I6ICM0MDQwNDA7XG4gIC0tdmlyaWRpYW5HcmVlbjogIzYxODE3MDtcbiAgLS13aGl0ZVJvY2tDb2xvcjogI0VDRTREODtcbn1cblxuOnJvb3Qge1xuICAtLWNvbnRhaW5lckd1dHRlcjogMTVweDtcbiAgLS1jb250YWluZXJXaWR0aDogMTMwMHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIDpyb290IHtcbiAgICAtLWNvbnRhaW5lckd1dHRlcjogMzBweDtcbiAgfVxufVxuXG46cm9vdCB7XG4gIC0tZm9udEZhbWlseTogYXpvLXNhbnMtd2ViLCBhcmlhbCwgaGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICAtLWZvbnRXZWlnaHQ6IHZhcigtLWZvbnRXZWlnaHRSZWd1bGFyKTtcbn1cblxuOnJvb3Qge1xuICAtLWZvbnRXZWlnaHRCbGFjazogOTAwO1xuICAtLWZvbnRXZWlnaHRCb2xkOiA3MDA7XG4gIC0tZm9udFdlaWdodEV4dHJhQm9sZDogODAwO1xuICAtLWZvbnRXZWlnaHRMaWdodDogMzAwO1xuICAtLWZvbnRXZWlnaHRNZWRpdW06IDUwMDtcbiAgLS1mb250V2VpZ2h0UmVndWxhcjogNDAwO1xuICAtLWZvbnRXZWlnaHRTZW1pQm9sZDogNjAwO1xuICAtLWZvbnRXZWlnaHRUaGluOiAxMDA7XG59XG5cbi5wYWdlV3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuaHRtbC5mb2N1cy1vdXRsaW5lLWhpZGRlbiAqOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4jd3BhZG1pbmJhciB7XG4gIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50O1xufVxuXG4uYXBwbHlTdHlsZXMgYmxvY2txdW90ZSArICosIC50ZXh0SW1hZ2VfX3RleHRfX2NvbnRlbnQgYmxvY2txdW90ZSArICosIC5ob21lSGVyb19fY29udGVudF9fdGV4dCBibG9ja3F1b3RlICsgKiB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXBhcmFncmFwaEdhcCwgMC45Mzc1cmVtKTtcbn1cblxuLmFwcGx5U3R5bGVzIC5kZWZhdWx0U2xpZGVyICsgKiwgLnRleHRJbWFnZV9fdGV4dF9fY29udGVudCAuZGVmYXVsdFNsaWRlciArICosIC5ob21lSGVyb19fY29udGVudF9fdGV4dCAuZGVmYXVsdFNsaWRlciArICoge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1wYXJhZ3JhcGhHYXAsIDAuOTM3NXJlbSk7XG59XG5cbi5hcHBseVN0eWxlcyBwLCAudGV4dEltYWdlX190ZXh0X19jb250ZW50IHAsIC5ob21lSGVyb19fY29udGVudF9fdGV4dCBwIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLXRleHRGb250RmFtaWx5LCB2YXIoLS1iYXNlRm9udEZhbWlseSwgdmFyKC0tZm9udEZhbWlseSwgQXJpYWwsIHNhbnMtc2VyaWYpKSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tdGV4dFNpemUsIDFyZW0pO1xuICBjb2xvcjogdmFyKC0tdGV4dENvbG9yLCAjMDAwKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLXRleHRGb250V2VpZ2h0LCA0MDApO1xuICBsaW5lLWhlaWdodDogdmFyKC0tdGV4dExpbmVIZWlnaHQsIDEuMik7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS10ZXh0TGV0dGVyU3BhY2luZywgMCk7XG4gIHRleHQtYWxpZ246IGluaXRpYWw7XG59XG5cbi5hcHBseVN0eWxlcyBwICsgKiwgLnRleHRJbWFnZV9fdGV4dF9fY29udGVudCBwICsgKiwgLmhvbWVIZXJvX19jb250ZW50X190ZXh0IHAgKyAqIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tcGFyYWdyYXBoR2FwLCAwLjkzNzVyZW0pO1xufVxuXG4uYXBwbHlTdHlsZXMgcCArIGgxLCAudGV4dEltYWdlX190ZXh0X19jb250ZW50IHAgKyBoMSwgLmhvbWVIZXJvX19jb250ZW50X190ZXh0IHAgKyBoMSxcbi5hcHBseVN0eWxlcyBwICsgaDIsXG4udGV4dEltYWdlX190ZXh0X19jb250ZW50IHAgKyBoMixcbi5ob21lSGVyb19fY29udGVudF9fdGV4dCBwICsgaDIsXG4uYXBwbHlTdHlsZXMgcCArIGgzLFxuLnRleHRJbWFnZV9fdGV4dF9fY29udGVudCBwICsgaDMsXG4uaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQgcCArIGgzLFxuLmFwcGx5U3R5bGVzIHAgKyBoNCxcbi50ZXh0SW1hZ2VfX3RleHRfX2NvbnRlbnQgcCArIGg0LFxuLmhvbWVIZXJvX19jb250ZW50X190ZXh0IHAgKyBoNCxcbi5hcHBseVN0eWxlcyBwICsgaDUsXG4udGV4dEltYWdlX190ZXh0X19jb250ZW50IHAgKyBoNSxcbi5ob21lSGVyb19fY29udGVudF9fdGV4dCBwICsgaDUsXG4uYXBwbHlTdHlsZXMgcCArIGg2LFxuLnRleHRJbWFnZV9fdGV4dF9fY29udGVudCBwICsgaDYsXG4uaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQgcCArIGg2IHtcbiAgbWFyZ2luLXRvcDogdmFyKC0taGVhZGluZ01hcmdpblRvcCwgMi4xODc1cmVtKTtcbn1cblxuLmFwcGx5U3R5bGVzIHAgKyBwID4gaW1nLCAudGV4dEltYWdlX190ZXh0X19jb250ZW50IHAgKyBwID4gaW1nLCAuaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQgcCArIHAgPiBpbWcge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1wYXJhZ3JhcGhHYXAsIDAuOTM3NXJlbSk7XG59XG5cbi5hcHBseVN0eWxlcyBwIGEsIC50ZXh0SW1hZ2VfX3RleHRfX2NvbnRlbnQgcCBhLCAuaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQgcCBhIHtcbiAgZm9udC1zaXplOiB2YXIoLS10ZXh0U2l6ZSwgMXJlbSk7XG59XG5cbi5hcHBseVN0eWxlcyBwIGltZywgLnRleHRJbWFnZV9fdGV4dF9fY29udGVudCBwIGltZywgLmhvbWVIZXJvX19jb250ZW50X190ZXh0IHAgaW1nIHtcbiAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xufVxuXG4uYXBwbHlTdHlsZXMgdWw6bm90KC5kb250QXBwbHlTdHlsZSksIC50ZXh0SW1hZ2VfX3RleHRfX2NvbnRlbnQgdWw6bm90KC5kb250QXBwbHlTdHlsZSksIC5ob21lSGVyb19fY29udGVudF9fdGV4dCB1bDpub3QoLmRvbnRBcHBseVN0eWxlKSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS10ZXh0Rm9udEZhbWlseSwgdmFyKC0tYmFzZUZvbnRGYW1pbHksIHZhcigtLWZvbnRGYW1pbHksIEFyaWFsLCBzYW5zLXNlcmlmKSkpO1xuICBmb250LXNpemU6IHZhcigtLXRleHRTaXplLCAxcmVtKTtcbiAgY29sb3I6IHZhcigtLXRleHRDb2xvciwgIzAwMCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS10ZXh0Rm9udFdlaWdodCwgNDAwKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLXRleHRMaW5lSGVpZ2h0LCAxLjIpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdGV4dExldHRlclNwYWNpbmcsIDBweCk7XG4gIHRleHQtYWxpZ246IHZhcigtLXRleHRBbGlnbiwganVzdGlmeSk7XG59XG5cbi5hcHBseVN0eWxlcyB1bDpub3QoLmRvbnRBcHBseVN0eWxlKSArIHAsIC50ZXh0SW1hZ2VfX3RleHRfX2NvbnRlbnQgdWw6bm90KC5kb250QXBwbHlTdHlsZSkgKyBwLCAuaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQgdWw6bm90KC5kb250QXBwbHlTdHlsZSkgKyBwLFxuLmFwcGx5U3R5bGVzIHVsOm5vdCguZG9udEFwcGx5U3R5bGUpICsgdWwsXG4udGV4dEltYWdlX190ZXh0X19jb250ZW50IHVsOm5vdCguZG9udEFwcGx5U3R5bGUpICsgdWwsXG4uaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQgdWw6bm90KC5kb250QXBwbHlTdHlsZSkgKyB1bCxcbi5hcHBseVN0eWxlcyB1bDpub3QoLmRvbnRBcHBseVN0eWxlKSArIG9sLFxuLnRleHRJbWFnZV9fdGV4dF9fY29udGVudCB1bDpub3QoLmRvbnRBcHBseVN0eWxlKSArIG9sLFxuLmhvbWVIZXJvX19jb250ZW50X190ZXh0IHVsOm5vdCguZG9udEFwcGx5U3R5bGUpICsgb2wge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1wYXJhZ3JhcGhHYXAsIDAuOTM3NXJlbSk7XG59XG5cbi5hcHBseVN0eWxlcyB1bDpub3QoLmRvbnRBcHBseVN0eWxlKSArIGgxLCAudGV4dEltYWdlX190ZXh0X19jb250ZW50IHVsOm5vdCguZG9udEFwcGx5U3R5bGUpICsgaDEsIC5ob21lSGVyb19fY29udGVudF9fdGV4dCB1bDpub3QoLmRvbnRBcHBseVN0eWxlKSArIGgxLFxuLmFwcGx5U3R5bGVzIHVsOm5vdCguZG9udEFwcGx5U3R5bGUpICsgaDIsXG4udGV4dEltYWdlX190ZXh0X19jb250ZW50IHVsOm5vdCguZG9udEFwcGx5U3R5bGUpICsgaDIsXG4uaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQgdWw6bm90KC5kb250QXBwbHlTdHlsZSkgKyBoMixcbi5hcHBseVN0eWxlcyB1bDpub3QoLmRvbnRBcHBseVN0eWxlKSArIGgzLFxuLnRleHRJbWFnZV9fdGV4dF9fY29udGVudCB1bDpub3QoLmRvbnRBcHBseVN0eWxlKSArIGgzLFxuLmhvbWVIZXJvX19jb250ZW50X190ZXh0IHVsOm5vdCguZG9udEFwcGx5U3R5bGUpICsgaDMsXG4uYXBwbHlTdHlsZXMgdWw6bm90KC5kb250QXBwbHlTdHlsZSkgKyBoNCxcbi50ZXh0SW1hZ2VfX3RleHRfX2NvbnRlbnQgdWw6bm90KC5kb250QXBwbHlTdHlsZSkgKyBoNCxcbi5ob21lSGVyb19fY29udGVudF9fdGV4dCB1bDpub3QoLmRvbnRBcHBseVN0eWxlKSArIGg0LFxuLmFwcGx5U3R5bGVzIHVsOm5vdCguZG9udEFwcGx5U3R5bGUpICsgaDUsXG4udGV4dEltYWdlX190ZXh0X19jb250ZW50IHVsOm5vdCguZG9udEFwcGx5U3R5bGUpICsgaDUsXG4uaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQgdWw6bm90KC5kb250QXBwbHlTdHlsZSkgKyBoNSxcbi5hcHBseVN0eWxlcyB1bDpub3QoLmRvbnRBcHBseVN0eWxlKSArIGg2LFxuLnRleHRJbWFnZV9fdGV4dF9fY29udGVudCB1bDpub3QoLmRvbnRBcHBseVN0eWxlKSArIGg2LFxuLmhvbWVIZXJvX19jb250ZW50X190ZXh0IHVsOm5vdCguZG9udEFwcGx5U3R5bGUpICsgaDYge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1oZWFkaW5nTWFyZ2luVG9wLCAyLjE4NzVyZW0pO1xufVxuXG4uYXBwbHlTdHlsZXMgdWw6bm90KC5kb250QXBwbHlTdHlsZSkgKyBwID4gaW1nLCAudGV4dEltYWdlX190ZXh0X19jb250ZW50IHVsOm5vdCguZG9udEFwcGx5U3R5bGUpICsgcCA+IGltZywgLmhvbWVIZXJvX19jb250ZW50X190ZXh0IHVsOm5vdCguZG9udEFwcGx5U3R5bGUpICsgcCA+IGltZyB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXBhcmFncmFwaEdhcCwgMC45Mzc1cmVtKTtcbn1cblxuLmFwcGx5U3R5bGVzIHVsOm5vdCguZG9udEFwcGx5U3R5bGUpIGEsIC50ZXh0SW1hZ2VfX3RleHRfX2NvbnRlbnQgdWw6bm90KC5kb250QXBwbHlTdHlsZSkgYSwgLmhvbWVIZXJvX19jb250ZW50X190ZXh0IHVsOm5vdCguZG9udEFwcGx5U3R5bGUpIGEge1xuICBmb250LXNpemU6IHZhcigtLXRleHRTaXplLCAxcmVtKTtcbn1cblxuLmFwcGx5U3R5bGVzIG9sOm5vdCguZG9udEFwcGx5U3R5bGUpLCAudGV4dEltYWdlX190ZXh0X19jb250ZW50IG9sOm5vdCguZG9udEFwcGx5U3R5bGUpLCAuaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQgb2w6bm90KC5kb250QXBwbHlTdHlsZSkge1xuICBmb250LWZhbWlseTogdmFyKC0tdGV4dEZvbnRGYW1pbHksIHZhcigtLWJhc2VGb250RmFtaWx5LCB2YXIoLS1mb250RmFtaWx5LCBBcmlhbCwgc2Fucy1zZXJpZikpKTtcbiAgZm9udC1zaXplOiB2YXIoLS10ZXh0U2l6ZSwgMXJlbSk7XG4gIGNvbG9yOiB2YXIoLS10ZXh0Q29sb3IsICMwMDApO1xuICBmb250LXdlaWdodDogdmFyKC0tdGV4dEZvbnRXZWlnaHQsIDQwMCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS10ZXh0TGluZUhlaWdodCwgMS4yKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXRleHRMZXR0ZXJTcGFjaW5nLCAwcHgpO1xuICB0ZXh0LWFsaWduOiB2YXIoLS10ZXh0QWxpZ24sIGp1c3RpZnkpO1xufVxuXG4uYXBwbHlTdHlsZXMgb2w6bm90KC5kb250QXBwbHlTdHlsZSkgKyBwLCAudGV4dEltYWdlX190ZXh0X19jb250ZW50IG9sOm5vdCguZG9udEFwcGx5U3R5bGUpICsgcCwgLmhvbWVIZXJvX19jb250ZW50X190ZXh0IG9sOm5vdCguZG9udEFwcGx5U3R5bGUpICsgcCxcbi5hcHBseVN0eWxlcyBvbDpub3QoLmRvbnRBcHBseVN0eWxlKSArIHVsLFxuLnRleHRJbWFnZV9fdGV4dF9fY29udGVudCBvbDpub3QoLmRvbnRBcHBseVN0eWxlKSArIHVsLFxuLmhvbWVIZXJvX19jb250ZW50X190ZXh0IG9sOm5vdCguZG9udEFwcGx5U3R5bGUpICsgdWwsXG4uYXBwbHlTdHlsZXMgb2w6bm90KC5kb250QXBwbHlTdHlsZSkgKyBvbCxcbi50ZXh0SW1hZ2VfX3RleHRfX2NvbnRlbnQgb2w6bm90KC5kb250QXBwbHlTdHlsZSkgKyBvbCxcbi5ob21lSGVyb19fY29udGVudF9fdGV4dCBvbDpub3QoLmRvbnRBcHBseVN0eWxlKSArIG9sIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tcGFyYWdyYXBoR2FwLCAwLjkzNzVyZW0pO1xufVxuXG4uYXBwbHlTdHlsZXMgb2w6bm90KC5kb250QXBwbHlTdHlsZSkgKyBoMSwgLnRleHRJbWFnZV9fdGV4dF9fY29udGVudCBvbDpub3QoLmRvbnRBcHBseVN0eWxlKSArIGgxLCAuaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQgb2w6bm90KC5kb250QXBwbHlTdHlsZSkgKyBoMSxcbi5hcHBseVN0eWxlcyBvbDpub3QoLmRvbnRBcHBseVN0eWxlKSArIGgyLFxuLnRleHRJbWFnZV9fdGV4dF9fY29udGVudCBvbDpub3QoLmRvbnRBcHBseVN0eWxlKSArIGgyLFxuLmhvbWVIZXJvX19jb250ZW50X190ZXh0IG9sOm5vdCguZG9udEFwcGx5U3R5bGUpICsgaDIsXG4uYXBwbHlTdHlsZXMgb2w6bm90KC5kb250QXBwbHlTdHlsZSkgKyBoMyxcbi50ZXh0SW1hZ2VfX3RleHRfX2NvbnRlbnQgb2w6bm90KC5kb250QXBwbHlTdHlsZSkgKyBoMyxcbi5ob21lSGVyb19fY29udGVudF9fdGV4dCBvbDpub3QoLmRvbnRBcHBseVN0eWxlKSArIGgzLFxuLmFwcGx5U3R5bGVzIG9sOm5vdCguZG9udEFwcGx5U3R5bGUpICsgaDQsXG4udGV4dEltYWdlX190ZXh0X19jb250ZW50IG9sOm5vdCguZG9udEFwcGx5U3R5bGUpICsgaDQsXG4uaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQgb2w6bm90KC5kb250QXBwbHlTdHlsZSkgKyBoNCxcbi5hcHBseVN0eWxlcyBvbDpub3QoLmRvbnRBcHBseVN0eWxlKSArIGg1LFxuLnRleHRJbWFnZV9fdGV4dF9fY29udGVudCBvbDpub3QoLmRvbnRBcHBseVN0eWxlKSArIGg1LFxuLmhvbWVIZXJvX19jb250ZW50X190ZXh0IG9sOm5vdCguZG9udEFwcGx5U3R5bGUpICsgaDUsXG4uYXBwbHlTdHlsZXMgb2w6bm90KC5kb250QXBwbHlTdHlsZSkgKyBoNixcbi50ZXh0SW1hZ2VfX3RleHRfX2NvbnRlbnQgb2w6bm90KC5kb250QXBwbHlTdHlsZSkgKyBoNixcbi5ob21lSGVyb19fY29udGVudF9fdGV4dCBvbDpub3QoLmRvbnRBcHBseVN0eWxlKSArIGg2IHtcbiAgbWFyZ2luLXRvcDogdmFyKC0taGVhZGluZ01hcmdpblRvcCwgMi4xODc1cmVtKTtcbn1cblxuLmFwcGx5U3R5bGVzIG9sOm5vdCguZG9udEFwcGx5U3R5bGUpICsgcCA+IGltZywgLnRleHRJbWFnZV9fdGV4dF9fY29udGVudCBvbDpub3QoLmRvbnRBcHBseVN0eWxlKSArIHAgPiBpbWcsIC5ob21lSGVyb19fY29udGVudF9fdGV4dCBvbDpub3QoLmRvbnRBcHBseVN0eWxlKSArIHAgPiBpbWcge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1wYXJhZ3JhcGhHYXAsIDAuOTM3NXJlbSk7XG59XG5cbi5hcHBseVN0eWxlcyBvbDpub3QoLmRvbnRBcHBseVN0eWxlKSBhLCAudGV4dEltYWdlX190ZXh0X19jb250ZW50IG9sOm5vdCguZG9udEFwcGx5U3R5bGUpIGEsIC5ob21lSGVyb19fY29udGVudF9fdGV4dCBvbDpub3QoLmRvbnRBcHBseVN0eWxlKSBhIHtcbiAgZm9udC1zaXplOiB2YXIoLS10ZXh0U2l6ZSwgMXJlbSk7XG59XG5cbi5hcHBseVN0eWxlcyBoMSwgLnRleHRJbWFnZV9fdGV4dF9fY29udGVudCBoMSwgLmhvbWVIZXJvX19jb250ZW50X190ZXh0IGgxLFxuLmFwcGx5U3R5bGVzIGgyLFxuLnRleHRJbWFnZV9fdGV4dF9fY29udGVudCBoMixcbi5ob21lSGVyb19fY29udGVudF9fdGV4dCBoMixcbi5hcHBseVN0eWxlcyBoMyxcbi50ZXh0SW1hZ2VfX3RleHRfX2NvbnRlbnQgaDMsXG4uaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQgaDMsXG4uYXBwbHlTdHlsZXMgaDQsXG4udGV4dEltYWdlX190ZXh0X19jb250ZW50IGg0LFxuLmhvbWVIZXJvX19jb250ZW50X190ZXh0IGg0LFxuLmFwcGx5U3R5bGVzIGg1LFxuLnRleHRJbWFnZV9fdGV4dF9fY29udGVudCBoNSxcbi5ob21lSGVyb19fY29udGVudF9fdGV4dCBoNSxcbi5hcHBseVN0eWxlcyBoNixcbi50ZXh0SW1hZ2VfX3RleHRfX2NvbnRlbnQgaDYsXG4uaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQgaDYge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmFwcGx5U3R5bGVzIGgxICsgaDEsIC50ZXh0SW1hZ2VfX3RleHRfX2NvbnRlbnQgaDEgKyBoMSwgLmhvbWVIZXJvX19jb250ZW50X190ZXh0IGgxICsgaDEsIC5hcHBseVN0eWxlcyBoMiArIGgxLCAudGV4dEltYWdlX190ZXh0X19jb250ZW50IGgyICsgaDEsIC5ob21lSGVyb19fY29udGVudF9fdGV4dCBoMiArIGgxLCAuYXBwbHlTdHlsZXMgaDMgKyBoMSwgLnRleHRJbWFnZV9fdGV4dF9fY29udGVudCBoMyArIGgxLCAuaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQgaDMgKyBoMSwgLmFwcGx5U3R5bGVzIGg0ICsgaDEsIC50ZXh0SW1hZ2VfX3RleHRfX2NvbnRlbnQgaDQgKyBoMSwgLmhvbWVIZXJvX19jb250ZW50X190ZXh0IGg0ICsgaDEsIC5hcHBseVN0eWxlcyBoNSArIGgxLCAudGV4dEltYWdlX190ZXh0X19jb250ZW50IGg1ICsgaDEsIC5ob21lSGVyb19fY29udGVudF9fdGV4dCBoNSArIGgxLCAuYXBwbHlTdHlsZXMgaDYgKyBoMSwgLnRleHRJbWFnZV9fdGV4dF9fY29udGVudCBoNiArIGgxLCAuaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQgaDYgKyBoMSxcbi5hcHBseVN0eWxlcyBoMSArIGgyLFxuLnRleHRJbWFnZV9fdGV4dF9fY29udGVudCBoMSArIGgyLFxuLmhvbWVIZXJvX19jb250ZW50X190ZXh0IGgxICsgaDIsXG4uYXBwbHlTdHlsZXMgaDIgKyBoMixcbi50ZXh0SW1hZ2VfX3RleHRfX2NvbnRlbnQgaDIgKyBoMixcbi5ob21lSGVyb19fY29udGVudF9fdGV4dCBoMiArIGgyLFxuLmFwcGx5U3R5bGVzIGgzICsgaDIsXG4udGV4dEltYWdlX190ZXh0X19jb250ZW50IGgzICsgaDIsXG4uaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQgaDMgKyBoMixcbi5hcHBseVN0eWxlcyBoNCArIGgyLFxuLnRleHRJbWFnZV9fdGV4dF9fY29udGVudCBoNCArIGgyLFxuLmhvbWVIZXJvX19jb250ZW50X190ZXh0IGg0ICsgaDIsXG4uYXBwbHlTdHlsZXMgaDUgKyBoMixcbi50ZXh0SW1hZ2VfX3RleHRfX2NvbnRlbnQgaDUgKyBoMixcbi5ob21lSGVyb19fY29udGVudF9fdGV4dCBoNSArIGgyLFxuLmFwcGx5U3R5bGVzIGg2ICsgaDIsXG4udGV4dEltYWdlX190ZXh0X19jb250ZW50IGg2ICsgaDIsXG4uaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQgaDYgKyBoMixcbi5hcHBseVN0eWxlcyBoMSArIGgzLFxuLnRleHRJbWFnZV9fdGV4dF9fY29udGVudCBoMSArIGgzLFxuLmhvbWVIZXJvX19jb250ZW50X190ZXh0IGgxICsgaDMsXG4uYXBwbHlTdHlsZXMgaDIgKyBoMyxcbi50ZXh0SW1hZ2VfX3RleHRfX2NvbnRlbnQgaDIgKyBoMyxcbi5ob21lSGVyb19fY29udGVudF9fdGV4dCBoMiArIGgzLFxuLmFwcGx5U3R5bGVzIGgzICsgaDMsXG4udGV4dEltYWdlX190ZXh0X19jb250ZW50IGgzICsgaDMsXG4uaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQgaDMgKyBoMyxcbi5hcHBseVN0eWxlcyBoNCArIGgzLFxuLnRleHRJbWFnZV9fdGV4dF9fY29udGVudCBoNCArIGgzLFxuLmhvbWVIZXJvX19jb250ZW50X190ZXh0IGg0ICsgaDMsXG4uYXBwbHlTdHlsZXMgaDUgKyBoMyxcbi50ZXh0SW1hZ2VfX3RleHRfX2NvbnRlbnQgaDUgKyBoMyxcbi5ob21lSGVyb19fY29udGVudF9fdGV4dCBoNSArIGgzLFxuLmFwcGx5U3R5bGVzIGg2ICsgaDMsXG4udGV4dEltYWdlX190ZXh0X19jb250ZW50IGg2ICsgaDMsXG4uaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQgaDYgKyBoMyxcbi5hcHBseVN0eWxlcyBoMSArIGg0LFxuLnRleHRJbWFnZV9fdGV4dF9fY29udGVudCBoMSArIGg0LFxuLmhvbWVIZXJvX19jb250ZW50X190ZXh0IGgxICsgaDQsXG4uYXBwbHlTdHlsZXMgaDIgKyBoNCxcbi50ZXh0SW1hZ2VfX3RleHRfX2NvbnRlbnQgaDIgKyBoNCxcbi5ob21lSGVyb19fY29udGVudF9fdGV4dCBoMiArIGg0LFxuLmFwcGx5U3R5bGVzIGgzICsgaDQsXG4udGV4dEltYWdlX190ZXh0X19jb250ZW50IGgzICsgaDQsXG4uaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQgaDMgKyBoNCxcbi5hcHBseVN0eWxlcyBoNCArIGg0LFxuLnRleHRJbWFnZV9fdGV4dF9fY29udGVudCBoNCArIGg0LFxuLmhvbWVIZXJvX19jb250ZW50X190ZXh0IGg0ICsgaDQsXG4uYXBwbHlTdHlsZXMgaDUgKyBoNCxcbi50ZXh0SW1hZ2VfX3RleHRfX2NvbnRlbnQgaDUgKyBoNCxcbi5ob21lSGVyb19fY29udGVudF9fdGV4dCBoNSArIGg0LFxuLmFwcGx5U3R5bGVzIGg2ICsgaDQsXG4udGV4dEltYWdlX190ZXh0X19jb250ZW50IGg2ICsgaDQsXG4uaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQgaDYgKyBoNCxcbi5hcHBseVN0eWxlcyBoMSArIGg1LFxuLnRleHRJbWFnZV9fdGV4dF9fY29udGVudCBoMSArIGg1LFxuLmhvbWVIZXJvX19jb250ZW50X190ZXh0IGgxICsgaDUsXG4uYXBwbHlTdHlsZXMgaDIgKyBoNSxcbi50ZXh0SW1hZ2VfX3RleHRfX2NvbnRlbnQgaDIgKyBoNSxcbi5ob21lSGVyb19fY29udGVudF9fdGV4dCBoMiArIGg1LFxuLmFwcGx5U3R5bGVzIGgzICsgaDUsXG4udGV4dEltYWdlX190ZXh0X19jb250ZW50IGgzICsgaDUsXG4uaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQgaDMgKyBoNSxcbi5hcHBseVN0eWxlcyBoNCArIGg1LFxuLnRleHRJbWFnZV9fdGV4dF9fY29udGVudCBoNCArIGg1LFxuLmhvbWVIZXJvX19jb250ZW50X190ZXh0IGg0ICsgaDUsXG4uYXBwbHlTdHlsZXMgaDUgKyBoNSxcbi50ZXh0SW1hZ2VfX3RleHRfX2NvbnRlbnQgaDUgKyBoNSxcbi5ob21lSGVyb19fY29udGVudF9fdGV4dCBoNSArIGg1LFxuLmFwcGx5U3R5bGVzIGg2ICsgaDUsXG4udGV4dEltYWdlX190ZXh0X19jb250ZW50IGg2ICsgaDUsXG4uaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQgaDYgKyBoNSxcbi5hcHBseVN0eWxlcyBoMSArIGg2LFxuLnRleHRJbWFnZV9fdGV4dF9fY29udGVudCBoMSArIGg2LFxuLmhvbWVIZXJvX19jb250ZW50X190ZXh0IGgxICsgaDYsXG4uYXBwbHlTdHlsZXMgaDIgKyBoNixcbi50ZXh0SW1hZ2VfX3RleHRfX2NvbnRlbnQgaDIgKyBoNixcbi5ob21lSGVyb19fY29udGVudF9fdGV4dCBoMiArIGg2LFxuLmFwcGx5U3R5bGVzIGgzICsgaDYsXG4udGV4dEltYWdlX190ZXh0X19jb250ZW50IGgzICsgaDYsXG4uaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQgaDMgKyBoNixcbi5hcHBseVN0eWxlcyBoNCArIGg2LFxuLnRleHRJbWFnZV9fdGV4dF9fY29udGVudCBoNCArIGg2LFxuLmhvbWVIZXJvX19jb250ZW50X190ZXh0IGg0ICsgaDYsXG4uYXBwbHlTdHlsZXMgaDUgKyBoNixcbi50ZXh0SW1hZ2VfX3RleHRfX2NvbnRlbnQgaDUgKyBoNixcbi5ob21lSGVyb19fY29udGVudF9fdGV4dCBoNSArIGg2LFxuLmFwcGx5U3R5bGVzIGg2ICsgaDYsXG4udGV4dEltYWdlX190ZXh0X19jb250ZW50IGg2ICsgaDYsXG4uaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQgaDYgKyBoNiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG51bC5kb250QXBwbHlTdHlsZSA+IGxpICsgbGksXG5vbC5kb250QXBwbHlTdHlsZSA+IGxpICsgbGkge1xuICBtYXJnaW4tdG9wOiB2YXIoLS10ZXh0LWJhc2UtbWFyZ2luKTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICBodG1sIHtcbiAgICBmb250LXNpemU6IDExNSU7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgOnJvb3Qge1xuICAgIC0tc2VjdGlvbk1hcmdpblRvcDogNC42ODc1cmVtO1xuICB9XG59XG5cbjpyb290IHtcbiAgLS1oZWFkZXJCb3R0b21BY3Rpb25zR2FwOiAxLjI1cmVtO1xuICAtLWhlYWRlck1lbnVBY2NlbnRDb2xvcjogIzAwMDtcbiAgLS1oZWFkZXJNZW51SXRlbUNvbG9yOiB2YXIoLS1kdXN0eUdyYXlDb2xvcik7XG4gIC0taGVhZGVyTWVudUl0ZW1Gb250U2l6ZTogMC45Mzc1cmVtO1xuICAtLWhlYWRlck1lbnVJdGVtR2FwOiAwLjYyNXJlbTtcbiAgLS1oZWFkZXJNZW51SXRlbUl0ZW1Gb250V2VpZ2h0OiB2YXIoLS1mb250V2VpZ2h0TWVkaXVtKTtcbiAgLS1oZWFkZXJNZW51X19zaW1wbGVNZW51Qm9yZGVyQ29sb3I6IHZhcigtLXdoaXRlUm9ja0NvbG9yKTtcbiAgLS1oZWFkZXJNZW51X19zaW1wbGVNZW51Qm9yZGVyV2lkdGg6IDAuMzc1cmVtO1xuICAtLWhlYWRlck1lbnVfX3NpbXBsZU1lbnVJdGVtQmFja2dyb3VuZENvbG9yOiB2YXIoLS1jYXJhcnJhQ29sb3IpO1xuICAtLWhlYWRlck1lbnVfX3NpbXBsZU1lbnVJdGVtUGFkZGluZ0JvdHRvbTogMC42MjVyZW07XG4gIC0taGVhZGVyTWVudV9fc2ltcGxlTWVudUl0ZW1QYWRkaW5nTGVmdDogMC45Mzc1cmVtO1xuICAtLWhlYWRlck1lbnVfX3NpbXBsZU1lbnVJdGVtUGFkZGluZ1JpZ2h0OiAwLjkzNzVyZW07XG4gIC0taGVhZGVyTWVudV9fc2ltcGxlTWVudUl0ZW1QYWRkaW5nVG9wOiAwLjYyNXJlbTtcbiAgLS1oZWFkZXJNZW51X19zaW1wbGVNZW51UGFkZGluZ0JvdHRvbTogMHB4O1xuICAtLWhlYWRlck1lbnVfX3NpbXBsZU1lbnVQYWRkaW5nTGVmdDogMHB4O1xuICAtLWhlYWRlck1lbnVfX3NpbXBsZU1lbnVQYWRkaW5nUmlnaHQ6IDBweDtcbiAgLS1oZWFkZXJNZW51X19zaW1wbGVNZW51UGFkZGluZ1RvcDogMHB4O1xuICAtLWhlYWRlclRvcEFkZHJlc3NUZXh0VHJhbnNmb3JtOiBub25lO1xuICAtLWhlYWRlclRvcEJhY2tncm91bmRDb2xvcjogdmFyKC0tY29yZHVyb3lDb2xvcik7XG4gIC0taGVhZGVyVG9wQ29sb3I6ICNGRkY7XG4gIC0taGVhZGVyVG9wQ29udGFjdEZvbnRXZWlnaHQ6IHZhcigtLWZvbnRXZWlnaHRCb2xkKTtcbiAgLS1oZWFkZXJUb3BDb250YWN0TWFyZ2luTGVmdDogMi4xODc1cmVtO1xuICAtLWhlYWRlclRvcEZvbnRTaXplOiAwLjc1cmVtO1xuICAtLWhlYWRlclRvcEZvbnRXZWlnaHQ6IHZhcigtLWZvbnRXZWlnaHRSZWd1bGFyKTtcbiAgLS1oZWFkZXJUb3BIZWlnaHQ6IDIuNjg3NXJlbTtcbiAgLS1oZWFkZXJUb3BMZXR0ZXJTcGFjaW5nOiAwLjA2ZW07XG4gIC0taGVhZGVyVG9wUGhvbmVGb250U2l6ZTogMC44NzVyZW07XG4gIC0taGVhZGVyVG9wUGhvbmVGb250V2VpZ2h0OiB2YXIoLS1mb250V2VpZ2h0Qm9sZCk7XG4gIC0taGVhZGVyVG9wUGhvbmVMZXR0ZXJTcGFjaW5nOiAwLjA2ZW07XG4gIC0taGVhZGVyVG9wU29jaWFsc1RvcDogMnB4O1xuICAtLWhlYWRlclRvcFRleHRUcmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgLS1oZWFkZXJaaW5kZXg6IDEwMDc7XG4gIC0tcmVzcG9uc2l2ZU1lbnVBY2NlbnRDb2xvcjogIzAwMDtcbiAgLS1yZXNwb25zaXZlTWVudUJhY2tncm91bmRDb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjk1KTtcbiAgLS1yZXNwb25zaXZlTWVudUJvcmRlckxlZnRDb2xvcjogdmFyKC0tY29yZHVyb3lDb2xvcik7XG4gIC0tcmVzcG9uc2l2ZU1lbnVCb3JkZXJMZWZ0V2lkdGg6IDAuMzc1cmVtO1xuICAtLXJlc3BvbnNpdmVNZW51Qm94U2hhZG93OiAwIDRweCA0cHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgLS1yZXNwb25zaXZlTWVudUNvbG9yOiB2YXIoLS1kdXN0eUdyYXlDb2xvcik7XG4gIC0tcmVzcG9uc2l2ZU1lbnVEcm9wZG93blRvZ2dsZUNvbG9yOiB2YXIoLS1kdXN0eUdyYXlDb2xvcik7XG4gIC0tcmVzcG9uc2l2ZU1lbnVEcm9wZG93blRvZ2dsZU1pbldpZHRoOiAxNXB4O1xuICAtLXJlc3BvbnNpdmVNZW51Rmlyc3RMZXZlbEdhcDogMC42MjVyZW07XG4gIC0tcmVzcG9uc2l2ZU1lbnVGb250U2l6ZTogMS4wNjI1cmVtO1xuICAtLXJlc3BvbnNpdmVNZW51Rm9udFdlaWdodDogdmFyKC0tZm9udFdlaWdodE1lZGl1bSk7XG4gIC0tcmVzcG9uc2l2ZU1lbnVMZXR0ZXJTcGFjaW5nOiAwLjAzZW07XG4gIC0tcmVzcG9uc2l2ZU1lbnVNYXhIZWlnaHQ6IDEwdmg7XG4gIC0tcmVzcG9uc2l2ZU1lbnVPdmVybGF5QmFja2dyb3VuZENvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gIC0tcmVzcG9uc2l2ZU1lbnVPdmVybGF5WmluZGV4OiAxMDA1O1xuICAtLXJlc3BvbnNpdmVNZW51UGFkZGluZ0JvdHRvbTogMS4yNXJlbTtcbiAgLS1yZXNwb25zaXZlTWVudVBhZGRpbmdUb3A6IDEuMjVyZW07XG4gIC0tcmVzcG9uc2l2ZU1lbnVTdWJNZW51R2FwQmV0d2Vlbkl0ZW1zOiAwLjkzNzVyZW07XG4gIC0tcmVzcG9uc2l2ZU1lbnVTdWJNZW51R2FwQmV0d2Vlbkl0ZW1zSW5uZXI6IDAuOTM3NXJlbTtcbiAgLS1yZXNwb25zaXZlTWVudVN1Yk1lbnVQYWRkaW5nTGVmdDogMS41NjI1cmVtO1xuICAtLXJlc3BvbnNpdmVNZW51U3ViTWVudVRpdGxlRHJvcGRvd25NZW51TWFyZ2luVG9wOiAwLjkzNzVyZW07XG4gIC0tcmVzcG9uc2l2ZU1lbnVaaW5kZXg6IDEwMDY7XG4gIC0tc2VhcmNoQmFyQmFja2dyb3VuZENvbG9yOiB2YXIoLS1jb3JkdXJveUNvbG9yKTtcbiAgLS1zZWFyY2hCYXJPdmVybGF5QmFja2dyb3VuZENvbG9yOiByZ2JhKDg2LCA5OCwgOTUsIDAuOCk7XG4gIC0tc2VhcmNoQmFyT3ZlcmxheVppbmRleDogMTAwMztcbiAgLS1zZWFyY2hCYXJQYWRkaW5nQm90dG9tOiAxLjg3NXJlbTtcbiAgLS1zZWFyY2hCYXJQYWRkaW5nVG9wOiAxLjU2MjVyZW07XG4gIC0tc2VhcmNoQmFyWmluZGV4OiAxMDA0O1xuICAtLXNlYXJjaEZvcm1JbnB1dEJvcmRlckhlaWdodDogMnB4O1xuICAtLXNlYXJjaEZvcm1JbnB1dENvbG9yOiAjRkZGO1xuICAtLXNlYXJjaEZvcm1JbnB1dE1hcmdpbkxlZnQ6IDAuNjI1cmVtO1xuICAtLXNlYXJjaEZvcm1JbnB1dE1hcmdpblJpZ2h0OiAwLjYyNXJlbTtcbiAgLS1zZWFyY2hGb3JtSW5wdXRQYWRkaW5nQm90dG9tOiAwLjEyNXJlbTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjUwcHgpIHtcbiAgOnJvb3Qge1xuICAgIC0taGVhZGVyQm90dG9tQWN0aW9uc0dhcDogMi4xODc1cmVtO1xuICAgIC0taGVhZGVyTWVudUl0ZW1HYXA6IDIuMTg3NXJlbTtcbiAgfVxufVxuXG46cm9vdCB7XG4gIC0tY2FsbFRvQWN0aW9uc0JhY2tncm91bmRDb2xvcjogdmFyKC0tY29yZHVyb3lDb2xvcik7XG4gIC0tY2FsbFRvQWN0aW9uc0hlaWdodDogMi44MTI1cmVtO1xuICAtLWNhbGxUb0FjdGlvbnNaaW5kZXg6IDEwMDI7XG59XG5cbjpyb290IHtcbiAgLS1tYXRlcmlhbElucHV0Qm9yZGVyQWN0aXZlQ29sb3I6IHZhcigtLW1pbmVTaGFmdDJDb2xvcik7XG4gIC0tbWF0ZXJpYWxJbnB1dEJvcmRlckFjdGl2ZUhlaWdodDogMnB4O1xuICAtLW1hdGVyaWFsSW5wdXRCb3JkZXJDb2xvcjogdmFyKC0tbWluZVNoYWZ0MkNvbG9yKTtcbiAgLS1tYXRlcmlhbElucHV0Q29sb3I6IHZhcigtLW1pbmVTaGFmdDJDb2xvcik7XG4gIC0tbWF0ZXJpYWxJbnB1dEZvbnRTaXplOiAwLjkzNzVyZW07XG4gIC0tbWF0ZXJpYWxJbnB1dEZvbnRXZWlnaHQ6IHZhcigtLWZvbnRXZWlnaHRMaWdodCk7XG4gIC0tbWF0ZXJpYWxJbnB1dExhYmVsQWN0aXZlQ29sb3I6ICM3Nzc7XG4gIC0tbWF0ZXJpYWxJbnB1dExhYmVsQWN0aXZlU2NhbGU6IC44O1xuICAtLW1hdGVyaWFsSW5wdXRMYWJlbENvbG9yOiB2YXIoLS1taW5lU2hhZnQyQ29sb3IpO1xuICAtLW1hdGVyaWFsSW5wdXRMYWJlbEZvbnRTaXplOiAwLjkzNzVyZW07XG4gIC0tbWF0ZXJpYWxJbnB1dExhYmVsRm9udFdlaWdodDogdmFyKC0tZm9udFdlaWdodExpZ2h0KTtcbiAgLS1tYXRlcmlhbElucHV0TGFiZWxMZXR0ZXJTcGFjaW5nOiAwLjAzZW07XG4gIC0tbWF0ZXJpYWxJbnB1dExldHRlclNwYWNpbmc6IDAuMDNlbTtcbn1cblxuOnJvb3Qge1xuICAtLWNvbW1lbnRGb3JtVGl0bGU6IG1lbm8tYmFubmVyLCBnZW9yZ2lhLCBzZXJpZjtcbiAgLS1jb21tZW50Rm9ybVRpdGxlQm9yZGVyQ29sb3I6IHZhcigtLW1pbmVTaGFmdDJDb2xvcik7XG4gIC0tY29tbWVudEZvcm1UaXRsZUNvbG9yOiB2YXIoLS1taW5lU2hhZnQyQ29sb3IpO1xuICAtLWNvbW1lbnRzQmxvY2tUaXRsZUZvbnRGYW1pbHk6IG1lbm8tYmFubmVyLCBnZW9yZ2lhLCBzZXJpZjtcbn1cblxuOnJvb3Qge1xuICAtLWZvb3RlckFkZHJlc3NOYW1lQ29sb3I6ICMwMDA7XG4gIC0tZm9vdGVyQWRkcmVzc05hbWVGb250U2l6ZTogMC44NzVyZW07XG4gIC0tZm9vdGVyQWRkcmVzc05hbWVGb250V2VpZ2h0OiB2YXIoLS1mb250V2VpZ2h0TWVkaXVtKTtcbiAgLS1mb290ZXJBZGRyZXNzTmFtZUxpbmVIZWlnaHQ6IDEuNjc7XG4gIC0tZm9vdGVyQWRkcmVzc1Bob25lQ29sb3I6ICMwMDA7XG4gIC0tZm9vdGVyQWRkcmVzc1Bob25lRm9udFNpemU6IDAuODc1cmVtO1xuICAtLWZvb3RlckFkZHJlc3NQaG9uZUZvbnRXZWlnaHQ6IHZhcigtLWZvbnRXZWlnaHRCb2xkKTtcbiAgLS1mb290ZXJBZGRyZXNzUGhvbmVMaW5lSGVpZ2h0OiAxLjQzO1xuICAtLWZvb3RlckFkZHJlc3Nlc0JvcmRlckNvbG9yOiAjRTVFNUU1O1xuICAtLWZvb3RlckFkZHJlc3Nlc0dhcDogMC42MjVyZW07XG4gIC0tZm9vdGVyQWRkcmVzc2VzUGxhY2VzR2FwOiAwLjEyNXJlbTtcbiAgLS1mb290ZXJCb3R0b21NZW51Q29sb3I6IHZhcigtLW1vcnRhckNvbG9yKTtcbiAgLS1mb290ZXJCb3R0b21NZW51Rm9udFNpemU6IDAuODEyNXJlbTtcbiAgLS1mb290ZXJCb3R0b21NZW51Rm9udFdlaWdodDogdmFyKC0tZm9udFdlaWdodE1lZGl1bSk7XG4gIC0tZm9vdGVyQm90dG9tTWVudUxldHRlclNwYWNpbmc6IDAuMDVlbTtcbiAgLS1mb290ZXJNZW51QmFja2dyb3VuZENvbG9yOiB2YXIoLS1kdW5lQ29sb3IpO1xuICAtLWZvb3Rlck1lbnVDb2xvcjogI0ZGRjtcbiAgLS1mb290ZXJNZW51Rm9udFNpemU6IDAuNzVyZW07XG4gIC0tZm9vdGVyTWVudUZvbnRXZWlnaHQ6IHZhcigtLWZvbnRXZWlnaHRNZWRpdW0pO1xuICAtLWZvb3Rlck1lbnVMZXR0ZXJTcGFjaW5nOiAwLjFlbTtcbiAgLS1mb290ZXJNZW51TGluZUhlaWdodDogMi4wODtcbiAgLS1mb290ZXJNZW51VGV4dFRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIDpyb290IHtcbiAgICAtLWZvb3Rlck1lbnVGb250U2l6ZTogMC44NzVyZW07XG4gICAgLS1mb290ZXJNZW51TGluZUhlaWdodDogMi4xNDtcbiAgICAtLWZvb3Rlck1lbnVUZXh0VHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIDpyb290IHtcbiAgICAtLWZvb3RlckFkZHJlc3NOYW1lQ29sb3I6IHZhcigtLW1pbmVTaGFmdDJDb2xvcik7XG4gICAgLS1mb290ZXJBZGRyZXNzTmFtZUZvbnRXZWlnaHQ6IHZhcigtLWZvbnRXZWlnaHRSZWd1bGFyKTtcbiAgICAtLWZvb3RlckFkZHJlc3NOYW1lTGV0dGVyU3BhY2luZzogMHB4O1xuICAgIC0tZm9vdGVyQWRkcmVzc05hbWVMaW5lSGVpZ2h0OiAxLjI1O1xuICAgIC0tZm9vdGVyQWRkcmVzc05hbWVUZXh0VHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgLS1mb290ZXJBZGRyZXNzUGhvbmVDb2xvcjogdmFyKC0tbWluZVNoYWZ0MkNvbG9yKTtcbiAgICAtLWZvb3RlckFkZHJlc3NQaG9uZUxldHRlclNwYWNpbmc6IDA7XG4gICAgLS1mb290ZXJBZGRyZXNzUGhvbmVMaW5lSGVpZ2h0OiAxLjI4O1xuICB9XG59XG5cbjpyb290IHtcbiAgLS1kb2N0b2xpYkJ1dHRvbkJhY2tncm91bmRDb2xvcjogdmFyKC0td2hpdGVSb2NrQ29sb3IpO1xuICAtLWRvY3RvbGliQnV0dG9uRm9udFNpemU6IDAuNzVyZW07XG4gIC0tZG9jdG9saWJCdXR0b25Gb250V2VpZ2h0OiB2YXIoLS1mb250V2VpZ2h0Qm9sZCk7XG4gIC0tZG9jdG9saWJCdXR0b25MaW5lSGVpZ2h0OiAxLjI1O1xuICAtLWRvY3RvbGliQnV0dG9uTG9nb01hcmdpbkxlZnQ6IDAuNjI1cmVtO1xuICAtLWRvY3RvbGliQnV0dG9uUGFkZGluZ0JvdHRvbTogMC44MTI1cmVtO1xuICAtLWRvY3RvbGliQnV0dG9uUGFkZGluZ0xlZnQ6IDEuNXJlbTtcbiAgLS1kb2N0b2xpYkJ1dHRvblBhZGRpbmdSaWdodDogMS41cmVtO1xuICAtLWRvY3RvbGliQnV0dG9uUGFkZGluZ1RvcDogMC44MTI1cmVtO1xuICAtLWRvY3RvbGliQnV0dG9uVGV4dENvbG9yOiAjMDAwO1xuICAtLWRvY3RvbGliQnV0dG9uVGV4dFRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG46cm9vdCB7XG4gIC0tYmFja1RvVG9wQWN0aXZlQmFja2dyb3VuZENvbG9yOiB2YXIoLS13aGl0ZVJvY2tDb2xvcik7XG4gIC0tYmFja1RvVG9wQmFja2dyb3VuZENvbG9yOiB2YXIoLS1jb3JkdXJveUNvbG9yKTtcbiAgLS1iYWNrVG9Ub3BCb3R0b206IGNhbGMoMzVweCArIHZhcigtLWNhbGxUb0FjdGlvbnNIZWlnaHQsIDBweCkpO1xuICAtLWJhY2tUb1RvcEV4dHJhT2Zmc2V0OiAxNXB4O1xuICAtLWJhY2tUb1RvcFN2Z1RyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gIC0tYmFja1RvVG9wVHJhbnNmb3JtRXh0cmE6IHJvdGF0ZSg0NWRlZyk7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTEwMHB4KSB7XG4gIDpyb290IHtcbiAgICAtLWJhY2tUb1RvcEJvdHRvbTogMzVweDtcbiAgfVxufVxuXG46cm9vdCB7XG4gIC0tY29va2llQ29sb3I6IHZhcigtLWNvcmR1cm95Q29sb3IpO1xufVxuXG46cm9vdCB7XG4gIC0tcG9zdEFjY2VudENvbG9yOiB2YXIoLS1jb3JkdXJveUNvbG9yKTtcbiAgLS1wb3N0Q2F0ZWdvcnlDb2xvcjogdmFyKC0tY29yZHVyb3lDb2xvcik7XG4gIC0tcG9zdENhdGVnb3J5Rm9udFNpemU6IDAuODEyNXJlbTtcbiAgLS1wb3N0Q2F0ZWdvcnlGb250V2VpZ2h0OiB2YXIoLS1mb250V2VpZ2h0Qm9sZCk7XG4gIC0tcG9zdENvbnRlbnRQYWRkaW5nQm90dG9tOiAwLjkzNzVyZW07XG4gIC0tcG9zdENvbnRlbnRQYWRkaW5nTGVmdDogMS4yNXJlbTtcbiAgLS1wb3N0Q29udGVudFBhZGRpbmdSaWdodDogMS4yNXJlbTtcbiAgLS1wb3N0Q29udGVudFBhZGRpbmdUb3A6IDEuMjVyZW07XG4gIC0tcG9zdERhdGVDb2xvcjogdmFyKC0tc2lsdmVyQ2hhbGljZTJDb2xvcik7XG4gIC0tcG9zdERhdGVGb250U2l6ZTogMC44MTI1cmVtO1xuICAtLXBvc3RFeGNlcnB0Q29sb3I6IHZhcigtLXR1bmRvcmFDb2xvcik7XG4gIC0tcG9zdEV4Y2VycHRGb250U2l6ZTogMC44NzVyZW07XG4gIC0tcG9zdEV4Y2VycHRGb250V2VpZ2h0OiB2YXIoLS1mb250V2VpZ2h0TGlnaHQpO1xuICAtLXBvc3RFeGNlcnB0TGluZUhlaWdodDogMS41O1xuICAtLXBvc3RSZWFkTW9yZUFycm93Q29sb3I6IHZhcigtLWNvcmR1cm95Q29sb3IpO1xuICAtLXBvc3RSZWFkTW9yZU1hcmdpblRvcDogMS41NjI1cmVtO1xuICAtLXBvc3RSZWFkTW9yZVRleHRDb2xvcjogdmFyKC0tY29yZHVyb3lDb2xvcik7XG4gIC0tcG9zdFJlYWRNb3JlVGV4dEZvbnRGYW1pbHk6IE11bGlzaCwgYXJpYWwsIGhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgLS1wb3N0UmVhZE1vcmVUZXh0Rm9udFNpemU6IDAuOTM3NXJlbTtcbiAgLS1wb3N0UmVhZE1vcmVUZXh0TWFyZ2luTGVmdDogMS4yNXJlbTtcbiAgLS1wb3N0VGl0bGVDb2xvcjogdmFyKC0tY29kR3JheUNvbG9yKTtcbiAgLS1wb3N0VGl0bGVGb250RmFtaWx5OiBtZW5vLWJhbm5lciwgZ2VvcmdpYSwgc2VyaWY7XG4gIC0tcG9zdFRpdGxlTWFyZ2luQm90dG9tOiAwLjU0MTY3ZW07XG4gIC0tcG9zdFRpdGxlTWFyZ2luVG9wOiAwLjYyNWVtO1xufVxuXG46cm9vdCB7XG4gIC0tYXJjaGl2ZVBhZ2VIZWFkZXJEZXNjcmlwdGlvbkNvbG9yOiB2YXIoLS10dW5kb3JhQ29sb3IpO1xuICAtLWFyY2hpdmVQYWdlSGVhZGVyRGVzY3JpcHRpb25Gb250U2l6ZTogMC44NzVyZW07XG4gIC0tYXJjaGl2ZVBhZ2VIZWFkZXJEZXNjcmlwdGlvbkxpbmVIZWlnaHQ6IDEuNjQ7XG4gIC0tYXJjaGl2ZVBhZ2VIZWFkZXJUaXRsZUZvbnRGYW1pbHk6IG1lbm8tYmFubmVyLCBnZW9yZ2lhLCBzZXJpZjtcbiAgLS1hcmNoaXZlUGFnZVBvc3RzQ29sdW1uR2FwOiAyLjE4NzVyZW07XG4gIC0tYXJjaGl2ZVBhZ2VQb3N0c01pbldpZHRoOiAxOC43NXJlbTtcbiAgLS1hcmNoaXZlUGFnZVBvc3RzUm93R2FwOiAzLjEyNXJlbTtcbiAgLS1hcmNoaXZlUGFnZVNpZGViYXJCb3JkZXJDb2xvcjogdmFyKC0tY29kR3JheTNDb2xvcik7XG4gIC0tYXJjaGl2ZVBhZ2VTaWRlYmFyQ2F0ZWdvcnlBY3RpdmVGb250V2VpZ2h0OiB2YXIoLS1mb250V2VpZ2h0Qm9sZCk7XG4gIC0tYXJjaGl2ZVBhZ2VTaWRlYmFyQ2F0ZWdvcnlDb2xvcjogdmFyKC0tZHVuZUNvbG9yKTtcbiAgLS1hcmNoaXZlUGFnZVNpZGViYXJDYXRlZ29yeUZvbnRTaXplOiAwLjg3NXJlbTtcbiAgLS1hcmNoaXZlUGFnZVNpZGViYXJDYXRlZ29yeUZvbnRXZWlnaHQ6IHZhcigtLWZvbnRXZWlnaHRNZWRpdW0pO1xuICAtLWFyY2hpdmVQYWdlU2lkZWJhckNhdGVnb3J5TGV0dGVyU3BhY2luZzogMC4xZW07XG4gIC0tYXJjaGl2ZVBhZ2VTaWRlYmFyVGl0bGVDb2xvcjogdmFyKC0tZHVuZUNvbG9yKTtcbiAgLS1hcmNoaXZlUGFnZVNpZGViYXJUaXRsZUZvbnRXZWlnaHQ6IHZhcigtLWZvbnRXZWlnaHRCb2xkKTtcbiAgLS1hcmNoaXZlUGFnZVNpZGViYXJUaXRsZUxldHRlclNwYWNpbmc6IDAuMWVtO1xuICAtLWFyY2hpdmVQYWdlU2lkZWJhclRpdGxlVGV4dFRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICA6cm9vdCB7XG4gICAgLS1hcmNoaXZlUGFnZVBvc3RzQ29sdW1uR2FwOiAyLjVyZW07XG4gICAgLS1hcmNoaXZlUGFnZVBvc3RzUm93R2FwOiA0LjY4NzVyZW07XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNTAwcHgpIHtcbiAgOnJvb3Qge1xuICAgIC0tYXJjaGl2ZVBhZ2VQb3N0c0NvbHVtbkdhcDogMy4xMjVyZW07XG4gICAgLS1hcmNoaXZlUGFnZVBvc3RzUm93R2FwOiA2LjI1cmVtO1xuICB9XG59XG5cbjpyb290IHtcbiAgLS1wYWdpbmF0aW9uQWNjZW50Q29sb3I6IHZhcigtLXdoaXRlUm9ja0NvbG9yKTtcbiAgLS1wYWdpbmF0aW9uQm9yZGVyQ29sb3I6IHZhcigtLXdoaXRlUm9ja0NvbG9yKTtcbiAgLS1wYWdpbmF0aW9uQ3VycmVudFBhZ2VGb250U2l6ZTogMS4yNXJlbTtcbiAgLS1wYWdpbmF0aW9uQ3VycmVudFBhZ2VGb250V2VpZ2h0OiB2YXIoLS1mb250V2VpZ2h0Qm9sZCk7XG4gIC0tcGFnaW5hdGlvblBhZ2VDb2xvcjogdmFyKC0tdHVuZG9yYUNvbG9yKTtcbiAgLS1wYWdpbmF0aW9uUGFnZUZvbnRTaXplOiAwLjgxMjVyZW07XG4gIC0tcGFnaW5hdGlvblBhZ2VMZXR0ZXJTcGFjaW5nOiAwLjA3ZW07XG4gIC0tcGFnaW5hdGlvblBhZ2VzR2FwOiAwLjVyZW07XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgOnJvb3Qge1xuICAgIC0tcGFnaW5hdGlvblBhZ2VzR2FwOiAwLjkzNzVyZW07XG4gIH1cbn1cblxuOnJvb3Qge1xuICAtLXRleHRDb2xvcjogdmFyKC0tdHVuZG9yYUNvbG9yKTtcbiAgLS10ZXh0Rm9udFdlaWdodDogdmFyKC0tZm9udFdlaWdodExpZ2h0KTtcbiAgLS10ZXh0TGluZUhlaWdodDogMS44NjtcbiAgLS10ZXh0U2l6ZTogMC44NzVyZW07XG59XG5cbi5tb2RhbC1jb29raWUge1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IHZhcigtLXpJbmRleENvb2tpZSwgOTk5OSk7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xufVxuXG4uY29udGFpbmVyLWNvb2tpZXMtcG9wdXAge1xuICB3aWR0aDogNzUlO1xuICBtYXgtd2lkdGg6IDQyMHB4O1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogNTAlO1xuICByaWdodDogYXV0bztcbiAgYm90dG9tOiBhdXRvO1xuICBsZWZ0OiA1MCU7XG4gIHBhZGRpbmc6IDMwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gIGJveC1zaGFkb3c6IDAgMCAzcHggI0NDQztcbiAgYm9yZGVyLXRvcDogNHB4IHNvbGlkICMwMDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuXG4ubW9kYWwtb3ZlcmxheSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogdmFyKC0tekluZGV4Q29va2llLCA5OTk5KTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG59XG5cbiNjb29raWUtbm90aWNlIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDMwcHgpO1xuICBtYXgtd2lkdGg6IHZhcigtLWNvb2tpZU5vdGljZU1heFdpZHRoLCAzMy4xMjVyZW0pO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IHZhcigtekluZGV4Q29va2llTm90aWNlLCA5OTkpO1xuICBib3R0b206IHZhcigtLWNvb2tpZU5vdGljZUJvdHRvbSwgMTVweCk7XG4gIGxlZnQ6IHZhcigtLWNvb2tpZU5vdGljZUxlZnQsIDE1cHgpO1xuICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogdmFyKC0tY29va2llTm90aWNlQm9yZGVyV2lkdGgsIDRweCkgc29saWQgdmFyKC0tY29va2llQ29sb3IsICNGMDApO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nLXRvcDogdmFyKC0tY29va2llTm90aWNlUGFkZGluZ1RvcCwgMC45Mzc1cmVtKTtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLWNvb2tpZU5vdGljZVBhZGRpbmdCb3R0b20sIDAuOTM3NXJlbSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvb2tpZU5vdGljZUJhY2tncm91bmRDb2xvciwgI0ZGRik7XG59XG5cbiNjb29raWUtbm90aWNlIC5jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW46IGF1dG87XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1jb29raWVDb250YWluZXJQYWRkaW5nUmlnaHQsIDAuOTM3NXJlbSk7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tY29va2llQ29udGFpbmVyUGFkZGluZ0xlZnQsIDAuOTM3NXJlbSk7XG59XG5cbi5jb250YWluZXItY29va2llcy1wb3B1cCBwIHtcbiAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG5cbiNjb29raWUtbm90aWNlIHAge1xuICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4uY29va2llLW5vdGljZS1oMiB7XG4gIGZvbnQtc2l6ZTogMTNweCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICBsZXR0ZXItc3BhY2luZzogMXB4ICFpbXBvcnRhbnQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHBhZGRpbmctYm90dG9tOiA3cHggIWltcG9ydGFudDtcbn1cblxuLmNvb2tpZS1ub3RpY2UtZGl2aWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMjlweDtcbiAgaGVpZ2h0OiAycHg7XG4gIG1hcmdpbi10b3A6IDVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbn1cblxuLmNvb2tpZS1ub3RpY2UtcGFyYWdyYXBoIHtcbiAgZm9udC1zaXplOiAxM3B4ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctYm90dG9tOiAxMnB4ICFpbXBvcnRhbnQ7XG59XG5cbi5jb29raWUtbm90aWNlLWNsb3NlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTA7XG4gIHRvcDogMTBweDtcbiAgcmlnaHQ6IDEwcHg7XG59XG5cbi5jb29raWUtbm90aWNlLWNsb3NlOjpiZWZvcmUsIC5jb29raWUtbm90aWNlLWNsb3NlOjphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMnB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgbWFyZ2luOiBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb29raWVDb2xvciwgI0YwMCk7XG59XG5cbi5jb29raWUtbm90aWNlLWNsb3NlOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG5cbi5jb29raWUtbm90aWNlLWNsb3NlOjphZnRlciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG59XG5cbi5jb29raWUtbm90aWNlLWNsb3NlIGkge1xuICBmb250LXNpemU6IDE4cHg7XG4gIGNvbG9yOiB2YXIoLS1jb29raWVDb2xvciwgI0YwMCk7XG59XG5cbi5jb29raWUtbm90aWNlLWgyLXJlZ3VsYXIge1xuICBmb250LXNpemU6IDEycHggIWltcG9ydGFudDtcbiAgY29sb3I6ICMwMDAgIWltcG9ydGFudDtcbiAgZm9udC13ZWlnaHQ6IDMwMCAhaW1wb3J0YW50O1xuICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBtYXJnaW46IDA7XG59XG5cbi5jb29raWUtbm90aWNlLWgyLXJlZ3VsYXIgYSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxM3B4ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiB2YXIoLS1jb29raWVDb2xvciwgI0YwMCkgIWltcG9ydGFudDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6IDEzcHg7XG4gIGxldHRlci1zcGFjaW5nOiAwLjVweCAhaW1wb3J0YW50O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1jb29raWVDb2xvciwgI0YwMCkgIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBwYWRkaW5nOiA4cHggMTVweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uY29va2llLW5vdGljZS1oMi1yZWd1bGFyIGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLm1vZGFsLWNvb2tpZS1wYXJhZ3JhcGgge1xuICBmb250LXNpemU6IDEycHg7XG4gIGNvbG9yOiAjMDAwO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLm1vZGFsLWNvb2tpZS1wYXJhZ3JhcGgtYm9sZCB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgY29sb3I6ICMwMDA7XG4gIGZvbnQtd2VpZ2h0OiAzMDAgIWltcG9ydGFudDtcbn1cblxuLm1vZGFsLWNvb2tpZS1wYXJhZ3JhcGgtbGFiZWwge1xuICBmb250LXNpemU6IDEzcHg7XG4gIGNvbG9yOiB2YXIoLS1jb29raWVDb2xvciwgI0YwMCk7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4ubW9kYWwtY29va2llLWJ1dHRvbi1kaXYge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgbWFyZ2luLXRvcDogMjBweDtcbn1cblxuLm1vZGFsLWNvb2tpZS1idXR0b24ge1xuICBmb250LXNpemU6IDEycHg7XG4gIGNvbG9yOiAjRkZGICFpbXBvcnRhbnQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvb2tpZUNvbG9yLCAjRjAwKSAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvb2tpZUNvbG9yLCAjRjAwKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5tb2RhbC1jb29raWUtYnV0dG9uOmhvdmVyIHtcbiAgY29sb3I6IHZhcigtLWNvb2tpZUNvbG9yLCAjRjAwKSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xufVxuXG4uY29va2llcy1wb3B1cC0tcmFkaW9ncm91cCB7XG4gIHBhZGRpbmc6IDE2cHggMCAyNXB4O1xufVxuXG4uY29va2llcy1wb3B1cC0tY29udGVudCBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgbGluZS1oZWlnaHQ6IDIycHg7XG4gIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgcGFkZGluZy1sZWZ0OiAyMnB4O1xufVxuXG4uY29va2llcy1wb3B1cC0tY29udGVudCBsYWJlbCBzcGFuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTJweDtcbiAgaGVpZ2h0OiAxMnB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogNHB4O1xuICBsZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNCQkJEQkU7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogNTAlO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xufVxuXG4uY29va2llcy1wb3B1cC0tY29udGVudCBpbnB1dFt0eXBlPXJhZGlvXTpjaGVja2VkICsgbGFiZWwgc3Bhbjo6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIHdpZHRoOiA4cHg7XG4gIGhlaWdodDogOHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgbWFyZ2luOiBhdXRvO1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDUwJTtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29va2llQ29sb3IsICNGMDApO1xufVxuXG4uY29va2llcy1wb3B1cC0tY29udGVudCBpbnB1dCB7XG4gIG1hcmdpbjogMDtcbn1cblxuLmNvb2tpZXMtcG9wdXAtLXJhZGlvZ3JvdXAgPiBkaXYge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4uY29va2llcy1wb3B1cC0tcmFkaW9ncm91cCBpbnB1dFt0eXBlPXJhZGlvXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5MjBweCkge1xuICAjY29va2llLW5vdGljZSAuY29udGFpbmVyIGgyOmxhc3QtY2hpbGQge1xuICAgIGxldHRlci1zcGFjaW5nOiAwICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICNjb29raWUtbm90aWNlIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMjBweCk7XG4gICAgYm90dG9tOiAxMHB4O1xuICAgIGxlZnQ6IDEwcHg7XG4gIH1cbiAgLmNvb2tpZS1ub3RpY2UtY2xvc2Uge1xuICAgIHRvcDogNXB4O1xuICAgIHJpZ2h0OiAxMHB4O1xuICB9XG59XG5cbi5zY3JlZW5SZWFkZXJPbmx5IHtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgbWFyZ2luOiAtMXB4O1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXItd2lkdGg6IDA7XG4gIGJvcmRlci1zdHlsZTogaW5pdGlhbDtcbiAgYm9yZGVyLWNvbG9yOiBpbml0aWFsO1xuICBib3JkZXItaW1hZ2U6IGluaXRpYWw7XG59XG5cbi5zY3JlZW5SZWFkZXJPbmx5LS1mb2N1c2FibGU6Zm9jdXMsXG4uc2NyZWVuUmVhZGVyT25seS0tZm9jdXNhYmxlOmFjdGl2ZSB7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBjbGlwOiBhdXRvO1xuICBtYXJnaW46IDA7XG59XG5cbi5za2lwVG9Db250ZW50OmZvY3VzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDAwMDtcbiAgdG9wOiAzcHg7XG4gIGxlZnQ6IDNweDtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBsaW5lLWhlaWdodDogNjRweDtcbiAgcGFkZGluZzogMCAyNHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLmFkbWluLWJhciAuc2tpcFRvQ29udGVudDpmb2N1cyB7XG4gIHRvcDogNDlweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzgzcHgpIHtcbiAgLmFkbWluLWJhciAuc2tpcFRvQ29udGVudDpmb2N1cyB7XG4gICAgdG9wOiAzNXB4O1xuICB9XG59XG5cbi5oZWFkZXIge1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB6LWluZGV4OiB2YXIoLS1oZWFkZXJaaW5kZXgsIDEwMCk7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhlYWRlckJhY2tncm91bmRDb2xvciwgI0ZGRik7XG59XG5cbi5hZG1pbi1iYXIgLmhlYWRlciB7XG4gIHRvcDogNDZweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzgzcHgpIHtcbiAgLmFkbWluLWJhciAuaGVhZGVyIHtcbiAgICB0b3A6IDMycHg7XG4gIH1cbn1cblxuLmhlYWRlcl9fdG9wIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTAwcHgpIHtcbiAgLmhlYWRlcl9fdG9wIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IHZhcigtLWhlYWRlclRvcEhlaWdodCwgNDBweCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IHZhcigtLWhlYWRlclppbmRleCwgMTAwKTtcbiAgICBmb250LWZhbWlseTogdmFyKC0taGVhZGVyVG9wRm9udEZhbWlseSwgdmFyKC0tZm9udEZhbWlseSwgQXJpYWwsIHNhbnMtc2VyaWYpKTtcbiAgICBmb250LXNpemU6IHZhcigtLWhlYWRlclRvcEZvbnRTaXplLCAxcmVtKTtcbiAgICBjb2xvcjogdmFyKC0taGVhZGVyVG9wQ29sb3IsICNGRkYpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1oZWFkZXJUb3BGb250V2VpZ2h0LCA0MDApO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1oZWFkZXJUb3BIZWlnaHQsIDQwcHgpO1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oZWFkZXJUb3BMZXR0ZXJTcGFjaW5nLCAwKTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdmFyKC0taGVhZGVyVG9wVGV4dFRyYW5zZm9ybSwgbm9uZSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taGVhZGVyVG9wQmFja2dyb3VuZENvbG9yLCAjMDAwKTtcbiAgfVxuICAuaGVhZGVyX190b3A6bm90KC5oZWFkZXJfX3RvcC0tY3VzdG9tVGVtcGxhdGUpID4gZGl2IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTEwMHB4KSB7XG4gIC5oZWFkZXJfX3RvcDpub3QoLmhlYWRlcl9fdG9wLS1jdXN0b21UZW1wbGF0ZSkgLmhlYWRlcl9fdG9wX19sZWZ0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbiAgLmhlYWRlcl9fdG9wOm5vdCguaGVhZGVyX190b3AtLWN1c3RvbVRlbXBsYXRlKSAuaGVhZGVyX190b3BfX2xlZnQgPiAqICsgKiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1oZWFkZXJUb3BMZWZ0R2FwLCAxcmVtKTtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLWhlYWRlclRvcExlZnRHYXAsIDFyZW0pO1xuICB9XG4gIC5oZWFkZXJfX3RvcDpub3QoLmhlYWRlcl9fdG9wLS1jdXN0b21UZW1wbGF0ZSkgLmhlYWRlcl9fdG9wX19sZWZ0ID4gKiArICo6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDFweDtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIHZhcigtLWhlYWRlclRvcExlZnREaXZpZGVyUmVtb3ZlSGVpZ2h0LCAyMHB4KSk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taGVhZGVyVG9wTGVmdERpdmlkZXJDb2xvciwgdmFyKC0taGVhZGVyVG9wQ29sb3IsICNGRkYpKTtcbiAgfVxuICAuaGVhZGVyX190b3A6bm90KC5oZWFkZXJfX3RvcC0tY3VzdG9tVGVtcGxhdGUpIC5oZWFkZXJfX3RvcF9fbGVmdCAuc29jaWFsc0xpc3Rpbmcge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuICAuaGVhZGVyX190b3A6bm90KC5oZWFkZXJfX3RvcC0tY3VzdG9tVGVtcGxhdGUpIC5oZWFkZXJfX3RvcF9fbGVmdCAuc29jaWFsc0xpc3RpbmcgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG4gIC5oZWFkZXJfX3RvcDpub3QoLmhlYWRlcl9fdG9wLS1jdXN0b21UZW1wbGF0ZSkgLmhlYWRlcl9fdG9wX19sZWZ0IC5zb2NpYWxzTGlzdGluZyBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IHZhcigtLWhlYWRlclRvcFNvY2lhbHNUb3AsIDFweCk7XG4gIH1cbiAgLmhlYWRlcl9fdG9wOm5vdCguaGVhZGVyX190b3AtLWN1c3RvbVRlbXBsYXRlKSAuaGVhZGVyX190b3BfX2xlZnQgLnNvY2lhbHNMaXN0aW5nIGxpICsgbGkge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1oZWFkZXJUb3BTb2NpYWxzR2FwLCAxcmVtKTtcbiAgfVxuICAuaGVhZGVyX190b3A6bm90KC5oZWFkZXJfX3RvcC0tY3VzdG9tVGVtcGxhdGUpIC5oZWFkZXJfX3RvcF9fbGVmdCAuc29jaWFsc0xpc3RpbmcgbGkgc3ZnIHBhdGgsXG4gIC5oZWFkZXJfX3RvcDpub3QoLmhlYWRlcl9fdG9wLS1jdXN0b21UZW1wbGF0ZSkgLmhlYWRlcl9fdG9wX19sZWZ0IC5zb2NpYWxzTGlzdGluZyBsaSBzdmcgcG9seWdvbiB7XG4gICAgdHJhbnNpdGlvbjogZmlsbCAwLjNzO1xuICAgIGZpbGw6IHZhcigtLWhlYWRlclRvcFNvY2lhbHNDb2xvciwgdmFyKC0taGVhZGVyVG9wQ29sb3IsICNGRkYpKTtcbiAgfVxuICAuaGVhZGVyX190b3A6bm90KC5oZWFkZXJfX3RvcC0tY3VzdG9tVGVtcGxhdGUpIC5oZWFkZXJfX3RvcF9fbGVmdCAuc29jaWFsc0xpc3RpbmcgbGkgYTpob3ZlciBzdmcgcGF0aCxcbiAgLmhlYWRlcl9fdG9wOm5vdCguaGVhZGVyX190b3AtLWN1c3RvbVRlbXBsYXRlKSAuaGVhZGVyX190b3BfX2xlZnQgLnNvY2lhbHNMaXN0aW5nIGxpIGE6aG92ZXIgc3ZnIHBvbHlnb24sXG4gIC5oZWFkZXJfX3RvcDpub3QoLmhlYWRlcl9fdG9wLS1jdXN0b21UZW1wbGF0ZSkgLmhlYWRlcl9fdG9wX19sZWZ0IC5zb2NpYWxzTGlzdGluZyBsaSBhOmZvY3VzIHN2ZyBwYXRoLFxuICAuaGVhZGVyX190b3A6bm90KC5oZWFkZXJfX3RvcC0tY3VzdG9tVGVtcGxhdGUpIC5oZWFkZXJfX3RvcF9fbGVmdCAuc29jaWFsc0xpc3RpbmcgbGkgYTpmb2N1cyBzdmcgcG9seWdvbiB7XG4gICAgZmlsbDogdmFyKC0taGVhZGVyVG9wU29jaWFsc0FjdGl2ZUNvbG9yLCB2YXIoLS1oZWFkZXJUb3BBY2NlbnRDb2xvciwgdmFyKC0taGVhZGVyVG9wQ29sb3IsICNGRkYpKSk7XG4gIH1cbiAgLmhlYWRlcl9fdG9wOm5vdCguaGVhZGVyX190b3AtLWN1c3RvbVRlbXBsYXRlKSAuaGVhZGVyX190b3BfX2xlZnRfX2FkZHJlc3NlcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG4gIC5oZWFkZXJfX3RvcDpub3QoLmhlYWRlcl9fdG9wLS1jdXN0b21UZW1wbGF0ZSkgLmhlYWRlcl9fdG9wX19sZWZ0X19hZGRyZXNzZXMgPiAqIHtcbiAgICBmb250LWZhbWlseTogdmFyKC0taGVhZGVyVG9wQWRkcmVzc0ZvbnRGYW1pbHksIHZhcigtLWhlYWRlclRvcEZvbnRGYW1pbHksIHZhcigtLWZvbnRGYW1pbHksIEFyaWFsLCBzYW5zLXNlcmlmKSkpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0taGVhZGVyVG9wQWRkcmVzc0ZvbnRTaXplLCB2YXIoLS1oZWFkZXJUb3BGb250U2l6ZSwgMXJlbSkpO1xuICAgIGNvbG9yOiB2YXIoLS1oZWFkZXJUb3BBZGRyZXNzQ29sb3IsIHZhcigtLWhlYWRlclRvcENvbG9yLCAjRkZGKSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWhlYWRlclRvcEFkZHJlc3NGb250V2VpZ2h0LCB2YXIoLS1oZWFkZXJUb3BGb250V2VpZ2h0LCA0MDApKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0taGVhZGVyVG9wQWRkcmVzc0xldHRlclNwYWNpbmcsIHZhcigtLWhlYWRlclRvcExldHRlclNwYWNpbmcsIDApKTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdmFyKC0taGVhZGVyVG9wQWRkcmVzc1RleHRUcmFuc2Zvcm0sIHZhcigtLWhlYWRlclRvcFRleHRUcmFuc2Zvcm0sIG5vbmUpKTtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzO1xuICB9XG4gIC5oZWFkZXJfX3RvcDpub3QoLmhlYWRlcl9fdG9wLS1jdXN0b21UZW1wbGF0ZSkgLmhlYWRlcl9fdG9wX19sZWZ0X19hZGRyZXNzZXMgPiAqOmhvdmVyLCAuaGVhZGVyX190b3A6bm90KC5oZWFkZXJfX3RvcC0tY3VzdG9tVGVtcGxhdGUpIC5oZWFkZXJfX3RvcF9fbGVmdF9fYWRkcmVzc2VzID4gKjpmb2N1cyB7XG4gICAgZmlsbDogdmFyKC0taGVhZGVyVG9wQWRkcmVzc0FjdGl2ZUNvbG9yLCB2YXIoLS1oZWFkZXJUb3BBY2NlbnRDb2xvciwgdmFyKC0taGVhZGVyVG9wQ29sb3IsICNGRkYpKSk7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTAwcHgpIHtcbiAgLmhlYWRlcl9fdG9wOm5vdCguaGVhZGVyX190b3AtLWN1c3RvbVRlbXBsYXRlKSAuaGVhZGVyX190b3BfX3JpZ2h0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG4gIC5oZWFkZXJfX3RvcDpub3QoLmhlYWRlcl9fdG9wLS1jdXN0b21UZW1wbGF0ZSkgLmhlYWRlcl9fdG9wX19yaWdodF9fcGhvbmUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuICAuaGVhZGVyX190b3A6bm90KC5oZWFkZXJfX3RvcC0tY3VzdG9tVGVtcGxhdGUpIC5oZWFkZXJfX3RvcF9fcmlnaHRfX3Bob25lID4gYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmb250LWZhbWlseTogdmFyKC0taGVhZGVyVG9wUGhvbmVGb250RmFtaWx5LCB2YXIoLS1oZWFkZXJUb3BGb250RmFtaWx5LCB2YXIoLS1mb250RmFtaWx5LCBBcmlhbCwgc2Fucy1zZXJpZikpKTtcbiAgICBmb250LXNpemU6IHZhcigtLWhlYWRlclRvcFBob25lRm9udFNpemUsIHZhcigtLWhlYWRlclRvcEZvbnRTaXplLCAxcmVtKSk7XG4gICAgY29sb3I6IHZhcigtLWhlYWRlclRvcFBob25lQ29sb3IsIHZhcigtLWhlYWRlclRvcENvbG9yLCAjRkZGKSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWhlYWRlclRvcFBob25lRm9udFdlaWdodCwgdmFyKC0taGVhZGVyVG9wRm9udFdlaWdodCwgNDAwKSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWhlYWRlclRvcFBob25lTGluZUhlaWdodCwgMS4yKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0taGVhZGVyVG9wUGhvbmVMZXR0ZXJTcGFjaW5nLCB2YXIoLS1oZWFkZXJUb3BMZXR0ZXJTcGFjaW5nLCAwKSk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHZhcigtLWhlYWRlclRvcFBob25lVGV4dFRyYW5zZm9ybSwgdmFyKC0taGVhZGVyVG9wVGV4dFRyYW5zZm9ybSwgbm9uZSkpO1xuICB9XG4gIC5oZWFkZXJfX3RvcDpub3QoLmhlYWRlcl9fdG9wLS1jdXN0b21UZW1wbGF0ZSkgLmhlYWRlcl9fdG9wX19yaWdodF9fcGhvbmUgPiBhIHN2ZyB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1oZWFkZXJUb3BQaG9uZUxvZ29NYXJnaW5SaWdodCwgMWVtKTtcbiAgfVxuICAuaGVhZGVyX190b3A6bm90KC5oZWFkZXJfX3RvcC0tY3VzdG9tVGVtcGxhdGUpIC5oZWFkZXJfX3RvcF9fcmlnaHRfX3Bob25lID4gYSBzdmcgcGF0aCB7XG4gICAgZmlsbDogdmFyKC0taGVhZGVyVG9wUGhvbmVMb2dvQ29sb3IsIHZhcigtLWhlYWRlclRvcENvbG9yLCAjRkZGKSk7XG4gIH1cbiAgLmhlYWRlcl9fdG9wOm5vdCguaGVhZGVyX190b3AtLWN1c3RvbVRlbXBsYXRlKSAuaGVhZGVyX190b3BfX3JpZ2h0X19jb250YWN0IHtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0taGVhZGVyVG9wQ29udGFjdE1hcmdpbkxlZnQsIDEuMjVyZW0pO1xuICB9XG4gIC5oZWFkZXJfX3RvcDpub3QoLmhlYWRlcl9fdG9wLS1jdXN0b21UZW1wbGF0ZSkgLmhlYWRlcl9fdG9wX19yaWdodF9fY29udGFjdCA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmb250LWZhbWlseTogdmFyKC0taGVhZGVyVG9wQ29udGFjdEZvbnRGYW1pbHksIHZhcigtLWhlYWRlclRvcEZvbnRGYW1pbHksIHZhcigtLWZvbnRGYW1pbHksIEFyaWFsLCBzYW5zLXNlcmlmKSkpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0taGVhZGVyVG9wQ29udGFjdEZvbnRTaXplLCB2YXIoLS1oZWFkZXJUb3BGb250U2l6ZSwgMXJlbSkpO1xuICAgIGNvbG9yOiB2YXIoLS1oZWFkZXJUb3BDb250YWN0Q29sb3IsIHZhcigtLWhlYWRlclRvcENvbG9yLCAjRkZGKSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWhlYWRlclRvcENvbnRhY3RGb250V2VpZ2h0LCB2YXIoLS1oZWFkZXJUb3BGb250V2VpZ2h0LCA0MDApKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0taGVhZGVyVG9wQ29udGFjdExpbmVIZWlnaHQsIDEuMik7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWhlYWRlclRvcENvbnRhY3RMZXR0ZXJTcGFjaW5nLCB2YXIoLS1oZWFkZXJUb3BMZXR0ZXJTcGFjaW5nLCAwKSk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHZhcigtLWhlYWRlclRvcENvbnRhY3RUZXh0VHJhbnNmb3JtLCB2YXIoLS1oZWFkZXJUb3BUZXh0VHJhbnNmb3JtLCBub25lKSk7XG4gIH1cbiAgLmhlYWRlcl9fdG9wOm5vdCguaGVhZGVyX190b3AtLWN1c3RvbVRlbXBsYXRlKSAuaGVhZGVyX190b3BfX3JpZ2h0X19jb250YWN0ID4gYTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMXB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IC0ycHg7XG4gICAgbGVmdDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1oZWFkZXJUb3BDb250YWN0TGluZUNvbG9yLCB0cmFuc3BhcmVudCk7XG4gIH1cbiAgLmhlYWRlcl9fdG9wOm5vdCguaGVhZGVyX190b3AtLWN1c3RvbVRlbXBsYXRlKSAuaGVhZGVyX190b3BfX3JpZ2h0X19jb250YWN0ID4gYTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMTtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IC0ycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taGVhZGVyVG9wQ29udGFjdEFjdGl2ZUxpbmVDb2xvciwgdmFyKC0taGVhZGVyVG9wQWNjZW50Q29sb3IsIHZhcigtLWhlYWRlclRvcENvbG9yLCAjRkZGKSkpO1xuICAgIHRyYW5zaXRpb246IHdpZHRoIDAuM3MgY3ViaWMtYmV6aWVyKDAuODYsIDAsIDAuMDcsIDEpO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTEwMHB4KSBhbmQgKGhvdmVyOiBob3Zlcikge1xuICAuaGVhZGVyX190b3A6bm90KC5oZWFkZXJfX3RvcC0tY3VzdG9tVGVtcGxhdGUpIC5oZWFkZXJfX3RvcF9fcmlnaHRfX2NvbnRhY3QgPiBhOmhvdmVyOjpiZWZvcmUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHJpZ2h0OiBpbmhlcml0O1xuICAgIGxlZnQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTAwcHgpIHtcbiAgLmhlYWRlcl9fdG9wOm5vdCguaGVhZGVyX190b3AtLWN1c3RvbVRlbXBsYXRlKSAuaGVhZGVyX190b3BfX3JpZ2h0X19kb2N0b2xpYiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBoZWlnaHQ6IHZhcigtLWhlYWRlclRvcEhlaWdodCwgNDBweCk7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLWhlYWRlclRvcERvY3RvbGliTWFyZ2luTGVmdCwgMS4yNXJlbSk7XG4gIH1cbn1cblxuLmhlYWRlcl9fYm90dG9tIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxMDA1O1xuICBwYWRkaW5nLXRvcDogdmFyKC0taGVhZGVyQm90dG9tUGFkZGluZ1RvcCwgMC42MjVyZW0pO1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0taGVhZGVyQm90dG9tUGFkZGluZ0JvdHRvbSwgMC42MjVyZW0pO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1oZWFkZXJCb3R0b21CYWNrZ3JvdW5kQ29sb3IsIHZhcigtLWhlYWRlckJhY2tncm91bmRDb2xvciwgI0ZGRikpO1xuICBib3gtc2hhZG93OiB2YXIoLS1oZWFkZXJCb3hTaGFkb3csIDAgNHB4IDExcHggcmdiYSgwLCAwLCAwLCAwLjA3KSk7XG59XG5cbi5oZWFkZXJfX2JvdHRvbSA+IGRpdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5oZWFkZXJfX2JvdHRvbV9fbG9nbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxleC1zaHJpbms6IDA7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLmhlYWRlcl9fYm90dG9tX19hY3Rpb25zIHtcbiAgZmxleC1zaHJpbms6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAzcHg7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1oZWFkZXJCb3R0b21BY3Rpb25zR2FwLCAyLjE4NzVyZW0pO1xufVxuXG4uaGVhZGVyX190b3BfX2xlZnRfX2luc3RhZ3JhbSBzdmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMnB4O1xufVxuXG4uaGVhZGVyX19ib3R0b21fX21lbnUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExMDBweCkge1xuICAuaGVhZGVyX19ib3R0b21fX21lbnUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5oZWFkZXJfX2JvdHRvbV9fbWVudSA+IG5hdiA+IHVsID4gbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICAuaGVhZGVyX19ib3R0b21fX21lbnUgPiBuYXYgPiB1bCBsaSA+IGEgc3BhbiB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbiAgLmhlYWRlcl9fYm90dG9tX19tZW51ID4gbmF2ID4gdWwgbGkgPiBhIHN2ZyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBzdHJva2U6IHZhcigtLWhlYWRlck1lbnVTdmdDb2xvciwgdmFyKC0taGVhZGVyTWVudUNvbG9yLCAjMDAwKSk7XG4gIH1cbiAgLmhlYWRlcl9fYm90dG9tX19tZW51ID4gbmF2ID4gdWwgPiBsaSArIGxpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLWhlYWRlck1lbnVJdGVtR2FwLCAyLjE4NzVyZW0pO1xuICB9XG4gIC5oZWFkZXJfX2JvdHRvbV9fbWVudSA+IG5hdiA+IHVsID4gbGkgPiBhIHtcbiAgICBmb250LWZhbWlseTogdmFyKC0taGVhZGVyTWVudUl0ZW1Gb250RmFtaWx5LCB2YXIoLS1mb250RmFtaWx5LCBBcmlhbCwgc2Fucy1zZXJpZikpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0taGVhZGVyTWVudUl0ZW1Gb250U2l6ZSwgdmFyKC0taGVhZGVyTWVudUZvbnRTaXplLCAxcmVtKSk7XG4gICAgY29sb3I6IHZhcigtLWhlYWRlck1lbnVJdGVtQ29sb3IsIHZhcigtLWhlYWRlck1lbnVDb2xvciwgIzAwMCkpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1oZWFkZXJNZW51SXRlbUl0ZW1Gb250V2VpZ2h0LCB2YXIoLS1oZWFkZXJNZW51Rm9udFdlaWdodCwgNDAwKSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWhlYWRlck1lbnVJdGVtTGluZUhlaWdodCwgdmFyKC0taGVhZGVyTWVudUxpbmVIZWlnaHQsIDEpKTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0taGVhZGVyTWVudUl0ZW1MZXR0ZXJTcGFjaW5nLCB2YXIoLS1oZWFkZXJNZW51TGV0dGVyU3BhY2luZywgMCkpO1xuICAgIHRleHQtdHJhbnNmb3JtOiB2YXIoLS1oZWFkZXJNZW51SXRlbVRleHRUcmFuc2Zvcm0sIHZhcigtLWhlYWRlck1lbnVUZXh0VHJhbnNmb3JtLCBub25lKSk7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgMC4zcztcbiAgfVxuICAuaGVhZGVyX19ib3R0b21fX21lbnUgPiBuYXYgPiB1bCA+IGxpID4gYTpob3ZlciwgLmhlYWRlcl9fYm90dG9tX19tZW51ID4gbmF2ID4gdWwgPiBsaSA+IGE6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1oZWFkZXJNZW51SXRlbUFjY2VudENvbG9yLCB2YXIoLS1oZWFkZXJNZW51QWNjZW50Q29sb3IsICNGMDApKTtcbiAgfVxuICAuaGVhZGVyX19ib3R0b21fX21lbnUgPiBuYXYgPiB1bCA+IGxpID4gYSBzdmcge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLyogc3R5bGVsaW50LWRpc2FibGUgbm8tZHVwbGljYXRlLXNlbGVjdG9ycyAqL1xuICAuaGVhZGVyX19ib3R0b21fX21lbnUgPiBuYXYgPiB1bCA+IGxpLmlzLWFjdGl2ZSA+IGEsIC5oZWFkZXJfX2JvdHRvbV9fbWVudSA+IG5hdiA+IHVsID4gbGkuY3VycmVudC1tZW51LWl0ZW0gPiBhLCAuaGVhZGVyX19ib3R0b21fX21lbnUgPiBuYXYgPiB1bCA+IGxpLmN1cnJlbnQtbWVudS1hbmNlc3RvciA+IGEsIC5oZWFkZXJfX2JvdHRvbV9fbWVudSA+IG5hdiA+IHVsID4gbGkuY3VycmVudC1jYXRlZ29yeS1hbmNlc3RvciA+IGEsIC5oZWFkZXJfX2JvdHRvbV9fbWVudSA+IG5hdiA+IHVsID4gbGkuY3VycmVudC1wb3N0LWFuY2VzdG9yID4gYSwgLmhlYWRlcl9fYm90dG9tX19tZW51ID4gbmF2ID4gdWwgPiBsaS5jdXJyZW50LXBhZ2UtYW5jZXN0b3IgPiBhIHtcbiAgICBjb2xvcjogdmFyKC0taGVhZGVyTWVudUl0ZW1BY2NlbnRDb2xvciwgdmFyKC0taGVhZGVyTWVudUFjY2VudENvbG9yLCAjRjAwKSk7XG4gIH1cbiAgLyogc3R5bGVsaW50LWVuYWJsZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzICovXG4gIC5oZWFkZXJfX2JvdHRvbV9fbWVudSA+IG5hdiA+IHVsIGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiB1bC5uYXYtZHJvcCA+IC5uYXYtZHJvcF9fd3JhcHBlciB7XG4gICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIHZhcigtLWhlYWRlck1lbnVfX3NpbXBsZU1lbnVUb3AsIDApIC0gKHZhcigtLWhlYWRlckhlaWdodCwgMCkgKyAyMHB4KSk7XG4gICAgYm9yZGVyLWxlZnQ6IHZhcigtLWhlYWRlck1lbnVfX3NpbXBsZU1lbnVCb3JkZXJXaWR0aCwgMCkgc29saWQgdmFyKC0taGVhZGVyTWVudV9fc2ltcGxlTWVudUJvcmRlckNvbG9yLCAjMDAwKTtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxuICAuaGVhZGVyX19ib3R0b21fX21lbnUgPiBuYXYgPiB1bCA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiB1bC5uYXYtZHJvcCxcbiAgLmhlYWRlcl9fYm90dG9tX19tZW51ID4gbmF2ID4gdWwgPiBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gdWwubmF2LWRyb3AgbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IHVsLm5hdi1kcm9wIHtcbiAgICBtaW4td2lkdGg6IDExLjI1cmVtO1xuICAgIG1heC13aWR0aDogdmFyKC0taGVhZGVyTWVudV9fc2ltcGxlTWVudVdpZHRoLCAxNC4zNzVyZW0pO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gICAgYm94LXNoYWRvdzogM3B4IDlweCAxNHB4IHJnYmEoMCwgMCwgMCwgMC4xMSk7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG4gIC5oZWFkZXJfX2JvdHRvbV9fbWVudSA+IG5hdiA+IHVsID4gbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IHVsLm5hdi1kcm9wLmVkZ2Uge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgfVxuICAuaGVhZGVyX19ib3R0b21fX21lbnUgPiBuYXYgPiB1bCA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiB1bC5uYXYtZHJvcCA+IC5uYXYtZHJvcF9fd3JhcHBlcixcbiAgLmhlYWRlcl9fYm90dG9tX19tZW51ID4gbmF2ID4gdWwgPiBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gdWwubmF2LWRyb3AgPiAubmF2LWRyb3BfX3dyYXBwZXIgbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IHVsLm5hdi1kcm9wIHtcbiAgICBwYWRkaW5nOiB2YXIoLS1oZWFkZXJNZW51X19zaW1wbGVNZW51UGFkZGluZ1RvcCwgMC4zMTI1cmVtKSB2YXIoLS1oZWFkZXJNZW51X19zaW1wbGVNZW51UGFkZGluZ1JpZ2h0LCAxLjI1cmVtKSB2YXIoLS1oZWFkZXJNZW51X19zaW1wbGVNZW51UGFkZGluZ0JvdHRvbSwgMC4zMTI1cmVtKSB2YXIoLS1oZWFkZXJNZW51X19zaW1wbGVNZW51UGFkZGluZ0xlZnQsIDAuOTM3NXJlbSk7XG4gIH1cbiAgLmhlYWRlcl9fYm90dG9tX19tZW51ID4gbmF2ID4gdWwgPiBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gdWwubmF2LWRyb3AgbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgfVxuICAuaGVhZGVyX19ib3R0b21fX21lbnUgPiBuYXYgPiB1bCA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiB1bC5uYXYtZHJvcCBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gdWwubmF2LWRyb3Age1xuICAgIHdpZHRoOiB2YXIoLS1oZWFkZXJNZW51X19zaW1wbGVNZW51V2lkdGgsIDE0LjM3NXJlbSk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogdmFyKC0taGVhZGVyTWVudV9fc2ltcGxlTWVudVRvcCwgMCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuICAuaGVhZGVyX19ib3R0b21fX21lbnUgPiBuYXYgPiB1bCA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiB1bC5uYXYtZHJvcCBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gdWwubmF2LWRyb3A6bm90KC5lZGdlKSB7XG4gICAgbGVmdDogY2FsYyh2YXIoLS1oZWFkZXJNZW51X19zaW1wbGVNZW51TGVmdCwgMHB4KSArIHZhcigtLWhlYWRlck1lbnVfX3NpbXBsZU1lbnVHYXBCZXR3ZWVuLCAwLjEyNXJlbSkpO1xuICB9XG4gIC5oZWFkZXJfX2JvdHRvbV9fbWVudSA+IG5hdiA+IHVsID4gbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IHVsLm5hdi1kcm9wIGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiB1bC5uYXYtZHJvcC5lZGdlIHtcbiAgICBsZWZ0OiBjYWxjKCAodmFyKC0taGVhZGVyTWVudV9fc2ltcGxlTWVudUxlZnQsIDBweCkgKyB2YXIoLS1oZWFkZXJNZW51X19zaW1wbGVNZW51R2FwQmV0d2VlbiwgMC4xMjVyZW0pICsgKHZhcigtLWhlYWRlck1lbnVfX3NpbXBsZU1lbnVXaWR0aCwgMHB4KSAtIHZhcigtLWhlYWRlck1lbnVfX3NpbXBsZU1lbnVMZWZ0LCAwcHgpKSkgKiAtMSk7XG4gIH1cbiAgLmhlYWRlcl9fYm90dG9tX19tZW51ID4gbmF2ID4gdWwgPiBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gdWwubmF2LWRyb3AgbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IHVsLm5hdi1kcm9wLmVkZ2UgLm5hdi1kcm9wIHtcbiAgICBsZWZ0OiBjYWxjKCAodmFyKC0taGVhZGVyTWVudV9fc2ltcGxlTWVudUxlZnQsIDBweCkgKyB2YXIoLS1oZWFkZXJNZW51X19zaW1wbGVNZW51R2FwQmV0d2VlbiwgMC4xMjVyZW0pICsgKHZhcigtLWhlYWRlck1lbnVfX3NpbXBsZU1lbnVXaWR0aCwgMHB4KSAtIHZhcigtLWhlYWRlck1lbnVfX3NpbXBsZU1lbnVMZWZ0LCAwcHgpKSkgKiAtMSk7XG4gIH1cbiAgLmhlYWRlcl9fYm90dG9tX19tZW51ID4gbmF2ID4gdWwgPiBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuLmlzLWFjdGl2ZSA+IHVsLm5hdi1kcm9wIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICB9XG4gIC5oZWFkZXJfX2JvdHRvbV9fbWVudSA+IG5hdiA+IHVsID4gbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbi5pcy1hY3RpdmUgPiB1bC5uYXYtZHJvcCBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuLmlzLWFjdGl2ZSA+IHVsLm5hdi1kcm9wIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICB9XG4gIC5oZWFkZXJfX2JvdHRvbV9fbWVudSA+IG5hdiA+IHVsID4gbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiB1bC5uYXYtZHJvcCA+IC5uYXYtZHJvcF9fd3JhcHBlciA+IGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuaGVhZGVyX19ib3R0b21fX21lbnUgPiBuYXYgPiB1bCA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gdWwubmF2LWRyb3AgPiAubmF2LWRyb3BfX3dyYXBwZXIgPiBsaSA+IGEge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1oZWFkZXJNZW51X19zaW1wbGVNZW51SXRlbUZvbnRGYW1pbHksIHZhcigtLWhlYWRlck1lbnVJdGVtRm9udEZhbWlseSwgdmFyKC0tZm9udEZhbWlseSwgQXJpYWwsIHNhbnMtc2VyaWYpKSk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1oZWFkZXJNZW51X19zaW1wbGVNZW51SXRlbUZvbnRTaXplLCB2YXIoLS1oZWFkZXJNZW51SXRlbUZvbnRTaXplLCB2YXIoLS1oZWFkZXJNZW51Rm9udFNpemUsIDFyZW0pKSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWhlYWRlck1lbnVfX3NpbXBsZU1lbnVJdGVtRm9udFdlaWdodCwgdmFyKC0taGVhZGVyTWVudUl0ZW1JdGVtRm9udFdlaWdodCwgdmFyKC0taGVhZGVyTWVudUZvbnRXZWlnaHQsIDQwMCkpKTtcbiAgICBjb2xvcjogdmFyKC0taGVhZGVyTWVudV9fc2ltcGxlTWVudUl0ZW1Db2xvciwgdmFyKC0taGVhZGVyTWVudUl0ZW1Db2xvciwgdmFyKC0taGVhZGVyTWVudUNvbG9yLCAjMDAwKSkpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1oZWFkZXJNZW51X19zaW1wbGVNZW51SXRlbUxpbmVIZWlnaHQsIHZhcigtLWhlYWRlck1lbnVJdGVtTGluZUhlaWdodCwgdmFyKC0taGVhZGVyTWVudUxpbmVIZWlnaHQsIDEpKSk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWhlYWRlck1lbnVfX3NpbXBsZU1lbnVJdGVtTGV0dGVyU3BhY2luZywgdmFyKC0taGVhZGVyTWVudUl0ZW1MZXR0ZXJTcGFjaW5nLCB2YXIoLS1oZWFkZXJNZW51TGV0dGVyU3BhY2luZywgMCkpKTtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzLCBiYWNrZ3JvdW5kLWNvbG9yIDAuM3M7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwYWRkaW5nOiB2YXIoLS1oZWFkZXJNZW51X19zaW1wbGVNZW51SXRlbVBhZGRpbmdUb3AsIDAuMzEyNXJlbSkgdmFyKC0taGVhZGVyTWVudV9fc2ltcGxlTWVudUl0ZW1QYWRkaW5nUmlnaHQsIDApIHZhcigtLWhlYWRlck1lbnVfX3NpbXBsZU1lbnVJdGVtUGFkZGluZ0JvdHRvbSwgMC4zMTI1cmVtKTtcbiAgfVxuICAuaGVhZGVyX19ib3R0b21fX21lbnUgPiBuYXYgPiB1bCA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gdWwubmF2LWRyb3AgPiAubmF2LWRyb3BfX3dyYXBwZXIgPiBsaSA+IGEgc3BhbiB7XG4gICAgcGFkZGluZy1yaWdodDogMS4yNXJlbTtcbiAgfVxuICAuaGVhZGVyX19ib3R0b21fX21lbnUgPiBuYXYgPiB1bCA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gdWwubmF2LWRyb3AgPiAubmF2LWRyb3BfX3dyYXBwZXIgPiBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gYSBzdmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgdHJhbnNpdGlvbjogc3Ryb2tlIDAuM3M7XG4gIH1cbiAgLmhlYWRlcl9fYm90dG9tX19tZW51ID4gbmF2ID4gdWwgPiBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIHVsLm5hdi1kcm9wID4gLm5hdi1kcm9wX193cmFwcGVyID4gbGk6aG92ZXIgPiBhLCAuaGVhZGVyX19ib3R0b21fX21lbnUgPiBuYXYgPiB1bCA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gdWwubmF2LWRyb3AgPiAubmF2LWRyb3BfX3dyYXBwZXIgPiBsaS5jdXJyZW50LW1lbnUtaXRlbSA+IGEsIC5oZWFkZXJfX2JvdHRvbV9fbWVudSA+IG5hdiA+IHVsID4gbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiB1bC5uYXYtZHJvcCA+IC5uYXYtZHJvcF9fd3JhcHBlciA+IGxpLmN1cnJlbnQtbWVudS1hbmNlc3RvciA+IGEsIC5oZWFkZXJfX2JvdHRvbV9fbWVudSA+IG5hdiA+IHVsID4gbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiB1bC5uYXYtZHJvcCA+IC5uYXYtZHJvcF9fd3JhcHBlciA+IGxpLmN1cnJlbnQtY2F0ZWdvcnktYW5jZXN0b3IgPiBhLCAuaGVhZGVyX19ib3R0b21fX21lbnUgPiBuYXYgPiB1bCA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gdWwubmF2LWRyb3AgPiAubmF2LWRyb3BfX3dyYXBwZXIgPiBsaS5jdXJyZW50LXBvc3QtYW5jZXN0b3IgPiBhLCAuaGVhZGVyX19ib3R0b21fX21lbnUgPiBuYXYgPiB1bCA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gdWwubmF2LWRyb3AgPiAubmF2LWRyb3BfX3dyYXBwZXIgPiBsaS5jdXJyZW50LXBhZ2UtYW5jZXN0b3IgPiBhLCAuaGVhZGVyX19ib3R0b21fX21lbnUgPiBuYXYgPiB1bCA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gdWwubmF2LWRyb3AgPiAubmF2LWRyb3BfX3dyYXBwZXIgPiBsaS5pcy1hY3RpdmUgPiBhIHtcbiAgICBjb2xvcjogdmFyKC0taGVhZGVyTWVudV9fc2ltcGxlTWVudUl0ZW1BY2NlbnRDb2xvciwgdmFyKC0taGVhZGVyTWVudUFjY2VudENvbG9yLCAjRjAwKSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taGVhZGVyTWVudV9fc2ltcGxlTWVudUl0ZW1CYWNrZ3JvdW5kQ29sb3IsIHRyYW5zcGFyZW50KTtcbiAgfVxuICAuaGVhZGVyX19ib3R0b21fX21lbnUgPiBuYXYgPiB1bCA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gdWwubmF2LWRyb3AgPiAubmF2LWRyb3BfX3dyYXBwZXIgPiBsaTpob3ZlciA+IGEgc3ZnLCAuaGVhZGVyX19ib3R0b21fX21lbnUgPiBuYXYgPiB1bCA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gdWwubmF2LWRyb3AgPiAubmF2LWRyb3BfX3dyYXBwZXIgPiBsaS5jdXJyZW50LW1lbnUtaXRlbSA+IGEgc3ZnLCAuaGVhZGVyX19ib3R0b21fX21lbnUgPiBuYXYgPiB1bCA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gdWwubmF2LWRyb3AgPiAubmF2LWRyb3BfX3dyYXBwZXIgPiBsaS5jdXJyZW50LW1lbnUtYW5jZXN0b3IgPiBhIHN2ZywgLmhlYWRlcl9fYm90dG9tX19tZW51ID4gbmF2ID4gdWwgPiBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIHVsLm5hdi1kcm9wID4gLm5hdi1kcm9wX193cmFwcGVyID4gbGkuY3VycmVudC1jYXRlZ29yeS1hbmNlc3RvciA+IGEgc3ZnLCAuaGVhZGVyX19ib3R0b21fX21lbnUgPiBuYXYgPiB1bCA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gdWwubmF2LWRyb3AgPiAubmF2LWRyb3BfX3dyYXBwZXIgPiBsaS5jdXJyZW50LXBvc3QtYW5jZXN0b3IgPiBhIHN2ZywgLmhlYWRlcl9fYm90dG9tX19tZW51ID4gbmF2ID4gdWwgPiBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIHVsLm5hdi1kcm9wID4gLm5hdi1kcm9wX193cmFwcGVyID4gbGkuY3VycmVudC1wYWdlLWFuY2VzdG9yID4gYSBzdmcsIC5oZWFkZXJfX2JvdHRvbV9fbWVudSA+IG5hdiA+IHVsID4gbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiB1bC5uYXYtZHJvcCA+IC5uYXYtZHJvcF9fd3JhcHBlciA+IGxpLmlzLWFjdGl2ZSA+IGEgc3ZnIHtcbiAgICBzdHJva2U6IHZhcigtLWhlYWRlck1lbnVBY2NlbnRDb2xvciwgI0YwMCk7XG4gIH1cbiAgLmhlYWRlcl9fYm90dG9tX19tZW51ID4gbmF2ID4gdWwgPiBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIHVsLm5hdi1kcm9wID4gLm5hdi1kcm9wX193cmFwcGVyID4gbGkgPiBhOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0taGVhZGVyTWVudV9fc2ltcGxlTWVudUl0ZW1BY2NlbnRDb2xvciwgdmFyKC0taGVhZGVyTWVudUFjY2VudENvbG9yLCAjRjAwKSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taGVhZGVyTWVudV9fc2ltcGxlTWVudUl0ZW1CYWNrZ3JvdW5kQ29sb3IsIHRyYW5zcGFyZW50KTtcbiAgfVxuICAuaGVhZGVyX19ib3R0b21fX21lbnUgPiBuYXYgPiB1bCA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gdWwubmF2LWRyb3AgPiAubmF2LWRyb3BfX3dyYXBwZXIgPiBsaSA+IGE6Zm9jdXMgc3ZnIHtcbiAgICBzdHJva2U6IHZhcigtLWhlYWRlck1lbnVBY2NlbnRDb2xvciwgI0YwMCk7XG4gIH1cbn1cblxuLmhlYWRlcl9fc2VhcmNoQmFyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogdmFyKC0tc2VhcmNoQmFyWmluZGV4LCA1MCk7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGNvbG9yOiB2YXIoLS1zZWFyY2hCYXJDb2xvciwgI0ZGRik7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1zZWFyY2hCYXJQYWRkaW5nVG9wLCAxLjI1cmVtKTtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXNlYXJjaEJhclBhZGRpbmdCb3R0b20sIDEuMjVyZW0pO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zZWFyY2hCYXJCYWNrZ3JvdW5kQ29sb3IsICMwMDApO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBjdWJpYy1iZXppZXIoMC4yNSwgMC4xLCAwLjI1LCAxKTtcbn1cblxuLmhlYWRlcl9fc2VhcmNoQmFyIHN2ZyBwYXRoLFxuLmhlYWRlcl9fc2VhcmNoQmFyIHN2ZyBwb2x5Z29uIHtcbiAgZmlsbDogI0ZGRjtcbn1cblxuLnNlYXJjaEJhck92ZXJsYXkge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IHZhcigtLXNlYXJjaEJhck92ZXJsYXlaaW5kZXgsIDUwKTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBvcGFjaXR5OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zZWFyY2hCYXJPdmVybGF5QmFja2dyb3VuZENvbG9yLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCkpO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgY3ViaWMtYmV6aWVyKDAuMjUsIDAuMSwgMC4yNSwgMSk7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG5ib2R5LnNlYXJjaEJhcklzQWN0aXZlIC5oZWFkZXJfX3NlYXJjaEJhciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbn1cblxuYm9keS5zZWFyY2hCYXJJc0FjdGl2ZSAuc2VhcmNoQmFyT3ZlcmxheSB7XG4gIG9wYWNpdHk6IDE7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xufVxuXG5ib2R5LnNlYXJjaEJhcklzQWN0aXZlIC5oZWFkZXJfX3Jlc3BvbnNpdmVNZW51LFxuYm9keS5zZWFyY2hCYXJJc0FjdGl2ZSAucmVzcG9uc2l2ZU1lbnVPdmVybGF5IHtcbiAgb3BhY2l0eTogMCAhaW1wb3J0YW50O1xuICBwb2ludGVyLWV2ZW50czogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uc2VhcmNoRm9ybSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uc2VhcmNoRm9ybSA+IGRpdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uc2VhcmNoRm9ybV9fbGFiZWwge1xuICBmb250LXNpemU6IHZhcigtLXNlYXJjaEZvcm1MYWJlbEZvbnRTaXplLCB2YXIoLS1zZWFyY2hCYXJGb250U2l6ZSwgMXJlbSkpO1xuICBmb250LXdlaWdodDogdmFyKC0tc2VhcmNoRm9ybUxhYmVsRm9udFdlaWdodCwgdmFyKC0tc2VhcmNoQmFyRm9udFdlaWdodCwgNDAwKSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1zZWFyY2hGb3JtTGFiZWxMaW5lSGVpZ2h0LCB2YXIoLS1zZWFyY2hCYXJMaW5lSGVpZ2h0LCAxKSk7XG4gIHRleHQtdHJhbnNmb3JtOiB2YXIoLS1zZWFyY2hGb3JtTGFiZWxUZXh0VHJhbnNmb3JtLCB2YXIoLS1zZWFyY2hCYXJUZXh0VHJhbnNmb3JtLCBub25lKSk7XG59XG5cbi5zZWFyY2hGb3JtX19pbnB1dCB7XG4gIGZsZXg6IDE7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IHZhcigtLXNlYXJjaEZvcm1JbnB1dE1heFdpZHRoLCAzMy43NXJlbSk7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tc2VhcmNoRm9ybUlucHV0TWFyZ2luUmlnaHQsIDAuNjI1cmVtKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc2VhcmNoRm9ybUlucHV0TWFyZ2luQm90dG9tLCAtMC4yNXJlbSk7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1zZWFyY2hGb3JtSW5wdXRNYXJnaW5MZWZ0LCAwLjYyNXJlbSk7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zZWFyY2hGb3JtSW5wdXRQYWRkaW5nQm90dG9tLCAwLjYyNXJlbSk7XG4gIGJvcmRlci1ib3R0b206IHZhcigtLXNlYXJjaEZvcm1JbnB1dEJvcmRlckhlaWdodCwgM3B4KSBzb2xpZCB2YXIoLS1zZWFyY2hGb3JtSW5wdXRCb3JkZXJDb2xvciwgI0ZGRik7XG59XG5cbi5zZWFyY2hGb3JtX19pbnB1dCwgLnNlYXJjaEZvcm1fX2lucHV0OjpwbGFjZWhvbGRlciB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1zZWFyY2hGb3JtSW5wdXRGb250RmFtaWx5LCB2YXIoLS1mb250RmFtaWx5LCBBcmlhbCwgc2Fucy1zZXJpZikpO1xuICBmb250LXNpemU6IHZhcigtLXNlYXJjaEZvcm1JbnB1dEZvblNpemUsIHZhcigtLWZvbnRTaXplLCAxcmVtKSk7XG4gIGNvbG9yOiB2YXIoLS1zZWFyY2hGb3JtSW5wdXRDb2xvciwgdmFyKC0tc2VhcmNoQmFyQ29sb3IsIHZhcigtLXRleHRDb2xvciwgI0ZGRikpKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLXNlYXJjaEZvcm1JbnB1dEZvbnRXZWlnaHQsIHZhcigtLXNlYXJjaEJhckZvbnRXZWlnaHQsIHZhcigtLWZvbnRXZWlnaHQsIDQwMCkpKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLXNlYXJjaEZvcm1JbnB1dExpbmVIZWlnaHQsIHZhcigtLXNlYXJjaEJhckxpbmVIZWlnaHQsIDEuMikpO1xufVxuXG4uc2VhcmNoRm9ybV9fc3VibWl0IHtcbiAgZmxleC1zaHJpbms6IDA7XG59XG5cbi5zZWFyY2hGb3JtX19jbG9zZTpub3QoOmZvY3VzKSB7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIG1hcmdpbjogLTFweDtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4uc2VhcmNoRm9ybV9fY2xvc2U6Zm9jdXMge1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiB2YXIoLS1jb250YWluZXJHdXR0ZXIpO1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbn1cblxuLnNlYXJjaEZvcm1fX2Nsb3NlOmZvY3VzIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDI1cHg7XG4gIGhlaWdodDogM3B4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgbWFyZ2luOiBhdXRvO1xuICBib3JkZXItcmFkaXVzOiAyNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xufVxuXG4uc2VhcmNoRm9ybV9fY2xvc2U6Zm9jdXMgc3BhbjpudGgtY2hpbGQoMSkge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG5cbi5zZWFyY2hGb3JtX19jbG9zZTpmb2N1cyBzcGFuOm50aC1jaGlsZCgyKSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG59XG5cbi5oZWFkZXJfX2JvdHRvbV9fYWN0aW9ucyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5oZWFkZXJfX2JvdHRvbV9fYWN0aW9ucyA+ICogKyAqIHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLWhlYWRlckFjdGlvbnNJdGVtc0dhcCwgMC42MjVyZW0pO1xufVxuXG4uaGVhZGVyX19ib3R0b21fX2FjdGlvbnNfX3NlYXJjaCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmhlYWRlcl9fYm90dG9tX19hY3Rpb25zX19zZWFyY2ggc3ZnIHtcbiAgd2lkdGg6IHZhcigtLWhlYWRlckFjdGlvbnNTZWFyY2hXaWR0aCwgMS41NjI1cmVtKTtcbiAgaGVpZ2h0OiB2YXIoLS1oZWFkZXJBY3Rpb25zU2VhcmNoSGVpZ2h0LCAxLjU2MjVyZW0pO1xufVxuXG4uaGVhZGVyX19ib3R0b21fX2FjdGlvbnNfX3NlYXJjaCBzdmcgcGF0aCB7XG4gIHRyYW5zaXRpb246IGZpbGwgMC4zcztcbiAgZmlsbDogdmFyKC0taGVhZGVyQWN0aW9uc1NlYXJjaENvbG9yLCB2YXIoLS1oZWFkZXJNZW51Q29sb3IsICMwMDApKTtcbn1cblxuLmhlYWRlcl9fYm90dG9tX19hY3Rpb25zX19zZWFyY2g6aG92ZXIgc3ZnIHBhdGgsIC5oZWFkZXJfX2JvdHRvbV9fYWN0aW9uc19fc2VhcmNoOmZvY3VzIHN2ZyBwYXRoIHtcbiAgZmlsbDogdmFyKC0taGVhZGVyQWN0aW9uc1NlYXJjaEFjY2VudENvbG9yLCB2YXIoLS1oZWFkZXJNZW51QWNjZW50Q29sb3IsICNGMDApKTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTAwcHgpIHtcbiAgLmhlYWRlcl9fYm90dG9tX19hY3Rpb25zX19tZW51IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTAwcHgpIHtcbiAgLmhlYWRlcl9fcmVzcG9uc2l2ZU1lbnUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDk5cHgpIHtcbiAgLmhlYWRlcl9fcmVzcG9uc2l2ZU1lbnUgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgaGVpZ2h0OiB2YXIoLS1yZXNwb25zaXZlTWVudURyb3Bkb3duVG9nZ2xlTWluV2lkdGgsIDEuMjVyZW0pO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvcGFjaXR5OiB2YXIoLS1yZXNwb25zaXZlTWVudURyb3Bkb3duVG9nZ2xlT3BhY2l0eSwgdmFyKC0tcmVzcG9uc2l2ZU1lbnVPcGFjaXR5LCAxKSk7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuM3M7XG4gIH1cbiAgLmhlYWRlcl9fcmVzcG9uc2l2ZU1lbnUgLmRyb3Bkb3duLXRvZ2dsZSA+ICoge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXJlc3BvbnNpdmVNZW51RHJvcGRvd25Ub2dnbGVDb2xvciwgdmFyKC0tcmVzcG9uc2l2ZU1lbnVJdGVtQ29sb3IsIHZhcigtLXJlc3BvbnNpdmVNZW51Q29sb3IsICMwMDApKSk7XG4gIH1cbiAgLmhlYWRlcl9fcmVzcG9uc2l2ZU1lbnUgLmRyb3Bkb3duLXRvZ2dsZSA+ICo6Zmlyc3QtY2hpbGQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMnB4O1xuICB9XG4gIC5oZWFkZXJfX3Jlc3BvbnNpdmVNZW51IC5kcm9wZG93bi10b2dnbGUgPiAqOmxhc3QtY2hpbGQge1xuICAgIHdpZHRoOiAycHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzO1xuICB9XG4gIC5oZWFkZXJfX3Jlc3BvbnNpdmVNZW51IC5kcm9wZG93bi10b2dnbGVbYXJpYS1leHBhbmRlZD1cInRydWVcIl0ge1xuICAgIG9wYWNpdHk6IHZhcigtLXJlc3BvbnNpdmVNZW51RHJvcGRvd25Ub2dnbGVBY2NlbnRPcGFjaXR5LCB2YXIoLS1yZXNwb25zaXZlTWVudUFjY2VudE9wYWNpdHksIDEpKTtcbiAgfVxuICAuaGVhZGVyX19yZXNwb25zaXZlTWVudSAuZHJvcGRvd24tdG9nZ2xlW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdID4gKiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcmVzcG9uc2l2ZU1lbnVEcm9wZG93blRvZ2dsZUFjdGl2ZUNvbG9yLCB2YXIoLS1yZXNwb25zaXZlTWVudUl0ZW1BY2NlbnRDb2xvciwgdmFyKC0tcmVzcG9uc2l2ZU1lbnVBY2NlbnRDb2xvciwgI0YwMCkpKTtcbiAgfVxuICAuaGVhZGVyX19yZXNwb25zaXZlTWVudSAuZHJvcGRvd24tdG9nZ2xlW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdID4gKjpsYXN0LWNoaWxkIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gIH1cbiAgLmhlYWRlcl9fcmVzcG9uc2l2ZU1lbnUge1xuICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSB2YXIoLS1oZWFkZXJIZWlnaHQsIDBweCkgLSB2YXIoLS1yZXNwb25zaXZlTWVudU1heEhlaWdodCwgMTB2aCkpO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB6LWluZGV4OiB2YXIoLS1yZXNwb25zaXZlTWVudVppbmRleCwgOTkpO1xuICAgIHRvcDogdmFyKC0taGVhZGVySGVpZ2h0LCAwcHgpO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgZm9udC1zaXplOiB2YXIoLS1yZXNwb25zaXZlTWVudUZvbnRTaXplLCAxcmVtKTtcbiAgICBwYWRkaW5nLXRvcDogY2FsYyh2YXIoLS1yZXNwb25zaXZlTWVudVBhZGRpbmdUb3AsIDEuMjVyZW0pIC0gKHZhcigtLXJlc3BvbnNpdmVNZW51Rmlyc3RMZXZlbEdhcCwgMC42MjVyZW0pIC8gMikpO1xuICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKHZhcigtLXJlc3BvbnNpdmVNZW51UGFkZGluZ0JvdHRvbSwgMS4yNXJlbSkgLSAodmFyKC0tcmVzcG9uc2l2ZU1lbnVGaXJzdExldmVsR2FwLCAwLjYyNXJlbSkgLyAyKSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcmVzcG9uc2l2ZU1lbnVCYWNrZ3JvdW5kQ29sb3IsICNGRkYpO1xuICAgIGJveC1zaGFkb3c6IHZhcigtLXJlc3BvbnNpdmVNZW51Qm94U2hhZG93LCBub25lKTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC40cyBjdWJpYy1iZXppZXIoMC40MiwgMCwgMC41OCwgMSk7XG4gICAgYm9yZGVyLWxlZnQ6IHZhcigtLXJlc3BvbnNpdmVNZW51Qm9yZGVyTGVmdFdpZHRoLCAwKSBzb2xpZCB2YXIoLS1yZXNwb25zaXZlTWVudUJvcmRlckxlZnRDb2xvciwgIzAwMCk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCBjYWxjKC0xMDAlIC0gdmFyKC0taGVhZGVySGVpZ2h0LCAwcHgpKSwgMCk7XG4gIH1cbiAgYm9keS5hZG1pbi1iYXIgLmhlYWRlcl9fcmVzcG9uc2l2ZU1lbnUge1xuICAgIHRvcDogY2FsYyh2YXIoLS1oZWFkZXJIZWlnaHQsIDBweCkgKyA0NnB4KTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwOTlweCkgYW5kIChtaW4td2lkdGg6IDc4M3B4KSB7XG4gIGJvZHkuYWRtaW4tYmFyIC5oZWFkZXJfX3Jlc3BvbnNpdmVNZW51IHtcbiAgICB0b3A6IGNhbGModmFyKC0taGVhZGVySGVpZ2h0LCAwcHgpICsgMzJweCk7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDk5cHgpIHtcbiAgYm9keS5yZXNwb25zaXZlTWVudUlzT3BlbiAuaGVhZGVyX19yZXNwb25zaXZlTWVudSB7XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwOTlweCkge1xuICAuaGVhZGVyX19yZXNwb25zaXZlTWVudSA+IHVsID4gbGkge1xuICAgIHBhZGRpbmc6IDAgdmFyKC0tY29udGFpbmVyR3V0dGVyKTtcbiAgfVxuICAuaGVhZGVyX19yZXNwb25zaXZlTWVudSA+IHVsID4gbGkgPiAqOmZpcnN0LWNoaWxkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IHZhcigtLXJlc3BvbnNpdmVNZW51SXRlbUZvbnRTaXplLCB2YXIoLS1yZXNwb25zaXZlTWVudUZvbnRTaXplLCAxcmVtKSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLXJlc3BvbnNpdmVNZW51SXRlbUxpbmVIZWlnaHQsIHZhcigtLXJlc3BvbnNpdmVNZW51TGluZUhlaWdodCwgMSkpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1yZXNwb25zaXZlTWVudUl0ZW1Gb250V2VpZ2h0LCB2YXIoLS1yZXNwb25zaXZlTWVudUZvbnRXZWlnaHQsIDQwMCkpO1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1yZXNwb25zaXZlTWVudUl0ZW1MZXR0ZXJTcGFjaW5nLCB2YXIoLS1yZXNwb25zaXZlTWVudUxldHRlclNwYWNpbmcsIDApKTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdmFyKC0tcmVzcG9uc2l2ZU1lbnVJdGVtVGV4dFRyYW5zZm9ybSwgdmFyKC0tcmVzcG9uc2l2ZU1lbnVUZXh0VHJhbnNmb3JtLCBub25lKSk7XG4gICAgY29sb3I6IHZhcigtLXJlc3BvbnNpdmVNZW51SXRlbUNvbG9yLCB2YXIoLS1yZXNwb25zaXZlTWVudUNvbG9yLCAjMDAwKSk7XG4gICAgb3BhY2l0eTogdmFyKC0tcmVzcG9uc2l2ZU1lbnVJdGVtT3BhY2l0eSwgdmFyKC0tcmVzcG9uc2l2ZU1lbnVPcGFjaXR5LCAxKSk7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgMC4zcywgb3BhY2l0eSAwLjNzO1xuICAgIHBhZGRpbmctdG9wOiBjYWxjKCh2YXIoLS1yZXNwb25zaXZlTWVudUZpcnN0TGV2ZWxHYXAsIDAuNjI1cmVtKSAvIDIpICsgMnB4KTtcbiAgICBwYWRkaW5nLWJvdHRvbTogY2FsYyh2YXIoLS1yZXNwb25zaXZlTWVudUZpcnN0TGV2ZWxHYXAsIDAuNjI1cmVtKSAvIDIpO1xuICB9XG4gIC5oZWFkZXJfX3Jlc3BvbnNpdmVNZW51ID4gdWwgPiBsaS5jdXJyZW50LW1lbnUtaXRlbSA+ICo6Zmlyc3QtY2hpbGQsIC5oZWFkZXJfX3Jlc3BvbnNpdmVNZW51ID4gdWwgPiBsaS5jdXJyZW50LW1lbnUtYW5jZXN0b3IgPiAqOmZpcnN0LWNoaWxkLCAuaGVhZGVyX19yZXNwb25zaXZlTWVudSA+IHVsID4gbGkuY3VycmVudC1jYXRlZ29yeS1hbmNlc3RvciA+ICo6Zmlyc3QtY2hpbGQsIC5oZWFkZXJfX3Jlc3BvbnNpdmVNZW51ID4gdWwgPiBsaS5jdXJyZW50LXBvc3QtYW5jZXN0b3IgPiAqOmZpcnN0LWNoaWxkLCAuaGVhZGVyX19yZXNwb25zaXZlTWVudSA+IHVsID4gbGkuY3VycmVudC1wYWdlLWFuY2VzdG9yID4gKjpmaXJzdC1jaGlsZCwgLmhlYWRlcl9fcmVzcG9uc2l2ZU1lbnUgPiB1bCA+IGxpLmlzQWN0aXZlID4gKjpmaXJzdC1jaGlsZCB7XG4gICAgY29sb3I6IHZhcigtLXJlc3BvbnNpdmVNZW51SXRlbUFjY2VudENvbG9yLCB2YXIoLS1yZXNwb25zaXZlTWVudUFjY2VudENvbG9yLCAjRjAwKSk7XG4gICAgb3BhY2l0eTogdmFyKC0tcmVzcG9uc2l2ZU1lbnVJdGVtQWNjZW50T3BhY2l0eSwgdmFyKC0tcmVzcG9uc2l2ZU1lbnVBY2NlbnRPcGFjaXR5LCAxKSk7XG4gIH1cbiAgLmhlYWRlcl9fcmVzcG9uc2l2ZU1lbnUgPiB1bCA+IGxpICsgbGkge1xuICAgIGJvcmRlci10b3A6IHZhcigtLXJlc3BvbnNpdmVNZW51Qm9yZGVyV2lkdGgsIDApIHNvbGlkIHZhcigtLXJlc3BvbnNpdmVNZW51Qm9yZGVyQ29sb3IsICMwMDApO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTA5OXB4KSB7XG4gIC5oZWFkZXJfX3Jlc3BvbnNpdmVNZW51IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4ge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcIm1lbnUtaXRlbSBkcm9wZG93bi10b2dnbGVcIiBcImRyb3Bkb3duIGRyb3Bkb3duXCI7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIDFmcjtcbiAgICBncmlkLWNvbHVtbi1nYXA6IHZhcigtLXJlc3BvbnNpdmVNZW51SXRlbXNJbm5lckdhcCwgMy43NXJlbSk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG4gIC5oZWFkZXJfX3Jlc3BvbnNpdmVNZW51IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiAqOmZpcnN0LWNoaWxkIHtcbiAgICBncmlkLWFyZWE6IG1lbnUtaXRlbTtcbiAgfVxuICAuaGVhZGVyX19yZXNwb25zaXZlTWVudSBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgZ3JpZC1hcmVhOiBkcm9wZG93bi10b2dnbGU7XG4gICAgbWluLXdpZHRoOiB2YXIoLS1yZXNwb25zaXZlTWVudURyb3Bkb3duVG9nZ2xlTWluV2lkdGgsIDEuMjVyZW0pO1xuICAgIGp1c3RpZnktc2VsZjogZmxleC1lbmQ7XG4gIH1cbiAgLmhlYWRlcl9fcmVzcG9uc2l2ZU1lbnUgbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IC5kcm9wZG93bi10b2dnbGUgPiBzdmcge1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzO1xuICB9XG4gIC5oZWFkZXJfX3Jlc3BvbnNpdmVNZW51IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiAuZHJvcGRvd24tdG9nZ2xlID4gc3ZnIHBhdGgge1xuICAgIHRyYW5zaXRpb246IGZpbGwgMC4zcztcbiAgICBmaWxsOiB2YXIoLS1yZXNwb25zaXZlTWVudUNvbG9yLCAjMDAwKTtcbiAgfVxuICAuaGVhZGVyX19yZXNwb25zaXZlTWVudSBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gLm5hdi1kcm9wIHtcbiAgICBncmlkLWFyZWE6IGRyb3Bkb3duO1xuICB9XG4gIC5oZWFkZXJfX3Jlc3BvbnNpdmVNZW51IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4uaXNBY3RpdmUgPiAuZHJvcGRvd24tdG9nZ2xlID4gc3ZnIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gIH1cbiAgLmhlYWRlcl9fcmVzcG9uc2l2ZU1lbnUgbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbi5pc0FjdGl2ZSA+IC5kcm9wZG93bi10b2dnbGUgcGF0aCB7XG4gICAgZmlsbDogdmFyKC0tcmVzcG9uc2l2ZU1lbnVBY2NlbnRDb2xvciwgI0YwMCk7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDk5cHgpIHtcbiAgLmhlYWRlcl9fcmVzcG9uc2l2ZU1lbnUgLm5hdi1kcm9wIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcmVzcG9uc2l2ZU1lbnVTdWJNZW51UGFkZGluZ0xlZnQsIDAuNjI1cmVtKTtcbiAgfVxuICAuaGVhZGVyX19yZXNwb25zaXZlTWVudSA+IHVsID4gbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IC5uYXYtZHJvcCA+IC5uYXYtZHJvcF9fd3JhcHBlciB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tcmVzcG9uc2l2ZU1lbnVTdWJNZW51TWFyZ2luVG9wLCAwLjYyNXJlbSk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tcmVzcG9uc2l2ZU1lbnVTdWJNZW51TWFyZ2luQm90dG9tLCAwLjYyNXJlbSk7XG4gIH1cbiAgLmhlYWRlcl9fcmVzcG9uc2l2ZU1lbnUgPiB1bCA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiAubmF2LWRyb3AgPiAubmF2LWRyb3BfX3dyYXBwZXIgPiBsaSArIGxpIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1yZXNwb25zaXZlTWVudVN1Yk1lbnVHYXBCZXR3ZWVuSXRlbXMsIDAuNjI1cmVtKTtcbiAgfVxuICAuaGVhZGVyX19yZXNwb25zaXZlTWVudSA+IHVsID4gbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IC5uYXYtZHJvcCA+IC5uYXYtZHJvcF9fd3JhcHBlciBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gLm5hdi1kcm9wID4gLm5hdi1kcm9wX193cmFwcGVyIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1yZXNwb25zaXZlTWVudVN1Yk1lbnVUaXRsZURyb3Bkb3duTWVudU1hcmdpblRvcCwgMC42MjVyZW0pO1xuICB9XG4gIC5oZWFkZXJfX3Jlc3BvbnNpdmVNZW51ID4gdWwgPiBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gLm5hdi1kcm9wID4gLm5hdi1kcm9wX193cmFwcGVyIGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiAubmF2LWRyb3AgPiAubmF2LWRyb3BfX3dyYXBwZXIgbGkgKyBsaSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tcmVzcG9uc2l2ZU1lbnVTdWJNZW51R2FwQmV0d2Vlbkl0ZW1zSW5uZXIsIDAuNjI1cmVtKTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwOTlweCkge1xuICAuaGVhZGVyX19yZXNwb25zaXZlTWVudSA+IHVsID4gbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpub3QoLmlzTWVnYU1lbnUpID4gLm5hdi1kcm9wID4gLm5hdi1kcm9wX193cmFwcGVyLFxuICAuaGVhZGVyX19yZXNwb25zaXZlTWVudSA+IHVsID4gbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpub3QoLmlzTWVnYU1lbnUpID4gLm5hdi1kcm9wID4gLm5hdi1kcm9wX193cmFwcGVyIC5uYXYtZHJvcF9fd3JhcHBlciB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1yZXNwb25zaXZlTWVudUZvbnRTaXplRmFjdG9yLCAwLjkxMzA0ZW0pO1xuICB9XG4gIC5oZWFkZXJfX3Jlc3BvbnNpdmVNZW51ID4gdWwgPiBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOm5vdCguaXNNZWdhTWVudSkgPiAubmF2LWRyb3AgPiAubmF2LWRyb3BfX3dyYXBwZXIgbGk6bm90KC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuKSA+IGEge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tcmVzcG9uc2l2ZVN1Yk1lbnVJdGVtRm9udFNpemUsIHZhcigtLXJlc3BvbnNpdmVNZW51Rm9udFNpemUsIDFyZW0pKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tcmVzcG9uc2l2ZVN1Yk1lbnVJdGVtTGluZUhlaWdodCwgdmFyKC0tcmVzcG9uc2l2ZU1lbnVMaW5lSGVpZ2h0LCAxKSk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLXJlc3BvbnNpdmVTdWJNZW51SXRlbUZvbnRXZWlnaHQsIHZhcigtLXJlc3BvbnNpdmVNZW51Rm9udFdlaWdodCwgNDAwKSk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXJlc3BvbnNpdmVTdWJNZW51SXRlbUxldHRlclNwYWNpbmcsIHZhcigtLXJlc3BvbnNpdmVNZW51TGV0dGVyU3BhY2luZywgMCkpO1xuICAgIHRleHQtdHJhbnNmb3JtOiB2YXIoLS1yZXNwb25zaXZlU3ViTWVudUl0ZW1UZXh0VHJhbnNmb3JtLCB2YXIoLS1yZXNwb25zaXZlTWVudVRleHRUcmFuc2Zvcm0sIG5vbmUpKTtcbiAgICBjb2xvcjogdmFyKC0tcmVzcG9uc2l2ZVN1Yk1lbnVJdGVtQ29sb3IsIHZhcigtLXJlc3BvbnNpdmVNZW51Q29sb3IsICMwMDApKTtcbiAgICBvcGFjaXR5OiB2YXIoLS1yZXNwb25zaXZlU3ViTWVudUl0ZW1PcGFjaXR5LCB2YXIoLS1yZXNwb25zaXZlTWVudU9wYWNpdHksIDEpKTtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzLCBvcGFjaXR5IDAuM3M7XG4gIH1cbiAgLmhlYWRlcl9fcmVzcG9uc2l2ZU1lbnUgPiB1bCA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46bm90KC5pc01lZ2FNZW51KSA+IC5uYXYtZHJvcCA+IC5uYXYtZHJvcF9fd3JhcHBlciBsaS5jdXJyZW50LW1lbnUtaXRlbTpub3QoLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4pID4gYSwgLmhlYWRlcl9fcmVzcG9uc2l2ZU1lbnUgPiB1bCA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46bm90KC5pc01lZ2FNZW51KSA+IC5uYXYtZHJvcCA+IC5uYXYtZHJvcF9fd3JhcHBlciBsaS5jdXJyZW50LW1lbnUtYW5jZXN0b3I6bm90KC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuKSA+IGEsIC5oZWFkZXJfX3Jlc3BvbnNpdmVNZW51ID4gdWwgPiBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOm5vdCguaXNNZWdhTWVudSkgPiAubmF2LWRyb3AgPiAubmF2LWRyb3BfX3dyYXBwZXIgbGkuY3VycmVudC1jYXRlZ29yeS1hbmNlc3Rvcjpub3QoLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4pID4gYSwgLmhlYWRlcl9fcmVzcG9uc2l2ZU1lbnUgPiB1bCA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46bm90KC5pc01lZ2FNZW51KSA+IC5uYXYtZHJvcCA+IC5uYXYtZHJvcF9fd3JhcHBlciBsaS5jdXJyZW50LXBvc3QtYW5jZXN0b3I6bm90KC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuKSA+IGEsIC5oZWFkZXJfX3Jlc3BvbnNpdmVNZW51ID4gdWwgPiBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOm5vdCguaXNNZWdhTWVudSkgPiAubmF2LWRyb3AgPiAubmF2LWRyb3BfX3dyYXBwZXIgbGkuY3VycmVudC1wYWdlLWFuY2VzdG9yOm5vdCgubWVudS1pdGVtLWhhcy1jaGlsZHJlbikgPiBhLCAuaGVhZGVyX19yZXNwb25zaXZlTWVudSA+IHVsID4gbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpub3QoLmlzTWVnYU1lbnUpID4gLm5hdi1kcm9wID4gLm5hdi1kcm9wX193cmFwcGVyIGxpOm5vdCgubWVudS1pdGVtLWhhcy1jaGlsZHJlbikuaXNBY3RpdmUgPiBhIHtcbiAgICBjb2xvcjogdmFyKC0tcmVzcG9uc2l2ZVN1Yk1lbnVJdGVtQWNjZW50Q29sb3IsIHZhcigtLXJlc3BvbnNpdmVNZW51QWNjZW50Q29sb3IsICNGMDApKTtcbiAgICBvcGFjaXR5OiB2YXIoLS1yZXNwb25zaXZlU3ViTWVudUl0ZW1BY2NlbnRPcGFjaXR5LCB2YXIoLS1yZXNwb25zaXZlTWVudUFjY2VudE9wYWNpdHksIDEpKTtcbiAgfVxuICAuaGVhZGVyX19yZXNwb25zaXZlTWVudSA+IHVsID4gbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpub3QoLmlzTWVnYU1lbnUpID4gLm5hdi1kcm9wID4gLm5hdi1kcm9wX193cmFwcGVyIGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiBhIHtcbiAgICBmb250LXNpemU6IHZhcigtLXJlc3BvbnNpdmVTdWJNZW51SXRlbUZvbnRTaXplLCB2YXIoLS1yZXNwb25zaXZlTWVudUZvbnRTaXplLCAxcmVtKSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLXJlc3BvbnNpdmVTdWJNZW51SXRlbUxpbmVIZWlnaHQsIHZhcigtLXJlc3BvbnNpdmVNZW51TGluZUhlaWdodCwgMSkpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1yZXNwb25zaXZlU3ViTWVudUl0ZW1Gb250V2VpZ2h0LCB2YXIoLS1yZXNwb25zaXZlTWVudUZvbnRXZWlnaHQsIDQwMCkpO1xuICAgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1yZXNwb25zaXZlU3ViTWVudUl0ZW1MZXR0ZXJTcGFjaW5nLCB2YXIoLS1yZXNwb25zaXZlTWVudUxldHRlclNwYWNpbmcsIDApKTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdmFyKC0tcmVzcG9uc2l2ZVN1Yk1lbnVJdGVtVGV4dFRyYW5zZm9ybSwgdmFyKC0tcmVzcG9uc2l2ZU1lbnVUZXh0VHJhbnNmb3JtLCBub25lKSk7XG4gICAgY29sb3I6IHZhcigtLXJlc3BvbnNpdmVTdWJNZW51SXRlbUNvbG9yLCB2YXIoLS1yZXNwb25zaXZlTWVudUNvbG9yLCAjMDAwKSk7XG4gICAgb3BhY2l0eTogdmFyKC0tcmVzcG9uc2l2ZVN1Yk1lbnVJdGVtT3BhY2l0eSwgdmFyKC0tcmVzcG9uc2l2ZU1lbnVPcGFjaXR5LCAxKSk7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgMC4zcywgb3BhY2l0eSAwLjNzO1xuICB9XG4gIC5oZWFkZXJfX3Jlc3BvbnNpdmVNZW51ID4gdWwgPiBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOm5vdCguaXNNZWdhTWVudSkgPiAubmF2LWRyb3AgPiAubmF2LWRyb3BfX3dyYXBwZXIgbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IGE6bm90KFtocmVmXSkge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tcmVzcG9uc2l2ZU1lbnVTdWJNZW51VGl0bGVXaXRob3V0TGlua0ZvbnRTaXplLCB2YXIoLS1yZXNwb25zaXZlTWVudUZvbnRTaXplLCAxcmVtKSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLXJlc3BvbnNpdmVNZW51U3ViTWVudVRpdGxlV2l0aG91dExpbmtMaW5lSGVpZ2h0LCB2YXIoLS1yZXNwb25zaXZlTWVudUxpbmVIZWlnaHQsIDEpKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tcmVzcG9uc2l2ZU1lbnVTdWJNZW51VGl0bGVXaXRob3V0TGlua0ZvbnRXZWlnaHQsIHZhcigtLXJlc3BvbnNpdmVNZW51Rm9udFdlaWdodCwgNDAwKSk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXJlc3BvbnNpdmVNZW51U3ViTWVudVRpdGxlV2l0aG91dExpbmtMZXR0ZXJTcGFjaW5nLCB2YXIoLS1yZXNwb25zaXZlTWVudUxldHRlclNwYWNpbmcsIDApKTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdmFyKC0tcmVzcG9uc2l2ZU1lbnVTdWJNZW51VGl0bGVXaXRob3V0TGlua1RleHRUcmFuc2Zvcm0sIHZhcigtLXJlc3BvbnNpdmVNZW51VGV4dFRyYW5zZm9ybSwgbm9uZSkpO1xuICAgIGNvbG9yOiB2YXIoLS1yZXNwb25zaXZlTWVudVN1Yk1lbnVUaXRsZVdpdGhvdXRMaW5rQ29sb3IsIHZhcigtLXJlc3BvbnNpdmVNZW51Q29sb3IsICMwMDApKTtcbiAgICBvcGFjaXR5OiB2YXIoLS1yZXNwb25zaXZlTWVudVN1Yk1lbnVUaXRsZVdpdGhvdXRMaW5rT3BhY2l0eSwgdmFyKC0tcmVzcG9uc2l2ZU1lbnVPcGFjaXR5LCAxKSk7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgMC4zcywgb3BhY2l0eSAwLjNzO1xuICB9XG4gIC5oZWFkZXJfX3Jlc3BvbnNpdmVNZW51ID4gdWwgPiBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOm5vdCguaXNNZWdhTWVudSkgPiAubmF2LWRyb3AgPiAubmF2LWRyb3BfX3dyYXBwZXIgbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbi5jdXJyZW50LW1lbnUtaXRlbSA+IGEsIC5oZWFkZXJfX3Jlc3BvbnNpdmVNZW51ID4gdWwgPiBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOm5vdCguaXNNZWdhTWVudSkgPiAubmF2LWRyb3AgPiAubmF2LWRyb3BfX3dyYXBwZXIgbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbi5jdXJyZW50LW1lbnUtYW5jZXN0b3IgPiBhLCAuaGVhZGVyX19yZXNwb25zaXZlTWVudSA+IHVsID4gbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpub3QoLmlzTWVnYU1lbnUpID4gLm5hdi1kcm9wID4gLm5hdi1kcm9wX193cmFwcGVyIGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4uY3VycmVudC1jYXRlZ29yeS1hbmNlc3RvciA+IGEsIC5oZWFkZXJfX3Jlc3BvbnNpdmVNZW51ID4gdWwgPiBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOm5vdCguaXNNZWdhTWVudSkgPiAubmF2LWRyb3AgPiAubmF2LWRyb3BfX3dyYXBwZXIgbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbi5jdXJyZW50LXBvc3QtYW5jZXN0b3IgPiBhLCAuaGVhZGVyX19yZXNwb25zaXZlTWVudSA+IHVsID4gbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpub3QoLmlzTWVnYU1lbnUpID4gLm5hdi1kcm9wID4gLm5hdi1kcm9wX193cmFwcGVyIGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4uY3VycmVudC1wYWdlLWFuY2VzdG9yID4gYSwgLmhlYWRlcl9fcmVzcG9uc2l2ZU1lbnUgPiB1bCA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46bm90KC5pc01lZ2FNZW51KSA+IC5uYXYtZHJvcCA+IC5uYXYtZHJvcF9fd3JhcHBlciBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuLmlzQWN0aXZlID4gYSB7XG4gICAgY29sb3I6IHZhcigtLXJlc3BvbnNpdmVNZW51U3ViTWVudVRpdGxlV2l0aG91dExpbmtBY2NlbnRDb2xvciwgdmFyKC0tcmVzcG9uc2l2ZU1lbnVBY2NlbnRDb2xvciwgI0YwMCkpO1xuICAgIG9wYWNpdHk6IHZhcigtLXJlc3BvbnNpdmVNZW51U3ViTWVudVRpdGxlV2l0aG91dExpbmtBY2NlbnRPcGFjaXR5LCB2YXIoLS1yZXNwb25zaXZlTWVudUFjY2VudE9wYWNpdHksIDEpKTtcbiAgfVxufVxuXG4ucmVzcG9uc2l2ZU1lbnVPdmVybGF5IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDk5cHgpIHtcbiAgLnJlc3BvbnNpdmVNZW51T3ZlcmxheSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB6LWluZGV4OiB2YXIoLS1yZXNwb25zaXZlTWVudU92ZXJsYXlaaW5kZXgsIDUwKTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1yZXNwb25zaXZlTWVudU92ZXJsYXlCYWNrZ3JvdW5kQ29sb3IsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KSk7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGN1YmljLWJlemllcigwLjI1LCAwLjEsIDAuMjUsIDEpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG4gIGJvZHkucmVzcG9uc2l2ZU1lbnVJc09wZW4gLnJlc3BvbnNpdmVNZW51T3ZlcmxheSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgfVxufVxuXG4uY2FsbFRvQWN0aW9ucyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IHZhcigtLWNhbGxUb0FjdGlvbnNIZWlnaHQsIDMuMTI1cmVtKTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiB2YXIoLS1jYWxsVG9BY3Rpb25zWmluZGV4LCA1MCk7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNhbGxUb0FjdGlvbnNCYWNrZ3JvdW5kQ29sb3IsICMwMDApO1xuICBib3gtc2hhZG93OiB2YXIoLS1jYWxsVG9BY3Rpb25zQm94U2hhZG93LCBub25lKTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTAwcHgpIHtcbiAgLmNhbGxUb0FjdGlvbnMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmNhbGxUb0FjdGlvbnMgPiAqIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgZmxleDogMTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uY2FsbFRvQWN0aW9ucyA+ICogKyAqIHtcbiAgYm9yZGVyLWxlZnQ6IHZhcigtLWNhbGxUb0FjdGlvbnNCb3JkZXJMZWZ0V2lkdGgsIDFweCkgc29saWQgdmFyKC0tY2FsbFRvQWN0aW9uc0JvcmRlckxlZnRDb2xvciwgI0ZGRik7XG59XG5cbi5jYWxsVG9BY3Rpb25zID4gKiBzdmcgcGF0aCxcbi5jYWxsVG9BY3Rpb25zID4gKiBzdmcgcG9seWdvbiB7XG4gIGZpbGw6IHZhcigtLWNhbGxUb0FjdGlvbnNMb2dvQ29sb3IsICNGRkYpO1xufVxuXG4uY29tbWVudHNCbG9jayA+IC5jb21tZW50c0Jsb2NrX19jb21tZW50c0NvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbW1lbnRzQmxvY2tCYWNrZ3JvdW5kQ29sb3IsICNGM0YzRjMpO1xuICBwYWRkaW5nLXRvcDogY2FsYygxLjQwNjI1cmVtICsgMS44NzV2dyk7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDEuNDA2MjVyZW0gKyAxLjg3NXZ3KTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuY29tbWVudHNCbG9jayA+IC5jb21tZW50c0Jsb2NrX19jb21tZW50c0NvbnRhaW5lciB7XG4gICAgcGFkZGluZy10b3A6IDIuODEyNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5jb21tZW50c0Jsb2NrID4gLmNvbW1lbnRzQmxvY2tfX2NvbW1lbnRzQ29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMi44MTI1cmVtO1xuICB9XG59XG5cbi5jb21tZW50c0Jsb2NrIHtcbiAgbWFyZ2luLXRvcDogY2FsYygxLjc1cmVtICsgNnZ3KTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuY29tbWVudHNCbG9jayB7XG4gICAgbWFyZ2luLXRvcDogNi4yNXJlbTtcbiAgfVxufVxuXG4uY29tbWVudHNCbG9ja19fY29tbWVudHMgPiAqICsgKiB7XG4gIG1hcmdpbi10b3A6IDAuOTM3NXJlbTtcbn1cblxuLmNvbW1lbnRzQmxvY2tzX19jb21tZW50ID4gKiArICoge1xuICBtYXJnaW4tdG9wOiAwLjkzNzVyZW07XG59XG5cbi5jb21tZW50c0Jsb2Nrc19fY29tbWVudF9fcmVwbGllcyA+ICogKyAqIHtcbiAgbWFyZ2luLXRvcDogMC45Mzc1cmVtO1xufVxuXG4uY29tbWVudHNCbG9jay0tcGFnZWQ6bm90KC5pc0FjdGl2ZSkgLmNvbW1lbnRzQmxvY2tfX3dyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jb21tZW50c0Jsb2NrLS1wYWdlZDpub3QoLmlzQWN0aXZlKSAuY29tbWVudHNCbG9ja19fd3JhcHBlcjo6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiBjYWxjKDUwJSAtIDUwdncpO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI0MSwgMjQxLCAyNDEsIDApIDAlLCAjRjFGMUYxIDkwJSk7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4uY29tbWVudHNCbG9jay0tcGFnZWQ6bm90KC5pc0FjdGl2ZSkgLmNvbW1lbnRzQmxvY2tfX2NvbW1lbnRzIHtcbiAgbWF4LWhlaWdodDogdmFyKC0tY29tbWVudHNQYWdlZE1heEhlaWdodCwgNTByZW0pO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uY29tbWVudHNCbG9ja19fdGl0bGUge1xuICB0ZXh0LWFsaWduOiB2YXIoLS1jb21tZW50c0Jsb2NrVGl0bGVUZXh0QWxpZ24sIGNlbnRlcik7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoMS4zNDM3NXJlbSArIDEuMTI1dncpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5jb21tZW50c0Jsb2NrX190aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMi4xODc1cmVtO1xuICB9XG59XG5cbi5jb21tZW50c0Jsb2NrX190aXRsZSA+ICo6Zmlyc3QtY2hpbGQge1xuICBmb250LWZhbWlseTogdmFyKC0tY29tbWVudHNCbG9ja1RpdGxlRm9udEZhbWlseSwgdmFyKC0tZm9udEZhbWlseSwgQXJpYWwsIHNhbnMtc2VyaWYpKTtcbiAgZm9udC1zaXplOiBjYWxjKDEuMjgxMjVyZW0gKyAwLjM3NXZ3KTtcbiAgY29sb3I6IHZhcigtLWNvbW1lbnRzQmxvY2tUaXRsZUNvbG9yLCAjMDAwKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWNvbW1lbnRzQmxvY2tUaXRsZUZvbnRXZWlnaHQsIDcwMCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1jb21tZW50c0Jsb2NrVGl0bGVMaW5lSGVpZ2h0LCAxLjIpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5jb21tZW50c0Jsb2NrX190aXRsZSA+ICo6Zmlyc3QtY2hpbGQge1xuICAgIGZvbnQtc2l6ZTogMS41NjI1cmVtO1xuICB9XG59XG5cbi5jb21tZW50c0Jsb2Nrc19fY29tbWVudF9fY29udGVudCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtYXJlYXM6IFwiYXZhdGFyXCIgXCJjb250ZW50XCI7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICBncmlkLWdhcDogdmFyKC0tY29tbWVudElubmVyR2FwLCAxLjU2MjVyZW0pO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb21tZW50QmFja2dyb3VuZENvbG9yLCAjRkZGKTtcbiAgcGFkZGluZzogMS4yNXJlbSBjYWxjKDEuMjgxMjVyZW0gKyAwLjM3NXZ3KSAxLjI1cmVtIGNhbGMoMS4yODEyNXJlbSArIDAuMzc1dncpO1xuICBib3gtc2hhZG93OiB2YXIoLS1jb21tZW50Qm94U2hhZG93LCAwIDRweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4wNSkpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5jb21tZW50c0Jsb2Nrc19fY29tbWVudF9fY29udGVudCB7XG4gICAgcGFkZGluZzogMS4yNXJlbSAxLjU2MjVyZW0gMS4yNXJlbSAxLjU2MjVyZW07XG4gIH1cbn1cblxuLmNvbW1lbnRzQmxvY2tzX19jb21tZW50X19hdmF0YXIge1xuICBncmlkLWFyZWE6IGF2YXRhcjtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jb21tZW50c0Jsb2Nrc19fY29tbWVudF9fYXZhdGFyIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1jb21tZW50QXZhdGFyQm9yZGVyUmFkaXVzLCAxMDAlKTtcbn1cblxuLmNvbW1lbnRzQmxvY2tzX19jb21tZW50X19pbm5lciB7XG4gIGdyaWQtYXJlYTogY29udGVudDtcbn1cblxuLmNvbW1lbnRzQmxvY2tzX19jb21tZW50X19hdXRob3Ige1xuICBmb250LWZhbWlseTogdmFyKC0tY29tbWVudEF1dGhvckZvbnRGYW1pbHksIHZhcigtLWZvbnRGYW1pbHksIEFyaWFsLCBzYW5zLXNlcmlmKSk7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGNvbG9yOiB2YXIoLS1jb21tZW50QXV0aG9yQ29sb3IsICMwMDApO1xuICBmb250LXdlaWdodDogdmFyKC0tY29tbWVudEF1dGhvckZvbnRXZWlnaHQsIDcwMCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1jb21tZW50QXV0aG9yTGluZUhlaWdodCwgMS40KTtcbn1cblxuLmNvbW1lbnRzQmxvY2tzX19jb21tZW50X19kYXRlIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWNvbW1lbnREYXRlRm9udEZhbWlseSwgdmFyKC0tZm9udEZhbWlseSwgQXJpYWwsIHNhbnMtc2VyaWYpKTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgY29sb3I6IHZhcigtLWNvbW1lbnREYXRlQ29sb3IsICM5RjlGOUYpO1xuICBmb250LXdlaWdodDogdmFyKC0tY29tbWVudERhdGVGb250V2VpZ2h0LCAzMDApO1xuICBsaW5lLWhlaWdodDogdmFyKC0tY29tbWVudERhdGVMaW5lSGVpZ2h0LCAxLjQpO1xufVxuXG4uY29tbWVudHNCbG9ja3NfX2NvbW1lbnRfX3JlcGx5IHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWNvbW1lbnRSZXBseUJ1dHRvbkZvbnRGYW1pbHksIHZhcigtLWZvbnRGYW1pbHksIEFyaWFsLCBzYW5zLXNlcmlmKSk7XG4gIGNvbG9yOiB2YXIoLS1jb21tZW50UmVwbHlCdXR0b25Db2xvciwgIzU2NjI1Rik7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1jb21tZW50UmVwbHlCdXR0b25Gb250V2VpZ2h0LCA3MDApO1xuICBsaW5lLWhlaWdodDogdmFyKC0tY29tbWVudFJlcGx5QnV0dG9uTGluZUhlaWdodCwgMS40KTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHZhcigtLWNvbW1lbnRSZXBseUJ1dHRvblRleHRUcmFuc2Zvcm0sIHVwcGVyY2FzZSk7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuM3M7XG59XG5cbi5jb21tZW50c0Jsb2Nrc19fY29tbWVudF9fcmVwbHk6aG92ZXIge1xuICBjb2xvcjogdmFyKC0tY29tbWVudFJlcGx5QnV0dG9uQWN0aXZlQ29sb3IsICMwMDApO1xufVxuXG4uY29tbWVudHNCbG9ja3NfX2NvbW1lbnRfX3JlcGx5IGE6Zm9jdXMge1xuICBjb2xvcjogdmFyKC0tY29tbWVudFJlcGx5QnV0dG9uQWN0aXZlQ29sb3IsICMwMDApO1xufVxuXG4uY29tbWVudHNCbG9ja3NfX2NvbW1lbnRfX3RleHQge1xuICBtYXJnaW4tdG9wOiAwLjkzNzVyZW07XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1jb21tZW50VGV4dEZvbnRGYW1pbHksIHZhcigtLWZvbnRGYW1pbHksIEFyaWFsLCBzYW5zLXNlcmlmKSk7XG4gIGNvbG9yOiB2YXIoLS1jb21tZW50VGV4dENvbG9yLCAjNDU0NTQ1KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWNvbW1lbnRUZXh0Rm9udFdlaWdodCwgMzAwKTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWNvbW1lbnRUZXh0TGluZUhlaWdodCwgMS40KTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MDBweCkge1xuICAuY29tbWVudHNCbG9ja3NfX2NvbW1lbnRfX2NvbnRlbnQge1xuICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6IFwiYXZhdGFyIGNvbnRlbnRcIjtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gMWZyO1xuICB9XG4gIC5jb21tZW50c0Jsb2Nrc19fY29tbWVudF9fZGF0ZSxcbiAgLmNvbW1lbnRzQmxvY2tzX19jb21tZW50X19yZXBseSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG4gIC5jb21tZW50c0Jsb2Nrc19fY29tbWVudF9fcmVwbHkge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tY29tbWVudFJlcGx5QnV0dG9uUGFkZGluZ0xlZnQsIDAuNjI1cmVtKTtcbiAgfVxufVxuXG4uY29tbWVudHNCbG9ja3NfX2NvbW1lbnRfX3JlcGxpZXMge1xuICBtYXJnaW4tbGVmdDogY2FsYygxLjY4NzVyZW0gKyA1LjI1dncpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5jb21tZW50c0Jsb2Nrc19fY29tbWVudF9fcmVwbGllcyB7XG4gICAgbWFyZ2luLWxlZnQ6IDUuNjI1cmVtO1xuICB9XG59XG5cbi5jb21tZW50c0Jsb2NrX19mb3JtIHtcbiAgbWFyZ2luLXRvcDogY2FsYygxLjM0Mzc1cmVtICsgMS4xMjV2dyk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmNvbW1lbnRzQmxvY2tfX2Zvcm0ge1xuICAgIG1hcmdpbi10b3A6IDIuMTg3NXJlbTtcbiAgfVxufVxuXG4uY29tbWVudHNCbG9ja19fbG9hZE1vcmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIHRvcDogdmFyKC0tY29tbWVudExvYWRNb3JlVG9wLCAtMC45Mzc1cmVtKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uY29tbWVudHNCbG9jay0tcGFnZWQuaXNBY3RpdmUgLmNvbW1lbnRzQmxvY2tfX2xvYWRNb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmNvbW1lbnRGb3JtX190aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1jb21tZW50Rm9ybVRpdGxlLCB2YXIoLS1mb250RmFtaWx5LCBBcmlhbCwgc2Fucy1zZXJpZikpO1xuICBjb2xvcjogdmFyKC0tY29tbWVudEZvcm1UaXRsZUNvbG9yLCAjMDAwKTtcbiAgZm9udC1zaXplOiBjYWxjKDEuMjg3NXJlbSArIDAuNDV2dyk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1jb21tZW50Rm9ybVRpdGxlRm9udFdlaWdodCwgNzAwKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWNvbW1lbnRGb3JtVGl0bGVMaW5lSGVpZ2h0LCAxLjIpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1jb21tZW50Rm9ybVRpdGxlTWFyZ2luQm90dG9tLCAwLjVlbSk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmNvbW1lbnRGb3JtX190aXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjYyNXJlbTtcbiAgfVxufVxuXG4uY29tbWVudEZvcm1fX3RpdGxlOjphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IHZhcigtLWNvbW1lbnRGb3JtVGl0bGVCb3JkZXJXaWR0aCwgMS41NjI1cmVtKTtcbiAgaGVpZ2h0OiB2YXIoLS1jb21tZW50Rm9ybVRpdGxlQm9yZGVySGVpZ2h0LCAxcHgpO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1jb21tZW50Rm9ybVRpdGxlQm9yZGVyTWFyZ2luVG9wLCAwLjRlbSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbW1lbnRGb3JtVGl0bGVCb3JkZXJDb2xvciwgIzAwMCk7XG59XG5cbi5jb21tZW50LXJlc3BvbmQgZm9ybSA+ICogKyAqOm5vdCguZm9ybS1zdWJtaXQpIHtcbiAgbWFyZ2luLXRvcDogMC42MjVyZW07XG59XG5cbi5jb21tZW50LXJlc3BvbmQgLmZvcm0tc3VibWl0IHtcbiAgbWFyZ2luLXRvcDogMC45Mzc1cmVtO1xufVxuXG4uZm9vdGVyIHtcbiAgLS1mb290ZXJJdGVtc0dhcDogMS41NjI1cmVtO1xuICBtYXJnaW4tdG9wOiBjYWxjKDEuOTM3NXJlbSArIDguMjV2dyk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmZvb3RlciB7XG4gICAgbWFyZ2luLXRvcDogOC4xMjVyZW07XG4gIH1cbn1cblxuLmZvb3RlciA+IGRpdiB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtYXJlYXM6IFwibG9nb1wiIFwiYWRkcmVzc2VzXCIgXCJidXR0b25zXCIgXCJtZW51XCIgXCJib3R0b20tbWVudVwiO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgZ3JpZC1jb2x1bW4tZ2FwOiB2YXIoLS1mb290ZXJDb2x1bW5zR2FwLCAwKTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZm9vdGVyIHtcbiAgICAtLWZvb3Rlck1lbnVUZXh0QWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuZm9vdGVyIHtcbiAgICAtLWZvb3RlckFkZHJlc3Nlc0JvcmRlcldpZHRoOiAwO1xuICAgIC0tZm9vdGVyQWRkcmVzc2VzUGFkZGluZ1RvcDogMDtcbiAgICAtLWZvb3RlckNvbHVtbnNHYXA6IDEuODc1cmVtO1xuICAgIC0tZm9vdGVyRG9jdG9saWJNYXJnaW5Ub3A6IDA7XG4gICAgLS1mb290ZXJMb2dvUGFkZGluZ0JvdHRvbTogMDtcbiAgfVxuICAuZm9vdGVyID4gZGl2IHtcbiAgICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcImxvZ28gXHRcdFx0XHRhZGRyZXNzZXMgXHRcdFx0XHRidXR0b25zXCIgXCJtZW51IFx0XHRcdFx0bWVudSBcdFx0XHRcdFx0bWVudVwiIFwiYm90dG9tLW1lbnUgXHRcdFx0Ym90dG9tLW1lbnUgXHRcdFx0Ym90dG9tLW1lbnVcIjtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gMWZyIGF1dG87XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgfVxufVxuXG4uZm9vdGVyX19sb2dvIHtcbiAgZ3JpZC1hcmVhOiBsb2dvO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1mb290ZXJMb2dvUGFkZGluZ0JvdHRvbSwgMC42MjVyZW0pO1xufVxuXG4uZm9vdGVyX19hZGRyZXNzZXMge1xuICBncmlkLWFyZWE6IGFkZHJlc3NlcztcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIGdyaWQtZ2FwOiB2YXIoLS1mb290ZXJBZGRyZXNzZXNHYXAsIDEuNTYyNXJlbSk7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1mb290ZXJBZGRyZXNzZXNQYWRkaW5nVG9wLCB2YXIoLS1mb290ZXJJdGVtc0dhcCwgMS41NjI1cmVtKSk7XG4gIGJvcmRlci10b3A6IHZhcigtLWZvb3RlckFkZHJlc3Nlc0JvcmRlcldpZHRoLCAzcHgpIHNvbGlkIHZhcigtLWZvb3RlckFkZHJlc3Nlc0JvcmRlckNvbG9yLCAjMDAwKTtcbn1cblxuLmZvb3Rlcl9fYWRkcmVzc2VzID4gKiB7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbn1cblxuLmZvb3Rlcl9fYWRkcmVzc2VzX19wbGFjZSAuZm9vdGVyX19hZGRyZXNzZXNfX3BsYWNlX19uYW1lIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvb3RlckFkZHJlc3NOYW1lRm9udEZhbWlseSwgdmFyKC0tZm9udEZhbWlseSwgQXJpYWwsIHNhbnMtc2VyaWYpKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb290ZXJBZGRyZXNzTmFtZUZvbnRTaXplLCAxcmVtKTtcbiAgY29sb3I6IHZhcigtLWZvb3RlckFkZHJlc3NOYW1lQ29sb3IsICMwMDApO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9vdGVyQWRkcmVzc05hbWVGb250V2VpZ2h0LCA0MDApO1xuICBsaW5lLWhlaWdodDogdmFyKC0tZm9vdGVyQWRkcmVzc05hbWVMaW5lSGVpZ2h0LCAxLjIpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tZm9vdGVyQWRkcmVzc05hbWVMZXR0ZXJTcGFjaW5nLCAwKTtcbiAgdGV4dC10cmFuc2Zvcm06IHZhcigtLWZvb3RlckFkZHJlc3NOYW1lVGV4dFRyYW5zZm9ybSwgaW5pdGlhbCk7XG59XG5cbi5mb290ZXJfX2FkZHJlc3Nlc19fcGxhY2UgPiAuZm9vdGVyX19hZGRyZXNzZXNfX3BsYWNlX19waG9uZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb290ZXJBZGRyZXNzUGhvbmVGb250RmFtaWx5LCB2YXIoLS1mb250RmFtaWx5LCBBcmlhbCwgc2Fucy1zZXJpZikpO1xuICBmb250LXNpemU6IHZhcigtLWZvb3RlckFkZHJlc3NQaG9uZUZvbnRTaXplLCAxcmVtKTtcbiAgY29sb3I6IHZhcigtLWZvb3RlckFkZHJlc3NQaG9uZUNvbG9yLCAjMDAwKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvb3RlckFkZHJlc3NQaG9uZUZvbnRXZWlnaHQsIDQwMCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1mb290ZXJBZGRyZXNzUGhvbmVMaW5lSGVpZ2h0LCAxLjIpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tZm9vdGVyQWRkcmVzc1Bob25lTGV0dGVyU3BhY2luZywgMCk7XG59XG5cbi5mb290ZXJfX2FkZHJlc3Nlc19fcGxhY2UgPiAqICsgKiB7XG4gIG1hcmdpbi10b3A6IHZhcigtLWZvb3RlckFkZHJlc3Nlc1BsYWNlc0dhcCwgMC42MjVyZW0pO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb290ZXJfX2FkZHJlc3NlcyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maWxsLCBtaW5tYXgodmFyKC0tZm9vdGVyQWRkcmVzc2VzTWluaW11bVdpZHRoLCAxNS42MjVyZW0pLCAxZnIpKTtcbiAgICBncmlkLWdhcDogdmFyKC0tZm9vdGVyQWRkcmVzc2VzR2FwLCAxLjU2MjVyZW0pO1xuICB9XG59XG5cbi5mb290ZXJfX2J1dHRvbnMge1xuICBncmlkLWFyZWE6IGJ1dHRvbnM7XG4gIG1hcmdpbi10b3A6IHZhcigtLWZvb3RlckJ1dHRvbnNNYXJnaW5Ub3AsIHZhcigtLWZvb3Rlckl0ZW1zR2FwLCAxLjU2MjVyZW0pKTtcbn1cblxuLmZvb3Rlcl9fZG9jdG9saWIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5mb290ZXJfX21lbnUge1xuICBncmlkLWFyZWE6IG1lbnU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvb3Rlck1lbnVGb250RmFtaWx5LCB2YXIoLS1mb250RmFtaWx5LCBBcmlhbCwgc2Fucy1zZXJpZikpO1xuICBmb250LXNpemU6IHZhcigtLWZvb3Rlck1lbnVGb250U2l6ZSwgMXJlbSk7XG4gIGNvbG9yOiB2YXIoLS1mb290ZXJNZW51Q29sb3IsICNGRkYpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9vdGVyTWVudUZvbnRXZWlnaHQsIDQwMCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1mb290ZXJNZW51TGluZUhlaWdodCwgMik7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1mb290ZXJNZW51TGV0dGVyU3BhY2luZywgMCk7XG4gIHRleHQtYWxpZ246IHZhcigtLWZvb3Rlck1lbnVUZXh0QWxpZ24sIGxlZnQpO1xuICB0ZXh0LXRyYW5zZm9ybTogdmFyKC0tZm9vdGVyTWVudVRleHRUcmFuc2Zvcm0sIHVwcGVyY2FzZSk7XG4gIG1hcmdpbi10b3A6IHZhcigtLWZvb3Rlck1lbnVNYXJnaW5Ub3AsIHZhcigtLWZvb3Rlckl0ZW1zR2FwLCAxLjU2MjVyZW0pKTtcbiAgcGFkZGluZy10b3A6IHZhcigtLWZvb3Rlck1lbnVQYWRkaW5nVG9wLCAwLjkzNzVyZW0pO1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tZm9vdGVyTWVudVBhZGRpbmdCb3R0b20sIDAuOTM3NXJlbSk7XG59XG5cbi5mb290ZXJfX21lbnUgPiAqIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xufVxuXG4uZm9vdGVyX19tZW51IGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5mb290ZXJfX21lbnU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMHZ3O1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IGNhbGMoNTAlIC0gNTB2dyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWZvb3Rlck1lbnVCYWNrZ3JvdW5kQ29sb3IsICMwMDApO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb290ZXJfX21lbnUgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICAuZm9vdGVyX19tZW51IGxpICsgbGk6OmJlZm9yZSB7XG4gICAgY29udGVudDogJ3wnO1xuICAgIGNvbG9yOiB2YXIoLS1mb290ZXJNZW51SXRlbXNEaXZpZGVyQ29sb3IsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSk7XG4gICAgbWFyZ2luOiAwIHZhcigtLWZvb3Rlck1lbnVJdGVtc0dhcCwgMC42MjVyZW0pO1xuICB9XG59XG5cbi5mb290ZXJfX2JvdHRvbU1lbnUge1xuICBncmlkLWFyZWE6IGJvdHRvbS1tZW51O1xuICBmb250LWZhbWlseTogdmFyKC0tZm9vdGVyQm90dG9tTWVudUZvbnRGYW1pbHksIHZhcigtLWZvbnRGYW1pbHksIEFyaWFsLCBzYW5zLXNlcmlmKSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9vdGVyQm90dG9tTWVudUZvbnRTaXplLCAxcmVtKTtcbiAgY29sb3I6IHZhcigtLWZvb3RlckJvdHRvbU1lbnVDb2xvciwgIzAwMCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb290ZXJCb3R0b21NZW51Rm9udFdlaWdodCwgNDAwKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWZvb3RlckJvdHRvbU1lbnVMaW5lSGVpZ2h0LCAxLjIpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tZm9vdGVyQm90dG9tTWVudUxldHRlclNwYWNpbmcsIDApO1xuICB0ZXh0LWFsaWduOiB2YXIoLS1mb290ZXJCb3R0b21NZW51VGV4dEFsaWduLCBjZW50ZXIpO1xuICB0ZXh0LXRyYW5zZm9ybTogdmFyKC0tZm9vdGVyQm90dG9tTWVudVRleHRUcmFuc2Zvcm0sIGluaXRpYWwpO1xuICBwYWRkaW5nLXRvcDogdmFyKC0tZm9vdGVyQm90dG9tTWVudVBhZGRpbmdUb3AsIDAuOTM3NXJlbSk7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1mb290ZXJCb3R0b21NZW51UGFkZGluZ0JvdHRvbSwgMC45Mzc1cmVtKTtcbn1cblxuLmZvb3Rlcl9fYm90dG9tTWVudSBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmZvb3Rlcl9fYm90dG9tTWVudSBsaSArIGxpOjpiZWZvcmUge1xuICBjb250ZW50OiAnfCc7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwIHZhcigtLWZvb3RlckJvdHRvbU1lbnVJdGVtc0dhcCwgMC45Mzc1cmVtKTtcbn1cblxuLmFwcGx5U3R5bGVzIGgyLCAudGV4dEltYWdlX190ZXh0X19jb250ZW50IGgyLCAuaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQgaDIge1xuICBmb250LWZhbWlseTogXCJtZW5vLWJhbm5lclwiLCBnZW9yZ2lhLCBzZXJpZjtcbiAgY29sb3I6ICMwMDA7XG4gIGZvbnQtc2l6ZTogY2FsYygxLjM0Mzc1cmVtICsgMS4xMjV2dyk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250V2VpZ2h0UmVndWxhcik7XG4gIGxpbmUtaGVpZ2h0OiAxLjQzO1xuICBtYXJnaW4tYm90dG9tOiAwLjRlbTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuYXBwbHlTdHlsZXMgaDIsIC50ZXh0SW1hZ2VfX3RleHRfX2NvbnRlbnQgaDIsIC5ob21lSGVyb19fY29udGVudF9fdGV4dCBoMiB7XG4gICAgZm9udC1zaXplOiAyLjE4NzVyZW07XG4gIH1cbn1cblxuLmFwcGx5U3R5bGVzIGgzLCAudGV4dEltYWdlX190ZXh0X19jb250ZW50IGgzLCAuaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQgaDMge1xuICBmb250LWZhbWlseTogXCJtZW5vLWJhbm5lclwiLCBnZW9yZ2lhLCBzZXJpZjtcbiAgY29sb3I6IHZhcigtLXR1bmRvcmFDb2xvcik7XG4gIGZvbnQtc2l6ZTogY2FsYygxLjNyZW0gKyAwLjZ2dyk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250V2VpZ2h0UmVndWxhcik7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBtYXJnaW4tYm90dG9tOiAwLjRlbTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuYXBwbHlTdHlsZXMgaDMsIC50ZXh0SW1hZ2VfX3RleHRfX2NvbnRlbnQgaDMsIC5ob21lSGVyb19fY29udGVudF9fdGV4dCBoMyB7XG4gICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICB9XG59XG5cbi5hcHBseVN0eWxlcyB1bDpub3QoLmRvbnRBcHBseVN0eWxlKSwgLnRleHRJbWFnZV9fdGV4dF9fY29udGVudCB1bDpub3QoLmRvbnRBcHBseVN0eWxlKSwgLmhvbWVIZXJvX19jb250ZW50X190ZXh0IHVsOm5vdCguZG9udEFwcGx5U3R5bGUpIHtcbiAgbWFyZ2luLWxlZnQ6IDJlbTtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogaW5zaWRlO1xufVxuXG4uYXBwbHlTdHlsZXMgdWw6bm90KC5kb250QXBwbHlTdHlsZSkgbGk6OmJlZm9yZSwgLnRleHRJbWFnZV9fdGV4dF9fY29udGVudCB1bDpub3QoLmRvbnRBcHBseVN0eWxlKSBsaTo6YmVmb3JlLCAuaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQgdWw6bm90KC5kb250QXBwbHlTdHlsZSkgbGk6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHdpZHRoPScxMicgaGVpZ2h0PScxMicgdmlld0JveD0nMCAwIDEyIDEyJyBmaWxsPSdub25lJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFICUzQ2NpcmNsZSBjeD0nNicgY3k9JzYnIHI9JzYnIGZpbGw9JyUyM0VDRTREOCcvJTNFICUzQy9zdmclM0UgXCIpO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xufVxuXG4uYXBwbHlTdHlsZXMgb2w6bm90KC5kb250QXBwbHlTdHlsZSksIC50ZXh0SW1hZ2VfX3RleHRfX2NvbnRlbnQgb2w6bm90KC5kb250QXBwbHlTdHlsZSksIC5ob21lSGVyb19fY29udGVudF9fdGV4dCBvbDpub3QoLmRvbnRBcHBseVN0eWxlKSB7XG4gIG1hcmdpbi1sZWZ0OiAyZW07XG4gIGxpc3Qtc3R5bGU6IGRlY2ltYWw7XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IGluc2lkZTtcbn1cblxuLmFwcGx5U3R5bGVzIHAgYSwgLnRleHRJbWFnZV9fdGV4dF9fY29udGVudCBwIGEsIC5ob21lSGVyb19fY29udGVudF9fdGV4dCBwIGEsIC5hcHBseVN0eWxlcyB1bDpub3QoLmRvbnRBcHBseVN0eWxlKSBhLCAudGV4dEltYWdlX190ZXh0X19jb250ZW50IHVsOm5vdCguZG9udEFwcGx5U3R5bGUpIGEsIC5ob21lSGVyb19fY29udGVudF9fdGV4dCB1bDpub3QoLmRvbnRBcHBseVN0eWxlKSBhLCAuYXBwbHlTdHlsZXMgb2w6bm90KC5kb250QXBwbHlTdHlsZSkgYSwgLnRleHRJbWFnZV9fdGV4dF9fY29udGVudCBvbDpub3QoLmRvbnRBcHBseVN0eWxlKSBhLCAuaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQgb2w6bm90KC5kb250QXBwbHlTdHlsZSkgYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdhbGxlcnkzQ29sb3IpO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3MgY3ViaWMtYmV6aWVyKDAuMjUsIDAuMSwgMC4yNSwgMSk7XG59XG5cbi5hcHBseVN0eWxlcyBwIGE6aG92ZXIsIC50ZXh0SW1hZ2VfX3RleHRfX2NvbnRlbnQgcCBhOmhvdmVyLCAuaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQgcCBhOmhvdmVyLCAuYXBwbHlTdHlsZXMgdWw6bm90KC5kb250QXBwbHlTdHlsZSkgYTpob3ZlciwgLnRleHRJbWFnZV9fdGV4dF9fY29udGVudCB1bDpub3QoLmRvbnRBcHBseVN0eWxlKSBhOmhvdmVyLCAuaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQgdWw6bm90KC5kb250QXBwbHlTdHlsZSkgYTpob3ZlciwgLmFwcGx5U3R5bGVzIG9sOm5vdCguZG9udEFwcGx5U3R5bGUpIGE6aG92ZXIsIC50ZXh0SW1hZ2VfX3RleHRfX2NvbnRlbnQgb2w6bm90KC5kb250QXBwbHlTdHlsZSkgYTpob3ZlciwgLmhvbWVIZXJvX19jb250ZW50X190ZXh0IG9sOm5vdCguZG9udEFwcGx5U3R5bGUpIGE6aG92ZXIsIC5hcHBseVN0eWxlcyBwIGE6Zm9jdXMsIC50ZXh0SW1hZ2VfX3RleHRfX2NvbnRlbnQgcCBhOmZvY3VzLCAuaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQgcCBhOmZvY3VzLCAuYXBwbHlTdHlsZXMgdWw6bm90KC5kb250QXBwbHlTdHlsZSkgYTpmb2N1cywgLnRleHRJbWFnZV9fdGV4dF9fY29udGVudCB1bDpub3QoLmRvbnRBcHBseVN0eWxlKSBhOmZvY3VzLCAuaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQgdWw6bm90KC5kb250QXBwbHlTdHlsZSkgYTpmb2N1cywgLmFwcGx5U3R5bGVzIG9sOm5vdCguZG9udEFwcGx5U3R5bGUpIGE6Zm9jdXMsIC50ZXh0SW1hZ2VfX3RleHRfX2NvbnRlbnQgb2w6bm90KC5kb250QXBwbHlTdHlsZSkgYTpmb2N1cywgLmhvbWVIZXJvX19jb250ZW50X190ZXh0IG9sOm5vdCguZG9udEFwcGx5U3R5bGUpIGE6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13aGl0ZVJvY2tDb2xvcik7XG59XG5cbi5hcHBseVN0eWxlcyBibG9ja3F1b3RlLCAudGV4dEltYWdlX190ZXh0X19jb250ZW50IGJsb2NrcXVvdGUsIC5ob21lSGVyb19fY29udGVudF9fdGV4dCBibG9ja3F1b3RlIHtcbiAgLS1ibG9ja3F1b3RlU3ZnV2lkdGg6IDQwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sb3I6IHJlZDtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLmFwcGx5U3R5bGVzIGJsb2NrcXVvdGUgPiAqLCAudGV4dEltYWdlX190ZXh0X19jb250ZW50IGJsb2NrcXVvdGUgPiAqLCAuaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQgYmxvY2txdW90ZSA+ICoge1xuICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tYmxvY2txdW90ZVN2Z1dpZHRoKSArIDAuOTM3NXJlbSk7XG59XG5cbi5hcHBseVN0eWxlcyBibG9ja3F1b3RlOjpiZWZvcmUsIC50ZXh0SW1hZ2VfX3RleHRfX2NvbnRlbnQgYmxvY2txdW90ZTo6YmVmb3JlLCAuaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQgYmxvY2txdW90ZTo6YmVmb3JlIHtcbiAgY29udGVudDogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0Nzdmcgd2lkdGg9JzQwJyBoZWlnaHQ9JzMxJyB2aWV3Qm94PScwIDAgNDAgMzEnIGZpbGw9J25vbmUnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UgJTNDcGF0aCBkPSdNMTUuNDMzMSAzLjg1NDkyQzEzLjEyMzQgNi4yMTA3MSAxMS4zOTExIDguNDU5NDEgMTAuMjM2MiAxMC42MDFDOS4xODYzNSAxMi42MzU2IDguNTAzOTQgMTQuODMwNyA4LjE4ODk4IDE3LjE4NjVIMTQuNjQ1N0wxMy41NDMzIDMxSDBMMC43ODc0MDEgMjAuNzIwMkMxLjEwMjM2IDE2LjY1MTEgMS45OTQ3NSAxMi45NTY4IDMuNDY0NTcgOS42MzczMUM1LjAzOTM3IDYuMjEwNzEgNy40NTQwNyAyLjk5ODI3IDEwLjcwODcgMEwxNS40MzMxIDMuODU0OTJaTTQwIDMuODU0OTJDMzcuNjkwMyA2LjIxMDcxIDM1Ljk1OCA4LjQ1OTQxIDM0LjgwMzIgMTAuNjAxQzMzLjc1MzMgMTIuNjM1NiAzMy4wNzA5IDE0LjgzMDcgMzIuNzU1OSAxNy4xODY1SDM5LjIxMjZMMzguMTEwMiAzMUgyNC41NjY5TDI1LjM1NDMgMjAuNzIwMkMyNS42NjkzIDE2LjY1MTEgMjYuNTYxNyAxMi45NTY4IDI4LjAzMTUgOS42MzczMUMyOS42MDYzIDYuMjEwNzEgMzIuMDIxIDIuOTk4MjcgMzUuMjc1NiAwTDQwIDMuODU0OTJaJyBmaWxsPSclMjNGRkYnLyUzRSAlM0Mvc3ZnJTNFIFwiKTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xufVxuXG5cbi5idG5Sb3VuZGVkIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgYm9yZGVyOiAzcHggc29saWQgdmFyKC0tY29yZHVyb3lDb2xvcik7XG4gIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gIHBhZGRpbmc6IDAuNTMxMjVlbSAzLjEyNWVtIDAuNWVtO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCB2YXIoLS1jb3JkdXJveUNvbG9yKSAwJSwgdmFyKC0tY29yZHVyb3lDb2xvcikgMTAwJSkgbm8tcmVwZWF0IHJpZ2h0IGJvdHRvbS8wJSAxMDAlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLXNpemUgMC4zNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpLCBjb2xvciAwLjhzIGN1YmljLWJlemllcigwLjI1LCAwLjEsIDAuMjUsIDEpO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cblxuLmJ0blJvdW5kZWQ6aG92ZXIge1xuICBjb2xvcjogI0ZGRjtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgYm90dG9tO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLXNpemUgMC4zNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpLCBjb2xvciAwLjRzIGN1YmljLWJlemllcigwLjI1LCAwLjEsIDAuMjUsIDEpO1xufVxuXG5cbi5idXR0b25Sb3VuZGVkIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgY29sb3I6ICNGRkY7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgcGFkZGluZzogMC45MjMwOGVtIDEuNTM4NDZlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmVkO1xufVxuXG5cbi5idXR0b25BcnJvdyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY29sb3I6ICMwMDA7XG59XG5cblxuLmJ1dHRvbkFycm93OjpiZWZvcmUge1xuICBjb250ZW50OiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB3aWR0aD0nMTYnIGhlaWdodD0nMTInIHZpZXdCb3g9JzAgMCAxNiAxMicgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSAlM0NwYXRoIGQ9J00xLjUgNS43NTY5NEgxNCcgc3Ryb2tlPSclMjMwMDAnIHN0cm9rZS13aWR0aD0nMicgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJy8lM0UgJTNDcGF0aCBkPSdNMTEgMS4wMDY0MUwxNSA1LjQ0MDI0TDExIDEwLjUwNzUnIHN0cm9rZT0nJTIzMDAwJyBzdHJva2Utd2lkdGg9JzInIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcvJTNFICUzQy9zdmclM0UgXCIpO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMWVtO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG59XG5cblxuLmJ1dHRvbkFycm93IHNwYW4ge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG5AbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuICBcbiAgLmJ1dHRvbkFycm93OmhvdmVyOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpO1xuICB9XG59XG5cblxuLmJ1dHRvbkFycm93RGlhbW9uZCB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBjb2xvcjogeWVsbG93O1xufVxuXG5cbi5idXR0b25BcnJvd0RpYW1vbmQgc3ZnID4gKiB7XG4gIHN0cm9rZTogdmlvbGV0O1xufVxuXG5cbi5idXR0b25BcnJvd0RpYW1vbmQgc3ZnID4gZyB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGN1YmljLWJlemllcigwLjQyLCAwLCAwLjU4LCAxKTtcbiAgdHJhbnNmb3JtLWJveDogZmlsbC1ib3g7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbn1cblxuXG4uYnV0dG9uQXJyb3dEaWFtb25kIHNwYW4ge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA2ZW07XG4gIG1hcmdpbi1sZWZ0OiAwLjY2NjY3ZW07XG59XG5cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gIFxuICAuYnV0dG9uQXJyb3dEaWFtb25kOmhvdmVyID4gc3ZnID4gZyB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgfVxufVxuXG5cbi5idXR0b25PdXRsaW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiByZWQ7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJlZDtcbiAgcGFkZGluZzogMC45Mzc1ZW0gMi41ZW07XG4gIHBhZGRpbmctdG9wOiAxZW07XG4gIHRyYW5zaXRpb246IGNvbG9yIC4zcztcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MDBweCkge1xuICBcbiAgLmJ1dHRvbk91dGxpbmUge1xuICAgIG1pbi13aWR0aDogMTEuMjVyZW07XG4gIH1cbn1cblxuXG4uYnV0dG9uT3V0bGluZTo6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7XG4gIHRyYW5zaXRpb246IHdpZHRoIC4zcztcbn1cblxuXG4uYnV0dG9uT3V0bGluZSBzcGFuIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBmb250LXNpemU6IDAuNzVyZW07XG59XG5cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gIFxuICAuYnV0dG9uT3V0bGluZTpob3ZlciB7XG4gICAgY29sb3I6ICNGRkY7XG4gIH1cbiAgXG4gIC5idXR0b25PdXRsaW5lOmhvdmVyOjpiZWZvcmUge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbjpyb290IHtcbiAgLS1idXR0b24tb3V0bGluZS1ib3JkZXItYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbiAgLS1idXR0b24tb3V0bGluZS1ib3JkZXItY29sb3I6IGFsaWNlYmx1ZTtcbiAgLS1idXR0b24tb3V0bGluZS1ib3JkZXItbWF4LXdpZHRoOiAxNy41cmVtO1xuICAtLWJ1dHRvbi1vdXRsaW5lLWJvcmRlci1wYWRkaW5nOiAwLjkzNzVyZW0gMS41NjI1cmVtO1xufVxuXG5cbi5idXR0b25PdXRsaW5lQm9yZGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXgtd2lkdGg6IHZhcigtLWJ1dHRvbi1vdXRsaW5lLWJvcmRlci1tYXgtd2lkdGgpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDAuMzEyNXJlbTtcbn1cblxuXG4uYnV0dG9uT3V0bGluZUJvcmRlciA+IHNwYW4ge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBjb2xvcjogdmFyKC0tYnV0dG9uLW91dGxpbmUtYm9yZGVyLWNvbG9yKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDhlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBwYWRkaW5nOiB2YXIoLS1idXR0b24tb3V0bGluZS1ib3JkZXItcGFkZGluZyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ1dHRvbi1vdXRsaW5lLWJvcmRlci1iYWNrZ3JvdW5kLWNvbG9yKTtcbn1cblxuXG4uYnV0dG9uT3V0bGluZUJvcmRlciBzdmcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbn1cblxuXG4uYnV0dG9uT3V0bGluZUJvcmRlciBzdmcgcmVjdCB7XG4gIHRyYW5zaXRpb246IGFsbCAuMzVzIGxpbmVhcjtcbiAgc3Ryb2tlOiAjRkZGO1xuICBmaWxsOiBub25lO1xuICBzdHJva2UtZGFzaGFycmF5OiAxNTAwLCAwO1xufVxuXG5AbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuICBcbiAgLmJ1dHRvbk91dGxpbmVCb3JkZXI6aG92ZXIgc3ZnIHJlY3Qge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjhzIGN1YmljLWJlemllcigwLjI1LCAwLjEsIDAuMjUsIDEpO1xuICAgIHN0cm9rZS13aWR0aDogNTtcbiAgICBzdHJva2UtZGFzaGFycmF5OiAwLCAxNTAwO1xuICB9XG59XG5cblxuLmJ1dHRvblNxdWFyZUFycm93LFxuLmZvcm0tc3VibWl0IGJ1dHRvblt0eXBlPVwic3VibWl0XCJdIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZvbnQtZmFtaWx5OiBcImF6by1zYW5zLXdlYlwiLCBhcmlhbCwgaGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgY29sb3I6IHZhcigtLWJ1dHRvblNxdWFyZUFycm93Q29sb3IsIHZhcigtLWNvcmR1cm95Q29sb3IpKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnRXZWlnaHRMaWdodCk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1idXR0b25TcXVhcmVBcnJvd0xlZnQsIDEuMjVyZW0pO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1idXR0b25TcXVhcmVBcnJvd0NvbG9yLCB2YXIoLS1jb3JkdXJveUNvbG9yKSk7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMC40Mzc1cmVtO1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgLjNzO1xufVxuXG5cbi5idXR0b25TcXVhcmVBcnJvdyBzcGFuLFxuLmZvcm0tc3VibWl0IGJ1dHRvblt0eXBlPVwic3VibWl0XCJdIHNwYW4ge1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xufVxuXG5cbi5idXR0b25TcXVhcmVBcnJvdyBzdmcsXG4uZm9ybS1zdWJtaXQgYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl0gc3ZnIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGModmFyKC0tYnV0dG9uU3F1YXJlQXJyb3dMZWZ0LCAxLjI1cmVtKSAqIC0xKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuXG4uYnV0dG9uU3F1YXJlQXJyb3cgc3ZnIHBhdGgsXG4uZm9ybS1zdWJtaXQgYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl0gc3ZnIHBhdGgge1xuICBmaWxsOiB2YXIoLS1idXR0b25TcXVhcmVBcnJvd0NvbG9yLCB2YXIoLS1jb3JkdXJveUNvbG9yKSk7XG59XG5cblxuLmJ1dHRvblNxdWFyZUFycm93OmhvdmVyLFxuLmZvcm0tc3VibWl0IGJ1dHRvbjpob3Zlclt0eXBlPVwic3VibWl0XCJdLFxuLmJ1dHRvblNxdWFyZUFycm93OmZvY3VzLFxuLmZvcm0tc3VibWl0IGJ1dHRvbjpmb2N1c1t0eXBlPVwic3VibWl0XCJdIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuXG4uYnV0dG9uU3F1YXJlQXJyb3c6aG92ZXIgc3ZnLFxuLmZvcm0tc3VibWl0IGJ1dHRvbjpob3Zlclt0eXBlPVwic3VibWl0XCJdIHN2Zyxcbi5idXR0b25TcXVhcmVBcnJvdzpmb2N1cyBzdmcsXG4uZm9ybS1zdWJtaXQgYnV0dG9uOmZvY3VzW3R5cGU9XCJzdWJtaXRcIl0gc3ZnIHtcbiAgYW5pbWF0aW9uOiBtb3ZlQXJyb3cgLjRzIGluZmluaXRlIGFsdGVybmF0ZTtcbn1cblxuQGtleWZyYW1lcyBtb3ZlQXJyb3cge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLjMxMjVyZW0sIDAsIDApO1xuICB9XG59XG5cbi5idXR0b246bm90KC5xYnV0dG9uKSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6IHZhcigtLWJ1dHRvbkZvbnRGYW1pbHksIHZhcigtLWJhc2VGb250RmFtaWx5LCB2YXIoLS1mb250RmFtaWx5LCBBcmlhbCwgc2Fucy1zZXJpZikpKTtcbiAgZm9udC1zaXplOiB2YXIoLS1idXR0b25Gb250U2l6ZSwgMXJlbSk7XG4gIGNvbG9yOiB2YXIoLS1idXR0b25Db2xvciwgI0ZGRik7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1idXR0b25Gb250V2VpZ2h0LCA0MDApO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tYnV0dG9uTGV0dGVyU3BhY2luZywgMHB4KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogdmFyKC0tYnV0dG9uVGV4dFRyYW5zZm9ybSwgaW5pdGlhbCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbkJvcmRlclJhZGl1cywgMHB4KTtcbiAgcGFkZGluZzogdmFyKC0tYnV0dG9uUGFkZGluZ1RvcCwgMC41NjI1cmVtKSB2YXIoLS1idXR0b25QYWRkaW5nUmlnaHQsIDIuMTg3NXJlbSkgdmFyKC0tYnV0dG9uUGFkZGluZ0JvdHRvbSwgMC41NjI1cmVtKSB2YXIoLS1idXR0b25QYWRkaW5nTGVmdCwgMi4xODc1cmVtKTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGxlZnQsIHZhcigtLWJ1dHRvbkJhY2tncm91bmRDb2xvciwgIzAwMCkgNTAlLCB2YXIoLS1idXR0b25Ib3ZlckJhY2tncm91bmRDb2xvciwgI0YwMCkgNTAlKSByaWdodCBib3R0b207XG4gIGJhY2tncm91bmQtc2l6ZTogMjAwJSAxMDAlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLXBvc2l0aW9uIDAuM3MgY3ViaWMtYmV6aWVyKDAuNDQ1LCAwLjA1LCAwLjU1LCAwLjk1KSwgY29sb3IgMC4zcyBjdWJpYy1iZXppZXIoMC4yNSwgMC4xLCAwLjI1LCAxKTtcbn1cblxuQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcbiAgLmJ1dHRvbjpub3QoLnFidXR0b24pOmhvdmVyLCAuYnV0dG9uOm5vdCgucWJ1dHRvbik6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1idXR0b25Ib3ZlckNvbG9yLCB2YXIoLS1idXR0b25Db2xvciwgI0ZGRikpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgYm90dG9tO1xuICB9XG59XG5cblxuLmZvcm1Db250cm9sIHtcbiAgcGFkZGluZy1ib3R0b206IDAuMzEyNXJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXR1bmRvcmFDb2xvcik7XG59XG5cblxuLmZvcm1Db250cm9sLFxuLmZvcm1Db250cm9sOjpwbGFjZWhvbGRlciB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1iYXNlRm9udEZhbWlseSwgdmFyKC0tZm9udEZhbWlseSwgQXJpYWwsIHNhbnMtc2VyaWYpKTtcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gIGNvbG9yOiB2YXIoLS10dW5kb3JhQ29sb3IpO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS4yMjtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xufVxuXG4uY29tbWVudHNCbG9ja19fbG9hZE1vcmUgPiBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBjb2xvcjogIzAwMDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnRXZWlnaHRMaWdodCk7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29yZHVyb3lDb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICBwYWRkaW5nOiAwLjYyNXJlbSAxLjEyNXJlbTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcztcbn1cblxuLmNvbW1lbnRzQmxvY2tfX2xvYWRNb3JlID4gYTpmb2N1cywgLmNvbW1lbnRzQmxvY2tfX2xvYWRNb3JlID4gYTpob3ZlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcbn1cblxuLmZvcm0tc3VibWl0IGJ1dHRvblt0eXBlPVwic3VibWl0XCJdIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHBhZGRpbmc6IDAuNjI1cmVtIGNhbGMoMS4zNDM3NXJlbSArIDEuMTI1dncpO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4zcywgY29sb3IgLjNzLCBib3JkZXItY29sb3IgLjNzO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5mb3JtLXN1Ym1pdCBidXR0b25bdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgcGFkZGluZzogMC42MjVyZW0gMi4xODc1cmVtO1xuICB9XG59XG5cbi5mb3JtLXN1Ym1pdCBidXR0b25bdHlwZT1cInN1Ym1pdFwiXTpob3ZlciwgLmZvcm0tc3VibWl0IGJ1dHRvblt0eXBlPVwic3VibWl0XCJdOmZvY3VzIHtcbiAgY29sb3I6ICNGRkY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGJvcmRlci1jb2xvcjogI0ZGRjtcbn1cblxuLmNvbW1lbnRzRm9ybSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250RmFtaWx5KTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LXNpemU6IDE1cHg7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICBsZXR0ZXItc3BhY2luZzogMC4wM2VtO1xufVxuXG4uY29tbWVudHNGb3JtIC5tYXRlcmlhbElucHV0IHtcbiAgb3ZlcmZsb3c6IGluaXRpYWw7XG4gIC0tbWF0ZXJpYWxJbnB1dEZvbnRXZWlnaHQ6IDQwMDtcbiAgLS1tYXRlcmlhbElucHV0Rm9udFNpemU6IC45Mzc1cmVtO1xuICAtLW1hdGVyaWFsSW5wdXRDb2xvcjogIzI1MjUyNSAhaW1wb3J0YW50O1xuICAtLW1hdGVyaWFsSW5wdXRMYWJlbEZvbnRTaXplOiAwLjkzNzVyZW07XG4gIC0tbWF0ZXJpYWxJbnB1dExhYmVsRm9udFdlaWdodDogMzAwO1xuICAtLW1hdGVyaWFsSW5wdXRMYWJlbENvbG9yOiB2YXIoLS1maXJlZmx5Q29sb3IpO1xuICAtLW1hdGVyaWFsSW5wdXRCb3JkZXJDb2xvcjogdmFyKC0tZmlyZWZseUNvbG9yKTtcbiAgLS1tYXRlcmlhbElucHV0TGFiZWxBY3RpdmVDb2xvcjogIzI1MjUyNTtcbn1cblxuLmNvbW1lbnRzRm9ybSAubWF0ZXJpYWxJbnB1dC5lbWFpbCBpbnB1dDpmb2N1cyB+IC5tYXRlcmlhbC1pbnB1dF9faGVscC10ZXh0LFxuLmNvbW1lbnRzRm9ybSAubWF0ZXJpYWxJbnB1dC5lbWFpbCBpbnB1dC5pc0FjdGl2ZSB+IC5tYXRlcmlhbC1pbnB1dF9faGVscC10ZXh0IHtcbiAgb3BhY2l0eTogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5jb21tZW50c0Zvcm0gLm1hdGVyaWFsLWlucHV0X19oZWxwLXRleHQgc3ZnIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMjVweDtcbiAgbGVmdDogNTBweDtcbn1cblxuLmNvbW1lbnRzRm9ybSAubWF0ZXJpYWwtaW5wdXRfX2hlbHAtdGV4dCBzdmc6aG92ZXIgKyBkaXYge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmNvbW1lbnRzRm9ybSAubWF0ZXJpYWwtaW5wdXRfX2hlbHAtdGV4dCBzdmcgcGF0aCB7XG4gIHN0cm9rZTogI0Q1QkQ3NDtcbn1cblxuLmNvbW1lbnRzRm9ybSAubWF0ZXJpYWwtaW5wdXRfX2hlbHAtdGV4dCBkaXYge1xuICBkaXNwbGF5OiBub25lO1xuICBtYXgtd2lkdGg6IDMwMHB4O1xuICBwYWRkaW5nOiAxMnB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgYm94LXNoYWRvdzogMHB4IDEycHggMTZweCAtNHB4IHJnYmEoMTYsIDI0LCA0MCwgMC4wOCksIDBweCA0cHggNnB4IC0ycHggcmdiYSgxNiwgMjQsIDQwLCAwLjAzKTtcbiAgbGVmdDogMzNweDtcbiAgYm90dG9tOiAzNnB4O1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIGFyaWFsLCBoZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjM4O1xuICBsZXR0ZXItc3BhY2luZzogMC4wM2VtO1xuICBjb2xvcjogIzBBMUMyQjtcbiAgb3BhY2l0eTogMTtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIHRyYW5zaXRpb246IGFsbCAuMnM7XG59XG5cbi5jb21tZW50c0Zvcm0gLm1hdGVyaWFsLWlucHV0X19oZWxwLXRleHQgZGl2OjphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMnB4O1xuICBoZWlnaHQ6IDEycHg7XG4gIGJvdHRvbTogLTZweDtcbiAgbGVmdDogMTlweDtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgYm9yZGVyLXJhZGl1czogMXB4O1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG5cbi5jb21tZW50c0Zvcm0gLmlzTm90VmFsaWQge1xuICBkaXNwbGF5OiBub25lO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQyO1xuICBmb250LWZlYXR1cmUtc2V0dGluZ3M6ICdzYWx0JyBvbjtcbiAgY29sb3I6ICNGMDQ0Mzg7XG4gIG1hcmdpbi10b3A6IDZweDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuXG4uY29tbWVudHNGb3JtIC5pc05vdFZhbGlkLS1pY29uZSxcbi5jb21tZW50c0Zvcm0gLnZhbGlkLS1pY29uZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogOHB4O1xufVxuXG4uY29tbWVudHNGb3JtIC5tYXRlcmlhbElucHV0LmVycm9yIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAxOXB4O1xufVxuXG4uY29tbWVudHNGb3JtIC5tYXRlcmlhbElucHV0LmVycm9yIGxhYmVsIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI0YwNDQzOCAhaW1wb3J0YW50O1xufVxuXG4uY29tbWVudHNGb3JtIC5tYXRlcmlhbElucHV0LmVycm9yIGxhYmVsOjphZnRlciB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cbi5jb21tZW50c0Zvcm0gLm1hdGVyaWFsSW5wdXQuZXJyb3IgLmlzTm90VmFsaWQge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmNvbW1lbnRzRm9ybSAubWF0ZXJpYWxJbnB1dC5lcnJvciAuaXNOb3RWYWxpZC0taWNvbmUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmNvbW1lbnRzRm9ybSAubWF0ZXJpYWxJbnB1dC5zdWNjZXNzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY29tbWVudHNGb3JtIC5tYXRlcmlhbElucHV0LnN1Y2Nlc3MgbGFiZWwge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjM0E5QzE3ICFpbXBvcnRhbnQ7XG59XG5cbi5jb21tZW50c0Zvcm0gLm1hdGVyaWFsSW5wdXQuc3VjY2VzcyBsYWJlbDo6YWZ0ZXIge1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuXG4uY29tbWVudHNGb3JtIC5tYXRlcmlhbElucHV0LnN1Y2Nlc3MgLnZhbGlkLS1pY29uZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uY29tbWVudHNGb3JtIGZsYXNoLW1lc3NhZ2Uge1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMTJlbTtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5cbi5jb21tZW50c0Zvcm0gLm1hdGVyaWFsSW5wdXQgbGFiZWwgPiBzcGFuIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG5cbiN3YWl0LWFwcHJvdmFsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMjAwcHg7XG59XG5cbi5tYXRlcmlhbElucHV0IHRleHRhcmVhLmlzQWN0aXZlICsgbGFiZWwgPiBzcGFuLFxuLm1hdGVyaWFsSW5wdXQgaW5wdXQuaXNBY3RpdmUgKyBsYWJlbCA+IHNwYW4ge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udEZhbWlseSk7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDNlbTtcbiAgY29sb3I6ICNENUJENzQ7XG59XG5cbi5tYXRlcmlhbElucHV0IHRleHRhcmVhLCAubWF0ZXJpYWxJbnB1dCBpbnB1dCB7XG4gIHBhZGRpbmctdG9wOiAxLjI1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogNHB4O1xufVxuXG4ubWF0ZXJpYWxJbnB1dCBpbnB1dDpmb2N1cyArIGxhYmVsID4gc3BhbiB7XG4gIGJvdHRvbTogLTVweDtcbn1cblxuLmNvbW1lbnQtZm9ybS1zdWJzY3JpcHRpb25zIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmNvbW1lbnRzQmxvY2tzX19jb21tZW50X19jb250ZW50IHtcbiAgc2Nyb2xsLW1hcmdpbi10b3A6IDE4Ljc1cmVtO1xufVxuXG4ubWF0ZXJpYWxJbnB1dCB0ZXh0YXJlYSwgLmNvbW1lbnQtcmVzcG9uZCAubWF0ZXJpYWxJbnB1dCB0ZXh0YXJlYSB7XG4gIGNvbG9yOiB2YXIoLS1taW5lU2hhZnQyQ29sb3IpO1xufVxuXG4uY29udGFjdEJ1dHRvbnMge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExMDBweCkge1xuICAuY29udGFjdEJ1dHRvbnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbiAgLmNvbnRhY3RCdXR0b25zLS1maXhlZCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHotaW5kZXg6IDEwMDE7XG4gICAgcmlnaHQ6IHZhcigtLWNvbnRhY3RCdXR0b25zQmFzZVJpZ2h0LCAwLjkzNzVyZW0pO1xuICAgIGJvdHRvbTogdmFyKC0tYmFja1RvVG9wQm90dG9tLCAyLjE4NzVyZW0pO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGN1YmljLWJlemllcigwLjQyLCAwLCAwLjU4LCAxKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG4gIGJvZHkuc2VhcmNoIC5jb250YWN0QnV0dG9ucy0tZml4ZWQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgYm9keS5iYWNrVG9Ub3AtLWlzQWN0aXZlIC5jb250YWN0QnV0dG9ucy0tZml4ZWQge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoY2FsYygtMi4xODc1cmVtICsgdmFyKC0tZXh0cmFSaWdodCwgMHB4KSAqIC0xKSwgMCwgMCk7XG4gIH1cbiAgYm9keS5iYWNrVG9Ub3AtLWlzQWN0aXZlIC5jb250YWN0QnV0dG9ucy0tZml4ZWQuaXNIaWRkZW4ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoY2FsYygtMi4xODc1cmVtICsgdmFyKC0tZXh0cmFSaWdodCwgMHB4KSAqIC0xKSwgY2FsYygoMTAwJSArIHZhcigtLWJhY2tUb1RvcEJvdHRvbSwgMi4xODc1cmVtKSkpLCAwKTtcbiAgfVxuICAuY29udGFjdEJ1dHRvbnMuaXNIaWRkZW4ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgY2FsYygoMTAwJSArIHZhcigtLWJhY2tUb1RvcEJvdHRvbSwgMi4xODc1cmVtKSkpLCAwKTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExMDBweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5jb250YWN0QnV0dG9ucyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExMDBweCkge1xuICAuY29udGFjdEJ1dHRvbnMgPiBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgcGFkZGluZzogMC45Mzc1cmVtIDEuMjVyZW07XG4gICAgYm94LXNoYWRvdzogMHB4IDBweCAxNXB4IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gIH1cbiAgLmNvbnRhY3RCdXR0b25zID4gYSA+IGRpdiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbiAgLmNvbnRhY3RCdXR0b25zID4gYSA+IGRpdiA+IHN0cm9uZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIGNvbG9yOiAjRkZGO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMzVzIGN1YmljLWJlemllcigwLjI1LCAwLjEsIDAuMjUsIDEpO1xuICB9XG4gIC5jb250YWN0QnV0dG9ucyA+IGEgPiBkaXYgPiBzdHJvbmc6bnRoLWNoaWxkKDIpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cbiAgLmNvbnRhY3RCdXR0b25zID4gYSBzdmcge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTEwMHB4KSBhbmQgKGhvdmVyOiBob3Zlcikge1xuICAuY29udGFjdEJ1dHRvbnMgPiBhOmhvdmVyID4gZGl2ID4gc3Ryb25nOm50aC1jaGlsZCgxKSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgfVxuICAuY29udGFjdEJ1dHRvbnMgPiBhOmhvdmVyID4gZGl2ID4gc3Ryb25nOm50aC1jaGlsZCgyKSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTEwMHB4KSB7XG4gIC5jb250YWN0QnV0dG9ucyA+IGEgKyBhIHtcbiAgICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgfVxuICAuY29udGFjdEJ1dHRvbnNfX3Bob25lIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb3JkdXJveUNvbG9yKTtcbiAgfVxuICAuY29udGFjdEJ1dHRvbnNfX3Bob25lIHN2ZyB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtO1xuICB9XG4gIC5jb250YWN0QnV0dG9uc19fZG9jdG9saWIge1xuICAgIC0tZG9jdG9saWJCdXR0b25UZXh0VHJhbnNmb3JtOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdoaXRlUm9ja0NvbG9yKTtcbiAgfVxuICAuY29udGFjdEJ1dHRvbnNfX2RvY3RvbGliIHN0cm9uZyB7XG4gICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDtcbiAgfVxuICAuY29udGFjdEJ1dHRvbnNfX2RvY3RvbGliIHN2ZyB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMzEyNXJlbTtcbiAgfVxuICAuY29udGFjdEJ1dHRvbnNfX2RvY3RvbGliIHN2ZyBwYXRoIHtcbiAgICBmaWxsOiAjMDAwO1xuICB9XG59XG5cbi5pbWFnZXNCbG9ja3Mge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgZ3JpZC1nYXA6IDAuMjVyZW07XG59XG5cbi5pbWFnZXNCbG9ja3NfX3JvdyB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICBncmlkLWF1dG8tcm93czogMWZyO1xuICBncmlkLWdhcDogMC4yNXJlbTtcbn1cblxuLmltYWdlc0Jsb2Nrc19fYmxvY2sge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uaW1hZ2VzQmxvY2tzX19ibG9jayA+ICoge1xuICBncmlkLWNvbHVtbjogMTtcbiAgZ3JpZC1yb3c6IDE7XG59XG5cbi5pbWFnZXNCbG9ja3NfX2Jsb2NrX19jb250ZW50IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDEuNzVyZW0gKyA2dncpO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDEuNzVyZW0gKyA2dncpO1xuICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuaW1hZ2VzQmxvY2tzX19ibG9ja19fY29udGVudCB7XG4gICAgcGFkZGluZy10b3A6IDYuMjVyZW07XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuaW1hZ2VzQmxvY2tzX19ibG9ja19fY29udGVudCB7XG4gICAgcGFkZGluZy1ib3R0b206IDYuMjVyZW07XG4gIH1cbn1cblxuLmltYWdlc0Jsb2Nrc19fYmxvY2tfX2NvbnRlbnQgPiAqIHtcbiAgZ3JpZC1jb2x1bW46IDE7XG4gIGdyaWQtcm93OiAxO1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBqdXN0aWZ5LXNlbGY6IGNlbnRlcjtcbn1cblxuLmltYWdlc0Jsb2Nrc19fYmxvY2tfX2NvbnRlbnRfX25vdEhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuM3M7XG59XG5cbi5pbWFnZXNCbG9ja3NfX2Jsb2NrX19jb250ZW50X19ob3ZlciB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgLjNzO1xufVxuXG4uaW1hZ2VzQmxvY2tzX19ibG9ja19faW1hZ2U6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWltYWdlc0Jsb2Nrc0ltYWdlQmFja2dyb3VuZENvbG9yLCByZ2JhKDAsIDAsIDAsIDAuNSkpO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4zcztcbn1cblxuLmltYWdlc0Jsb2Nrc19fYmxvY2tfX2ltYWdlIHBpY3R1cmUsXG4uaW1hZ2VzQmxvY2tzX19ibG9ja19faW1hZ2UgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLmltYWdlc0Jsb2Nrc19fYmxvY2tfX2ltYWdlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgfVxufVxuXG4uaW1hZ2VzQmxvY2tzX19ibG9ja19fY29udGVudF9fdGl0bGUge1xuICBjb2xvcjogI0ZGRjtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnRXZWlnaHRCb2xkKTtcbiAgZm9udC1zaXplOiBjYWxjKDEuMzEyNXJlbSArIDAuNzV2dyk7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5pbWFnZXNCbG9ja3NfX2Jsb2NrX19jb250ZW50X190aXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjg3NXJlbTtcbiAgfVxufVxuXG4uaW1hZ2VzQmxvY2tzX19ibG9ja19fY29udGVudF9fdGl0bGU6OmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogOTBweDtcbiAgaGVpZ2h0OiAycHg7XG4gIG1hcmdpbjogMTJweCBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5pbWFnZXNCbG9ja3NfX2Jsb2NrX19jb250ZW50X190aXRsZTo6YWZ0ZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gIH1cbn1cblxuLmltYWdlc0Jsb2Nrc19fYmxvY2tfX2NvbnRlbnRfX2Rlc2NyaXB0aW9uIHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBhcmlhbCwgaGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgY29sb3I6ICNGRkY7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250V2VpZ2h0TWVkaXVtKTtcbiAgbGluZS1oZWlnaHQ6IDEuNzc7XG4gIGxldHRlci1zcGFjaW5nOiAwLjFlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tdG9wOiAxLjI1cmVtO1xufVxuXG4uaW1hZ2VzQmxvY2tzX19ibG9ja19fY29udGVudF9fZGVzY3JpcHRpb24gPiBwICsgcCB7XG4gIG1hcmdpbi10b3A6IHZhcigtLWltYWdlc0Jsb2Nrc0Rlc2NyaXB0aW9uUGFyYWdyYXBoR2FwLCB2YXIoLS1wYXJhZ3JhcGhHYXAsIDAuOTM3NXJlbSkpO1xufVxuXG4uaW1hZ2VzQmxvY2tzX19ibG9ja19fY29udGVudF9fbGluayB7XG4gIG1hcmdpbi10b3A6IDAuOTM3NXJlbTtcbn1cblxuLmltYWdlc0Jsb2Nrc19fYmxvY2tfX2NvbnRlbnRfX2xpbmsgPiAqIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiYXpvLXNhbnMtd2ViXCIsIGFyaWFsLCBoZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIGNvbG9yOiAjRkZGO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udFdlaWdodEJvbGQpO1xuICBtYXJnaW4tdG9wOiAxLjI1cmVtO1xuICB0ZXh0LWRlY29yYXRpb24tbGluZTogdW5kZXJsaW5lO1xufVxuXG4uaW1hZ2VzQmxvY2tzX19ibG9jazpob3ZlciAuaW1hZ2VzQmxvY2tzX19ibG9ja19faW1hZ2U6OmJlZm9yZSxcbi5pbWFnZXNCbG9ja3NfX2Jsb2NrLmhvdmVyIC5pbWFnZXNCbG9ja3NfX2Jsb2NrX19pbWFnZTo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW1hZ2VzQmxvY2tzSW1hZ2VBY3RpdmVCYWNrZ3JvdW5kQ29sb3IsIHJnYmEoODYsIDk4LCA5NSwgMC42MikpO1xufVxuXG4uaW1hZ2VzQmxvY2tzX19ibG9jazpob3ZlciAuaW1hZ2VzQmxvY2tzX19ibG9ja19fY29udGVudF9fbm90SG92ZXIsXG4uaW1hZ2VzQmxvY2tzX19ibG9jay5ob3ZlciAuaW1hZ2VzQmxvY2tzX19ibG9ja19fY29udGVudF9fbm90SG92ZXIge1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaW1hZ2VzQmxvY2tzX19ibG9jazpob3ZlciAuaW1hZ2VzQmxvY2tzX19ibG9ja19fY29udGVudF9faG92ZXIsXG4uaW1hZ2VzQmxvY2tzX19ibG9jay5ob3ZlciAuaW1hZ2VzQmxvY2tzX19ibG9ja19fY29udGVudF9faG92ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaW1hZ2VzQmxvY2tzX19saW5rIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1jb250YWluZXJHdXR0ZXIpO1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLWNvbnRhaW5lckd1dHRlcik7XG4gIG1hcmdpbi10b3A6IGNhbGMoMS4yODEyNXJlbSArIDAuMzc1dncpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5pbWFnZXNCbG9ja3NfX2xpbmsge1xuICAgIG1hcmdpbi10b3A6IDEuNTYyNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5pbWFnZXNCbG9ja3NfX3Jvdy0tMiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBncmlkLWdhcDogMDtcbiAgfVxuICAuaW1hZ2VzQmxvY2tzX19yb3ctLTIgPiAqIHtcbiAgICBmbGV4OiAxO1xuICB9XG4gIC5pbWFnZXNCbG9ja3NfX3Jvdy0tMiA+ICogKyAqIHtcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbTtcbiAgfVxuICAuaW1hZ2VzQmxvY2tzX19ibG9jayA+IGRpdixcbiAgLmltYWdlc0Jsb2NrcyBpbWcge1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuICAuaW1hZ2VzQmxvY2tzX19ibG9jayA+IGltZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5pbWFnZXNCbG9ja3NfX3JvdyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBncmlkLWdhcDogMDtcbiAgfVxuICAuaW1hZ2VzQmxvY2tzX19yb3cgPiAqIHtcbiAgICBmbGV4OiAxO1xuICB9XG4gIC5pbWFnZXNCbG9ja3NfX3JvdyA+ICogKyAqIHtcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbTtcbiAgfVxuICAuaW1hZ2VzQmxvY2tzX19ibG9ja19fY29udGVudCB7XG4gICAgcGFkZGluZy10b3A6IGNhbGMoMS40Mzc1cmVtICsgMi4yNXZ3KTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IGNhbGMoMS40Mzc1cmVtICsgMi4yNXZ3KTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkgYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuaW1hZ2VzQmxvY2tzX19ibG9ja19fY29udGVudCB7XG4gICAgcGFkZGluZy10b3A6IDMuMTI1cmVtO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5pbWFnZXNCbG9ja3NfX2Jsb2NrX19jb250ZW50IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMy4xMjVyZW07XG4gIH1cbn1cblxuLnRleHRJbWFnZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLnRleHRJbWFnZS0tbGVmdCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAudGV4dEltYWdlLS1sZWZ0IC50ZXh0SW1hZ2VfX3RleHQge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDEuNjg3NXJlbSArIDUuMjV2dyk7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnRleHRJbWFnZS0tbGVmdCAudGV4dEltYWdlX190ZXh0IHtcbiAgICBtYXJnaW4tbGVmdDogNS42MjVyZW07XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLnRleHRJbWFnZS0tcmlnaHQge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgfVxuICAudGV4dEltYWdlLS1yaWdodCAudGV4dEltYWdlX190ZXh0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoMS42ODc1cmVtICsgNS4yNXZ3KTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkgYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAudGV4dEltYWdlLS1yaWdodCAudGV4dEltYWdlX190ZXh0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDUuNjI1cmVtO1xuICB9XG59XG5cbi50ZXh0SW1hZ2VfX2ltYWdlID4gKiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB3aWR0aDogMTAwJTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLnRleHRJbWFnZV9faW1hZ2Uge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXRvcDogY2FsYygxLjM0Mzc1cmVtICsgMS4xMjV2dyk7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnRleHRJbWFnZV9faW1hZ2Uge1xuICAgIG1hcmdpbi10b3A6IDIuMTg3NXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAudGV4dEltYWdlX19pbWFnZSA+ICoge1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAudGV4dEltYWdlX19pbWFnZS0tY29sb3JCbG9ja0JlaGluZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctbGVmdDogY2FsYygxLjQzNzVyZW0gKyAyLjI1dncpO1xuICAgIHBhZGRpbmctcmlnaHQ6IGNhbGMoMS40Mzc1cmVtICsgMi4yNXZ3KTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkgYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAudGV4dEltYWdlX19pbWFnZS0tY29sb3JCbG9ja0JlaGluZCB7XG4gICAgcGFkZGluZy1sZWZ0OiAzLjEyNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkgYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAudGV4dEltYWdlX19pbWFnZS0tY29sb3JCbG9ja0JlaGluZCB7XG4gICAgcGFkZGluZy1yaWdodDogMy4xMjVyZW07XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLnRleHRJbWFnZV9faW1hZ2UtLWNvbG9yQmxvY2tCZWhpbmQgPiAqIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbiAgfVxuICAudGV4dEltYWdlX19pbWFnZS0tY29sb3JCbG9ja0JlaGluZDo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEwMHB4KTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wYXZsb3ZhQ29sb3IpO1xuICB9XG59XG5cbi50ZXh0SW1hZ2VfX3RleHQge1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIGZsZXg6IDE7XG59XG5cbi50ZXh0SW1hZ2VfX3RleHRfX3RpdGxlIHtcbiAgZm9udC1mYW1pbHk6IFwibWVuby1iYW5uZXJcIiwgZ2VvcmdpYSwgc2VyaWY7XG4gIGNvbG9yOiAjMDAwO1xuICBmb250LXNpemU6IGNhbGMoMS40MDYyNXJlbSArIDEuODc1dncpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udFdlaWdodEJvbGQpO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC40ZW07XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnRleHRJbWFnZV9fdGV4dF9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMi44MTI1cmVtO1xuICB9XG59XG5cbi50ZXh0SW1hZ2VfX3RleHRfX2NvbnRlbnQge1xuICAtLWhlYWRpbmdNYXJnaW5Ub3A6IHZhcigtLXBhcmFncmFwaEdhcCk7XG4gIC0tdGV4dEFsaWduOiBsZWZ0O1xuICAtLXRleHRDb2xvcjogdmFyKC0tdHVuZG9yYUNvbG9yKTtcbiAgLS10ZXh0Rm9udEZhbWlseTogTXVsaXNoLCBhcmlhbCwgaGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICAtLXRleHRGb250U2l6ZTogMC45Mzc1cmVtO1xuICAtLXRleHRMaW5lSGVpZ2h0OiAxLjQ7XG59XG5cbi50ZXh0SW1hZ2VfX3RleHRfX2NvbnRlbnQgYmxvY2txdW90ZSB7XG4gIC0tYmxvY2txdW90ZVN2Z1dpZHRoOiAxOHB4O1xufVxuXG4udGV4dEltYWdlX190ZXh0X19jb250ZW50IGJsb2NrcXVvdGU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHdpZHRoPScxOCcgaGVpZ2h0PScxNCcgdmlld0JveD0nMCAwIDE4IDE0JyBmaWxsPSdub25lJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFICUzQ3BhdGggZD0nTTYuOTQ0ODggMS43NDA5M0M1LjkwNTUxIDIuODA0ODQgNS4xMjU5OCAzLjgyMDM4IDQuNjA2MyA0Ljc4NzU2QzQuMTMzODYgNS43MDYzOSAzLjgyNjc3IDYuNjk3NzUgMy42ODUwNCA3Ljc2MTY2SDYuNTkwNTVMNi4wOTQ0OSAxNEgwTDAuMzU0MzMxIDkuMzU3NTFDMC40OTYwNjMgNy41MTk4NiAwLjg5NzYzOCA1Ljg1MTQ3IDEuNTU5MDUgNC4zNTIzM0MyLjI2NzcyIDIuODA0ODQgMy4zNTQzMyAxLjM1NDA2IDQuODE4OSAwTDYuOTQ0ODggMS43NDA5M1pNMTggMS43NDA5M0MxNi45NjA2IDIuODA0ODQgMTYuMTgxMSAzLjgyMDM4IDE1LjY2MTQgNC43ODc1NkMxNS4xODkgNS43MDYzOSAxNC44ODE5IDYuNjk3NzUgMTQuNzQwMiA3Ljc2MTY2SDE3LjY0NTdMMTcuMTQ5NiAxNEgxMS4wNTUxTDExLjQwOTQgOS4zNTc1MUMxMS41NTEyIDcuNTE5ODYgMTEuOTUyOCA1Ljg1MTQ3IDEyLjYxNDIgNC4zNTIzM0MxMy4zMjI4IDIuODA0ODQgMTQuNDA5NCAxLjM1NDA2IDE1Ljg3NCAwTDE4IDEuNzQwOTNaJyBmaWxsPSdibGFjaycvJTNFICUzQy9zdmclM0UgXCIpO1xufVxuXG4udGV4dEltYWdlX190ZXh0X19saW5rIHtcbiAgbWFyZ2luLXRvcDogY2FsYygxLjI4MTI1cmVtICsgMC4zNzV2dyk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnRleHRJbWFnZV9fdGV4dF9fbGluayB7XG4gICAgbWFyZ2luLXRvcDogMS41NjI1cmVtO1xuICB9XG59XG5cbi5zZWN0aW9uW2NsYXNzKj1cInNlY3Rpb24tLWJhY2tncm91bmRDb2xvclwiXVtjbGFzcyo9XCJzZWN0aW9uLS1uby1wYWRkaW5nc1wiXSAudGV4dEltYWdlX190ZXh0IHtcbiAgcGFkZGluZy10b3A6IHZhcigtLXNlY3Rpb25QYWRkaW5nLCAyLjE4NzVyZW0pO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuc2VjdGlvbltjbGFzcyo9XCJzZWN0aW9uLS1iYWNrZ3JvdW5kQ29sb3JcIl1bY2xhc3MqPVwic2VjdGlvbi0tbm8tcGFkZGluZ3NcIl0gLnRleHRJbWFnZV9fdGV4dCB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgYm9keS5ob21lIC50ZXh0SW1hZ2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbiAgYm9keS5ob21lIC50ZXh0SW1hZ2UgLnRleHRJbWFnZV9faW1hZ2Uge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbiAgYm9keS5ob21lIC50ZXh0SW1hZ2UgLnRleHRJbWFnZV9fdGV4dCB7XG4gICAgbWFyZ2luLXRvcDogY2FsYygxLjM0Mzc1cmVtICsgMS4xMjV2dyk7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgYm9keS5ob21lIC50ZXh0SW1hZ2UgLnRleHRJbWFnZV9fdGV4dCB7XG4gICAgbWFyZ2luLXRvcDogMi4xODc1cmVtO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIGJvZHkuaG9tZSAuc2VjdGlvbltjbGFzcyo9XCJzZWN0aW9uLS1iYWNrZ3JvdW5kQ29sb3JcIl1bY2xhc3MqPVwic2VjdGlvbi0tbm8tcGFkZGluZ3NcIl0gLnRleHRJbWFnZV9fdGV4dCB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNlY3Rpb25QYWRkaW5nLCAyLjE4NzVyZW0pO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgYm9keS5ob21lIC5zZWN0aW9uW2NsYXNzKj1cInNlY3Rpb24tLWJhY2tncm91bmRDb2xvclwiXVtjbGFzcyo9XCJzZWN0aW9uLS1uby1wYWRkaW5nc1wiXSAudGV4dEltYWdlX190ZXh0IHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxufVxuXG4ucXVlc3Rpb24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoODYsIDk4LCA5NSwgMC45NSkgMCUsICMyMTMyMkUgMTAwJSk7XG4gIHBhZGRpbmc6IDEuMjVyZW0gMC42MjVyZW07XG59XG5cbi5xdWVzdGlvbl9fdGl0bGUge1xuICBmb250LWZhbWlseTogXCJtZW5vLWJhbm5lclwiLCBnZW9yZ2lhLCBzZXJpZjtcbiAgY29sb3I6ICNGRkY7XG4gIGZvbnQtc2l6ZTogY2FsYygxLjM4NzVyZW0gKyAxLjY1dncpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udFdlaWdodEJvbGQpO1xuICBsaW5lLWhlaWdodDogMS4xMTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucXVlc3Rpb25fX3RpdGxlIHtcbiAgICBmb250LXNpemU6IDIuNjI1cmVtO1xuICB9XG59XG5cbi5xdWVzdGlvbl9fY29udGVudCB7XG4gIGZvbnQtZmFtaWx5OiBcIk11bGlzaFwiLCBhcmlhbCwgaGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDFyZW07XG4gIGNvbG9yOiAjRkZGO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udFdlaWdodEJvbGQpO1xuICBsaW5lLWhlaWdodDogMS4zNTtcbiAgbWFyZ2luLXRvcDogY2FsYygxLjI4MTI1cmVtICsgMC4zNzV2dyk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnF1ZXN0aW9uX19jb250ZW50IHtcbiAgICBtYXJnaW4tdG9wOiAxLjU2MjVyZW07XG4gIH1cbn1cblxuLnF1ZXN0aW9uX19jb250ZW50ID4gcCArIHAge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1wYXJhZ3JhcGhHYXAsIDAuOTM3NXJlbSk7XG59XG5cbi5xdWVzdGlvbl9fY29udGVudCBzdHJvbmcge1xuICBmb250LXNpemU6IDEuMDYyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnRXZWlnaHRFeHRyYUJvbGQpO1xufVxuXG4ucXVlc3Rpb25fX2xpbmsge1xuICBtYXJnaW4tdG9wOiBjYWxjKDEuMjgxMjVyZW0gKyAwLjM3NXZ3KTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucXVlc3Rpb25fX2xpbmsge1xuICAgIG1hcmdpbi10b3A6IDEuNTYyNXJlbTtcbiAgfVxufVxuXG4ucXVlc3Rpb25fX2xpbmsgLmJ1dHRvblNxdWFyZUFycm93LCAucXVlc3Rpb25fX2xpbmsgLmZvcm0tc3VibWl0IGJ1dHRvblt0eXBlPVwic3VibWl0XCJdLCAuZm9ybS1zdWJtaXQgLnF1ZXN0aW9uX19saW5rIGJ1dHRvblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLS1idXR0b25TcXVhcmVBcnJvd0NvbG9yOiAjRkZGO1xufVxuXG4ubGFzdFBvc3RzX19wb3N0cyB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICBncmlkLWdhcDogMS41NjI1cmVtO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5sYXN0UG9zdHNfX3Bvc3RzIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDIxLjg3NXJlbSwgMWZyKSk7XG4gIH1cbn1cblxuLmxhc3RQb3N0c19fbGluayB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogY2FsYygxLjQwNjI1cmVtICsgMS44NzV2dyk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmxhc3RQb3N0c19fbGluayB7XG4gICAgbWFyZ2luLXRvcDogMi44MTI1cmVtO1xuICB9XG59XG5cbjpyb290IHtcbiAgLS1sYW5ndWFnZXMtc2VsZWN0b3JfX3BhZGRpbmc6IDExcHg7XG59XG5cbi5sYW5ndWFnZXMtc2VsZWN0b3Ige1xuICBhbGw6IHVuc2V0O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6IGNhbGMoNjBweCAtIHZhcigtLWxhbmd1YWdlcy1zZWxlY3Rvcl9fcGFkZGluZykpO1xuICBoZWlnaHQ6IDMwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBhcmlhbCwgaGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBjb2xvcjogIzBjMWQyYztcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWZpcmVmbHkyQ29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB3aWR0aD0nMTAnIGhlaWdodD0nNycgdmlld0JveD0nMCAwIDEwIDcnIGZpbGw9J25vbmUnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UgJTNDcGF0aCBkPSdNMSAwLjVMNSA1LjVMOSAwLjUnIHN0cm9rZT0nJTIzZmZmZmZmJy8lM0UgJTNDL3N2ZyUzRSBcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb24teTogY2FsYyg1MCUgKyAxcHgpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6IGNhbGMoMTI1JSAtIHZhcigtLWxhbmd1YWdlcy1zZWxlY3Rvcl9fcGFkZGluZykpO1xufVxuXG4uaGVhZGVyX19ib3R0b21fX2FjdGlvbnMgLmxhbmd1YWdlcy1zZWxlY3RvciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHdpZHRoPScxMCcgaGVpZ2h0PSc3JyB2aWV3Qm94PScwIDAgMTAgNycgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSAlM0NwYXRoIGQ9J00xIDAuNUw1IDUuNUw5IDAuNScgc3Ryb2tlPSclMjMwMDAwMDAnLyUzRSAlM0Mvc3ZnJTNFIFwiKTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTAwcHgpIHtcbiAgLmhlYWRlcl9fYm90dG9tX19hY3Rpb25zIC5sYW5ndWFnZXMtc2VsZWN0b3Ige1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmhlYWRlcl9fdG9wIC5zb2NpYWxzTGlzdGluZyBhIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcztcbn1cblxuLmhlYWRlcl9fdG9wIC5zb2NpYWxzTGlzdGluZyBhOmhvdmVyLCAuaGVhZGVyX190b3AgLnNvY2lhbHNMaXN0aW5nIGE6Zm9jdXMge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG59XG5cbi5oZWFkZXJfX2JvdHRvbV9fbG9nbyBzdmcge1xuICB3aWR0aDogMjAwcHg7XG4gIGhlaWdodDogYXV0bztcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzUwcHgpIHtcbiAgLmhlYWRlcl9fYm90dG9tX19sb2dvIHN2ZyB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLmhlYWRlcl9fdG9wX19yaWdodF9fZG9jdG9saWIge1xuICBsZXR0ZXItc3BhY2luZzogMDtcbn1cblxuLmhlYWRlcl9fdG9wX19yaWdodF9fZG9jdG9saWIgPiBhID4gZGl2IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uaGVhZGVyX190b3BfX3JpZ2h0X19kb2N0b2xpYiA+IGEgPiBkaXYgPiAqIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjM1cyBjdWJpYy1iZXppZXIoMC4yNSwgMC4xLCAwLjI1LCAxKTtcbn1cblxuLmhlYWRlcl9fdG9wX19yaWdodF9fZG9jdG9saWIgPiBhID4gZGl2ID4gKjpudGgtY2hpbGQoMikge1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gIC5oZWFkZXJfX3RvcF9fcmlnaHRfX2RvY3RvbGliID4gYTpob3ZlciA+IGRpdiA+ICo6bnRoLWNoaWxkKDEpIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICB9XG4gIC5oZWFkZXJfX3RvcF9fcmlnaHRfX2RvY3RvbGliID4gYTpob3ZlciA+IGRpdiA+ICo6bnRoLWNoaWxkKDIpIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cblxuLmhlYWRlcl9fdG9wX19yaWdodF9fZG9jdG9saWIgPiBhIHNwYW4ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uaGVhZGVyX190b3BfX3JpZ2h0X19waG9uZSA+IGEgPiBkaXYge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5oZWFkZXJfX3RvcF9fcmlnaHRfX3Bob25lID4gYSA+IGRpdiA+ICoge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMzVzIGN1YmljLWJlemllcigwLjI1LCAwLjEsIDAuMjUsIDEpO1xufVxuXG4uaGVhZGVyX190b3BfX3JpZ2h0X19waG9uZSA+IGEgPiBkaXYgPiAqOm50aC1jaGlsZCgyKSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcbiAgLmhlYWRlcl9fdG9wX19yaWdodF9fcGhvbmUgPiBhOmhvdmVyID4gZGl2ID4gKjpudGgtY2hpbGQoMSkge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gIH1cbiAgLmhlYWRlcl9fdG9wX19yaWdodF9fcGhvbmUgPiBhOmhvdmVyID4gZGl2ID4gKjpudGgtY2hpbGQoMikge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuXG4uaGVhZGVyX19ib3R0b21fX2FjdGlvbnNfX21lbnUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvcmR1cm95Q29sb3IpO1xufVxuXG4uaGVhZGVyX19ib3R0b21fX2FjdGlvbnNfX21lbnUgPiAqIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aWR0aDogMy4xMjVyZW07XG4gIGhlaWdodDogMy4xMjVyZW07XG59XG5cbi5oZWFkZXJfX2JvdHRvbV9fYWN0aW9uc19fbWVudSA+ICogPiAuaGFtYnVyZ2VyLWJveCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDhweDtcbn1cblxuLmhlYWRlcl9fYm90dG9tX19hY3Rpb25zX19tZW51ID4gKiAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5oZWFkZXJfX2JvdHRvbV9fYWN0aW9uc19fbWVudSA+ICo6bm90KC5pcy1hY3RpdmUpIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyLFxuLmhlYWRlcl9fYm90dG9tX19hY3Rpb25zX19tZW51ID4gKjpub3QoLmlzLWFjdGl2ZSkgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHdpZHRoOiAxNXB4O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG4uaGFtYnVyZ2VyLS1zbGlkZXIgLmhhbWJ1cmdlci1ib3ggLmhhbWJ1cmdlci1pbm5lciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMjVweDtcbiAgaGVpZ2h0OiAzcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogI0ZGRjtcbn1cblxuLmhhbWJ1cmdlci0tc2xpZGVyLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWJveCAuaGFtYnVyZ2VyLWlubmVyOm50aC1jaGlsZCgxKSB7XG4gIHRvcDogNXB4O1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg1M2RlZyk7XG4gIGxlZnQ6IDBweDtcbiAgd2lkdGg6IDMwcHg7XG59XG5cbi5oYW1idXJnZXItLXNsaWRlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1ib3ggLmhhbWJ1cmdlci1pbm5lcjpudGgtY2hpbGQoMikge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5oYW1idXJnZXItLXNsaWRlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1ib3ggLmhhbWJ1cmdlci1pbm5lcjpudGgtY2hpbGQoMykge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxMjZkZWcpO1xuICB0b3A6IC02cHg7XG4gIHdpZHRoOiAzMHB4O1xufVxuXG4uaGVhZGVyX19ib3R0b21fX21lbnUgPiBuYXYgPiB1bCA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiB1bC5uYXYtZHJvcCBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gYSB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZ2FwOiAxMHB4O1xufVxuXG4uaGVhZGVyX19ib3R0b21fX21lbnUgPiBuYXYgPiB1bCA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiB1bC5uYXYtZHJvcCBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gYTo6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9VVRGLTgsJTNjc3ZnIHdpZHRoPSc3JyBoZWlnaHQ9JzknIHZpZXdCb3g9JzAgMCA3IDknIGZpbGw9J25vbmUnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM2UlM2NwYXRoIGQ9J00xIDhMNSA0LjVMMSAxJyBzdHJva2U9JyUyMzQ4MzIzRScgc3Ryb2tlLXdpZHRoPScyJy8lM2UlM2Mvc3ZnJTNlIFwiKTtcbiAgd2lkdGg6IDdweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbWFyZ2luLXRvcDogNHB4O1xufVxuXG4ubGFuZ3VhZ2VzLXNlbGVjdG9yIC5sYW5nX2N1cnJlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHBhZGRpbmctcmlnaHQ6IDEycHg7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5sYW5ndWFnZXMtc2VsZWN0b3Ige1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5sYW5ndWFnZXMtc2VsZWN0b3Igc3ZnIHtcbiAgd2lkdGg6IDI4cHg7XG4gIGhlaWdodDogMTlweDtcbn1cblxuLmxhbmd1YWdlcy1zZWxlY3RvciAubGlzdF9sYW5nIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICBib3gtc2hhZG93OiAwcHggLTZweCAxMXB4IHJnYmEoMCwgMCwgMCwgMC4wOSk7XG4gIHdpZHRoOiBtYXgtY29udGVudDtcbiAgbGVmdDogMDtcbiAgdG9wOiAxMTAlO1xuICB6LWluZGV4OiA5OTk5OTk5O1xufVxuXG4ubGFuZ3VhZ2VzLXNlbGVjdG9yIC5saXN0X2xhbmcgbGkge1xuICBsaXN0LXN0eWxlOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5sYW5ndWFnZXMtc2VsZWN0b3IgLmxpc3RfbGFuZyBsaSBhIHtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogOHB4O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDVweDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciBlYXNlIC4zcztcbn1cblxuLmxhbmd1YWdlcy1zZWxlY3RvciAubGlzdF9sYW5nIGxpIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDg2LCA5OCwgOTUsIDAuNyk7XG59XG5cbi5sYW5ndWFnZXMtc2VsZWN0b3IgLmxpc3RfbGFuZyBsaSArIGxpIHtcbiAgbWFyZ2luLXRvcDogM3B4O1xuICBwYWRkaW5nLXRvcDogM3B4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzU2NjI1Zjtcbn1cblxuLmxhbmd1YWdlcy1zZWxlY3RvciAubGlzdF9sYW5nLmlzLWFjdGl2ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwOTlweCkge1xuICAuZm9vdGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1jYWxsVG9BY3Rpb25zSGVpZ2h0KTtcbiAgfVxufVxuXG4uZm9vdGVyX19hZGRyZXNzZXNfX3BsYWNlX19waG9uZSA+IGRpdiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmZvb3Rlcl9fYWRkcmVzc2VzX19wbGFjZV9fcGhvbmUgPiBkaXYgPiAqIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjM1cyBjdWJpYy1iZXppZXIoMC4yNSwgMC4xLCAwLjI1LCAxKTtcbn1cblxuLmZvb3Rlcl9fYWRkcmVzc2VzX19wbGFjZV9fcGhvbmUgPiBkaXYgPiAqOm50aC1jaGlsZCgyKSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcbiAgLmZvb3Rlcl9fYWRkcmVzc2VzX19wbGFjZV9fcGhvbmU6aG92ZXIgPiBkaXYgPiAqOm50aC1jaGlsZCgxKSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgfVxuICAuZm9vdGVyX19hZGRyZXNzZXNfX3BsYWNlX19waG9uZTpob3ZlciA+IGRpdiA+ICo6bnRoLWNoaWxkKDIpIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cblxuLmZvb3Rlcl9fZG9jdG9saWIgPiBhID4gZGl2IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uZm9vdGVyX19kb2N0b2xpYiA+IGEgPiBkaXYgPiAqIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjM1cyBjdWJpYy1iZXppZXIoMC4yNSwgMC4xLCAwLjI1LCAxKTtcbn1cblxuLmZvb3Rlcl9fZG9jdG9saWIgPiBhID4gZGl2ID4gKjpudGgtY2hpbGQoMikge1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gIC5mb290ZXJfX2RvY3RvbGliID4gYTpob3ZlciA+IGRpdiA+ICo6bnRoLWNoaWxkKDEpIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICB9XG4gIC5mb290ZXJfX2RvY3RvbGliID4gYTpob3ZlciA+IGRpdiA+ICo6bnRoLWNoaWxkKDIpIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cblxuLmZvb3Rlcl9fZG9jdG9saWIgPiBhIHNwYW4ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uc2VjdGlvbiArIC5zZWN0aW9uOm5vdCguc2VjdGlvbi0tbm8tdG9wTWFyZ2luKS5zZWN0aW9uLS10b3BNYXJnaW4tLXNtIHtcbiAgbWFyZ2luLXRvcDogY2FsYygxLjM0Mzc1cmVtICsgMS4xMjV2dyk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnNlY3Rpb24gKyAuc2VjdGlvbjpub3QoLnNlY3Rpb24tLW5vLXRvcE1hcmdpbikuc2VjdGlvbi0tdG9wTWFyZ2luLS1zbSB7XG4gICAgbWFyZ2luLXRvcDogMi4xODc1cmVtO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnNlY3Rpb24tLW5vLW1hcmdpbi1tb2JpbGUge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uc2VjdGlvbi0tYmFja2dyb3VuZENvbG9yLTE6bm90KC5zZWN0aW9uLS1iYWNrZ3JvdW5kQ29sb3ItLWFmdGVyVGFibGV0KSB7XG4gIC0tc2VjdGlvbkJhY2tncm91bmRDb2xvcjogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSg4NiwgOTgsIDk1LCAwLjk1KSAwJSwgIzIxMzIyRSAxMDAlKTtcbiAgLS1zZWN0aW9uQ29sb3I6ICNGRkY7XG59XG5cbi5zZWN0aW9uLS1iYWNrZ3JvdW5kQ29sb3ItMjpub3QoLnNlY3Rpb24tLWJhY2tncm91bmRDb2xvci0tYWZ0ZXJUYWJsZXQpIHtcbiAgLS1zZWN0aW9uQmFja2dyb3VuZENvbG9yOiB2YXIoLS13aGl0ZVJvY2tDb2xvcik7XG59XG5cbi5zZWN0aW9uLS1iYWNrZ3JvdW5kQ29sb3ItMzpub3QoLnNlY3Rpb24tLWJhY2tncm91bmRDb2xvci0tYWZ0ZXJUYWJsZXQpIHtcbiAgLS1zZWN0aW9uQmFja2dyb3VuZENvbG9yOiB2YXIoLS1jb3JkdXJveUNvbG9yKTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc2VjdGlvbltjbGFzcyo9XCJzZWN0aW9uLS1iYWNrZ3JvdW5kQ29sb3JcIl0uc2VjdGlvbi0tYmFja2dyb3VuZENvbG9yLS1hZnRlclRhYmxldC5zZWN0aW9uLS1iYWNrZ3JvdW5kQ29sb3ItMSB7XG4gICAgLS1zZWN0aW9uQmFja2dyb3VuZENvbG9yOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDg2LCA5OCwgOTUsIDAuOTUpIDAlLCAjMjEzMjJFIDEwMCUpO1xuICAgIC0tc2VjdGlvbkNvbG9yOiAjRkZGO1xuICB9XG4gIC5zZWN0aW9uW2NsYXNzKj1cInNlY3Rpb24tLWJhY2tncm91bmRDb2xvclwiXS5zZWN0aW9uLS1iYWNrZ3JvdW5kQ29sb3ItLWFmdGVyVGFibGV0LnNlY3Rpb24tLWJhY2tncm91bmRDb2xvci0yIHtcbiAgICAtLXNlY3Rpb25CYWNrZ3JvdW5kQ29sb3I6IHZhcigtLXdoaXRlUm9ja0NvbG9yKTtcbiAgfVxuICAuc2VjdGlvbltjbGFzcyo9XCJzZWN0aW9uLS1iYWNrZ3JvdW5kQ29sb3JcIl0uc2VjdGlvbi0tYmFja2dyb3VuZENvbG9yLS1hZnRlclRhYmxldC5zZWN0aW9uLS1iYWNrZ3JvdW5kQ29sb3ItMyB7XG4gICAgLS1zZWN0aW9uQmFja2dyb3VuZENvbG9yOiB2YXIoLS1jb3JkdXJveUNvbG9yKTtcbiAgfVxufVxuXG4uc2VjdGlvbkhlYWRlci0tc3R5bGUtMSAuc2VjdGlvbkhlYWRlcl9fdGl0bGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogY2FsYygxLjM0Mzc1cmVtICsgMS4xMjV2dyk7XG4gIGZvbnQtZmFtaWx5OiBcIm1lbm8tYmFubmVyXCIsIGdlb3JnaWEsIHNlcmlmO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udFdlaWdodFNlbWlCb2xkKTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgcGFkZGluZy10b3A6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC42MjVyZW07XG4gIGJvcmRlci10b3A6IDVweCBzb2xpZCB2YXIoLS1zZWN0aW9uSGVhZGVyQm9yZGVyQ29sb3IsIHZhcigtLWNvbmNyZXRlQ29sb3IpKTtcbiAgYm9yZGVyLWJvdHRvbTogNXB4IHNvbGlkIHZhcigtLXNlY3Rpb25IZWFkZXJCb3JkZXJDb2xvciwgdmFyKC0tY29uY3JldGVDb2xvcikpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5zZWN0aW9uSGVhZGVyLS1zdHlsZS0xIC5zZWN0aW9uSGVhZGVyX190aXRsZSB7XG4gICAgZm9udC1zaXplOiAyLjE4NzVyZW07XG4gIH1cbn1cblxuLnNlY3Rpb25IZWFkZXItLXN0eWxlLTEgLnNlY3Rpb25IZWFkZXJfX3RpdGxlIHN0cm9uZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LWZhbWlseTogXCJhem8tc2Fucy13ZWJcIiwgYXJpYWwsIGhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAwLjU3ZW07XG4gIGNvbG9yOiB2YXIoLS1zZWN0aW9uSGVhZGVyU2Vjb25kQ29sb3IsIHZhcigtLWNvcmR1cm95Q29sb3IpKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnRXZWlnaHRSZWd1bGFyKTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTRlbTtcbiAgbWFyZ2luLXRvcDogMC4yZW07XG59XG5cbi5zZWN0aW9uSGVhZGVyLS1zdHlsZS0xIC5zZWN0aW9uSGVhZGVyX19kZXNjcmlwdGlvbiB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBjb2xvcjogdmFyKC0tY29yZHVyb3lDb2xvcik7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250V2VpZ2h0TGlnaHQpO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwLjkzNzVyZW07XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5zZWN0aW9uLS1xdWVzdGlvbiB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSg4NiwgOTgsIDk1LCAwLjk1KSAwJSwgIzIxMzIyRSAxMDAlKTtcbiAgfVxuICAuc2VjdGlvbi0tcXVlc3Rpb24gLnF1ZXN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICB9XG59XG5cbi5ob21lSGVybyA+IC5jb250YWluZXIge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcInRleHRcIiBcImltYWdlXCI7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICBncmlkLWdhcDogMi4xODc1cmVtO1xufVxuXG4uaG9tZUhlcm8gKyAuc2VjdGlvbiB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMS42MjVyZW0gKyA0LjV2dyk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmhvbWVIZXJvICsgLnNlY3Rpb24ge1xuICAgIG1hcmdpbi10b3A6IDVyZW07XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaG9tZUhlcm8gPiAuY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdyaWQtZ2FwOiAwO1xuICB9XG4gIC5ob21lSGVybyA+IC5jb250YWluZXIgPiAqIHtcbiAgICBmbGV4OiAxO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5ob21lSGVybyA+IC5jb250YWluZXIge1xuICAgIC0tY29udGFpbmVyV2lkdGg6IDkwdnc7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxOTAwcHgpIHtcbiAgLmhvbWVIZXJvIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1pbi1oZWlnaHQ6IDcwMHB4O1xuICAgIG1heC1oZWlnaHQ6IDcwdmg7XG4gIH1cbiAgLmhvbWVIZXJvID4gKiB7XG4gICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmhvbWVIZXJvIC5ob21lSGVyb19faW1hZ2UgaW1nIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb2JqZWN0LXBvc2l0aW9uOiB0b3A7XG4gIH1cbiAgLmhvbWVIZXJvX19jb250ZW50IHtcbiAgICBmbGV4OiA0NSUgIWltcG9ydGFudDtcbiAgfVxuICAuaG9tZUhlcm9fX2ltYWdlIHtcbiAgICBmbGV4OiA1NSUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uaG9tZUhlcm9fX2NvbnRlbnQge1xuICBncmlkLWFyZWE6IHRleHQ7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMi4xODc1cmVtO1xufVxuXG4uaG9tZUhlcm9fX2NvbnRlbnRfX3RpdGxlIHtcbiAgZm9udC1mYW1pbHk6IFwibWVuby1iYW5uZXJcIiwgZ2VvcmdpYSwgc2VyaWY7XG4gIGNvbG9yOiAjMDAwO1xuICBmb250LXNpemU6IGNhbGMoMS4zNzVyZW0gKyAxLjV2dyk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250V2VpZ2h0TGlnaHQpO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMmVtO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5ob21lSGVyb19fY29udGVudF9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICB9XG59XG5cbi5ob21lSGVyb19fY29udGVudF9fdGl0bGUgc3Ryb25nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMC42M2VtO1xuICBjb2xvcjogdmFyKC0tY29yZHVyb3lDb2xvcik7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250V2VpZ2h0UmVndWxhcik7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLmhvbWVIZXJvX19jb250ZW50X190ZXh0IHtcbiAgLS10ZXh0QWxpZ246IGxlZnQ7XG4gIC0tdGV4dENvbG9yOiAjMDAwO1xuICAtLXRleHRGb250U2l6ZTogMC45Mzc1cmVtO1xuICAtLXRleHRMaW5lSGVpZ2h0OiAxLjY7XG4gIG1hcmdpbi10b3A6IDAuOTM3NXJlbTtcbn1cblxuLmhvbWVIZXJvX19idXR0b24ge1xuICBtYXJnaW4tdG9wOiBjYWxjKDEuMzQzNzVyZW0gKyAxLjEyNXZ3KTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuaG9tZUhlcm9fX2J1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogMi4xODc1cmVtO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhvbWVIZXJvX19jb250ZW50IHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1yaWdodDogY2FsYygxLjM0Mzc1cmVtICsgMS4xMjV2dyk7XG4gICAgcGFkZGluZy10b3A6IGNhbGMoMS4zNDM3NXJlbSArIDEuMTI1dncpO1xuICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKDEuMzQzNzVyZW0gKyAxLjEyNXZ3KTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5ob21lSGVyb19fY29udGVudCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyLjE4NzVyZW07XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuaG9tZUhlcm9fX2NvbnRlbnQge1xuICAgIHBhZGRpbmctdG9wOiAyLjE4NzVyZW07XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuaG9tZUhlcm9fX2NvbnRlbnQge1xuICAgIHBhZGRpbmctYm90dG9tOiAyLjE4NzVyZW07XG4gIH1cbn1cblxuLmhvbWVIZXJvX19pbWFnZSB7XG4gIGdyaWQtYXJlYTogaW1hZ2U7XG4gIG1hcmdpbi1yaWdodDogY2FsYyg1MCUgLSA1MHZ3KTtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoNTAlIC0gNTB2dyk7XG59XG5cbi5ob21lSGVyb19faW1hZ2UgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhvbWVIZXJvX19pbWFnZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDUwJSAtIDUwdncpO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5ob21lSGVyb19faW1hZ2UgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiJGJyb3dzZXJDb250ZXh0OiAxNjtcbiRyZnMtcmVtLXZhbHVlOiAkYnJvd3NlckNvbnRleHQ7XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIExBWU9VVFxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kY29udGFpbmVyV2lkdGg6IDEzMDBweDtcbiRndXR0ZXI6IDMwcHg7XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFRZUE9HUkFQSFlcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLyogRGVmYXVsdCBmb250cyAqL1xuJGZvbnRTZXJpZjogZ2VvcmdpYSwgc2VyaWY7XG4kZm9udFNhbnNTZXJpZjogYXJpYWwsIGhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiRmb250TW9ub3NwYWNlOiBjb3VyaWVyLCBtb25vc3BhY2U7XG4kZm9udEN1cnNpdmU6IGN1cnNpdmU7XG5cbi8qIEFwcCBmb250cyAqL1xuJGZvbnRBem9TYW5zOiAnYXpvLXNhbnMtd2ViJywgJGZvbnRTYW5zU2VyaWY7XG4kZm9udE1lbm9CYW5uZXI6ICdtZW5vLWJhbm5lcicsICRmb250U2VyaWY7XG4kZm9udE1vbnRzZXJyYXQ6ICdNb250c2VycmF0JywgJGZvbnRTYW5zU2VyaWY7XG4kZm9udE11bGlzaDogJ011bGlzaCcsICRmb250U2Fuc1NlcmlmO1xuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBCUkVBS1BPSU5UU1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kYnJlYWtwb2ludHM6IChcblx0XHRcInBob25lXCI6IDQwMHB4LFxuXHRcdFwicGhvbmUtd2lkZVwiOiA0ODBweCxcblx0XHRcInBoYWJsZXRcIjogNTYwcHgsXG5cdFx0XCJ0YWJsZXQtc21hbGxcIjogNjQwcHgsXG5cdFx0XCJ0YWJsZXRcIjogNzY4cHgsXG5cdFx0XCJ0YWJsZXQtd2lkZVwiOiAxMDI0cHgsXG5cdFx0XCJkZXNrdG9wXCI6IDEyNDhweCxcblx0XHRcImRlc2t0b3Atd2lkZVwiOiAxNDQwcHgsXG5cdFx0XCJyZXNwb25zaXZlXCI6IDExMDBweFxuKTtcblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gWiBJTkRFWEVTXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiR6SW5kZXhlczogKFxuXHRcdCdoZWFkZXInLFxuXHRcdCdyZXNwb25zaXZlLW1lbnUnLFxuXHRcdCdyZXNwb25zaXZlLW1lbnUtb3ZlcmxheScsXG5cdFx0J3NlYXJjaCcsXG5cdFx0J3NlYXJjaC1vdmVybGF5Jyxcblx0XHQnY2FsbC10by1hY3Rpb25zJyxcblx0XHQnY29udGFjdC1idXR0b25zJyxcblx0XHQnbW9iaWxlIGNvbnRhY3QnLFxuKTtcbiIsIiVyZXNldEZvcm0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgcmVzaXplOiBub25lO1xufVxuXG4lcmVzZXRCdXR0b24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuQG1peGluIGFwcGx5U3R5bGVzKCkge1xuICBibG9ja3F1b3RlIHtcblx0QGV4dGVuZCAlYmxvY2txdW90ZSAhb3B0aW9uYWw7XG4gIH1cblxuICA+ICogKyAqIHtcblx0bWFyZ2luLXRvcDogJHBhcmFncmFwaEdhcDtcbiAgfVxuXG4gIHAge1xuXHRmb250LWZhbWlseTogJHRleHRGb250RmFtaWx5O1xuXHRmb250LXNpemU6ICR0ZXh0Rm9udFNpemU7XG5cdGNvbG9yOiAkdGV4dENvbG9yO1xuXHRmb250LXdlaWdodDogJHRleHRGb250V2VpZ2h0O1xuXHRsaW5lLWhlaWdodDogJHRleHRMaW5lSGVpZ2h0O1xuXHRsZXR0ZXItc3BhY2luZzogJHRleHRMZXR0ZXJTcGFjaW5nO1xuXHR0ZXh0LWFsaWduOiAkdGV4dEFsaWduO1xuXG5cdCsgJWhlYWRpbmdzIHtcblx0ICBtYXJnaW4tdG9wOiAkaGVhZGluZ01hcmdpblRvcDtcblx0fVxuXG5cdGEge1xuXHQgIEBleHRlbmQgJWxpbmsgIW9wdGlvbmFsO1xuXG5cdCAgZm9udC1zaXplOiAkdGV4dEZvbnRTaXplO1xuXHR9XG5cblx0aW1nIHtcblx0ICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG5cdH1cbiAgfVxuXG4gIHVsOm5vdCguZG9udEFwcGx5U3R5bGUpIHtcblx0QGV4dGVuZCAldWwgIW9wdGlvbmFsO1xuXG5cdGZvbnQtZmFtaWx5OiAkdGV4dEZvbnRGYW1pbHk7XG5cdGZvbnQtc2l6ZTogJHRleHRGb250U2l6ZTtcblx0Y29sb3I6ICR0ZXh0Q29sb3I7XG5cdGZvbnQtd2VpZ2h0OiAkdGV4dEZvbnRXZWlnaHQ7XG5cdGxpbmUtaGVpZ2h0OiAkdGV4dExpbmVIZWlnaHQ7XG5cdGxldHRlci1zcGFjaW5nOiAkdGV4dExldHRlclNwYWNpbmc7XG5cdHRleHQtYWxpZ246ICR0ZXh0QWxpZ247XG5cblx0KyAlaGVhZGluZ3Mge1xuXHQgIG1hcmdpbi10b3A6ICRoZWFkaW5nTWFyZ2luVG9wO1xuXHR9XG5cblx0YSB7XG5cdCAgQGV4dGVuZCAlbGluayAhb3B0aW9uYWw7XG5cblx0ICBmb250LXNpemU6ICR0ZXh0Rm9udFNpemU7XG5cdH1cbiAgfVxuXG4gICVoZWFkaW5ncyB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXG5cdCsgJWhlYWRpbmdzIHtcblx0ICBkaXNwbGF5OiBibG9jaztcblx0ICBtYXJnaW4tdG9wOiAwO1xuXHR9XG4gIH1cblxuICBoMSB7XG5cdEBleHRlbmQgJWgxICFvcHRpb25hbDtcbiAgfVxuXG4gIGgyIHtcblx0QGV4dGVuZCAlaDIgIW9wdGlvbmFsO1xuICB9XG5cbiAgaDMge1xuXHRAZXh0ZW5kICVoMyAhb3B0aW9uYWw7XG4gIH1cblxuICBoNCB7XG5cdEBleHRlbmQgJWg0ICFvcHRpb25hbDtcbiAgfVxuXG4gIGg1IHtcblx0QGV4dGVuZCAlaDUgIW9wdGlvbmFsO1xuICB9XG5cbiAgaDYge1xuXHRAZXh0ZW5kICVoNiAhb3B0aW9uYWw7XG4gIH1cblxuICB1bC5kb250QXBwbHlTdHlsZSB7XG5cdD4gbGkgKyBsaSB7XG5cdCAgbWFyZ2luLXRvcDogJHBhcmFncmFwaEdhcDtcblx0fVxuICB9XG59XG4iLCIvLyBNQVRFUklBTCBJTlBVVFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJW1hdGVyaWFsSW5wdXQge1xuICBoZWlnaHQ6IHZhcigtLW1hdGVyaWFsSW5wdXRIZWlnaHQsIDUwcHgpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgdGV4dGFyZWEsXG4gIGlucHV0IHtcblx0QGV4dGVuZCAlcmVzZXRGb3JtO1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xuXHRib3JkZXI6IG5vbmU7XG5cdHBhZGRpbmctdG9wOiAyMHB4O1xuXG5cdCYsXG5cdCY6OnBsYWNlaG9sZGVyIHtcblx0ICBmb250LWZhbWlseTogdmFyKC0tbWF0ZXJpYWxJbnB1dEZvbnRGYW1pbHksIHZhcigtLWZvbnRGYW1pbHksIEFyaWFsLCBzYW5zLXNlcmlmKSk7XG5cdCAgZm9udC1zaXplOiB2YXIoLS1tYXRlcmlhbElucHV0Rm9udFNpemUsIDFyZW0pO1xuXHQgIGNvbG9yOiB2YXIoLS1tYXRlcmlhbElucHV0Q29sb3IsICM5RTlFOUUpO1xuXHQgIGZvbnQtd2VpZ2h0OiB2YXIoLS1tYXRlcmlhbElucHV0Rm9udFdlaWdodCwgNDAwKTtcblx0ICBsaW5lLWhlaWdodDogdmFyKC0tbWF0ZXJpYWxJbnB1dExpbmVIZWlnaHQsIDEpO1xuXHQgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1tYXRlcmlhbElucHV0TGV0dGVyU3BhY2luZywgMHB4KTtcblx0fVxuXG5cdCY6Zm9jdXMgKyBsYWJlbCA+IHNwYW4sXG5cdCYuaXNBY3RpdmUgKyBsYWJlbCA+IHNwYW4ge1xuXHQgIGNvbG9yOiB2YXIoLS1tYXRlcmlhbElucHV0TGFiZWxBY3RpdmVDb2xvciwgIzQyODVGNCk7XG5cdCAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKGNhbGMoLTEzMCUgLSB2YXIoLS1tYXRlcmlhbElucHV0RXh0cmFIZWlnaHQsIDBweCkpKSBzY2FsZSh2YXIoLS1tYXRlcmlhbElucHV0TGFiZWxBY3RpdmVTY2FsZSwgMSkpO1xuXHR9XG5cblx0Jjpmb2N1cyArIGxhYmVsOjphZnRlcixcblx0Ji5pc0FjdGl2ZSArIGxhYmVsOjphZnRlciB7XG5cdCAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7XG5cdH1cbiAgfVxuXG4gIHRleHRhcmVhIHtcblx0cGFkZGluZy10b3A6IDI1cHg7XG4gIH1cblxuICBsYWJlbCB7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0Ym90dG9tOiAwO1xuXHRsZWZ0OiAwO1xuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLW1hdGVyaWFsSW5wdXRCb3JkZXJDb2xvciwgIzlFOUU5RSk7XG5cblx0Jjo6YWZ0ZXIge1xuXHQgIGNvbnRlbnQ6ICcnO1xuXHQgIGRpc3BsYXk6IGJsb2NrO1xuXHQgIHdpZHRoOiAxMDAlO1xuXHQgIGhlaWdodDogMTAwJTtcblx0ICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cdCAgcmlnaHQ6IDA7XG5cdCAgYm90dG9tOiAtMXB4O1xuXHQgIGxlZnQ6IDA7XG5cdCAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgJGVhc2U7XG5cdCAgYm9yZGVyLWJvdHRvbTogdmFyKC0tbWF0ZXJpYWxJbnB1dEJvcmRlckFjdGl2ZUhlaWdodCwgM3B4KSBzb2xpZCB2YXIoLS1tYXRlcmlhbElucHV0Qm9yZGVyQWN0aXZlQ29sb3IsICM0Mjg1RjQpO1xuXHQgIHRyYW5zZm9ybTogc2NhbGVYKDApO1xuXHR9XG5cblx0PiBzcGFuIHtcblx0ICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cdCAgYm90dG9tOiA1cHg7XG5cdCAgbGVmdDogMDtcblx0ICBmb250LWZhbWlseTogdmFyKC0tbWF0ZXJpYWxJbnB1dExhYmVsRm9udEZhbWlseSwgdmFyKC0tZm9udEZhbWlseSwgQXJpYWwsIHNhbnMtc2VyaWYpKTtcblx0ICBmb250LXNpemU6IHZhcigtLW1hdGVyaWFsSW5wdXRMYWJlbEZvbnRTaXplLCAxcmVtKTtcblx0ICBjb2xvcjogdmFyKC0tbWF0ZXJpYWxJbnB1dExhYmVsQ29sb3IsICM5RTlFOUUpO1xuXHQgIGZvbnQtd2VpZ2h0OiB2YXIoLS1tYXRlcmlhbElucHV0TGFiZWxGb250V2VpZ2h0LCA0MDApO1xuXHQgIGxldHRlci1zcGFjaW5nOiB2YXIoLS1tYXRlcmlhbElucHV0TGFiZWxMZXR0ZXJTcGFjaW5nLCAwLjAzZW0pO1xuXHQgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzICRlYXNlLCBjb2xvciAwLjNzICRlYXNlO1xuXHQgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XG5cdH1cbiAgfVxufVxuIiwiJGxpbmVhcjogY3ViaWMtYmV6aWVyKDAuMjUsIDAuMjUsIDAuNzUsIDAuNzUpO1xuJGVhc2U6IGN1YmljLWJlemllcigwLjI1LCAwLjEsIDAuMjUsIDEpO1xuJGVhc2VJbjogY3ViaWMtYmV6aWVyKDAuNzUsIDAsIDAuMjUsIDEpO1xuJGVhc2VPdXQ6IGN1YmljLWJlemllcigwLCAwLCAwLjU4LCAxKTtcbiRlYXNlSW5PdXQ6IGN1YmljLWJlemllcigwLjQyLCAwLCAwLjU4LCAxKTtcblxuJGVhc2VJblF1YWQ6IGN1YmljLWJlemllcigwLjU1LCAwLjA4NSwgMC42OCwgMC41Myk7XG4kZWFzZUluQ3ViaWM6IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuJGVhc2VJblF1YXJ0OiBjdWJpYy1iZXppZXIoMC44OTUsIDAuMDMsIDAuNjg1LCAwLjIyKTtcbiRlYXNlSW5RdWludDogY3ViaWMtYmV6aWVyKDAuNzU1LCAwLjA1LCAwLjg1NSwgMC4wNik7XG4kZWFzZUluU2luZTogY3ViaWMtYmV6aWVyKDAuNDcsIDAsIDAuNzQ1LCAwLjcxNSk7XG4kZWFzZUluRXhwbzogY3ViaWMtYmV6aWVyKDAuOTUsIDAuMDUsIDAuNzk1LCAwLjAzNSk7XG4kZWFzZUluQ2lyYzogY3ViaWMtYmV6aWVyKDAuNiwgMC4wNCwgMC45OCwgMC4zMzUpO1xuJGVhc2VJbkJhY2s6IGN1YmljLWJlemllcigwLjYsIC0wLjI4LCAwLjczNSwgMC4wNDUpO1xuXG4kZWFzZU91dFF1YWQ6IGN1YmljLWJlemllcigwLjI1LCAwLjQ2LCAwLjQ1LCAwLjk0KTtcbiRlYXNlT3V0Q3ViaWM6IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuJGVhc2VPdXRRdWFydDogY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjQ0LCAxKTtcbiRlYXNlT3V0UXVpbnQ6IGN1YmljLWJlemllcigwLjIzLCAxLCAwLjMyLCAxKTtcbiRlYXNlT3V0U2luZTogY3ViaWMtYmV6aWVyKDAuMzksIDAuNTc1LCAwLjU2NSwgMSk7XG4kZWFzZU91dEV4cG86IGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcbiRlYXNlT3V0Q2lyYzogY3ViaWMtYmV6aWVyKDAuMDc1LCAwLjgyLCAwLjE2NSwgMSk7XG4kZWFzZU91dEJhY2s6IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEuMjc1KTtcblxuJGVhc2VJbk91dFF1YWQ6IGN1YmljLWJlemllcigwLjQ1NSwgMC4wMywgMC41MTUsIDAuOTU1KTtcbiRlYXNlSW5PdXRDdWJpYzogY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xuJGVhc2VJbk91dFF1YXJ0OiBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpO1xuJGVhc2VJbk91dFF1aW50OiBjdWJpYy1iZXppZXIoMC44NiwgMCwgMC4wNywgMSk7XG4kZWFzZUluT3V0U2luZTogY3ViaWMtYmV6aWVyKDAuNDQ1LCAwLjA1LCAwLjU1LCAwLjk1KTtcbiRlYXNlSW5PdXRFeHBvOiBjdWJpYy1iZXppZXIoMSwgMCwgMCwgMSk7XG4kZWFzZUluT3V0Q2lyYzogY3ViaWMtYmV6aWVyKDAuNzg1LCAwLjEzNSwgMC4xNSwgMC44Nik7XG4kZWFzZUluT3V0QmFjazogY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7XG4iLCIvLyBST0xMIEhPVkVSIEJVVFRPTlxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQG1peGluIHJvbGxIb3ZlckJ1dHRvbigpIHtcbiAgPiBkaXYge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cblx0PiAqIHtcblx0ICBkaXNwbGF5OiBibG9jaztcblx0ICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjM1cyAkZWFzZTtcblxuXHQgICY6bnRoLWNoaWxkKDIpIHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuXHRcdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cdCAgfVxuXHR9XG4gIH1cbiAgQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcblx0Jjpob3ZlciB7XG5cdCAgPiBkaXYgPiAqIHtcblx0XHQmOm50aC1jaGlsZCgxKSB7XG5cdFx0ICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuXHRcdH1cblxuXHRcdCY6bnRoLWNoaWxkKDIpIHtcblx0XHQgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcblx0XHR9XG5cdCAgfVxuXHR9XG4gIH1cbn1cblxuLy8gRE9DVE9MSUIgQlVUVE9OXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4lZG9jdG9saWJCdXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1kb2N0b2xpYkJ1dHRvbkZvbnRGYW1pbHksIHZhcigtLWZvbnRGYW1pbHksIEFyaWFsLCBzYW5zLXNlcmlmKSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZG9jdG9saWJCdXR0b25Gb250U2l6ZSwgMXJlbSk7XG4gIGNvbG9yOiB2YXIoLS1kb2N0b2xpYkJ1dHRvblRleHRDb2xvciwgIzAwMCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1kb2N0b2xpYkJ1dHRvbkZvbnRXZWlnaHQsIDQwMCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1kb2N0b2xpYkJ1dHRvbkxpbmVIZWlnaHQsIDEuMjUpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB2YXIoLS1kb2N0b2xpYkJ1dHRvblRleHRUcmFuc2Zvcm0sIG5vbmUpO1xuICBwYWRkaW5nOiB2YXIoLS1kb2N0b2xpYkJ1dHRvblBhZGRpbmdUb3AsIDFlbSkgdmFyKC0tZG9jdG9saWJCdXR0b25QYWRkaW5nUmlnaHQsIDFlbSkgdmFyKC0tZG9jdG9saWJCdXR0b25QYWRkaW5nQm90dG9tLCAxZW0pIHZhcigtLWRvY3RvbGliQnV0dG9uUGFkZGluZ0xlZnQsIDFlbSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWRvY3RvbGliQnV0dG9uQmFja2dyb3VuZENvbG9yLCAjRkZGKTtcblxuICBzdmcge1xuXHRtYXJnaW4tbGVmdDogdmFyKC0tZG9jdG9saWJCdXR0b25Mb2dvTWFyZ2luTGVmdCwgMWVtKTtcblxuXHRwYXRoIHtcblx0ICBmaWxsOiB2YXIoLS1kb2N0b2xpYkJ1dHRvbkxvZ29Db2xvciwgIzAwMCk7XG5cdH1cbiAgfVxufVxuXG4vLyBCVVRUT05cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiVidXR0b24ge1xuICBAaW5jbHVkZSBkZWZhdWx0VGV4dCgnYnV0dG9uJyk7XG5cbiAgQGV4dGVuZCAlcmVzZXRCdXR0b247XG5cbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBib3JkZXI6IHZhcigtLWJ1dHRvbkJvcmRlcldpZHRoLCAwKSB2YXIoLS1idXR0b25Cb3JkZXJUeXBlLCBzb2xpZCkgdmFyKC0tYnV0dG9uQm9yZGVyQ29sb3IsIHRyYW5zcGFyZW50KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uQm9yZGVyUmFkaXVzLCAwKTtcbiAgcGFkZGluZzogdmFyKC0tYnV0dG9uUGFkZGluZ1RvcCwgMC41ZW0pIHZhcigtLWJ1dHRvblBhZGRpbmdSaWdodCwgMC41ZW0pIHZhcigtLWJ1dHRvblBhZGRpbmdCb3R0b20sIDAuNWVtKSB2YXIoLS1idXR0b25QYWRkaW5nTGVmdCwgMC41ZW0pO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idXR0b25CYWNrZ3JvdW5kQ29sb3IsICNGMEY4RkYpO1xuICBib3gtc2hhZG93OiB2YXIoLS1idXR0b25Cb3hTaGFkb3csIG5vbmUpO1xufVxuIiwiJWJhY2tUb1RvcCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aWR0aDogdmFyKC0tYmFja1RvVG9wV2lkdGgsIDUwcHgpO1xuICBoZWlnaHQ6IHZhcigtLWJhY2tUb1RvcEhlaWdodCwgNTBweCk7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogdmFyKC0tYmFja1RvVG9wWmluZGV4LCAyMCk7XG4gIHJpZ2h0OiB2YXIoLS1iYWNrVG9Ub3BSaWdodCwgMHB4KTtcbiAgYm90dG9tOiB2YXIoLS1iYWNrVG9Ub3BCb3R0b20sIDIwcHgpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJhY2tUb1RvcEJvcmRlclJhZGl1cywgMHB4KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja1RvVG9wQmFja2dyb3VuZENvbG9yLCAjMDAwKTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjNzLCB0cmFuc2Zvcm0gMC4zcyAkZWFzZUluT3V0O1xuICB0cmFuc2Zvcm06IHZhcigtLWJhY2tUb1RvcFRyYW5zZm9ybSwgdHJhbnNsYXRlM2QoY2FsYygxMDAlICsgdmFyKC0tYmFja1RvVG9wRXh0cmFPZmZzZXQsIDBweCkpLCAwLCAwKSkgdmFyKC0tYmFja1RvVG9wVHJhbnNmb3JtRXh0cmEsIHJvdGF0ZSgwZGVnKSk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblxuICBzdmcge1xuXHR0cmFuc2Zvcm06IHZhcigtLWJhY2tUb1RvcFN2Z1RyYW5zZm9ybSwgbm9uZSk7XG5cblx0cGF0aCB7XG5cdCAgdHJhbnNpdGlvbjogc3Ryb2tlIDAuM3M7XG5cdCAgc3Ryb2tlOiB2YXIoLS1iYWNrVG9Ub3BTdmdDb2xvciwgI0ZGRik7XG5cdH1cbiAgfVxuXG4gIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG5cdCY6aG92ZXIge1xuXHQgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tUb1RvcEFjdGl2ZUJhY2tncm91bmRDb2xvciwgI0ZGRik7XG5cblx0ICBzdmcge1xuXHRcdHBhdGgge1xuXHRcdCAgc3Ryb2tlOiB2YXIoLS1iYWNrVG9Ub3BTdmdBY3RpdmVDb2xvciwgIzAwMCk7XG5cdFx0fVxuXHQgIH1cblx0fVxuICB9XG5cbiAgJi5pcy1hY3RpdmUge1xuXHR0cmFuc2Zvcm06IHZhcigtLWJhY2tUb1RvcEFjdGl2ZVRyYW5zZm9ybSwgdHJhbnNsYXRlM2QoY2FsYygodmFyKC0tYmFja1RvVG9wT2Zmc2V0UmlnaHQsIDIwcHgpICsgdmFyKC0tYmFja1RvVG9wRXh0cmFPZmZzZXQsIDBweCkpICogLTEpLCAwLCAwKSkgdmFyKC0tYmFja1RvVG9wQWN0aXZlVHJhbnNmb3JtRXh0cmEsIHZhcigtLWJhY2tUb1RvcFRyYW5zZm9ybUV4dHJhLCByb3RhdGUoMGRlZykpKTtcbiAgfVxufVxuIiwiQG1peGluIGZvbnQtZmFjZSgkZm9udC1uYW1lLCAkZmlsZS1uYW1lLCAkd2VpZ2h0OiBub3JtYWwsICRzdHlsZTogbm9ybWFsKSB7XG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBxdW90ZSgkZm9udC1uYW1lKTtcbiAgICBzcmM6IHVybCgkZmlsZS1uYW1lICsgJy5vdGYnKSBmb3JtYXQoJ29wZW50eXBlJyk7XG4gICAgc3JjOiB1cmwoJGZpbGUtbmFtZSArICcuZW90Jyk7XG4gICAgc3JjOlxuICAgICAgdXJsKCRmaWxlLW5hbWUgKyAnLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgICB1cmwoJGZpbGUtbmFtZSArICcud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgICAgdXJsKCRmaWxlLW5hbWUgKyAnLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICAgIHVybCgkZmlsZS1uYW1lICsgJy5zdmcjI3skZm9udC1uYW1lfScpIGZvcm1hdCgnc3ZnJyk7XG4gICAgZm9udC13ZWlnaHQ6ICR3ZWlnaHQ7XG4gICAgZm9udC1zdHlsZTogJHN0eWxlO1xuICB9XG59XG5cbkBtaXhpbiBhZG1pbi1zdGlja3ktZml4KCAkb2Zmc2V0OiAwICkge1xuICAkbmFycm93LW9mZnNldDogNDZweDtcbiAgJHdpZGUtb2Zmc2V0OiAzMnB4O1xuXG4gIEBpZiAkb2Zmc2V0ICE9IDAgYW5kIHR5cGUtb2YoJG9mZnNldCkgPT0gJ251bWJlcicge1xuICAgICRuYXJyb3ctb2Zmc2V0OiAkbmFycm93LW9mZnNldCArICRvZmZzZXQ7XG4gICAgJHdpZGUtb2Zmc2V0OiAkd2lkZS1vZmZzZXQgKyAkb2Zmc2V0O1xuICB9XG5cbiAgLmFkbWluLWJhciAmIHtcbiAgICB0b3A6ICRuYXJyb3ctb2Zmc2V0O1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzgzcHgpIHtcbiAgICAgIHRvcDogJHdpZGUtb2Zmc2V0O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gaGVhZGluZ3Mge1xuICBoMSxcbiAgaDIsXG4gIGgzLFxuICBoNCxcbiAgaDUsXG4gIGg2IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gbXEoJHdpZHRoLCAkdHlwZTogbWF4KSB7XG4gIEBpZiBtYXBfaGFzX2tleSgkYnJlYWtwb2ludHMsICR3aWR0aCkge1xuICAgICR3aWR0aDogbWFwX2dldCgkYnJlYWtwb2ludHMsICR3aWR0aCk7XG4gIH1cblxuICBAZWxzZSB7XG4gICAgJHdpZHRoOiAkd2lkdGggKiAxcHg7XG4gIH1cblxuICBAaWYgJHR5cGUgPT0gbWF4IHtcbiAgICAkd2lkdGg6ICR3aWR0aCAtIDFweDtcbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKCN7JHR5cGV9LXdpZHRoOiAkd2lkdGgpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gZGVmYXVsdFRleHQoJGJsb2NrVmFyaWFibGUsICRmb250U2l6ZTogdHJ1ZSwgJGluU2VjdGlvbjogdHJ1ZSkge1xuICBmb250LWZhbWlseTogdmFyKC0tI3skYmxvY2tWYXJpYWJsZX1UZXh0Rm9udEZhbWlseSwgI3skdGV4dEZvbnRGYW1pbHl9KTtcblxuICBAaWYgJGZvbnRTaXplIHtcblx0Zm9udC1zaXplOiB2YXIoLS0jeyRibG9ja1ZhcmlhYmxlfVRleHRGb250U2l6ZSwgI3skdGV4dEZvbnRTaXplfSk7XG4gIH1cblxuICBAaWYgJGluU2VjdGlvbiB7XG4gICAgY29sb3I6IHZhcigtLSN7JGJsb2NrVmFyaWFibGV9VGV4dENvbG9yLCB2YXIoLS1zZWN0aW9uQ29sb3IsICN7JHRleHRDb2xvcn0pKTtcbiAgfVxuXG4gIEBlbHNlIHtcbiAgICBjb2xvcjogdmFyKC0tI3skYmxvY2tWYXJpYWJsZX1UZXh0Q29sb3IsICN7JHRleHRDb2xvcn0pO1xuICB9XG5cbiAgZm9udC13ZWlnaHQ6IHZhcigtLSN7JGJsb2NrVmFyaWFibGV9VGV4dEZvbnRXZWlnaHQsICN7JHRleHRGb250V2VpZ2h0fSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS0jeyRibG9ja1ZhcmlhYmxlfVRleHRMaW5lSGVpZ2h0LCAjeyR0ZXh0TGluZUhlaWdodH0pO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tI3skYmxvY2tWYXJpYWJsZX1UZXh0TGV0dGVyU3BhY2luZywgI3skdGV4dExldHRlclNwYWNpbmd9KTtcbiAgdGV4dC1hbGlnbjogdmFyKC0tI3skYmxvY2tWYXJpYWJsZX1UZXh0QWxpZ24sICN7JHRleHRBbGlnbn0pO1xuICB0ZXh0LXRyYW5zZm9ybTogdmFyKC0tI3skYmxvY2tWYXJpYWJsZX1UZXh0VHJhbnNmb3JtLCAjeyR0ZXh0VHJhbnNmb3JtfSk7XG59XG4iLCIvKiBodHRwOi8vbWV5ZXJ3ZWIuY29tL2VyaWMvdG9vbHMvY3NzL3Jlc2V0L1xuICAgdjIuMCB8IDIwMTEwMTI2XG4gICBMaWNlbnNlOiBub25lIChwdWJsaWMgZG9tYWluKVxuKi9cblxuaHRtbCxcbmJvZHksXG5kaXYsXG5zcGFuLFxuYXBwbGV0LFxub2JqZWN0LFxuaWZyYW1lLFxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2LFxucCxcbmJsb2NrcXVvdGUsXG5wcmUsXG5hLFxuYWJicixcbmFjcm9ueW0sXG5hZGRyZXNzLFxuYmlnLFxuY2l0ZSxcbmNvZGUsXG5kZWwsXG5kZm4sXG5lbSxcbmltZyxcbmlucyxcbmtiZCxcbnEsXG5zLFxuc2FtcCxcbnNtYWxsLFxuc3RyaWtlLFxuc3Ryb25nLFxuc3ViLFxuc3VwLFxudHQsXG52YXIsXG5iLFxudSxcbmksXG5jZW50ZXIsXG5kbCxcbmR0LFxuZGQsXG5vbCxcbnVsLFxubGksXG5maWVsZHNldCxcbmZvcm0sXG5sYWJlbCxcbmxlZ2VuZCxcbnRhYmxlLFxuY2FwdGlvbixcbnRib2R5LFxudGZvb3QsXG50aGVhZCxcbnRyLFxudGgsXG50ZCxcbmFydGljbGUsXG5hc2lkZSxcbmNhbnZhcyxcbmRldGFpbHMsXG5lbWJlZCxcbmZpZ3VyZSxcbmZpZ2NhcHRpb24sXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tZW51LFxubmF2LFxub3V0cHV0LFxucnVieSxcbnNlY3Rpb24sXG5zdW1tYXJ5LFxudGltZSxcbm1hcmssXG5hdWRpbyxcbnZpZGVvIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICBmb250LXZhcmlhbnQ6IGluaGVyaXQ7XG4gIGZvbnQtc3R5bGU6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLyogSFRNTDUgZGlzcGxheS1yb2xlIHJlc2V0IGZvciBvbGRlciBicm93c2VycyAqL1xuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tZW51LFxubmF2LFxuc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5ib2R5IHtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbm9sLFxudWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG5ibG9ja3F1b3RlLFxucSB7XG4gIHF1b3Rlczogbm9uZTtcbn1cblxuYmxvY2txdW90ZTo6YmVmb3JlLFxuYmxvY2txdW90ZTo6YWZ0ZXIsXG5xOjpiZWZvcmUsXG5xOjphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBjb250ZW50OiBub25lO1xufVxuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xufVxuXG5hIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cbiIsIkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtZGV2aWNlLXdpZHRoOiA0ODBweCkge1xuICBib2R5IHtcbiAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IG5vbmU7XG4gIH1cbn1cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgbWluLXdpZHRoOiAwO1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbmh0bWwsXG5ib2R5IHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG5odG1sIHtcbiAgZm9udC1zaXplOiBjYWxjKCgxMDAlICogI3skYnJvd3NlckNvbnRleHR9KSAvIDE2KTtcbn1cblxuYm9keSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1iYXNlRm9udEZhbWlseSwgdmFyKC0tZm9udEZhbWlseSwgQXJpYWwsIHNhbnMtc2VyaWYpKTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBjb2xvcjogdmFyKC0tYmFzZUNvbG9yLCAjMDAwKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWJhc2VGb250V2VpZ2h0LCA0MDApO1xuICBsaW5lLWhlaWdodDogdmFyKC0tYmFzZUxpbmVIZWlnaHQsIDEuMik7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZVNwZWVkO1xufVxuXG5pbWcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5cbnN2ZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWJhc2VGb250V2VpZ2h0Qm9sZCwgdmFyKC0tZm9udFdlaWdodEJvbGQsIDcwMCkpO1xufVxuXG5lbSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxudGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG59XG5cbmlucHV0Oi13ZWJraXQtYXV0b2ZpbGwge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAwIDEwMDBweCAjRkZGIGluc2V0O1xufVxuXG4vLyBTYWZhcmkgYXV0byBmaWxsIGNyZWRlbnRpYWxzIGNvbG9yXG5pbnB1dDpub3QoaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbCk6Oi13ZWJraXQtY29udGFjdHMtYXV0by1maWxsLWJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG59XG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiBzbWFsbGVyO1xufVxuXG50ZXh0YXJlYSB7XG4gIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbi5pc1JvbGxIb3ZlciB7XG4gIEBpbmNsdWRlIHJvbGxIb3ZlckJ1dHRvbigpO1xufVxuXG4vKiBQcmV2ZW50IGlPUyBmcm9tIHpvb21pbmcgaW4gb24gaW5wdXQgZmllbGRzICovXG5Ac3VwcG9ydHMgKC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZSkge1xuICBpbnB1dFt0eXBlPSdjb2xvciddLFxuICBpbnB1dFt0eXBlPSdkYXRlJ10sXG4gIGlucHV0W3R5cGU9J2RhdGV0aW1lJ10sXG4gIGlucHV0W3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sXG4gIGlucHV0W3R5cGU9J2VtYWlsJ10sXG4gIGlucHV0W3R5cGU9J21vbnRoJ10sXG4gIGlucHV0W3R5cGU9J251bWJlciddLFxuICBpbnB1dFt0eXBlPSdwYXNzd29yZCddLFxuICBpbnB1dFt0eXBlPSdzZWFyY2gnXSxcbiAgaW5wdXRbdHlwZT0ndGVsJ10sXG4gIGlucHV0W3R5cGU9J3RleHQnXSxcbiAgaW5wdXRbdHlwZT0ndGltZSddLFxuICBpbnB1dFt0eXBlPSd1cmwnXSxcbiAgaW5wdXRbdHlwZT0nd2VlayddLFxuICBzZWxlY3QsXG4gIHNlbGVjdDpmb2N1cyxcbiAgdGV4dGFyZWEge1xuICAgIGZvbnQtc2l6ZTogaW5pdGlhbCAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIuY29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogY2FsYyh2YXIoLS1jb250YWluZXJXaWR0aCkgKyAodmFyKC0tY29udGFpbmVyR3V0dGVyKSAqIDIpKTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tY29udGFpbmVyR3V0dGVyKTtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1jb250YWluZXJHdXR0ZXIpO1xufVxuXG4uY29udGFpbmVyLWZsdWlkIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tY29udGFpbmVyR3V0dGVyKTtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1jb250YWluZXJHdXR0ZXIpO1xufVxuIiwiLnNlY3Rpb24ge1xuICBjb2xvcjogdmFyKC0tc2VjdGlvbkNvbG9yLCB2YXIoLS1iYXNlQ29sb3IsICMwMDApKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tc2VjdGlvbkJhY2tncm91bmRDb2xvciwgdHJhbnNwYXJlbnQpO1xufVxuXG4uc2VjdGlvbiArIC5zZWN0aW9uOm5vdCguc2VjdGlvbi0tbm8tdG9wTWFyZ2luKSB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNlY3Rpb25NYXJnaW5Ub3AsICN7cmVtKDM1KX0pO1xufVxuXG4uc2VjdGlvbiAuc2VjdGlvbkNvbnRlbnRfX2NvbHVtbiArIC5zZWN0aW9uQ29udGVudF9fY29sdW1uLFxuLnNlY3Rpb24gLnNlY3Rpb25Db250ZW50X19jb2x1bW4gPiAqICsgKiB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNlY3Rpb25Jbm5lck1hcmdpblRvcCwgI3tyZW0oMzUpfSk7XG59XG5cbi8vIFBBRERJTkdTXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4uc2VjdGlvbjpub3QoLnNlY3Rpb24tLW5vLXBhZGRpbmdzKSB7XG4gIHBhZGRpbmc6IHZhcigtLXNlY3Rpb25QYWRkaW5nLCAje3JlbSgyNSl9KSAwO1xufVxuXG4vLyBIRUFERVJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5zZWN0aW9uSGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc2VjdGlvbkhlYWRlck1hcmdpbkJvdHRvbSwgI3tyZW0oMzUpfSk7XG59XG5cbi5zZWN0aW9uSGVhZGVyLS1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5zZWN0aW9uSGVhZGVyLS1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLnNlY3Rpb25IZWFkZXItLXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG4iLCIvLyBBTEwgQ09MT1JTXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBodHRwOi8vY2hpci5hZy9wcm9qZWN0cy9uYW1lLXRoYXQtY29sb3Jcbi8vIGh0dHBzOi8vcmF6b3JsdGQuZ2l0aHViLmlvL3Nhc3Njb2xvdXJmdW5jdGlvbmNhbGN1bGF0b3IvXG5cbi8vICRjb2xvci1uYW1lLWZyb20taHR0cDovL2NoaXIuYWcvcHJvamVjdHMvbmFtZS10aGF0LWNvbG9yOiAjTVlDT0xPUjtcblxuOnJvb3Qge1xuICAtLWFsdG8yQ29sb3I6ICNERURFREU7XG4gIC0tYWx0b0NvbG9yOiAjQ0ZDRkNGO1xuICAtLWJvdWxkZXIyQ29sb3I6ICM3OTc5Nzk7XG4gIC0tYm91bGRlckNvbG9yOiAjNzc3O1xuICAtLWNhcmFycmFDb2xvcjogI0YzRjJGMDtcbiAgLS1jb2RHcmF5MkNvbG9yOiAjMTIxMjEyO1xuICAtLWNvZEdyYXkzQ29sb3I6ICMxNTE1MTU7XG4gIC0tY29kR3JheUNvbG9yOiAjMEQwRDBEO1xuICAtLWNvbmNyZXRlMkNvbG9yOiAjRjNGM0YzO1xuICAtLWNvbmNyZXRlQ29sb3I6ICNGMkYyRjI7XG4gIC0tY29yZHVyb3kyQ29sb3I6ICM2NTZFNkM7XG4gIC0tY29yZHVyb3lDb2xvcjogIzU2NjI1RjtcbiAgLS1kb3ZlR3JheUNvbG9yOiAjNjg2ODY4O1xuICAtLWR1bmVDb2xvcjogIzJCMjUyMztcbiAgLS1kdXN0eUdyYXlDb2xvcjogIzlDOUM5QztcbiAgLS1nYWxsZXJ5MkNvbG9yOiAjRUJFQUU5O1xuICAtLWdhbGxlcnkzQ29sb3I6ICNFREVERUQ7XG4gIC0tZ2FsbGVyeUNvbG9yOiAjRUZFRkVGO1xuICAtLWdyYXlDb2xvcjogIzhDOEM4QztcbiAgLS1ob2xseUNvbG9yOiAjMDExNTEwO1xuICAtLW1ha29Db2xvcjogIzQ0NDk1MTtcbiAgLS1tZXJjdXJ5Q29sb3I6ICNFMkUyRTI7XG4gIC0tbWluZVNoYWZ0MkNvbG9yOiAjMjUyNTI1O1xuICAtLW1pbmVTaGFmdDNDb2xvcjogIzIwMjAyMDtcbiAgLS1taW5lU2hhZnQ0Q29sb3I6ICMzQzNDM0M7XG4gIC0tbWluZVNoYWZ0NUNvbG9yOiAjMjMyMzIzO1xuICAtLW1pbmVTaGFmdENvbG9yOiAjMjgyODI4O1xuICAtLW1vcnRhckNvbG9yOiAjNTM0NzU2O1xuICAtLXBhdmxvdmFDb2xvcjogI0Q3QzFBMTtcbiAgLS1zZWFzaGVsbENvbG9yOiAjRjFGMUYxO1xuICAtLXNpbHZlcjJDb2xvcjogI0NEQ0RDRDtcbiAgLS1zaWx2ZXJDaGFsaWNlMkNvbG9yOiAjQTNBM0EzO1xuICAtLXNpbHZlckNoYWxpY2UzQ29sb3I6ICNBOEE4QTg7XG4gIC0tc2lsdmVyQ2hhbGljZUNvbG9yOiAjOUY5RjlGO1xuICAtLXNpbHZlckNvbG9yOiAjQzRDNEM0O1xuICAtLXR1bmFDb2xvcjogIzM5MzkzQztcbiAgLS10dW5kb3JhMkNvbG9yOiAjNDU0NTQ1O1xuICAtLXR1bmRvcmFDb2xvcjogIzQwNDA0MDtcbiAgLS12aXJpZGlhbkdyZWVuOiAjNjE4MTcwO1xuICAtLXdoaXRlUm9ja0NvbG9yOiAjRUNFNEQ4O1xufVxuIiwiLy8gR1JJRCAvIExBWU9VVFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuOnJvb3Qge1xuICAtLWNvbnRhaW5lckd1dHRlcjogI3skZ3V0dGVyIC8gMn07XG4gIC0tY29udGFpbmVyV2lkdGg6ICN7JGNvbnRhaW5lcldpZHRofTtcbn1cblxuQGluY2x1ZGUgbXEoJ3RhYmxldCcsICdtaW4nKSB7XG4gIDpyb290IHtcbiAgICAtLWNvbnRhaW5lckd1dHRlcjogI3skZ3V0dGVyfTtcbiAgfVxufVxuIiwiLy8gRk9OVFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuOnJvb3Qge1xuICAtLWZvbnRGYW1pbHk6ICN7JGZvbnRBem9TYW5zfTtcbiAgLS1mb250V2VpZ2h0OiB2YXIoLS1mb250V2VpZ2h0UmVndWxhcik7XG59XG5cbi8vIEZPTlQgV0VJR0hUU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuOnJvb3Qge1xuICAtLWZvbnRXZWlnaHRCbGFjazogOTAwO1xuICAtLWZvbnRXZWlnaHRCb2xkOiA3MDA7XG4gIC0tZm9udFdlaWdodEV4dHJhQm9sZDogODAwO1xuICAtLWZvbnRXZWlnaHRMaWdodDogMzAwO1xuICAtLWZvbnRXZWlnaHRNZWRpdW06IDUwMDtcbiAgLS1mb250V2VpZ2h0UmVndWxhcjogNDAwO1xuICAtLWZvbnRXZWlnaHRTZW1pQm9sZDogNjAwO1xuICAtLWZvbnRXZWlnaHRUaGluOiAxMDA7XG59IiwiLnBhZ2VXcmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5odG1sLmZvY3VzLW91dGxpbmUtaGlkZGVuICo6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbiN3cGFkbWluYmFyIHtcbiAgcG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7XG59XG5cbi5tYXRlcmlhbElucHV0IHtcbiAgaW5wdXQsXG4gIHRleHRhcmVhIHtcblx0QGV4dGVuZCAlcmVzZXRGb3JtICFvcHRpb25hbDtcbiAgfVxuXG4gIEBleHRlbmQgJW1hdGVyaWFsSW5wdXQgIW9wdGlvbmFsO1xufVxuXG4uYXBwbHlTdHlsZXMge1xuICBibG9ja3F1b3RlIHtcblx0QGV4dGVuZCAlYmxvY2txdW90ZSAhb3B0aW9uYWw7XG5cblx0KyAqIHtcblx0ICBtYXJnaW4tdG9wOiB2YXIoLS1wYXJhZ3JhcGhHYXAsICN7cmVtKDE1KX0pO1xuXHR9XG5cbiAgfVxuXG4gIC5kZWZhdWx0U2xpZGVyIHtcblx0KyAqIHtcblx0ICBtYXJnaW4tdG9wOiB2YXIoLS1wYXJhZ3JhcGhHYXAsICN7cmVtKDE1KX0pO1xuXHR9XG4gIH1cblxuICBwIHtcblx0Zm9udC1mYW1pbHk6IHZhcigtLXRleHRGb250RmFtaWx5LCB2YXIoLS1iYXNlRm9udEZhbWlseSwgdmFyKC0tZm9udEZhbWlseSwgQXJpYWwsIHNhbnMtc2VyaWYpKSk7XG5cdGZvbnQtc2l6ZTogdmFyKC0tdGV4dFNpemUsIDFyZW0pO1xuXHRjb2xvcjogdmFyKC0tdGV4dENvbG9yLCAjMDAwKTtcblx0Zm9udC13ZWlnaHQ6IHZhcigtLXRleHRGb250V2VpZ2h0LCA0MDApO1xuXHRsaW5lLWhlaWdodDogdmFyKC0tdGV4dExpbmVIZWlnaHQsIDEuMik7XG5cdGxldHRlci1zcGFjaW5nOiB2YXIoLS10ZXh0TGV0dGVyU3BhY2luZywgMCk7XG5cdHRleHQtYWxpZ246IGluaXRpYWw7XG5cblx0KyAqIHtcblx0ICBtYXJnaW4tdG9wOiB2YXIoLS1wYXJhZ3JhcGhHYXAsICN7cmVtKDE1KX0pO1xuXHR9XG5cblx0KyAlaGVhZGluZ3Mge1xuXHQgIG1hcmdpbi10b3A6IHZhcigtLWhlYWRpbmdNYXJnaW5Ub3AsICN7cmVtKDM1KX0pO1xuXHR9XG5cblx0KyBwID4gaW1nIHtcblx0ICBtYXJnaW4tdG9wOiB2YXIoLS1wYXJhZ3JhcGhHYXAsICN7cmVtKDE1KX0pO1xuXHR9XG5cblx0YSB7XG5cdCAgQGV4dGVuZCAlbGluayAhb3B0aW9uYWw7XG5cdCAgZm9udC1zaXplOiB2YXIoLS10ZXh0U2l6ZSwgMXJlbSk7XG5cdH1cblxuXHRpbWcge1xuXHQgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcblx0fVxuICB9XG5cbiAgdWw6bm90KC5kb250QXBwbHlTdHlsZSkge1xuXHRAZXh0ZW5kICV1bCAhb3B0aW9uYWw7XG5cdGZvbnQtZmFtaWx5OiB2YXIoLS10ZXh0Rm9udEZhbWlseSwgdmFyKC0tYmFzZUZvbnRGYW1pbHksIHZhcigtLWZvbnRGYW1pbHksIEFyaWFsLCBzYW5zLXNlcmlmKSkpO1xuXHRmb250LXNpemU6IHZhcigtLXRleHRTaXplLCAxcmVtKTtcblx0Y29sb3I6IHZhcigtLXRleHRDb2xvciwgIzAwMCk7XG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS10ZXh0Rm9udFdlaWdodCwgNDAwKTtcblx0bGluZS1oZWlnaHQ6IHZhcigtLXRleHRMaW5lSGVpZ2h0LCAxLjIpO1xuXHRsZXR0ZXItc3BhY2luZzogdmFyKC0tdGV4dExldHRlclNwYWNpbmcsIDBweCk7XG5cdHRleHQtYWxpZ246IHZhcigtLXRleHRBbGlnbiwganVzdGlmeSk7XG5cblx0KyBwLFxuXHQrIHVsLFxuXHQrIG9sIHtcblx0ICBtYXJnaW4tdG9wOiB2YXIoLS1wYXJhZ3JhcGhHYXAsICN7cmVtKDE1KX0pO1xuXHR9XG5cblx0KyAlaGVhZGluZ3Mge1xuXHQgIG1hcmdpbi10b3A6IHZhcigtLWhlYWRpbmdNYXJnaW5Ub3AsICN7cmVtKDM1KX0pO1xuXHR9XG5cblx0KyBwID4gaW1nIHtcblx0ICBtYXJnaW4tdG9wOiB2YXIoLS1wYXJhZ3JhcGhHYXAsICN7cmVtKDE1KX0pO1xuXHR9XG5cblx0YSB7XG5cdCAgQGV4dGVuZCAlbGluayAhb3B0aW9uYWw7XG5cdCAgZm9udC1zaXplOiB2YXIoLS10ZXh0U2l6ZSwgMXJlbSk7XG5cdH1cbiAgfVxuXG4gIG9sOm5vdCguZG9udEFwcGx5U3R5bGUpIHtcblx0QGV4dGVuZCAlb2wgIW9wdGlvbmFsO1xuXHRmb250LWZhbWlseTogdmFyKC0tdGV4dEZvbnRGYW1pbHksIHZhcigtLWJhc2VGb250RmFtaWx5LCB2YXIoLS1mb250RmFtaWx5LCBBcmlhbCwgc2Fucy1zZXJpZikpKTtcblx0Zm9udC1zaXplOiB2YXIoLS10ZXh0U2l6ZSwgMXJlbSk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0Q29sb3IsICMwMDApO1xuXHRmb250LXdlaWdodDogdmFyKC0tdGV4dEZvbnRXZWlnaHQsIDQwMCk7XG5cdGxpbmUtaGVpZ2h0OiB2YXIoLS10ZXh0TGluZUhlaWdodCwgMS4yKTtcblx0bGV0dGVyLXNwYWNpbmc6IHZhcigtLXRleHRMZXR0ZXJTcGFjaW5nLCAwcHgpO1xuXHR0ZXh0LWFsaWduOiB2YXIoLS10ZXh0QWxpZ24sIGp1c3RpZnkpO1xuXG5cdCsgcCxcblx0KyB1bCxcblx0KyBvbCB7XG5cdCAgbWFyZ2luLXRvcDogdmFyKC0tcGFyYWdyYXBoR2FwLCAje3JlbSgxNSl9KTtcblx0fVxuXG5cdCsgJWhlYWRpbmdzIHtcblx0ICBtYXJnaW4tdG9wOiB2YXIoLS1oZWFkaW5nTWFyZ2luVG9wLCAje3JlbSgzNSl9KTtcblx0fVxuXG5cdCsgcCA+IGltZyB7XG5cdCAgbWFyZ2luLXRvcDogdmFyKC0tcGFyYWdyYXBoR2FwLCAje3JlbSgxNSl9KTtcblx0fVxuXG5cdGEge1xuXHQgIEBleHRlbmQgJWxpbmsgIW9wdGlvbmFsO1xuXHQgIGZvbnQtc2l6ZTogdmFyKC0tdGV4dFNpemUsIDFyZW0pO1xuXHR9XG4gIH1cblxuICAlaGVhZGluZ3Mge1xuXHRkaXNwbGF5OiBibG9jaztcblxuXHQrICVoZWFkaW5ncyB7XG5cdCAgZGlzcGxheTogYmxvY2s7XG5cdCAgbWFyZ2luLXRvcDogMDtcblx0fVxuICB9XG5cbiAgaDEge1xuXHRAZXh0ZW5kICVoMSAhb3B0aW9uYWw7XG4gIH1cblxuICBoMiB7XG5cdEBleHRlbmQgJWgyICFvcHRpb25hbDtcbiAgfVxuXG4gIGgzIHtcblx0QGV4dGVuZCAlaDMgIW9wdGlvbmFsO1xuICB9XG5cbiAgaDQge1xuXHRAZXh0ZW5kICVoNCAhb3B0aW9uYWw7XG4gIH1cbn1cblxudWwuZG9udEFwcGx5U3R5bGUsXG5vbC5kb250QXBwbHlTdHlsZSB7XG4gID4gbGkgKyBsaSB7XG5cdG1hcmdpbi10b3A6IHZhcigtLXRleHQtYmFzZS1tYXJnaW4pO1xuICB9XG59XG5cbkBpbmNsdWRlIG1xKCd0YWJsZXQnKSB7XG4gIGh0bWwge1xuXHRmb250LXNpemU6IDExNSU7XG4gIH1cbn0iLCIvLyBTRUNUSU9OXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG46cm9vdCB7XG4gIEBpbmNsdWRlIG1xKCd0YWJsZXQtd2lkZScsICdtaW4nKSB7XG5cdC0tc2VjdGlvbk1hcmdpblRvcDogI3tyZW0oNzUpfTtcbiAgfVxufVxuXG4vLyBIRUFERVJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbjpyb290IHtcbiAgLS1oZWFkZXJCb3R0b21BY3Rpb25zR2FwOiAje3JlbSgyMCl9O1xuICAtLWhlYWRlck1lbnVBY2NlbnRDb2xvcjogIzAwMDtcbiAgLS1oZWFkZXJNZW51SXRlbUNvbG9yOiB2YXIoLS1kdXN0eUdyYXlDb2xvcik7XG4gIC0taGVhZGVyTWVudUl0ZW1Gb250U2l6ZTogI3tyZW0oMTUpfTtcbiAgLS1oZWFkZXJNZW51SXRlbUdhcDogI3tyZW0oMTApfTtcbiAgLS1oZWFkZXJNZW51SXRlbUl0ZW1Gb250V2VpZ2h0OiB2YXIoLS1mb250V2VpZ2h0TWVkaXVtKTtcbiAgLS1oZWFkZXJNZW51X19zaW1wbGVNZW51Qm9yZGVyQ29sb3I6IHZhcigtLXdoaXRlUm9ja0NvbG9yKTtcbiAgLS1oZWFkZXJNZW51X19zaW1wbGVNZW51Qm9yZGVyV2lkdGg6ICN7cmVtKDYpfTtcbiAgLS1oZWFkZXJNZW51X19zaW1wbGVNZW51SXRlbUJhY2tncm91bmRDb2xvcjogdmFyKC0tY2FyYXJyYUNvbG9yKTtcbiAgLS1oZWFkZXJNZW51X19zaW1wbGVNZW51SXRlbVBhZGRpbmdCb3R0b206ICN7cmVtKDEwKX07XG4gIC0taGVhZGVyTWVudV9fc2ltcGxlTWVudUl0ZW1QYWRkaW5nTGVmdDogI3tyZW0oMTUpfTtcbiAgLS1oZWFkZXJNZW51X19zaW1wbGVNZW51SXRlbVBhZGRpbmdSaWdodDogI3tyZW0oMTUpfTtcbiAgLS1oZWFkZXJNZW51X19zaW1wbGVNZW51SXRlbVBhZGRpbmdUb3A6ICN7cmVtKDEwKX07XG4gIC0taGVhZGVyTWVudV9fc2ltcGxlTWVudVBhZGRpbmdCb3R0b206IDBweDtcbiAgLS1oZWFkZXJNZW51X19zaW1wbGVNZW51UGFkZGluZ0xlZnQ6IDBweDtcbiAgLS1oZWFkZXJNZW51X19zaW1wbGVNZW51UGFkZGluZ1JpZ2h0OiAwcHg7XG4gIC0taGVhZGVyTWVudV9fc2ltcGxlTWVudVBhZGRpbmdUb3A6IDBweDtcbiAgLS1oZWFkZXJUb3BBZGRyZXNzVGV4dFRyYW5zZm9ybTogbm9uZTtcbiAgLS1oZWFkZXJUb3BCYWNrZ3JvdW5kQ29sb3I6IHZhcigtLWNvcmR1cm95Q29sb3IpO1xuICAtLWhlYWRlclRvcENvbG9yOiAjRkZGO1xuICAtLWhlYWRlclRvcENvbnRhY3RGb250V2VpZ2h0OiB2YXIoLS1mb250V2VpZ2h0Qm9sZCk7XG4gIC0taGVhZGVyVG9wQ29udGFjdE1hcmdpbkxlZnQ6ICN7cmVtKDM1KX07XG4gIC0taGVhZGVyVG9wRm9udFNpemU6ICN7cmVtKDEyKX07XG4gIC0taGVhZGVyVG9wRm9udFdlaWdodDogdmFyKC0tZm9udFdlaWdodFJlZ3VsYXIpO1xuICAtLWhlYWRlclRvcEhlaWdodDogI3tyZW0oNDMpfTtcbiAgLS1oZWFkZXJUb3BMZXR0ZXJTcGFjaW5nOiAwLjA2ZW07XG4gIC0taGVhZGVyVG9wUGhvbmVGb250U2l6ZTogI3tyZW0oMTQpfTtcbiAgLS1oZWFkZXJUb3BQaG9uZUZvbnRXZWlnaHQ6IHZhcigtLWZvbnRXZWlnaHRCb2xkKTtcbiAgLS1oZWFkZXJUb3BQaG9uZUxldHRlclNwYWNpbmc6IDAuMDZlbTtcbiAgLS1oZWFkZXJUb3BTb2NpYWxzVG9wOiAycHg7XG4gIC0taGVhZGVyVG9wVGV4dFRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAtLWhlYWRlclppbmRleDogI3t6KCdoZWFkZXInKX07XG4gIC0tcmVzcG9uc2l2ZU1lbnVBY2NlbnRDb2xvcjogIzAwMDtcbiAgLS1yZXNwb25zaXZlTWVudUJhY2tncm91bmRDb2xvcjogI3tyZ2JhKCNGRkYsIC45NSl9O1xuICAtLXJlc3BvbnNpdmVNZW51Qm9yZGVyTGVmdENvbG9yOiB2YXIoLS1jb3JkdXJveUNvbG9yKTtcbiAgLS1yZXNwb25zaXZlTWVudUJvcmRlckxlZnRXaWR0aDogI3tyZW0oNil9O1xuICAtLXJlc3BvbnNpdmVNZW51Qm94U2hhZG93OiAwIDRweCA0cHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgLS1yZXNwb25zaXZlTWVudUNvbG9yOiB2YXIoLS1kdXN0eUdyYXlDb2xvcik7XG4gIC0tcmVzcG9uc2l2ZU1lbnVEcm9wZG93blRvZ2dsZUNvbG9yOiB2YXIoLS1kdXN0eUdyYXlDb2xvcik7XG4gIC0tcmVzcG9uc2l2ZU1lbnVEcm9wZG93blRvZ2dsZU1pbldpZHRoOiAxNXB4O1xuICAtLXJlc3BvbnNpdmVNZW51Rmlyc3RMZXZlbEdhcDogI3tyZW0oMTApfTtcbiAgLS1yZXNwb25zaXZlTWVudUZvbnRTaXplOiAje3JlbSgxNyl9O1xuICAtLXJlc3BvbnNpdmVNZW51Rm9udFdlaWdodDogdmFyKC0tZm9udFdlaWdodE1lZGl1bSk7XG4gIC0tcmVzcG9uc2l2ZU1lbnVMZXR0ZXJTcGFjaW5nOiAwLjAzZW07XG4gIC0tcmVzcG9uc2l2ZU1lbnVNYXhIZWlnaHQ6IDEwdmg7XG4gIC0tcmVzcG9uc2l2ZU1lbnVPdmVybGF5QmFja2dyb3VuZENvbG9yOiAje3JnYmEoIzAwMCwgLjQpfTtcbiAgLS1yZXNwb25zaXZlTWVudU92ZXJsYXlaaW5kZXg6ICN7eigncmVzcG9uc2l2ZS1tZW51LW92ZXJsYXknKX07XG4gIC0tcmVzcG9uc2l2ZU1lbnVQYWRkaW5nQm90dG9tOiAje3JlbSgyMCl9O1xuICAtLXJlc3BvbnNpdmVNZW51UGFkZGluZ1RvcDogI3tyZW0oMjApfTtcbiAgLS1yZXNwb25zaXZlTWVudVN1Yk1lbnVHYXBCZXR3ZWVuSXRlbXM6ICN7cmVtKDE1KX07XG4gIC0tcmVzcG9uc2l2ZU1lbnVTdWJNZW51R2FwQmV0d2Vlbkl0ZW1zSW5uZXI6ICN7cmVtKDE1KX07XG4gIC0tcmVzcG9uc2l2ZU1lbnVTdWJNZW51UGFkZGluZ0xlZnQ6ICN7cmVtKDI1KX07XG4gIC0tcmVzcG9uc2l2ZU1lbnVTdWJNZW51VGl0bGVEcm9wZG93bk1lbnVNYXJnaW5Ub3A6ICN7cmVtKDE1KX07XG4gIC0tcmVzcG9uc2l2ZU1lbnVaaW5kZXg6ICN7eigncmVzcG9uc2l2ZS1tZW51Jyl9O1xuICAtLXNlYXJjaEJhckJhY2tncm91bmRDb2xvcjogdmFyKC0tY29yZHVyb3lDb2xvcik7XG4gIC0tc2VhcmNoQmFyT3ZlcmxheUJhY2tncm91bmRDb2xvcjogI3tyZ2JhKCM1NjYyNUYsIC44KX07XG4gIC0tc2VhcmNoQmFyT3ZlcmxheVppbmRleDogI3t6KCdzZWFyY2gtb3ZlcmxheScpfTtcbiAgLS1zZWFyY2hCYXJQYWRkaW5nQm90dG9tOiAje3JlbSgzMCl9O1xuICAtLXNlYXJjaEJhclBhZGRpbmdUb3A6ICN7cmVtKDI1KX07XG4gIC0tc2VhcmNoQmFyWmluZGV4OiAje3ooJ3NlYXJjaCcpfTtcbiAgLS1zZWFyY2hGb3JtSW5wdXRCb3JkZXJIZWlnaHQ6IDJweDtcbiAgLS1zZWFyY2hGb3JtSW5wdXRDb2xvcjogI0ZGRjtcbiAgLS1zZWFyY2hGb3JtSW5wdXRNYXJnaW5MZWZ0OiAje3JlbSgxMCl9O1xuICAtLXNlYXJjaEZvcm1JbnB1dE1hcmdpblJpZ2h0OiAje3JlbSgxMCl9O1xuICAtLXNlYXJjaEZvcm1JbnB1dFBhZGRpbmdCb3R0b206ICN7cmVtKDIpfTtcblxuICBAaW5jbHVkZSBtcSgxMjUwLCAnbWluJykge1xuXHQtLWhlYWRlckJvdHRvbUFjdGlvbnNHYXA6ICN7cmVtKDM1KX07XG5cdC0taGVhZGVyTWVudUl0ZW1HYXA6ICN7cmVtKDM1KX07XG4gIH1cbn1cblxuLy8gQ0FMTCBUTyBBQ1RJT05TXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG46cm9vdCB7XG4gIC0tY2FsbFRvQWN0aW9uc0JhY2tncm91bmRDb2xvcjogdmFyKC0tY29yZHVyb3lDb2xvcik7XG4gIC0tY2FsbFRvQWN0aW9uc0hlaWdodDogI3tyZW0oNDUpfTtcbiAgLS1jYWxsVG9BY3Rpb25zWmluZGV4OiAje3ooJ2NhbGwtdG8tYWN0aW9ucycpfTtcbn1cblxuLy8gTUFURVJJQUwgSU5QVVRTXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG46cm9vdCB7XG4gIC0tbWF0ZXJpYWxJbnB1dEJvcmRlckFjdGl2ZUNvbG9yOiB2YXIoLS1taW5lU2hhZnQyQ29sb3IpO1xuICAtLW1hdGVyaWFsSW5wdXRCb3JkZXJBY3RpdmVIZWlnaHQ6IDJweDtcbiAgLS1tYXRlcmlhbElucHV0Qm9yZGVyQ29sb3I6IHZhcigtLW1pbmVTaGFmdDJDb2xvcik7XG4gIC0tbWF0ZXJpYWxJbnB1dENvbG9yOiB2YXIoLS1taW5lU2hhZnQyQ29sb3IpO1xuICAtLW1hdGVyaWFsSW5wdXRGb250U2l6ZTogI3tyZW0oMTUpfTtcbiAgLS1tYXRlcmlhbElucHV0Rm9udFdlaWdodDogdmFyKC0tZm9udFdlaWdodExpZ2h0KTtcbiAgLS1tYXRlcmlhbElucHV0TGFiZWxBY3RpdmVDb2xvcjogIzc3NztcbiAgLS1tYXRlcmlhbElucHV0TGFiZWxBY3RpdmVTY2FsZTogLjg7XG4gIC0tbWF0ZXJpYWxJbnB1dExhYmVsQ29sb3I6IHZhcigtLW1pbmVTaGFmdDJDb2xvcik7XG4gIC0tbWF0ZXJpYWxJbnB1dExhYmVsRm9udFNpemU6ICN7cmVtKDE1KX07XG4gIC0tbWF0ZXJpYWxJbnB1dExhYmVsRm9udFdlaWdodDogdmFyKC0tZm9udFdlaWdodExpZ2h0KTtcbiAgLS1tYXRlcmlhbElucHV0TGFiZWxMZXR0ZXJTcGFjaW5nOiAwLjAzZW07XG4gIC0tbWF0ZXJpYWxJbnB1dExldHRlclNwYWNpbmc6IDAuMDNlbTtcbn1cblxuLy8gQ09NTUVOVFNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRjb21tZW50Rm9ybUlucHV0c0dhcDogMTBweDtcbiRjb21tZW50c0Jsb2NrTWFyZ2luVG9wOiAxMDBweDtcbjpyb290IHtcbiAgLS1jb21tZW50Rm9ybVRpdGxlOiAjeyRmb250TWVub0Jhbm5lcn07XG4gIC0tY29tbWVudEZvcm1UaXRsZUJvcmRlckNvbG9yOiB2YXIoLS1taW5lU2hhZnQyQ29sb3IpO1xuICAtLWNvbW1lbnRGb3JtVGl0bGVDb2xvcjogdmFyKC0tbWluZVNoYWZ0MkNvbG9yKTtcbiAgLS1jb21tZW50c0Jsb2NrVGl0bGVGb250RmFtaWx5OiAjeyRmb250TWVub0Jhbm5lcn07XG59XG5cbi8vIEZPT1RFUlxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuOnJvb3Qge1xuICAtLWZvb3RlckFkZHJlc3NOYW1lQ29sb3I6ICMwMDA7XG4gIC0tZm9vdGVyQWRkcmVzc05hbWVGb250U2l6ZTogI3tyZW0oMTQpfTtcbiAgLS1mb290ZXJBZGRyZXNzTmFtZUZvbnRXZWlnaHQ6IHZhcigtLWZvbnRXZWlnaHRNZWRpdW0pO1xuICAtLWZvb3RlckFkZHJlc3NOYW1lTGluZUhlaWdodDogMS42NztcblxuICAtLWZvb3RlckFkZHJlc3NQaG9uZUNvbG9yOiAjMDAwO1xuICAtLWZvb3RlckFkZHJlc3NQaG9uZUZvbnRTaXplOiAje3JlbSgxNCl9O1xuICAtLWZvb3RlckFkZHJlc3NQaG9uZUZvbnRXZWlnaHQ6IHZhcigtLWZvbnRXZWlnaHRCb2xkKTtcbiAgLS1mb290ZXJBZGRyZXNzUGhvbmVMaW5lSGVpZ2h0OiAxLjQzO1xuICAtLWZvb3RlckFkZHJlc3Nlc0JvcmRlckNvbG9yOiAjRTVFNUU1O1xuICAtLWZvb3RlckFkZHJlc3Nlc0dhcDogI3tyZW0oMTApfTtcblxuICAtLWZvb3RlckFkZHJlc3Nlc1BsYWNlc0dhcDogI3tyZW0oMil9O1xuXG4gIC0tZm9vdGVyQm90dG9tTWVudUNvbG9yOiB2YXIoLS1tb3J0YXJDb2xvcik7XG4gIC0tZm9vdGVyQm90dG9tTWVudUZvbnRTaXplOiAje3JlbSgxMyl9O1xuXG4gIC0tZm9vdGVyQm90dG9tTWVudUZvbnRXZWlnaHQ6IHZhcigtLWZvbnRXZWlnaHRNZWRpdW0pO1xuICAtLWZvb3RlckJvdHRvbU1lbnVMZXR0ZXJTcGFjaW5nOiAwLjA1ZW07XG4gIC0tZm9vdGVyTWVudUJhY2tncm91bmRDb2xvcjogdmFyKC0tZHVuZUNvbG9yKTtcbiAgLS1mb290ZXJNZW51Q29sb3I6ICNGRkY7XG5cbiAgLS1mb290ZXJNZW51Rm9udFNpemU6ICN7cmVtKDEyKX07XG4gIC0tZm9vdGVyTWVudUZvbnRXZWlnaHQ6IHZhcigtLWZvbnRXZWlnaHRNZWRpdW0pO1xuICAtLWZvb3Rlck1lbnVMZXR0ZXJTcGFjaW5nOiAwLjFlbTtcbiAgLS1mb290ZXJNZW51TGluZUhlaWdodDogMi4wODtcbiAgLS1mb290ZXJNZW51VGV4dFRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gIEBpbmNsdWRlIG1xKCd0YWJsZXQnLCAnbWluJykge1xuXHQtLWZvb3Rlck1lbnVGb250U2l6ZTogI3tyZW0oMTQpfTtcblx0LS1mb290ZXJNZW51TGluZUhlaWdodDogMi4xNDtcblx0LS1mb290ZXJNZW51VGV4dFRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1xKCd0YWJsZXQtd2lkZScsICdtaW4nKSB7XG5cdC0tZm9vdGVyQWRkcmVzc05hbWVDb2xvcjogdmFyKC0tbWluZVNoYWZ0MkNvbG9yKTtcblx0LS1mb290ZXJBZGRyZXNzTmFtZUZvbnRXZWlnaHQ6IHZhcigtLWZvbnRXZWlnaHRSZWd1bGFyKTtcblx0LS1mb290ZXJBZGRyZXNzTmFtZUxldHRlclNwYWNpbmc6IDBweDtcblx0LS1mb290ZXJBZGRyZXNzTmFtZUxpbmVIZWlnaHQ6IDEuMjU7XG5cdC0tZm9vdGVyQWRkcmVzc05hbWVUZXh0VHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdC0tZm9vdGVyQWRkcmVzc1Bob25lQ29sb3I6IHZhcigtLW1pbmVTaGFmdDJDb2xvcik7XG5cblx0LS1mb290ZXJBZGRyZXNzUGhvbmVMZXR0ZXJTcGFjaW5nOiAwO1xuXHQtLWZvb3RlckFkZHJlc3NQaG9uZUxpbmVIZWlnaHQ6IDEuMjg7XG4gIH1cbn1cblxuLy8gRE9DVE9MSUIgQlVUVE9OXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG46cm9vdCB7XG4gIC0tZG9jdG9saWJCdXR0b25CYWNrZ3JvdW5kQ29sb3I6IHZhcigtLXdoaXRlUm9ja0NvbG9yKTtcbiAgLS1kb2N0b2xpYkJ1dHRvbkZvbnRTaXplOiAje3JlbSgxMil9O1xuICAtLWRvY3RvbGliQnV0dG9uRm9udFdlaWdodDogdmFyKC0tZm9udFdlaWdodEJvbGQpO1xuICAtLWRvY3RvbGliQnV0dG9uTGluZUhlaWdodDogMS4yNTtcbiAgLS1kb2N0b2xpYkJ1dHRvbkxvZ29NYXJnaW5MZWZ0OiAje3JlbSgxMCl9O1xuICAtLWRvY3RvbGliQnV0dG9uUGFkZGluZ0JvdHRvbTogI3tyZW0oMTMpfTtcbiAgLS1kb2N0b2xpYkJ1dHRvblBhZGRpbmdMZWZ0OiAje3JlbSgyNCl9O1xuICAtLWRvY3RvbGliQnV0dG9uUGFkZGluZ1JpZ2h0OiAje3JlbSgyNCl9O1xuICAtLWRvY3RvbGliQnV0dG9uUGFkZGluZ1RvcDogI3tyZW0oMTMpfTtcbiAgLS1kb2N0b2xpYkJ1dHRvblRleHRDb2xvcjogIzAwMDtcbiAgLS1kb2N0b2xpYkJ1dHRvblRleHRUcmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLy8gQkFDSyBUTyBUT1Bcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbjpyb290IHtcbiAgLS1iYWNrVG9Ub3BBY3RpdmVCYWNrZ3JvdW5kQ29sb3I6IHZhcigtLXdoaXRlUm9ja0NvbG9yKTtcbiAgLS1iYWNrVG9Ub3BCYWNrZ3JvdW5kQ29sb3I6IHZhcigtLWNvcmR1cm95Q29sb3IpO1xuICAtLWJhY2tUb1RvcEJvdHRvbTogY2FsYygzNXB4ICsgdmFyKC0tY2FsbFRvQWN0aW9uc0hlaWdodCwgMHB4KSk7XG4gIC0tYmFja1RvVG9wRXh0cmFPZmZzZXQ6IDE1cHg7XG4gIC0tYmFja1RvVG9wU3ZnVHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgLS1iYWNrVG9Ub3BUcmFuc2Zvcm1FeHRyYTogcm90YXRlKDQ1ZGVnKTtcbiAgQGluY2x1ZGUgbXEoJ3Jlc3BvbnNpdmUnLCAnbWluJykge1xuXHQtLWJhY2tUb1RvcEJvdHRvbTogMzVweDtcbiAgfVxufVxuXG4vLyBDT09LSUVcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbjpyb290IHtcbiAgLS1jb29raWVDb2xvcjogdmFyKC0tY29yZHVyb3lDb2xvcik7XG59XG5cbi8vIFBPU1Rcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRwb3N0VGl0bGVGb250U2l6ZTogMjRweDtcbjpyb290IHtcbiAgLS1wb3N0QWNjZW50Q29sb3I6IHZhcigtLWNvcmR1cm95Q29sb3IpO1xuICAtLXBvc3RDYXRlZ29yeUNvbG9yOiB2YXIoLS1jb3JkdXJveUNvbG9yKTtcbiAgLS1wb3N0Q2F0ZWdvcnlGb250U2l6ZTogI3tyZW0oMTMpfTtcbiAgLS1wb3N0Q2F0ZWdvcnlGb250V2VpZ2h0OiB2YXIoLS1mb250V2VpZ2h0Qm9sZCk7XG4gIC0tcG9zdENvbnRlbnRQYWRkaW5nQm90dG9tOiAje3JlbSgxNSl9O1xuICAtLXBvc3RDb250ZW50UGFkZGluZ0xlZnQ6ICN7cmVtKDIwKX07XG4gIC0tcG9zdENvbnRlbnRQYWRkaW5nUmlnaHQ6ICN7cmVtKDIwKX07XG4gIC0tcG9zdENvbnRlbnRQYWRkaW5nVG9wOiAje3JlbSgyMCl9O1xuICAtLXBvc3REYXRlQ29sb3I6IHZhcigtLXNpbHZlckNoYWxpY2UyQ29sb3IpO1xuICAtLXBvc3REYXRlRm9udFNpemU6ICN7cmVtKDEzKX07XG4gIC0tcG9zdEV4Y2VycHRDb2xvcjogdmFyKC0tdHVuZG9yYUNvbG9yKTtcbiAgLS1wb3N0RXhjZXJwdEZvbnRTaXplOiAje3JlbSgxNCl9O1xuICAtLXBvc3RFeGNlcnB0Rm9udFdlaWdodDogdmFyKC0tZm9udFdlaWdodExpZ2h0KTtcbiAgLS1wb3N0RXhjZXJwdExpbmVIZWlnaHQ6IDEuNTtcbiAgLS1wb3N0UmVhZE1vcmVBcnJvd0NvbG9yOiB2YXIoLS1jb3JkdXJveUNvbG9yKTtcbiAgLS1wb3N0UmVhZE1vcmVNYXJnaW5Ub3A6ICN7cmVtKDI1KX07XG4gIC0tcG9zdFJlYWRNb3JlVGV4dENvbG9yOiB2YXIoLS1jb3JkdXJveUNvbG9yKTtcbiAgLS1wb3N0UmVhZE1vcmVUZXh0Rm9udEZhbWlseTogI3skZm9udE11bGlzaH07XG4gIC0tcG9zdFJlYWRNb3JlVGV4dEZvbnRTaXplOiAje3JlbSgxNSl9O1xuICAtLXBvc3RSZWFkTW9yZVRleHRNYXJnaW5MZWZ0OiAje3JlbSgyMCl9O1xuICAtLXBvc3RUaXRsZUNvbG9yOiB2YXIoLS1jb2RHcmF5Q29sb3IpO1xuICAtLXBvc3RUaXRsZUZvbnRGYW1pbHk6ICN7JGZvbnRNZW5vQmFubmVyfTtcbiAgLS1wb3N0VGl0bGVNYXJnaW5Cb3R0b206ICN7ZW0oMTMsIDI0KX07XG4gIC0tcG9zdFRpdGxlTWFyZ2luVG9wOiAje2VtKDE1LCAyNCl9O1xufVxuXG4vLyBBUkNISVZFIFBBR0Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbjpyb290IHtcbiAgLS1hcmNoaXZlUGFnZUhlYWRlckRlc2NyaXB0aW9uQ29sb3I6IHZhcigtLXR1bmRvcmFDb2xvcik7XG4gIC0tYXJjaGl2ZVBhZ2VIZWFkZXJEZXNjcmlwdGlvbkZvbnRTaXplOiAje3JlbSgxNCl9O1xuICAtLWFyY2hpdmVQYWdlSGVhZGVyRGVzY3JpcHRpb25MaW5lSGVpZ2h0OiAxLjY0O1xuICAtLWFyY2hpdmVQYWdlSGVhZGVyVGl0bGVGb250RmFtaWx5OiAjeyRmb250TWVub0Jhbm5lcn07XG4gIC0tYXJjaGl2ZVBhZ2VQb3N0c0NvbHVtbkdhcDogI3tyZW0oMzUpfTtcbiAgLS1hcmNoaXZlUGFnZVBvc3RzTWluV2lkdGg6ICN7cmVtKDMwMCl9O1xuICAtLWFyY2hpdmVQYWdlUG9zdHNSb3dHYXA6ICN7cmVtKDUwKX07XG4gIC0tYXJjaGl2ZVBhZ2VTaWRlYmFyQm9yZGVyQ29sb3I6IHZhcigtLWNvZEdyYXkzQ29sb3IpO1xuICAtLWFyY2hpdmVQYWdlU2lkZWJhckNhdGVnb3J5QWN0aXZlRm9udFdlaWdodDogdmFyKC0tZm9udFdlaWdodEJvbGQpO1xuICAtLWFyY2hpdmVQYWdlU2lkZWJhckNhdGVnb3J5Q29sb3I6IHZhcigtLWR1bmVDb2xvcik7XG4gIC0tYXJjaGl2ZVBhZ2VTaWRlYmFyQ2F0ZWdvcnlGb250U2l6ZTogI3tyZW0oMTQpfTtcbiAgLS1hcmNoaXZlUGFnZVNpZGViYXJDYXRlZ29yeUZvbnRXZWlnaHQ6IHZhcigtLWZvbnRXZWlnaHRNZWRpdW0pO1xuICAtLWFyY2hpdmVQYWdlU2lkZWJhckNhdGVnb3J5TGV0dGVyU3BhY2luZzogMC4xZW07XG4gIC0tYXJjaGl2ZVBhZ2VTaWRlYmFyVGl0bGVDb2xvcjogdmFyKC0tZHVuZUNvbG9yKTtcbiAgLS1hcmNoaXZlUGFnZVNpZGViYXJUaXRsZUZvbnRXZWlnaHQ6IHZhcigtLWZvbnRXZWlnaHRCb2xkKTtcbiAgLS1hcmNoaXZlUGFnZVNpZGViYXJUaXRsZUxldHRlclNwYWNpbmc6IDAuMWVtO1xuICAtLWFyY2hpdmVQYWdlU2lkZWJhclRpdGxlVGV4dFRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gIEBpbmNsdWRlIG1xKCd0YWJsZXQtd2lkZScsICdtaW4nKSB7XG5cdC0tYXJjaGl2ZVBhZ2VQb3N0c0NvbHVtbkdhcDogI3tyZW0oNDApfTtcblx0LS1hcmNoaXZlUGFnZVBvc3RzUm93R2FwOiAje3JlbSg3NSl9O1xuICB9XG5cbiAgQGluY2x1ZGUgbXEoMTUwMCwgJ21pbicpIHtcblx0LS1hcmNoaXZlUGFnZVBvc3RzQ29sdW1uR2FwOiAje3JlbSg1MCl9O1xuXHQtLWFyY2hpdmVQYWdlUG9zdHNSb3dHYXA6ICN7cmVtKDEwMCl9O1xuICB9XG59XG5cbi8vIFBBR0lOQVRJT05cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbjpyb290IHtcbiAgLS1wYWdpbmF0aW9uQWNjZW50Q29sb3I6IHZhcigtLXdoaXRlUm9ja0NvbG9yKTtcbiAgLS1wYWdpbmF0aW9uQm9yZGVyQ29sb3I6IHZhcigtLXdoaXRlUm9ja0NvbG9yKTtcbiAgLS1wYWdpbmF0aW9uQ3VycmVudFBhZ2VGb250U2l6ZTogI3tyZW0oMjApfTtcbiAgLS1wYWdpbmF0aW9uQ3VycmVudFBhZ2VGb250V2VpZ2h0OiB2YXIoLS1mb250V2VpZ2h0Qm9sZCk7XG4gIC0tcGFnaW5hdGlvblBhZ2VDb2xvcjogdmFyKC0tdHVuZG9yYUNvbG9yKTtcbiAgLS1wYWdpbmF0aW9uUGFnZUZvbnRTaXplOiAje3JlbSgxMyl9O1xuICAtLXBhZ2luYXRpb25QYWdlTGV0dGVyU3BhY2luZzogMC4wN2VtO1xuICAtLXBhZ2luYXRpb25QYWdlc0dhcDogI3tyZW0oOCl9O1xuICBAaW5jbHVkZSBtcSgndGFibGV0JywgJ21pbicpIHtcblx0LS1wYWdpbmF0aW9uUGFnZXNHYXA6ICN7cmVtKDE1KX07XG4gIH1cbn1cblxuLy8gQkFTSUMgU1RZTEVTXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG46cm9vdCB7XG4gIC0tdGV4dENvbG9yOiB2YXIoLS10dW5kb3JhQ29sb3IpO1xuICAtLXRleHRGb250V2VpZ2h0OiB2YXIoLS1mb250V2VpZ2h0TGlnaHQpO1xuICAtLXRleHRMaW5lSGVpZ2h0OiAxLjg2O1xuICAtLXRleHRTaXplOiAje3JlbSgxNCl9O1xufSIsIi8vIEJBTk5FUiBDT09LSUVTXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4ubW9kYWwtY29va2llIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiB2YXIoLS16SW5kZXhDb29raWUsIDk5OTkpO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbn1cblxuLmNvbnRhaW5lci1jb29raWVzLXBvcHVwIHtcbiAgd2lkdGg6IDc1JTtcbiAgbWF4LXdpZHRoOiA0MjBweDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IGF1dG87XG4gIGJvdHRvbTogYXV0bztcbiAgbGVmdDogNTAlO1xuICBwYWRkaW5nOiAzMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICBib3gtc2hhZG93OiAwIDAgM3B4ICNDQ0M7XG4gIGJvcmRlci10b3A6IDRweCBzb2xpZCAjMDAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cblxuLm1vZGFsLW92ZXJsYXkge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IHZhcigtLXpJbmRleENvb2tpZSwgOTk5OSk7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xufVxuXG4jY29va2llLW5vdGljZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAzMHB4KTtcbiAgbWF4LXdpZHRoOiB2YXIoLS1jb29raWVOb3RpY2VNYXhXaWR0aCwgI3tyZW0oNTMwKX0pO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IHZhcigtekluZGV4Q29va2llTm90aWNlLCA5OTkpO1xuICBib3R0b206IHZhcigtLWNvb2tpZU5vdGljZUJvdHRvbSwgMTVweCk7XG4gIGxlZnQ6IHZhcigtLWNvb2tpZU5vdGljZUxlZnQsIDE1cHgpO1xuICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogdmFyKC0tY29va2llTm90aWNlQm9yZGVyV2lkdGgsIDRweCkgc29saWQgdmFyKC0tY29va2llQ29sb3IsICNGMDApO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nLXRvcDogdmFyKC0tY29va2llTm90aWNlUGFkZGluZ1RvcCwgI3tyZW0oMTUpfSk7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1jb29raWVOb3RpY2VQYWRkaW5nQm90dG9tLCAje3JlbSgxNSl9KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29va2llTm90aWNlQmFja2dyb3VuZENvbG9yLCAjRkZGKTtcbn1cblxuI2Nvb2tpZS1ub3RpY2UgLmNvbnRhaW5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogYXV0bztcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLWNvb2tpZUNvbnRhaW5lclBhZGRpbmdSaWdodCwgI3tyZW0oMTUpfSk7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tY29va2llQ29udGFpbmVyUGFkZGluZ0xlZnQsICN7cmVtKDE1KX0pO1xufVxuXG4uY29udGFpbmVyLWNvb2tpZXMtcG9wdXAgcCB7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4jY29va2llLW5vdGljZSBwIHtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuLmNvb2tpZS1ub3RpY2UtaDIge1xuICBmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcbiAgY29sb3I6ICMwMDAgIWltcG9ydGFudDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbiAgbGV0dGVyLXNwYWNpbmc6IDFweCAhaW1wb3J0YW50O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBwYWRkaW5nLWJvdHRvbTogN3B4ICFpbXBvcnRhbnQ7XG59XG5cbi5jb29raWUtbm90aWNlLWRpdmlkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDI5cHg7XG4gIGhlaWdodDogMnB4O1xuICBtYXJnaW4tdG9wOiA1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG59XG5cbi5jb29raWUtbm90aWNlLXBhcmFncmFwaCB7XG4gIGZvbnQtc2l6ZTogMTNweCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWJvdHRvbTogMTJweCAhaW1wb3J0YW50O1xufVxuXG4uY29va2llLW5vdGljZS1jbG9zZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwO1xuICB0b3A6IDEwcHg7XG4gIHJpZ2h0OiAxMHB4O1xuXG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMnB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvb2tpZUNvbG9yLCAjRjAwKTtcbiAgfVxuXG4gICY6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gIH1cbn1cblxuLmNvb2tpZS1ub3RpY2UtY2xvc2UgaSB7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgY29sb3I6IHZhcigtLWNvb2tpZUNvbG9yLCAjRjAwKTtcbn1cblxuLmNvb2tpZS1ub3RpY2UtaDItcmVndWxhciB7XG4gIGZvbnQtc2l6ZTogMTJweCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogMzAwICFpbXBvcnRhbnQ7XG4gIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG1hcmdpbjogMDtcbn1cblxuLmNvb2tpZS1ub3RpY2UtaDItcmVndWxhciBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcbiAgY29sb3I6IHZhcigtLWNvb2tpZUNvbG9yLCAjRjAwKSAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICBsaW5lLWhlaWdodDogMTNweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4ICFpbXBvcnRhbnQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWNvb2tpZUNvbG9yLCAjRjAwKSAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIHBhZGRpbmc6IDhweCAxNXB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5jb29raWUtbm90aWNlLWgyLXJlZ3VsYXIgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4ubW9kYWwtY29va2llLXBhcmFncmFwaCB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgY29sb3I6ICMwMDA7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4ubW9kYWwtY29va2llLXBhcmFncmFwaC1ib2xkIHtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBjb2xvcjogIzAwMDtcbiAgZm9udC13ZWlnaHQ6IDMwMCAhaW1wb3J0YW50O1xufVxuXG4ubW9kYWwtY29va2llLXBhcmFncmFwaC1sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgY29sb3I6IHZhcigtLWNvb2tpZUNvbG9yLCAjRjAwKTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5tb2RhbC1jb29raWUtYnV0dG9uLWRpdiB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBtYXJnaW4tdG9wOiAyMHB4O1xufVxuXG4ubW9kYWwtY29va2llLWJ1dHRvbiB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgY29sb3I6ICNGRkYgIWltcG9ydGFudDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29va2llQ29sb3IsICNGMDApICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29va2llQ29sb3IsICNGMDApO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLm1vZGFsLWNvb2tpZS1idXR0b246aG92ZXIge1xuICBjb2xvcjogdmFyKC0tY29va2llQ29sb3IsICNGMDApICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG59XG5cbi5jb29raWVzLXBvcHVwLS1yYWRpb2dyb3VwIHtcbiAgcGFkZGluZzogMTZweCAwIDI1cHg7XG59XG5cbi5jb29raWVzLXBvcHVwLS1jb250ZW50IGxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBsaW5lLWhlaWdodDogMjJweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDIycHg7XG59XG5cbi5jb29raWVzLXBvcHVwLS1jb250ZW50IGxhYmVsIHNwYW4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMnB4O1xuICBoZWlnaHQ6IDEycHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiA0cHg7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI0JCQkRCRTtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA1MCU7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG59XG5cbi5jb29raWVzLXBvcHVwLS1jb250ZW50IGlucHV0W3R5cGU9cmFkaW9dOmNoZWNrZWQgKyBsYWJlbCBzcGFuOjpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgd2lkdGg6IDhweDtcbiAgaGVpZ2h0OiA4cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBtYXJnaW46IGF1dG87XG4gIC1tb3otYm9yZGVyLXJhZGl1czogNTAlO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb29raWVDb2xvciwgI0YwMCk7XG59XG5cbi5jb29raWVzLXBvcHVwLS1jb250ZW50IGlucHV0IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4uY29va2llcy1wb3B1cC0tcmFkaW9ncm91cCA+IGRpdiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5jb29raWVzLXBvcHVwLS1yYWRpb2dyb3VwIGlucHV0W3R5cGU9cmFkaW9dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDkyMHB4KSB7XG4gICNjb29raWUtbm90aWNlIC5jb250YWluZXIgaDI6bGFzdC1jaGlsZCB7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgI2Nvb2tpZS1ub3RpY2Uge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyMHB4KTtcbiAgICBib3R0b206IDEwcHg7XG4gICAgbGVmdDogMTBweDtcbiAgfVxuXG4gIC5jb29raWUtbm90aWNlLWNsb3NlIHtcbiAgICB0b3A6IDVweDtcbiAgICByaWdodDogMTBweDtcbiAgfVxufVxuIiwiLnNjcmVlblJlYWRlck9ubHkge1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBtYXJnaW46IC0xcHg7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci13aWR0aDogMDtcbiAgYm9yZGVyLXN0eWxlOiBpbml0aWFsO1xuICBib3JkZXItY29sb3I6IGluaXRpYWw7XG4gIGJvcmRlci1pbWFnZTogaW5pdGlhbDtcbn1cblxuLnNjcmVlblJlYWRlck9ubHktLWZvY3VzYWJsZTpmb2N1cyxcbi5zY3JlZW5SZWFkZXJPbmx5LS1mb2N1c2FibGU6YWN0aXZlIHtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGNsaXA6IGF1dG87XG4gIG1hcmdpbjogMDtcbn1cblxuLy8gU0tJUCBUTyBDT05URU5UXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4uc2tpcFRvQ29udGVudDpmb2N1cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTAwMDA7XG4gIHRvcDogM3B4O1xuICBsZWZ0OiAzcHg7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbGluZS1oZWlnaHQ6IDY0cHg7XG5cbiAgQGluY2x1ZGUgYWRtaW4tc3RpY2t5LWZpeCgzKTtcblxuICBwYWRkaW5nOiAwIDI0cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuIiwiLmhlYWRlciB7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIHotaW5kZXg6IHZhcigtLWhlYWRlclppbmRleCwgMTAwKTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcblxuICBAaW5jbHVkZSBhZG1pbi1zdGlja3ktZml4KCk7XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taGVhZGVyQmFja2dyb3VuZENvbG9yLCAjRkZGKTtcbn1cblxuLy8gSEVBREVSIFRPUFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLmhlYWRlcl9fdG9wIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQGluY2x1ZGUgbXEoJ3Jlc3BvbnNpdmUnLCAnbWluJykge1xuICAuaGVhZGVyX190b3Age1xuXHRkaXNwbGF5OiBibG9jaztcblx0aGVpZ2h0OiB2YXIoLS1oZWFkZXJUb3BIZWlnaHQsIDQwcHgpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHotaW5kZXg6IHZhcigtLWhlYWRlclppbmRleCwgMTAwKTtcblx0Zm9udC1mYW1pbHk6IHZhcigtLWhlYWRlclRvcEZvbnRGYW1pbHksIHZhcigtLWZvbnRGYW1pbHksIEFyaWFsLCBzYW5zLXNlcmlmKSk7XG5cdGZvbnQtc2l6ZTogdmFyKC0taGVhZGVyVG9wRm9udFNpemUsIDFyZW0pO1xuXHRjb2xvcjogdmFyKC0taGVhZGVyVG9wQ29sb3IsICNGRkYpO1xuXHRmb250LXdlaWdodDogdmFyKC0taGVhZGVyVG9wRm9udFdlaWdodCwgNDAwKTtcblx0bGluZS1oZWlnaHQ6IHZhcigtLWhlYWRlclRvcEhlaWdodCwgNDBweCk7XG5cdGxldHRlci1zcGFjaW5nOiB2YXIoLS1oZWFkZXJUb3BMZXR0ZXJTcGFjaW5nLCAwKTtcblx0dGV4dC10cmFuc2Zvcm06IHZhcigtLWhlYWRlclRvcFRleHRUcmFuc2Zvcm0sIG5vbmUpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1oZWFkZXJUb3BCYWNrZ3JvdW5kQ29sb3IsICMwMDApO1xuICB9XG4gIC5oZWFkZXJfX3RvcDpub3QoLmhlYWRlcl9fdG9wLS1jdXN0b21UZW1wbGF0ZSkge1xuXHQ+IGRpdiB7XG5cdCAgZGlzcGxheTogZmxleDtcblx0ICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdCAgcGFkZGluZy1yaWdodDogMDtcblx0fVxuICB9XG59XG5cbi8vIEhFQURFUiBUT1AgTEVGVFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGluY2x1ZGUgbXEoJ3Jlc3BvbnNpdmUnLCAnbWluJykge1xuICAuaGVhZGVyX190b3A6bm90KC5oZWFkZXJfX3RvcC0tY3VzdG9tVGVtcGxhdGUpIHtcblx0LmhlYWRlcl9fdG9wX19sZWZ0IHtcblx0ICBkaXNwbGF5OiBmbGV4O1xuXHQgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdH1cblxuXHQuaGVhZGVyX190b3BfX2xlZnQgPiAqICsgKiB7XG5cdCAgcG9zaXRpb246IHJlbGF0aXZlO1xuXHQgIG1hcmdpbi1sZWZ0OiB2YXIoLS1oZWFkZXJUb3BMZWZ0R2FwLCAxcmVtKTtcblx0ICBwYWRkaW5nLWxlZnQ6IHZhcigtLWhlYWRlclRvcExlZnRHYXAsIDFyZW0pO1xuXG5cdCAgJjo6YmVmb3JlIHtcblx0XHRjb250ZW50OiAnJztcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR3aWR0aDogMXB4O1xuXHRcdGhlaWdodDogY2FsYygxMDAlIC0gdmFyKC0taGVhZGVyVG9wTGVmdERpdmlkZXJSZW1vdmVIZWlnaHQsIDIwcHgpKTtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwO1xuXHRcdGJvdHRvbTogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdG1hcmdpbjogYXV0bztcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1oZWFkZXJUb3BMZWZ0RGl2aWRlckNvbG9yLCB2YXIoLS1oZWFkZXJUb3BDb2xvciwgI0ZGRikpO1xuXHQgIH1cblx0fVxuXG5cdC5oZWFkZXJfX3RvcF9fbGVmdCAuc29jaWFsc0xpc3Rpbmcge1xuXHQgIGRpc3BsYXk6IGZsZXg7XG5cdCAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuXHQgIGEge1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0ICB9XG5cblx0ICBsaSB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR0b3A6IHZhcigtLWhlYWRlclRvcFNvY2lhbHNUb3AsIDFweCk7XG5cblx0XHQrIGxpIHtcblx0XHQgIG1hcmdpbi1sZWZ0OiB2YXIoLS1oZWFkZXJUb3BTb2NpYWxzR2FwLCAxcmVtKTtcblx0XHR9XG5cblx0XHRzdmcge1xuXHRcdCAgcGF0aCxcblx0XHQgIHBvbHlnb24ge1xuXHRcdFx0dHJhbnNpdGlvbjogZmlsbCAwLjNzO1xuXHRcdFx0ZmlsbDogdmFyKC0taGVhZGVyVG9wU29jaWFsc0NvbG9yLCB2YXIoLS1oZWFkZXJUb3BDb2xvciwgI0ZGRikpO1xuXHRcdCAgfVxuXHRcdH1cblxuXHRcdGE6aG92ZXIsXG5cdFx0YTpmb2N1cyB7XG5cdFx0ICBzdmcge1xuXHRcdFx0cGF0aCxcblx0XHRcdHBvbHlnb24ge1xuXHRcdFx0ICBmaWxsOiB2YXIoLS1oZWFkZXJUb3BTb2NpYWxzQWN0aXZlQ29sb3IsIHZhcigtLWhlYWRlclRvcEFjY2VudENvbG9yLCB2YXIoLS1oZWFkZXJUb3BDb2xvciwgI0ZGRikpKTtcblx0XHRcdH1cblx0XHQgIH1cblx0XHR9XG5cdCAgfVxuXHR9XG5cblx0LmhlYWRlcl9fdG9wX19sZWZ0X19hZGRyZXNzZXMge1xuXHQgIGRpc3BsYXk6IGZsZXg7XG5cdCAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblx0fVxuXG5cdC5oZWFkZXJfX3RvcF9fbGVmdF9fYWRkcmVzc2VzID4gKiB7XG5cdCAgZm9udC1mYW1pbHk6IHZhcigtLWhlYWRlclRvcEFkZHJlc3NGb250RmFtaWx5LCB2YXIoLS1oZWFkZXJUb3BGb250RmFtaWx5LCB2YXIoLS1mb250RmFtaWx5LCBBcmlhbCwgc2Fucy1zZXJpZikpKTtcblx0ICBmb250LXNpemU6IHZhcigtLWhlYWRlclRvcEFkZHJlc3NGb250U2l6ZSwgdmFyKC0taGVhZGVyVG9wRm9udFNpemUsIDFyZW0pKTtcblx0ICBjb2xvcjogdmFyKC0taGVhZGVyVG9wQWRkcmVzc0NvbG9yLCB2YXIoLS1oZWFkZXJUb3BDb2xvciwgI0ZGRikpO1xuXHQgIGZvbnQtd2VpZ2h0OiB2YXIoLS1oZWFkZXJUb3BBZGRyZXNzRm9udFdlaWdodCwgdmFyKC0taGVhZGVyVG9wRm9udFdlaWdodCwgNDAwKSk7XG5cdCAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWhlYWRlclRvcEFkZHJlc3NMZXR0ZXJTcGFjaW5nLCB2YXIoLS1oZWFkZXJUb3BMZXR0ZXJTcGFjaW5nLCAwKSk7XG5cdCAgdGV4dC10cmFuc2Zvcm06IHZhcigtLWhlYWRlclRvcEFkZHJlc3NUZXh0VHJhbnNmb3JtLCB2YXIoLS1oZWFkZXJUb3BUZXh0VHJhbnNmb3JtLCBub25lKSk7XG5cdCAgdHJhbnNpdGlvbjogY29sb3IgMC4zcztcblxuXHQgICY6aG92ZXIsXG5cdCAgJjpmb2N1cyB7XG5cdFx0ZmlsbDogdmFyKC0taGVhZGVyVG9wQWRkcmVzc0FjdGl2ZUNvbG9yLCB2YXIoLS1oZWFkZXJUb3BBY2NlbnRDb2xvciwgdmFyKC0taGVhZGVyVG9wQ29sb3IsICNGRkYpKSk7XG5cdCAgfVxuXHR9XG4gIH1cbn1cblxuLy8gSEVBREVSIFRPUCBSSUdIVFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGluY2x1ZGUgbXEoJ3Jlc3BvbnNpdmUnLCAnbWluJykge1xuICAuaGVhZGVyX190b3A6bm90KC5oZWFkZXJfX3RvcC0tY3VzdG9tVGVtcGxhdGUpIHtcblx0LmhlYWRlcl9fdG9wX19yaWdodCB7XG5cdCAgZGlzcGxheTogZmxleDtcblx0fVxuXG5cdC5oZWFkZXJfX3RvcF9fcmlnaHRfX3Bob25lIHtcblx0ICBkaXNwbGF5OiBmbGV4O1xuXHQgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdH1cblxuXHQuaGVhZGVyX190b3BfX3JpZ2h0X19waG9uZSA+IGEge1xuXHQgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHQgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdCAgZm9udC1mYW1pbHk6IHZhcigtLWhlYWRlclRvcFBob25lRm9udEZhbWlseSwgdmFyKC0taGVhZGVyVG9wRm9udEZhbWlseSwgdmFyKC0tZm9udEZhbWlseSwgQXJpYWwsIHNhbnMtc2VyaWYpKSk7XG5cdCAgZm9udC1zaXplOiB2YXIoLS1oZWFkZXJUb3BQaG9uZUZvbnRTaXplLCB2YXIoLS1oZWFkZXJUb3BGb250U2l6ZSwgMXJlbSkpO1xuXHQgIGNvbG9yOiB2YXIoLS1oZWFkZXJUb3BQaG9uZUNvbG9yLCB2YXIoLS1oZWFkZXJUb3BDb2xvciwgI0ZGRikpO1xuXHQgIGZvbnQtd2VpZ2h0OiB2YXIoLS1oZWFkZXJUb3BQaG9uZUZvbnRXZWlnaHQsIHZhcigtLWhlYWRlclRvcEZvbnRXZWlnaHQsIDQwMCkpO1xuXHQgIGxpbmUtaGVpZ2h0OiB2YXIoLS1oZWFkZXJUb3BQaG9uZUxpbmVIZWlnaHQsIDEuMik7XG5cdCAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWhlYWRlclRvcFBob25lTGV0dGVyU3BhY2luZywgdmFyKC0taGVhZGVyVG9wTGV0dGVyU3BhY2luZywgMCkpO1xuXHQgIHRleHQtdHJhbnNmb3JtOiB2YXIoLS1oZWFkZXJUb3BQaG9uZVRleHRUcmFuc2Zvcm0sIHZhcigtLWhlYWRlclRvcFRleHRUcmFuc2Zvcm0sIG5vbmUpKTtcblxuXHQgIHN2ZyB7XG5cdFx0bWFyZ2luLXJpZ2h0OiB2YXIoLS1oZWFkZXJUb3BQaG9uZUxvZ29NYXJnaW5SaWdodCwgMWVtKTtcblxuXHRcdHBhdGgge1xuXHRcdCAgZmlsbDogdmFyKC0taGVhZGVyVG9wUGhvbmVMb2dvQ29sb3IsIHZhcigtLWhlYWRlclRvcENvbG9yLCAjRkZGKSk7XG5cdFx0fVxuXHQgIH1cblx0fVxuXG5cdC5oZWFkZXJfX3RvcF9fcmlnaHRfX2NvbnRhY3Qge1xuXHQgIG1hcmdpbi1sZWZ0OiB2YXIoLS1oZWFkZXJUb3BDb250YWN0TWFyZ2luTGVmdCwgI3tyZW0oMjApfSk7XG5cdH1cblxuXHQuaGVhZGVyX190b3BfX3JpZ2h0X19jb250YWN0ID4gYSB7XG5cdCAgcG9zaXRpb246IHJlbGF0aXZlO1xuXHQgIGZvbnQtZmFtaWx5OiB2YXIoLS1oZWFkZXJUb3BDb250YWN0Rm9udEZhbWlseSwgdmFyKC0taGVhZGVyVG9wRm9udEZhbWlseSwgdmFyKC0tZm9udEZhbWlseSwgQXJpYWwsIHNhbnMtc2VyaWYpKSk7XG5cdCAgZm9udC1zaXplOiB2YXIoLS1oZWFkZXJUb3BDb250YWN0Rm9udFNpemUsIHZhcigtLWhlYWRlclRvcEZvbnRTaXplLCAxcmVtKSk7XG5cdCAgY29sb3I6IHZhcigtLWhlYWRlclRvcENvbnRhY3RDb2xvciwgdmFyKC0taGVhZGVyVG9wQ29sb3IsICNGRkYpKTtcblx0ICBmb250LXdlaWdodDogdmFyKC0taGVhZGVyVG9wQ29udGFjdEZvbnRXZWlnaHQsIHZhcigtLWhlYWRlclRvcEZvbnRXZWlnaHQsIDQwMCkpO1xuXHQgIGxpbmUtaGVpZ2h0OiB2YXIoLS1oZWFkZXJUb3BDb250YWN0TGluZUhlaWdodCwgMS4yKTtcblx0ICBsZXR0ZXItc3BhY2luZzogdmFyKC0taGVhZGVyVG9wQ29udGFjdExldHRlclNwYWNpbmcsIHZhcigtLWhlYWRlclRvcExldHRlclNwYWNpbmcsIDApKTtcblx0ICB0ZXh0LXRyYW5zZm9ybTogdmFyKC0taGVhZGVyVG9wQ29udGFjdFRleHRUcmFuc2Zvcm0sIHZhcigtLWhlYWRlclRvcFRleHRUcmFuc2Zvcm0sIG5vbmUpKTtcblxuXHQgICY6OmFmdGVyIHtcblx0XHRjb250ZW50OiAnJztcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDFweDtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0Ym90dG9tOiAtMnB4O1xuXHRcdGxlZnQ6IDA7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taGVhZGVyVG9wQ29udGFjdExpbmVDb2xvciwgdHJhbnNwYXJlbnQpO1xuXHQgIH1cblxuXHQgICY6OmJlZm9yZSB7XG5cdFx0Y29udGVudDogJyc7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0d2lkdGg6IDA7XG5cdFx0aGVpZ2h0OiAxcHg7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHotaW5kZXg6IDE7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0Ym90dG9tOiAtMnB4O1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhlYWRlclRvcENvbnRhY3RBY3RpdmVMaW5lQ29sb3IsIHZhcigtLWhlYWRlclRvcEFjY2VudENvbG9yLCB2YXIoLS1oZWFkZXJUb3BDb2xvciwgI0ZGRikpKTtcblx0XHR0cmFuc2l0aW9uOiB3aWR0aCAwLjNzICRlYXNlSW5PdXRRdWludDtcblx0ICB9XG5cblx0ICBAbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuXHRcdCY6aG92ZXIge1xuXHRcdCAgJjo6YmVmb3JlIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0cmlnaHQ6IGluaGVyaXQ7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdCAgfVxuXHRcdH1cblx0ICB9XG5cdH1cblxuXHQuaGVhZGVyX190b3BfX3JpZ2h0X19kb2N0b2xpYiB7XG5cdCAgZGlzcGxheTogZmxleDtcblx0ICBoZWlnaHQ6IHZhcigtLWhlYWRlclRvcEhlaWdodCwgNDBweCk7XG5cdCAgbWFyZ2luLWxlZnQ6IHZhcigtLWhlYWRlclRvcERvY3RvbGliTWFyZ2luTGVmdCwgI3tyZW0oMjApfSk7XG5cdH1cbiAgfVxufVxuLy8gSEVBREVSIEJPVFRPTVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLmhlYWRlcl9fYm90dG9tIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxMDA1O1xuICBwYWRkaW5nLXRvcDogdmFyKC0taGVhZGVyQm90dG9tUGFkZGluZ1RvcCwgI3tyZW0oMTApfSk7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1oZWFkZXJCb3R0b21QYWRkaW5nQm90dG9tLCAje3JlbSgxMCl9KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taGVhZGVyQm90dG9tQmFja2dyb3VuZENvbG9yLCB2YXIoLS1oZWFkZXJCYWNrZ3JvdW5kQ29sb3IsICNGRkYpKTtcbiAgYm94LXNoYWRvdzogdmFyKC0taGVhZGVyQm94U2hhZG93LCAwIDRweCAxMXB4IHJnYmEoMCwgMCwgMCwgMC4wNykpO1xufVxuXG4uaGVhZGVyX19ib3R0b20gPiBkaXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uaGVhZGVyX19ib3R0b21fX2xvZ28ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi5oZWFkZXJfX2JvdHRvbV9fYWN0aW9ucyB7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogM3B4O1xuICBtYXJnaW4tbGVmdDogdmFyKC0taGVhZGVyQm90dG9tQWN0aW9uc0dhcCwgI3tyZW0oMzUpfSk7XG59XG5cbi5oZWFkZXJfX3RvcF9fbGVmdF9faW5zdGFncmFtIHN2Z3tcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR0b3A6IDJweFxufVxuLy8gTUVOVVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGltcG9ydCAnbWVudSc7XG5cbi8vIFNFQVJDSCBCQVJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpbXBvcnQgJ3NlYXJjaC1iYXInO1xuXG4vLyBBQ1RJT05TXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaW1wb3J0ICdhY3Rpb25zJztcblxuLy8gUkVTUE9OU0lWRSBNRU5VXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaW1wb3J0ICdyZXNwb25zaXZlLW1lbnUnO1xuIiwiQG1peGluIG1lbnVJdGVtIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWhlYWRlck1lbnVJdGVtRm9udEZhbWlseSwgdmFyKC0tZm9udEZhbWlseSwgQXJpYWwsIHNhbnMtc2VyaWYpKTtcbiAgZm9udC1zaXplOiB2YXIoLS1oZWFkZXJNZW51SXRlbUZvbnRTaXplLCB2YXIoLS1oZWFkZXJNZW51Rm9udFNpemUsIDFyZW0pKTtcbiAgY29sb3I6IHZhcigtLWhlYWRlck1lbnVJdGVtQ29sb3IsIHZhcigtLWhlYWRlck1lbnVDb2xvciwgIzAwMCkpO1xuICBmb250LXdlaWdodDogdmFyKC0taGVhZGVyTWVudUl0ZW1JdGVtRm9udFdlaWdodCwgdmFyKC0taGVhZGVyTWVudUZvbnRXZWlnaHQsIDQwMCkpO1xuICBsaW5lLWhlaWdodDogdmFyKC0taGVhZGVyTWVudUl0ZW1MaW5lSGVpZ2h0LCB2YXIoLS1oZWFkZXJNZW51TGluZUhlaWdodCwgMSkpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0taGVhZGVyTWVudUl0ZW1MZXR0ZXJTcGFjaW5nLCB2YXIoLS1oZWFkZXJNZW51TGV0dGVyU3BhY2luZywgMCkpO1xuICB0ZXh0LXRyYW5zZm9ybTogdmFyKC0taGVhZGVyTWVudUl0ZW1UZXh0VHJhbnNmb3JtLCB2YXIoLS1oZWFkZXJNZW51VGV4dFRyYW5zZm9ybSwgbm9uZSkpO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzO1xufVxuXG5AbWl4aW4gbWVudUl0ZW1Ib3ZlciB7XG4gIGNvbG9yOiB2YXIoLS1oZWFkZXJNZW51SXRlbUFjY2VudENvbG9yLCB2YXIoLS1oZWFkZXJNZW51QWNjZW50Q29sb3IsICNGMDApKTtcbn1cblxuQG1peGluIHNpbXBsZU1lbnVJdGVtIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWhlYWRlck1lbnVfX3NpbXBsZU1lbnVJdGVtRm9udEZhbWlseSwgdmFyKC0taGVhZGVyTWVudUl0ZW1Gb250RmFtaWx5LCB2YXIoLS1mb250RmFtaWx5LCBBcmlhbCwgc2Fucy1zZXJpZikpKTtcbiAgZm9udC1zaXplOiB2YXIoLS1oZWFkZXJNZW51X19zaW1wbGVNZW51SXRlbUZvbnRTaXplLCB2YXIoLS1oZWFkZXJNZW51SXRlbUZvbnRTaXplLCB2YXIoLS1oZWFkZXJNZW51Rm9udFNpemUsIDFyZW0pKSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1oZWFkZXJNZW51X19zaW1wbGVNZW51SXRlbUZvbnRXZWlnaHQsIHZhcigtLWhlYWRlck1lbnVJdGVtSXRlbUZvbnRXZWlnaHQsIHZhcigtLWhlYWRlck1lbnVGb250V2VpZ2h0LCA0MDApKSk7XG4gIGNvbG9yOiB2YXIoLS1oZWFkZXJNZW51X19zaW1wbGVNZW51SXRlbUNvbG9yLCB2YXIoLS1oZWFkZXJNZW51SXRlbUNvbG9yLCB2YXIoLS1oZWFkZXJNZW51Q29sb3IsICMwMDApKSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1oZWFkZXJNZW51X19zaW1wbGVNZW51SXRlbUxpbmVIZWlnaHQsIHZhcigtLWhlYWRlck1lbnVJdGVtTGluZUhlaWdodCwgdmFyKC0taGVhZGVyTWVudUxpbmVIZWlnaHQsIDEpKSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1oZWFkZXJNZW51X19zaW1wbGVNZW51SXRlbUxldHRlclNwYWNpbmcsIHZhcigtLWhlYWRlck1lbnVJdGVtTGV0dGVyU3BhY2luZywgdmFyKC0taGVhZGVyTWVudUxldHRlclNwYWNpbmcsIDApKSk7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuM3MsIGJhY2tncm91bmQtY29sb3IgMC4zcztcbn1cblxuQG1peGluIHNpbXBsZU1lbnVJdGVtSG92ZXIge1xuICBjb2xvcjogdmFyKC0taGVhZGVyTWVudV9fc2ltcGxlTWVudUl0ZW1BY2NlbnRDb2xvciwgdmFyKC0taGVhZGVyTWVudUFjY2VudENvbG9yLCAjRjAwKSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhlYWRlck1lbnVfX3NpbXBsZU1lbnVJdGVtQmFja2dyb3VuZENvbG9yLCB0cmFuc3BhcmVudCk7XG59XG5cbi5oZWFkZXJfX2JvdHRvbV9fbWVudSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBpbmNsdWRlIG1xKCdyZXNwb25zaXZlJywgJ21pbicpIHtcbiAgLmhlYWRlcl9fYm90dG9tX19tZW51IHtcblx0ZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAuaGVhZGVyX19ib3R0b21fX21lbnUgPiBuYXYgPiB1bCB7XG5cdD4gbGkge1xuXHQgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0fVxuXG5cdGxpID4gYSB7XG5cdCAgc3BhbiB7XG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdCAgfVxuXG5cdCAgc3ZnIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHRcdHN0cm9rZTogdmFyKC0taGVhZGVyTWVudVN2Z0NvbG9yLCB2YXIoLS1oZWFkZXJNZW51Q29sb3IsICMwMDApKTtcblx0ICB9XG5cdH1cbiAgfVxuXG4gIC8vIEZJUlNUIExFVkVMXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLmhlYWRlcl9fYm90dG9tX19tZW51ID4gbmF2ID4gdWwgPiBsaSArIGxpIHtcblx0cGFkZGluZy1sZWZ0OiB2YXIoLS1oZWFkZXJNZW51SXRlbUdhcCwgI3tyZW0oMzUpfSk7XG4gIH1cblxuICAuaGVhZGVyX19ib3R0b21fX21lbnUgPiBuYXYgPiB1bCA+IGxpID4gYSB7XG5cdEBpbmNsdWRlIG1lbnVJdGVtKCk7XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyB7XG5cdCAgQGluY2x1ZGUgbWVudUl0ZW1Ib3ZlcigpO1xuXHR9XG5cblx0c3ZnIHtcblx0ICBkaXNwbGF5OiBub25lO1xuXHR9XG4gIH1cblxuICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzICovXG4gIC5oZWFkZXJfX2JvdHRvbV9fbWVudSA+IG5hdiA+IHVsID4gbGkge1xuXHQmLmlzLWFjdGl2ZSxcblx0JiVhY3RpdmVNZW51IHtcblx0ICA+IGEge1xuXHRcdEBpbmNsdWRlIG1lbnVJdGVtSG92ZXIoKTtcblx0ICB9XG5cdH1cbiAgfVxuICAvKiBzdHlsZWxpbnQtZW5hYmxlIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnMgKi9cblxuICAvLyBBTEwgU1VCIE1FTlVTXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLmhlYWRlcl9fYm90dG9tX19tZW51ID4gbmF2ID4gdWwgbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IHVsLm5hdi1kcm9wID4gLm5hdi1kcm9wX193cmFwcGVyIHtcblx0bWF4LWhlaWdodDogY2FsYygxMDB2aCAtIHZhcigtLWhlYWRlck1lbnVfX3NpbXBsZU1lbnVUb3AsIDApIC0gKHZhcigtLWhlYWRlckhlaWdodCwgMCkgKyAyMHB4KSk7XG5cdGJvcmRlci1sZWZ0OiB2YXIoLS1oZWFkZXJNZW51X19zaW1wbGVNZW51Qm9yZGVyV2lkdGgsIDApIHNvbGlkIHZhcigtLWhlYWRlck1lbnVfX3NpbXBsZU1lbnVCb3JkZXJDb2xvciwgIzAwMCk7XG5cdG92ZXJmbG93LXg6IGhpZGRlbjtcblx0b3ZlcmZsb3cteTogYXV0bztcbiAgfVxuXG4gIC8vIFNFQ09ORCBMRVZFTCAoU0lNUExFIE1FTlUpXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gQWxsIHNpbXBsZSBtZW51c1xuICAuaGVhZGVyX19ib3R0b21fX21lbnUgPiBuYXYgPiB1bCA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiB1bC5uYXYtZHJvcCB7XG5cdCYsXG5cdGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiB1bC5uYXYtZHJvcCB7XG5cdCAgbWluLXdpZHRoOiByZW0oMTgwKTtcblx0ICBtYXgtd2lkdGg6IHZhcigtLWhlYWRlck1lbnVfX3NpbXBsZU1lbnVXaWR0aCwgI3tyZW0oMjMwKX0pO1xuXHQgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0ICBvcGFjaXR5OiAwO1xuXHQgIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG5cdCAgYm94LXNoYWRvdzogM3B4IDlweCAxNHB4IHJnYmEoMCwgMCwgMCwgMC4xMSk7XG5cdCAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzO1xuXHQgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHR9XG5cblx0Ji5lZGdlIHtcblx0ICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG5cdH1cbiAgfVxuXG4gIC5oZWFkZXJfX2JvdHRvbV9fbWVudSA+IG5hdiA+IHVsID4gbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IHVsLm5hdi1kcm9wID4gLm5hdi1kcm9wX193cmFwcGVyIHtcblx0Jixcblx0bGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IHVsLm5hdi1kcm9wIHtcblx0ICBwYWRkaW5nOiB2YXIoLS1oZWFkZXJNZW51X19zaW1wbGVNZW51UGFkZGluZ1RvcCwgI3tyZW0oNSl9KSB2YXIoLS1oZWFkZXJNZW51X19zaW1wbGVNZW51UGFkZGluZ1JpZ2h0LCAje3JlbSgyMCl9KSB2YXIoLS1oZWFkZXJNZW51X19zaW1wbGVNZW51UGFkZGluZ0JvdHRvbSwgI3tyZW0oNSl9KSB2YXIoLS1oZWFkZXJNZW51X19zaW1wbGVNZW51UGFkZGluZ0xlZnQsICN7cmVtKDE1KX0pO1xuXHR9XG4gIH1cblxuICAvLyBTdWIgbWVudSBvZiBzaW1wbGUgbWVudVxuICAuaGVhZGVyX19ib3R0b21fX21lbnUgPiBuYXYgPiB1bCA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiB1bC5uYXYtZHJvcCBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIHtcblx0cG9zaXRpb246IHN0YXRpYztcblxuXHQ+IHVsLm5hdi1kcm9wIHtcblx0ICB3aWR0aDogdmFyKC0taGVhZGVyTWVudV9fc2ltcGxlTWVudVdpZHRoLCAje3JlbSgyMzApfSk7XG5cdCAgcG9zaXRpb246IGFic29sdXRlO1xuXHQgIHRvcDogdmFyKC0taGVhZGVyTWVudV9fc2ltcGxlTWVudVRvcCwgMCk7XG5cdCAgb3BhY2l0eTogMDtcblx0ICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuXHQgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcblxuXHQgICY6bm90KC5lZGdlKSB7XG5cdFx0bGVmdDogY2FsYyh2YXIoLS1oZWFkZXJNZW51X19zaW1wbGVNZW51TGVmdCwgMHB4KSArIHZhcigtLWhlYWRlck1lbnVfX3NpbXBsZU1lbnVHYXBCZXR3ZWVuLCAje3JlbSgyKX0pKTtcblx0ICB9XG5cblx0ICAmLmVkZ2Uge1xuXHRcdGxlZnQ6IGNhbGMoXG5cdFx0XHRcdCh2YXIoLS1oZWFkZXJNZW51X19zaW1wbGVNZW51TGVmdCwgMHB4KSArXG5cdFx0XHRcdHZhcigtLWhlYWRlck1lbnVfX3NpbXBsZU1lbnVHYXBCZXR3ZWVuLCAje3JlbSgyKX0pICtcblx0XHRcdFx0KHZhcigtLWhlYWRlck1lbnVfX3NpbXBsZU1lbnVXaWR0aCwgMHB4KSAtIHZhcigtLWhlYWRlck1lbnVfX3NpbXBsZU1lbnVMZWZ0LCAwcHgpKSlcblx0XHRcdFx0KiAtMVxuXHRcdCk7XG5cblx0XHQubmF2LWRyb3Age1xuXHRcdCAgbGVmdDogY2FsYyhcblx0XHRcdFx0ICAodmFyKC0taGVhZGVyTWVudV9fc2ltcGxlTWVudUxlZnQsIDBweCkgK1xuXHRcdFx0XHQgIHZhcigtLWhlYWRlck1lbnVfX3NpbXBsZU1lbnVHYXBCZXR3ZWVuLCAje3JlbSgyKX0pICtcblx0XHRcdFx0ICAodmFyKC0taGVhZGVyTWVudV9fc2ltcGxlTWVudVdpZHRoLCAwcHgpIC0gdmFyKC0taGVhZGVyTWVudV9fc2ltcGxlTWVudUxlZnQsIDBweCkpKVxuXHRcdFx0XHQgICogLTFcblx0XHQgICk7XG5cdFx0fVxuXHQgIH1cblxuXHQgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHR9XG4gIH1cblxuICAuaGVhZGVyX19ib3R0b21fX21lbnUgPiBuYXYgPiB1bCA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4uaXMtYWN0aXZlIHtcblx0PiB1bC5uYXYtZHJvcCB7XG5cdCAgb3BhY2l0eTogMTtcblx0ICBwb2ludGVyLWV2ZW50czogYXV0bztcblxuXHQgIGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4uaXMtYWN0aXZlIHtcblx0XHQ+IHVsLm5hdi1kcm9wIHtcblx0XHQgIG9wYWNpdHk6IDE7XG5cdFx0ICBwb2ludGVyLWV2ZW50czogYXV0bztcblx0XHR9XG5cdCAgfVxuXHR9XG4gIH1cblxuICAuaGVhZGVyX19ib3R0b21fX21lbnUgPiBuYXYgPiB1bCA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4ge1xuXHR1bC5uYXYtZHJvcCA+IC5uYXYtZHJvcF9fd3JhcHBlciB7XG5cdCAgPiBsaSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cblx0XHQ+IGEge1xuXHRcdCAgQGluY2x1ZGUgc2ltcGxlTWVudUl0ZW0oKTtcblxuXHRcdCAgZGlzcGxheTogZmxleDtcblx0XHQgIHBhZGRpbmc6IHZhcigtLWhlYWRlck1lbnVfX3NpbXBsZU1lbnVJdGVtUGFkZGluZ1RvcCwgI3tyZW0oNSl9KSB2YXIoLS1oZWFkZXJNZW51X19zaW1wbGVNZW51SXRlbVBhZGRpbmdSaWdodCwgMCkgdmFyKC0taGVhZGVyTWVudV9fc2ltcGxlTWVudUl0ZW1QYWRkaW5nQm90dG9tLCAje3JlbSg1KX0pO1xuXG5cdFx0ICBzcGFuIHtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IHJlbSgyMCk7XG5cdFx0ICB9XG5cdFx0fVxuXG5cdFx0Ji5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gYSB7XG5cdFx0ICBzdmcge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRhbGlnbi1zZWxmOiBjZW50ZXI7XG5cdFx0XHRmbGV4LXNocmluazogMDtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRcdFx0dHJhbnNpdGlvbjogc3Ryb2tlIDAuM3M7XG5cdFx0ICB9XG5cdFx0fVxuXG5cdFx0Jjpob3Zlcixcblx0XHQmJWFjdGl2ZU1lbnUsXG5cdFx0Ji5pcy1hY3RpdmUge1xuXHRcdCAgPiBhIHtcblx0XHRcdEBpbmNsdWRlIHNpbXBsZU1lbnVJdGVtSG92ZXIoKTtcblxuXHRcdFx0c3ZnIHtcblx0XHRcdCAgc3Ryb2tlOiB2YXIoLS1oZWFkZXJNZW51QWNjZW50Q29sb3IsICNGMDApO1xuXHRcdFx0fVxuXHRcdCAgfVxuXHRcdH1cblxuXHRcdD4gYTpmb2N1cyB7XG5cdFx0ICBAaW5jbHVkZSBzaW1wbGVNZW51SXRlbUhvdmVyKCk7XG5cblx0XHQgIHN2ZyB7XG5cdFx0XHRzdHJva2U6IHZhcigtLWhlYWRlck1lbnVBY2NlbnRDb2xvciwgI0YwMCk7XG5cdFx0ICB9XG5cdFx0fVxuXHQgIH1cblx0fVxuICB9XG59XG4iLCJAZnVuY3Rpb24geigkbmFtZSkge1xuICBAaWYgaW5kZXgoJHpJbmRleGVzLCAkbmFtZSkge1xuXHRAcmV0dXJuICgobGVuZ3RoKCR6SW5kZXhlcykgKyA5OTkpIC0gaW5kZXgoJHpJbmRleGVzLCAkbmFtZSkpICsgMTtcbiAgfSBAZWxzZSB7XG5cdEBlcnJvciAnVGhlcmUgaXMgbm8gaXRlbSBcIiN7JG5hbWV9XCIgaW4gdGhpcyBsaXN0OyBjaG9vc2Ugb25lIG9mOiAjeyR6SW5kZXhlc30nO1xuXG5cdEByZXR1cm4gbnVsbDtcbiAgfVxufVxuXG5AZnVuY3Rpb24gdG9SR0IoJGNvbG9yKSB7XG4gIEByZXR1cm4gcmVkKCRjb2xvcikgKyBcIiwgXCIgKyBncmVlbigkY29sb3IpICsgXCIsIFwiICsgYmx1ZSgkY29sb3IpO1xufVxuXG5AZnVuY3Rpb24gc3RyaXAtdW5pdCgkbnVtYmVyKSB7XG4gIEBpZiB0eXBlLW9mKCRudW1iZXIpID09ICdudW1iZXInIGFuZCBub3QgdW5pdGxlc3MoJG51bWJlcikge1xuXHRAcmV0dXJuICRudW1iZXIgLyAoJG51bWJlciAqIDAgKyAxKTtcbiAgfVxuXG4gIEByZXR1cm4gJG51bWJlcjtcbn1cblxuQGZ1bmN0aW9uIGVtKCRwaXhlbCwgJGNvbnRleHQ6ICRicm93c2VyQ29udGV4dCkge1xuICBAcmV0dXJuICgkcGl4ZWwgLyAkY29udGV4dCkgKiAxZW07XG59XG5cbkBmdW5jdGlvbiByZW0oJHBpeGVsLCAkY29udGV4dDogJGJyb3dzZXJDb250ZXh0KSB7XG4gIEByZXR1cm4gKCRwaXhlbCAvICRjb250ZXh0KSAqIDFyZW07XG59XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBQbGFpbiBTQVNTIFRyaWdvbm9tZXRyeSBBbGdvcml0aG0gaW4gVGF5bG9yIEV4cGFuc2lvbiAvL1xuLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy9cbi8vIEJhc2VkIG9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vXG4vLyAgICAgIGh0dHA6Ly9qYXBib3JzdC5uZXQvcG9zdHMvc2Fzcy1zaW5lcy1hbmQtY29zaW5lcyAvL1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuJHBpOiAzLjE0MTU5MjY1MzU5O1xuJF9wcmVjaXNpb246IDEwO1xuXG5AZnVuY3Rpb24gcG93KCRiYXNlLCAkZXhwKSB7XG4gICR2YWx1ZTogJGJhc2U7XG5cbiAgQGlmICRleHAgPiAxIHtcblx0QGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkZXhwIHtcblx0ICAkdmFsdWU6ICR2YWx1ZSAqICRiYXNlO1xuXHR9XG4gIH1cblxuICBAaWYgJGV4cCA8IDEge1xuXHRAZm9yICRpIGZyb20gMCB0aHJvdWdoIC0kZXhwIHtcblx0ICAkdmFsdWU6ICR2YWx1ZSAvICRiYXNlO1xuXHR9XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuQGZ1bmN0aW9uIGZhY3QoJG51bSkge1xuICAkZmFjdDogMTtcblxuICBAaWYgJG51bSA+IDAge1xuXHRAZm9yICRpIGZyb20gMSB0aHJvdWdoICRudW0ge1xuXHQgICRmYWN0OiAkZmFjdCAqICRpO1xuXHR9XG4gIH1cblxuICBAcmV0dXJuICRmYWN0O1xufVxuXG5AZnVuY3Rpb24gX3RvX3VuaXRsZXNzX3JhZCgkYW5nbGUpIHtcbiAgQGlmIHVuaXQoJGFuZ2xlKSA9PSBcImRlZ1wiIHtcblx0JGFuZ2xlOiAkYW5nbGUgLyAxODBkZWcgKiAkcGk7XG4gIH1cblxuICBAaWYgdW5pdCgkYW5nbGUpID09IFwicmFkXCIge1xuXHQkYW5nbGU6ICRhbmdsZSAvIDFyYWQ7XG4gIH1cblxuICBAcmV0dXJuICRhbmdsZTtcbn1cblxuQGZ1bmN0aW9uIHNpbigkYW5nbGUpIHtcbiAgJGE6IF90b191bml0bGVzc19yYWQoJGFuZ2xlKTtcbiAgJHNpbjogJGE7XG5cbiAgQGZvciAkbiBmcm9tIDEgdGhyb3VnaCAkX3ByZWNpc2lvbiB7XG5cdCRzaW46ICRzaW4gKyAocG93KC0xLCAkbikgLyBmYWN0KDIgKiAkbiArIDEpICkgKiBwb3coJGEsICgyICogJG4gKyAxKSk7XG4gIH1cblxuICBAcmV0dXJuICRzaW47XG59XG5cbkBmdW5jdGlvbiBjb3MoJGFuZ2xlKSB7XG4gICRhOiBfdG9fdW5pdGxlc3NfcmFkKCRhbmdsZSk7XG4gICRjb3M6IDE7XG5cbiAgQGZvciAkbiBmcm9tIDEgdGhyb3VnaCAkX3ByZWNpc2lvbiB7XG5cdCRjb3M6ICRjb3MgKyAoIHBvdygtMSwgJG4pIC8gZmFjdCgyKiRuKSApICogcG93KCRhLCAyKiRuKTtcbiAgfVxuXG4gIEByZXR1cm4gJGNvcztcbn1cblxuQGZ1bmN0aW9uIHRhbigkYW5nbGUpIHtcbiAgQHJldHVybiBzaW4oJGFuZ2xlKSAvIGNvcygkYW5nbGUpO1xufVxuXG4vLy8vXG4vLy8gSGVscGVyIGZ1bmN0aW9uIHRvIGVhc2lseSB1c2UgYW4gU1ZHIGlubGluZSBpbiBDU1Ncbi8vLyB3aXRob3V0IGVuY29kaW5nIGl0IHRvIGJhc2U2NCwgc2F2aW5nIGJ5dGVzLlxuLy8vIEl0IGFsc28gaGVscHMgd2l0aCBicm93c2VyIHN1cHBvcnQuXG4vLy8vXG5cbi8vLyBBIHNtYWxsIGZ1bmN0aW9uIGFsbG93aW5nIHNraXBwaW5nIGJhc2U2NCBlbmNvZGluZ1xuLy8vIGFuZCBzaW1wbHkgcGFzdGluZyB0aGUgU1ZHIG1hcmt1cCByaWdodCBpbiB0aGUgQ1NTLlxuLy8vIEBhdXRob3IgSmFrb2IgRXJpa3NlblxuLy8vIEBsaW5rIGh0dHA6Ly9jb2RlcGVuLmlvL2pha29iLWUvcGVuL2RvTW9NTFxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc3ZnIC0gU1ZHIGltYWdlIHRvIGVuY29kZVxuLy8vIEByZXR1cm4ge1N0cmluZ30gLSBFbmNvZGVkIFNWRyBkYXRhIHVyaVxuQGZ1bmN0aW9uIHN2Zy11cmkoJHN2Zykge1xuICAkZW5jb2RlZDogJyc7XG4gICRzbGljZTogMjAwMDtcbiAgJGluZGV4OiAwO1xuICAkbG9vcHM6IGNlaWwoc3RyLWxlbmd0aCgkc3ZnKSAvICRzbGljZSk7XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkbG9vcHMge1xuXHQkY2h1bms6IHN0ci1zbGljZSgkc3ZnLCAkaW5kZXgsICRpbmRleCArICRzbGljZSAtIDEpO1xuXHQkY2h1bms6IHN0ci1yZXBsYWNlKCRjaHVuaywgJ1wiJywgXCInXCIpO1xuXHQkY2h1bms6IHN0ci1yZXBsYWNlKCRjaHVuaywgJzwnLCAnJTNDJyk7XG5cdCRjaHVuazogc3RyLXJlcGxhY2UoJGNodW5rLCAnPicsICclM0UnKTtcblx0JGNodW5rOiBzdHItcmVwbGFjZSgkY2h1bmssICcmJywgJyUyNicpO1xuXHQkY2h1bms6IHN0ci1yZXBsYWNlKCRjaHVuaywgJyMnLCAnJTIzJyk7XG5cdCRlbmNvZGVkOiAjeyRlbmNvZGVkfSN7JGNodW5rfTtcblx0JGluZGV4OiAkaW5kZXggKyAkc2xpY2U7XG4gIH1cblxuICBAcmV0dXJuIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsI3skZW5jb2RlZH1cIik7XG59XG5cbi8vLyBSZXBsYWNlIGAkc2VhcmNoYCB3aXRoIGAkcmVwbGFjZWAgaW4gYCRzdHJpbmdgXG4vLy8gQGF1dGhvciBIdWdvIEdpcmF1ZGVsXG4vLy8gQGxpbmsgaHR0cDovL3Nhc3NtZWlzdGVyLmNvbS9naXN0LzFiNGYyZGE1NTI3ODMwMDg4ZTRkXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzdHJpbmcgLSBJbml0aWFsIHN0cmluZ1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VhcmNoIC0gU3Vic3RyaW5nIHRvIHJlcGxhY2Vcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHJlcGxhY2UgKCcnKSAtIE5ldyB2YWx1ZVxuLy8vIEByZXR1cm4ge1N0cmluZ30gLSBVcGRhdGVkIHN0cmluZ1xuQGZ1bmN0aW9uIHN0ci1yZXBsYWNlKCRzdHJpbmcsICRzZWFyY2gsICRyZXBsYWNlOiAnJykge1xuICAkaW5kZXg6IHN0ci1pbmRleCgkc3RyaW5nLCAkc2VhcmNoKTtcblxuICBAaWYgJGluZGV4IHtcblx0QHJldHVybiBzdHItc2xpY2UoJHN0cmluZywgMSwgJGluZGV4IC0gMSkgKyAkcmVwbGFjZSArIHN0ci1yZXBsYWNlKHN0ci1zbGljZSgkc3RyaW5nLCAkaW5kZXggKyBzdHItbGVuZ3RoKCRzZWFyY2gpKSwgJHNlYXJjaCwgJHJlcGxhY2UpO1xuICB9XG5cbiAgQHJldHVybiAkc3RyaW5nO1xufVxuIiwiLmhlYWRlcl9fc2VhcmNoQmFyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogdmFyKC0tc2VhcmNoQmFyWmluZGV4LCA1MCk7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGNvbG9yOiB2YXIoLS1zZWFyY2hCYXJDb2xvciwgI0ZGRik7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1zZWFyY2hCYXJQYWRkaW5nVG9wLCAje3JlbSgyMCl9KTtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXNlYXJjaEJhclBhZGRpbmdCb3R0b20sICN7cmVtKDIwKX0pO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zZWFyY2hCYXJCYWNrZ3JvdW5kQ29sb3IsICMwMDApO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyAkZWFzZTtcblxuICBzdmcge1xuICAgIHBhdGgsXG4gICAgcG9seWdvbiB7XG4gICAgICBmaWxsOiAjRkZGO1xuICAgIH1cbiAgfVxufVxuXG4uc2VhcmNoQmFyT3ZlcmxheSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogdmFyKC0tc2VhcmNoQmFyT3ZlcmxheVppbmRleCwgNTApO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNlYXJjaEJhck92ZXJsYXlCYWNrZ3JvdW5kQ29sb3IsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KSk7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyAkZWFzZTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbmJvZHkuc2VhcmNoQmFySXNBY3RpdmUge1xuICAuaGVhZGVyX19zZWFyY2hCYXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgfVxuXG4gIC5zZWFyY2hCYXJPdmVybGF5IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICB9XG5cbiAgLmhlYWRlcl9fcmVzcG9uc2l2ZU1lbnUsXG4gIC5yZXNwb25zaXZlTWVudU92ZXJsYXkge1xuICAgIG9wYWNpdHk6IDAgIWltcG9ydGFudDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vIEZPUk1cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5zZWFyY2hGb3JtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgPiBkaXYge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5zZWFyY2hGb3JtX19sYWJlbCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tc2VhcmNoRm9ybUxhYmVsRm9udFNpemUsIHZhcigtLXNlYXJjaEJhckZvbnRTaXplLCAxcmVtKSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1zZWFyY2hGb3JtTGFiZWxGb250V2VpZ2h0LCB2YXIoLS1zZWFyY2hCYXJGb250V2VpZ2h0LCA0MDApKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLXNlYXJjaEZvcm1MYWJlbExpbmVIZWlnaHQsIHZhcigtLXNlYXJjaEJhckxpbmVIZWlnaHQsIDEpKTtcbiAgdGV4dC10cmFuc2Zvcm06IHZhcigtLXNlYXJjaEZvcm1MYWJlbFRleHRUcmFuc2Zvcm0sIHZhcigtLXNlYXJjaEJhclRleHRUcmFuc2Zvcm0sIG5vbmUpKTtcbn1cblxuLnNlYXJjaEZvcm1fX2lucHV0IHtcbiAgQGV4dGVuZCAlcmVzZXRGb3JtO1xuXG4gIGZsZXg6IDE7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IHZhcigtLXNlYXJjaEZvcm1JbnB1dE1heFdpZHRoLCAje3JlbSg1NDApfSk7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tc2VhcmNoRm9ybUlucHV0TWFyZ2luUmlnaHQsICN7cmVtKDEwKX0pO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zZWFyY2hGb3JtSW5wdXRNYXJnaW5Cb3R0b20sICN7cmVtKC00KX0pO1xuICBtYXJnaW4tbGVmdDogdmFyKC0tc2VhcmNoRm9ybUlucHV0TWFyZ2luTGVmdCwgI3tyZW0oMTApfSk7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zZWFyY2hGb3JtSW5wdXRQYWRkaW5nQm90dG9tLCAje3JlbSgxMCl9KTtcbiAgYm9yZGVyLWJvdHRvbTogdmFyKC0tc2VhcmNoRm9ybUlucHV0Qm9yZGVySGVpZ2h0LCAzcHgpIHNvbGlkIHZhcigtLXNlYXJjaEZvcm1JbnB1dEJvcmRlckNvbG9yLCAjRkZGKTtcblxuICAmLFxuICAmOjpwbGFjZWhvbGRlciB7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLXNlYXJjaEZvcm1JbnB1dEZvbnRGYW1pbHksIHZhcigtLWZvbnRGYW1pbHksIEFyaWFsLCBzYW5zLXNlcmlmKSk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1zZWFyY2hGb3JtSW5wdXRGb25TaXplLCB2YXIoLS1mb250U2l6ZSwgMXJlbSkpO1xuICAgIGNvbG9yOiB2YXIoLS1zZWFyY2hGb3JtSW5wdXRDb2xvciwgdmFyKC0tc2VhcmNoQmFyQ29sb3IsIHZhcigtLXRleHRDb2xvciwgI0ZGRikpKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tc2VhcmNoRm9ybUlucHV0Rm9udFdlaWdodCwgdmFyKC0tc2VhcmNoQmFyRm9udFdlaWdodCwgdmFyKC0tZm9udFdlaWdodCwgNDAwKSkpO1xuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1zZWFyY2hGb3JtSW5wdXRMaW5lSGVpZ2h0LCB2YXIoLS1zZWFyY2hCYXJMaW5lSGVpZ2h0LCAxLjIpKTtcbiAgfVxufVxuXG4uc2VhcmNoRm9ybV9fc3VibWl0IHtcbiAgQGV4dGVuZCAlcmVzZXRCdXR0b247XG5cbiAgZmxleC1zaHJpbms6IDA7XG59XG5cbi8vIENMT1NFIChTY3JlZW4gUmVhZGVyIG9ubHksIG9yIG9uIGZvY3VzKVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4uc2VhcmNoRm9ybV9fY2xvc2Uge1xuICAmOm5vdCg6Zm9jdXMpIHtcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogMXB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gICAgbWFyZ2luOiAtMXB4O1xuICAgIGJvcmRlcjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogdmFyKC0tY29udGFpbmVyR3V0dGVyKTtcbiAgICBtYXJnaW4tbGVmdDogcmVtKDIwKTtcblxuICAgIHNwYW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMjVweDtcbiAgICAgIGhlaWdodDogM3B4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgYm9yZGVyLXJhZGl1czogMjVweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG5cbiAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgfVxuXG4gICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuaGVhZGVyX19ib3R0b21fX2FjdGlvbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gID4gKiArICoge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1oZWFkZXJBY3Rpb25zSXRlbXNHYXAsICN7cmVtKDEwKX0pO1xuICB9XG59XG5cbi8vIFNFQVJDSFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLmhlYWRlcl9fYm90dG9tX19hY3Rpb25zX19zZWFyY2gge1xuICBAZXh0ZW5kICVyZXNldEJ1dHRvbjtcblxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgc3ZnIHtcbiAgICB3aWR0aDogdmFyKC0taGVhZGVyQWN0aW9uc1NlYXJjaFdpZHRoLCAje3JlbSgyNSl9KTtcbiAgICBoZWlnaHQ6IHZhcigtLWhlYWRlckFjdGlvbnNTZWFyY2hIZWlnaHQsICN7cmVtKDI1KX0pO1xuXG4gICAgcGF0aCB7XG4gICAgICB0cmFuc2l0aW9uOiBmaWxsIDAuM3M7XG4gICAgICBmaWxsOiB2YXIoLS1oZWFkZXJBY3Rpb25zU2VhcmNoQ29sb3IsIHZhcigtLWhlYWRlck1lbnVDb2xvciwgIzAwMCkpO1xuICAgIH1cbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIHN2ZyBwYXRoIHtcbiAgICAgIGZpbGw6IHZhcigtLWhlYWRlckFjdGlvbnNTZWFyY2hBY2NlbnRDb2xvciwgdmFyKC0taGVhZGVyTWVudUFjY2VudENvbG9yLCAjRjAwKSk7XG4gICAgfVxuICB9XG59XG5cbi8vIEhBTUJVUkdFUlxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGluY2x1ZGUgbXEoJ3Jlc3BvbnNpdmUnLCAnbWluJykge1xuICAuaGVhZGVyX19ib3R0b21fX2FjdGlvbnNfX21lbnUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuIiwiJHJlc3BvbnNpdmVNZW51RGVmYXVsdEZvbnRTaXplOiB2YXIoLS1yZXNwb25zaXZlTWVudUZvbnRTaXplLCAxcmVtKTtcbiRyZXNwb25zaXZlTWVudURlZmF1bHRMaW5lSGVpZ2h0OiB2YXIoLS1yZXNwb25zaXZlTWVudUxpbmVIZWlnaHQsIDEpO1xuJHJlc3BvbnNpdmVNZW51RGVmYXVsdEZvbnRXZWlnaHQ6IHZhcigtLXJlc3BvbnNpdmVNZW51Rm9udFdlaWdodCwgNDAwKTtcbiRyZXNwb25zaXZlTWVudURlZmF1bHRMZXR0ZXJTcGFjaW5nOiB2YXIoLS1yZXNwb25zaXZlTWVudUxldHRlclNwYWNpbmcsIDApO1xuJHJlc3BvbnNpdmVNZW51RGVmYXVsdFRleHRUcmFuc2Zvcm06IHZhcigtLXJlc3BvbnNpdmVNZW51VGV4dFRyYW5zZm9ybSwgbm9uZSk7XG4kcmVzcG9uc2l2ZU1lbnVEZWZhdWx0Q29sb3I6IHZhcigtLXJlc3BvbnNpdmVNZW51Q29sb3IsICMwMDApO1xuJHJlc3BvbnNpdmVNZW51RGVmYXVsdE9wYWNpdHk6IHZhcigtLXJlc3BvbnNpdmVNZW51T3BhY2l0eSwgMSk7XG5cbiRyZXNwb25zaXZlTWVudURlZmF1bHRBY2NlbnRDb2xvcjogdmFyKC0tcmVzcG9uc2l2ZU1lbnVBY2NlbnRDb2xvciwgI0YwMCk7XG4kcmVzcG9uc2l2ZU1lbnVEZWZhdWx0QWNjZW50T3BhY2l0eTogdmFyKC0tcmVzcG9uc2l2ZU1lbnVBY2NlbnRPcGFjaXR5LCAxKTtcblxuQG1peGluIHJlc3BvbnNpdmVNZW51SXRlbSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tcmVzcG9uc2l2ZU1lbnVJdGVtRm9udFNpemUsICRyZXNwb25zaXZlTWVudURlZmF1bHRGb250U2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1yZXNwb25zaXZlTWVudUl0ZW1MaW5lSGVpZ2h0LCAkcmVzcG9uc2l2ZU1lbnVEZWZhdWx0TGluZUhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1yZXNwb25zaXZlTWVudUl0ZW1Gb250V2VpZ2h0LCAkcmVzcG9uc2l2ZU1lbnVEZWZhdWx0Rm9udFdlaWdodCk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1yZXNwb25zaXZlTWVudUl0ZW1MZXR0ZXJTcGFjaW5nLCAkcmVzcG9uc2l2ZU1lbnVEZWZhdWx0TGV0dGVyU3BhY2luZyk7XG4gIHRleHQtdHJhbnNmb3JtOiB2YXIoLS1yZXNwb25zaXZlTWVudUl0ZW1UZXh0VHJhbnNmb3JtLCAkcmVzcG9uc2l2ZU1lbnVEZWZhdWx0VGV4dFRyYW5zZm9ybSk7XG4gIGNvbG9yOiB2YXIoLS1yZXNwb25zaXZlTWVudUl0ZW1Db2xvciwgJHJlc3BvbnNpdmVNZW51RGVmYXVsdENvbG9yKTtcbiAgb3BhY2l0eTogdmFyKC0tcmVzcG9uc2l2ZU1lbnVJdGVtT3BhY2l0eSwgJHJlc3BvbnNpdmVNZW51RGVmYXVsdE9wYWNpdHkpO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzLCBvcGFjaXR5IDAuM3M7XG59XG5cbkBtaXhpbiByZXNwb25zaXZlTWVudUl0ZW1Jc0FjdGl2ZSB7XG4gIGNvbG9yOiB2YXIoLS1yZXNwb25zaXZlTWVudUl0ZW1BY2NlbnRDb2xvciwgJHJlc3BvbnNpdmVNZW51RGVmYXVsdEFjY2VudENvbG9yKTtcbiAgb3BhY2l0eTogdmFyKC0tcmVzcG9uc2l2ZU1lbnVJdGVtQWNjZW50T3BhY2l0eSwgJHJlc3BvbnNpdmVNZW51RGVmYXVsdEFjY2VudE9wYWNpdHkpO1xufVxuXG5AbWl4aW4gcmVzcG9uc2l2ZU1lbnVTdWJNZW51SXRlbSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tcmVzcG9uc2l2ZVN1Yk1lbnVJdGVtRm9udFNpemUsICRyZXNwb25zaXZlTWVudURlZmF1bHRGb250U2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1yZXNwb25zaXZlU3ViTWVudUl0ZW1MaW5lSGVpZ2h0LCAkcmVzcG9uc2l2ZU1lbnVEZWZhdWx0TGluZUhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1yZXNwb25zaXZlU3ViTWVudUl0ZW1Gb250V2VpZ2h0LCAkcmVzcG9uc2l2ZU1lbnVEZWZhdWx0Rm9udFdlaWdodCk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1yZXNwb25zaXZlU3ViTWVudUl0ZW1MZXR0ZXJTcGFjaW5nLCAkcmVzcG9uc2l2ZU1lbnVEZWZhdWx0TGV0dGVyU3BhY2luZyk7XG4gIHRleHQtdHJhbnNmb3JtOiB2YXIoLS1yZXNwb25zaXZlU3ViTWVudUl0ZW1UZXh0VHJhbnNmb3JtLCAkcmVzcG9uc2l2ZU1lbnVEZWZhdWx0VGV4dFRyYW5zZm9ybSk7XG4gIGNvbG9yOiB2YXIoLS1yZXNwb25zaXZlU3ViTWVudUl0ZW1Db2xvciwgJHJlc3BvbnNpdmVNZW51RGVmYXVsdENvbG9yKTtcbiAgb3BhY2l0eTogdmFyKC0tcmVzcG9uc2l2ZVN1Yk1lbnVJdGVtT3BhY2l0eSwgJHJlc3BvbnNpdmVNZW51RGVmYXVsdE9wYWNpdHkpO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzLCBvcGFjaXR5IDAuM3M7XG59XG5cbkBtaXhpbiByZXNwb25zaXZlTWVudVN1Yk1lbnVJdGVtQWN0aXZlIHtcbiAgY29sb3I6IHZhcigtLXJlc3BvbnNpdmVTdWJNZW51SXRlbUFjY2VudENvbG9yLCAkcmVzcG9uc2l2ZU1lbnVEZWZhdWx0QWNjZW50Q29sb3IpO1xuICBvcGFjaXR5OiB2YXIoLS1yZXNwb25zaXZlU3ViTWVudUl0ZW1BY2NlbnRPcGFjaXR5LCAkcmVzcG9uc2l2ZU1lbnVEZWZhdWx0QWNjZW50T3BhY2l0eSk7XG59XG5cbkBtaXhpbiByZXNwb25zaXZlTWVudVN1Yk1lbnVUaXRsZVdpdGhvdXRMaW5rIHtcbiAgZm9udC1zaXplOiB2YXIoLS1yZXNwb25zaXZlTWVudVN1Yk1lbnVUaXRsZVdpdGhvdXRMaW5rRm9udFNpemUsICRyZXNwb25zaXZlTWVudURlZmF1bHRGb250U2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1yZXNwb25zaXZlTWVudVN1Yk1lbnVUaXRsZVdpdGhvdXRMaW5rTGluZUhlaWdodCwgJHJlc3BvbnNpdmVNZW51RGVmYXVsdExpbmVIZWlnaHQpO1xuICBmb250LXdlaWdodDogdmFyKC0tcmVzcG9uc2l2ZU1lbnVTdWJNZW51VGl0bGVXaXRob3V0TGlua0ZvbnRXZWlnaHQsICRyZXNwb25zaXZlTWVudURlZmF1bHRGb250V2VpZ2h0KTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXJlc3BvbnNpdmVNZW51U3ViTWVudVRpdGxlV2l0aG91dExpbmtMZXR0ZXJTcGFjaW5nLCAkcmVzcG9uc2l2ZU1lbnVEZWZhdWx0TGV0dGVyU3BhY2luZyk7XG4gIHRleHQtdHJhbnNmb3JtOiB2YXIoLS1yZXNwb25zaXZlTWVudVN1Yk1lbnVUaXRsZVdpdGhvdXRMaW5rVGV4dFRyYW5zZm9ybSwgJHJlc3BvbnNpdmVNZW51RGVmYXVsdFRleHRUcmFuc2Zvcm0pO1xuICBjb2xvcjogdmFyKC0tcmVzcG9uc2l2ZU1lbnVTdWJNZW51VGl0bGVXaXRob3V0TGlua0NvbG9yLCAkcmVzcG9uc2l2ZU1lbnVEZWZhdWx0Q29sb3IpO1xuICBvcGFjaXR5OiB2YXIoLS1yZXNwb25zaXZlTWVudVN1Yk1lbnVUaXRsZVdpdGhvdXRMaW5rT3BhY2l0eSwgJHJlc3BvbnNpdmVNZW51RGVmYXVsdE9wYWNpdHkpO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzLCBvcGFjaXR5IDAuM3M7XG59XG5cbkBtaXhpbiByZXNwb25zaXZlTWVudVN1Yk1lbnVUaXRsZUFjdGl2ZSB7XG4gIGNvbG9yOiB2YXIoLS1yZXNwb25zaXZlTWVudVN1Yk1lbnVUaXRsZVdpdGhvdXRMaW5rQWNjZW50Q29sb3IsICRyZXNwb25zaXZlTWVudURlZmF1bHRBY2NlbnRDb2xvcik7XG4gIG9wYWNpdHk6IHZhcigtLXJlc3BvbnNpdmVNZW51U3ViTWVudVRpdGxlV2l0aG91dExpbmtBY2NlbnRPcGFjaXR5LCAkcmVzcG9uc2l2ZU1lbnVEZWZhdWx0QWNjZW50T3BhY2l0eSk7XG59XG5cbkBpbmNsdWRlIG1xKCdyZXNwb25zaXZlJywgJ21pbicpIHtcbiAgLmhlYWRlcl9fcmVzcG9uc2l2ZU1lbnUge1xuXHRkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5oZWFkZXJfX3Jlc3BvbnNpdmVNZW51IC5kcm9wZG93bi10b2dnbGUge1xuICBAZXh0ZW5kICVyZXNldEJ1dHRvbjtcbn1cblxuLy8gUkVTUE9OU0lWRSBNRU5VXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaW5jbHVkZSBtcSgncmVzcG9uc2l2ZScpIHtcbiAgLmhlYWRlcl9fcmVzcG9uc2l2ZU1lbnUgLmRyb3Bkb3duLXRvZ2dsZSB7XG5cdGhlaWdodDogdmFyKC0tcmVzcG9uc2l2ZU1lbnVEcm9wZG93blRvZ2dsZU1pbldpZHRoLCAje3JlbSgyMCl9KTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRvcGFjaXR5OiB2YXIoLS1yZXNwb25zaXZlTWVudURyb3Bkb3duVG9nZ2xlT3BhY2l0eSwgJHJlc3BvbnNpdmVNZW51RGVmYXVsdE9wYWNpdHkpO1xuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IC4zcztcblxuXHQ+ICoge1xuXHQgIGRpc3BsYXk6IGJsb2NrO1xuXHQgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0ICB0b3A6IDA7XG5cdCAgcmlnaHQ6IDA7XG5cdCAgYm90dG9tOiAwO1xuXHQgIGxlZnQ6IDA7XG5cdCAgbWFyZ2luOiBhdXRvO1xuXHQgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXJlc3BvbnNpdmVNZW51RHJvcGRvd25Ub2dnbGVDb2xvciwgdmFyKC0tcmVzcG9uc2l2ZU1lbnVJdGVtQ29sb3IsICRyZXNwb25zaXZlTWVudURlZmF1bHRDb2xvcikpO1xuXG5cdCAgJjpmaXJzdC1jaGlsZCB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiAycHg7XG5cdCAgfVxuXG5cdCAgJjpsYXN0LWNoaWxkIHtcblx0XHR3aWR0aDogMnB4O1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcztcblx0ICB9XG5cdH1cblxuXHQmW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdIHtcblx0ICBvcGFjaXR5OiB2YXIoLS1yZXNwb25zaXZlTWVudURyb3Bkb3duVG9nZ2xlQWNjZW50T3BhY2l0eSwgJHJlc3BvbnNpdmVNZW51RGVmYXVsdEFjY2VudE9wYWNpdHkpO1xuXG5cdCAgPiAqIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1yZXNwb25zaXZlTWVudURyb3Bkb3duVG9nZ2xlQWN0aXZlQ29sb3IsIHZhcigtLXJlc3BvbnNpdmVNZW51SXRlbUFjY2VudENvbG9yLCB2YXIoLS1yZXNwb25zaXZlTWVudUFjY2VudENvbG9yLCAjRjAwKSkpO1xuXG5cdFx0JjpsYXN0LWNoaWxkIHtcblx0XHQgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcblx0XHR9XG5cdCAgfVxuXHR9XG4gIH1cblxuICAuaGVhZGVyX19yZXNwb25zaXZlTWVudSB7XG5cdG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSB2YXIoLS1oZWFkZXJIZWlnaHQsIDBweCkgLSB2YXIoLS1yZXNwb25zaXZlTWVudU1heEhlaWdodCwgMTB2aCkpO1xuXHRwb3NpdGlvbjogZml4ZWQ7XG5cdHotaW5kZXg6IHZhcigtLXJlc3BvbnNpdmVNZW51WmluZGV4LCA5OSk7XG5cdHRvcDogdmFyKC0taGVhZGVySGVpZ2h0LCAwcHgpO1xuXHRyaWdodDogMDtcblx0bGVmdDogMDtcblx0b3ZlcmZsb3c6IGF1dG87XG5cdGZvbnQtc2l6ZTogdmFyKC0tcmVzcG9uc2l2ZU1lbnVGb250U2l6ZSwgMXJlbSk7XG5cdHBhZGRpbmctdG9wOiBjYWxjKHZhcigtLXJlc3BvbnNpdmVNZW51UGFkZGluZ1RvcCwgI3tyZW0oMjApfSkgLSAodmFyKC0tcmVzcG9uc2l2ZU1lbnVGaXJzdExldmVsR2FwLCAje3JlbSgxMCl9KSAvIDIpKTtcblx0cGFkZGluZy1ib3R0b206IGNhbGModmFyKC0tcmVzcG9uc2l2ZU1lbnVQYWRkaW5nQm90dG9tLCAje3JlbSgyMCl9KSAtICh2YXIoLS1yZXNwb25zaXZlTWVudUZpcnN0TGV2ZWxHYXAsICN7cmVtKDEwKX0pIC8gMikpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1yZXNwb25zaXZlTWVudUJhY2tncm91bmRDb2xvciwgI0ZGRik7XG5cdGJveC1zaGFkb3c6IHZhcigtLXJlc3BvbnNpdmVNZW51Qm94U2hhZG93LCBub25lKTtcblx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIC40cyAkZWFzZUluT3V0O1xuXHRib3JkZXItbGVmdDogdmFyKC0tcmVzcG9uc2l2ZU1lbnVCb3JkZXJMZWZ0V2lkdGgsIDApIHNvbGlkIHZhcigtLXJlc3BvbnNpdmVNZW51Qm9yZGVyTGVmdENvbG9yLCAjMDAwKTtcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgY2FsYygtMTAwJSAtIHZhcigtLWhlYWRlckhlaWdodCwgMHB4KSksIDApO1xuXG5cdGJvZHkuYWRtaW4tYmFyICYge1xuXHQgIHRvcDogY2FsYyh2YXIoLS1oZWFkZXJIZWlnaHQsIDBweCkgKyA0NnB4KTtcblxuXHQgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc4M3B4KSB7XG5cdFx0dG9wOiBjYWxjKHZhcigtLWhlYWRlckhlaWdodCwgMHB4KSArIDMycHgpO1xuXHQgIH1cblx0fVxuXG5cdGJvZHkucmVzcG9uc2l2ZU1lbnVJc09wZW4gJiB7XG5cdCAgcG9pbnRlci1ldmVudHM6IGF1dG87XG5cdCAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblx0fVxuICB9XG59XG5cbi8vIEZJUlNUIExFVkVMXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuQGluY2x1ZGUgbXEoJ3Jlc3BvbnNpdmUnKSB7XG4gIC5oZWFkZXJfX3Jlc3BvbnNpdmVNZW51IHtcblx0PiB1bCA+IGxpIHtcblx0ICBwYWRkaW5nOiAwIHZhcigtLWNvbnRhaW5lckd1dHRlcik7XG5cblx0ICA+ICo6Zmlyc3QtY2hpbGQge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXG5cdFx0QGluY2x1ZGUgcmVzcG9uc2l2ZU1lbnVJdGVtKCk7XG5cblx0XHRwYWRkaW5nLXRvcDogY2FsYygodmFyKC0tcmVzcG9uc2l2ZU1lbnVGaXJzdExldmVsR2FwLCAje3JlbSgxMCl9KSAvIDIpICsgMnB4KTtcblx0XHRwYWRkaW5nLWJvdHRvbTogY2FsYyh2YXIoLS1yZXNwb25zaXZlTWVudUZpcnN0TGV2ZWxHYXAsICN7cmVtKDEwKX0pIC8gMik7XG5cdCAgfVxuXG5cdCAgJiVhY3RpdmVNZW51LFxuXHQgICYuaXNBY3RpdmUge1xuXHRcdD4gKjpmaXJzdC1jaGlsZCB7XG5cdFx0ICBAaW5jbHVkZSByZXNwb25zaXZlTWVudUl0ZW1Jc0FjdGl2ZSgpO1xuXHRcdH1cblx0ICB9XG5cblx0ICArIGxpIHtcblx0XHRib3JkZXItdG9wOiB2YXIoLS1yZXNwb25zaXZlTWVudUJvcmRlcldpZHRoLCAwKSBzb2xpZCB2YXIoLS1yZXNwb25zaXZlTWVudUJvcmRlckNvbG9yLCAjMDAwKTtcblx0ICB9XG5cdH1cbiAgfVxufVxuXG4vLyBBTEwgSVRFTVMgV0lUSCBTVUIgTUVOVVNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpbmNsdWRlIG1xKCdyZXNwb25zaXZlJykge1xuICAuaGVhZGVyX19yZXNwb25zaXZlTWVudSBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIHtcblx0ZGlzcGxheTogZ3JpZDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0Z3JpZC10ZW1wbGF0ZS1hcmVhczogXCJtZW51LWl0ZW0gZHJvcGRvd24tdG9nZ2xlXCIgXCJkcm9wZG93biBkcm9wZG93blwiO1xuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gMWZyO1xuXHRncmlkLWNvbHVtbi1nYXA6IHZhcigtLXJlc3BvbnNpdmVNZW51SXRlbXNJbm5lckdhcCwgI3tyZW0oNjApfSk7XG5cdGN1cnNvcjogcG9pbnRlcjtcblxuXHQ+ICo6Zmlyc3QtY2hpbGQge1xuXHQgIGdyaWQtYXJlYTogbWVudS1pdGVtO1xuXHR9XG5cblx0PiAuZHJvcGRvd24tdG9nZ2xlIHtcblx0ICBncmlkLWFyZWE6IGRyb3Bkb3duLXRvZ2dsZTtcblx0ICBtaW4td2lkdGg6IHZhcigtLXJlc3BvbnNpdmVNZW51RHJvcGRvd25Ub2dnbGVNaW5XaWR0aCwgI3tyZW0oMjApfSk7XG5cdCAganVzdGlmeS1zZWxmOiBmbGV4LWVuZDtcblxuXHQgID4gc3ZnIHtcblx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcztcblxuXHRcdHBhdGgge1xuXHRcdCAgdHJhbnNpdGlvbjogZmlsbCAwLjNzO1xuXHRcdCAgZmlsbDogJHJlc3BvbnNpdmVNZW51RGVmYXVsdENvbG9yO1xuXHRcdH1cblx0ICB9XG5cdH1cblxuXHQ+IC5uYXYtZHJvcCB7XG5cdCAgZ3JpZC1hcmVhOiBkcm9wZG93bjtcblx0fVxuXG5cdCVhY3RpdmUtbWVudSxcblx0Ji5pc0FjdGl2ZSB7XG5cdCAgPiAuZHJvcGRvd24tdG9nZ2xlIHtcblx0XHQ+IHN2ZyB7XG5cdFx0ICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG5cdFx0fVxuXG5cdFx0cGF0aCB7XG5cdFx0ICBmaWxsOiB2YXIoLS1yZXNwb25zaXZlTWVudUFjY2VudENvbG9yLCAjRjAwKTtcblx0XHR9XG5cdCAgfVxuXHR9XG4gIH1cbn1cblxuLy8gU1VCIE1FTlVTXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaW5jbHVkZSBtcSgncmVzcG9uc2l2ZScpIHtcbiAgLmhlYWRlcl9fcmVzcG9uc2l2ZU1lbnUge1xuXHQubmF2LWRyb3Age1xuXHQgIGRpc3BsYXk6IG5vbmU7XG5cdCAgcGFkZGluZy1sZWZ0OiB2YXIoLS1yZXNwb25zaXZlTWVudVN1Yk1lbnVQYWRkaW5nTGVmdCwgI3tyZW0oMTApfSk7XG5cdH1cblxuXHQ+IHVsID4gbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IC5uYXYtZHJvcCA+IC5uYXYtZHJvcF9fd3JhcHBlciB7XG5cdCAgbWFyZ2luLXRvcDogdmFyKC0tcmVzcG9uc2l2ZU1lbnVTdWJNZW51TWFyZ2luVG9wLCAje3JlbSgxMCl9KTtcblx0ICBtYXJnaW4tYm90dG9tOiB2YXIoLS1yZXNwb25zaXZlTWVudVN1Yk1lbnVNYXJnaW5Cb3R0b20sICN7cmVtKDEwKX0pO1xuXG5cdCAgPiBsaSArIGxpIHtcblx0XHRtYXJnaW4tdG9wOiB2YXIoLS1yZXNwb25zaXZlTWVudVN1Yk1lbnVHYXBCZXR3ZWVuSXRlbXMsICN7cmVtKDEwKX0pO1xuXHQgIH1cblxuXHQgIGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4ge1xuXHRcdD4gLm5hdi1kcm9wID4gLm5hdi1kcm9wX193cmFwcGVyIHtcblx0XHQgIG1hcmdpbi10b3A6IHZhcigtLXJlc3BvbnNpdmVNZW51U3ViTWVudVRpdGxlRHJvcGRvd25NZW51TWFyZ2luVG9wLCAje3JlbSgxMCl9KTtcblxuXHRcdCAgbGkgKyBsaSB7XG5cdFx0XHRtYXJnaW4tdG9wOiB2YXIoLS1yZXNwb25zaXZlTWVudVN1Yk1lbnVHYXBCZXR3ZWVuSXRlbXNJbm5lciwgI3tyZW0oMTApfSk7XG5cdFx0ICB9XG5cdFx0fVxuXHQgIH1cblx0fVxuICB9XG59XG5cbi8vIE5PVCBNRUdBIE1FTlVcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpbmNsdWRlIG1xKCdyZXNwb25zaXZlJykge1xuICAuaGVhZGVyX19yZXNwb25zaXZlTWVudSB7XG5cdD4gdWwgPiBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOm5vdCguaXNNZWdhTWVudSkge1xuXHQgID4gLm5hdi1kcm9wID4gLm5hdi1kcm9wX193cmFwcGVyIHtcblx0XHQmLFxuXHRcdC5uYXYtZHJvcF9fd3JhcHBlciB7XG5cdFx0ICBmb250LXNpemU6IHZhcigtLXJlc3BvbnNpdmVNZW51Rm9udFNpemVGYWN0b3IsIDAuOTEzMDRlbSk7XG5cdFx0fVxuXG5cdFx0Ly8gV2l0aG91dCB0aXRsZVxuXHRcdGxpOm5vdCgubWVudS1pdGVtLWhhcy1jaGlsZHJlbikge1xuXHRcdCAgPiBhIHtcblx0XHRcdEBpbmNsdWRlIHJlc3BvbnNpdmVNZW51U3ViTWVudUl0ZW0oKTtcblx0XHQgIH1cblxuXHRcdCAgJiVhY3RpdmVNZW51LFxuXHRcdCAgJi5pc0FjdGl2ZSB7XG5cdFx0XHQ+IGEge1xuXHRcdFx0ICBAaW5jbHVkZSByZXNwb25zaXZlTWVudVN1Yk1lbnVJdGVtQWN0aXZlKCk7XG5cdFx0XHR9XG5cdFx0ICB9XG5cdFx0fVxuXG5cdFx0Ly8gVGl0bGVcblx0XHRsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIHtcblx0XHQgID4gYSB7XG5cdFx0XHRAaW5jbHVkZSByZXNwb25zaXZlTWVudVN1Yk1lbnVJdGVtKCk7XG5cblx0XHRcdCY6bm90KFtocmVmXSkge1xuXHRcdFx0ICBAaW5jbHVkZSByZXNwb25zaXZlTWVudVN1Yk1lbnVUaXRsZVdpdGhvdXRMaW5rKCk7XG5cdFx0XHR9XG5cdFx0ICB9XG5cblx0XHQgICYlYWN0aXZlTWVudSxcblx0XHQgICYuaXNBY3RpdmUge1xuXHRcdFx0PiBhIHtcblx0XHRcdCAgQGluY2x1ZGUgcmVzcG9uc2l2ZU1lbnVTdWJNZW51VGl0bGVBY3RpdmUoKTtcblx0XHRcdH1cblx0XHQgIH1cblx0XHR9XG5cdCAgfVxuXHR9XG4gIH1cbn1cblxuLy8gT1ZFUkxBWVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLnJlc3BvbnNpdmVNZW51T3ZlcmxheSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBpbmNsdWRlIG1xKCdyZXNwb25zaXZlJykge1xuICAucmVzcG9uc2l2ZU1lbnVPdmVybGF5IHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0ei1pbmRleDogdmFyKC0tcmVzcG9uc2l2ZU1lbnVPdmVybGF5WmluZGV4LCA1MCk7XG5cdHRvcDogMDtcblx0cmlnaHQ6IDA7XG5cdGJvdHRvbTogMDtcblx0bGVmdDogMDtcblx0b3BhY2l0eTogMDtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcmVzcG9uc2l2ZU1lbnVPdmVybGF5QmFja2dyb3VuZENvbG9yLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCkpO1xuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgJGVhc2U7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG5cdGJvZHkucmVzcG9uc2l2ZU1lbnVJc09wZW4gJiB7XG5cdCAgb3BhY2l0eTogMTtcblx0ICBwb2ludGVyLWV2ZW50czogYXV0bztcblx0fVxuICB9XG59XG4iLG51bGwsIi8vIENBTEwgVE8gQUNUSU9OU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLmNhbGxUb0FjdGlvbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiB2YXIoLS1jYWxsVG9BY3Rpb25zSGVpZ2h0LCAje3JlbSg1MCl9KTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiB2YXIoLS1jYWxsVG9BY3Rpb25zWmluZGV4LCA1MCk7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNhbGxUb0FjdGlvbnNCYWNrZ3JvdW5kQ29sb3IsICMwMDApO1xuICBib3gtc2hhZG93OiB2YXIoLS1jYWxsVG9BY3Rpb25zQm94U2hhZG93LCBub25lKTtcblxuICBAaW5jbHVkZSBtcSgncmVzcG9uc2l2ZScsICdtaW4nKSB7XG5cdGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmNhbGxUb0FjdGlvbnMgPiAqIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgZmxleDogMTtcbiAgaGVpZ2h0OiAxMDAlO1xuXG4gICsgKiB7XG5cdGJvcmRlci1sZWZ0OiB2YXIoLS1jYWxsVG9BY3Rpb25zQm9yZGVyTGVmdFdpZHRoLCAxcHgpIHNvbGlkIHZhcigtLWNhbGxUb0FjdGlvbnNCb3JkZXJMZWZ0Q29sb3IsICNGRkYpO1xuICB9XG5cbiAgc3ZnIHtcblx0cGF0aCxcblx0cG9seWdvbiB7XG5cdCAgZmlsbDogdmFyKC0tY2FsbFRvQWN0aW9uc0xvZ29Db2xvciwgI0ZGRik7XG5cdH1cbiAgfVxufVxuIiwiJGNvbW1lbnRzQmxvY2tNYXJnaW5Ub3A6IDcwcHggIWRlZmF1bHQ7XG4kY29tbWVudHNCbG9ja1BhZGRpbmdUb3A6IDQ1cHggIWRlZmF1bHQ7XG4kY29tbWVudHNCbG9ja1BhZGRpbmdCb3R0b206IDQ1cHggIWRlZmF1bHQ7XG5cbiRjb21tZW50c0Jsb2NrVGl0bGVGb250U2l6ZTogMjVweCAhZGVmYXVsdDtcbiRjb21tZW50c0Jsb2NrVGl0bGVNYXJnaW5Cb3R0b206IDM1cHggIWRlZmF1bHQ7XG5cbiRjb21tZW50R2FwOiAxNXB4ICFkZWZhdWx0O1xuXG4kY29tbWVudFBhZGRpbmdUb3A6IDIwcHggIWRlZmF1bHQ7XG4kY29tbWVudFBhZGRpbmdSaWdodDogMjVweCAhZGVmYXVsdDtcbiRjb21tZW50UGFkZGluZ0JvdHRvbTogMjBweCAhZGVmYXVsdDtcbiRjb21tZW50UGFkZGluZ0xlZnQ6IDI1cHggIWRlZmF1bHQ7XG5cbiRjb21tZW50UmVwbHlDb21tZW50TWFyZ2luTGVmdDogOTBweCAhZGVmYXVsdDtcblxuJGNvbW1lbnRBdXRob3JGb250U2l6ZTogMTRweCAhZGVmYXVsdDtcbiRjb21tZW50RGF0ZUZvbnRTaXplOiAxNHB4ICFkZWZhdWx0O1xuJGNvbW1lbnRSZXBseUJ1dHRvbkZvbnRTaXplOiAxNHB4ICFkZWZhdWx0O1xuXG4kY29tbWVudFRleHRGb250U2l6ZTogMTRweCAhZGVmYXVsdDtcbiRjb21tZW50VGV4dE1hcmdpblRvcDogMTVweCAhZGVmYXVsdDtcblxuJGNvbW1lbnRGb3JtTWFyZ2luVG9wOiAzNXB4ICFkZWZhdWx0O1xuXG4uY29tbWVudHNCbG9jayA+IC5jb21tZW50c0Jsb2NrX19jb21tZW50c0NvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbW1lbnRzQmxvY2tCYWNrZ3JvdW5kQ29sb3IsICNGM0YzRjMpO1xuXG4gIEBpbmNsdWRlIHBhZGRpbmctdG9wKCRjb21tZW50c0Jsb2NrUGFkZGluZ1RvcCk7XG4gIEBpbmNsdWRlIHBhZGRpbmctYm90dG9tKCRjb21tZW50c0Jsb2NrUGFkZGluZ0JvdHRvbSk7XG59XG5cbi8vIENPTU1FTlRTXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4uY29tbWVudHNCbG9jayB7XG4gIEBpbmNsdWRlIG1hcmdpbi10b3AoJGNvbW1lbnRzQmxvY2tNYXJnaW5Ub3ApO1xufVxuXG4uY29tbWVudHNCbG9ja19fY29tbWVudHMgPiAqICsgKiB7XG4gIEBpbmNsdWRlIG1hcmdpbi10b3AoJGNvbW1lbnRHYXApO1xufVxuXG4uY29tbWVudHNCbG9ja3NfX2NvbW1lbnQgPiAqICsgKiB7XG4gIEBpbmNsdWRlIG1hcmdpbi10b3AoJGNvbW1lbnRHYXApO1xufVxuXG4uY29tbWVudHNCbG9ja3NfX2NvbW1lbnRfX3JlcGxpZXMgPiAqICsgKiB7XG4gIEBpbmNsdWRlIG1hcmdpbi10b3AoJGNvbW1lbnRHYXApO1xufVxuXG4vLyBQQUdFRCBDT01NRU5UU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLmNvbW1lbnRzQmxvY2stLXBhZ2VkOm5vdCguaXNBY3RpdmUpIHtcbiAgLmNvbW1lbnRzQmxvY2tfX3dyYXBwZXIge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0Jjo6YWZ0ZXIge1xuXHQgIGNvbnRlbnQ6ICcnO1xuXHQgIGRpc3BsYXk6IGJsb2NrO1xuXHQgIHdpZHRoOiAxMDB2dztcblx0ICBoZWlnaHQ6IDEwMCU7XG5cdCAgcG9zaXRpb246IGFic29sdXRlO1xuXHQgIHRvcDogMDtcblx0ICBib3R0b206IDA7XG5cdCAgbGVmdDogY2FsYyg1MCUgLSA1MHZ3KTtcblx0ICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI0MSwgMjQxLCAyNDEsIDApIDAlLCAjRjFGMUYxIDkwJSk7XG5cdCAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdH1cbiAgfVxuXG4gIC5jb21tZW50c0Jsb2NrX19jb21tZW50cyB7XG5cdG1heC1oZWlnaHQ6IHZhcigtLWNvbW1lbnRzUGFnZWRNYXhIZWlnaHQsICN7cmVtKDgwMCl9KTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxufVxuXG4vLyBUSVRMRVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLmNvbW1lbnRzQmxvY2tfX3RpdGxlIHtcbiAgdGV4dC1hbGlnbjogdmFyKC0tY29tbWVudHNCbG9ja1RpdGxlVGV4dEFsaWduLCBjZW50ZXIpO1xuXG4gIEBpbmNsdWRlIG1hcmdpbi1ib3R0b20oJGNvbW1lbnRzQmxvY2tUaXRsZU1hcmdpbkJvdHRvbSk7XG59XG5cbi5jb21tZW50c0Jsb2NrX190aXRsZSA+ICo6Zmlyc3QtY2hpbGQge1xuICBmb250LWZhbWlseTogdmFyKC0tY29tbWVudHNCbG9ja1RpdGxlRm9udEZhbWlseSwgdmFyKC0tZm9udEZhbWlseSwgQXJpYWwsIHNhbnMtc2VyaWYpKTtcblxuICBAaW5jbHVkZSBmb250LXNpemUoJGNvbW1lbnRzQmxvY2tUaXRsZUZvbnRTaXplKTtcblxuICBjb2xvcjogdmFyKC0tY29tbWVudHNCbG9ja1RpdGxlQ29sb3IsICMwMDApO1xuICBmb250LXdlaWdodDogdmFyKC0tY29tbWVudHNCbG9ja1RpdGxlRm9udFdlaWdodCwgNzAwKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWNvbW1lbnRzQmxvY2tUaXRsZUxpbmVIZWlnaHQsIDEuMik7XG59XG5cbi8vIENPTU1FTlRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5jb21tZW50c0Jsb2Nrc19fY29tbWVudF9fY29udGVudCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtYXJlYXM6IFwiYXZhdGFyXCIgXCJjb250ZW50XCI7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICBncmlkLWdhcDogdmFyKC0tY29tbWVudElubmVyR2FwLCAje3JlbSgyNSl9KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29tbWVudEJhY2tncm91bmRDb2xvciwgI0ZGRik7XG5cbiAgQGluY2x1ZGUgcGFkZGluZygkY29tbWVudFBhZGRpbmdUb3AgJGNvbW1lbnRQYWRkaW5nUmlnaHQgJGNvbW1lbnRQYWRkaW5nQm90dG9tICRjb21tZW50UGFkZGluZ0xlZnQpO1xuXG4gIGJveC1zaGFkb3c6IHZhcigtLWNvbW1lbnRCb3hTaGFkb3csIDAgNHB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjA1KSk7XG59XG5cbi5jb21tZW50c0Jsb2Nrc19fY29tbWVudF9fYXZhdGFyIHtcbiAgZ3JpZC1hcmVhOiBhdmF0YXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuXG4gIGltZyB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1jb21tZW50QXZhdGFyQm9yZGVyUmFkaXVzLCAxMDAlKTtcbiAgfVxufVxuXG4uY29tbWVudHNCbG9ja3NfX2NvbW1lbnRfX2lubmVyIHtcbiAgZ3JpZC1hcmVhOiBjb250ZW50O1xufVxuXG4uY29tbWVudHNCbG9ja3NfX2NvbW1lbnRfX2F1dGhvciB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1jb21tZW50QXV0aG9yRm9udEZhbWlseSwgdmFyKC0tZm9udEZhbWlseSwgQXJpYWwsIHNhbnMtc2VyaWYpKTtcblxuICBAaW5jbHVkZSBmb250LXNpemUoJGNvbW1lbnRBdXRob3JGb250U2l6ZSk7XG5cbiAgY29sb3I6IHZhcigtLWNvbW1lbnRBdXRob3JDb2xvciwgIzAwMCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1jb21tZW50QXV0aG9yRm9udFdlaWdodCwgNzAwKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWNvbW1lbnRBdXRob3JMaW5lSGVpZ2h0LCAxLjQpO1xufVxuXG4uY29tbWVudHNCbG9ja3NfX2NvbW1lbnRfX2RhdGUge1xuICBmb250LWZhbWlseTogdmFyKC0tY29tbWVudERhdGVGb250RmFtaWx5LCB2YXIoLS1mb250RmFtaWx5LCBBcmlhbCwgc2Fucy1zZXJpZikpO1xuXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29tbWVudERhdGVGb250U2l6ZSk7XG5cbiAgY29sb3I6IHZhcigtLWNvbW1lbnREYXRlQ29sb3IsICM5RjlGOUYpO1xuICBmb250LXdlaWdodDogdmFyKC0tY29tbWVudERhdGVGb250V2VpZ2h0LCAzMDApO1xuICBsaW5lLWhlaWdodDogdmFyKC0tY29tbWVudERhdGVMaW5lSGVpZ2h0LCAxLjQpO1xufVxuXG4uY29tbWVudHNCbG9ja3NfX2NvbW1lbnRfX3JlcGx5IHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWNvbW1lbnRSZXBseUJ1dHRvbkZvbnRGYW1pbHksIHZhcigtLWZvbnRGYW1pbHksIEFyaWFsLCBzYW5zLXNlcmlmKSk7XG4gIGNvbG9yOiB2YXIoLS1jb21tZW50UmVwbHlCdXR0b25Db2xvciwgIzU2NjI1Rik7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1jb21tZW50UmVwbHlCdXR0b25Gb250V2VpZ2h0LCA3MDApO1xuICBsaW5lLWhlaWdodDogdmFyKC0tY29tbWVudFJlcGx5QnV0dG9uTGluZUhlaWdodCwgMS40KTtcblxuICBAaW5jbHVkZSBmb250LXNpemUoJGNvbW1lbnRSZXBseUJ1dHRvbkZvbnRTaXplKTtcblxuICB0ZXh0LXRyYW5zZm9ybTogdmFyKC0tY29tbWVudFJlcGx5QnV0dG9uVGV4dFRyYW5zZm9ybSwgdXBwZXJjYXNlKTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4zcztcblxuICAmOmhvdmVyIHtcblx0Y29sb3I6IHZhcigtLWNvbW1lbnRSZXBseUJ1dHRvbkFjdGl2ZUNvbG9yLCAjMDAwKTtcbiAgfVxuXG4gIGE6Zm9jdXMge1xuXHRjb2xvcjogdmFyKC0tY29tbWVudFJlcGx5QnV0dG9uQWN0aXZlQ29sb3IsICMwMDApO1xuICB9XG59XG5cbi5jb21tZW50c0Jsb2Nrc19fY29tbWVudF9fdGV4dCB7XG4gIEBpbmNsdWRlIG1hcmdpbi10b3AoJGNvbW1lbnRUZXh0TWFyZ2luVG9wKTtcblxuICBmb250LWZhbWlseTogdmFyKC0tY29tbWVudFRleHRGb250RmFtaWx5LCB2YXIoLS1mb250RmFtaWx5LCBBcmlhbCwgc2Fucy1zZXJpZikpO1xuICBjb2xvcjogdmFyKC0tY29tbWVudFRleHRDb2xvciwgIzQ1NDU0NSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1jb21tZW50VGV4dEZvbnRXZWlnaHQsIDMwMCk7XG5cbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjb21tZW50VGV4dEZvbnRTaXplKTtcblxuICBsaW5lLWhlaWdodDogdmFyKC0tY29tbWVudFRleHRMaW5lSGVpZ2h0LCAxLjQpO1xufVxuXG5AaW5jbHVkZSBtcSg1MDAsICdtaW4nKSB7XG4gIC5jb21tZW50c0Jsb2Nrc19fY29tbWVudF9fY29udGVudCB7XG5cdGdyaWQtdGVtcGxhdGUtYXJlYXM6IFwiYXZhdGFyIGNvbnRlbnRcIjtcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIDFmcjtcbiAgfVxuXG4gIC5jb21tZW50c0Jsb2Nrc19fY29tbWVudF9fZGF0ZSxcbiAgLmNvbW1lbnRzQmxvY2tzX19jb21tZW50X19yZXBseSB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuXG4gIC5jb21tZW50c0Jsb2Nrc19fY29tbWVudF9fcmVwbHkge1xuXHRwYWRkaW5nLWxlZnQ6IHZhcigtLWNvbW1lbnRSZXBseUJ1dHRvblBhZGRpbmdMZWZ0LCAje3JlbSgxMCl9KTtcbiAgfVxufVxuXG4vLyBSRVBMSUVTXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4uY29tbWVudHNCbG9ja3NfX2NvbW1lbnRfX3JlcGxpZXMge1xuICBAaW5jbHVkZSBtYXJnaW4tbGVmdCgkY29tbWVudFJlcGx5Q29tbWVudE1hcmdpbkxlZnQpO1xufVxuXG4vLyBGT1JNXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLmNvbW1lbnRzQmxvY2tfX2Zvcm0ge1xuICBAaW5jbHVkZSBtYXJnaW4tdG9wKCRjb21tZW50Rm9ybU1hcmdpblRvcCk7XG59XG5cbi8vIExPQUQgTU9SRVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLmNvbW1lbnRzQmxvY2tfX2xvYWRNb3JlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICB0b3A6IHZhcigtLWNvbW1lbnRMb2FkTW9yZVRvcCwgI3tyZW0oLTE1KX0pO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uY29tbWVudHNCbG9jay0tcGFnZWQuaXNBY3RpdmUgLmNvbW1lbnRzQmxvY2tfX2xvYWRNb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn0iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1ibGFja2xpc3QsIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcblxuLy8gU0NTUyBSRlMgbWl4aW5cbi8vXG4vLyBBdXRvbWF0ZWQgcmVzcG9uc2l2ZSB2YWx1ZXMgZm9yIGZvbnQgc2l6ZXMsIHBhZGRpbmdzLCBtYXJnaW5zIGFuZCBtdWNoIG1vcmVcbi8vXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9ibG9iL21haW4vTElDRU5TRSlcblxuLy8gQ29uZmlndXJhdGlvblxuXG4vLyBCYXNlIHZhbHVlXG4kcmZzLWJhc2UtdmFsdWU6IDEuMjVyZW0gIWRlZmF1bHQ7XG4kcmZzLXVuaXQ6IHJlbSAhZGVmYXVsdDtcblxuQGlmICRyZnMtdW5pdCAhPSByZW0gYW5kICRyZnMtdW5pdCAhPSBweCB7XG4gIEBlcnJvciBcImAjeyRyZnMtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtdW5pdC4gVXNlIGBweGAgb3IgYHJlbWAuXCI7XG59XG5cbi8vIEJyZWFrcG9pbnQgYXQgd2hlcmUgdmFsdWVzIHN0YXJ0IGRlY3JlYXNpbmcgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsZXJcbiRyZnMtYnJlYWtwb2ludDogMTIwMHB4ICFkZWZhdWx0O1xuJHJmcy1icmVha3BvaW50LXVuaXQ6IHB4ICFkZWZhdWx0O1xuXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gcHggYW5kICRyZnMtYnJlYWtwb2ludC11bml0ICE9IGVtIGFuZCAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSByZW0ge1xuICBAZXJyb3IgXCJgI3skcmZzLWJyZWFrcG9pbnQtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtYnJlYWtwb2ludC11bml0LiBVc2UgYHB4YCwgYGVtYCBvciBgcmVtYC5cIjtcbn1cblxuLy8gUmVzaXplIHZhbHVlcyBiYXNlZCBvbiBzY3JlZW4gaGVpZ2h0IGFuZCB3aWR0aFxuJHJmcy10d28tZGltZW5zaW9uYWw6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBGYWN0b3Igb2YgZGVjcmVhc2VcbiRyZnMtZmFjdG9yOiAxMCAhZGVmYXVsdDtcblxuQGlmIHR5cGUtb2YoJHJmcy1mYWN0b3IpICE9IG51bWJlciBvciAkcmZzLWZhY3RvciA8PSAxIHtcbiAgQGVycm9yIFwiYCN7JHJmcy1mYWN0b3J9YCBpcyBub3QgYSB2YWxpZCAgJHJmcy1mYWN0b3IsIGl0IG11c3QgYmUgZ3JlYXRlciB0aGFuIDEuXCI7XG59XG5cbi8vIE1vZGUuIFBvc3NpYmlsaXRpZXM6IFwibWluLW1lZGlhLXF1ZXJ5XCIsIFwibWF4LW1lZGlhLXF1ZXJ5XCJcbiRyZnMtbW9kZTogbWluLW1lZGlhLXF1ZXJ5ICFkZWZhdWx0O1xuXG4vLyBHZW5lcmF0ZSBlbmFibGUgb3IgZGlzYWJsZSBjbGFzc2VzLiBQb3NzaWJpbGl0aWVzOiBmYWxzZSwgXCJlbmFibGVcIiBvciBcImRpc2FibGVcIlxuJHJmcy1jbGFzczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIDEgcmVtID0gJHJmcy1yZW0tdmFsdWUgcHhcbiRyZnMtcmVtLXZhbHVlOiAxNiAhZGVmYXVsdDtcblxuLy8gU2FmYXJpIGlmcmFtZSByZXNpemUgYnVnOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvaXNzdWVzLzE0XG4kcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXg6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBEaXNhYmxlIFJGUyBieSBzZXR0aW5nICRlbmFibGUtcmZzIHRvIGZhbHNlXG4kZW5hYmxlLXJmczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gQ2FjaGUgJHJmcy1iYXNlLXZhbHVlIHVuaXRcbiRyZnMtYmFzZS12YWx1ZS11bml0OiB1bml0KCRyZnMtYmFzZS12YWx1ZSk7XG5cbkBmdW5jdGlvbiBkaXZpZGUoJGRpdmlkZW5kLCAkZGl2aXNvciwgJHByZWNpc2lvbjogMTApIHtcbiAgJHNpZ246IGlmKCRkaXZpZGVuZCA+IDAgYW5kICRkaXZpc29yID4gMCBvciAkZGl2aWRlbmQgPCAwIGFuZCAkZGl2aXNvciA8IDAsIDEsIC0xKTtcbiAgJGRpdmlkZW5kOiBhYnMoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3I6IGFicygkZGl2aXNvcik7XG4gIEBpZiAkZGl2aWRlbmQgPT0gMCB7XG4gICAgQHJldHVybiAwO1xuICB9XG4gIEBpZiAkZGl2aXNvciA9PSAwIHtcbiAgICBAZXJyb3IgXCJDYW5ub3QgZGl2aWRlIGJ5IDBcIjtcbiAgfVxuICAkcmVtYWluZGVyOiAkZGl2aWRlbmQ7XG4gICRyZXN1bHQ6IDA7XG4gICRmYWN0b3I6IDEwO1xuICBAd2hpbGUgKCRyZW1haW5kZXIgPiAwIGFuZCAkcHJlY2lzaW9uID49IDApIHtcbiAgICAkcXVvdGllbnQ6IDA7XG4gICAgQHdoaWxlICgkcmVtYWluZGVyID49ICRkaXZpc29yKSB7XG4gICAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyIC0gJGRpdmlzb3I7XG4gICAgICAkcXVvdGllbnQ6ICRxdW90aWVudCArIDE7XG4gICAgfVxuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArICRxdW90aWVudDtcbiAgICAkZmFjdG9yOiAkZmFjdG9yICogLjE7XG4gICAgJHJlbWFpbmRlcjogJHJlbWFpbmRlciAqIDEwO1xuICAgICRwcmVjaXNpb246ICRwcmVjaXNpb24gLSAxO1xuICAgIEBpZiAoJHByZWNpc2lvbiA8IDAgYW5kICRyZW1haW5kZXIgPj0gJGRpdmlzb3IgKiA1KSB7XG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICsgMTtcbiAgICB9XG4gIH1cbiAgJHJlc3VsdDogJHJlc3VsdCAqICRmYWN0b3IgKiAkc2lnbjtcbiAgJGRpdmlkZW5kLXVuaXQ6IHVuaXQoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3ItdW5pdDogdW5pdCgkZGl2aXNvcik7XG4gICR1bml0LW1hcDogKFxuICAgIFwicHhcIjogMXB4LFxuICAgIFwicmVtXCI6IDFyZW0sXG4gICAgXCJlbVwiOiAxZW0sXG4gICAgXCIlXCI6IDElXG4gICk7XG4gIEBpZiAoJGRpdmlkZW5kLXVuaXQgIT0gJGRpdmlzb3ItdW5pdCBhbmQgbWFwLWhhcy1rZXkoJHVuaXQtbWFwLCAkZGl2aWRlbmQtdW5pdCkpIHtcbiAgICAkcmVzdWx0OiAkcmVzdWx0ICogbWFwLWdldCgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KTtcbiAgfVxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG5cbi8vIFJlbW92ZSBweC11bml0IGZyb20gJHJmcy1iYXNlLXZhbHVlIGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJhc2UtdmFsdWUtdW5pdCA9PSBweCB7XG4gICRyZnMtYmFzZS12YWx1ZTogZGl2aWRlKCRyZnMtYmFzZS12YWx1ZSwgJHJmcy1iYXNlLXZhbHVlICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1iYXNlLXZhbHVlLXVuaXQgPT0gcmVtIHtcbiAgJHJmcy1iYXNlLXZhbHVlOiBkaXZpZGUoJHJmcy1iYXNlLXZhbHVlLCBkaXZpZGUoJHJmcy1iYXNlLXZhbHVlICogMCArIDEsICRyZnMtcmVtLXZhbHVlKSk7XG59XG5cbi8vIENhY2hlICRyZnMtYnJlYWtwb2ludCB1bml0IHRvIHByZXZlbnQgbXVsdGlwbGUgY2FsbHNcbiRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlOiB1bml0KCRyZnMtYnJlYWtwb2ludCk7XG5cbi8vIFJlbW92ZSB1bml0IGZyb20gJHJmcy1icmVha3BvaW50IGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBweCB7XG4gICRyZnMtYnJlYWtwb2ludDogZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgJHJmcy1icmVha3BvaW50ICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gcmVtIG9yICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwiZW1cIiB7XG4gICRyZnMtYnJlYWtwb2ludDogZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgZGl2aWRlKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxLCAkcmZzLXJlbS12YWx1ZSkpO1xufVxuXG4vLyBDYWxjdWxhdGUgdGhlIG1lZGlhIHF1ZXJ5IHZhbHVlXG4kcmZzLW1xLXZhbHVlOiBpZigkcmZzLWJyZWFrcG9pbnQtdW5pdCA9PSBweCwgI3skcmZzLWJyZWFrcG9pbnR9cHgsICN7ZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgJHJmcy1yZW0tdmFsdWUpfSN7JHJmcy1icmVha3BvaW50LXVuaXR9KTtcbiRyZnMtbXEtcHJvcGVydHktd2lkdGg6IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksIG1heC13aWR0aCwgbWluLXdpZHRoKTtcbiRyZnMtbXEtcHJvcGVydHktaGVpZ2h0OiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCBtYXgtaGVpZ2h0LCBtaW4taGVpZ2h0KTtcblxuLy8gSW50ZXJuYWwgbWl4aW4gdXNlZCB0byBkZXRlcm1pbmUgd2hpY2ggbWVkaWEgcXVlcnkgbmVlZHMgdG8gYmUgdXNlZFxuQG1peGluIF9yZnMtbWVkaWEtcXVlcnkge1xuICBAaWYgJHJmcy10d28tZGltZW5zaW9uYWwge1xuICAgIEBpZiAkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5IHtcbiAgICAgIEBtZWRpYSAoI3skcmZzLW1xLXByb3BlcnR5LXdpZHRofTogI3skcmZzLW1xLXZhbHVlfSksICgjeyRyZnMtbXEtcHJvcGVydHktaGVpZ2h0fTogI3skcmZzLW1xLXZhbHVlfSkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSBhbmQgKCN7JHJmcy1tcS1wcm9wZXJ0eS1oZWlnaHR9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gSW50ZXJuYWwgbWl4aW4gdGhhdCBhZGRzIGRpc2FibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtcnVsZSB7XG4gIEBpZiAkcmZzLWNsYXNzID09IGRpc2FibGUgYW5kICRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnkge1xuICAgIC8vIEFkZGluZyBhbiBleHRyYSBjbGFzcyBpbmNyZWFzZXMgc3BlY2lmaWNpdHksIHdoaWNoIHByZXZlbnRzIHRoZSBtZWRpYSBxdWVyeSB0byBvdmVycmlkZSB0aGUgcHJvcGVydHlcbiAgICAmLFxuICAgIC5kaXNhYmxlLXJmcyAmLFxuICAgICYuZGlzYWJsZS1yZnMge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRyZnMtY2xhc3MgPT0gZW5hYmxlIGFuZCAkcmZzLW1vZGUgPT0gbWluLW1lZGlhLXF1ZXJ5IHtcbiAgICAuZW5hYmxlLXJmcyAmLFxuICAgICYuZW5hYmxlLXJmcyB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIEludGVybmFsIG1peGluIHRoYXQgYWRkcyBlbmFibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtbWVkaWEtcXVlcnktcnVsZSB7XG5cbiAgQGlmICRyZnMtY2xhc3MgPT0gZW5hYmxlIHtcbiAgICBAaWYgJHJmcy1tb2RlID09IG1pbi1tZWRpYS1xdWVyeSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBfcmZzLW1lZGlhLXF1ZXJ5IHtcbiAgICAgIC5lbmFibGUtcmZzICYsXG4gICAgICAmLmVuYWJsZS1yZnMge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpZiAkcmZzLWNsYXNzID09IGRpc2FibGUgYW5kICRyZnMtbW9kZSA9PSBtaW4tbWVkaWEtcXVlcnkge1xuICAgICAgLmRpc2FibGUtcmZzICYsXG4gICAgICAmLmRpc2FibGUtcmZzIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIF9yZnMtbWVkaWEtcXVlcnkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byBnZXQgdGhlIGZvcm1hdHRlZCBub24tcmVzcG9uc2l2ZSB2YWx1ZVxuQGZ1bmN0aW9uIHJmcy12YWx1ZSgkdmFsdWVzKSB7XG4gIC8vIENvbnZlcnQgdG8gbGlzdFxuICAkdmFsdWVzOiBpZih0eXBlLW9mKCR2YWx1ZXMpICE9IGxpc3QsICgkdmFsdWVzLCksICR2YWx1ZXMpO1xuXG4gICR2YWw6ICcnO1xuXG4gIC8vIExvb3Agb3ZlciBlYWNoIHZhbHVlIGFuZCBjYWxjdWxhdGUgdmFsdWVcbiAgQGVhY2ggJHZhbHVlIGluICR2YWx1ZXMge1xuICAgIEBpZiAkdmFsdWUgPT0gMCB7XG4gICAgICAkdmFsOiAkdmFsICsgJyAwJztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gQ2FjaGUgJHZhbHVlIHVuaXRcbiAgICAgICR1bml0OiBpZih0eXBlLW9mKCR2YWx1ZSkgPT0gXCJudW1iZXJcIiwgdW5pdCgkdmFsdWUpLCBmYWxzZSk7XG5cbiAgICAgIEBpZiAkdW5pdCA9PSBweCB7XG4gICAgICAgIC8vIENvbnZlcnQgdG8gcmVtIGlmIG5lZWRlZFxuICAgICAgICAkdmFsOiAkdmFsICsgJyAnICsgaWYoJHJmcy11bml0ID09IHJlbSwgI3tkaXZpZGUoJHZhbHVlLCAkdmFsdWUgKiAwICsgJHJmcy1yZW0tdmFsdWUpfXJlbSwgJHZhbHVlKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICR1bml0ID09IHJlbSB7XG4gICAgICAgIC8vIENvbnZlcnQgdG8gcHggaWYgbmVlZGVkXG4gICAgICAgICR2YWw6ICR2YWwgKyAnICcgKyBpZigkcmZzLXVuaXQgPT0gcHgsICN7ZGl2aWRlKCR2YWx1ZSwgJHZhbHVlICogMCArIDEpICogJHJmcy1yZW0tdmFsdWV9cHgsICR2YWx1ZSk7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIC8vIElmICR2YWx1ZSBpc24ndCBhIG51bWJlciAobGlrZSBpbmhlcml0KSBvciAkdmFsdWUgaGFzIGEgdW5pdCAobm90IHB4IG9yIHJlbSwgbGlrZSAxLjVlbSkgb3IgJCBpcyAwLCBqdXN0IHByaW50IHRoZSB2YWx1ZVxuICAgICAgICAkdmFsOiAkdmFsICsgJyAnICsgJHZhbHVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlbW92ZSBmaXJzdCBzcGFjZVxuICBAcmV0dXJuIHVucXVvdGUoc3RyLXNsaWNlKCR2YWwsIDIpKTtcbn1cblxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIGdldCB0aGUgcmVzcG9uc2l2ZSB2YWx1ZSBjYWxjdWxhdGVkIGJ5IFJGU1xuQGZ1bmN0aW9uIHJmcy1mbHVpZC12YWx1ZSgkdmFsdWVzKSB7XG4gIC8vIENvbnZlcnQgdG8gbGlzdFxuICAkdmFsdWVzOiBpZih0eXBlLW9mKCR2YWx1ZXMpICE9IGxpc3QsICgkdmFsdWVzLCksICR2YWx1ZXMpO1xuXG4gICR2YWw6ICcnO1xuXG4gIC8vIExvb3Agb3ZlciBlYWNoIHZhbHVlIGFuZCBjYWxjdWxhdGUgdmFsdWVcbiAgQGVhY2ggJHZhbHVlIGluICR2YWx1ZXMge1xuICAgIEBpZiAkdmFsdWUgPT0gMCB7XG4gICAgICAkdmFsOiAkdmFsICsgJyAwJztcbiAgICB9XG5cbiAgICBAZWxzZSB7XG4gICAgICAvLyBDYWNoZSAkdmFsdWUgdW5pdFxuICAgICAgJHVuaXQ6IGlmKHR5cGUtb2YoJHZhbHVlKSA9PSBcIm51bWJlclwiLCB1bml0KCR2YWx1ZSksIGZhbHNlKTtcblxuICAgICAgLy8gSWYgJHZhbHVlIGlzbid0IGEgbnVtYmVyIChsaWtlIGluaGVyaXQpIG9yICR2YWx1ZSBoYXMgYSB1bml0IChub3QgcHggb3IgcmVtLCBsaWtlIDEuNWVtKSBvciAkIGlzIDAsIGp1c3QgcHJpbnQgdGhlIHZhbHVlXG4gICAgICBAaWYgbm90ICR1bml0IG9yICR1bml0ICE9IHB4IGFuZCAkdW5pdCAhPSByZW0ge1xuICAgICAgICAkdmFsOiAkdmFsICsgJyAnICsgJHZhbHVlO1xuICAgICAgfVxuXG4gICAgICBAZWxzZSB7XG4gICAgICAgIC8vIFJlbW92ZSB1bml0IGZyb20gJHZhbHVlIGZvciBjYWxjdWxhdGlvbnNcbiAgICAgICAgJHZhbHVlOiBkaXZpZGUoJHZhbHVlLCAkdmFsdWUgKiAwICsgaWYoJHVuaXQgPT0gcHgsIDEsIGRpdmlkZSgxLCAkcmZzLXJlbS12YWx1ZSkpKTtcblxuICAgICAgICAvLyBPbmx5IGFkZCB0aGUgbWVkaWEgcXVlcnkgaWYgdGhlIHZhbHVlIGlzIGdyZWF0ZXIgdGhhbiB0aGUgbWluaW11bSB2YWx1ZVxuICAgICAgICBAaWYgYWJzKCR2YWx1ZSkgPD0gJHJmcy1iYXNlLXZhbHVlIG9yIG5vdCAkZW5hYmxlLXJmcyB7XG4gICAgICAgICAgJHZhbDogJHZhbCArICcgJyArICBpZigkcmZzLXVuaXQgPT0gcmVtLCAje2RpdmlkZSgkdmFsdWUsICRyZnMtcmVtLXZhbHVlKX1yZW0sICN7JHZhbHVlfXB4KTtcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgLy8gQ2FsY3VsYXRlIHRoZSBtaW5pbXVtIHZhbHVlXG4gICAgICAgICAgJHZhbHVlLW1pbjogJHJmcy1iYXNlLXZhbHVlICsgZGl2aWRlKGFicygkdmFsdWUpIC0gJHJmcy1iYXNlLXZhbHVlLCAkcmZzLWZhY3Rvcik7XG5cbiAgICAgICAgICAvLyBDYWxjdWxhdGUgZGlmZmVyZW5jZSBiZXR3ZWVuICR2YWx1ZSBhbmQgdGhlIG1pbmltdW0gdmFsdWVcbiAgICAgICAgICAkdmFsdWUtZGlmZjogYWJzKCR2YWx1ZSkgLSAkdmFsdWUtbWluO1xuXG4gICAgICAgICAgLy8gQmFzZSB2YWx1ZSBmb3JtYXR0aW5nXG4gICAgICAgICAgJG1pbi13aWR0aDogaWYoJHJmcy11bml0ID09IHJlbSwgI3tkaXZpZGUoJHZhbHVlLW1pbiwgJHJmcy1yZW0tdmFsdWUpfXJlbSwgI3skdmFsdWUtbWlufXB4KTtcblxuICAgICAgICAgIC8vIFVzZSBuZWdhdGl2ZSB2YWx1ZSBpZiBuZWVkZWRcbiAgICAgICAgICAkbWluLXdpZHRoOiBpZigkdmFsdWUgPCAwLCAtJG1pbi13aWR0aCwgJG1pbi13aWR0aCk7XG5cbiAgICAgICAgICAvLyBVc2UgYHZtaW5gIGlmIHR3by1kaW1lbnNpb25hbCBpcyBlbmFibGVkXG4gICAgICAgICAgJHZhcmlhYmxlLXVuaXQ6IGlmKCRyZnMtdHdvLWRpbWVuc2lvbmFsLCB2bWluLCB2dyk7XG5cbiAgICAgICAgICAvLyBDYWxjdWxhdGUgdGhlIHZhcmlhYmxlIHdpZHRoIGJldHdlZW4gMCBhbmQgJHJmcy1icmVha3BvaW50XG4gICAgICAgICAgJHZhcmlhYmxlLXdpZHRoOiAje2RpdmlkZSgkdmFsdWUtZGlmZiAqIDEwMCwgJHJmcy1icmVha3BvaW50KX0jeyR2YXJpYWJsZS11bml0fTtcblxuICAgICAgICAgIC8vIFJldHVybiB0aGUgY2FsY3VsYXRlZCB2YWx1ZVxuICAgICAgICAgICR2YWw6ICR2YWwgKyAnIGNhbGMoJyArICRtaW4td2lkdGggKyBpZigkdmFsdWUgPCAwLCAnIC0gJywgJyArICcpICsgJHZhcmlhYmxlLXdpZHRoICsgJyknO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUmVtb3ZlIGZpcnN0IHNwYWNlXG4gIEByZXR1cm4gdW5xdW90ZShzdHItc2xpY2UoJHZhbCwgMikpO1xufVxuXG4vLyBSRlMgbWl4aW5cbkBtaXhpbiByZnMoJHZhbHVlcywgJHByb3BlcnR5OiBmb250LXNpemUpIHtcbiAgQGlmICR2YWx1ZXMgIT0gbnVsbCB7XG4gICAgJHZhbDogcmZzLXZhbHVlKCR2YWx1ZXMpO1xuICAgICRmbHVpZFZhbDogcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZXMpO1xuXG4gICAgLy8gRG8gbm90IHByaW50IHRoZSBtZWRpYSBxdWVyeSBpZiByZXNwb25zaXZlICYgbm9uLXJlc3BvbnNpdmUgdmFsdWVzIGFyZSB0aGUgc2FtZVxuICAgIEBpZiAkdmFsID09ICRmbHVpZFZhbCB7XG4gICAgICAjeyRwcm9wZXJ0eX06ICR2YWw7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIF9yZnMtcnVsZSB7XG4gICAgICAgICN7JHByb3BlcnR5fTogaWYoJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSwgJHZhbCwgJGZsdWlkVmFsKTtcblxuICAgICAgICAvLyBJbmNsdWRlIHNhZmFyaSBpZnJhbWUgcmVzaXplIGZpeCBpZiBuZWVkZWRcbiAgICAgICAgbWluLXdpZHRoOiBpZigkcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXgsICgwICogMXZ3KSwgbnVsbCk7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIF9yZnMtbWVkaWEtcXVlcnktcnVsZSB7XG4gICAgICAgICN7JHByb3BlcnR5fTogaWYoJHJmcy1tb2RlID09IG1heC1tZWRpYS1xdWVyeSwgJGZsdWlkVmFsLCAkdmFsKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gU2hvcnRoYW5kIGhlbHBlciBtaXhpbnNcbkBtaXhpbiBmb250LXNpemUoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUpO1xufVxuXG5AbWl4aW4gcGFkZGluZygkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZyk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLXRvcCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy10b3ApO1xufVxuXG5AbWl4aW4gcGFkZGluZy1yaWdodCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1yaWdodCk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLWJvdHRvbSgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1ib3R0b20pO1xufVxuXG5AbWl4aW4gcGFkZGluZy1sZWZ0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nLWxlZnQpO1xufVxuXG5AbWl4aW4gbWFyZ2luKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4pO1xufVxuXG5AbWl4aW4gbWFyZ2luLXRvcCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luLXRvcCk7XG59XG5cbkBtaXhpbiBtYXJnaW4tcmlnaHQoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbi1yaWdodCk7XG59XG5cbkBtaXhpbiBtYXJnaW4tYm90dG9tKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tYm90dG9tKTtcbn1cblxuQG1peGluIG1hcmdpbi1sZWZ0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tbGVmdCk7XG59XG4iLCIkY29tbWVudEZvcm1UaXRsZUZvbnRTaXplOiAyNnB4ICFkZWZhdWx0O1xuXG4kY29tbWVudEZvcm1JbnB1dHNHYXA6IDE1cHggIWRlZmF1bHQ7XG5cbiRjb21tZW50Rm9ybVN1Ym1pdE1hcmdpblRvcDogMTVweCAhZGVmYXVsdDtcblxuLy8gRk9STSBUSVRMRVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLmNvbW1lbnRGb3JtX190aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1jb21tZW50Rm9ybVRpdGxlLCB2YXIoLS1mb250RmFtaWx5LCBBcmlhbCwgc2Fucy1zZXJpZikpO1xuICBjb2xvcjogdmFyKC0tY29tbWVudEZvcm1UaXRsZUNvbG9yLCAjMDAwKTtcblxuICBAaW5jbHVkZSBmb250LXNpemUoJGNvbW1lbnRGb3JtVGl0bGVGb250U2l6ZSk7XG5cbiAgZm9udC13ZWlnaHQ6IHZhcigtLWNvbW1lbnRGb3JtVGl0bGVGb250V2VpZ2h0LCA3MDApO1xuICBsaW5lLWhlaWdodDogdmFyKC0tY29tbWVudEZvcm1UaXRsZUxpbmVIZWlnaHQsIDEuMik7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWNvbW1lbnRGb3JtVGl0bGVNYXJnaW5Cb3R0b20sIDAuNWVtKTtcblxuICAmOjphZnRlciB7XG5cdGNvbnRlbnQ6ICcnO1xuXHRkaXNwbGF5OiBibG9jaztcblx0d2lkdGg6IHZhcigtLWNvbW1lbnRGb3JtVGl0bGVCb3JkZXJXaWR0aCwgI3tyZW0oMjUpfSk7XG5cdGhlaWdodDogdmFyKC0tY29tbWVudEZvcm1UaXRsZUJvcmRlckhlaWdodCwgMXB4KTtcblx0bWFyZ2luLXRvcDogdmFyKC0tY29tbWVudEZvcm1UaXRsZUJvcmRlck1hcmdpblRvcCwgMC40ZW0pO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb21tZW50Rm9ybVRpdGxlQm9yZGVyQ29sb3IsICMwMDApO1xuICB9XG59XG5cbi8vIEZPUk1cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5jb21tZW50LXJlc3BvbmQge1xuICAubWF0ZXJpYWxJbnB1dCB7XG5cdGlucHV0LFxuXHR0ZXh0YXJlYSB7XG5cdCAgQGV4dGVuZCAlcmVzZXRGb3JtICFvcHRpb25hbDtcblx0fVxuXG5cdEBleHRlbmQgJW1hdGVyaWFsSW5wdXQgIW9wdGlvbmFsO1xuICB9XG59XG5cbi5jb21tZW50LXJlc3BvbmQgZm9ybSA+ICogKyAqOm5vdCguZm9ybS1zdWJtaXQpIHtcbiAgQGluY2x1ZGUgbWFyZ2luLXRvcCgkY29tbWVudEZvcm1JbnB1dHNHYXApO1xufVxuXG4vLyBTVUJNSVRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5jb21tZW50LXJlc3BvbmQgLmZvcm0tc3VibWl0IHtcbiAgQGluY2x1ZGUgbWFyZ2luLXRvcCgkY29tbWVudEZvcm1TdWJtaXRNYXJnaW5Ub3ApO1xufVxuIiwiJGZvb3Rlck1hcmdpblRvcDogMTMwcHggIWRlZmF1bHQ7XG5cbi5mb290ZXIge1xuICAtLWZvb3Rlckl0ZW1zR2FwOiAje3JlbSgyNSl9O1xuXG4gIEBpbmNsdWRlIG1hcmdpbi10b3AoJGZvb3Rlck1hcmdpblRvcCk7XG59XG5cbi5mb290ZXIgPiBkaXYge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWFyZWFzOlxuICAgIFwibG9nb1wiXG4gICAgXCJhZGRyZXNzZXNcIlxuICAgIFwiYnV0dG9uc1wiXG4gICAgXCJtZW51XCJcbiAgICBcImJvdHRvbS1tZW51XCI7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICBncmlkLWNvbHVtbi1nYXA6IHZhcigtLWZvb3RlckNvbHVtbnNHYXAsIDApO1xufVxuXG5AaW5jbHVkZSBtcSgndGFibGV0JywgJ21pbicpIHtcbiAgLmZvb3RlciB7XG5cdC0tZm9vdGVyTWVudVRleHRBbGlnbjogY2VudGVyO1xuICB9XG59XG5cbkBpbmNsdWRlIG1xKCd0YWJsZXQtd2lkZScsICdtaW4nKSB7XG4gIC5mb290ZXIge1xuXHQtLWZvb3RlckFkZHJlc3Nlc0JvcmRlcldpZHRoOiAwO1xuXHQtLWZvb3RlckFkZHJlc3Nlc1BhZGRpbmdUb3A6IDA7XG5cdC0tZm9vdGVyQ29sdW1uc0dhcDogI3tyZW0oMzApfTtcblx0LS1mb290ZXJEb2N0b2xpYk1hcmdpblRvcDogMDtcblx0LS1mb290ZXJMb2dvUGFkZGluZ0JvdHRvbTogMDtcbiAgfVxuXG4gIC5mb290ZXIgPiBkaXYge1xuXHRncmlkLXRlbXBsYXRlLWFyZWFzOlxuICAgICAgXCJsb2dvIFx0XHRcdFx0YWRkcmVzc2VzIFx0XHRcdFx0YnV0dG9uc1wiXG4gICAgICBcIm1lbnUgXHRcdFx0XHRtZW51IFx0XHRcdFx0XHRtZW51XCJcbiAgICAgIFwiYm90dG9tLW1lbnUgXHRcdFx0Ym90dG9tLW1lbnUgXHRcdFx0Ym90dG9tLW1lbnVcIjtcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIDFmciBhdXRvO1xuXHRib3JkZXItdG9wOiBub25lO1xuICB9XG59XG5cbi8vIExPR09cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5mb290ZXJfX2xvZ28ge1xuICBncmlkLWFyZWE6IGxvZ287XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLWZvb3RlckxvZ29QYWRkaW5nQm90dG9tLCAje3JlbSgxMCl9KTtcbn1cblxuLy8gQUREUkVTU0VTXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4uZm9vdGVyX19hZGRyZXNzZXMge1xuICBncmlkLWFyZWE6IGFkZHJlc3NlcztcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIGdyaWQtZ2FwOiB2YXIoLS1mb290ZXJBZGRyZXNzZXNHYXAsICN7cmVtKDI1KX0pO1xuICBwYWRkaW5nLXRvcDogdmFyKC0tZm9vdGVyQWRkcmVzc2VzUGFkZGluZ1RvcCwgdmFyKC0tZm9vdGVySXRlbXNHYXAsICN7cmVtKDI1KX0pKTtcbiAgYm9yZGVyLXRvcDogdmFyKC0tZm9vdGVyQWRkcmVzc2VzQm9yZGVyV2lkdGgsIDNweCkgc29saWQgdmFyKC0tZm9vdGVyQWRkcmVzc2VzQm9yZGVyQ29sb3IsICMwMDApO1xuXG4gID4gKiB7XG5cdGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgfVxufVxuXG4uZm9vdGVyX19hZGRyZXNzZXNfX3BsYWNlIC5mb290ZXJfX2FkZHJlc3Nlc19fcGxhY2VfX25hbWUge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9vdGVyQWRkcmVzc05hbWVGb250RmFtaWx5LCB2YXIoLS1mb250RmFtaWx5LCBBcmlhbCwgc2Fucy1zZXJpZikpO1xuICBmb250LXNpemU6IHZhcigtLWZvb3RlckFkZHJlc3NOYW1lRm9udFNpemUsIDFyZW0pO1xuICBjb2xvcjogdmFyKC0tZm9vdGVyQWRkcmVzc05hbWVDb2xvciwgIzAwMCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb290ZXJBZGRyZXNzTmFtZUZvbnRXZWlnaHQsIDQwMCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1mb290ZXJBZGRyZXNzTmFtZUxpbmVIZWlnaHQsIDEuMik7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1mb290ZXJBZGRyZXNzTmFtZUxldHRlclNwYWNpbmcsIDApO1xuICB0ZXh0LXRyYW5zZm9ybTogdmFyKC0tZm9vdGVyQWRkcmVzc05hbWVUZXh0VHJhbnNmb3JtLCBpbml0aWFsKTtcbn1cblxuLmZvb3Rlcl9fYWRkcmVzc2VzX19wbGFjZSA+IC5mb290ZXJfX2FkZHJlc3Nlc19fcGxhY2VfX3Bob25lIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvb3RlckFkZHJlc3NQaG9uZUZvbnRGYW1pbHksIHZhcigtLWZvbnRGYW1pbHksIEFyaWFsLCBzYW5zLXNlcmlmKSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9vdGVyQWRkcmVzc1Bob25lRm9udFNpemUsIDFyZW0pO1xuICBjb2xvcjogdmFyKC0tZm9vdGVyQWRkcmVzc1Bob25lQ29sb3IsICMwMDApO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9vdGVyQWRkcmVzc1Bob25lRm9udFdlaWdodCwgNDAwKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWZvb3RlckFkZHJlc3NQaG9uZUxpbmVIZWlnaHQsIDEuMik7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1mb290ZXJBZGRyZXNzUGhvbmVMZXR0ZXJTcGFjaW5nLCAwKTtcbn1cblxuLmZvb3Rlcl9fYWRkcmVzc2VzX19wbGFjZSA+ICogKyAqIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tZm9vdGVyQWRkcmVzc2VzUGxhY2VzR2FwLCAje3JlbSgxMCl9KTtcbn1cblxuQGluY2x1ZGUgbXEoJ3RhYmxldCcsICdtaW4nKSB7XG4gIC5mb290ZXJfX2FkZHJlc3NlcyB7XG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KHZhcigtLWZvb3RlckFkZHJlc3Nlc01pbmltdW1XaWR0aCwgI3tyZW0oMjUwKX0pLCAxZnIpKTtcblx0Z3JpZC1nYXA6IHZhcigtLWZvb3RlckFkZHJlc3Nlc0dhcCwgI3tyZW0oMjUpfSk7XG4gIH1cbn1cblxuLy8gQlVUVE9OU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLmZvb3Rlcl9fYnV0dG9ucyB7XG4gIGdyaWQtYXJlYTogYnV0dG9ucztcbiAgbWFyZ2luLXRvcDogdmFyKC0tZm9vdGVyQnV0dG9uc01hcmdpblRvcCwgdmFyKC0tZm9vdGVySXRlbXNHYXAsICN7cmVtKDI1KX0pKTtcbn1cblxuLy8gRE9DVE9MSUJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5mb290ZXJfX2RvY3RvbGliIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gID4gYSB7XG5cdEBleHRlbmQgJXJlc2V0QnV0dG9uICFvcHRpb25hbDtcblx0QGV4dGVuZCAlZG9jdG9saWJCdXR0b24gIW9wdGlvbmFsO1xuICB9XG59XG5cbi8vIE1FTlVcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5mb290ZXJfX21lbnUge1xuICBncmlkLWFyZWE6IG1lbnU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvb3Rlck1lbnVGb250RmFtaWx5LCB2YXIoLS1mb250RmFtaWx5LCBBcmlhbCwgc2Fucy1zZXJpZikpO1xuICBmb250LXNpemU6IHZhcigtLWZvb3Rlck1lbnVGb250U2l6ZSwgMXJlbSk7XG4gIGNvbG9yOiB2YXIoLS1mb290ZXJNZW51Q29sb3IsICNGRkYpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9vdGVyTWVudUZvbnRXZWlnaHQsIDQwMCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1mb290ZXJNZW51TGluZUhlaWdodCwgMik7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1mb290ZXJNZW51TGV0dGVyU3BhY2luZywgMCk7XG4gIHRleHQtYWxpZ246IHZhcigtLWZvb3Rlck1lbnVUZXh0QWxpZ24sIGxlZnQpO1xuICB0ZXh0LXRyYW5zZm9ybTogdmFyKC0tZm9vdGVyTWVudVRleHRUcmFuc2Zvcm0sIHVwcGVyY2FzZSk7XG4gIG1hcmdpbi10b3A6IHZhcigtLWZvb3Rlck1lbnVNYXJnaW5Ub3AsIHZhcigtLWZvb3Rlckl0ZW1zR2FwLCAje3JlbSgyNSl9KSk7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1mb290ZXJNZW51UGFkZGluZ1RvcCwgI3tyZW0oMTUpfSk7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1mb290ZXJNZW51UGFkZGluZ0JvdHRvbSwgI3tyZW0oMTUpfSk7XG5cbiAgPiAqIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR6LWluZGV4OiAxO1xuICB9XG5cbiAgbGkge1xuXHRkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gICY6OmJlZm9yZSB7XG5cdGNvbnRlbnQ6ICcnO1xuXHRkaXNwbGF5OiBibG9jaztcblx0d2lkdGg6IDEwMHZ3O1xuXHRoZWlnaHQ6IDEwMCU7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAwO1xuXHRib3R0b206IDA7XG5cdGxlZnQ6IGNhbGMoNTAlIC0gNTB2dyk7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWZvb3Rlck1lbnVCYWNrZ3JvdW5kQ29sb3IsICMwMDApO1xuICB9XG59XG5cbkBpbmNsdWRlIG1xKCd0YWJsZXQnLCAnbWluJykge1xuICAuZm9vdGVyX19tZW51IHtcblx0bGkge1xuXHQgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuXHQgICsgbGk6OmJlZm9yZSB7XG5cdFx0Y29udGVudDogJ3wnO1xuXHRcdGNvbG9yOiB2YXIoLS1mb290ZXJNZW51SXRlbXNEaXZpZGVyQ29sb3IsICN7cmdiYSgjRkZGLCAwLjUpfSk7XG5cdFx0bWFyZ2luOiAwIHZhcigtLWZvb3Rlck1lbnVJdGVtc0dhcCwgI3tyZW0oMTApfSk7XG5cdCAgfVxuXHR9XG4gIH1cbn1cblxuLy8gQk9UVE9NIE1FTlVcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5mb290ZXJfX2JvdHRvbU1lbnUge1xuICBncmlkLWFyZWE6IGJvdHRvbS1tZW51O1xuICBmb250LWZhbWlseTogdmFyKC0tZm9vdGVyQm90dG9tTWVudUZvbnRGYW1pbHksIHZhcigtLWZvbnRGYW1pbHksIEFyaWFsLCBzYW5zLXNlcmlmKSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9vdGVyQm90dG9tTWVudUZvbnRTaXplLCAxcmVtKTtcbiAgY29sb3I6IHZhcigtLWZvb3RlckJvdHRvbU1lbnVDb2xvciwgIzAwMCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb290ZXJCb3R0b21NZW51Rm9udFdlaWdodCwgNDAwKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWZvb3RlckJvdHRvbU1lbnVMaW5lSGVpZ2h0LCAxLjIpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tZm9vdGVyQm90dG9tTWVudUxldHRlclNwYWNpbmcsIDApO1xuICB0ZXh0LWFsaWduOiB2YXIoLS1mb290ZXJCb3R0b21NZW51VGV4dEFsaWduLCBjZW50ZXIpO1xuICB0ZXh0LXRyYW5zZm9ybTogdmFyKC0tZm9vdGVyQm90dG9tTWVudVRleHRUcmFuc2Zvcm0sIGluaXRpYWwpO1xuICBwYWRkaW5nLXRvcDogdmFyKC0tZm9vdGVyQm90dG9tTWVudVBhZGRpbmdUb3AsICN7cmVtKDE1KX0pO1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tZm9vdGVyQm90dG9tTWVudVBhZGRpbmdCb3R0b20sICN7cmVtKDE1KX0pO1xuXG4gIGxpIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG5cbiAgbGkgKyBsaTo6YmVmb3JlIHtcblx0Y29udGVudDogJ3wnO1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdG1hcmdpbjogMCB2YXIoLS1mb290ZXJCb3R0b21NZW51SXRlbXNHYXAsICN7cmVtKDE1KX0pO1xuICB9XG59XG4iLCIlaDIge1xuICBmb250LWZhbWlseTogJGZvbnRNZW5vQmFubmVyO1xuICBjb2xvcjogIzAwMDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDM1cHgpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udFdlaWdodFJlZ3VsYXIpO1xuICBsaW5lLWhlaWdodDogMS40MztcbiAgbWFyZ2luLWJvdHRvbTogMC40ZW07XG59XG5cbiVoMyB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udE1lbm9CYW5uZXI7XG4gIGNvbG9yOiB2YXIoLS10dW5kb3JhQ29sb3IpO1xuICBAaW5jbHVkZSBmb250LXNpemUoMjhweCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250V2VpZ2h0UmVndWxhcik7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBtYXJnaW4tYm90dG9tOiAwLjRlbTtcbn1cblxuJXVsIHtcbiAgbWFyZ2luLWxlZnQ6IDJlbTtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogaW5zaWRlO1xuXG4gIGxpIHtcblx0Jjo6YmVmb3JlIHtcblx0ICBjb250ZW50OiBzdmctdXJpKCc8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj4gPGNpcmNsZSBjeD1cIjZcIiBjeT1cIjZcIiByPVwiNlwiIGZpbGw9XCIjRUNFNEQ4XCIvPiA8L3N2Zz4gJyk7XG5cdCAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHQgIG1hcmdpbi1yaWdodDogcmVtKDE1KTtcblx0fVxuICB9XG59XG5cbiVvbCB7XG4gIG1hcmdpbi1sZWZ0OiAyZW07XG4gIGxpc3Qtc3R5bGU6IGRlY2ltYWw7XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IGluc2lkZTtcbn1cblxuJWxpbmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nYWxsZXJ5M0NvbG9yKTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuM3MgJGVhc2U7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdoaXRlUm9ja0NvbG9yKTtcbiAgfVxufVxuXG4lYmxvY2txdW90ZSB7XG4gIC0tYmxvY2txdW90ZVN2Z1dpZHRoOiA0MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNvbG9yOiByZWQ7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuXG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcblxuICA+ICoge1xuXHRwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tYmxvY2txdW90ZVN2Z1dpZHRoKSArICN7cmVtKDE1KX0pO1xuICB9XG5cbiAgJjo6YmVmb3JlIHtcblx0Y29udGVudDogc3ZnLXVyaSgnPHN2ZyB3aWR0aD1cIjQwXCIgaGVpZ2h0PVwiMzFcIiB2aWV3Qm94PVwiMCAwIDQwIDMxXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+IDxwYXRoIGQ9XCJNMTUuNDMzMSAzLjg1NDkyQzEzLjEyMzQgNi4yMTA3MSAxMS4zOTExIDguNDU5NDEgMTAuMjM2MiAxMC42MDFDOS4xODYzNSAxMi42MzU2IDguNTAzOTQgMTQuODMwNyA4LjE4ODk4IDE3LjE4NjVIMTQuNjQ1N0wxMy41NDMzIDMxSDBMMC43ODc0MDEgMjAuNzIwMkMxLjEwMjM2IDE2LjY1MTEgMS45OTQ3NSAxMi45NTY4IDMuNDY0NTcgOS42MzczMUM1LjAzOTM3IDYuMjEwNzEgNy40NTQwNyAyLjk5ODI3IDEwLjcwODcgMEwxNS40MzMxIDMuODU0OTJaTTQwIDMuODU0OTJDMzcuNjkwMyA2LjIxMDcxIDM1Ljk1OCA4LjQ1OTQxIDM0LjgwMzIgMTAuNjAxQzMzLjc1MzMgMTIuNjM1NiAzMy4wNzA5IDE0LjgzMDcgMzIuNzU1OSAxNy4xODY1SDM5LjIxMjZMMzguMTEwMiAzMUgyNC41NjY5TDI1LjM1NDMgMjAuNzIwMkMyNS42NjkzIDE2LjY1MTEgMjYuNTYxNyAxMi45NTY4IDI4LjAzMTUgOS42MzczMUMyOS42MDYzIDYuMjEwNzEgMzIuMDIxIDIuOTk4MjcgMzUuMjc1NiAwTDQwIDMuODU0OTJaXCIgZmlsbD1cIiNGRkZcIi8+IDwvc3ZnPiAnKTtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuICB9XG59IiwiLy8gUk9MTCBIT1ZFUiBCVVRUT05cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBtaXhpbiByb2xsSG92ZXJCdXR0b24oKSB7XG4gID4gZGl2IHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXG5cdD4gKiB7XG5cdCAgZGlzcGxheTogYmxvY2s7XG5cdCAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zNXMgJGVhc2U7XG5cblx0ICAmOm50aC1jaGlsZCgyKSB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdGJvdHRvbTogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcblx0XHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHQgIH1cblx0fVxuICB9XG4gIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG5cdCY6aG92ZXIge1xuXHQgID4gZGl2ID4gKiB7XG5cdFx0JjpudGgtY2hpbGQoMSkge1xuXHRcdCAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcblx0XHR9XG5cblx0XHQmOm50aC1jaGlsZCgyKSB7XG5cdFx0ICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG5cdFx0fVxuXHQgIH1cblx0fVxuICB9XG59XG5cbiVidG5Sb3VuZGVkLFxuLmJ0blJvdW5kZWQge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogcmVtKDEzKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgYm9yZGVyOiAzcHggc29saWQgdmFyKC0tY29yZHVyb3lDb2xvcik7XG4gIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gIHBhZGRpbmc6IGVtKDguNSkgZW0oNTApIGVtKDgpO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCB2YXIoLS1jb3JkdXJveUNvbG9yKSAwJSwgdmFyKC0tY29yZHVyb3lDb2xvcikgMTAwJSkgbm8tcmVwZWF0IHJpZ2h0IGJvdHRvbSAvIDAlIDEwMCU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtc2l6ZSAuMzVzICRlYXNlSW5PdXRDdWJpYywgY29sb3IgLjhzICRlYXNlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgJjpob3ZlciB7XG5cdGNvbG9yOiAjRkZGO1xuXHRiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBib3R0b207XG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtc2l6ZSAuMzVzICRlYXNlSW5PdXRDdWJpYywgY29sb3IgLjRzICRlYXNlO1xuICB9XG59XG5cbiVidXR0b24tcm91bmRlZCxcbi5idXR0b25Sb3VuZGVkIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IHJlbSgxMyk7XG4gIGNvbG9yOiAjRkZGO1xuICBmb250LXdlaWdodDogNjAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIHBhZGRpbmc6IGVtKDEyLCAxMykgZW0oMjAsIDEzKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmVkO1xufVxuXG4lYnV0dG9uLWFycm93LFxuLmJ1dHRvbkFycm93IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb2xvcjogIzAwMDtcblxuICAmOjpiZWZvcmUge1xuXHRjb250ZW50OiBzdmctdXJpKCc8c3ZnIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTYgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj4gPHBhdGggZD1cIk0xLjUgNS43NTY5NEgxNFwiIHN0cm9rZT1cIiMwMDBcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIvPiA8cGF0aCBkPVwiTTExIDEuMDA2NDFMMTUgNS40NDAyNEwxMSAxMC41MDc1XCIgc3Ryb2tlPVwiIzAwMFwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIi8+IDwvc3ZnPiAnKTtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRtYXJnaW4tcmlnaHQ6IGVtKDE1LCAxNSk7XG5cdHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3M7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuXG4gIHNwYW4ge1xuXHRmb250LXNpemU6IHJlbSgxNSk7XG5cdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdGxpbmUtaGVpZ2h0OiAxO1xuXHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuXG4gIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG5cdCY6aG92ZXIge1xuXHQgICY6OmJlZm9yZSB7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCk7XG5cdCAgfVxuXHR9XG4gIH1cbn1cbiVidXR0b24tYXJyb3ctc2Vjb25kLWNvbG9yIHtcbiAgJjo6YmVmb3JlIHtcblx0Y29udGVudDogc3ZnLXVyaSgnPHN2ZyB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDE2IDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+IDxwYXRoIGQ9XCJNMS41IDUuNzU2OTRIMTRcIiBzdHJva2U9XCIje3JlZH1cIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIvPiA8cGF0aCBkPVwiTTExIDEuMDA2NDFMMTUgNS40NDAyNEwxMSAxMC41MDc1XCIgc3Ryb2tlPVwiI3tyZWR9XCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz4gPC9zdmc+ICcpO1xuICB9XG5cbiAgc3BhbiB7XG5cdHRyYW5zaXRpb246IGNvbG9yIC4zcztcbiAgfVxuXG4gICY6aG92ZXIgc3BhbiB7XG5cdGNvbG9yOiByZWQ7XG4gIH1cbn1cblxuJWJ1dHRvbi1hcnJvdy1kaWFtb25kLFxuLmJ1dHRvbkFycm93RGlhbW9uZCB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBjb2xvcjogeWVsbG93O1xuXG4gIHN2ZyB7XG5cdD4gKiB7XG5cdCAgc3Ryb2tlOiB2aW9sZXQ7XG5cdH1cblxuXHQ+IGcge1xuXHQgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MgJGVhc2VJbk91dDtcblx0ICB0cmFuc2Zvcm0tYm94OiBmaWxsLWJveDtcblx0ICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG5cdH1cbiAgfVxuXG4gIHNwYW4ge1xuXHRmb250LXNpemU6IHJlbSgxNSk7XG5cdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdGxpbmUtaGVpZ2h0OiAxO1xuXHRsZXR0ZXItc3BhY2luZzogMC4wNmVtO1xuXHRtYXJnaW4tbGVmdDogZW0oMTAsIDE1KTtcbiAgfVxuXG4gIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG5cdCY6aG92ZXIge1xuXHQgID4gc3ZnID4gZyB7XG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcblx0ICB9XG5cdH1cbiAgfVxufVxuXG4lYnV0dG9uLW91dGxpbmUsXG4uYnV0dG9uT3V0bGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogcmVkO1xuICBmb250LXdlaWdodDogNjAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBib3JkZXI6IDFweCBzb2xpZCByZWQ7XG4gIHBhZGRpbmc6IGVtKDE1KSBlbSg0MCk7XG4gIHBhZGRpbmctdG9wOiBlbSgxNik7XG4gIHRyYW5zaXRpb246IGNvbG9yIC4zcztcbiAgQGluY2x1ZGUgbXEoNTAwLCAnbWluJykge1xuXHRtaW4td2lkdGg6IHJlbSgxODApO1xuICB9XG5cbiAgJjo6YmVmb3JlIHtcblx0Y29udGVudDogJyc7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHR3aWR0aDogMDtcblx0aGVpZ2h0OiAxMDAlO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMDtcblx0Ym90dG9tOiAwO1xuXHRsZWZ0OiAwO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7XG5cdHRyYW5zaXRpb246IHdpZHRoIC4zcztcbiAgfVxuXG4gIHNwYW4ge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHotaW5kZXg6IDE7XG5cdGZvbnQtc2l6ZTogcmVtKDEyKTtcbiAgfVxuXG4gIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG5cdCY6aG92ZXIge1xuXHQgIGNvbG9yOiAjRkZGO1xuXG5cdCAgJjo6YmVmb3JlIHtcblx0XHR3aWR0aDogMTAwJTtcblx0ICB9XG5cdH1cbiAgfVxufVxuXG46cm9vdCB7XG4gIC0tYnV0dG9uLW91dGxpbmUtYm9yZGVyLWJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gIC0tYnV0dG9uLW91dGxpbmUtYm9yZGVyLWNvbG9yOiBhbGljZWJsdWU7XG4gIC0tYnV0dG9uLW91dGxpbmUtYm9yZGVyLW1heC13aWR0aDogI3tyZW0oMjgwKX07XG4gIC0tYnV0dG9uLW91dGxpbmUtYm9yZGVyLXBhZGRpbmc6ICN7cmVtKDE1KX0gI3tyZW0oMjUpfTtcbn1cblxuJWJ1dHRvbi1vdXRsaW5lLWJvcmRlcixcbi5idXR0b25PdXRsaW5lQm9yZGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXgtd2lkdGg6IHZhcigtLWJ1dHRvbi1vdXRsaW5lLWJvcmRlci1tYXgtd2lkdGgpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IHJlbSg1KTtcblxuICA+IHNwYW4ge1xuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdGZvbnQtc2l6ZTogcmVtKDE1KTtcblx0Y29sb3I6IHZhcigtLWJ1dHRvbi1vdXRsaW5lLWJvcmRlci1jb2xvcik7XG5cdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdGxldHRlci1zcGFjaW5nOiAwLjA4ZW07XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0cGFkZGluZzogdmFyKC0tYnV0dG9uLW91dGxpbmUtYm9yZGVyLXBhZGRpbmcpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idXR0b24tb3V0bGluZS1ib3JkZXItYmFja2dyb3VuZC1jb2xvcik7XG4gIH1cblxuICBzdmcge1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMDtcblx0bGVmdDogMDtcblxuXHRyZWN0IHtcblx0ICB0cmFuc2l0aW9uOiBhbGwgLjM1cyBsaW5lYXI7XG5cdCAgc3Ryb2tlOiAjRkZGO1xuXHQgIGZpbGw6IG5vbmU7XG5cdCAgc3Ryb2tlLWRhc2hhcnJheTogMTUwMCwgMDtcblx0fVxuICB9XG5cbiAgQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcblx0Jjpob3ZlciB7XG5cdCAgc3ZnIHJlY3Qge1xuXHRcdHRyYW5zaXRpb246IGFsbCAuOHMgY3ViaWMtYmV6aWVyKDAuMjUsIDAuMSwgMC4yNSwgMSk7XG5cdFx0c3Ryb2tlLXdpZHRoOiA1O1xuXHRcdHN0cm9rZS1kYXNoYXJyYXk6IDAsIDE1MDA7XG5cdCAgfVxuXHR9XG4gIH1cbn1cblxuJWJ1dHRvblNxdWFyZUFycm93LFxuLmJ1dHRvblNxdWFyZUFycm93IHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZvbnQtZmFtaWx5OiAkZm9udEF6b1NhbnM7XG4gIGZvbnQtc2l6ZTogcmVtKDE1KTtcbiAgY29sb3I6IHZhcigtLWJ1dHRvblNxdWFyZUFycm93Q29sb3IsIHZhcigtLWNvcmR1cm95Q29sb3IpKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnRXZWlnaHRMaWdodCk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1idXR0b25TcXVhcmVBcnJvd0xlZnQsICN7cmVtKDIwKX0pO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1idXR0b25TcXVhcmVBcnJvd0NvbG9yLCB2YXIoLS1jb3JkdXJveUNvbG9yKSk7XG4gIHBhZGRpbmc6IHJlbSgxMikgcmVtKDcpO1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgLjNzO1xuXG4gIHNwYW4ge1xuXHRtYXJnaW4tbGVmdDogcmVtKDgpO1xuICB9XG5cbiAgc3ZnIHtcblx0bWFyZ2luLWxlZnQ6IGNhbGModmFyKC0tYnV0dG9uU3F1YXJlQXJyb3dMZWZ0LCAje3JlbSgyMCl9KSAqIC0xKTtcblx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcztcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblxuXHRwYXRoIHtcblx0ICBmaWxsOiB2YXIoLS1idXR0b25TcXVhcmVBcnJvd0NvbG9yLCB2YXIoLS1jb3JkdXJveUNvbG9yKSk7XG5cdH1cbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuXHRib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuXG5cdHN2ZyB7XG5cdCAgYW5pbWF0aW9uOiBtb3ZlQXJyb3cgLjRzIGluZmluaXRlIGFsdGVybmF0ZTtcblx0fVxuICB9XG59XG5Aa2V5ZnJhbWVzIG1vdmVBcnJvdyB7XG4gIDAlIHtcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuICB0byB7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoI3tyZW0oNSl9LCAwLCAwKTtcbiAgfVxufVxuXG4uYnV0dG9uOm5vdCgucWJ1dHRvbiksXG4lYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogdmFyKC0tYnV0dG9uRm9udEZhbWlseSwgdmFyKC0tYmFzZUZvbnRGYW1pbHksIHZhcigtLWZvbnRGYW1pbHksIEFyaWFsLCBzYW5zLXNlcmlmKSkpO1xuICBmb250LXNpemU6IHZhcigtLWJ1dHRvbkZvbnRTaXplLCAxcmVtKTtcbiAgY29sb3I6IHZhcigtLWJ1dHRvbkNvbG9yLCAjRkZGKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWJ1dHRvbkZvbnRXZWlnaHQsIDQwMCk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1idXR0b25MZXR0ZXJTcGFjaW5nLCAwcHgpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB2YXIoLS1idXR0b25UZXh0VHJhbnNmb3JtLCBpbml0aWFsKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uQm9yZGVyUmFkaXVzLCAwcHgpO1xuICBwYWRkaW5nOiB2YXIoLS1idXR0b25QYWRkaW5nVG9wLCAje3JlbSg5KX0pIHZhcigtLWJ1dHRvblBhZGRpbmdSaWdodCwgI3tyZW0oMzUpfSkgdmFyKC0tYnV0dG9uUGFkZGluZ0JvdHRvbSwgI3tyZW0oOSl9KSB2YXIoLS1idXR0b25QYWRkaW5nTGVmdCwgI3tyZW0oMzUpfSk7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBsZWZ0LCB2YXIoLS1idXR0b25CYWNrZ3JvdW5kQ29sb3IsICMwMDApIDUwJSwgdmFyKC0tYnV0dG9uSG92ZXJCYWNrZ3JvdW5kQ29sb3IsICNGMDApIDUwJSkgcmlnaHQgYm90dG9tO1xuICBiYWNrZ3JvdW5kLXNpemU6IDIwMCUgMTAwJTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1wb3NpdGlvbiAuM3MgJGVhc2VJbk91dFNpbmUsIGNvbG9yIC4zcyAkZWFzZTtcblxuICBAbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuXHQmOmhvdmVyLFxuXHQmOmZvY3VzIHtcblx0ICBjb2xvcjogdmFyKC0tYnV0dG9uSG92ZXJDb2xvciwgdmFyKC0tYnV0dG9uQ29sb3IsICNGRkYpKTtcblx0ICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGJvdHRvbTtcblx0fVxuICB9XG59IiwiJWZvcm1Db250cm9sLFxuLmZvcm1Db250cm9sIHtcbiAgQGV4dGVuZCAlcmVzZXRGb3JtO1xuICBwYWRkaW5nLWJvdHRvbTogcmVtKDUpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tdHVuZG9yYUNvbG9yKTtcblxuICAmLFxuICAmOjpwbGFjZWhvbGRlciB7XG5cdGZvbnQtZmFtaWx5OiB2YXIoLS1iYXNlRm9udEZhbWlseSwgdmFyKC0tZm9udEZhbWlseSwgQXJpYWwsIHNhbnMtc2VyaWYpKTtcblx0Zm9udC1zaXplOiByZW0oMTMpO1xuXHRjb2xvcjogdmFyKC0tdHVuZG9yYUNvbG9yKTtcblx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0bGluZS1oZWlnaHQ6IDEuMjI7XG5cdGxldHRlci1zcGFjaW5nOiAwLjFlbTtcbiAgfVxufSIsIi8vIExPQUQgTU9SRVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLmNvbW1lbnRzQmxvY2tfX2xvYWRNb3JlID4gYSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgQGluY2x1ZGUgZm9udC1zaXplKDE0cHgpO1xuICBjb2xvcjogIzAwMDtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnRXZWlnaHRMaWdodCk7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29yZHVyb3lDb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICBAaW5jbHVkZSBwYWRkaW5nKDEwcHggMThweCk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3M7XG5cbiAgJjpmb2N1cyxcbiAgJjpob3ZlciB7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcbiAgfVxufVxuXG4vLyBTVUJNSVRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5mb3JtLXN1Ym1pdCBidXR0b25bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIEBleHRlbmQgJXJlc2V0QnV0dG9uO1xuICBAZXh0ZW5kIC5idXR0b25TcXVhcmVBcnJvdztcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIEBpbmNsdWRlIHBhZGRpbmcoMTBweCAzNXB4KTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuM3MsIGNvbG9yIC4zcywgYm9yZGVyLWNvbG9yIC4zcztcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcblx0Y29sb3I6ICNGRkY7XG5cdGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG5cdGJvcmRlci1jb2xvcjogI0ZGRjtcbiAgfVxufVxuXG4uY29tbWVudHNGb3JtIHtcblxuXHRmb250LWZhbWlseTogdmFyKC0tZm9udEZhbWlseSk7XG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcblx0Zm9udC13ZWlnaHQ6IDMwMDtcblx0Zm9udC1zaXplOiAxNXB4O1xuXHRsaW5lLWhlaWdodDogMThweDtcblx0bGV0dGVyLXNwYWNpbmc6IDAuMDNlbTtcblxuXHQubWF0ZXJpYWxJbnB1dCB7XG5cdFx0b3ZlcmZsb3c6IGluaXRpYWw7XG5cdFx0LS1tYXRlcmlhbElucHV0Rm9udFdlaWdodDogNDAwO1xuXHRcdC0tbWF0ZXJpYWxJbnB1dEZvbnRTaXplOiAuOTM3NXJlbTtcblx0XHQtLW1hdGVyaWFsSW5wdXRDb2xvcjogIzI1MjUyNSAhaW1wb3J0YW50O1xuXHRcdC0tbWF0ZXJpYWxJbnB1dExhYmVsRm9udFNpemU6IDAuOTM3NXJlbTtcblx0XHQtLW1hdGVyaWFsSW5wdXRMYWJlbEZvbnRXZWlnaHQ6IDMwMDtcblx0XHQtLW1hdGVyaWFsSW5wdXRMYWJlbENvbG9yOiB2YXIoLS1maXJlZmx5Q29sb3IpO1xuXHRcdC0tbWF0ZXJpYWxJbnB1dEJvcmRlckNvbG9yOiB2YXIoLS1maXJlZmx5Q29sb3IpO1xuXHRcdC0tbWF0ZXJpYWxJbnB1dExhYmVsQWN0aXZlQ29sb3I6ICMyNTI1MjU7XG5cdH1cblxuXHQubWF0ZXJpYWxJbnB1dC5lbWFpbCBpbnB1dDpmb2N1c34ubWF0ZXJpYWwtaW5wdXRfX2hlbHAtdGV4dCxcblx0Lm1hdGVyaWFsSW5wdXQuZW1haWwgaW5wdXQuaXNBY3RpdmV+Lm1hdGVyaWFsLWlucHV0X19oZWxwLXRleHQge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdH1cblxuXHQubWF0ZXJpYWwtaW5wdXRfX2hlbHAtdGV4dCBzdmcge1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAyNXB4O1xuXHRcdGxlZnQ6IDUwcHg7XG5cblx0XHQmOmhvdmVyK2RpdiB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR9XG5cblx0XHRwYXRoIHtcblx0XHRcdHN0cm9rZTogI0Q1QkQ3NDtcblx0XHR9XG5cdH1cblxuXHQubWF0ZXJpYWwtaW5wdXRfX2hlbHAtdGV4dCBkaXYge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0bWF4LXdpZHRoOiAzMDBweDtcblx0XHRwYWRkaW5nOiAxMnB4O1xuXHRcdGJhY2tncm91bmQ6ICNmZmZmZmY7XG5cdFx0Ym9yZGVyLXJhZGl1czogOHB4O1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR6LWluZGV4OiAxO1xuXHRcdGJveC1zaGFkb3c6IDBweCAxMnB4IDE2cHggLTRweCByZ2JhKDE2LCAyNCwgNDAsIDAuMDgpLCAwcHggNHB4IDZweCAtMnB4IHJnYmEoMTYsIDI0LCA0MCwgMC4wMyk7XG5cdFx0bGVmdDogMzNweDtcblx0XHRib3R0b206IDM2cHg7XG5cdFx0Zm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdDtcblx0XHRmb250LXN0eWxlOiBub3JtYWw7XG5cdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0XHRmb250LXNpemU6IDAuODEyNXJlbTtcblx0XHRsaW5lLWhlaWdodDogMS4zODtcblx0XHRsZXR0ZXItc3BhY2luZzogMC4wM2VtO1xuXHRcdGNvbG9yOiAjMEExQzJCO1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0cG9pbnRlci1ldmVudHM6IGF1dG87XG5cdFx0dHJhbnNpdGlvbjogYWxsIC4ycztcblxuXHRcdCY6OmFmdGVyIHtcblx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0d2lkdGg6IDEycHg7XG5cdFx0XHRoZWlnaHQ6IDEycHg7XG5cdFx0XHRib3R0b206IC02cHg7XG5cdFx0XHRsZWZ0OiAxOXB4O1xuXHRcdFx0YmFja2dyb3VuZDogI0ZGRkZGRjtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDFweDtcblx0XHRcdHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcblx0XHR9XG5cdH1cblxuXHQuaXNOb3RWYWxpZCB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0XHRmb250LXN0eWxlOiBub3JtYWw7XG5cdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0XHRmb250LXNpemU6IDAuODc1cmVtO1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjQyO1xuXHRcdGZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ3NhbHQnIG9uO1xuXHRcdGNvbG9yOiAjRjA0NDM4O1xuXHRcdG1hcmdpbi10b3A6IDZweDtcblx0XHRtYXJnaW4tYm90dG9tOiA1cHg7XG5cdH1cblxuXHQuaXNOb3RWYWxpZC0taWNvbmUsXG5cdC52YWxpZC0taWNvbmUge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdGJvdHRvbTogOHB4O1xuXHR9XG5cblx0Lm1hdGVyaWFsSW5wdXQuZXJyb3Ige1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRtYXJnaW4tdG9wOiAxOXB4O1xuXG5cdFx0bGFiZWwge1xuXHRcdFx0Ym9yZGVyLWJvdHRvbS1jb2xvcjogI0YwNDQzOCAhaW1wb3J0YW50O1xuXG5cdFx0XHQmOjphZnRlciB7XG5cdFx0XHRcdGJvcmRlci1ib3R0b206IG5vbmU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmlzTm90VmFsaWQge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0fVxuXG5cdFx0LmlzTm90VmFsaWQtLWljb25lIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdH1cblxuXHR9XG5cblx0Lm1hdGVyaWFsSW5wdXQuc3VjY2VzcyB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0bGFiZWwge1xuXHRcdFx0Ym9yZGVyLWJvdHRvbS1jb2xvcjogIzNBOUMxNyAhaW1wb3J0YW50O1xuXG5cdFx0XHQmOjphZnRlciB7XG5cdFx0XHRcdGJvcmRlci1ib3R0b206IG5vbmU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LnZhbGlkLS1pY29uZSB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR9XG5cblx0fVxuXG5cdGZsYXNoLW1lc3NhZ2Uge1xuXHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0Zm9udC1zaXplOiAxcmVtO1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjU7XG5cdFx0bGV0dGVyLXNwYWNpbmc6IC0wLjAxMmVtO1xuXHRcdGNvbG9yOiAjRkZGRkZGO1xuXHR9XG5cblx0Lm1hdGVyaWFsSW5wdXQgbGFiZWwgPiBzcGFuIHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRiYWNrZ3JvdW5kOiAjZmZmO1xuXHRcdGZvbnQtd2VpZ2h0OiAzMDA7XG5cdH1cblxufVxuXG4jd2FpdC1hcHByb3ZhbCB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHRvcDogLTIwMHB4O1xufVxuXG4ubWF0ZXJpYWxJbnB1dCB0ZXh0YXJlYS5pc0FjdGl2ZStsYWJlbD5zcGFuLFxuLm1hdGVyaWFsSW5wdXQgaW5wdXQuaXNBY3RpdmUrbGFiZWw+c3BhbiB7XG5cdGZvbnQtZmFtaWx5OiB2YXIoLS1mb250RmFtaWx5KTtcblx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0Zm9udC1zaXplOiAwLjc1cmVtO1xuXHRsZXR0ZXItc3BhY2luZzogMC4wM2VtO1xuXHRjb2xvcjogI0Q1QkQ3NDtcbn1cblxuLm1hdGVyaWFsSW5wdXQgdGV4dGFyZWEsIC5tYXRlcmlhbElucHV0IGlucHV0IHtcblx0cGFkZGluZy10b3A6IDEuMjVyZW07XG5cdHBhZGRpbmctYm90dG9tOiA0cHg7XG59XG5cbi5tYXRlcmlhbElucHV0IGlucHV0OmZvY3VzICsgbGFiZWwgPiBzcGFuIHtcbiAgYm90dG9tOiAtNXB4O1xufVxuXG4uY29tbWVudC1mb3JtLXN1YnNjcmlwdGlvbnMge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG4uY29tbWVudHNCbG9ja3NfX2NvbW1lbnRfX2NvbnRlbnQge1xuXHRzY3JvbGwtbWFyZ2luLXRvcDogMTguNzVyZW07XG59XG5cbi5tYXRlcmlhbElucHV0IHRleHRhcmVhLCAuY29tbWVudC1yZXNwb25kIC5tYXRlcmlhbElucHV0IHRleHRhcmVhIHtcblx0Y29sb3I6IHZhcigtLW1pbmVTaGFmdDJDb2xvcik7XG59IiwiLmNvbnRhY3RCdXR0b25zIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBpbmNsdWRlIG1xKCdyZXNwb25zaXZlJywgJ21pbicpIHtcbiAgLmNvbnRhY3RCdXR0b25zIHtcblx0ZGlzcGxheTogZmxleDtcblxuXHQmLS1maXhlZCB7XG5cdCAgcG9zaXRpb246IGZpeGVkO1xuXHQgIHotaW5kZXg6IHooJ2NvbnRhY3QtYnV0dG9ucycpO1xuXHQgIHJpZ2h0OiB2YXIoLS1jb250YWN0QnV0dG9uc0Jhc2VSaWdodCwgI3tyZW0oMTUpfSk7XG5cdCAgYm90dG9tOiB2YXIoLS1iYWNrVG9Ub3BCb3R0b20sICN7cmVtKDM1KX0pO1xuXHQgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MgJGVhc2VJbk91dDtcblx0ICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXG5cdCAgYm9keS5zZWFyY2ggJiB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0ICB9XG5cblx0ICBib2R5LmJhY2tUb1RvcC0taXNBY3RpdmUgJiB7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUzZChjYWxjKCN7cmVtKC0zNSl9ICsgdmFyKC0tZXh0cmFSaWdodCwgMHB4KSAqIC0xKSwgMCwgMCk7XG5cblx0XHQmLmlzSGlkZGVuIHtcblx0XHQgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoY2FsYygje3JlbSgtMzUpfSArIHZhcigtLWV4dHJhUmlnaHQsIDBweCkgKiAtMSksIGNhbGMoKDEwMCUgKyB2YXIoLS1iYWNrVG9Ub3BCb3R0b20sICN7cmVtKDM1KX0pKSksIDApO1xuXHRcdH1cblx0ICB9XG5cdH1cblxuXHQmLmlzSGlkZGVuIHtcblx0ICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIGNhbGMoKDEwMCUgKyB2YXIoLS1iYWNrVG9Ub3BCb3R0b20sICN7cmVtKDM1KX0pKSksIDApO1xuXHR9XG5cblx0QGluY2x1ZGUgbXEoJ3RhYmxldCcpIHtcblx0ICBkaXNwbGF5OiBub25lO1xuXHR9XG4gIH1cbiAgLmNvbnRhY3RCdXR0b25zID4gYSB7XG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0Ym9yZGVyLXJhZGl1czogMTBweDtcblx0cGFkZGluZzogcmVtKDE1KSByZW0oMjApO1xuXHRib3gtc2hhZG93OiAwcHggMHB4IDE1cHggcmdiYSgwLCAwLCAwLCAwLjI1KTtcblxuXHQ+IGRpdiB7XG5cdCAgcG9zaXRpb246IHJlbGF0aXZlO1xuXHQgIG92ZXJmbG93OiBoaWRkZW47XG5cblx0ICA+IHN0cm9uZyB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0Zm9udC1zaXplOiByZW0oMTIpO1xuXHRcdGNvbG9yOiAjRkZGO1xuXHRcdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdFx0bGluZS1oZWlnaHQ6IDEuMjU7XG5cdFx0bGV0dGVyLXNwYWNpbmc6IDFweDtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zNXMgJGVhc2U7XG5cblx0XHQmOm50aC1jaGlsZCgyKSB7XG5cdFx0ICB3aWR0aDogMTAwJTtcblx0XHQgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHQgIHJpZ2h0OiAwO1xuXHRcdCAgYm90dG9tOiAwO1xuXHRcdCAgbGVmdDogMDtcblx0XHQgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcblx0XHQgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cdFx0fVxuXHQgIH1cblx0fVxuXG5cdHN2ZyB7XG5cdCAgZmxleC1zaHJpbms6IDA7XG5cdH1cblxuXHRAbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuXHQgICY6aG92ZXIge1xuXHRcdD4gZGl2ID4gc3Ryb25nIHtcblx0XHQgICY6bnRoLWNoaWxkKDEpIHtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG5cdFx0ICB9XG5cblx0XHQgICY6bnRoLWNoaWxkKDIpIHtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcblx0XHQgIH1cblx0XHR9XG5cdCAgfVxuXHR9XG5cblx0KyBhIHtcblx0ICBtYXJnaW4tbGVmdDogcmVtKDIwKTtcblx0fVxuICB9XG5cbiAgLy8gUEhPTkVcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAuY29udGFjdEJ1dHRvbnNfX3Bob25lIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29yZHVyb3lDb2xvcik7XG5cblx0c3ZnIHtcblx0ICBtYXJnaW4tbGVmdDogcmVtKDEwKTtcblx0fVxuICB9XG5cbiAgLy8gRE9DVE9MSUJcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAuY29udGFjdEJ1dHRvbnNfX2RvY3RvbGliIHtcblx0LS1kb2N0b2xpYkJ1dHRvblRleHRUcmFuc2Zvcm06IG5vbmU7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdoaXRlUm9ja0NvbG9yKTtcblxuXHRzdHJvbmcge1xuXHQgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG5cdH1cblxuXHRzdmcge1xuXHQgIG1hcmdpbi1sZWZ0OiByZW0oNSk7XG5cblx0ICBwYXRoIHtcblx0XHRmaWxsOiAjMDAwO1xuXHQgIH1cblx0fVxuICB9XG59IiwiJGltYWdlc0Jsb2Nrc0NvbnRlbnRQYWRkaW5nVG9wOiA1MHB4ICFkZWZhdWx0O1xuJGltYWdlc0Jsb2Nrc0NvbnRlbnRQYWRkaW5nUmlnaHQ6IDE1cHggIWRlZmF1bHQ7XG4kaW1hZ2VzQmxvY2tzQ29udGVudFBhZGRpbmdCb3R0b206IDUwcHggIWRlZmF1bHQ7XG4kaW1hZ2VzQmxvY2tzQ29udGVudFBhZGRpbmdMZWZ0OiAxNXB4ICFkZWZhdWx0O1xuXG4kaW1hZ2VzQmxvY2tzRGVzY3JpcHRpb25NYXJnaW5Ub3A6IDIwcHggIWRlZmF1bHQ7XG5cbiRpbWFnZXNCbG9ja3NMaW5rTWFyZ2luVG9wOiAxNXB4ICFkZWZhdWx0O1xuXG4uaW1hZ2VzQmxvY2tzIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIGdyaWQtZ2FwOiByZW0oNCk7XG59XG5cbi8vIFJPV1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLmltYWdlc0Jsb2Nrc19fcm93IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIGdyaWQtYXV0by1yb3dzOiAxZnI7XG4gIGdyaWQtZ2FwOiByZW0oNCk7XG59XG5cbi8vIEJMT0NLXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4uaW1hZ2VzQmxvY2tzX19ibG9jayB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgPiAqIHtcblx0Z3JpZC1jb2x1bW46IDE7XG5cdGdyaWQtcm93OiAxO1xuICB9XG59XG5cbi8vIENPTlRFTlRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5pbWFnZXNCbG9ja3NfX2Jsb2NrX19jb250ZW50IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIEBpbmNsdWRlIHBhZGRpbmctdG9wKDEwMHB4KTtcbiAgQGluY2x1ZGUgcGFkZGluZy1yaWdodCgkaW1hZ2VzQmxvY2tzQ29udGVudFBhZGRpbmdSaWdodCk7XG4gIEBpbmNsdWRlIHBhZGRpbmctYm90dG9tKDEwMHB4KTtcbiAgQGluY2x1ZGUgcGFkZGluZy1sZWZ0KCRpbWFnZXNCbG9ja3NDb250ZW50UGFkZGluZ0xlZnQpO1xuXG4gID4gKiB7XG5cdGdyaWQtY29sdW1uOiAxO1xuXHRncmlkLXJvdzogMTtcblx0YWxpZ24tc2VsZjogY2VudGVyO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHotaW5kZXg6IDE7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0anVzdGlmeS1zZWxmOiBjZW50ZXI7XG4gIH1cbn1cbi5pbWFnZXNCbG9ja3NfX2Jsb2NrX19jb250ZW50X19ub3RIb3ZlciB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgLjNzO1xufVxuLmltYWdlc0Jsb2Nrc19fYmxvY2tfX2NvbnRlbnRfX2hvdmVyIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuM3M7XG59XG5cbi8vIE1FRElBXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4uaW1hZ2VzQmxvY2tzX19ibG9ja19faW1hZ2U6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWltYWdlc0Jsb2Nrc0ltYWdlQmFja2dyb3VuZENvbG9yLCAje3JnYmEoIzAwMCwgLjUpfSk7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjNzO1xufVxuLmltYWdlc0Jsb2Nrc19fYmxvY2tfX2ltYWdlIHtcbiAgcGljdHVyZSxcbiAgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cbkBpbmNsdWRlIG1xKCd0YWJsZXQtd2lkZScpIHtcbiAgLmltYWdlc0Jsb2Nrc19fYmxvY2tfX2ltYWdlIHtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMTAwJTtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG5cdHJpZ2h0OiAwO1xuXHRib3R0b206IDA7XG5cdGxlZnQ6IDA7XG4gIH1cbn1cblxuLy8gVElUTEVcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5pbWFnZXNCbG9ja3NfX2Jsb2NrX19jb250ZW50X190aXRsZSB7XG4gIGNvbG9yOiAjRkZGO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udFdlaWdodEJvbGQpO1xuICBAaW5jbHVkZSBmb250LXNpemUoMzBweCk7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuXG4gICY6OmFmdGVyIHtcblx0Y29udGVudDogJyc7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHR3aWR0aDogOTBweDtcblx0aGVpZ2h0OiAycHg7XG5cdG1hcmdpbjogMTJweCBhdXRvO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuXHRAaW5jbHVkZSBtcSgndGFibGV0JywgJ21pbicpIHtcblx0ICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuXHR9XG4gIH1cbn1cblxuLy8gREVTQ1JJUFRJT05cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5pbWFnZXNCbG9ja3NfX2Jsb2NrX19jb250ZW50X19kZXNjcmlwdGlvbiB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udE1vbnRzZXJyYXQ7XG4gIGZvbnQtc2l6ZTogcmVtKDEzKTtcbiAgY29sb3I6ICNGRkY7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250V2VpZ2h0TWVkaXVtKTtcbiAgbGluZS1oZWlnaHQ6IDEuNzc7XG4gIGxldHRlci1zcGFjaW5nOiAwLjFlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBAaW5jbHVkZSBtYXJnaW4tdG9wKCRpbWFnZXNCbG9ja3NEZXNjcmlwdGlvbk1hcmdpblRvcCk7XG5cbiAgPiBwICsgcCB7XG5cdG1hcmdpbi10b3A6IHZhcigtLWltYWdlc0Jsb2Nrc0Rlc2NyaXB0aW9uUGFyYWdyYXBoR2FwLCAjeyRwYXJhZ3JhcGhHYXB9KTtcbiAgfVxufVxuXG4vLyBMSU5LXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4uaW1hZ2VzQmxvY2tzX19ibG9ja19fY29udGVudF9fbGluayB7XG4gIEBpbmNsdWRlIG1hcmdpbi10b3AoJGltYWdlc0Jsb2Nrc0xpbmtNYXJnaW5Ub3ApO1xuXG4gID4gKiB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRAaW5jbHVkZSBmb250LXNpemUoMjBweCk7XG5cdGZvbnQtZmFtaWx5OiAkZm9udEF6b1NhbnM7XG5cdGNvbG9yOiAjRkZGO1xuXHRmb250LXdlaWdodDogdmFyKC0tZm9udFdlaWdodEJvbGQpO1xuXHRAaW5jbHVkZSBtYXJnaW4tdG9wKDIwcHgpO1xuXHR0ZXh0LWRlY29yYXRpb24tbGluZTogdW5kZXJsaW5lO1xuICB9XG59XG5cbi8vIEFDVElWRVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLmltYWdlc0Jsb2Nrc19fYmxvY2s6aG92ZXIsXG4uaW1hZ2VzQmxvY2tzX19ibG9jay5ob3ZlciB7XG5cbiAgLmltYWdlc0Jsb2Nrc19fYmxvY2tfX2ltYWdlOjpiZWZvcmUge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbWFnZXNCbG9ja3NJbWFnZUFjdGl2ZUJhY2tncm91bmRDb2xvciwgI3tyZ2JhKCM1NjYyNUYsIC42Mil9KTtcbiAgfVxuXG4gIC5pbWFnZXNCbG9ja3NfX2Jsb2NrX19jb250ZW50X19ub3RIb3ZlciB7XG5cdG9wYWNpdHk6IDA7XG4gIH1cblxuICAuaW1hZ2VzQmxvY2tzX19ibG9ja19fY29udGVudF9faG92ZXIge1xuXHRvcGFjaXR5OiAxO1xuICB9XG5cbn1cblxuLy8gTElOS1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLmltYWdlc0Jsb2Nrc19fbGluayB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tY29udGFpbmVyR3V0dGVyKTtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1jb250YWluZXJHdXR0ZXIpO1xuICBAaW5jbHVkZSBtYXJnaW4tdG9wKDI1cHgpO1xufVxuXG4vLyBSRVNQT05TSVZFXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaW5jbHVkZSBtcSgndGFibGV0JywgJ21pbicpIHtcbiAgLmltYWdlc0Jsb2Nrc19fcm93LS0yIHtcblx0ZGlzcGxheTogZmxleDtcblx0Z3JpZC1nYXA6IDA7XG5cblx0PiAqIHtcblx0ICBmbGV4OiAxO1xuXG5cdCAgKyAqIHtcblx0XHRtYXJnaW4tbGVmdDogcmVtKDQpO1xuXHQgIH1cblx0fVxuICB9XG4gIC5pbWFnZXNCbG9ja3NfX2Jsb2NrID4gZGl2LFxuICAuaW1hZ2VzQmxvY2tzIGltZyB7XG5cdGhlaWdodDogMTAwJTtcbiAgfVxuICAuaW1hZ2VzQmxvY2tzX19ibG9jayA+IGltZyB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxufVxuQGluY2x1ZGUgbXEoJ3RhYmxldC13aWRlJywgJ21pbicpIHtcbiAgLmltYWdlc0Jsb2Nrc19fcm93IHtcblx0ZGlzcGxheTogZmxleDtcblx0Z3JpZC1nYXA6IDA7XG5cblx0PiAqIHtcblx0ICBmbGV4OiAxO1xuXG5cdCAgKyAqIHtcblx0XHRtYXJnaW4tbGVmdDogcmVtKDQpO1xuXHQgIH1cblx0fVxuICB9XG4gIC5pbWFnZXNCbG9ja3NfX2Jsb2NrX19jb250ZW50IHtcblx0QGluY2x1ZGUgcGFkZGluZy10b3AoJGltYWdlc0Jsb2Nrc0NvbnRlbnRQYWRkaW5nVG9wKTtcblx0QGluY2x1ZGUgcGFkZGluZy1yaWdodCgkaW1hZ2VzQmxvY2tzQ29udGVudFBhZGRpbmdSaWdodCk7XG5cdEBpbmNsdWRlIHBhZGRpbmctYm90dG9tKCRpbWFnZXNCbG9ja3NDb250ZW50UGFkZGluZ0JvdHRvbSk7XG5cdEBpbmNsdWRlIHBhZGRpbmctbGVmdCgkaW1hZ2VzQmxvY2tzQ29udGVudFBhZGRpbmdMZWZ0KTtcbiAgfVxufSIsIi8vIFZBUklBQkxFU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGNvbG9yQmxvY2tCZWhpbmRQYWRkaW5nOiA1MHB4O1xuXG4vLyBURVhUIElNQUdFXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4udGV4dEltYWdlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xufVxuQGluY2x1ZGUgbXEoJ3RhYmxldC13aWRlJywgJ21pbicpIHtcbiAgLnRleHRJbWFnZS0tbGVmdCB7XG5cdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cblx0LnRleHRJbWFnZV9fdGV4dCB7XG5cdCAgQGluY2x1ZGUgbWFyZ2luLWxlZnQoOTBweCk7XG5cdH1cbiAgfVxuICAudGV4dEltYWdlLS1yaWdodCB7XG5cdGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcblxuXHQudGV4dEltYWdlX190ZXh0IHtcblx0ICBAaW5jbHVkZSBtYXJnaW4tcmlnaHQoOTBweCk7XG5cdH1cbiAgfVxufVxuXG4vLyBJTUFHRVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLnRleHRJbWFnZV9faW1hZ2UgPiAqIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIHdpZHRoOiAxMDAlO1xufVxuQGluY2x1ZGUgbXEoJ3RhYmxldC13aWRlJykge1xuICAudGV4dEltYWdlX19pbWFnZSB7XG5cdHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cdEBpbmNsdWRlIG1hcmdpbi10b3AoMzVweCk7XG4gIH1cbn1cbkBpbmNsdWRlIG1xKCd0YWJsZXQtd2lkZScsICdtaW4nKSB7XG4gIC50ZXh0SW1hZ2VfX2ltYWdlID4gKiB7XG5cdGhlaWdodDogMTAwJTtcbiAgfVxufVxuXG4vLyBDT0xPUiBCTE9DSyBCRUhJTkQgSU1BR0Vcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpbmNsdWRlIG1xKCd0YWJsZXQtd2lkZScsICdtaW4nKSB7XG4gIC50ZXh0SW1hZ2VfX2ltYWdlLS1jb2xvckJsb2NrQmVoaW5kIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRAaW5jbHVkZSBwYWRkaW5nLWxlZnQoJGNvbG9yQmxvY2tCZWhpbmRQYWRkaW5nKTtcblx0QGluY2x1ZGUgcGFkZGluZy1yaWdodCgkY29sb3JCbG9ja0JlaGluZFBhZGRpbmcpO1xuICB9XG4gIC50ZXh0SW1hZ2VfX2ltYWdlLS1jb2xvckJsb2NrQmVoaW5kID4gKiB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ei1pbmRleDogMTtcbiAgfVxuICAudGV4dEltYWdlX19pbWFnZS0tY29sb3JCbG9ja0JlaGluZDo6YmVmb3JlIHtcblx0Y29udGVudDogJyc7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiBjYWxjKDEwMCUgLSAjeyRjb2xvckJsb2NrQmVoaW5kUGFkZGluZyAqIDJ9KTtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG5cdHJpZ2h0OiAwO1xuXHRib3R0b206IDA7XG5cdGxlZnQ6IDA7XG5cdG1hcmdpbjogYXV0bztcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcGF2bG92YUNvbG9yKTtcbiAgfVxufVxuXG4vLyBURVhUXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4udGV4dEltYWdlX190ZXh0IHtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xuICBmbGV4OiAxO1xufVxuLnRleHRJbWFnZV9fdGV4dF9fdGl0bGUge1xuICBmb250LWZhbWlseTogJGZvbnRNZW5vQmFubmVyO1xuICBjb2xvcjogIzAwMDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDQ1cHgpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udFdlaWdodEJvbGQpO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC40ZW07XG59XG4udGV4dEltYWdlX190ZXh0X19jb250ZW50IHtcbiAgQGV4dGVuZCAuYXBwbHlTdHlsZXM7XG4gIC0taGVhZGluZ01hcmdpblRvcDogdmFyKC0tcGFyYWdyYXBoR2FwKTtcbiAgLS10ZXh0QWxpZ246IGxlZnQ7XG4gIC0tdGV4dENvbG9yOiB2YXIoLS10dW5kb3JhQ29sb3IpO1xuICAtLXRleHRGb250RmFtaWx5OiAjeyRmb250TXVsaXNofTtcbiAgLS10ZXh0Rm9udFNpemU6ICN7cmVtKDE1KX07XG4gIC0tdGV4dExpbmVIZWlnaHQ6IDEuNDtcblxuICBibG9ja3F1b3RlIHtcblx0LS1ibG9ja3F1b3RlU3ZnV2lkdGg6IDE4cHg7XG5cblx0Jjo6YmVmb3JlIHtcblx0ICBjb250ZW50OiBzdmctdXJpKCc8c3ZnIHdpZHRoPVwiMThcIiBoZWlnaHQ9XCIxNFwiIHZpZXdCb3g9XCIwIDAgMTggMTRcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj4gPHBhdGggZD1cIk02Ljk0NDg4IDEuNzQwOTNDNS45MDU1MSAyLjgwNDg0IDUuMTI1OTggMy44MjAzOCA0LjYwNjMgNC43ODc1NkM0LjEzMzg2IDUuNzA2MzkgMy44MjY3NyA2LjY5Nzc1IDMuNjg1MDQgNy43NjE2Nkg2LjU5MDU1TDYuMDk0NDkgMTRIMEwwLjM1NDMzMSA5LjM1NzUxQzAuNDk2MDYzIDcuNTE5ODYgMC44OTc2MzggNS44NTE0NyAxLjU1OTA1IDQuMzUyMzNDMi4yNjc3MiAyLjgwNDg0IDMuMzU0MzMgMS4zNTQwNiA0LjgxODkgMEw2Ljk0NDg4IDEuNzQwOTNaTTE4IDEuNzQwOTNDMTYuOTYwNiAyLjgwNDg0IDE2LjE4MTEgMy44MjAzOCAxNS42NjE0IDQuNzg3NTZDMTUuMTg5IDUuNzA2MzkgMTQuODgxOSA2LjY5Nzc1IDE0Ljc0MDIgNy43NjE2NkgxNy42NDU3TDE3LjE0OTYgMTRIMTEuMDU1MUwxMS40MDk0IDkuMzU3NTFDMTEuNTUxMiA3LjUxOTg2IDExLjk1MjggNS44NTE0NyAxMi42MTQyIDQuMzUyMzNDMTMuMzIyOCAyLjgwNDg0IDE0LjQwOTQgMS4zNTQwNiAxNS44NzQgMEwxOCAxLjc0MDkzWlwiIGZpbGw9XCJibGFja1wiLz4gPC9zdmc+ICcpO1xuXHR9XG4gIH1cbn1cblxuLy8gTElOS1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLnRleHRJbWFnZV9fdGV4dF9fbGluayB7XG4gIEBpbmNsdWRlIG1hcmdpbi10b3AoMjVweCk7XG59XG5cbi8vIEFEQVBUXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4uc2VjdGlvbltjbGFzcyo9XCJzZWN0aW9uLS1iYWNrZ3JvdW5kQ29sb3JcIl1bY2xhc3MqPVwic2VjdGlvbi0tbm8tcGFkZGluZ3NcIl0ge1xuICAudGV4dEltYWdlX190ZXh0IHtcblx0cGFkZGluZy10b3A6IHZhcigtLXNlY3Rpb25QYWRkaW5nLCAje3JlbSgzNSl9KTtcbiAgfVxufVxuQGluY2x1ZGUgbXEoJ3RhYmxldC13aWRlJywgJ21pbicpIHtcbiAgLnNlY3Rpb25bY2xhc3MqPVwic2VjdGlvbi0tYmFja2dyb3VuZENvbG9yXCJdW2NsYXNzKj1cInNlY3Rpb24tLW5vLXBhZGRpbmdzXCJdIHtcblx0LnRleHRJbWFnZV9fdGV4dCB7XG5cdCAgcGFkZGluZy10b3A6IDA7XG5cdH1cbiAgfVxufVxuXG4vLyBIT01FXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5ib2R5LmhvbWUge1xuICBAaW5jbHVkZSBtcSgndGFibGV0LXdpZGUnKSB7XG5cdC50ZXh0SW1hZ2Uge1xuXHQgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cblx0ICAudGV4dEltYWdlX19pbWFnZSB7XG5cdFx0bWFyZ2luLXRvcDogMDtcblx0ICB9XG5cblx0ICAudGV4dEltYWdlX190ZXh0IHtcblx0XHRAaW5jbHVkZSBtYXJnaW4tdG9wKDM1cHgpO1xuXHQgIH1cblx0fVxuXHQuc2VjdGlvbltjbGFzcyo9XCJzZWN0aW9uLS1iYWNrZ3JvdW5kQ29sb3JcIl1bY2xhc3MqPVwic2VjdGlvbi0tbm8tcGFkZGluZ3NcIl0ge1xuXHQgIC50ZXh0SW1hZ2VfX3RleHQge1xuXHRcdHBhZGRpbmctdG9wOiAwO1xuXHRcdHBhZGRpbmctYm90dG9tOiB2YXIoLS1zZWN0aW9uUGFkZGluZywgI3tyZW0oMzUpfSk7XG5cdCAgfVxuXHR9XG4gIH1cbiAgQGluY2x1ZGUgbXEoJ3RhYmxldCcpIHtcblx0LnNlY3Rpb25bY2xhc3MqPVwic2VjdGlvbi0tYmFja2dyb3VuZENvbG9yXCJdW2NsYXNzKj1cInNlY3Rpb24tLW5vLXBhZGRpbmdzXCJdIHtcblx0ICAudGV4dEltYWdlX190ZXh0IHtcblx0XHRwYWRkaW5nLXRvcDogMDtcblx0XHRwYWRkaW5nLWJvdHRvbTogMDtcblx0ICB9XG5cdH1cbiAgfVxufSIsIi5xdWVzdGlvbiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSg4NiwgOTgsIDk1LCAwLjk1KSAwJSwgIzIxMzIyRSAxMDAlKTtcbiAgQGluY2x1ZGUgcGFkZGluZygyMHB4IDEwcHgpO1xufVxuXG4vLyBUSVRMRVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLnF1ZXN0aW9uX190aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udE1lbm9CYW5uZXI7XG4gIGNvbG9yOiAjRkZGO1xuICBAaW5jbHVkZSBmb250LXNpemUoNDJweCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250V2VpZ2h0Qm9sZCk7XG4gIGxpbmUtaGVpZ2h0OiAxLjExO1xufVxuXG4vLyBDT05URU5UXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4ucXVlc3Rpb25fX2NvbnRlbnQge1xuICBmb250LWZhbWlseTogJGZvbnRNdWxpc2g7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgxNnB4KTtcbiAgY29sb3I6ICNGRkY7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250V2VpZ2h0Qm9sZCk7XG4gIGxpbmUtaGVpZ2h0OiAxLjM1O1xuICBAaW5jbHVkZSBtYXJnaW4tdG9wKDI1cHgpO1xuXG4gID4gcCArIHAge1xuXHRtYXJnaW4tdG9wOiB2YXIoLS1wYXJhZ3JhcGhHYXAsICN7cmVtKDE1KX0pO1xuICB9XG5cbiAgc3Ryb25nIHtcblx0QGluY2x1ZGUgZm9udC1zaXplKDE3cHgpO1xuXHRmb250LXdlaWdodDogdmFyKC0tZm9udFdlaWdodEV4dHJhQm9sZCk7XG4gIH1cbn1cblxuLy8gTElOS1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLnF1ZXN0aW9uX19saW5rIHtcbiAgQGluY2x1ZGUgbWFyZ2luLXRvcCgyNXB4KTtcblxuICAuYnV0dG9uU3F1YXJlQXJyb3cge1xuXHQtLWJ1dHRvblNxdWFyZUFycm93Q29sb3I6ICNGRkY7XG4gIH1cbn0iLCIvLyBQT1NUU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLmxhc3RQb3N0c19fcG9zdHMge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgZ3JpZC1nYXA6IHJlbSgyNSk7XG59XG5AaW5jbHVkZSBtcSgndGFibGV0JywgJ21pbicpIHtcbiAgLmxhc3RQb3N0c19fcG9zdHMge1xuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KCN7cmVtKDM1MCl9LCAxZnIpKTtcbiAgfVxufVxuXG4vLyBMSU5LXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4ubGFzdFBvc3RzX19saW5rIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBAaW5jbHVkZSBtYXJnaW4tdG9wKDQ1cHgpO1xufSIsIjpyb290IHtcbiAgLS1sYW5ndWFnZXMtc2VsZWN0b3JfX3BhZGRpbmc6IDExcHg7XG59XG5cbi5sYW5ndWFnZXMtc2VsZWN0b3Ige1xuICBhbGw6IHVuc2V0O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6IGNhbGMoNjBweCAtIHZhcigtLWxhbmd1YWdlcy1zZWxlY3Rvcl9fcGFkZGluZykpO1xuICBoZWlnaHQ6IDMwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1mYW1pbHk6ICRmb250TW9udHNlcnJhdDtcbiAgY29sb3I6ICMwYzFkMmM7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBAaW5jbHVkZSBmb250LXNpemUoMTRweCk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWZpcmVmbHkyQ29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBzdmctdXJpKCc8c3ZnIHdpZHRoPVwiMTBcIiBoZWlnaHQ9XCI3XCIgdmlld0JveD1cIjAgMCAxMCA3XCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+IDxwYXRoIGQ9XCJNMSAwLjVMNSA1LjVMOSAwLjVcIiBzdHJva2U9XCIjZmZmZmZmXCIvPiA8L3N2Zz4gJyk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb24teTogY2FsYyg1MCUgKyAxcHgpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6IGNhbGMoMTI1JSAtIHZhcigtLWxhbmd1YWdlcy1zZWxlY3Rvcl9fcGFkZGluZykpO1xufVxuXG4uaGVhZGVyX19ib3R0b21fX2FjdGlvbnMgLmxhbmd1YWdlcy1zZWxlY3RvciB7IFxuICBiYWNrZ3JvdW5kLWltYWdlOiBzdmctdXJpKCc8c3ZnIHdpZHRoPVwiMTBcIiBoZWlnaHQ9XCI3XCIgdmlld0JveD1cIjAgMCAxMCA3XCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+IDxwYXRoIGQ9XCJNMSAwLjVMNSA1LjVMOSAwLjVcIiBzdHJva2U9XCIjMDAwMDAwXCIvPiA8L3N2Zz4gJyk7XG5cbiAgQGluY2x1ZGUgbXEoMTEwMCwnbWluJykge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn0iLCIkaGFtYnVyZ2VyLXBhZGRpbmcteDogMHB4O1xuJGhhbWJ1cmdlci1wYWRkaW5nLXk6IDBweDtcbiRoYW1idXJnZXItbGF5ZXItd2lkdGg6IDI1cHg7XG4kaGFtYnVyZ2VyLWxheWVyLWhlaWdodDogMnB4O1xuJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nOiA1cHg7XG4kaGFtYnVyZ2VyLWxheWVyLWNvbG9yOiAjRkZGO1xuJGhhbWJ1cmdlci1sYXllci1ib3JkZXItcmFkaXVzOiA0cHg7XG4kaGFtYnVyZ2VyLWhvdmVyLW9wYWNpdHk6IDAuNztcbiRoYW1idXJnZXItYWN0aXZlLWxheWVyLWNvbG9yOiAkaGFtYnVyZ2VyLWxheWVyLWNvbG9yO1xuJGhhbWJ1cmdlci1hY3RpdmUtaG92ZXItb3BhY2l0eTogJGhhbWJ1cmdlci1ob3Zlci1vcGFjaXR5O1xuXG4vLyBUbyB1c2UgQ1NTIGZpbHRlcnMgYXMgdGhlIGhvdmVyIGVmZmVjdCBpbnN0ZWFkIG9mIG9wYWNpdHksXG4vLyBzZXQgJGhhbWJ1cmdlci1ob3Zlci11c2UtZmlsdGVyIGFzIHRydWUgYW5kXG4vLyBjaGFuZ2UgdGhlIHZhbHVlIG9mICRoYW1idXJnZXItaG92ZXItZmlsdGVyIGFjY29yZGluZ2x5LlxuJGhhbWJ1cmdlci1ob3Zlci11c2UtZmlsdGVyOiBmYWxzZTtcbiRoYW1idXJnZXItaG92ZXItZmlsdGVyOiBvcGFjaXR5KDUwJSk7XG4kaGFtYnVyZ2VyLWFjdGl2ZS1ob3Zlci1maWx0ZXI6ICRoYW1idXJnZXItaG92ZXItZmlsdGVyO1xuXG4vLyBUeXBlcyAoUmVtb3ZlIG9yIGNvbW1lbnQgb3V0IHdoYXQgeW91IGRvbuKAmXQgbmVlZClcbiRoYW1idXJnZXItdHlwZXM6IChcblx0XHRzbGlkZXJcbik7XG5cbi8vIEBpbXBvcnQgJy4uLy4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvaGFtYnVyZ2Vycyc7XG5cbi8vIFNPQ0lBTFNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5oZWFkZXJfX3RvcCAuc29jaWFsc0xpc3RpbmcgYSB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3M7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcbiAgfVxufVxuXG4vLyBMT0dPXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4uaGVhZGVyX19ib3R0b21fX2xvZ28gc3ZnIHtcbiAgd2lkdGg6IDIwMHB4O1xuICBoZWlnaHQ6IGF1dG87XG59XG5AaW5jbHVkZSBtcSgxMzUwLCAnbWluJykge1xuICAuaGVhZGVyX19ib3R0b21fX2xvZ28gc3ZnIHtcblx0d2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLy8gRE9DVE9MSUJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5oZWFkZXJfX3RvcF9fcmlnaHRfX2RvY3RvbGliIHtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG5cbiAgPiBhIHtcblx0QGluY2x1ZGUgcm9sbEhvdmVyQnV0dG9uKCk7XG5cblx0c3BhbiB7XG5cdCAgZGlzcGxheTogZmxleDtcblx0ICBhbGlnbi1pdGVtczogY2VudGVyO1xuXHR9XG4gIH1cbn1cblxuLy8gUEhPTkVcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5oZWFkZXJfX3RvcF9fcmlnaHRfX3Bob25lID4gYSB7XG4gIEBpbmNsdWRlIHJvbGxIb3ZlckJ1dHRvbigpO1xufVxuXG4vLyBIQU1CVVJHRVJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5oZWFkZXJfX2JvdHRvbV9fYWN0aW9uc19fbWVudSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29yZHVyb3lDb2xvcik7XG59XG4uaGVhZGVyX19ib3R0b21fX2FjdGlvbnNfX21lbnUgPiAqIHtcbiAgQGV4dGVuZCAlcmVzZXRCdXR0b247XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6IHJlbSg1MCk7XG4gIGhlaWdodDogcmVtKDUwKTtcblxuICA+IC5oYW1idXJnZXItYm94IHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogOHB4O1xuICB9XG5cbiAgLmhhbWJ1cmdlci1pbm5lciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gIH1cblxuICAmOm5vdCguaXMtYWN0aXZlKSB7XG5cdC5oYW1idXJnZXItaW5uZXI6OmFmdGVyLFxuXHQuaGFtYnVyZ2VyLWlubmVyIHtcblx0ICB3aWR0aDogJGhhbWJ1cmdlci1sYXllci13aWR0aCAtIDEwcHg7XG5cdCAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuXHQgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHR9XG4gIH1cbn1cblxuLmhhbWJ1cmdlci0tc2xpZGVyIC5oYW1idXJnZXItYm94IC5oYW1idXJnZXItaW5uZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDI1cHg7XG4gIGhlaWdodDogM3B4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6ICNGRkY7XG59XG5cbi5oYW1idXJnZXItLXNsaWRlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1ib3ggLmhhbWJ1cmdlci1pbm5lcjpudGgtY2hpbGQoMSkge1xuICB0b3A6IDVweDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNTNkZWcpO1xuICBsZWZ0OiAwcHg7XG4gIHdpZHRoOiAzMHB4O1xufVxuXG4uaGFtYnVyZ2VyLS1zbGlkZXIuaXMtYWN0aXZlIC5oYW1idXJnZXItYm94IC5oYW1idXJnZXItaW5uZXI6bnRoLWNoaWxkKDIpIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uaGFtYnVyZ2VyLS1zbGlkZXIuaXMtYWN0aXZlIC5oYW1idXJnZXItYm94IC5oYW1idXJnZXItaW5uZXI6bnRoLWNoaWxkKDMpIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTI2ZGVnKTtcbiAgdG9wOiAtNnB4O1xuICB3aWR0aDogMzBweDtcbn1cblxuLmhlYWRlcl9fYm90dG9tX19tZW51ID4gbmF2ID4gdWwgPiBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gdWwubmF2LWRyb3AgbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IGF7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZ2FwOiAxMHB4O1xufVxuLmhlYWRlcl9fYm90dG9tX19tZW51ID4gbmF2ID4gdWwgPiBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gdWwubmF2LWRyb3AgbGkubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IGE6OmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGJhY2tncm91bmQtaW1hZ2U6dXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9VVRGLTgsJTNjc3ZnIHdpZHRoPSc3JyBoZWlnaHQ9JzknIHZpZXdCb3g9JzAgMCA3IDknIGZpbGw9J25vbmUnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM2UlM2NwYXRoIGQ9J00xIDhMNSA0LjVMMSAxJyBzdHJva2U9JyUyMzQ4MzIzRScgc3Ryb2tlLXdpZHRoPScyJy8lM2UlM2Mvc3ZnJTNlIFwiKTtcbiAgd2lkdGg6IDdweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbWFyZ2luLXRvcDogNHB4O1xufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIExhbmd1YWdlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5sYW5ndWFnZXMtc2VsZWN0b3IgLmxhbmdfY3VycmVudCB7IFxuICBwb3NpdGlvbjogcmVsYXRpdmU7IFxuICBjdXJzb3I6IHBvaW50ZXI7IFxuICBsaW5lLWhlaWdodDogMTsgXG4gIHBhZGRpbmctcmlnaHQ6IDEycHg7IFxuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4ubGFuZ3VhZ2VzLXNlbGVjdG9yIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ubGFuZ3VhZ2VzLXNlbGVjdG9yIHN2ZyB7XG4gIHdpZHRoOiAyOHB4O1xuICBoZWlnaHQ6IDE5cHg7XG59XG5cbi5sYW5ndWFnZXMtc2VsZWN0b3IgLmxpc3RfbGFuZyB7IFxuICBkaXNwbGF5OiBub25lOyBcbiAgcG9zaXRpb246IGFic29sdXRlOyBcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjsgXG4gIGJveC1zaGFkb3c6IDBweCAtNnB4IDExcHggcmdiYSgwLCAwLCAwLCAwLjA5KTsgXG4gIHdpZHRoOiBtYXgtY29udGVudDtcbiAgbGVmdDogMDtcbiAgdG9wOiAxMTAlO1xuICB6LWluZGV4OiA5OTk5OTk5O1xufVxuXG4ubGFuZ3VhZ2VzLXNlbGVjdG9yIC5saXN0X2xhbmcgbGkgeyBcbiAgbGlzdC1zdHlsZTogbm9uZSAhaW1wb3J0YW50OyBcbn1cblxuLmxhbmd1YWdlcy1zZWxlY3RvciAubGlzdF9sYW5nIGxpIGEgeyBcbiAgbGluZS1oZWlnaHQ6IDE7IFxuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDhweDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiA1cHg7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgZWFzZSAuM3M7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogcmdiYSg4NiwgOTgsIDk1LCAwLjcpO1xuICB9XG59XG5cbi5sYW5ndWFnZXMtc2VsZWN0b3IgLmxpc3RfbGFuZyBsaSArIGxpIHsgXG4gIG1hcmdpbi10b3A6IDNweDsgXG4gIHBhZGRpbmctdG9wOiAzcHg7IFxuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSg4NiwgOTgsIDk1LCAxKTsgXG59XG5cbi5sYW5ndWFnZXMtc2VsZWN0b3IgLmxpc3RfbGFuZy5pcy1hY3RpdmUgeyBcbiAgZGlzcGxheTogYmxvY2s7IFxufSIsIkBpbmNsdWRlIG1xKCdyZXNwb25zaXZlJykge1xuICAuZm9vdGVyIHtcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tY2FsbFRvQWN0aW9uc0hlaWdodCk7XG4gIH1cbn1cblxuLy8gUEhPTkVcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi5mb290ZXJfX2FkZHJlc3Nlc19fcGxhY2VfX3Bob25lIHtcbiAgQGluY2x1ZGUgcm9sbEhvdmVyQnV0dG9uKCk7XG59XG5cbi8vIERPQ1RPTElCXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4uZm9vdGVyX19kb2N0b2xpYiA+IGEge1xuICBAaW5jbHVkZSByb2xsSG92ZXJCdXR0b24oKTtcblxuICBzcGFuIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxufVxuIiwiLy8gTUFSR0lOU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLnNlY3Rpb24gKyAuc2VjdGlvbjpub3QoLnNlY3Rpb24tLW5vLXRvcE1hcmdpbikuc2VjdGlvbi0tdG9wTWFyZ2luLS1zbSB7XG4gIEBpbmNsdWRlIG1hcmdpbi10b3AoMzVweCk7XG59XG5cbi5zZWN0aW9uLS1uby1tYXJnaW4tbW9iaWxlIHtcblx0QGluY2x1ZGUgbXEoJ3RhYmxldCcpIHtcblx0XHRtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG5cdH1cbn1cblxuLy8gRklSU1QgQkFDS0dST1VORCBDT0xPUlxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQG1peGluIHNlY3Rpb25CYWNrZ3JvdW5kQ29sb3IxKCkge1xuICAtLXNlY3Rpb25CYWNrZ3JvdW5kQ29sb3I6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoODYsIDk4LCA5NSwgMC45NSkgMCUsICMyMTMyMkUgMTAwJSk7XG4gIC0tc2VjdGlvbkNvbG9yOiAjRkZGO1xufVxuQG1peGluIHNlY3Rpb25CYWNrZ3JvdW5kQ29sb3IyKCkge1xuICAtLXNlY3Rpb25CYWNrZ3JvdW5kQ29sb3I6IHZhcigtLXdoaXRlUm9ja0NvbG9yKTtcbn1cbkBtaXhpbiBzZWN0aW9uQmFja2dyb3VuZENvbG9yMygpIHtcbiAgLS1zZWN0aW9uQmFja2dyb3VuZENvbG9yOiB2YXIoLS1jb3JkdXJveUNvbG9yKTtcbn1cblxuLnNlY3Rpb24tLWJhY2tncm91bmRDb2xvci0xOm5vdCguc2VjdGlvbi0tYmFja2dyb3VuZENvbG9yLS1hZnRlclRhYmxldCkge1xuICBAaW5jbHVkZSBzZWN0aW9uQmFja2dyb3VuZENvbG9yMSgpO1xufVxuLnNlY3Rpb24tLWJhY2tncm91bmRDb2xvci0yOm5vdCguc2VjdGlvbi0tYmFja2dyb3VuZENvbG9yLS1hZnRlclRhYmxldCkge1xuICBAaW5jbHVkZSBzZWN0aW9uQmFja2dyb3VuZENvbG9yMigpO1xufVxuLnNlY3Rpb24tLWJhY2tncm91bmRDb2xvci0zOm5vdCguc2VjdGlvbi0tYmFja2dyb3VuZENvbG9yLS1hZnRlclRhYmxldCkge1xuICBAaW5jbHVkZSBzZWN0aW9uQmFja2dyb3VuZENvbG9yMygpO1xufVxuQGluY2x1ZGUgbXEoJ3RhYmxldCcsICdtaW4nKSB7XG4gIC5zZWN0aW9uW2NsYXNzKj1cInNlY3Rpb24tLWJhY2tncm91bmRDb2xvclwiXS5zZWN0aW9uLS1iYWNrZ3JvdW5kQ29sb3ItLWFmdGVyVGFibGV0IHtcblx0Ji5zZWN0aW9uLS1iYWNrZ3JvdW5kQ29sb3ItMSB7XG5cdCAgQGluY2x1ZGUgc2VjdGlvbkJhY2tncm91bmRDb2xvcjEoKTtcblx0fVxuXG5cdCYuc2VjdGlvbi0tYmFja2dyb3VuZENvbG9yLTIge1xuXHQgIEBpbmNsdWRlIHNlY3Rpb25CYWNrZ3JvdW5kQ29sb3IyKCk7XG5cdH1cblxuXHQmLnNlY3Rpb24tLWJhY2tncm91bmRDb2xvci0zIHtcblx0ICBAaW5jbHVkZSBzZWN0aW9uQmFja2dyb3VuZENvbG9yMygpO1xuXHR9XG4gIH1cbn1cblxuLy8gRklSU1QgSEVBREVSXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4uc2VjdGlvbkhlYWRlci0tc3R5bGUtMSB7XG4gIC5zZWN0aW9uSGVhZGVyX190aXRsZSB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0QGluY2x1ZGUgZm9udC1zaXplKDM1cHgpO1xuXHRmb250LWZhbWlseTogJGZvbnRNZW5vQmFubmVyO1xuXHRmb250LXdlaWdodDogdmFyKC0tZm9udFdlaWdodFNlbWlCb2xkKTtcblx0bGluZS1oZWlnaHQ6IDEuMjtcblx0bGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0cGFkZGluZy10b3A6IHJlbSgxMCk7XG5cdHBhZGRpbmctYm90dG9tOiByZW0oMTApO1xuXHRib3JkZXItdG9wOiA1cHggc29saWQgdmFyKC0tc2VjdGlvbkhlYWRlckJvcmRlckNvbG9yLCB2YXIoLS1jb25jcmV0ZUNvbG9yKSk7XG5cdGJvcmRlci1ib3R0b206IDVweCBzb2xpZCB2YXIoLS1zZWN0aW9uSGVhZGVyQm9yZGVyQ29sb3IsIHZhcigtLWNvbmNyZXRlQ29sb3IpKTtcblxuXHRzdHJvbmcge1xuXHQgIGRpc3BsYXk6IGJsb2NrO1xuXHQgIGZvbnQtZmFtaWx5OiAkZm9udEF6b1NhbnM7XG5cdCAgZm9udC1zaXplOiAwLjU3ZW07XG5cdCAgY29sb3I6IHZhcigtLXNlY3Rpb25IZWFkZXJTZWNvbmRDb2xvciwgdmFyKC0tY29yZHVyb3lDb2xvcikpO1xuXHQgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250V2VpZ2h0UmVndWxhcik7XG5cdCAgbGV0dGVyLXNwYWNpbmc6IDAuMTRlbTtcblx0ICBtYXJnaW4tdG9wOiAwLjJlbTtcblx0fVxuICB9XG5cbiAgLnNlY3Rpb25IZWFkZXJfX2Rlc2NyaXB0aW9uIHtcblx0Zm9udC1zaXplOiByZW0oMTUpO1xuXHRjb2xvcjogdmFyKC0tY29yZHVyb3lDb2xvcik7XG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250V2VpZ2h0TGlnaHQpO1xuXHRsaW5lLWhlaWdodDogMS40O1xuXHRtYXJnaW4tdG9wOiByZW0oMTUpO1xuICB9XG5cbn1cblxuLy8gUVVFU1RJT05cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpbmNsdWRlIG1xKCd0YWJsZXQtd2lkZScpIHtcbiAgLnNlY3Rpb24tLXF1ZXN0aW9uIHtcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSg4NiwgOTgsIDk1LCAwLjk1KSAwJSwgIzIxMzIyRSAxMDAlKTtcblxuXHQucXVlc3Rpb24ge1xuXHQgIGJhY2tncm91bmQ6IG5vbmU7XG5cdH1cbiAgfVxufSIsIi5ob21lSGVybyA+IC5jb250YWluZXIge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcInRleHRcIiBcImltYWdlXCI7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICBncmlkLWdhcDogcmVtKDM1KTtcbn1cbi5ob21lSGVybyArIC5zZWN0aW9uIHtcbiAgQGluY2x1ZGUgbWFyZ2luLXRvcCg4MHB4KTtcbn1cbkBpbmNsdWRlIG1xKCd0YWJsZXQnLCAnbWluJykge1xuICAuaG9tZUhlcm8gPiAuY29udGFpbmVyIHtcblx0ZGlzcGxheTogZmxleDtcblx0Z3JpZC1nYXA6IDA7XG5cblx0PiAqIHtcblx0ICBmbGV4OiAxO1xuXHR9XG4gIH1cbn1cbkBpbmNsdWRlIG1xKCd0YWJsZXQtd2lkZScsICdtaW4nKSB7XG4gIC5ob21lSGVybyA+IC5jb250YWluZXIge1xuXHQtLWNvbnRhaW5lcldpZHRoOiA5MHZ3O1xuICB9XG59XG5AaW5jbHVkZSBtcSgxOTAwLCAnbWluJykge1xuICAuaG9tZUhlcm8ge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRtaW4taGVpZ2h0OiA3MDBweDtcblx0bWF4LWhlaWdodDogNzB2aDtcblxuXHQ+ICoge1xuXHQgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuXHR9XG5cblx0LmhvbWVIZXJvX19pbWFnZSBpbWcge1xuXHQgIGhlaWdodDogMTAwJTtcblx0ICBvYmplY3QtcG9zaXRpb246IHRvcDtcblx0fVxuICB9XG4gIC5ob21lSGVyb19fY29udGVudCB7XG5cdGZsZXg6IDQ1JSAhaW1wb3J0YW50O1xuICB9XG4gIC5ob21lSGVyb19faW1hZ2Uge1xuXHRmbGV4OiA1NSUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLyBURVhUXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4uaG9tZUhlcm9fX2NvbnRlbnQge1xuICBncmlkLWFyZWE6IHRleHQ7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogcmVtKDM1KTtcbn1cbi5ob21lSGVyb19fY29udGVudF9fdGl0bGUge1xuICBmb250LWZhbWlseTogJGZvbnRNZW5vQmFubmVyO1xuICBjb2xvcjogIzAwMDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDQwcHgpO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udFdlaWdodExpZ2h0KTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcblxuICBzdHJvbmcge1xuXHRkaXNwbGF5OiBibG9jaztcblx0Zm9udC1zaXplOiAwLjYzZW07XG5cdGNvbG9yOiB2YXIoLS1jb3JkdXJveUNvbG9yKTtcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnRXZWlnaHRSZWd1bGFyKTtcblx0bGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcblx0Zm9udC1zdHlsZTogaXRhbGljO1xuICB9XG59XG4uaG9tZUhlcm9fX2NvbnRlbnRfX3RleHQge1xuICAtLXRleHRBbGlnbjogbGVmdDtcbiAgQGV4dGVuZCAuYXBwbHlTdHlsZXM7XG4gIC0tdGV4dENvbG9yOiAjMDAwO1xuICAtLXRleHRGb250U2l6ZTogI3tyZW0oMTUpfTtcbiAgLS10ZXh0TGluZUhlaWdodDogMS42O1xuICBtYXJnaW4tdG9wOiByZW0oMTUpO1xufVxuLmhvbWVIZXJvX19idXR0b24ge1xuICBAaW5jbHVkZSBtYXJnaW4tdG9wKDM1cHgpO1xufVxuQGluY2x1ZGUgbXEoJ3RhYmxldCcsICdtaW4nKSB7XG4gIC5ob21lSGVyb19fY29udGVudCB7XG5cdG1hcmdpbi10b3A6IDA7XG5cdEBpbmNsdWRlIG1hcmdpbi1yaWdodCgzNXB4KTtcblx0QGluY2x1ZGUgcGFkZGluZy10b3AoMzVweCk7XG5cdEBpbmNsdWRlIHBhZGRpbmctYm90dG9tKDM1cHgpO1xuICB9XG59XG5cbi8vIElNQUdFXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4uaG9tZUhlcm9fX2ltYWdlIHtcbiAgZ3JpZC1hcmVhOiBpbWFnZTtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKDUwJSAtIDUwdncpO1xuICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgLSA1MHZ3KTtcblxuICBpbWcge1xuXHRkaXNwbGF5OiBibG9jaztcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMTAwJTtcbiAgfVxufVxuQGluY2x1ZGUgbXEoJ3RhYmxldCcsICdtaW4nKSB7XG4gIC5ob21lSGVyb19faW1hZ2Uge1xuXHRtYXJnaW4tcmlnaHQ6IGNhbGMoNTAlIC0gNTB2dyk7XG5cdG1hcmdpbi1sZWZ0OiAwO1xuXG5cdGltZyB7XG5cdCAgd2lkdGg6IDEwMCU7XG5cdH1cbiAgfVxufSJdfQ== */
