@charset "UTF-8";
.main {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 0;
}
.secondary {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: auto;
}
.zero-letter-spacing, .custom-card-label-text, .custom-card-label-title, .custom-button, body, h3, .custom-error-text, .custom-modal-section-header-text, .custom-section-subtext, .custom-section-subtitle, .custom-section-title, .custom-headline {
  letter-spacing: 0;
}
/* Work Sans Start --------------------------------------  */
.work-sans-light {
  font-family: work-sans, sans-serif;
  font-weight: 300;
  font-style: normal;
}
.work-sans-regular {
  font-family: work-sans, sans-serif;
  font-weight: 400;
  font-style: normal;
}
.work-sans-medium {
  font-family: work-sans, sans-serif;
  font-weight: 500;
  font-style: normal;
}
.work-sans-semi-bold {
  font-family: work-sans, sans-serif;
  font-weight: 600;
  font-style: normal;
}
.work-sans-bold {
  font-family: work-sans, sans-serif;
  font-weight: 700;
  font-style: normal;
}
.work-sans-extra-bold {
  font-family: work-sans, sans-serif;
  font-weight: 800;
  font-style: normal;
}
/* ---------------------------------------- Work Sans End */
/* Rajdhani Start --------------------------------------  */
.rajdhani-light {
  font-family: rajdhani, sans-serif;
  font-weight: 300;
  font-style: normal;
}
.rajdhani-regular {
  font-family: rajdhani, sans-serif;
  font-weight: 400;
  font-style: normal;
}
.rajdhani-medium {
  font-family: rajdhani, sans-serif;
  font-weight: 500;
  font-style: normal;
}
.rajdhani-semi-bold {
  font-family: rajdhani, sans-serif;
  font-weight: 600;
  font-style: normal;
}
.rajdhani-bold {
  font-family: rajdhani, sans-serif;
  font-weight: 700;
  font-style: normal;
}
.rajdhani-bold {
  font-family: rajdhani, sans-serif;
  font-weight: 800;
  font-style: normal;
}
/* ---------------------------------------- Rajdhani End */
.main {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 0;
}
.secondary {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: auto;
}
.zero-letter-spacing, .custom-card-label-text, .custom-card-label-title, .custom-button, body, h3, .custom-error-text, .custom-modal-section-header-text, .custom-section-subtext, .custom-section-subtitle, .custom-section-title, .custom-headline {
  letter-spacing: 0;
}
.sidebar {
  width: 224px !important;
}
.app-body .sidebar-show ~ .main {
  margin-left: 224px !important;
}
.app-body .sidebar-hide ~ .main {
  margin-left: 0 !important;
}
.style-nav {
  background-color: #2c4058;
  padding: 2rem;
}
.nav-ul {
  padding: 0;
}
.nav-item {
  list-style: none;
  padding: 0.75rem 1rem;
  color: #C3C9D0;
  border-radius: 0.625rem;
  cursor: pointer;
  margin: 0.25rem 0.5rem;
}
.nav-item.active {
  background-color: #17293E;
  color: #FFFFFF;
}
.nav-item.passive-selection {
  background-color: rgba(255, 255, 255, 0.1);
  color: #FFFFFF;
}
.nav-item.passive-selection .nav-item-label {
  height: 2.25rem;
  line-height: 2.25rem;
  overflow: hidden;
  text-overflow: ellipsis;
}
.nav-item.passive-selection .nav-item-label.multi-line-label {
  line-height: 1.125rem;
}
.nav-item-label {
  font-size: 1rem;
  line-height: 1.125rem;
  text-align: left;
  vertical-align: middle;
  padding-left: 0.5rem;
  color: #C3C9D0;
}
li.nav-item.active .nav-item-label {
  color: #FFFFFF;
}
li.nav-item.active .nav-bar-icon {
  display: none;
}
li.nav-item.active .nav-bar-icon-filled {
  display: inline-block;
  opacity: 1;
}
.nav-bar-icon, .nav-bar-icon-filled {
  height: 100%;
  width: 1.5rem;
  display: inline-block;
  opacity: 0.7;
}
.nav-bar-icon-filled {
  display: none;
}
.nav-item:hover .nav-bar-icon {
  opacity: 1;
}
.nav-item:hover .nav-item-label {
  color: #FFFFFF;
}
.nav-item-notification-pill {
  background-color: #FA5555;
  color: #FFFFFF;
  display: inline-block;
  text-align: center;
  line-height: 0.625rem;
  font-size: 0.75rem;
  padding: 0.25rem 0.375rem;
  vertical-align: middle;
  border-radius: 1.125rem;
  min-width: 1.5rem;
  float: right;
  margin-top: 0.2rem;
}
/* Text_Field_Start ----------------------------------------------- */
.custom-textfield {
  color: #222222;
  height: 2.5rem;
  width: -webkit-fill-available;
  border-radius: 0.625rem;
  border: 0;
  font-size: 0.875rem;
  line-height: 1rem;
  text-align: left;
  background-color: #F2F2F2;
  border: 1px solid #F2F2F2;
  padding: 0.8125rem 0.5rem;
}
.custom-textfield:-moz-read-only {
  outline: none;
  border: 0;
  box-shadow: none;
  background-color: #F2F2F2;
}
.custom-textfield:read-only {
  outline: none;
  border: 0;
  box-shadow: none;
  background-color: #F2F2F2;
}
.custom-textfield:-moz-read-only:focus {
  outline: none;
  border: 0;
  box-shadow: none;
  background-color: #F2F2F2;
}
.custom-textfield:read-only:focus {
  outline: none;
  border: 0;
  box-shadow: none;
  background-color: #F2F2F2;
}
.custom-textfield:focus {
  color: #222222;
  outline: none;
  border: 1px solid #222222;
  background-color: #FFFFFF;
  box-shadow: 0 0 1px 1px #e8e8e8;
}
/* ------------------------------------------------- Text_Field_End */
/* Text_Start ----------------------------------------------- */
.custom-headline {
  font-size: 2rem;
  color: #222222;
  text-align: left;
  opacity: 1;
}
.custom-section-title {
  font-size: 1.5rem;
  color: #222222;
  text-align: left;
  opacity: 1;
}
.custom-section-subtitle {
  color: #222222;
  font-size: 1rem;
  text-align: left;
  opacity: 1;
}
.custom-section-subtext {
  color: #737680;
  font-size: 1rem;
  line-height: 1.125rem;
  text-align: left;
  opacity: 1;
}
.custom-modal-section-header-text {
  color: #222222;
  font-size: 1rem;
  text-align: left;
  opacity: 1;
}
.custom-error-text {
  color: #FA5555;
  font-size: 0.625rem;
  text-align: left;
  opacity: 1;
}
h3 {
  color: #222222;
  text-align: left;
  font-size: 1.125rem;
  opacity: 1;
}
body {
  color: #222222;
  text-align: left;
  font-size: 0.875rem;
  opacity: 1;
}
/* ------------------------------------------------- Text_End */
/* Buttons_Start -------------------------------------------- */
.custom-button {
  padding: 0.75rem 1rem;
  margin: 0 0.5rem;
  border: none;
  border-radius: 0.625rem;
  line-height: 1.125rem;
  opacity: 1;
  height: 2.75rem;
  font-size: 0.875rem;
  text-align: center;
  vertical-align: middle;
  transition: background 0.8s;
  cursor: pointer;
}
.custom-button img {
  margin-right: 0.5rem;
  height: 100%;
}
.custom-button:focus {
  outline: none;
}
.custom-button .show-on-hover {
  display: none;
}
.custom-button:hover .hide-on-hover {
  display: none;
}
.custom-button:hover .show-on-hover {
  display: inline-block;
}
.custom-button:active {
  background-color: #C3C9D0;
  background-size: 100%;
  transition: background 0s;
}
.preferred-button {
  background-color: #2c4058;
  color: #FFFFFF;
}
.icon-button-icon {
  margin-right: 0.625rem;
  height: 100%;
}
.rounded-icon-button {
  height: 2rem;
  width: 2rem;
  padding: 0.4rem;
  border-radius: 50%;
}
.rounded-icon-button .icon-button-icon {
  margin: 0;
}
.preferred-button:hover {
  background-color: #385271;
}
.preferred-button.disabled {
  background-color: #C3C9D0;
}
.neutral-button {
  background-color: #F2F2F2;
  color: #222222;
}
.neutral-button:hover {
  background-color: #DADBDE;
}
.neutral-button.disabled {
  background-color: #F2F2F2;
  opacity: 0.5;
}
.dark-neutral-button {
  background-color: #b9b9b9;
  color: #FFFFFF;
}
.dark-neutral-button:hover {
  background-color: #737680;
}
.dark-neutral-button.disabled {
  background-color: #F2F2F2;
}
.outlined-button {
  background-color: #FFFFFF;
  color: #222222;
}
.outlined-button:hover {
  background-color: #F2F2F2;
}
.outlined-button.disabled {
  background-color: #C3C9D0;
  border: none;
}
.destructive-button {
  background-color: #FFFFFF;
  color: #FA5555;
  border: 0.124rem solid #FA5555;
}
.destructive-button:hover {
  background-color: #FA5555;
  color: #FFFFFF;
}
.destructive-button.disabled {
  background-color: #C3C9D0;
  color: #222222;
  border: none;
}
.text-button {
  background-color: #FFFFFF;
  color: #222222;
}
.text-button:hover {
  background-color: #F8F8F8;
}
.back-button {
  padding: 0.75rem 1rem 0.75rem 0;
  background-color: #FFFFFF;
  color: #222222;
  opacity: 0.5;
}
.back-button img {
  margin-right: 0.25rem;
}
.back-button:hover {
  opacity: 1;
  background-color: #FFFFFF;
}
.text-link-helper {
  font-size: 0.875rem;
  line-height: 1.125rem;
  text-align: left;
  color: #2c4058;
}
.inline-text-link {
  display: inline-block;
  margin: 0 0.5rem;
}
.text-link {
  color: #2c4058;
}
.text-link.disabled {
  color: #C3C9D0;
}
.text-link.disabled:hover {
  text-decoration: none;
  cursor: none;
}
.text-link:hover {
  text-decoration: underline;
  cursor: pointer;
}
.text-link.destructive-link {
  color: #FA5555;
}
.text-link.destructive-link.disabled {
  color: #FA555533;
}
.bordered-button, .outlined-button {
  border: 0.124rem solid #DADBDE;
}
.full-width-button {
  width: 100%;
}
.in-button-loading {
  display: inline-block;
  position: relative;
  vertical-align: middle;
  width: 1.5rem;
  height: 100%;
}
.in-button-loading app-loading .loading-container {
  background-color: transparent !important;
}
.ripple, .custom-button {
  position: relative;
  overflow: hidden;
  transform: translate3d(0, 0, 0);
}
.ripple:after, .custom-button:after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  pointer-events: none;
  background-image: radial-gradient(circle, #000 10%, transparent 10.01%);
  background-repeat: no-repeat;
  background-position: 50%;
  transform: scale(10, 10);
  opacity: 0;
  transition: transform 0.2s, opacity 0.5s;
}
.ripple:active:after, .custom-button:active:after {
  transform: scale(0, 0);
  opacity: 0.2;
  transition: 0s;
}
/* ---------------------------------------------- Buttons_End */
/* Labels_Start -------------------------------------------- */
.custom-label {
  padding: 0.125rem 0.4rem;
  border: none;
  border-radius: 0.3rem;
  line-height: 1.125rem;
  opacity: 1;
  height: 1.25rem;
  font-size: 0.625rem;
  text-align: center;
  vertical-align: middle;
  letter-spacing: 0.6px;
  text-transform: uppercase;
}
.preferred-label {
  background-color: #2c4058;
  color: #FFFFFF;
}
.positive-label {
  background-color: #B1E7E2;
  color: #00504B;
}
.neutral-label {
  background-color: #DADBDE;
  color: #222222;
}
.negative-label {
  background-color: #F28872;
  color: #FFFFFF;
}
/* ---------------------------------------------- Labels_End */
/* Toggle_Switch_Start ------------------------------------- */
.custom-switch-container {
  font-size: 0.875rem;
  line-height: 1.5rem;
  text-align: left;
  color: #222222;
}
.custom-switch-container img {
  height: 1rem;
  width: 1rem;
  margin-left: 1.5rem;
  opacity: 0.5;
}
.custom-switch-container label {
  margin-left: 1rem;
}
/* The switch - the box around the slider */
.custom-switch {
  flex-shrink: 0;
  position: relative;
  display: inline-block;
  width: 2.875rem;
  height: 1.5rem;
  margin-left: 1.125rem;
}
/* Hide home HTML checkbox */
.custom-switch input {
  opacity: 0;
  width: 0;
  height: 0;
}
/* The slider */
.custom-slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #e8e8e8;
  transition: 0.4s;
  border-radius: 34px;
}
.custom-slider:hover {
  background-color: #DADBDE;
}
.custom-slider:before {
  position: absolute;
  content: "";
  height: 1.25rem;
  width: 1.25rem;
  top: 0.1rem;
  left: 0.15rem;
  background-color: #FFFFFF;
  transition: 0.4s;
  border-radius: 50%;
}
input:checked + .custom-slider {
  background-color: #2c4058;
}
input:focus + .custom-slider {
  outline: none;
}
input:checked + .custom-slider:before {
  transform: translateX(1.375rem);
}
/* --------------------------------------- Toggle_Switch_End */
/* Radio_Start --------------------------------------------- */
.custom-radio-form {
  vertical-align: middle;
}
.custom-radio-label {
  font-size: 0.875rem;
  line-height: 1rem;
  text-align: left;
  margin-left: 0.375rem;
  vertical-align: middle;
  margin-bottom: 0;
}
.custom-radio {
  height: 1.25rem;
  width: 1.25rem;
  vertical-align: middle;
}
.custom-radio-option {
  padding: 0.5rem 0;
  display: flex;
  align-items: center;
}
.custom-radio-option-inline {
  display: inline-block;
  padding: 0 1rem;
}
.custom-radio-option input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
}
.custom-custom-radio {
  display: inline-block;
  height: 1.25rem;
  width: 1.25rem;
  vertical-align: middle;
  background-color: #F2F2F2;
  border-radius: 50%;
  flex-shrink: 0;
}
.custom-radio-option.disabled input {
  cursor: not-allowed;
}
.custom-radio-option.disabled:hover .custom-custom-radio {
  background: #F2F2F2;
}
.custom-radio-option:hover .custom-custom-radio {
  background-color: #DADBDE;
}
.custom-radio-option input:checked ~ .custom-custom-radio {
  background-color: #2c4058;
}
.custom-custom-radio:after {
  content: "";
  position: absolute;
  display: none;
}
.custom-radio-option input:checked ~ .custom-custom-radio:after {
  display: block;
}
.custom-radio-option .custom-custom-radio:after {
  position: relative;
  top: 0.4375rem;
  left: 0.4375rem;
  width: 0.375rem;
  height: 0.375rem;
  border-radius: 50%;
  background: #FFFFFF;
}
/* ----------------------------------------------- Radio_End */
/* Toggle_Start -------------------------------------------- */
.custom-toggle {
  border-radius: 2px;
  background-color: #F2F2F2;
  height: 2rem;
  width: 2rem;
  text-align: center;
  font-size: 0.875rem;
  line-height: 1rem;
  padding: 0.5625rem 0;
}
.custom-toggle:hover {
  background-color: #DADBDE;
}
.custom-toggle.active {
  background-color: #2c4058;
  color: #FFFFFF;
}
/* ---------------------------------------------- Toggle_End */
/* Cards_Start --------------------------------------------- */
.custom-card {
  width: 14rem;
  height: 10rem;
  min-width: 14rem;
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  margin-bottom: 1rem !important;
  opacity: 1;
  background-size: cover;
  background-position: top;
  cursor: pointer;
}
.card.custom-card:hover .custom-card-label {
  background-color: #DADBDE;
  opacity: 1;
  height: 5rem;
  transition: 0.25s ease-in-out;
}
.custom-card-label {
  height: 4.5rem;
  background: #F2F2F2 0 0 no-repeat padding-box;
  opacity: 0.9;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-left: 1rem;
  padding-right: 1rem;
  margin-top: auto;
}
.custom-card-radius-top, .custom-card {
  border-top-left-radius: 0.625rem;
  border-top-right-radius: 0.625rem;
}
.custom-card-radius-bottom, .custom-card, .custom-card-label {
  border-bottom-left-radius: 0.625rem;
  border-bottom-right-radius: 0.625rem;
}
.custom-card-label-title {
  text-align: left;
  font-size: 0.875rem;
  color: #737680;
  opacity: 1;
}
.custom-card-label-text {
  font-size: 1.3rem;
  text-align: left;
  color: #222222;
  opacity: 1;
}
.card-deck {
  margin: 1.5rem 0 0 0;
}
.custom-card-deck {
  margin: 1.5rem 0 0 0;
  overflow-y: hidden;
  max-height: 20rem;
  overflow-x: auto;
  white-space: nowrap;
  display: flex;
  flex-wrap: nowrap;
  padding-bottom: 0.25rem;
}
.custom-card-deck .card {
  display: inline-flex !important;
}
.custom-card-with-bottom-margin {
  margin-bottom: 1rem !important;
}
/* ----------------------------------------------- Cards_End */
/* Media_Upload_Start -------------------------------------- */
.custom-upload-area {
  border: 1px dashed #DADBDE;
  border-radius: 0.625rem;
  background-color: #F8F8F8;
  width: 100%;
}
.custom-upload-form {
  text-align: center;
}
.custom-upload-icon {
  height: 1.5rem;
  margin: 1.5rem auto auto;
  display: block;
}
.custom-upload-text {
  display: block;
  padding-top: 1rem;
  font-size: 0.875rem;
  line-height: 1rem;
}
.custom-upload-label {
  color: #388EFC;
}
.custom-upload-label:hover {
  text-decoration: underline;
  cursor: pointer;
}
.secondary-upload-text {
  padding-top: 0.5rem;
  color: #737680;
  margin-bottom: 1.5rem;
}
.custom-file-input {
  display: none;
}
.custom-upload-list-container {
  width: 100%;
  padding: 1.25rem 0;
}
.custom-upload-list {
  list-style: none;
  padding: 0;
}
.custom-upload-button {
  display: none;
  border: 0;
  background-color: transparent;
  cursor: pointer;
}
.custom-upload-button:focus {
  outline: none;
}
.custom-upload-button-icon {
  height: 1.25rem;
  background-color: transparent;
  filter: invert(49%) sepia(8%) saturate(428%) hue-rotate(189deg) brightness(92%) contrast(86%);
}
.custom-upload-preview.error .custom-remove-upload-button {
  display: none;
}
.custom-upload-preview.error .custom-refresh-upload-button {
  display: inline-block;
}
.custom-upload-preview.success .custom-remove-upload-button {
  display: inline-block;
}
.custom-upload-preview.success .custom-refresh-upload-button {
  display: none;
}
/* ---------------------------------------- Media_Upload_End */
/* Lists_Start --------------------------------------------- */
.custom-search-results {
  width: 100%;
  border-radius: 0.625rem;
  background-color: #FDFDFD;
  border: 1px solid #707070;
  margin: 0.625rem;
  max-height: 33vh;
}
.custom-results-container {
  overflow: scroll;
  max-height: 26vh;
  display: block;
}
.custom-search-results-header {
  padding: 1.5625rem 0 1rem 0;
  display: block;
  font-size: 1rem;
  line-height: 1.125rem;
  text-align: left;
  border-bottom: 1px solid #F2F2F2;
  width: calc(100% - 4rem);
  margin: 0 2rem;
}
.custom-list {
  list-style: none;
  padding: 0 1rem 0.5rem 1rem;
  margin: 0;
}
.custom-list-item-image {
  height: 3rem;
  width: 3rem;
  margin: 0 0 0 0.75rem;
  border-radius: 0.25rem;
}
.custom-list-item-image-icon {
  height: 3rem;
  width: 3rem;
  margin: 0 0 0 0.75rem;
  border-radius: 0.25rem;
  background-color: #F2F2F2;
  padding: 0.75rem;
}
.custom-list-item-text-container {
  padding: 0 1rem;
  display: inline-block;
  width: calc(100% - 4rem);
  vertical-align: middle;
}
.custom-list-item-text {
  font-size: 0.875rem;
  line-height: 1.125rem;
  display: flex;
}
.custom-list-item-subtext {
  font-size: 0.625rem;
  line-height: 0.75rem;
  display: flex;
}
.custom-list-item {
  padding: 0.75rem 0;
}
.custom-list-item:hover {
  background-color: #F8F8F8;
  cursor: pointer;
  border-radius: 0.25rem;
}
.custom-list-item.inactive:hover {
  background-color: #FDFDFD;
}
.custom-list-item.active {
  background-color: #DEECFF;
  cursor: text !important;
}
.menu-list-container {
  max-height: 30rem;
  padding-top: 1rem;
  width: 100%;
  display: block;
  background: #FFFFFF;
}
.menu-list-item {
  padding: 0.75rem 1rem;
  color: #222222;
  display: flex;
  flex-direction: row;
  align-items: center;
  box-sizing: border-box;
  cursor: pointer;
  background: #FFFFFF;
  z-index: 99;
  box-shadow: 0 0 2px 2px rgba(218, 220, 222, 0.7);
  border-radius: 0.625rem;
  margin: 1rem 0;
}
.menu-list-item.disabled {
  cursor: not-allowed;
  background-color: #e8e8e8;
}
/* ----------------------------------------------- Lists_End */
/* Image_Start --------------------------------------------- */
.custom-profile-image {
  display: inline-block;
  border-radius: 50%;
  height: 5.625rem;
  width: 5.625rem;
  background-color: #F2F2F2;
  cursor: pointer;
}
.custom-profile-image-padding {
  padding: 1.75rem;
}
/* ----------------------------------------------- Image_End */
/* Modal_Start --------------------------------------------- */
.sticky-header-container {
  background-color: #FFFFFF;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  right: 0;
  left: 0;
  padding: 1.5rem 1.5rem 0 1.5rem;
}
.sticky-body-container {
  overflow-y: scroll;
  padding: 0 1.5rem;
}
.sticky-footer-container {
  background: linear-gradient(rgba(255, 255, 255, 0.25), rgba(255, 255, 255, 0.6), rgba(255, 255, 255, 0.9), #FFFFFF, #FFFFFF);
  position: -webkit-sticky;
  position: sticky;
  bottom: 0;
  right: 0;
  left: 0;
  padding: 0 1.5rem 1.5rem 1.5rem;
  z-index: 10;
}
.sticky-footer-container.modal-footer-flex-end {
  padding-top: 3rem;
}
.modal-form-negative-padding {
  margin: 0 -1.5rem;
}
.modal-body {
  max-height: calc(100vh - 3rem);
  overflow-y: auto;
  padding: 1.5rem;
}
.modal-body.sticky {
  padding: 0;
}
.modal-header {
  display: block;
  padding: 0 0 1.25rem 0;
  border-bottom: 1px solid #DADBDE;
}
.modal-title {
  display: block;
  font-size: 1.5rem;
  color: #222222;
}
.modal-subtitle {
  display: block;
  font-size: 1.125rem;
  line-height: 2rem;
  color: #222222;
}
.modal-sub-subtitle {
  font-size: 0.875rem;
  text-align: left;
  color: #222222;
}
.modal-sub-subtitle-text {
  display: inline-block;
  width: 50%;
  color: #737680;
}
.modal-sub-subtitle-text span {
  display: inline-block;
  color: #222222;
}
.inline-subtitle {
  display: inline-block;
  min-width: 50%;
}
.modal-subtitle-action {
  float: right;
  top: -0.5rem;
  position: relative;
  text-align: right;
}
.footer-button {
  display: flex;
  justify-content: flex-end;
  margin: 1rem 0 1rem 0;
  float: right;
}
.modal-footer-flex-end {
  display: flex;
  justify-content: flex-end;
}
.modal-divider {
  width: 100%;
  border-bottom: 1px solid #DADBDE;
  margin: 0.5rem 0;
  padding-top: 0.5rem;
}
/* ----------------------------------------------- Modal_End */
/* Drop_Down_Menu_Start ------------------------------------ */
.custom-dropdown-menu {
  border-radius: 0.625rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  overflow: visible;
  border-color: #DADBDE;
}
.custom-dropdown-menu-header {
  padding-top: 1rem;
  border-bottom: 1px solid #222222;
  padding-bottom: 3px;
  font-size: 16px;
  margin-left: 1rem;
  margin-right: 1rem;
}
.custom-dropdown-menu-item {
  border: none;
  width: 100%;
  min-width: 200px;
  max-width: 320px;
  background-color: #FFFFFF;
  text-align: left;
  border-radius: 0.625rem;
  padding: 0.625rem 1rem;
}
.custom-item-sizing, .custom-dropdown-menu-header, .custom-dropdown-menu-item {
  min-width: 200px;
  max-width: 400px;
}
.custom-dropdown-menu-item:hover {
  background-color: #F8F8F8;
}
.custom-dropdown-menu-item:focus {
  outline: none;
  background-color: #DADBDE;
}
.custom-dropdown-menu-remove {
  color: #FA5555;
}
/* -------------------------------------- Drop_Down_Menu_End */
/* Drop_Down_Start ----------------------------------------- */
.custom-dropdown {
  padding: 0 0.75rem 0 0.875rem;
  width: 100%;
  height: 2.5rem;
  border-radius: 0.625rem;
  background-color: #F2F2F2;
  color: #222222;
  font-size: 0.875rem;
  line-height: 1.125rem;
  border: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-image: url(/src/assets/icons/light/solid/drop-down.svg);
  background-position-x: calc(100% - 0.7rem);
  background-position-y: center;
  background-repeat: no-repeat;
  background-size: 1.5rem;
}
.custom-dropdown:focus {
  outline: none;
}
.custom-dropdown:enabled:hover {
  background-color: #FFFFFF;
  border: 1px solid #222222;
  color: #222222;
}
.custom-dropdown:disabled, .custom-textfield:disabled, .custom-switch-input:disabled, .custom-slider.disabled {
  opacity: 0.5;
}
.custom-dropdown:disabled:hover, .custom-textfield:disabled:hover, .custom-switch-input:disabled:hover, .custom-slider.disabled:hover {
  cursor: not-allowed;
}
.custom-dropdown-label {
  font-size: 0.8rem;
  line-height: 1rem;
  color: #222222;
}
/* ------------------------------------------- Drop_Down_End */
/* No_Results_Start ----------------------------------------- */
.no-results-container {
  margin: 6rem auto auto auto;
  width: 40%;
  height: 18rem;
  display: block;
}
.no-results-title {
  font-size: 1.5rem;
  line-height: 3rem;
  color: #222222;
}
.no-results-body {
  font-size: 1rem;
  line-height: 1.125rem;
  color: #737680;
}
.no-results-button {
  margin: 1.5rem 0 0 0;
}
/* ------------------------------------------- No_Results_End */
/* Edit_Section_Start ----------------------------------------- */
.custom-edit-section-title {
  font-size: 1rem;
  color: #222222;
}
.custom-edit-section-description {
  font-size: 0.875rem;
  color: #737680;
}
.custom-edit-section-button-container {
  display: block;
}
.custom-edit-section-button-container .custom-button {
  margin: 0 0.5rem 0 0;
}
.custom-section-container {
  position: relative;
  margin-top: 0.5rem;
}
.custom-section-header {
  display: block;
  width: 100%;
}
.custom-section-body {
  display: block;
  width: 100%;
}
.custom-section-header-button-container {
  display: inline-block;
  float: right;
}
.custom-section-list-title {
  display: inline-block;
  font-size: 1rem;
  line-height: 1.5rem;
  color: #222222;
}
/* ------------------------------------------- Edit_Section_End */
/* Tooltip_Start ----------------------------------------- */
.inline-tooltip {
  height: 0.75rem;
  width: 0.75rem;
}
.inline-tooltip:focus {
  outline: none;
}
.datatable-action-button img {
  height: 100%;
  width: 100%;
  opacity: 0.5;
}
.inline-tooltip img {
  height: 100%;
  width: 100%;
  opacity: 0.5;
}
.inline-tooltip {
  outline: none;
  display: inline-block;
  padding: 0;
  background-color: transparent;
  border: none;
  cursor: pointer;
  margin: 0 0.25rem;
}
.inline-tooltip:hover img {
  opacity: 1;
}
/* ------------------------------------------- Tooltip_End */
/* Warning_Start ----------------------------------------- */
.warning-message {
  margin: 0.5rem 1.5rem;
  padding: 0.75rem 1rem;
  background-color: #FFD74BCC;
  border-radius: 0.5rem;
  text-align: left;
  color: #222222;
}
.warning-message .tooltip-container {
  float: right;
}
/* ------------------------------------------- Warning_End */
/* Popper_Start --------------------------------------------- */
popper-content div.custom-popper-content {
  border: none;
  border-radius: 0.625rem;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
  padding: 0;
  z-index: 100;
}
/* ----------------------------------------------- Popper_End */
/* Colors for the ripple elements.*/
/* stylelint-disable-next-line material/theme-mixin-api */
/* stylelint-disable-next-line material/theme-mixin-api */
/* stylelint-disable material/no-prefixes */
/* stylelint-enable */
.mat-badge-content {
  font-weight: 600;
  font-size: 12px;
  font-family: Roboto, "Helvetica Neue", sans-serif;
}
.mat-badge-small .mat-badge-content {
  font-size: 9px;
}
.mat-badge-large .mat-badge-content {
  font-size: 24px;
}
.mat-h1, .mat-headline, .mat-typography h1 {
  font: 400 24px/32px Roboto, "Helvetica Neue", sans-serif;
  letter-spacing: normal;
  margin: 0 0 16px;
}
.mat-h2, .mat-title, .mat-typography h2 {
  font: 500 20px/32px Roboto, "Helvetica Neue", sans-serif;
  letter-spacing: normal;
  margin: 0 0 16px;
}
.mat-h3, .mat-subheading-2, .mat-typography h3 {
  font: 400 16px/28px Roboto, "Helvetica Neue", sans-serif;
  letter-spacing: normal;
  margin: 0 0 16px;
}
.mat-h4, .mat-subheading-1, .mat-typography h4 {
  font: 400 15px/24px Roboto, "Helvetica Neue", sans-serif;
  letter-spacing: normal;
  margin: 0 0 16px;
}
.mat-h5, .mat-typography h5 {
  font: 400 calc(14px * 0.83)/20px Roboto, "Helvetica Neue", sans-serif;
  margin: 0 0 12px;
}
.mat-h6, .mat-typography h6 {
  font: 400 calc(14px * 0.67)/20px Roboto, "Helvetica Neue", sans-serif;
  margin: 0 0 12px;
}
.mat-body-strong, .mat-body-2 {
  font: 500 14px/24px Roboto, "Helvetica Neue", sans-serif;
  letter-spacing: normal;
}
.mat-body, .mat-body-1, .mat-typography {
  font: 400 14px/20px Roboto, "Helvetica Neue", sans-serif;
  letter-spacing: normal;
}
.mat-body p, .mat-body-1 p, .mat-typography p {
  margin: 0 0 12px;
}
.mat-small, .mat-caption {
  font: 400 12px/20px Roboto, "Helvetica Neue", sans-serif;
  letter-spacing: normal;
}
.mat-display-4, .mat-typography .mat-display-4 {
  font: 300 112px/112px Roboto, "Helvetica Neue", sans-serif;
  letter-spacing: -0.05em;
  margin: 0 0 56px;
}
.mat-display-3, .mat-typography .mat-display-3 {
  font: 400 56px/56px Roboto, "Helvetica Neue", sans-serif;
  letter-spacing: -0.02em;
  margin: 0 0 64px;
}
.mat-display-2, .mat-typography .mat-display-2 {
  font: 400 45px/48px Roboto, "Helvetica Neue", sans-serif;
  letter-spacing: -0.005em;
  margin: 0 0 64px;
}
.mat-display-1, .mat-typography .mat-display-1 {
  font: 400 34px/40px Roboto, "Helvetica Neue", sans-serif;
  letter-spacing: normal;
  margin: 0 0 64px;
}
.mat-bottom-sheet-container {
  font: 400 14px/20px Roboto, "Helvetica Neue", sans-serif;
  letter-spacing: normal;
}
.mat-button, .mat-raised-button, .mat-icon-button, .mat-stroked-button,
.mat-flat-button, .mat-fab, .mat-mini-fab {
  font-family: Roboto, "Helvetica Neue", sans-serif;
  font-size: 14px;
  font-weight: 500;
}
.mat-button-toggle {
  font-family: Roboto, "Helvetica Neue", sans-serif;
}
.mat-card {
  font-family: Roboto, "Helvetica Neue", sans-serif;
}
.mat-card-title {
  font-size: 24px;
  font-weight: 500;
}
.mat-card-header .mat-card-title {
  font-size: 20px;
}
.mat-card-subtitle,
.mat-card-content {
  font-size: 14px;
}
.mat-checkbox {
  font-family: Roboto, "Helvetica Neue", sans-serif;
}
.mat-checkbox-layout .mat-checkbox-label {
  line-height: 24px;
}
.mat-chip {
  font-size: 14px;
  font-weight: 500;
}
.mat-chip .mat-chip-trailing-icon.mat-icon,
.mat-chip .mat-chip-remove.mat-icon {
  font-size: 18px;
}
.mat-table {
  font-family: Roboto, "Helvetica Neue", sans-serif;
}
.mat-header-cell {
  font-size: 12px;
  font-weight: 500;
}
.mat-cell, .mat-footer-cell {
  font-size: 14px;
}
.mat-calendar {
  font-family: Roboto, "Helvetica Neue", sans-serif;
}
.mat-calendar-body {
  font-size: 13px;
}
.mat-calendar-body-label,
.mat-calendar-period-button {
  font-size: 14px;
  font-weight: 500;
}
.mat-calendar-table-header th {
  font-size: 11px;
  font-weight: 400;
}
.mat-dialog-title {
  font: 500 20px/32px Roboto, "Helvetica Neue", sans-serif;
  letter-spacing: normal;
}
.mat-expansion-panel-header {
  font-family: Roboto, "Helvetica Neue", sans-serif;
  font-size: 15px;
  font-weight: 400;
}
.mat-expansion-panel-content {
  font: 400 14px/20px Roboto, "Helvetica Neue", sans-serif;
  letter-spacing: normal;
}
.mat-form-field {
  font-size: inherit;
  font-weight: 400;
  line-height: 1.125;
  font-family: Roboto, "Helvetica Neue", sans-serif;
  letter-spacing: normal;
}
.mat-form-field-wrapper {
  padding-bottom: 1.34375em;
}
.mat-form-field-prefix .mat-icon,
.mat-form-field-suffix .mat-icon {
  font-size: 150%;
  line-height: 1.125;
}
.mat-form-field-prefix .mat-icon-button,
.mat-form-field-suffix .mat-icon-button {
  height: 1.5em;
  width: 1.5em;
}
.mat-form-field-prefix .mat-icon-button .mat-icon,
.mat-form-field-suffix .mat-icon-button .mat-icon {
  height: 1.125em;
  line-height: 1.125;
}
.mat-form-field-infix {
  padding: 0.5em 0;
  border-top: 0.84375em solid transparent;
}
.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,
.mat-form-field-can-float .mat-input-server:focus + .mat-form-field-label-wrapper .mat-form-field-label {
  transform: translateY(-1.34375em) scale(0.75);
  width: 133.3333333333%;
}
.mat-form-field-can-float .mat-input-server[label]:not(:label-shown) + .mat-form-field-label-wrapper .mat-form-field-label {
  transform: translateY(-1.34374em) scale(0.75);
  width: 133.3333433333%;
}
.mat-form-field-label-wrapper {
  top: -0.84375em;
  padding-top: 0.84375em;
}
.mat-form-field-label {
  top: 1.34375em;
}
.mat-form-field-underline {
  bottom: 1.34375em;
}
.mat-form-field-subscript-wrapper {
  font-size: 75%;
  margin-top: 0.6666666667em;
  top: calc(100% - 1.7916666667em);
}
.mat-form-field-appearance-legacy .mat-form-field-wrapper {
  padding-bottom: 1.25em;
}
.mat-form-field-appearance-legacy .mat-form-field-infix {
  padding: 0.4375em 0;
}
.mat-form-field-appearance-legacy.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,
.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server:focus + .mat-form-field-label-wrapper .mat-form-field-label {
  transform: translateY(-1.28125em) scale(0.75) perspective(100px) translateZ(0.001px);
  -ms-transform: translateY(-1.28125em) scale(0.75);
  width: 133.3333333333%;
}
.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-form-field-autofill-control:-webkit-autofill + .mat-form-field-label-wrapper .mat-form-field-label {
  transform: translateY(-1.28125em) scale(0.75) perspective(100px) translateZ(0.00101px);
  -ms-transform: translateY(-1.28124em) scale(0.75);
  width: 133.3333433333%;
}
.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server[label]:not(:label-shown) + .mat-form-field-label-wrapper .mat-form-field-label {
  transform: translateY(-1.28125em) scale(0.75) perspective(100px) translateZ(0.00102px);
  -ms-transform: translateY(-1.28123em) scale(0.75);
  width: 133.3333533333%;
}
.mat-form-field-appearance-legacy .mat-form-field-label {
  top: 1.28125em;
}
.mat-form-field-appearance-legacy .mat-form-field-underline {
  bottom: 1.25em;
}
.mat-form-field-appearance-legacy .mat-form-field-subscript-wrapper {
  margin-top: 0.5416666667em;
  top: calc(100% - 1.6666666667em);
}
@media print {
  .mat-form-field-appearance-legacy.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,
.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server:focus + .mat-form-field-label-wrapper .mat-form-field-label {
    transform: translateY(-1.28122em) scale(0.75);
  }
  .mat-form-field-appearance-legacy.mat-form-field-can-float .mat-form-field-autofill-control:-webkit-autofill + .mat-form-field-label-wrapper .mat-form-field-label {
    transform: translateY(-1.28121em) scale(0.75);
  }
  .mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server[label]:not(:label-shown) + .mat-form-field-label-wrapper .mat-form-field-label {
    transform: translateY(-1.2812em) scale(0.75);
  }
}
.mat-form-field-appearance-fill .mat-form-field-infix {
  padding: 0.25em 0 0.75em 0;
}
.mat-form-field-appearance-fill .mat-form-field-label {
  top: 1.09375em;
  margin-top: -0.5em;
}
.mat-form-field-appearance-fill.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,
.mat-form-field-appearance-fill.mat-form-field-can-float .mat-input-server:focus + .mat-form-field-label-wrapper .mat-form-field-label {
  transform: translateY(-0.59375em) scale(0.75);
  width: 133.3333333333%;
}
.mat-form-field-appearance-fill.mat-form-field-can-float .mat-input-server[label]:not(:label-shown) + .mat-form-field-label-wrapper .mat-form-field-label {
  transform: translateY(-0.59374em) scale(0.75);
  width: 133.3333433333%;
}
.mat-form-field-appearance-outline .mat-form-field-infix {
  padding: 1em 0 1em 0;
}
.mat-form-field-appearance-outline .mat-form-field-label {
  top: 1.84375em;
  margin-top: -0.25em;
}
.mat-form-field-appearance-outline.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,
.mat-form-field-appearance-outline.mat-form-field-can-float .mat-input-server:focus + .mat-form-field-label-wrapper .mat-form-field-label {
  transform: translateY(-1.59375em) scale(0.75);
  width: 133.3333333333%;
}
.mat-form-field-appearance-outline.mat-form-field-can-float .mat-input-server[label]:not(:label-shown) + .mat-form-field-label-wrapper .mat-form-field-label {
  transform: translateY(-1.59374em) scale(0.75);
  width: 133.3333433333%;
}
.mat-grid-tile-header,
.mat-grid-tile-footer {
  font-size: 14px;
}
.mat-grid-tile-header .mat-line,
.mat-grid-tile-footer .mat-line {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: block;
  box-sizing: border-box;
}
.mat-grid-tile-header .mat-line:nth-child(n+2),
.mat-grid-tile-footer .mat-line:nth-child(n+2) {
  font-size: 12px;
}
input.mat-input-element {
  margin-top: -0.0625em;
}
.mat-menu-item {
  font-family: Roboto, "Helvetica Neue", sans-serif;
  font-size: 14px;
  font-weight: 400;
}
.mat-paginator,
.mat-paginator-page-size .mat-select-trigger {
  font-family: Roboto, "Helvetica Neue", sans-serif;
  font-size: 12px;
}
.mat-radio-button {
  font-family: Roboto, "Helvetica Neue", sans-serif;
}
.mat-select {
  font-family: Roboto, "Helvetica Neue", sans-serif;
}
.mat-select-trigger {
  height: 1.125em;
}
.mat-slide-toggle-content {
  font-family: Roboto, "Helvetica Neue", sans-serif;
}
.mat-slider-thumb-label-text {
  font-family: Roboto, "Helvetica Neue", sans-serif;
  font-size: 12px;
  font-weight: 500;
}
.mat-stepper-vertical, .mat-stepper-horizontal {
  font-family: Roboto, "Helvetica Neue", sans-serif;
}
.mat-step-label {
  font-size: 14px;
  font-weight: 400;
}
.mat-step-sub-label-error {
  font-weight: normal;
}
.mat-step-label-error {
  font-size: 14px;
}
.mat-step-label-selected {
  font-size: 14px;
  font-weight: 500;
}
.mat-tab-group {
  font-family: Roboto, "Helvetica Neue", sans-serif;
}
.mat-tab-label, .mat-tab-link {
  font-family: Roboto, "Helvetica Neue", sans-serif;
  font-size: 14px;
  font-weight: 500;
}
.mat-toolbar,
.mat-toolbar h1,
.mat-toolbar h2,
.mat-toolbar h3,
.mat-toolbar h4,
.mat-toolbar h5,
.mat-toolbar h6 {
  font: 500 20px/32px Roboto, "Helvetica Neue", sans-serif;
  letter-spacing: normal;
  margin: 0;
}
.mat-tooltip {
  font-family: Roboto, "Helvetica Neue", sans-serif;
  font-size: 10px;
  padding-top: 6px;
  padding-bottom: 6px;
}
.mat-tooltip-handset {
  font-size: 14px;
  padding-top: 8px;
  padding-bottom: 8px;
}
.mat-list-item {
  font-family: Roboto, "Helvetica Neue", sans-serif;
}
.mat-list-option {
  font-family: Roboto, "Helvetica Neue", sans-serif;
}
.mat-list-base .mat-list-item {
  font-size: 16px;
}
.mat-list-base .mat-list-item .mat-line {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: block;
  box-sizing: border-box;
}
.mat-list-base .mat-list-item .mat-line:nth-child(n+2) {
  font-size: 14px;
}
.mat-list-base .mat-list-option {
  font-size: 16px;
}
.mat-list-base .mat-list-option .mat-line {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: block;
  box-sizing: border-box;
}
.mat-list-base .mat-list-option .mat-line:nth-child(n+2) {
  font-size: 14px;
}
.mat-list-base .mat-subheader {
  font-family: Roboto, "Helvetica Neue", sans-serif;
  font-size: 14px;
  font-weight: 500;
}
.mat-list-base[dense] .mat-list-item {
  font-size: 12px;
}
.mat-list-base[dense] .mat-list-item .mat-line {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: block;
  box-sizing: border-box;
}
.mat-list-base[dense] .mat-list-item .mat-line:nth-child(n+2) {
  font-size: 12px;
}
.mat-list-base[dense] .mat-list-option {
  font-size: 12px;
}
.mat-list-base[dense] .mat-list-option .mat-line {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: block;
  box-sizing: border-box;
}
.mat-list-base[dense] .mat-list-option .mat-line:nth-child(n+2) {
  font-size: 12px;
}
.mat-list-base[dense] .mat-subheader {
  font-family: Roboto, "Helvetica Neue", sans-serif;
  font-size: 12px;
  font-weight: 500;
}
.mat-option {
  font-family: Roboto, "Helvetica Neue", sans-serif;
  font-size: 16px;
}
.mat-optgroup-label {
  font: 500 14px/24px Roboto, "Helvetica Neue", sans-serif;
  letter-spacing: normal;
}
.mat-simple-snackbar {
  font-family: Roboto, "Helvetica Neue", sans-serif;
  font-size: 14px;
}
.mat-simple-snackbar-action {
  line-height: 1;
  font-family: inherit;
  font-size: inherit;
  font-weight: 500;
}
.mat-tree {
  font-family: Roboto, "Helvetica Neue", sans-serif;
}
.mat-tree-node,
.mat-nested-tree-node {
  font-weight: 400;
  font-size: 14px;
}
.mat-ripple {
  overflow: hidden;
  position: relative;
}
.mat-ripple:not(:empty) {
  transform: translateZ(0);
}
.mat-ripple.mat-ripple-unbounded {
  overflow: visible;
}
.mat-ripple-element {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
  transition: opacity, transform 0ms cubic-bezier(0, 0, 0.2, 1);
  transform: scale(0);
}
.cdk-high-contrast-active .mat-ripple-element {
  display: none;
}
.cdk-visually-hidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  outline: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
}
.cdk-overlay-container, .cdk-global-overlay-wrapper {
  pointer-events: none;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}
.cdk-overlay-container {
  position: fixed;
  z-index: 1000;
}
.cdk-overlay-container:empty {
  display: none;
}
.cdk-global-overlay-wrapper {
  display: flex;
  position: absolute;
  z-index: 1000;
}
.cdk-overlay-pane {
  position: absolute;
  pointer-events: auto;
  box-sizing: border-box;
  z-index: 1000;
  display: flex;
  max-width: 100%;
  max-height: 100%;
}
.cdk-overlay-backdrop {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  pointer-events: auto;
  -webkit-tap-highlight-color: transparent;
  transition: opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1);
  opacity: 0;
}
.cdk-overlay-backdrop.cdk-overlay-backdrop-showing {
  opacity: 1;
}
@media screen and (-ms-high-contrast: active) {
  .cdk-overlay-backdrop.cdk-overlay-backdrop-showing {
    opacity: 0.6;
  }
}
.cdk-overlay-dark-backdrop {
  background: rgba(0, 0, 0, 0.32);
}
.cdk-overlay-transparent-backdrop, .cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing {
  opacity: 0;
}
.cdk-overlay-connected-position-bounding-box {
  position: absolute;
  z-index: 1000;
  display: flex;
  flex-direction: column;
  min-width: 1px;
  min-height: 1px;
}
.cdk-global-scrollblock {
  position: fixed;
  width: 100%;
  overflow-y: scroll;
}
@-webkit-keyframes cdk-text-field-autofill-start {
  /*!*/
}
@keyframes cdk-text-field-autofill-start {
  /*!*/
}
@-webkit-keyframes cdk-text-field-autofill-end {
  /*!*/
}
@keyframes cdk-text-field-autofill-end {
  /*!*/
}
.cdk-text-field-autofill-monitored:-webkit-autofill {
  -webkit-animation: cdk-text-field-autofill-start 0s 1ms;
          animation: cdk-text-field-autofill-start 0s 1ms;
}
.cdk-text-field-autofill-monitored:not(:-webkit-autofill) {
  -webkit-animation: cdk-text-field-autofill-end 0s 1ms;
          animation: cdk-text-field-autofill-end 0s 1ms;
}
textarea.cdk-textarea-autosize {
  resize: none;
}
textarea.cdk-textarea-autosize-measuring {
  padding: 2px 0 !important;
  box-sizing: content-box !important;
  height: auto !important;
  overflow: hidden !important;
}
textarea.cdk-textarea-autosize-measuring-firefox {
  padding: 2px 0 !important;
  box-sizing: content-box !important;
  height: 0 !important;
}
.mat-focus-indicator {
  position: relative;
}
.mat-mdc-focus-indicator {
  position: relative;
}
.mat-ripple-element {
  background-color: rgba(0, 0, 0, 0.1);
}
.mat-option {
  color: rgba(0, 0, 0, 0.87);
}
.mat-option:hover:not(.mat-option-disabled), .mat-option:focus:not(.mat-option-disabled) {
  background: rgba(0, 0, 0, 0.04);
}
.mat-option.mat-selected:not(.mat-option-multiple):not(.mat-option-disabled) {
  background: rgba(0, 0, 0, 0.04);
}
.mat-option.mat-active {
  background: rgba(0, 0, 0, 0.04);
  color: rgba(0, 0, 0, 0.87);
}
.mat-option.mat-option-disabled {
  color: rgba(0, 0, 0, 0.38);
}
.mat-primary .mat-option.mat-selected:not(.mat-option-disabled) {
  color: #2c4058;
}
.mat-accent .mat-option.mat-selected:not(.mat-option-disabled) {
  color: #ff4081;
}
.mat-warn .mat-option.mat-selected:not(.mat-option-disabled) {
  color: #f44336;
}
.mat-optgroup-label {
  color: rgba(0, 0, 0, 0.54);
}
.mat-optgroup-disabled .mat-optgroup-label {
  color: rgba(0, 0, 0, 0.38);
}
.mat-pseudo-checkbox {
  color: rgba(0, 0, 0, 0.54);
}
.mat-pseudo-checkbox::after {
  color: #fafafa;
}
.mat-pseudo-checkbox-disabled {
  color: #b0b0b0;
}
.mat-primary .mat-pseudo-checkbox-checked,
.mat-primary .mat-pseudo-checkbox-indeterminate {
  background: #2c4058;
}
.mat-pseudo-checkbox-checked,
.mat-pseudo-checkbox-indeterminate,
.mat-accent .mat-pseudo-checkbox-checked,
.mat-accent .mat-pseudo-checkbox-indeterminate {
  background: #ff4081;
}
.mat-warn .mat-pseudo-checkbox-checked,
.mat-warn .mat-pseudo-checkbox-indeterminate {
  background: #f44336;
}
.mat-pseudo-checkbox-checked.mat-pseudo-checkbox-disabled,
.mat-pseudo-checkbox-indeterminate.mat-pseudo-checkbox-disabled {
  background: #b0b0b0;
}
.mat-app-background {
  background-color: #fafafa;
  color: rgba(0, 0, 0, 0.87);
}
.mat-elevation-z0 {
  box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z1 {
  box-shadow: 0px 2px 1px -1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14), 0px 1px 3px 0px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z2 {
  box-shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z3 {
  box-shadow: 0px 3px 3px -2px rgba(0, 0, 0, 0.2), 0px 3px 4px 0px rgba(0, 0, 0, 0.14), 0px 1px 8px 0px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z4 {
  box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z5 {
  box-shadow: 0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 5px 8px 0px rgba(0, 0, 0, 0.14), 0px 1px 14px 0px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z6 {
  box-shadow: 0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 6px 10px 0px rgba(0, 0, 0, 0.14), 0px 1px 18px 0px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z7 {
  box-shadow: 0px 4px 5px -2px rgba(0, 0, 0, 0.2), 0px 7px 10px 1px rgba(0, 0, 0, 0.14), 0px 2px 16px 1px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z8 {
  box-shadow: 0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z9 {
  box-shadow: 0px 5px 6px -3px rgba(0, 0, 0, 0.2), 0px 9px 12px 1px rgba(0, 0, 0, 0.14), 0px 3px 16px 2px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z10 {
  box-shadow: 0px 6px 6px -3px rgba(0, 0, 0, 0.2), 0px 10px 14px 1px rgba(0, 0, 0, 0.14), 0px 4px 18px 3px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z11 {
  box-shadow: 0px 6px 7px -4px rgba(0, 0, 0, 0.2), 0px 11px 15px 1px rgba(0, 0, 0, 0.14), 0px 4px 20px 3px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z12 {
  box-shadow: 0px 7px 8px -4px rgba(0, 0, 0, 0.2), 0px 12px 17px 2px rgba(0, 0, 0, 0.14), 0px 5px 22px 4px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z13 {
  box-shadow: 0px 7px 8px -4px rgba(0, 0, 0, 0.2), 0px 13px 19px 2px rgba(0, 0, 0, 0.14), 0px 5px 24px 4px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z14 {
  box-shadow: 0px 7px 9px -4px rgba(0, 0, 0, 0.2), 0px 14px 21px 2px rgba(0, 0, 0, 0.14), 0px 5px 26px 4px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z15 {
  box-shadow: 0px 8px 9px -5px rgba(0, 0, 0, 0.2), 0px 15px 22px 2px rgba(0, 0, 0, 0.14), 0px 6px 28px 5px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z16 {
  box-shadow: 0px 8px 10px -5px rgba(0, 0, 0, 0.2), 0px 16px 24px 2px rgba(0, 0, 0, 0.14), 0px 6px 30px 5px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z17 {
  box-shadow: 0px 8px 11px -5px rgba(0, 0, 0, 0.2), 0px 17px 26px 2px rgba(0, 0, 0, 0.14), 0px 6px 32px 5px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z18 {
  box-shadow: 0px 9px 11px -5px rgba(0, 0, 0, 0.2), 0px 18px 28px 2px rgba(0, 0, 0, 0.14), 0px 7px 34px 6px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z19 {
  box-shadow: 0px 9px 12px -6px rgba(0, 0, 0, 0.2), 0px 19px 29px 2px rgba(0, 0, 0, 0.14), 0px 7px 36px 6px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z20 {
  box-shadow: 0px 10px 13px -6px rgba(0, 0, 0, 0.2), 0px 20px 31px 3px rgba(0, 0, 0, 0.14), 0px 8px 38px 7px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z21 {
  box-shadow: 0px 10px 13px -6px rgba(0, 0, 0, 0.2), 0px 21px 33px 3px rgba(0, 0, 0, 0.14), 0px 8px 40px 7px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z22 {
  box-shadow: 0px 10px 14px -6px rgba(0, 0, 0, 0.2), 0px 22px 35px 3px rgba(0, 0, 0, 0.14), 0px 8px 42px 7px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z23 {
  box-shadow: 0px 11px 14px -7px rgba(0, 0, 0, 0.2), 0px 23px 36px 3px rgba(0, 0, 0, 0.14), 0px 9px 44px 8px rgba(0, 0, 0, 0.12);
}
.mat-elevation-z24 {
  box-shadow: 0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12);
}
.mat-theme-loaded-marker {
  display: none;
}
.mat-autocomplete-panel {
  background: white;
  color: rgba(0, 0, 0, 0.87);
}
.mat-autocomplete-panel:not([class*=mat-elevation-z]) {
  box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);
}
.mat-autocomplete-panel .mat-option.mat-selected:not(.mat-active):not(:hover) {
  background: white;
}
.mat-autocomplete-panel .mat-option.mat-selected:not(.mat-active):not(:hover):not(.mat-option-disabled) {
  color: rgba(0, 0, 0, 0.87);
}
.mat-badge-content {
  color: white;
  background: #2c4058;
}
.cdk-high-contrast-active .mat-badge-content {
  outline: solid 1px;
  border-radius: 0;
}
.mat-badge-accent .mat-badge-content {
  background: #ff4081;
  color: white;
}
.mat-badge-warn .mat-badge-content {
  color: white;
  background: #f44336;
}
.mat-badge {
  position: relative;
}
.mat-badge-hidden .mat-badge-content {
  display: none;
}
.mat-badge-disabled .mat-badge-content {
  background: #b9b9b9;
  color: rgba(0, 0, 0, 0.38);
}
.mat-badge-content {
  position: absolute;
  text-align: center;
  display: inline-block;
  border-radius: 50%;
  transition: transform 200ms ease-in-out;
  transform: scale(0.6);
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  pointer-events: none;
}
.ng-animate-disabled .mat-badge-content,
.mat-badge-content._mat-animation-noopable {
  transition: none;
}
.mat-badge-content.mat-badge-active {
  transform: none;
}
.mat-badge-small .mat-badge-content {
  width: 16px;
  height: 16px;
  line-height: 16px;
}
.mat-badge-small.mat-badge-above .mat-badge-content {
  top: -8px;
}
.mat-badge-small.mat-badge-below .mat-badge-content {
  bottom: -8px;
}
.mat-badge-small.mat-badge-before .mat-badge-content {
  left: -16px;
}
[dir=rtl] .mat-badge-small.mat-badge-before .mat-badge-content {
  left: auto;
  right: -16px;
}
.mat-badge-small.mat-badge-after .mat-badge-content {
  right: -16px;
}
[dir=rtl] .mat-badge-small.mat-badge-after .mat-badge-content {
  right: auto;
  left: -16px;
}
.mat-badge-small.mat-badge-overlap.mat-badge-before .mat-badge-content {
  left: -8px;
}
[dir=rtl] .mat-badge-small.mat-badge-overlap.mat-badge-before .mat-badge-content {
  left: auto;
  right: -8px;
}
.mat-badge-small.mat-badge-overlap.mat-badge-after .mat-badge-content {
  right: -8px;
}
[dir=rtl] .mat-badge-small.mat-badge-overlap.mat-badge-after .mat-badge-content {
  right: auto;
  left: -8px;
}
.mat-badge-medium .mat-badge-content {
  width: 22px;
  height: 22px;
  line-height: 22px;
}
.mat-badge-medium.mat-badge-above .mat-badge-content {
  top: -11px;
}
.mat-badge-medium.mat-badge-below .mat-badge-content {
  bottom: -11px;
}
.mat-badge-medium.mat-badge-before .mat-badge-content {
  left: -22px;
}
[dir=rtl] .mat-badge-medium.mat-badge-before .mat-badge-content {
  left: auto;
  right: -22px;
}
.mat-badge-medium.mat-badge-after .mat-badge-content {
  right: -22px;
}
[dir=rtl] .mat-badge-medium.mat-badge-after .mat-badge-content {
  right: auto;
  left: -22px;
}
.mat-badge-medium.mat-badge-overlap.mat-badge-before .mat-badge-content {
  left: -11px;
}
[dir=rtl] .mat-badge-medium.mat-badge-overlap.mat-badge-before .mat-badge-content {
  left: auto;
  right: -11px;
}
.mat-badge-medium.mat-badge-overlap.mat-badge-after .mat-badge-content {
  right: -11px;
}
[dir=rtl] .mat-badge-medium.mat-badge-overlap.mat-badge-after .mat-badge-content {
  right: auto;
  left: -11px;
}
.mat-badge-large .mat-badge-content {
  width: 28px;
  height: 28px;
  line-height: 28px;
}
.mat-badge-large.mat-badge-above .mat-badge-content {
  top: -14px;
}
.mat-badge-large.mat-badge-below .mat-badge-content {
  bottom: -14px;
}
.mat-badge-large.mat-badge-before .mat-badge-content {
  left: -28px;
}
[dir=rtl] .mat-badge-large.mat-badge-before .mat-badge-content {
  left: auto;
  right: -28px;
}
.mat-badge-large.mat-badge-after .mat-badge-content {
  right: -28px;
}
[dir=rtl] .mat-badge-large.mat-badge-after .mat-badge-content {
  right: auto;
  left: -28px;
}
.mat-badge-large.mat-badge-overlap.mat-badge-before .mat-badge-content {
  left: -14px;
}
[dir=rtl] .mat-badge-large.mat-badge-overlap.mat-badge-before .mat-badge-content {
  left: auto;
  right: -14px;
}
.mat-badge-large.mat-badge-overlap.mat-badge-after .mat-badge-content {
  right: -14px;
}
[dir=rtl] .mat-badge-large.mat-badge-overlap.mat-badge-after .mat-badge-content {
  right: auto;
  left: -14px;
}
.mat-bottom-sheet-container {
  box-shadow: 0px 8px 10px -5px rgba(0, 0, 0, 0.2), 0px 16px 24px 2px rgba(0, 0, 0, 0.14), 0px 6px 30px 5px rgba(0, 0, 0, 0.12);
  background: white;
  color: rgba(0, 0, 0, 0.87);
}
.mat-button, .mat-icon-button, .mat-stroked-button {
  color: inherit;
  background: transparent;
}
.mat-button.mat-primary, .mat-icon-button.mat-primary, .mat-stroked-button.mat-primary {
  color: #2c4058;
}
.mat-button.mat-accent, .mat-icon-button.mat-accent, .mat-stroked-button.mat-accent {
  color: #ff4081;
}
.mat-button.mat-warn, .mat-icon-button.mat-warn, .mat-stroked-button.mat-warn {
  color: #f44336;
}
.mat-button.mat-primary.mat-button-disabled, .mat-button.mat-accent.mat-button-disabled, .mat-button.mat-warn.mat-button-disabled, .mat-button.mat-button-disabled.mat-button-disabled, .mat-icon-button.mat-primary.mat-button-disabled, .mat-icon-button.mat-accent.mat-button-disabled, .mat-icon-button.mat-warn.mat-button-disabled, .mat-icon-button.mat-button-disabled.mat-button-disabled, .mat-stroked-button.mat-primary.mat-button-disabled, .mat-stroked-button.mat-accent.mat-button-disabled, .mat-stroked-button.mat-warn.mat-button-disabled, .mat-stroked-button.mat-button-disabled.mat-button-disabled {
  color: rgba(0, 0, 0, 0.26);
}
.mat-button.mat-primary .mat-button-focus-overlay, .mat-icon-button.mat-primary .mat-button-focus-overlay, .mat-stroked-button.mat-primary .mat-button-focus-overlay {
  background-color: #2c4058;
}
.mat-button.mat-accent .mat-button-focus-overlay, .mat-icon-button.mat-accent .mat-button-focus-overlay, .mat-stroked-button.mat-accent .mat-button-focus-overlay {
  background-color: #ff4081;
}
.mat-button.mat-warn .mat-button-focus-overlay, .mat-icon-button.mat-warn .mat-button-focus-overlay, .mat-stroked-button.mat-warn .mat-button-focus-overlay {
  background-color: #f44336;
}
.mat-button.mat-button-disabled .mat-button-focus-overlay, .mat-icon-button.mat-button-disabled .mat-button-focus-overlay, .mat-stroked-button.mat-button-disabled .mat-button-focus-overlay {
  background-color: transparent;
}
.mat-button .mat-ripple-element, .mat-icon-button .mat-ripple-element, .mat-stroked-button .mat-ripple-element {
  opacity: 0.1;
  background-color: currentColor;
}
.mat-button-focus-overlay {
  background: black;
}
.mat-stroked-button:not(.mat-button-disabled) {
  border-color: rgba(0, 0, 0, 0.12);
}
.mat-flat-button, .mat-raised-button, .mat-fab, .mat-mini-fab {
  color: rgba(0, 0, 0, 0.87);
  background-color: white;
}
.mat-flat-button.mat-primary, .mat-raised-button.mat-primary, .mat-fab.mat-primary, .mat-mini-fab.mat-primary {
  color: white;
}
.mat-flat-button.mat-accent, .mat-raised-button.mat-accent, .mat-fab.mat-accent, .mat-mini-fab.mat-accent {
  color: white;
}
.mat-flat-button.mat-warn, .mat-raised-button.mat-warn, .mat-fab.mat-warn, .mat-mini-fab.mat-warn {
  color: white;
}
.mat-flat-button.mat-primary.mat-button-disabled, .mat-flat-button.mat-accent.mat-button-disabled, .mat-flat-button.mat-warn.mat-button-disabled, .mat-flat-button.mat-button-disabled.mat-button-disabled, .mat-raised-button.mat-primary.mat-button-disabled, .mat-raised-button.mat-accent.mat-button-disabled, .mat-raised-button.mat-warn.mat-button-disabled, .mat-raised-button.mat-button-disabled.mat-button-disabled, .mat-fab.mat-primary.mat-button-disabled, .mat-fab.mat-accent.mat-button-disabled, .mat-fab.mat-warn.mat-button-disabled, .mat-fab.mat-button-disabled.mat-button-disabled, .mat-mini-fab.mat-primary.mat-button-disabled, .mat-mini-fab.mat-accent.mat-button-disabled, .mat-mini-fab.mat-warn.mat-button-disabled, .mat-mini-fab.mat-button-disabled.mat-button-disabled {
  color: rgba(0, 0, 0, 0.26);
}
.mat-flat-button.mat-primary, .mat-raised-button.mat-primary, .mat-fab.mat-primary, .mat-mini-fab.mat-primary {
  background-color: #2c4058;
}
.mat-flat-button.mat-accent, .mat-raised-button.mat-accent, .mat-fab.mat-accent, .mat-mini-fab.mat-accent {
  background-color: #ff4081;
}
.mat-flat-button.mat-warn, .mat-raised-button.mat-warn, .mat-fab.mat-warn, .mat-mini-fab.mat-warn {
  background-color: #f44336;
}
.mat-flat-button.mat-primary.mat-button-disabled, .mat-flat-button.mat-accent.mat-button-disabled, .mat-flat-button.mat-warn.mat-button-disabled, .mat-flat-button.mat-button-disabled.mat-button-disabled, .mat-raised-button.mat-primary.mat-button-disabled, .mat-raised-button.mat-accent.mat-button-disabled, .mat-raised-button.mat-warn.mat-button-disabled, .mat-raised-button.mat-button-disabled.mat-button-disabled, .mat-fab.mat-primary.mat-button-disabled, .mat-fab.mat-accent.mat-button-disabled, .mat-fab.mat-warn.mat-button-disabled, .mat-fab.mat-button-disabled.mat-button-disabled, .mat-mini-fab.mat-primary.mat-button-disabled, .mat-mini-fab.mat-accent.mat-button-disabled, .mat-mini-fab.mat-warn.mat-button-disabled, .mat-mini-fab.mat-button-disabled.mat-button-disabled {
  background-color: rgba(0, 0, 0, 0.12);
}
.mat-flat-button.mat-primary .mat-ripple-element, .mat-raised-button.mat-primary .mat-ripple-element, .mat-fab.mat-primary .mat-ripple-element, .mat-mini-fab.mat-primary .mat-ripple-element {
  background-color: rgba(255, 255, 255, 0.1);
}
.mat-flat-button.mat-accent .mat-ripple-element, .mat-raised-button.mat-accent .mat-ripple-element, .mat-fab.mat-accent .mat-ripple-element, .mat-mini-fab.mat-accent .mat-ripple-element {
  background-color: rgba(255, 255, 255, 0.1);
}
.mat-flat-button.mat-warn .mat-ripple-element, .mat-raised-button.mat-warn .mat-ripple-element, .mat-fab.mat-warn .mat-ripple-element, .mat-mini-fab.mat-warn .mat-ripple-element {
  background-color: rgba(255, 255, 255, 0.1);
}
.mat-stroked-button:not([class*=mat-elevation-z]), .mat-flat-button:not([class*=mat-elevation-z]) {
  box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12);
}
.mat-raised-button:not([class*=mat-elevation-z]) {
  box-shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12);
}
.mat-raised-button:not(.mat-button-disabled):active:not([class*=mat-elevation-z]) {
  box-shadow: 0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12);
}
.mat-raised-button.mat-button-disabled:not([class*=mat-elevation-z]) {
  box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12);
}
.mat-fab:not([class*=mat-elevation-z]), .mat-mini-fab:not([class*=mat-elevation-z]) {
  box-shadow: 0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 6px 10px 0px rgba(0, 0, 0, 0.14), 0px 1px 18px 0px rgba(0, 0, 0, 0.12);
}
.mat-fab:not(.mat-button-disabled):active:not([class*=mat-elevation-z]), .mat-mini-fab:not(.mat-button-disabled):active:not([class*=mat-elevation-z]) {
  box-shadow: 0px 7px 8px -4px rgba(0, 0, 0, 0.2), 0px 12px 17px 2px rgba(0, 0, 0, 0.14), 0px 5px 22px 4px rgba(0, 0, 0, 0.12);
}
.mat-fab.mat-button-disabled:not([class*=mat-elevation-z]), .mat-mini-fab.mat-button-disabled:not([class*=mat-elevation-z]) {
  box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12);
}
.mat-button-toggle-standalone,
.mat-button-toggle-group {
  box-shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12);
}
.mat-button-toggle-standalone.mat-button-toggle-appearance-standard,
.mat-button-toggle-group-appearance-standard {
  box-shadow: none;
}
.mat-button-toggle {
  color: rgba(0, 0, 0, 0.38);
}
.mat-button-toggle .mat-button-toggle-focus-overlay {
  background-color: rgba(0, 0, 0, 0.12);
}
.mat-button-toggle-appearance-standard {
  color: rgba(0, 0, 0, 0.87);
  background: white;
}
.mat-button-toggle-appearance-standard .mat-button-toggle-focus-overlay {
  background-color: black;
}
.mat-button-toggle-group-appearance-standard .mat-button-toggle + .mat-button-toggle {
  border-left: solid 1px rgba(0, 0, 0, 0.12);
}
[dir=rtl] .mat-button-toggle-group-appearance-standard .mat-button-toggle + .mat-button-toggle {
  border-left: none;
  border-right: solid 1px rgba(0, 0, 0, 0.12);
}
.mat-button-toggle-group-appearance-standard.mat-button-toggle-vertical .mat-button-toggle + .mat-button-toggle {
  border-left: none;
  border-right: none;
  border-top: solid 1px rgba(0, 0, 0, 0.12);
}
.mat-button-toggle-checked {
  background-color: #e0e0e0;
  color: rgba(0, 0, 0, 0.54);
}
.mat-button-toggle-checked.mat-button-toggle-appearance-standard {
  color: rgba(0, 0, 0, 0.87);
}
.mat-button-toggle-disabled {
  color: rgba(0, 0, 0, 0.26);
  background-color: #eeeeee;
}
.mat-button-toggle-disabled.mat-button-toggle-appearance-standard {
  background: white;
}
.mat-button-toggle-disabled.mat-button-toggle-checked {
  background-color: #bdbdbd;
}
.mat-button-toggle-standalone.mat-button-toggle-appearance-standard,
.mat-button-toggle-group-appearance-standard {
  border: solid 1px rgba(0, 0, 0, 0.12);
}
.mat-button-toggle-appearance-standard .mat-button-toggle-label-content {
  line-height: 48px;
}
.mat-card {
  background: white;
  color: rgba(0, 0, 0, 0.87);
}
.mat-card:not([class*=mat-elevation-z]) {
  box-shadow: 0px 2px 1px -1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14), 0px 1px 3px 0px rgba(0, 0, 0, 0.12);
}
.mat-card.mat-card-flat:not([class*=mat-elevation-z]) {
  box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12);
}
.mat-card-subtitle {
  color: rgba(0, 0, 0, 0.54);
}
.mat-checkbox-frame {
  border-color: rgba(0, 0, 0, 0.54);
}
.mat-checkbox-checkmark {
  fill: #fafafa;
}
.mat-checkbox-checkmark-path {
  stroke: #fafafa !important;
}
.mat-checkbox-mixedmark {
  background-color: #fafafa;
}
.mat-checkbox-indeterminate.mat-primary .mat-checkbox-background, .mat-checkbox-checked.mat-primary .mat-checkbox-background {
  background-color: #2c4058;
}
.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background, .mat-checkbox-checked.mat-accent .mat-checkbox-background {
  background-color: #ff4081;
}
.mat-checkbox-indeterminate.mat-warn .mat-checkbox-background, .mat-checkbox-checked.mat-warn .mat-checkbox-background {
  background-color: #f44336;
}
.mat-checkbox-disabled.mat-checkbox-checked .mat-checkbox-background, .mat-checkbox-disabled.mat-checkbox-indeterminate .mat-checkbox-background {
  background-color: #b0b0b0;
}
.mat-checkbox-disabled:not(.mat-checkbox-checked) .mat-checkbox-frame {
  border-color: #b0b0b0;
}
.mat-checkbox-disabled .mat-checkbox-label {
  color: rgba(0, 0, 0, 0.54);
}
.mat-checkbox .mat-ripple-element {
  background-color: black;
}
.mat-checkbox-checked:not(.mat-checkbox-disabled).mat-primary .mat-ripple-element,
.mat-checkbox:active:not(.mat-checkbox-disabled).mat-primary .mat-ripple-element {
  background: #2c4058;
}
.mat-checkbox-checked:not(.mat-checkbox-disabled).mat-accent .mat-ripple-element,
.mat-checkbox:active:not(.mat-checkbox-disabled).mat-accent .mat-ripple-element {
  background: #ff4081;
}
.mat-checkbox-checked:not(.mat-checkbox-disabled).mat-warn .mat-ripple-element,
.mat-checkbox:active:not(.mat-checkbox-disabled).mat-warn .mat-ripple-element {
  background: #f44336;
}
.mat-chip.mat-standard-chip {
  background-color: #e0e0e0;
  color: rgba(0, 0, 0, 0.87);
}
.mat-chip.mat-standard-chip .mat-chip-remove {
  color: rgba(0, 0, 0, 0.87);
  opacity: 0.4;
}
.mat-chip.mat-standard-chip:not(.mat-chip-disabled):active {
  box-shadow: 0px 3px 3px -2px rgba(0, 0, 0, 0.2), 0px 3px 4px 0px rgba(0, 0, 0, 0.14), 0px 1px 8px 0px rgba(0, 0, 0, 0.12);
}
.mat-chip.mat-standard-chip:not(.mat-chip-disabled) .mat-chip-remove:hover {
  opacity: 0.54;
}
.mat-chip.mat-standard-chip.mat-chip-disabled {
  opacity: 0.4;
}
.mat-chip.mat-standard-chip::after {
  background: black;
}
.mat-chip.mat-standard-chip.mat-chip-selected.mat-primary {
  background-color: #2c4058;
  color: white;
}
.mat-chip.mat-standard-chip.mat-chip-selected.mat-primary .mat-chip-remove {
  color: white;
  opacity: 0.4;
}
.mat-chip.mat-standard-chip.mat-chip-selected.mat-primary .mat-ripple-element {
  background-color: rgba(255, 255, 255, 0.1);
}
.mat-chip.mat-standard-chip.mat-chip-selected.mat-warn {
  background-color: #f44336;
  color: white;
}
.mat-chip.mat-standard-chip.mat-chip-selected.mat-warn .mat-chip-remove {
  color: white;
  opacity: 0.4;
}
.mat-chip.mat-standard-chip.mat-chip-selected.mat-warn .mat-ripple-element {
  background-color: rgba(255, 255, 255, 0.1);
}
.mat-chip.mat-standard-chip.mat-chip-selected.mat-accent {
  background-color: #ff4081;
  color: white;
}
.mat-chip.mat-standard-chip.mat-chip-selected.mat-accent .mat-chip-remove {
  color: white;
  opacity: 0.4;
}
.mat-chip.mat-standard-chip.mat-chip-selected.mat-accent .mat-ripple-element {
  background-color: rgba(255, 255, 255, 0.1);
}
.mat-table {
  background: white;
}
.mat-table thead, .mat-table tbody, .mat-table tfoot,
mat-header-row, mat-row, mat-footer-row,
[mat-header-row], [mat-row], [mat-footer-row],
.mat-table-sticky {
  background: inherit;
}
mat-row, mat-header-row, mat-footer-row,
th.mat-header-cell, td.mat-cell, td.mat-footer-cell {
  border-bottom-color: rgba(0, 0, 0, 0.12);
}
.mat-header-cell {
  color: rgba(0, 0, 0, 0.54);
}
.mat-cell, .mat-footer-cell {
  color: rgba(0, 0, 0, 0.87);
}
.mat-calendar-arrow {
  border-top-color: rgba(0, 0, 0, 0.54);
}
.mat-datepicker-toggle,
.mat-datepicker-content .mat-calendar-next-button,
.mat-datepicker-content .mat-calendar-previous-button {
  color: rgba(0, 0, 0, 0.54);
}
.mat-calendar-table-header {
  color: rgba(0, 0, 0, 0.38);
}
.mat-calendar-table-header-divider::after {
  background: rgba(0, 0, 0, 0.12);
}
.mat-calendar-body-label {
  color: rgba(0, 0, 0, 0.54);
}
.mat-calendar-body-cell-content,
.mat-date-range-input-separator {
  color: rgba(0, 0, 0, 0.87);
  border-color: transparent;
}
.mat-calendar-body-disabled > .mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical) {
  color: rgba(0, 0, 0, 0.38);
}
.mat-form-field-disabled .mat-date-range-input-separator {
  color: rgba(0, 0, 0, 0.38);
}
.mat-calendar-body-in-preview {
  color: rgba(0, 0, 0, 0.24);
}
.mat-calendar-body-today:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical) {
  border-color: rgba(0, 0, 0, 0.38);
}
.mat-calendar-body-disabled > .mat-calendar-body-today:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical) {
  border-color: rgba(0, 0, 0, 0.18);
}
.mat-calendar-body-in-range::before {
  background: rgba(44, 64, 88, 0.2);
}
.mat-calendar-body-comparison-identical,
.mat-calendar-body-in-comparison-range::before {
  background: rgba(249, 171, 0, 0.2);
}
.mat-calendar-body-comparison-bridge-start::before,
[dir=rtl] .mat-calendar-body-comparison-bridge-end::before {
  background: linear-gradient(to right, rgba(44, 64, 88, 0.2) 50%, rgba(249, 171, 0, 0.2) 50%);
}
.mat-calendar-body-comparison-bridge-end::before,
[dir=rtl] .mat-calendar-body-comparison-bridge-start::before {
  background: linear-gradient(to left, rgba(44, 64, 88, 0.2) 50%, rgba(249, 171, 0, 0.2) 50%);
}
.mat-calendar-body-in-range > .mat-calendar-body-comparison-identical,
.mat-calendar-body-in-comparison-range.mat-calendar-body-in-range::after {
  background: #a8dab5;
}
.mat-calendar-body-comparison-identical.mat-calendar-body-selected,
.mat-calendar-body-in-comparison-range > .mat-calendar-body-selected {
  background: #46a35e;
}
.mat-calendar-body-selected {
  background-color: #2c4058;
  color: white;
}
.mat-calendar-body-disabled > .mat-calendar-body-selected {
  background-color: rgba(44, 64, 88, 0.4);
}
.mat-calendar-body-today.mat-calendar-body-selected {
  box-shadow: inset 0 0 0 1px white;
}
.mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover > .mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),
.cdk-keyboard-focused .mat-calendar-body-active > .mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),
.cdk-program-focused .mat-calendar-body-active > .mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical) {
  background-color: rgba(44, 64, 88, 0.3);
}
.mat-datepicker-content {
  box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);
  background-color: white;
  color: rgba(0, 0, 0, 0.87);
}
.mat-datepicker-content.mat-accent .mat-calendar-body-in-range::before {
  background: rgba(255, 64, 129, 0.2);
}
.mat-datepicker-content.mat-accent .mat-calendar-body-comparison-identical,
.mat-datepicker-content.mat-accent .mat-calendar-body-in-comparison-range::before {
  background: rgba(249, 171, 0, 0.2);
}
.mat-datepicker-content.mat-accent .mat-calendar-body-comparison-bridge-start::before,
.mat-datepicker-content.mat-accent [dir=rtl] .mat-calendar-body-comparison-bridge-end::before {
  background: linear-gradient(to right, rgba(255, 64, 129, 0.2) 50%, rgba(249, 171, 0, 0.2) 50%);
}
.mat-datepicker-content.mat-accent .mat-calendar-body-comparison-bridge-end::before,
.mat-datepicker-content.mat-accent [dir=rtl] .mat-calendar-body-comparison-bridge-start::before {
  background: linear-gradient(to left, rgba(255, 64, 129, 0.2) 50%, rgba(249, 171, 0, 0.2) 50%);
}
.mat-datepicker-content.mat-accent .mat-calendar-body-in-range > .mat-calendar-body-comparison-identical,
.mat-datepicker-content.mat-accent .mat-calendar-body-in-comparison-range.mat-calendar-body-in-range::after {
  background: #a8dab5;
}
.mat-datepicker-content.mat-accent .mat-calendar-body-comparison-identical.mat-calendar-body-selected,
.mat-datepicker-content.mat-accent .mat-calendar-body-in-comparison-range > .mat-calendar-body-selected {
  background: #46a35e;
}
.mat-datepicker-content.mat-accent .mat-calendar-body-selected {
  background-color: #ff4081;
  color: white;
}
.mat-datepicker-content.mat-accent .mat-calendar-body-disabled > .mat-calendar-body-selected {
  background-color: rgba(255, 64, 129, 0.4);
}
.mat-datepicker-content.mat-accent .mat-calendar-body-today.mat-calendar-body-selected {
  box-shadow: inset 0 0 0 1px white;
}
.mat-datepicker-content.mat-accent .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover > .mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),
.mat-datepicker-content.mat-accent .cdk-keyboard-focused .mat-calendar-body-active > .mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),
.mat-datepicker-content.mat-accent .cdk-program-focused .mat-calendar-body-active > .mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical) {
  background-color: rgba(255, 64, 129, 0.3);
}
.mat-datepicker-content.mat-warn .mat-calendar-body-in-range::before {
  background: rgba(244, 67, 54, 0.2);
}
.mat-datepicker-content.mat-warn .mat-calendar-body-comparison-identical,
.mat-datepicker-content.mat-warn .mat-calendar-body-in-comparison-range::before {
  background: rgba(249, 171, 0, 0.2);
}
.mat-datepicker-content.mat-warn .mat-calendar-body-comparison-bridge-start::before,
.mat-datepicker-content.mat-warn [dir=rtl] .mat-calendar-body-comparison-bridge-end::before {
  background: linear-gradient(to right, rgba(244, 67, 54, 0.2) 50%, rgba(249, 171, 0, 0.2) 50%);
}
.mat-datepicker-content.mat-warn .mat-calendar-body-comparison-bridge-end::before,
.mat-datepicker-content.mat-warn [dir=rtl] .mat-calendar-body-comparison-bridge-start::before {
  background: linear-gradient(to left, rgba(244, 67, 54, 0.2) 50%, rgba(249, 171, 0, 0.2) 50%);
}
.mat-datepicker-content.mat-warn .mat-calendar-body-in-range > .mat-calendar-body-comparison-identical,
.mat-datepicker-content.mat-warn .mat-calendar-body-in-comparison-range.mat-calendar-body-in-range::after {
  background: #a8dab5;
}
.mat-datepicker-content.mat-warn .mat-calendar-body-comparison-identical.mat-calendar-body-selected,
.mat-datepicker-content.mat-warn .mat-calendar-body-in-comparison-range > .mat-calendar-body-selected {
  background: #46a35e;
}
.mat-datepicker-content.mat-warn .mat-calendar-body-selected {
  background-color: #f44336;
  color: white;
}
.mat-datepicker-content.mat-warn .mat-calendar-body-disabled > .mat-calendar-body-selected {
  background-color: rgba(244, 67, 54, 0.4);
}
.mat-datepicker-content.mat-warn .mat-calendar-body-today.mat-calendar-body-selected {
  box-shadow: inset 0 0 0 1px white;
}
.mat-datepicker-content.mat-warn .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover > .mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),
.mat-datepicker-content.mat-warn .cdk-keyboard-focused .mat-calendar-body-active > .mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical),
.mat-datepicker-content.mat-warn .cdk-program-focused .mat-calendar-body-active > .mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical) {
  background-color: rgba(244, 67, 54, 0.3);
}
.mat-datepicker-content-touch {
  box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12);
}
.mat-datepicker-toggle-active {
  color: #2c4058;
}
.mat-datepicker-toggle-active.mat-accent {
  color: #ff4081;
}
.mat-datepicker-toggle-active.mat-warn {
  color: #f44336;
}
.mat-date-range-input-inner[disabled] {
  color: rgba(0, 0, 0, 0.38);
}
.mat-dialog-container {
  box-shadow: 0px 11px 15px -7px rgba(0, 0, 0, 0.2), 0px 24px 38px 3px rgba(0, 0, 0, 0.14), 0px 9px 46px 8px rgba(0, 0, 0, 0.12);
  background: white;
  color: rgba(0, 0, 0, 0.87);
}
.mat-divider {
  border-top-color: rgba(0, 0, 0, 0.12);
}
.mat-divider-vertical {
  border-right-color: rgba(0, 0, 0, 0.12);
}
.mat-expansion-panel {
  background: white;
  color: rgba(0, 0, 0, 0.87);
}
.mat-expansion-panel:not([class*=mat-elevation-z]) {
  box-shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12);
}
.mat-action-row {
  border-top-color: rgba(0, 0, 0, 0.12);
}
.mat-expansion-panel .mat-expansion-panel-header.cdk-keyboard-focused:not([aria-disabled=true]), .mat-expansion-panel .mat-expansion-panel-header.cdk-program-focused:not([aria-disabled=true]), .mat-expansion-panel:not(.mat-expanded) .mat-expansion-panel-header:hover:not([aria-disabled=true]) {
  background: rgba(0, 0, 0, 0.04);
}
@media (hover: none) {
  .mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover {
    background: white;
  }
}
.mat-expansion-panel-header-title {
  color: rgba(0, 0, 0, 0.87);
}
.mat-expansion-panel-header-description,
.mat-expansion-indicator::after {
  color: rgba(0, 0, 0, 0.54);
}
.mat-expansion-panel-header[aria-disabled=true] {
  color: rgba(0, 0, 0, 0.26);
}
.mat-expansion-panel-header[aria-disabled=true] .mat-expansion-panel-header-title,
.mat-expansion-panel-header[aria-disabled=true] .mat-expansion-panel-header-description {
  color: inherit;
}
.mat-expansion-panel-header {
  height: 48px;
}
.mat-expansion-panel-header.mat-expanded {
  height: 64px;
}
.mat-form-field-label {
  color: rgba(0, 0, 0, 0.6);
}
.mat-hint {
  color: rgba(0, 0, 0, 0.6);
}
.mat-form-field.mat-focused .mat-form-field-label {
  color: #2c4058;
}
.mat-form-field.mat-focused .mat-form-field-label.mat-accent {
  color: #ff4081;
}
.mat-form-field.mat-focused .mat-form-field-label.mat-warn {
  color: #f44336;
}
.mat-focused .mat-form-field-required-marker {
  color: #ff4081;
}
.mat-form-field-ripple {
  background-color: rgba(0, 0, 0, 0.87);
}
.mat-form-field.mat-focused .mat-form-field-ripple {
  background-color: #2c4058;
}
.mat-form-field.mat-focused .mat-form-field-ripple.mat-accent {
  background-color: #ff4081;
}
.mat-form-field.mat-focused .mat-form-field-ripple.mat-warn {
  background-color: #f44336;
}
.mat-form-field-type-mat-native-select.mat-focused:not(.mat-form-field-invalid) .mat-form-field-infix::after {
  color: #2c4058;
}
.mat-form-field-type-mat-native-select.mat-focused:not(.mat-form-field-invalid).mat-accent .mat-form-field-infix::after {
  color: #ff4081;
}
.mat-form-field-type-mat-native-select.mat-focused:not(.mat-form-field-invalid).mat-warn .mat-form-field-infix::after {
  color: #f44336;
}
.mat-form-field.mat-form-field-invalid .mat-form-field-label {
  color: #f44336;
}
.mat-form-field.mat-form-field-invalid .mat-form-field-label.mat-accent,
.mat-form-field.mat-form-field-invalid .mat-form-field-label .mat-form-field-required-marker {
  color: #f44336;
}
.mat-form-field.mat-form-field-invalid .mat-form-field-ripple,
.mat-form-field.mat-form-field-invalid .mat-form-field-ripple.mat-accent {
  background-color: #f44336;
}
.mat-error {
  color: #f44336;
}
.mat-form-field-appearance-legacy .mat-form-field-label {
  color: rgba(0, 0, 0, 0.54);
}
.mat-form-field-appearance-legacy .mat-hint {
  color: rgba(0, 0, 0, 0.54);
}
.mat-form-field-appearance-legacy .mat-form-field-underline {
  background-color: rgba(0, 0, 0, 0.42);
}
.mat-form-field-appearance-legacy.mat-form-field-disabled .mat-form-field-underline {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.42) 0%, rgba(0, 0, 0, 0.42) 33%, transparent 0%);
  background-size: 4px 100%;
  background-repeat: repeat-x;
}
.mat-form-field-appearance-standard .mat-form-field-underline {
  background-color: rgba(0, 0, 0, 0.42);
}
.mat-form-field-appearance-standard.mat-form-field-disabled .mat-form-field-underline {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.42) 0%, rgba(0, 0, 0, 0.42) 33%, transparent 0%);
  background-size: 4px 100%;
  background-repeat: repeat-x;
}
.mat-form-field-appearance-fill .mat-form-field-flex {
  background-color: rgba(0, 0, 0, 0.04);
}
.mat-form-field-appearance-fill.mat-form-field-disabled .mat-form-field-flex {
  background-color: rgba(0, 0, 0, 0.02);
}
.mat-form-field-appearance-fill .mat-form-field-underline::before {
  background-color: rgba(0, 0, 0, 0.42);
}
.mat-form-field-appearance-fill.mat-form-field-disabled .mat-form-field-label {
  color: rgba(0, 0, 0, 0.38);
}
.mat-form-field-appearance-fill.mat-form-field-disabled .mat-form-field-underline::before {
  background-color: transparent;
}
.mat-form-field-appearance-outline .mat-form-field-outline {
  color: rgba(0, 0, 0, 0.12);
}
.mat-form-field-appearance-outline .mat-form-field-outline-thick {
  color: rgba(0, 0, 0, 0.87);
}
.mat-form-field-appearance-outline.mat-focused .mat-form-field-outline-thick {
  color: #2c4058;
}
.mat-form-field-appearance-outline.mat-focused.mat-accent .mat-form-field-outline-thick {
  color: #ff4081;
}
.mat-form-field-appearance-outline.mat-focused.mat-warn .mat-form-field-outline-thick {
  color: #f44336;
}
.mat-form-field-appearance-outline.mat-form-field-invalid.mat-form-field-invalid .mat-form-field-outline-thick {
  color: #f44336;
}
.mat-form-field-appearance-outline.mat-form-field-disabled .mat-form-field-label {
  color: rgba(0, 0, 0, 0.38);
}
.mat-form-field-appearance-outline.mat-form-field-disabled .mat-form-field-outline {
  color: rgba(0, 0, 0, 0.06);
}
.mat-icon.mat-primary {
  color: #2c4058;
}
.mat-icon.mat-accent {
  color: #ff4081;
}
.mat-icon.mat-warn {
  color: #f44336;
}
.mat-form-field-type-mat-native-select .mat-form-field-infix::after {
  color: rgba(0, 0, 0, 0.54);
}
.mat-input-element:disabled,
.mat-form-field-type-mat-native-select.mat-form-field-disabled .mat-form-field-infix::after {
  color: rgba(0, 0, 0, 0.38);
}
.mat-input-element {
  caret-color: #2c4058;
}
.mat-input-element::-moz-placeholder {
  color: rgba(0, 0, 0, 0.42);
}
.mat-input-element:-ms-input-placeholder {
  color: rgba(0, 0, 0, 0.42);
}
.mat-input-element::placeholder {
  color: rgba(0, 0, 0, 0.42);
}
.mat-input-element::-moz-placeholder {
  color: rgba(0, 0, 0, 0.42);
}
.mat-input-element::-webkit-input-placeholder {
  color: rgba(0, 0, 0, 0.42);
}
.mat-input-element:-ms-input-placeholder {
  color: rgba(0, 0, 0, 0.42);
}
.mat-form-field.mat-accent .mat-input-element {
  caret-color: #ff4081;
}
.mat-form-field.mat-warn .mat-input-element,
.mat-form-field-invalid .mat-input-element {
  caret-color: #f44336;
}
.mat-form-field-type-mat-native-select.mat-form-field-invalid .mat-form-field-infix::after {
  color: #f44336;
}
.mat-list-base .mat-list-item {
  color: rgba(0, 0, 0, 0.87);
}
.mat-list-base .mat-list-option {
  color: rgba(0, 0, 0, 0.87);
}
.mat-list-base .mat-subheader {
  color: rgba(0, 0, 0, 0.54);
}
.mat-list-item-disabled {
  background-color: #eeeeee;
}
.mat-list-option:hover, .mat-list-option:focus,
.mat-nav-list .mat-list-item:hover,
.mat-nav-list .mat-list-item:focus,
.mat-action-list .mat-list-item:hover,
.mat-action-list .mat-list-item:focus {
  background: rgba(0, 0, 0, 0.04);
}
.mat-list-single-selected-option, .mat-list-single-selected-option:hover, .mat-list-single-selected-option:focus {
  background: rgba(0, 0, 0, 0.12);
}
.mat-menu-panel {
  background: white;
}
.mat-menu-panel:not([class*=mat-elevation-z]) {
  box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);
}
.mat-menu-item {
  background: transparent;
  color: rgba(0, 0, 0, 0.87);
}
.mat-menu-item[disabled], .mat-menu-item[disabled]::after,
.mat-menu-item[disabled] .mat-icon-no-color {
  color: rgba(0, 0, 0, 0.38);
}
.mat-menu-item .mat-icon-no-color,
.mat-menu-item-submenu-trigger::after {
  color: rgba(0, 0, 0, 0.54);
}
.mat-menu-item:hover:not([disabled]),
.mat-menu-item.cdk-program-focused:not([disabled]),
.mat-menu-item.cdk-keyboard-focused:not([disabled]),
.mat-menu-item-highlighted:not([disabled]) {
  background: rgba(0, 0, 0, 0.04);
}
.mat-paginator {
  background: white;
}
.mat-paginator,
.mat-paginator-page-size .mat-select-trigger {
  color: rgba(0, 0, 0, 0.54);
}
.mat-paginator-decrement,
.mat-paginator-increment {
  border-top: 2px solid rgba(0, 0, 0, 0.54);
  border-right: 2px solid rgba(0, 0, 0, 0.54);
}
.mat-paginator-first,
.mat-paginator-last {
  border-top: 2px solid rgba(0, 0, 0, 0.54);
}
.mat-icon-button[disabled] .mat-paginator-decrement,
.mat-icon-button[disabled] .mat-paginator-increment,
.mat-icon-button[disabled] .mat-paginator-first,
.mat-icon-button[disabled] .mat-paginator-last {
  border-color: rgba(0, 0, 0, 0.38);
}
.mat-paginator-container {
  min-height: 56px;
}
.mat-progress-bar-background {
  fill: #bbdefb;
}
.mat-progress-bar-buffer {
  background-color: #bbdefb;
}
.mat-progress-bar-fill::after {
  background-color: #2c4058;
}
.mat-progress-bar.mat-accent .mat-progress-bar-background {
  fill: #ff80ab;
}
.mat-progress-bar.mat-accent .mat-progress-bar-buffer {
  background-color: #ff80ab;
}
.mat-progress-bar.mat-accent .mat-progress-bar-fill::after {
  background-color: #ff4081;
}
.mat-progress-bar.mat-warn .mat-progress-bar-background {
  fill: #ffcdd2;
}
.mat-progress-bar.mat-warn .mat-progress-bar-buffer {
  background-color: #ffcdd2;
}
.mat-progress-bar.mat-warn .mat-progress-bar-fill::after {
  background-color: #f44336;
}
.mat-progress-spinner circle, .mat-spinner circle {
  stroke: #2c4058;
}
.mat-progress-spinner.mat-accent circle, .mat-spinner.mat-accent circle {
  stroke: #ff4081;
}
.mat-progress-spinner.mat-warn circle, .mat-spinner.mat-warn circle {
  stroke: #f44336;
}
.mat-radio-outer-circle {
  border-color: rgba(0, 0, 0, 0.54);
}
.mat-radio-button.mat-primary.mat-radio-checked .mat-radio-outer-circle {
  border-color: #2c4058;
}
.mat-radio-button.mat-primary .mat-radio-inner-circle,
.mat-radio-button.mat-primary .mat-radio-ripple .mat-ripple-element:not(.mat-radio-persistent-ripple), .mat-radio-button.mat-primary.mat-radio-checked .mat-radio-persistent-ripple, .mat-radio-button.mat-primary:active .mat-radio-persistent-ripple {
  background-color: #2c4058;
}
.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-outer-circle {
  border-color: #ff4081;
}
.mat-radio-button.mat-accent .mat-radio-inner-circle,
.mat-radio-button.mat-accent .mat-radio-ripple .mat-ripple-element:not(.mat-radio-persistent-ripple), .mat-radio-button.mat-accent.mat-radio-checked .mat-radio-persistent-ripple, .mat-radio-button.mat-accent:active .mat-radio-persistent-ripple {
  background-color: #ff4081;
}
.mat-radio-button.mat-warn.mat-radio-checked .mat-radio-outer-circle {
  border-color: #f44336;
}
.mat-radio-button.mat-warn .mat-radio-inner-circle,
.mat-radio-button.mat-warn .mat-radio-ripple .mat-ripple-element:not(.mat-radio-persistent-ripple), .mat-radio-button.mat-warn.mat-radio-checked .mat-radio-persistent-ripple, .mat-radio-button.mat-warn:active .mat-radio-persistent-ripple {
  background-color: #f44336;
}
.mat-radio-button.mat-radio-disabled.mat-radio-checked .mat-radio-outer-circle,
.mat-radio-button.mat-radio-disabled .mat-radio-outer-circle {
  border-color: rgba(0, 0, 0, 0.38);
}
.mat-radio-button.mat-radio-disabled .mat-radio-ripple .mat-ripple-element,
.mat-radio-button.mat-radio-disabled .mat-radio-inner-circle {
  background-color: rgba(0, 0, 0, 0.38);
}
.mat-radio-button.mat-radio-disabled .mat-radio-label-content {
  color: rgba(0, 0, 0, 0.38);
}
.mat-radio-button .mat-ripple-element {
  background-color: black;
}
.mat-select-value {
  color: rgba(0, 0, 0, 0.87);
}
.mat-select-placeholder {
  color: rgba(0, 0, 0, 0.42);
}
.mat-select-disabled .mat-select-value {
  color: rgba(0, 0, 0, 0.38);
}
.mat-select-arrow {
  color: rgba(0, 0, 0, 0.54);
}
.mat-select-panel {
  background: white;
}
.mat-select-panel:not([class*=mat-elevation-z]) {
  box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);
}
.mat-select-panel .mat-option.mat-selected:not(.mat-option-multiple) {
  background: rgba(0, 0, 0, 0.12);
}
.mat-form-field.mat-focused.mat-primary .mat-select-arrow {
  color: #2c4058;
}
.mat-form-field.mat-focused.mat-accent .mat-select-arrow {
  color: #ff4081;
}
.mat-form-field.mat-focused.mat-warn .mat-select-arrow {
  color: #f44336;
}
.mat-form-field .mat-select.mat-select-invalid .mat-select-arrow {
  color: #f44336;
}
.mat-form-field .mat-select.mat-select-disabled .mat-select-arrow {
  color: rgba(0, 0, 0, 0.38);
}
.mat-drawer-container {
  background-color: #fafafa;
  color: rgba(0, 0, 0, 0.87);
}
.mat-drawer {
  background-color: white;
  color: rgba(0, 0, 0, 0.87);
}
.mat-drawer.mat-drawer-push {
  background-color: white;
}
.mat-drawer:not(.mat-drawer-side) {
  box-shadow: 0px 8px 10px -5px rgba(0, 0, 0, 0.2), 0px 16px 24px 2px rgba(0, 0, 0, 0.14), 0px 6px 30px 5px rgba(0, 0, 0, 0.12);
}
.mat-drawer-side {
  border-right: solid 1px rgba(0, 0, 0, 0.12);
}
.mat-drawer-side.mat-drawer-end {
  border-left: solid 1px rgba(0, 0, 0, 0.12);
  border-right: none;
}
[dir=rtl] .mat-drawer-side {
  border-left: solid 1px rgba(0, 0, 0, 0.12);
  border-right: none;
}
[dir=rtl] .mat-drawer-side.mat-drawer-end {
  border-left: none;
  border-right: solid 1px rgba(0, 0, 0, 0.12);
}
.mat-drawer-backdrop.mat-drawer-shown {
  background-color: rgba(0, 0, 0, 0.6);
}
.mat-slide-toggle.mat-checked .mat-slide-toggle-thumb {
  background-color: #ff4081;
}
.mat-slide-toggle.mat-checked .mat-slide-toggle-bar {
  background-color: rgba(255, 64, 129, 0.54);
}
.mat-slide-toggle.mat-checked .mat-ripple-element {
  background-color: #ff4081;
}
.mat-slide-toggle.mat-primary.mat-checked .mat-slide-toggle-thumb {
  background-color: #2c4058;
}
.mat-slide-toggle.mat-primary.mat-checked .mat-slide-toggle-bar {
  background-color: rgba(44, 64, 88, 0.54);
}
.mat-slide-toggle.mat-primary.mat-checked .mat-ripple-element {
  background-color: #2c4058;
}
.mat-slide-toggle.mat-warn.mat-checked .mat-slide-toggle-thumb {
  background-color: #f44336;
}
.mat-slide-toggle.mat-warn.mat-checked .mat-slide-toggle-bar {
  background-color: rgba(244, 67, 54, 0.54);
}
.mat-slide-toggle.mat-warn.mat-checked .mat-ripple-element {
  background-color: #f44336;
}
.mat-slide-toggle:not(.mat-checked) .mat-ripple-element {
  background-color: black;
}
.mat-slide-toggle-thumb {
  box-shadow: 0px 2px 1px -1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14), 0px 1px 3px 0px rgba(0, 0, 0, 0.12);
  background-color: #fafafa;
}
.mat-slide-toggle-bar {
  background-color: rgba(0, 0, 0, 0.38);
}
.mat-slider-track-background {
  background-color: rgba(0, 0, 0, 0.26);
}
.mat-primary .mat-slider-track-fill,
.mat-primary .mat-slider-thumb,
.mat-primary .mat-slider-thumb-label {
  background-color: #2c4058;
}
.mat-primary .mat-slider-thumb-label-text {
  color: white;
}
.mat-primary .mat-slider-focus-ring {
  background-color: rgba(44, 64, 88, 0.2);
}
.mat-accent .mat-slider-track-fill,
.mat-accent .mat-slider-thumb,
.mat-accent .mat-slider-thumb-label {
  background-color: #ff4081;
}
.mat-accent .mat-slider-thumb-label-text {
  color: white;
}
.mat-accent .mat-slider-focus-ring {
  background-color: rgba(255, 64, 129, 0.2);
}
.mat-warn .mat-slider-track-fill,
.mat-warn .mat-slider-thumb,
.mat-warn .mat-slider-thumb-label {
  background-color: #f44336;
}
.mat-warn .mat-slider-thumb-label-text {
  color: white;
}
.mat-warn .mat-slider-focus-ring {
  background-color: rgba(244, 67, 54, 0.2);
}
.mat-slider:hover .mat-slider-track-background,
.cdk-focused .mat-slider-track-background {
  background-color: rgba(0, 0, 0, 0.38);
}
.mat-slider-disabled .mat-slider-track-background,
.mat-slider-disabled .mat-slider-track-fill,
.mat-slider-disabled .mat-slider-thumb {
  background-color: rgba(0, 0, 0, 0.26);
}
.mat-slider-disabled:hover .mat-slider-track-background {
  background-color: rgba(0, 0, 0, 0.26);
}
.mat-slider-min-value .mat-slider-focus-ring {
  background-color: rgba(0, 0, 0, 0.12);
}
.mat-slider-min-value.mat-slider-thumb-label-showing .mat-slider-thumb,
.mat-slider-min-value.mat-slider-thumb-label-showing .mat-slider-thumb-label {
  background-color: rgba(0, 0, 0, 0.87);
}
.mat-slider-min-value.mat-slider-thumb-label-showing.cdk-focused .mat-slider-thumb,
.mat-slider-min-value.mat-slider-thumb-label-showing.cdk-focused .mat-slider-thumb-label {
  background-color: rgba(0, 0, 0, 0.26);
}
.mat-slider-min-value:not(.mat-slider-thumb-label-showing) .mat-slider-thumb {
  border-color: rgba(0, 0, 0, 0.26);
  background-color: transparent;
}
.mat-slider-min-value:not(.mat-slider-thumb-label-showing):hover .mat-slider-thumb, .mat-slider-min-value:not(.mat-slider-thumb-label-showing).cdk-focused .mat-slider-thumb {
  border-color: rgba(0, 0, 0, 0.38);
}
.mat-slider-min-value:not(.mat-slider-thumb-label-showing):hover.mat-slider-disabled .mat-slider-thumb, .mat-slider-min-value:not(.mat-slider-thumb-label-showing).cdk-focused.mat-slider-disabled .mat-slider-thumb {
  border-color: rgba(0, 0, 0, 0.26);
}
.mat-slider-has-ticks .mat-slider-wrapper::after {
  border-color: rgba(0, 0, 0, 0.7);
}
.mat-slider-horizontal .mat-slider-ticks {
  background-image: repeating-linear-gradient(to right, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.7) 2px, transparent 0, transparent);
  background-image: -moz-repeating-linear-gradient(0.0001deg, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.7) 2px, transparent 0, transparent);
}
.mat-slider-vertical .mat-slider-ticks {
  background-image: repeating-linear-gradient(to bottom, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.7) 2px, transparent 0, transparent);
}
.mat-step-header.cdk-keyboard-focused, .mat-step-header.cdk-program-focused, .mat-step-header:hover {
  background-color: rgba(0, 0, 0, 0.04);
}
@media (hover: none) {
  .mat-step-header:hover {
    background: none;
  }
}
.mat-step-header .mat-step-label,
.mat-step-header .mat-step-optional {
  color: rgba(0, 0, 0, 0.54);
}
.mat-step-header .mat-step-icon {
  background-color: rgba(0, 0, 0, 0.54);
  color: white;
}
.mat-step-header .mat-step-icon-selected,
.mat-step-header .mat-step-icon-state-done,
.mat-step-header .mat-step-icon-state-edit {
  background-color: #2c4058;
  color: white;
}
.mat-step-header.mat-accent .mat-step-icon {
  color: white;
}
.mat-step-header.mat-accent .mat-step-icon-selected,
.mat-step-header.mat-accent .mat-step-icon-state-done,
.mat-step-header.mat-accent .mat-step-icon-state-edit {
  background-color: #ff4081;
  color: white;
}
.mat-step-header.mat-warn .mat-step-icon {
  color: white;
}
.mat-step-header.mat-warn .mat-step-icon-selected,
.mat-step-header.mat-warn .mat-step-icon-state-done,
.mat-step-header.mat-warn .mat-step-icon-state-edit {
  background-color: #f44336;
  color: white;
}
.mat-step-header .mat-step-icon-state-error {
  background-color: transparent;
  color: #f44336;
}
.mat-step-header .mat-step-label.mat-step-label-active {
  color: rgba(0, 0, 0, 0.87);
}
.mat-step-header .mat-step-label.mat-step-label-error {
  color: #f44336;
}
.mat-stepper-horizontal, .mat-stepper-vertical {
  background-color: white;
}
.mat-stepper-vertical-line::before {
  border-left-color: rgba(0, 0, 0, 0.12);
}
.mat-horizontal-stepper-header::before,
.mat-horizontal-stepper-header::after,
.mat-stepper-horizontal-line {
  border-top-color: rgba(0, 0, 0, 0.12);
}
.mat-horizontal-stepper-header {
  height: 72px;
}
.mat-stepper-label-position-bottom .mat-horizontal-stepper-header,
.mat-vertical-stepper-header {
  padding: 24px 24px;
}
.mat-stepper-vertical-line::before {
  top: -16px;
  bottom: -16px;
}
.mat-stepper-label-position-bottom .mat-horizontal-stepper-header::after, .mat-stepper-label-position-bottom .mat-horizontal-stepper-header::before {
  top: 36px;
}
.mat-stepper-label-position-bottom .mat-stepper-horizontal-line {
  top: 36px;
}
.mat-sort-header-arrow {
  color: #757575;
}
.mat-tab-nav-bar,
.mat-tab-header {
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}
.mat-tab-group-inverted-header .mat-tab-nav-bar,
.mat-tab-group-inverted-header .mat-tab-header {
  border-top: 1px solid rgba(0, 0, 0, 0.12);
  border-bottom: none;
}
.mat-tab-label, .mat-tab-link {
  color: rgba(0, 0, 0, 0.87);
}
.mat-tab-label.mat-tab-disabled, .mat-tab-link.mat-tab-disabled {
  color: rgba(0, 0, 0, 0.38);
}
.mat-tab-header-pagination-chevron {
  border-color: rgba(0, 0, 0, 0.87);
}
.mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron {
  border-color: rgba(0, 0, 0, 0.38);
}
.mat-tab-group[class*=mat-background-] .mat-tab-header,
.mat-tab-nav-bar[class*=mat-background-] {
  border-bottom: none;
  border-top: none;
}
.mat-tab-group.mat-primary .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled), .mat-tab-group.mat-primary .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),
.mat-tab-group.mat-primary .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),
.mat-tab-group.mat-primary .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled), .mat-tab-nav-bar.mat-primary .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled), .mat-tab-nav-bar.mat-primary .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),
.mat-tab-nav-bar.mat-primary .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),
.mat-tab-nav-bar.mat-primary .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled) {
  background-color: rgba(187, 222, 251, 0.3);
}
.mat-tab-group.mat-primary .mat-ink-bar, .mat-tab-nav-bar.mat-primary .mat-ink-bar {
  background-color: #2c4058;
}
.mat-tab-group.mat-primary.mat-background-primary > .mat-tab-header .mat-ink-bar, .mat-tab-group.mat-primary.mat-background-primary > .mat-tab-link-container .mat-ink-bar, .mat-tab-nav-bar.mat-primary.mat-background-primary > .mat-tab-header .mat-ink-bar, .mat-tab-nav-bar.mat-primary.mat-background-primary > .mat-tab-link-container .mat-ink-bar {
  background-color: white;
}
.mat-tab-group.mat-accent .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled), .mat-tab-group.mat-accent .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),
.mat-tab-group.mat-accent .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),
.mat-tab-group.mat-accent .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled), .mat-tab-nav-bar.mat-accent .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled), .mat-tab-nav-bar.mat-accent .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),
.mat-tab-nav-bar.mat-accent .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),
.mat-tab-nav-bar.mat-accent .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled) {
  background-color: rgba(255, 128, 171, 0.3);
}
.mat-tab-group.mat-accent .mat-ink-bar, .mat-tab-nav-bar.mat-accent .mat-ink-bar {
  background-color: #ff4081;
}
.mat-tab-group.mat-accent.mat-background-accent > .mat-tab-header .mat-ink-bar, .mat-tab-group.mat-accent.mat-background-accent > .mat-tab-link-container .mat-ink-bar, .mat-tab-nav-bar.mat-accent.mat-background-accent > .mat-tab-header .mat-ink-bar, .mat-tab-nav-bar.mat-accent.mat-background-accent > .mat-tab-link-container .mat-ink-bar {
  background-color: white;
}
.mat-tab-group.mat-warn .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled), .mat-tab-group.mat-warn .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),
.mat-tab-group.mat-warn .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),
.mat-tab-group.mat-warn .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled), .mat-tab-nav-bar.mat-warn .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled), .mat-tab-nav-bar.mat-warn .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),
.mat-tab-nav-bar.mat-warn .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),
.mat-tab-nav-bar.mat-warn .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled) {
  background-color: rgba(255, 205, 210, 0.3);
}
.mat-tab-group.mat-warn .mat-ink-bar, .mat-tab-nav-bar.mat-warn .mat-ink-bar {
  background-color: #f44336;
}
.mat-tab-group.mat-warn.mat-background-warn > .mat-tab-header .mat-ink-bar, .mat-tab-group.mat-warn.mat-background-warn > .mat-tab-link-container .mat-ink-bar, .mat-tab-nav-bar.mat-warn.mat-background-warn > .mat-tab-header .mat-ink-bar, .mat-tab-nav-bar.mat-warn.mat-background-warn > .mat-tab-link-container .mat-ink-bar {
  background-color: white;
}
.mat-tab-group.mat-background-primary .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled), .mat-tab-group.mat-background-primary .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),
.mat-tab-group.mat-background-primary .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),
.mat-tab-group.mat-background-primary .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled), .mat-tab-nav-bar.mat-background-primary .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled), .mat-tab-nav-bar.mat-background-primary .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),
.mat-tab-nav-bar.mat-background-primary .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),
.mat-tab-nav-bar.mat-background-primary .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled) {
  background-color: rgba(187, 222, 251, 0.3);
}
.mat-tab-group.mat-background-primary > .mat-tab-header, .mat-tab-group.mat-background-primary > .mat-tab-link-container, .mat-tab-group.mat-background-primary > .mat-tab-header-pagination, .mat-tab-nav-bar.mat-background-primary > .mat-tab-header, .mat-tab-nav-bar.mat-background-primary > .mat-tab-link-container, .mat-tab-nav-bar.mat-background-primary > .mat-tab-header-pagination {
  background-color: #2c4058;
}
.mat-tab-group.mat-background-primary > .mat-tab-header .mat-tab-label, .mat-tab-group.mat-background-primary > .mat-tab-link-container .mat-tab-link, .mat-tab-nav-bar.mat-background-primary > .mat-tab-header .mat-tab-label, .mat-tab-nav-bar.mat-background-primary > .mat-tab-link-container .mat-tab-link {
  color: white;
}
.mat-tab-group.mat-background-primary > .mat-tab-header .mat-tab-label.mat-tab-disabled, .mat-tab-group.mat-background-primary > .mat-tab-link-container .mat-tab-link.mat-tab-disabled, .mat-tab-nav-bar.mat-background-primary > .mat-tab-header .mat-tab-label.mat-tab-disabled, .mat-tab-nav-bar.mat-background-primary > .mat-tab-link-container .mat-tab-link.mat-tab-disabled {
  color: rgba(255, 255, 255, 0.4);
}
.mat-tab-group.mat-background-primary > .mat-tab-header-pagination .mat-tab-header-pagination-chevron, .mat-tab-nav-bar.mat-background-primary > .mat-tab-header-pagination .mat-tab-header-pagination-chevron {
  border-color: white;
}
.mat-tab-group.mat-background-primary > .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron, .mat-tab-nav-bar.mat-background-primary > .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron {
  border-color: rgba(255, 255, 255, 0.4);
}
.mat-tab-group.mat-background-primary > .mat-tab-header .mat-ripple-element,
.mat-tab-group.mat-background-primary > .mat-tab-link-container .mat-ripple-element, .mat-tab-nav-bar.mat-background-primary > .mat-tab-header .mat-ripple-element,
.mat-tab-nav-bar.mat-background-primary > .mat-tab-link-container .mat-ripple-element {
  background-color: rgba(255, 255, 255, 0.12);
}
.mat-tab-group.mat-background-accent .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled), .mat-tab-group.mat-background-accent .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),
.mat-tab-group.mat-background-accent .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),
.mat-tab-group.mat-background-accent .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled), .mat-tab-nav-bar.mat-background-accent .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled), .mat-tab-nav-bar.mat-background-accent .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),
.mat-tab-nav-bar.mat-background-accent .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),
.mat-tab-nav-bar.mat-background-accent .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled) {
  background-color: rgba(255, 128, 171, 0.3);
}
.mat-tab-group.mat-background-accent > .mat-tab-header, .mat-tab-group.mat-background-accent > .mat-tab-link-container, .mat-tab-group.mat-background-accent > .mat-tab-header-pagination, .mat-tab-nav-bar.mat-background-accent > .mat-tab-header, .mat-tab-nav-bar.mat-background-accent > .mat-tab-link-container, .mat-tab-nav-bar.mat-background-accent > .mat-tab-header-pagination {
  background-color: #ff4081;
}
.mat-tab-group.mat-background-accent > .mat-tab-header .mat-tab-label, .mat-tab-group.mat-background-accent > .mat-tab-link-container .mat-tab-link, .mat-tab-nav-bar.mat-background-accent > .mat-tab-header .mat-tab-label, .mat-tab-nav-bar.mat-background-accent > .mat-tab-link-container .mat-tab-link {
  color: white;
}
.mat-tab-group.mat-background-accent > .mat-tab-header .mat-tab-label.mat-tab-disabled, .mat-tab-group.mat-background-accent > .mat-tab-link-container .mat-tab-link.mat-tab-disabled, .mat-tab-nav-bar.mat-background-accent > .mat-tab-header .mat-tab-label.mat-tab-disabled, .mat-tab-nav-bar.mat-background-accent > .mat-tab-link-container .mat-tab-link.mat-tab-disabled {
  color: rgba(255, 255, 255, 0.4);
}
.mat-tab-group.mat-background-accent > .mat-tab-header-pagination .mat-tab-header-pagination-chevron, .mat-tab-nav-bar.mat-background-accent > .mat-tab-header-pagination .mat-tab-header-pagination-chevron {
  border-color: white;
}
.mat-tab-group.mat-background-accent > .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron, .mat-tab-nav-bar.mat-background-accent > .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron {
  border-color: rgba(255, 255, 255, 0.4);
}
.mat-tab-group.mat-background-accent > .mat-tab-header .mat-ripple-element,
.mat-tab-group.mat-background-accent > .mat-tab-link-container .mat-ripple-element, .mat-tab-nav-bar.mat-background-accent > .mat-tab-header .mat-ripple-element,
.mat-tab-nav-bar.mat-background-accent > .mat-tab-link-container .mat-ripple-element {
  background-color: rgba(255, 255, 255, 0.12);
}
.mat-tab-group.mat-background-warn .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled), .mat-tab-group.mat-background-warn .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),
.mat-tab-group.mat-background-warn .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),
.mat-tab-group.mat-background-warn .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled), .mat-tab-nav-bar.mat-background-warn .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled), .mat-tab-nav-bar.mat-background-warn .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),
.mat-tab-nav-bar.mat-background-warn .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),
.mat-tab-nav-bar.mat-background-warn .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled) {
  background-color: rgba(255, 205, 210, 0.3);
}
.mat-tab-group.mat-background-warn > .mat-tab-header, .mat-tab-group.mat-background-warn > .mat-tab-link-container, .mat-tab-group.mat-background-warn > .mat-tab-header-pagination, .mat-tab-nav-bar.mat-background-warn > .mat-tab-header, .mat-tab-nav-bar.mat-background-warn > .mat-tab-link-container, .mat-tab-nav-bar.mat-background-warn > .mat-tab-header-pagination {
  background-color: #f44336;
}
.mat-tab-group.mat-background-warn > .mat-tab-header .mat-tab-label, .mat-tab-group.mat-background-warn > .mat-tab-link-container .mat-tab-link, .mat-tab-nav-bar.mat-background-warn > .mat-tab-header .mat-tab-label, .mat-tab-nav-bar.mat-background-warn > .mat-tab-link-container .mat-tab-link {
  color: white;
}
.mat-tab-group.mat-background-warn > .mat-tab-header .mat-tab-label.mat-tab-disabled, .mat-tab-group.mat-background-warn > .mat-tab-link-container .mat-tab-link.mat-tab-disabled, .mat-tab-nav-bar.mat-background-warn > .mat-tab-header .mat-tab-label.mat-tab-disabled, .mat-tab-nav-bar.mat-background-warn > .mat-tab-link-container .mat-tab-link.mat-tab-disabled {
  color: rgba(255, 255, 255, 0.4);
}
.mat-tab-group.mat-background-warn > .mat-tab-header-pagination .mat-tab-header-pagination-chevron, .mat-tab-nav-bar.mat-background-warn > .mat-tab-header-pagination .mat-tab-header-pagination-chevron {
  border-color: white;
}
.mat-tab-group.mat-background-warn > .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron, .mat-tab-nav-bar.mat-background-warn > .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron {
  border-color: rgba(255, 255, 255, 0.4);
}
.mat-tab-group.mat-background-warn > .mat-tab-header .mat-ripple-element,
.mat-tab-group.mat-background-warn > .mat-tab-link-container .mat-ripple-element, .mat-tab-nav-bar.mat-background-warn > .mat-tab-header .mat-ripple-element,
.mat-tab-nav-bar.mat-background-warn > .mat-tab-link-container .mat-ripple-element {
  background-color: rgba(255, 255, 255, 0.12);
}
.mat-toolbar {
  background: whitesmoke;
  color: rgba(0, 0, 0, 0.87);
}
.mat-toolbar.mat-primary {
  background: #2c4058;
  color: white;
}
.mat-toolbar.mat-accent {
  background: #ff4081;
  color: white;
}
.mat-toolbar.mat-warn {
  background: #f44336;
  color: white;
}
.mat-toolbar .mat-form-field-underline,
.mat-toolbar .mat-form-field-ripple,
.mat-toolbar .mat-focused .mat-form-field-ripple {
  background-color: currentColor;
}
.mat-toolbar .mat-form-field-label,
.mat-toolbar .mat-focused .mat-form-field-label,
.mat-toolbar .mat-select-value,
.mat-toolbar .mat-select-arrow,
.mat-toolbar .mat-form-field.mat-focused .mat-select-arrow {
  color: inherit;
}
.mat-toolbar .mat-input-element {
  caret-color: currentColor;
}
.mat-toolbar-multiple-rows {
  min-height: 64px;
}
.mat-toolbar-row, .mat-toolbar-single-row {
  height: 64px;
}
@media (max-width: 599px) {
  .mat-toolbar-multiple-rows {
    min-height: 56px;
  }

  .mat-toolbar-row, .mat-toolbar-single-row {
    height: 56px;
  }
}
.mat-tooltip {
  background: rgba(97, 97, 97, 0.9);
}
.mat-tree {
  background: white;
}
.mat-tree-node,
.mat-nested-tree-node {
  color: rgba(0, 0, 0, 0.87);
}
.mat-tree-node {
  min-height: 48px;
}
.mat-snack-bar-container {
  color: rgba(255, 255, 255, 0.7);
  background: #323232;
  box-shadow: 0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 6px 10px 0px rgba(0, 0, 0, 0.14), 0px 1px 18px 0px rgba(0, 0, 0, 0.12);
}
.mat-simple-snackbar-action {
  color: #ff4081;
}
/*
 * Order matters here.
 * The rem unit scales relative to the main html font-size.
 * 16px is the standard base size.
 */
html {
  color: #222222;
  background-color: #FFFFFF;
  font-size: 16px;
}
/* *************** Scaling ****************** */
@media only screen and (max-width: 1500px) {
  html {
    font-size: 14px;
  }
}
@media only screen and (max-width: 1000px) {
  html {
    font-size: 12px;
  }
}
@media only screen and (max-width: 768px) {
  html {
    font-size: 10px;
  }
}
@media only screen and (max-width: 600px) {
  html {
    font-size: 8px;
  }
}
@media only screen and (max-width: 500px) {
  html {
    font-size: 7px;
  }
}
@media only screen and (max-width: 400px) {
  html {
    font-size: 6px;
  }
}
@media only screen and (max-width: 300px) {
  html {
    font-size: 5px;
  }
}
/* ************************************************** */
/* Work Sans Start --------------------------------------  */
.work-sans-light {
  font-family: work-sans, sans-serif;
  font-weight: 300;
  font-style: normal;
}
.work-sans-regular {
  font-family: work-sans, sans-serif;
  font-weight: 400;
  font-style: normal;
}
.work-sans-medium {
  font-family: work-sans, sans-serif;
  font-weight: 500;
  font-style: normal;
}
.work-sans-semi-bold {
  font-family: work-sans, sans-serif;
  font-weight: 600;
  font-style: normal;
}
.work-sans-bold {
  font-family: work-sans, sans-serif;
  font-weight: 700;
  font-style: normal;
}
.work-sans-extra-bold {
  font-family: work-sans, sans-serif;
  font-weight: 800;
  font-style: normal;
}
/* ---------------------------------------- Work Sans End */
/* Rajdhani Start --------------------------------------  */
.rajdhani-light {
  font-family: rajdhani, sans-serif;
  font-weight: 300;
  font-style: normal;
}
.rajdhani-regular {
  font-family: rajdhani, sans-serif;
  font-weight: 400;
  font-style: normal;
}
.rajdhani-medium {
  font-family: rajdhani, sans-serif;
  font-weight: 500;
  font-style: normal;
}
.rajdhani-semi-bold {
  font-family: rajdhani, sans-serif;
  font-weight: 600;
  font-style: normal;
}
.rajdhani-bold {
  font-family: rajdhani, sans-serif;
  font-weight: 700;
  font-style: normal;
}
.rajdhani-bold {
  font-family: rajdhani, sans-serif;
  font-weight: 800;
  font-style: normal;
}
/* ---------------------------------------- Rajdhani End */
/*!
 * CoreUI PRO - HTML, CSS, and JavaScript UI Components Library
 * @version v3.4.0
 * @link https://coreui.io/pro/
 * Copyright (c) 2020 creativeLabs Łukasz Holeczek
 * License (https://coreui.io/pro/license/)
 */
:root {
  --primary-legacy-theme: #321fdb;
  --secondary-legacy-theme: #ced2d8;
  --success-legacy-theme: #2eb85c;
  --info-legacy-theme: #39f;
  --warning-legacy-theme: #f9b115;
  --danger-legacy-theme: #e55353;
  --light-legacy-theme: #ebedef;
  --dark-legacy-theme: #636f83;
}
:root {
  --primary-dark-theme: #4638c2;
  --secondary-dark-theme: #4c4f54;
  --success-dark-theme: #45a164;
  --info-dark-theme: #4799eb;
  --warning-dark-theme: #e1a82d;
  --danger-dark-theme: #d16767;
  --light-dark-theme: #6c6e7e;
  --dark-dark-theme: #0e0e15;
}
:root {
  --primary: #321fdb;
  --secondary: #ced2d8;
  --success: #2eb85c;
  --info: #39f;
  --warning: #f9b115;
  --danger: #e55353;
  --light: #ebedef;
  --dark: #636f83;
  --breakpoint-xs: 0;
  --breakpoint-sm: 576px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 992px;
  --breakpoint-xl: 1200px;
  --breakpoint-xxl: 1400px;
  --font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}
.c-app {
  --primary: #321fdb;
  --secondary: #ced2d8;
  --success: #2eb85c;
  --info: #39f;
  --warning: #f9b115;
  --danger: #e55353;
  --light: #ebedef;
  --dark: #636f83;
  color: #3c4b64;
  background-color: #ebedef;
  --color: #3c4b64;
  --elevation-base-color: 60, 75, 100;
}
.c-app.c-dark-theme {
  --primary: #4638c2;
}
.c-app.c-dark-theme {
  --secondary: #4c4f54;
}
.c-app.c-dark-theme {
  --success: #45a164;
}
.c-app.c-dark-theme {
  --info: #4799eb;
}
.c-app.c-dark-theme {
  --warning: #e1a82d;
}
.c-app.c-dark-theme {
  --danger: #d16767;
}
.c-app.c-dark-theme {
  --light: #6c6e7e;
}
.c-app.c-dark-theme {
  --dark: #0e0e15;
}
.c-app.c-legacy-theme {
  --primary: #20a8d8;
}
.c-app.c-legacy-theme {
  --secondary: #c8ced3;
}
.c-app.c-legacy-theme {
  --success: #4dbd74;
}
.c-app.c-legacy-theme {
  --info: #63c2de;
}
.c-app.c-legacy-theme {
  --warning: #ffc107;
}
.c-app.c-legacy-theme {
  --danger: #f86c6b;
}
.c-app.c-legacy-theme {
  --light: #f0f3f5;
}
.c-app.c-legacy-theme {
  --dark: #2f353a;
}
.c-app.c-legacy-theme {
  color: #23282c;
  background-color: #e4e5e6;
  --color: #23282c;
  --elevation-base-color: 60, 75, 100;
}
.c-app.c-dark-theme {
  color: rgba(255, 255, 255, 0.87);
  background-color: #181924;
  --color: rgba(255, 255, 255, 0.87);
  --elevation-base-color: 0, 0, 0;
}
*,
*::before,
*::after {
  box-sizing: border-box;
}
html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 21, 0);
}
article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
  display: block;
}
body {
  margin: 0;
  overflow-x: hidden;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  color: #3c4b64;
  background-color: #ebedef;
}
body.c-legacy-theme {
  color: #23282c;
  background-color: #e4e5e6;
}
body.c-dark-theme {
  color: rgba(255, 255, 255, 0.87);
  background-color: #181924;
}
[tabindex="-1"]:focus:not(:focus-visible) {
  outline: 0 !important;
}
hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}
h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 0.5rem;
}
p {
  margin-top: 0;
  margin-bottom: 1rem;
}
abbr[title],
abbr[data-original-title] {
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  cursor: help;
  border-bottom: 0;
  -webkit-text-decoration-skip-ink: none;
          text-decoration-skip-ink: none;
}
address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit;
}
ol,
ul,
dl {
  margin-top: 0;
  margin-bottom: 1rem;
}
ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0;
}
dt {
  font-weight: 700;
}
dd {
  margin-bottom: 0.5rem;
}
html:not([dir=rtl]) dd {
  margin-left: 0;
}
*[dir=rtl] dd {
  margin-right: 0;
}
blockquote {
  margin: 0 0 1rem;
}
b,
strong {
  font-weight: bolder;
}
small {
  font-size: 80%;
}
sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
a {
  text-decoration: none;
  background-color: transparent;
  color: #321fdb;
}
.c-legacy-theme a {
  color: #20a8d8;
}
.c-dark-theme a {
  color: #7267d3;
}
@media (hover: hover), (-ms-high-contrast: none) {
  a:hover {
    text-decoration: underline;
    color: #321fdb;
  }
  .c-legacy-theme a:hover {
    color: #20a8d8;
  }

  .c-dark-theme a:hover {
    color: #7267d3;
  }
}
a:not([href]) {
  color: inherit;
  text-decoration: none;
}
@media (hover: hover), (-ms-high-contrast: none) {
  a:not([href]):hover {
    color: inherit;
    text-decoration: none;
  }
}
pre,
code,
kbd,
samp {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 1em;
}
pre {
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto;
  -ms-overflow-style: scrollbar;
}
figure {
  margin: 0 0 1rem;
}
img {
  vertical-align: middle;
  border-style: none;
}
svg {
  overflow: hidden;
  vertical-align: middle;
}
table {
  border-collapse: collapse;
}
caption {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  color: #768192;
  text-align: left;
  caption-side: bottom;
}
th {
  text-align: inherit;
}
label {
  display: inline-block;
  margin-bottom: 0.5rem;
}
button {
  border-radius: 0;
}
button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color;
}
input,
button,
select,
optgroup,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}
button,
input {
  overflow: visible;
}
button,
select {
  text-transform: none;
}
[role=button] {
  cursor: pointer;
}
select {
  word-wrap: normal;
}
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}
button:not(:disabled),
[type=button]:not(:disabled),
[type=reset]:not(:disabled),
[type=submit]:not(:disabled) {
  cursor: pointer;
}
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}
input[type=radio],
input[type=checkbox] {
  box-sizing: border-box;
  padding: 0;
}
textarea {
  overflow: auto;
  resize: vertical;
}
fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}
legend {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin-bottom: 0.5rem;
  font-size: 1.5rem;
  line-height: inherit;
  color: inherit;
  white-space: normal;
}
progress {
  vertical-align: baseline;
}
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}
[type=search] {
  outline-offset: -2px;
  -webkit-appearance: none;
}
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}
::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button;
}
output {
  display: inline-block;
}
summary {
  display: list-item;
  cursor: pointer;
}
template {
  display: none;
}
[hidden] {
  display: none !important;
}
.ps {
  overflow: hidden !important;
  touch-action: auto;
  -ms-overflow-style: none;
  overflow-anchor: none;
}
.ps__rail-x {
  position: absolute;
  bottom: 0;
  display: none;
  height: 15px;
  opacity: 0;
  transition: background-color 0.2s linear, opacity 0.2s linear;
}
.ps__rail-y {
  position: absolute;
  display: none;
  width: 15px;
  opacity: 0;
  transition: background-color 0.2s linear, opacity 0.2s linear;
}
html:not([dir=rtl]) .ps__rail-y {
  right: 0;
}
*[dir=rtl] .ps__rail-y {
  left: 0;
}
.ps--active-x > .ps__rail-x,
.ps--active-y > .ps__rail-y {
  display: block;
  background-color: transparent;
}
.ps:hover > .ps__rail-x,
.ps:hover > .ps__rail-y,
.ps--focus > .ps__rail-x,
.ps--focus > .ps__rail-y,
.ps--scrolling-x > .ps__rail-x,
.ps--scrolling-y > .ps__rail-y {
  opacity: 0.6;
}
.ps__rail-x:hover,
.ps__rail-y:hover,
.ps__rail-x:focus,
.ps__rail-y:focus {
  background-color: #eee;
  opacity: 0.9;
}
/*
 * Scrollbar thumb styles
 */
.ps__thumb-x {
  position: absolute;
  bottom: 2px;
  height: 6px;
  background-color: #aaa;
  border-radius: 6px;
  transition: background-color 0.2s linear, height 0.2s ease-in-out;
}
.ps__thumb-y {
  position: absolute;
  width: 6px;
  background-color: #aaa;
  border-radius: 6px;
  transition: background-color 0.2s linear, width 0.2s ease-in-out;
}
html:not([dir=rtl]) .ps__thumb-y {
  right: 2px;
}
*[dir=rtl] .ps__thumb-y {
  left: 2px;
}
.ps__rail-x:hover > .ps__thumb-x,
.ps__rail-x:focus > .ps__thumb-x {
  height: 11px;
  background-color: #999;
}
.ps__rail-y:hover > .ps__thumb-y,
.ps__rail-y:focus > .ps__thumb-y {
  width: 11px;
  background-color: #999;
}
@supports (-ms-overflow-style: none) {
  .ps {
    overflow: auto !important;
  }
}
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .ps {
    overflow: auto !important;
  }
}
.tippy-box[data-animation=fade][data-state=hidden] {
  opacity: 0;
}
.tippy-box[data-theme~=cpopover] {
  z-index: 1060;
  display: block;
  max-width: 276px;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.765625rem;
  word-wrap: break-word;
  background-clip: padding-box;
  border: 1px solid;
  border-radius: 0.3rem;
  background-color: #fff;
  border-color: rgba(0, 0, 21, 0.2);
}
.c-legacy-theme .tippy-box[data-theme~=cpopover] {
  background-color: #fff;
  border-color: rgba(0, 0, 0, 0.2);
}
.c-dark-theme .tippy-box[data-theme~=cpopover] {
  background-color: #3b3c45;
  border-color: rgba(255, 255, 255, 0.075);
}
.tippy-box[data-theme~=cpopover] > .tippy-content {
  max-width: auto;
  padding: 0;
  color: initial;
  text-align: initial;
  background-color: initial;
  border-radius: initial;
}
.tippy-box[data-theme~=cpopover] > .tippy-arrow {
  position: absolute;
  display: block;
  color: transparent;
}
.tippy-box[data-theme~=cpopover] > .tippy-arrow::before, .tippy-box[data-theme~=cpopover] > .tippy-arrow::after {
  position: absolute;
  display: block;
  content: "";
  border-color: transparent;
  border-style: solid;
}
.tippy-box[data-theme~=cpopover][data-placement^=top] > .tippy-arrow, .tippy-box[data-theme~=cpopover][data-placement^=bottom] > .tippy-arrow {
  width: 1.6rem;
  height: 0.5rem;
  padding: 0 0.3rem;
}
.tippy-box[data-theme~=cpopover][data-placement^=top] > .tippy-arrow::before, .tippy-box[data-theme~=cpopover][data-placement^=bottom] > .tippy-arrow::before {
  left: auto;
}
.tippy-box[data-theme~=cpopover][data-placement^=right] > .tippy-arrow, .tippy-box[data-theme~=cpopover][data-placement^=left] > .tippy-arrow {
  width: 0.5rem;
  height: 1.6rem;
  padding: 0.3rem 0;
  margin: 0;
}
.tippy-box[data-theme~=cpopover][data-placement^=top] > .tippy-arrow {
  bottom: calc(-0.5rem - 1px);
}
.tippy-box[data-theme~=cpopover][data-placement^=top] > .tippy-arrow::before {
  bottom: 0;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: rgba(0, 0, 21, 0.25);
}
.c-legacy-theme .tippy-box[data-theme~=cpopover][data-placement^=top] > .tippy-arrow::before {
  border-top-color: rgba(0, 0, 0, 0.25);
}
.c-dark-theme .tippy-box[data-theme~=cpopover][data-placement^=top] > .tippy-arrow::before {
  border-top-color: rgba(255, 255, 255, 0.125);
}
.tippy-box[data-theme~=cpopover][data-placement^=top] > .tippy-arrow::after {
  bottom: 1px;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: #fff;
}
.c-legacy-theme .tippy-box[data-theme~=cpopover][data-placement^=top] > .tippy-arrow::after {
  border-top-color: #fff;
}
.c-dark-theme .tippy-box[data-theme~=cpopover][data-placement^=top] > .tippy-arrow::after {
  border-top-color: #3b3c45;
}
.tippy-box[data-theme~=cpopover][data-placement^=bottom] > .tippy-arrow {
  top: calc(-0.5rem - 1px);
}
.tippy-box[data-theme~=cpopover][data-placement^=bottom] > .tippy-arrow::before {
  top: 0;
  border-width: 0 0.5rem 0.5rem 0.5rem;
  border-bottom-color: rgba(0, 0, 21, 0.25);
}
.c-legacy-theme .tippy-box[data-theme~=cpopover][data-placement^=bottom] > .tippy-arrow::before {
  border-bottom-color: rgba(0, 0, 0, 0.25);
}
.c-dark-theme .tippy-box[data-theme~=cpopover][data-placement^=bottom] > .tippy-arrow::before {
  border-bottom-color: rgba(255, 255, 255, 0.125);
}
.tippy-box[data-theme~=cpopover][data-placement^=bottom] > .tippy-arrow::after {
  top: 1px;
  border-width: 0 0.5rem 0.5rem 0.5rem;
  border-bottom-color: #fff;
}
.c-legacy-theme .tippy-box[data-theme~=cpopover][data-placement^=bottom] > .tippy-arrow::after {
  border-bottom-color: #fff;
}
.c-dark-theme .tippy-box[data-theme~=cpopover][data-placement^=bottom] > .tippy-arrow::after {
  border-bottom-color: #3b3c45;
}
.tippy-box[data-theme~=cpopover][data-placement^=left] > .tippy-arrow {
  right: calc(-0.5rem - 1px);
}
.tippy-box[data-theme~=cpopover][data-placement^=left] > .tippy-arrow::before {
  right: 0;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: rgba(0, 0, 21, 0.25);
}
.c-legacy-theme .tippy-box[data-theme~=cpopover][data-placement^=left] > .tippy-arrow::before {
  border-left-color: rgba(0, 0, 0, 0.25);
}
.c-dark-theme .tippy-box[data-theme~=cpopover][data-placement^=left] > .tippy-arrow::before {
  border-left-color: rgba(255, 255, 255, 0.125);
}
.tippy-box[data-theme~=cpopover][data-placement^=left] > .tippy-arrow::after {
  right: 1px;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: #fff;
}
.c-legacy-theme .tippy-box[data-theme~=cpopover][data-placement^=left] > .tippy-arrow::after {
  border-left-color: #fff;
}
.c-dark-theme .tippy-box[data-theme~=cpopover][data-placement^=left] > .tippy-arrow::after {
  border-left-color: #3b3c45;
}
.tippy-box[data-theme~=cpopover][data-placement^=right] > .tippy-arrow {
  left: calc(-0.5rem - 1px);
}
.tippy-box[data-theme~=cpopover][data-placement^=right] > .tippy-arrow::before {
  left: 0;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: rgba(0, 0, 21, 0.25);
}
.c-legacy-theme .tippy-box[data-theme~=cpopover][data-placement^=right] > .tippy-arrow::before {
  border-right-color: rgba(0, 0, 0, 0.25);
}
.c-dark-theme .tippy-box[data-theme~=cpopover][data-placement^=right] > .tippy-arrow::before {
  border-right-color: rgba(255, 255, 255, 0.125);
}
.tippy-box[data-theme~=cpopover][data-placement^=right] > .tippy-arrow::after {
  left: 1px;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: #fff;
}
.c-legacy-theme .tippy-box[data-theme~=cpopover][data-placement^=right] > .tippy-arrow::after {
  border-right-color: #fff;
}
.c-dark-theme .tippy-box[data-theme~=cpopover][data-placement^=right] > .tippy-arrow::after {
  border-right-color: #3b3c45;
}
.tippy-iOS {
  cursor: pointer !important;
  -webkit-tap-highlight-color: transparent;
}
[data-tippy-root] {
  max-width: calc(100vw - 10px);
}
.tippy-box {
  position: relative;
  z-index: 1070;
  display: block;
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.765625rem;
  word-wrap: break-word;
  outline: 0;
  transition-property: transform, visibility, opacity;
}
.tippy-box[data-placement^=top] > .tippy-arrow {
  bottom: 0;
}
.tippy-box[data-placement^=top] > .tippy-arrow::before {
  bottom: -0.4rem;
  left: 0;
  border-width: 0.4rem 0.4rem 0;
  border-top-color: initial;
}
.tippy-box[data-placement^=bottom] > .tippy-arrow {
  top: 0;
}
.tippy-box[data-placement^=bottom] > .tippy-arrow::before {
  top: -0.4rem;
  left: 0;
  border-width: 0 0.4rem 0.4rem;
  border-bottom-color: initial;
}
.tippy-box[data-placement^=left] > .tippy-arrow {
  right: 0;
  width: 0.4rem;
  height: 0.8rem;
}
.tippy-box[data-placement^=left] > .tippy-arrow::before {
  right: -0.4rem;
  border-width: 0.4rem 0 0.4rem 0.4rem;
  border-left-color: initial;
}
.tippy-box[data-placement^=right] > .tippy-arrow {
  left: 0;
  width: 0.4rem;
  height: 0.8rem;
}
.tippy-box[data-placement^=right] > .tippy-arrow::before {
  left: -0.4rem;
  border-width: 0.4rem 0.4rem 0.4rem 0;
  border-right-color: initial;
}
.tippy-box[data-inertia][data-state=visible] {
  transition-timing-function: cubic-bezier(0.54, 1.5, 0.38, 1.11);
}
.tippy-arrow {
  position: absolute;
  display: block;
  width: 0.8rem;
  height: 0.4rem;
  color: #000015;
}
.tippy-arrow::before {
  position: absolute;
  display: block;
  content: "";
  border-color: transparent;
  border-style: solid;
}
.tippy-content {
  max-width: 200px;
  padding: 0.25rem 0.5rem;
  color: #fff;
  text-align: center;
  background-color: #000015;
  border-radius: 0.25rem;
}
.alert {
  position: relative;
  padding: 0.75rem 1.25rem;
  margin-bottom: 1rem;
  border: 1px solid transparent;
  border-radius: 0.25rem;
}
.alert-heading {
  color: inherit;
}
.alert-link {
  font-weight: 700;
}
html:not([dir=rtl]) .alert-dismissible {
  padding-right: 3.8125rem;
}
*[dir=rtl] .alert-dismissible {
  padding-left: 3.8125rem;
}
.alert-dismissible .close {
  position: absolute;
  top: 0;
  padding: 0.75rem 1.25rem;
  color: inherit;
}
html:not([dir=rtl]) .alert-dismissible .close {
  right: 0;
}
*[dir=rtl] .alert-dismissible .close {
  left: 0;
}
.alert-primary {
  color: #1a107c;
  background-color: #d6d2f8;
  border-color: #c6c0f5;
}
.alert-primary hr {
  border-top-color: #b2aaf2;
}
.alert-primary .alert-link {
  color: #110a4f;
}
.alert-secondary {
  color: #6b6d7a;
  background-color: #f5f6f7;
  border-color: #f1f2f4;
}
.alert-secondary hr {
  border-top-color: #e3e5e9;
}
.alert-secondary .alert-link {
  color: #53555f;
}
.alert-success {
  color: #18603a;
  background-color: #d5f1de;
  border-color: #c4ebd1;
}
.alert-success hr {
  border-top-color: #b1e5c2;
}
.alert-success .alert-link {
  color: #0e3721;
}
.alert-info {
  color: #1b508f;
  background-color: #d6ebff;
  border-color: #c6e2ff;
}
.alert-info hr {
  border-top-color: #add5ff;
}
.alert-info .alert-link {
  color: #133864;
}
.alert-warning {
  color: #815c15;
  background-color: #feefd0;
  border-color: #fde9bd;
}
.alert-warning hr {
  border-top-color: #fce1a4;
}
.alert-warning .alert-link {
  color: #553d0e;
}
.alert-danger {
  color: #772b35;
  background-color: #fadddd;
  border-color: #f8cfcf;
}
.alert-danger hr {
  border-top-color: #f5b9b9;
}
.alert-danger .alert-link {
  color: #521d24;
}
.alert-light {
  color: #7a7b86;
  background-color: #fbfbfc;
  border-color: #f9fafb;
}
.alert-light hr {
  border-top-color: #eaedf1;
}
.alert-light .alert-link {
  color: #62626b;
}
.alert-dark {
  color: #333a4e;
  background-color: #e0e2e6;
  border-color: #d3d7dc;
}
.alert-dark hr {
  border-top-color: #c5cad1;
}
.alert-dark .alert-link {
  color: #1f232f;
}
.c-dark-theme .alert-primary {
  color: #241d6f;
  background-color: #dad7f3;
  border-color: #cbc7ee;
}
.c-dark-theme .alert-primary hr {
  border-top-color: #b9b3e8;
}
.c-dark-theme .alert-primary .alert-link {
  color: #171247;
}
.c-dark-theme .alert-secondary {
  color: #282936;
  background-color: #dbdcdd;
  border-color: #cdcecf;
}
.c-dark-theme .alert-secondary hr {
  border-top-color: #c0c1c3;
}
.c-dark-theme .alert-secondary .alert-link {
  color: #121319;
}
.c-dark-theme .alert-success {
  color: #24543e;
  background-color: #daece0;
  border-color: #cbe5d4;
}
.c-dark-theme .alert-success hr {
  border-top-color: #baddc6;
}
.c-dark-theme .alert-success .alert-link {
  color: #153024;
}
.c-dark-theme .alert-info {
  color: #255084;
  background-color: #daebfb;
  border-color: #cbe2f9;
}
.c-dark-theme .alert-info hr {
  border-top-color: #b4d5f6;
}
.c-dark-theme .alert-info .alert-link {
  color: #1a385c;
}
.c-dark-theme .alert-warning {
  color: #755721;
  background-color: #f9eed5;
  border-color: #f7e7c4;
}
.c-dark-theme .alert-warning hr {
  border-top-color: #f4deae;
}
.c-dark-theme .alert-warning .alert-link {
  color: #4d3916;
}
.c-dark-theme .alert-danger {
  color: #6d3640;
  background-color: #f6e1e1;
  border-color: #f2d4d4;
}
.c-dark-theme .alert-danger hr {
  border-top-color: #ecc0c0;
}
.c-dark-theme .alert-danger .alert-link {
  color: #4b252c;
}
.c-dark-theme .alert-light {
  color: #38394c;
  background-color: #e2e2e5;
  border-color: #d6d6db;
}
.c-dark-theme .alert-light hr {
  border-top-color: #c8c8cf;
}
.c-dark-theme .alert-light .alert-link {
  color: #22232f;
}
.c-dark-theme .alert-dark {
  color: #070715;
  background-color: #cfcfd0;
  border-color: #bcbcbd;
}
.c-dark-theme .alert-dark hr {
  border-top-color: #afafb0;
}
.c-dark-theme .alert-dark .alert-link {
  color: black;
}
.c-legacy-theme .alert-primary {
  color: #11577a;
  background-color: #d2eef7;
  border-color: #c1e7f4;
}
.c-legacy-theme .alert-primary hr {
  border-top-color: #abdff0;
}
.c-legacy-theme .alert-primary .alert-link {
  color: #0b374d;
}
.c-legacy-theme .alert-secondary {
  color: #686b78;
  background-color: #f4f5f6;
  border-color: #f0f1f3;
}
.c-legacy-theme .alert-secondary hr {
  border-top-color: #e2e4e8;
}
.c-legacy-theme .alert-secondary .alert-link {
  color: #50535d;
}
.c-legacy-theme .alert-success {
  color: #286246;
  background-color: #dbf2e3;
  border-color: #cdedd8;
}
.c-legacy-theme .alert-success hr {
  border-top-color: #bae6c9;
}
.c-legacy-theme .alert-success .alert-link {
  color: #193e2c;
}
.c-legacy-theme .alert-info {
  color: #33657e;
  background-color: #e0f3f8;
  border-color: #d3eef6;
}
.c-legacy-theme .alert-info hr {
  border-top-color: #bee6f2;
}
.c-legacy-theme .alert-info .alert-link {
  color: #24485a;
}
.c-legacy-theme .alert-warning {
  color: #85640e;
  background-color: #fff3cd;
  border-color: #ffeeba;
}
.c-legacy-theme .alert-warning hr {
  border-top-color: #ffe8a1;
}
.c-legacy-theme .alert-warning .alert-link {
  color: #574109;
}
.c-legacy-theme .alert-danger {
  color: #813842;
  background-color: #fee2e1;
  border-color: #fdd6d6;
}
.c-legacy-theme .alert-danger hr {
  border-top-color: #fcbebe;
}
.c-legacy-theme .alert-danger .alert-link {
  color: #5d2930;
}
.c-legacy-theme .alert-light {
  color: #7d7e89;
  background-color: #fcfdfd;
  border-color: #fbfcfc;
}
.c-legacy-theme .alert-light hr {
  border-top-color: #ecf1f1;
}
.c-legacy-theme .alert-light .alert-link {
  color: #64656f;
}
.c-legacy-theme .alert-dark {
  color: #181c28;
  background-color: #d5d7d8;
  border-color: #c5c6c8;
}
.c-legacy-theme .alert-dark hr {
  border-top-color: #b8b9bc;
}
.c-legacy-theme .alert-dark .alert-link {
  color: #050608;
}
.c-avatar {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50em;
  width: 36px;
  height: 36px;
  font-size: 14.4px;
}
.c-avatar .c-avatar-status {
  width: 10px;
  height: 10px;
}
.c-avatar-img {
  width: 100%;
  height: auto;
  border-radius: 50em;
}
.c-avatar-status {
  position: absolute;
  bottom: 0;
  display: block;
  border: 1px solid #fff;
  border-radius: 50em;
}
html:not([dir=rtl]) .c-avatar-status {
  right: 0;
}
*[dir=rtl] .c-avatar-status {
  left: 0;
}
.c-avatar-sm {
  width: 24px;
  height: 24px;
  font-size: 9.6px;
}
.c-avatar-sm .c-avatar-status {
  width: 8px;
  height: 8px;
}
.c-avatar-lg {
  width: 48px;
  height: 48px;
  font-size: 19.2px;
}
.c-avatar-lg .c-avatar-status {
  width: 12px;
  height: 12px;
}
.c-avatar-xl {
  width: 64px;
  height: 64px;
  font-size: 25.6px;
}
.c-avatar-xl .c-avatar-status {
  width: 14px;
  height: 14px;
}
.c-avatars-stack {
  display: flex;
}
.c-avatars-stack .c-avatar {
  margin-right: -18px;
  transition: margin-right 0.3s;
}
.c-avatars-stack .c-avatar:hover {
  margin-right: 0;
}
.c-avatars-stack .c-avatar-sm {
  margin-right: -12px;
}
.c-avatars-stack .c-avatar-lg {
  margin-right: -24px;
}
.c-avatars-stack .c-avatar-xl {
  margin-right: -32px;
}
.c-avatar-rounded {
  border-radius: 0.25rem;
}
.c-avatar-square {
  border-radius: 0;
}
.badge {
  display: inline-block;
  padding: 0.25em 0.4em;
  font-size: 75%;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 0.25rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .badge {
    transition: none;
  }
}
a.badge:hover, a.badge:focus {
  text-decoration: none;
}
.badge:empty {
  display: none;
}
.btn .badge {
  position: relative;
  top: -1px;
}
.badge-pill {
  padding-right: 0.6em;
  padding-left: 0.6em;
  border-radius: 10rem;
}
.badge-primary {
  color: #fff;
  background-color: #321fdb;
}
a.badge-primary:hover, a.badge-primary:focus {
  color: #fff;
  background-color: #2819ae;
}
a.badge-primary:focus, a.badge-primary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(50, 31, 219, 0.5);
}
.badge-secondary {
  color: #4f5d73;
  background-color: #ced2d8;
}
a.badge-secondary:hover, a.badge-secondary:focus {
  color: #4f5d73;
  background-color: #b2b8c1;
}
a.badge-secondary:focus, a.badge-secondary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(206, 210, 216, 0.5);
}
.badge-success {
  color: #fff;
  background-color: #2eb85c;
}
a.badge-success:hover, a.badge-success:focus {
  color: #fff;
  background-color: #248f48;
}
a.badge-success:focus, a.badge-success.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(46, 184, 92, 0.5);
}
.badge-info {
  color: #fff;
  background-color: #39f;
}
a.badge-info:hover, a.badge-info:focus {
  color: #fff;
  background-color: #0080ff;
}
a.badge-info:focus, a.badge-info.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(51, 153, 255, 0.5);
}
.badge-warning {
  color: #4f5d73;
  background-color: #f9b115;
}
a.badge-warning:hover, a.badge-warning:focus {
  color: #4f5d73;
  background-color: #d69405;
}
a.badge-warning:focus, a.badge-warning.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(249, 177, 21, 0.5);
}
.badge-danger {
  color: #fff;
  background-color: #e55353;
}
a.badge-danger:hover, a.badge-danger:focus {
  color: #fff;
  background-color: #de2727;
}
a.badge-danger:focus, a.badge-danger.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(229, 83, 83, 0.5);
}
.badge-light {
  color: #4f5d73;
  background-color: #ebedef;
}
a.badge-light:hover, a.badge-light:focus {
  color: #4f5d73;
  background-color: #cfd4d8;
}
a.badge-light:focus, a.badge-light.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(235, 237, 239, 0.5);
}
.badge-dark {
  color: #fff;
  background-color: #636f83;
}
a.badge-dark:hover, a.badge-dark:focus {
  color: #fff;
  background-color: #4d5666;
}
a.badge-dark:focus, a.badge-dark.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(99, 111, 131, 0.5);
}
.c-dark-theme .badge-primary {
  color: #fff;
  background-color: #4638c2;
}
.c-dark-theme a.badge-primary:hover, .c-dark-theme a.badge-primary:focus {
  color: #fff;
  background-color: #382d9a;
}
.c-dark-theme a.badge-primary:focus, .c-dark-theme a.badge-primary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(70, 56, 194, 0.5);
}
.c-dark-theme .badge-secondary {
  color: #fff;
  background-color: #4c4f54;
}
.c-dark-theme a.badge-secondary:hover, .c-dark-theme a.badge-secondary:focus {
  color: #fff;
  background-color: #343639;
}
.c-dark-theme a.badge-secondary:focus, .c-dark-theme a.badge-secondary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(76, 79, 84, 0.5);
}
.c-dark-theme .badge-success {
  color: #fff;
  background-color: #45a164;
}
.c-dark-theme a.badge-success:hover, .c-dark-theme a.badge-success:focus {
  color: #fff;
  background-color: #367d4e;
}
.c-dark-theme a.badge-success:focus, .c-dark-theme a.badge-success.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(69, 161, 100, 0.5);
}
.c-dark-theme .badge-info {
  color: #fff;
  background-color: #4799eb;
}
.c-dark-theme a.badge-info:hover, .c-dark-theme a.badge-info:focus {
  color: #fff;
  background-color: #1a80e6;
}
.c-dark-theme a.badge-info:focus, .c-dark-theme a.badge-info.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(71, 153, 235, 0.5);
}
.c-dark-theme .badge-warning {
  color: #4f5d73;
  background-color: #e1a82d;
}
.c-dark-theme a.badge-warning:hover, .c-dark-theme a.badge-warning:focus {
  color: #4f5d73;
  background-color: #c08c1b;
}
.c-dark-theme a.badge-warning:focus, .c-dark-theme a.badge-warning.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(225, 168, 45, 0.5);
}
.c-dark-theme .badge-danger {
  color: #fff;
  background-color: #d16767;
}
.c-dark-theme a.badge-danger:hover, .c-dark-theme a.badge-danger:focus {
  color: #fff;
  background-color: #c54040;
}
.c-dark-theme a.badge-danger:focus, .c-dark-theme a.badge-danger.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(209, 103, 103, 0.5);
}
.c-dark-theme .badge-light {
  color: #fff;
  background-color: #6c6e7e;
}
.c-dark-theme a.badge-light:hover, .c-dark-theme a.badge-light:focus {
  color: #fff;
  background-color: #555662;
}
.c-dark-theme a.badge-light:focus, .c-dark-theme a.badge-light.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(108, 110, 126, 0.5);
}
.c-dark-theme .badge-dark {
  color: #fff;
  background-color: #0e0e15;
}
.c-dark-theme a.badge-dark:hover, .c-dark-theme a.badge-dark:focus {
  color: #fff;
  background-color: black;
}
.c-dark-theme a.badge-dark:focus, .c-dark-theme a.badge-dark.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(14, 14, 21, 0.5);
}
.c-legacy-theme .badge-primary {
  color: #fff;
  background-color: #20a8d8;
}
.c-legacy-theme a.badge-primary:hover, .c-legacy-theme a.badge-primary:focus {
  color: #fff;
  background-color: #1985ac;
}
.c-legacy-theme a.badge-primary:focus, .c-legacy-theme a.badge-primary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(32, 168, 216, 0.5);
}
.c-legacy-theme .badge-secondary {
  color: #4f5d73;
  background-color: #c8ced3;
}
.c-legacy-theme a.badge-secondary:hover, .c-legacy-theme a.badge-secondary:focus {
  color: #4f5d73;
  background-color: #acb5bc;
}
.c-legacy-theme a.badge-secondary:focus, .c-legacy-theme a.badge-secondary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(200, 206, 211, 0.5);
}
.c-legacy-theme .badge-success {
  color: #fff;
  background-color: #4dbd74;
}
.c-legacy-theme a.badge-success:hover, .c-legacy-theme a.badge-success:focus {
  color: #fff;
  background-color: #3a9d5d;
}
.c-legacy-theme a.badge-success:focus, .c-legacy-theme a.badge-success.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(77, 189, 116, 0.5);
}
.c-legacy-theme .badge-info {
  color: #4f5d73;
  background-color: #63c2de;
}
.c-legacy-theme a.badge-info:hover, .c-legacy-theme a.badge-info:focus {
  color: #4f5d73;
  background-color: #39b2d5;
}
.c-legacy-theme a.badge-info:focus, .c-legacy-theme a.badge-info.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(99, 194, 222, 0.5);
}
.c-legacy-theme .badge-warning {
  color: #4f5d73;
  background-color: #ffc107;
}
.c-legacy-theme a.badge-warning:hover, .c-legacy-theme a.badge-warning:focus {
  color: #4f5d73;
  background-color: #d39e00;
}
.c-legacy-theme a.badge-warning:focus, .c-legacy-theme a.badge-warning.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}
.c-legacy-theme .badge-danger {
  color: #fff;
  background-color: #f86c6b;
}
.c-legacy-theme a.badge-danger:hover, .c-legacy-theme a.badge-danger:focus {
  color: #fff;
  background-color: #f63c3a;
}
.c-legacy-theme a.badge-danger:focus, .c-legacy-theme a.badge-danger.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(248, 108, 107, 0.5);
}
.c-legacy-theme .badge-light {
  color: #4f5d73;
  background-color: #f0f3f5;
}
.c-legacy-theme a.badge-light:hover, .c-legacy-theme a.badge-light:focus {
  color: #4f5d73;
  background-color: #d1dbe1;
}
.c-legacy-theme a.badge-light:focus, .c-legacy-theme a.badge-light.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(240, 243, 245, 0.5);
}
.c-legacy-theme .badge-dark {
  color: #fff;
  background-color: #2f353a;
}
.c-legacy-theme a.badge-dark:hover, .c-legacy-theme a.badge-dark:focus {
  color: #fff;
  background-color: #181b1e;
}
.c-legacy-theme a.badge-dark:focus, .c-legacy-theme a.badge-dark.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(47, 53, 58, 0.5);
}
html:not([dir=rtl]) .breadcrumb-menu {
  margin-left: auto;
}
html:not([dir=rtl]) .breadcrumb-menu {
  margin-right: auto;
}
.breadcrumb-menu::before {
  display: none;
}
.breadcrumb-menu .btn-group {
  vertical-align: top;
}
.breadcrumb-menu .btn {
  padding: 0 0.75rem;
  vertical-align: top;
  border: 0;
  color: #768192;
}
.breadcrumb-menu .btn:hover, .breadcrumb-menu .btn.active {
  color: #3c4b64;
  background: transparent;
}
.c-dark-theme .breadcrumb-menu .btn {
  color: rgba(255, 255, 255, 0.6);
}
.breadcrumb-menu .show .btn {
  color: #3c4b64;
  background: transparent;
}
.breadcrumb-menu .dropdown-menu {
  min-width: 180px;
  line-height: 1.5;
}
.breadcrumb {
  display: flex;
  flex-wrap: wrap;
  padding: 0.75rem 1rem;
  margin-bottom: 1.5rem;
  list-style: none;
  border-radius: 0;
  border-bottom: 1px solid;
  background-color: transparent;
  border-color: #d8dbe0;
}
.c-legacy-theme .breadcrumb {
  background-color: transparent;
  border-color: #c8ced3;
}
.c-dark-theme .breadcrumb {
  background-color: transparent;
  border-color: rgba(255, 255, 255, 0.87);
}
.breadcrumb-item {
  display: flex;
}
html:not([dir=rtl]) .breadcrumb-item + .breadcrumb-item {
  padding-left: 0.5rem;
}
*[dir=rtl] .breadcrumb-item + .breadcrumb-item {
  padding-right: 0.5rem;
}
.breadcrumb-item + .breadcrumb-item::before {
  display: inline-block;
  color: #8a93a2;
  content: "/";
}
.c-legacy-theme .breadcrumb-item + .breadcrumb-item::before {
  color: #73818f;
}
.c-dark-theme .breadcrumb-item + .breadcrumb-item::before {
  color: rgba(255, 255, 255, 0.87);
}
html:not([dir=rtl]) .breadcrumb-item + .breadcrumb-item::before {
  padding-right: 0.5rem;
}
*[dir=rtl] .breadcrumb-item + .breadcrumb-item::before {
  padding-left: 0.5rem;
}
.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: underline;
}
.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: none;
}
.breadcrumb-item.active {
  color: #8a93a2;
}
.c-legacy-theme .breadcrumb-item.active {
  color: #73818f;
}
.c-dark-theme .breadcrumb-item.active {
  color: rgba(255, 255, 255, 0.6);
}
.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-flex;
  vertical-align: middle;
}
.btn-group > .btn,
.btn-group-vertical > .btn {
  position: relative;
  flex: 1 1 auto;
}
.c-app:not(.c-legacy-theme) .btn-group > .btn:not([class*=ghost]):not([class*=link]):not([class*=outline]):not([class*=transparent]),
.c-app:not(.c-legacy-theme) .btn-group-vertical > .btn:not([class*=ghost]):not([class*=link]):not([class*=outline]):not([class*=transparent]) {
  border: 0;
  box-shadow: none;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .btn-group > .btn:not([class*=ghost]):not([class*=link]):not([class*=outline]):not([class*=transparent]),
.c-app:not(.c-legacy-theme) .btn-group-vertical > .btn:not([class*=ghost]):not([class*=link]):not([class*=outline]):not([class*=transparent]) {
    box-shadow: none;
  }
}
.c-app:not(.c-legacy-theme) .btn-group > .btn:not([class*=ghost]):not([class*=link]):not([class*=outline]):not([class*=transparent]),
.c-app:not(.c-legacy-theme) .btn-group-vertical > .btn:not([class*=ghost]):not([class*=link]):not([class*=outline]):not([class*=transparent]) {
  border: 0;
}
.c-app:not(.c-legacy-theme) .btn-group > .btn:not([class*=ghost]):not([class*=link]):not([class*=outline]):not([class*=transparent])::before,
.c-app:not(.c-legacy-theme) .btn-group-vertical > .btn:not([class*=ghost]):not([class*=link]):not([class*=outline]):not([class*=transparent])::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  content: "";
  border-radius: inherit;
  border: 0;
  box-shadow: 0 1px 1px 0 rgba(var(--elevation-base-color), .14), 0 2px 1px -1px rgba(var(--elevation-base-color), .12), 0 1px 3px 0 rgba(var(--elevation-base-color), .20);
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .btn-group > .btn:not([class*=ghost]):not([class*=link]):not([class*=outline]):not([class*=transparent])::before,
.c-app:not(.c-legacy-theme) .btn-group-vertical > .btn:not([class*=ghost]):not([class*=link]):not([class*=outline]):not([class*=transparent])::before {
    box-shadow: 0 1px 1px 0 rgba(60, 75, 100, .14), 0 2px 1px -1px rgba(60, 75, 100, .12), 0 1px 3px 0 rgba(60, 75, 100, .20);
  }
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn-group > .btn:hover,
.btn-group-vertical > .btn:hover {
    z-index: 1;
  }
}
.btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active,
.btn-group-vertical > .btn:focus,
.btn-group-vertical > .btn:active,
.btn-group-vertical > .btn.active {
  z-index: 1;
}
.btn-group:not(.show),
.btn-group-vertical:not(.show) {
  z-index: 1;
}
.btn-group .btn-group,
.btn-group .btn-group-vertical,
.btn-group-vertical .btn-group,
.btn-group-vertical .btn-group-vertical {
  z-index: initial;
}
.btn-toolbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.btn-toolbar .input-group {
  width: auto;
}
html:not([dir=rtl]) .btn-group > .btn:not(:first-child),
html:not([dir=rtl]) .btn-group > .btn-group:not(:first-child) {
  margin-left: -1px;
}
*[dir=rtl] .btn-group > .btn:not(:first-child),
*[dir=rtl] .btn-group > .btn-group:not(:first-child) {
  margin-right: -1px;
}
html:not([dir=rtl]) .btn-group > .btn:not(:last-child):not(.dropdown-toggle),
html:not([dir=rtl]) .btn-group > .btn-group:not(:last-child) > .btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
html:not([dir=rtl]) .btn-group > .btn:not(:first-child),
html:not([dir=rtl]) .btn-group > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
*[dir=rtl] .btn-group > .btn:not(:last-child):not(.dropdown-toggle),
*[dir=rtl] .btn-group > .btn-group:not(:last-child) > .btn {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
*[dir=rtl] .btn-group > .btn:not(:first-child),
*[dir=rtl] .btn-group > .btn-group:not(:first-child) > .btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.dropdown-toggle-split {
  padding-right: 0.5625rem;
  padding-left: 0.5625rem;
}
html:not([dir=rtl]) .dropdown-toggle-split::after, html:not([dir=rtl]) .dropup .dropdown-toggle-split::after, html:not([dir=rtl]) .dropright .dropdown-toggle-split::after {
  margin-left: 0;
}
*[dir=rtl] .dropdown-toggle-split::after, *[dir=rtl] .dropup .dropdown-toggle-split::after, *[dir=rtl] .dropright .dropdown-toggle-split::after {
  margin-right: 0;
}
html:not([dir=rtl]) .dropleft .dropdown-toggle-split::before {
  margin-right: 0;
}
*[dir=rtl] .dropleft .dropdown-toggle-split::before {
  margin-left: 0;
}
.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {
  padding-right: 0.375rem;
  padding-left: 0.375rem;
}
.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {
  padding-right: 0.75rem;
  padding-left: 0.75rem;
}
.btn-group-vertical {
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}
.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group {
  width: 100%;
}
.btn-group-vertical > .btn:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) {
  margin-top: -1px;
}
.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group-vertical > .btn-group:not(:last-child) > .btn {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.btn-group-vertical > .btn:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.btn-group-toggle > .btn,
.btn-group-toggle > .btn-group > .btn {
  margin-bottom: 0;
}
.btn-group-toggle > .btn input[type=radio],
.btn-group-toggle > .btn input[type=checkbox],
.btn-group-toggle > .btn-group > .btn input[type=radio],
.btn-group-toggle > .btn-group > .btn input[type=checkbox] {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none;
}
.btn {
  display: inline-block;
  font-weight: 400;
  color: #3c4b64;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  background-color: transparent;
  border: 1px solid transparent;
  padding: 0.375rem 0.75rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.25rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
.btn i,
.btn .c-icon {
  width: 0.875rem;
  height: 0.875rem;
  margin: 0.21875rem 0;
}
@media (prefers-reduced-motion: reduce) {
  .btn {
    transition: none;
  }
}
.c-app:not(.c-legacy-theme) .btn:not([class*=ghost]):not([class*=link]):not([class*=outline]):not([class*=transparent]) {
  border: 0;
  box-shadow: 0 1px 1px 0 rgba(var(--elevation-base-color), .14), 0 2px 1px -1px rgba(var(--elevation-base-color), .12), 0 1px 3px 0 rgba(var(--elevation-base-color), .20);
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .btn:not([class*=ghost]):not([class*=link]):not([class*=outline]):not([class*=transparent]) {
    box-shadow: 0 1px 1px 0 rgba(60, 75, 100, .14), 0 2px 1px -1px rgba(60, 75, 100, .12), 0 1px 3px 0 rgba(60, 75, 100, .20);
  }
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn:hover {
    color: #3c4b64;
    text-decoration: none;
  }
  .c-app:not(.c-legacy-theme) .btn:hover:not([class*=ghost]):not([class*=link]):not([class*=outline]):not([class*=transparent]) {
    border: 0;
    box-shadow: 0 2px 2px 0 rgba(var(--elevation-base-color), .14), 0 3px 1px -2px rgba(var(--elevation-base-color), .12), 0 1px 5px 0 rgba(var(--elevation-base-color), .20);
  }
}
@media (hover: hover) and (-ms-high-contrast: none), (hover: hover) and (-ms-high-contrast: active), (-ms-high-contrast: none) and (-ms-high-contrast: none), (-ms-high-contrast: none) and (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .btn:hover:not([class*=ghost]):not([class*=link]):not([class*=outline]):not([class*=transparent]) {
    box-shadow: 0 2px 2px 0 rgba(60, 75, 100, .14), 0 3px 1px -2px rgba(60, 75, 100, .12), 0 1px 5px 0 rgba(60, 75, 100, .20);
  }
}
.btn:focus, .btn.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(50, 31, 219, 0.25);
}
.c-app:not(.c-legacy-theme) .btn:focus:not([class*=ghost]):not([class*=link]):not([class*=outline]):not([class*=transparent]), .c-app:not(.c-legacy-theme) .btn.focus:not([class*=ghost]):not([class*=link]):not([class*=outline]):not([class*=transparent]) {
  border: 0;
  box-shadow: 0 4px 5px 0 rgba(var(--elevation-base-color), .14), 0 1px 10px 0 rgba(var(--elevation-base-color), .12), 0 2px 4px -1px rgba(var(--elevation-base-color), .20);
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .btn:focus:not([class*=ghost]):not([class*=link]):not([class*=outline]):not([class*=transparent]), .c-app:not(.c-legacy-theme) .btn.focus:not([class*=ghost]):not([class*=link]):not([class*=outline]):not([class*=transparent]) {
    box-shadow: 0 4px 5px 0 rgba(60, 75, 100, .14), 0 1px 10px 0 rgba(60, 75, 100, .12), 0 2px 4px -1px rgba(60, 75, 100, .20);
  }
}
.btn.disabled, .btn:disabled {
  opacity: 0.65;
}
.btn:not(:disabled):not(.disabled) {
  cursor: pointer;
}
.btn i,
.btn .c-icon {
  height: 0.875rem;
  margin: 0.21875rem 0;
}
a.btn.disabled,
fieldset:disabled a.btn {
  pointer-events: none;
}
.btn-primary {
  color: #fff;
  background-color: #321fdb;
  border-color: #321fdb;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn-primary:hover {
    color: #fff;
    background-color: #2a1ab9;
    border-color: #2819ae;
  }
}
.btn-primary:focus, .btn-primary.focus {
  color: #fff;
  background-color: #2a1ab9;
  border-color: #2819ae;
  box-shadow: 0 0 0 0.2rem rgba(81, 65, 224, 0.5);
}
.btn-primary.disabled, .btn-primary:disabled {
  color: #fff;
  background-color: #321fdb;
  border-color: #321fdb;
}
.btn-primary:not(:disabled):not(.disabled):active, .show > .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: #2819ae;
  border-color: #2517a3;
}
.btn-primary:not(:disabled):not(.disabled):active:focus, .show > .btn-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(81, 65, 224, 0.5);
}
.show > .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: #2819ae;
  border-color: #2517a3;
}
.show > .btn-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(81, 65, 224, 0.5);
}
.btn-secondary {
  color: #4f5d73;
  background-color: #ced2d8;
  border-color: #ced2d8;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn-secondary:hover {
    color: #4f5d73;
    background-color: #b9bec7;
    border-color: #b2b8c1;
  }
}
.btn-secondary:focus, .btn-secondary.focus {
  color: #4f5d73;
  background-color: #b9bec7;
  border-color: #b2b8c1;
  box-shadow: 0 0 0 0.2rem rgba(187, 192, 201, 0.5);
}
.btn-secondary.disabled, .btn-secondary:disabled {
  color: #4f5d73;
  background-color: #ced2d8;
  border-color: #ced2d8;
}
.btn-secondary:not(:disabled):not(.disabled):active, .show > .btn-secondary.dropdown-toggle {
  color: #4f5d73;
  background-color: #b2b8c1;
  border-color: #abb1bc;
}
.btn-secondary:not(:disabled):not(.disabled):active:focus, .show > .btn-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(187, 192, 201, 0.5);
}
.show > .btn-secondary.dropdown-toggle {
  color: #4f5d73;
  background-color: #b2b8c1;
  border-color: #abb1bc;
}
.show > .btn-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(187, 192, 201, 0.5);
}
.btn-success {
  color: #fff;
  background-color: #2eb85c;
  border-color: #2eb85c;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn-success:hover {
    color: #fff;
    background-color: #26994d;
    border-color: #248f48;
  }
}
.btn-success:focus, .btn-success.focus {
  color: #fff;
  background-color: #26994d;
  border-color: #248f48;
  box-shadow: 0 0 0 0.2rem rgba(77, 195, 116, 0.5);
}
.btn-success.disabled, .btn-success:disabled {
  color: #fff;
  background-color: #2eb85c;
  border-color: #2eb85c;
}
.btn-success:not(:disabled):not(.disabled):active, .show > .btn-success.dropdown-toggle {
  color: #fff;
  background-color: #248f48;
  border-color: #218543;
}
.btn-success:not(:disabled):not(.disabled):active:focus, .show > .btn-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(77, 195, 116, 0.5);
}
.show > .btn-success.dropdown-toggle {
  color: #fff;
  background-color: #248f48;
  border-color: #218543;
}
.show > .btn-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(77, 195, 116, 0.5);
}
.btn-info {
  color: #fff;
  background-color: #39f;
  border-color: #39f;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn-info:hover {
    color: #fff;
    background-color: #0d86ff;
    border-color: #0080ff;
  }
}
.btn-info:focus, .btn-info.focus {
  color: #fff;
  background-color: #0d86ff;
  border-color: #0080ff;
  box-shadow: 0 0 0 0.2rem rgba(82, 168, 255, 0.5);
}
.btn-info.disabled, .btn-info:disabled {
  color: #fff;
  background-color: #39f;
  border-color: #39f;
}
.btn-info:not(:disabled):not(.disabled):active, .show > .btn-info.dropdown-toggle {
  color: #fff;
  background-color: #0080ff;
  border-color: #0079f2;
}
.btn-info:not(:disabled):not(.disabled):active:focus, .show > .btn-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(82, 168, 255, 0.5);
}
.show > .btn-info.dropdown-toggle {
  color: #fff;
  background-color: #0080ff;
  border-color: #0079f2;
}
.show > .btn-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(82, 168, 255, 0.5);
}
.btn-warning {
  color: #4f5d73;
  background-color: #f9b115;
  border-color: #f9b115;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn-warning:hover {
    color: #4f5d73;
    background-color: #e29c06;
    border-color: #d69405;
  }
}
.btn-warning:focus, .btn-warning.focus {
  color: #4f5d73;
  background-color: #e29c06;
  border-color: #d69405;
  box-shadow: 0 0 0 0.2rem rgba(224, 164, 35, 0.5);
}
.btn-warning.disabled, .btn-warning:disabled {
  color: #4f5d73;
  background-color: #f9b115;
  border-color: #f9b115;
}
.btn-warning:not(:disabled):not(.disabled):active, .show > .btn-warning.dropdown-toggle {
  color: #4f5d73;
  background-color: #d69405;
  border-color: #c98b05;
}
.btn-warning:not(:disabled):not(.disabled):active:focus, .show > .btn-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(224, 164, 35, 0.5);
}
.show > .btn-warning.dropdown-toggle {
  color: #4f5d73;
  background-color: #d69405;
  border-color: #c98b05;
}
.show > .btn-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(224, 164, 35, 0.5);
}
.btn-danger {
  color: #fff;
  background-color: #e55353;
  border-color: #e55353;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn-danger:hover {
    color: #fff;
    background-color: #e03232;
    border-color: #de2727;
  }
}
.btn-danger:focus, .btn-danger.focus {
  color: #fff;
  background-color: #e03232;
  border-color: #de2727;
  box-shadow: 0 0 0 0.2rem rgba(233, 109, 109, 0.5);
}
.btn-danger.disabled, .btn-danger:disabled {
  color: #fff;
  background-color: #e55353;
  border-color: #e55353;
}
.btn-danger:not(:disabled):not(.disabled):active, .show > .btn-danger.dropdown-toggle {
  color: #fff;
  background-color: #de2727;
  border-color: #d82121;
}
.btn-danger:not(:disabled):not(.disabled):active:focus, .show > .btn-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(233, 109, 109, 0.5);
}
.show > .btn-danger.dropdown-toggle {
  color: #fff;
  background-color: #de2727;
  border-color: #d82121;
}
.show > .btn-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(233, 109, 109, 0.5);
}
.btn-light {
  color: #4f5d73;
  background-color: #ebedef;
  border-color: #ebedef;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn-light:hover {
    color: #4f5d73;
    background-color: #d6dade;
    border-color: #cfd4d8;
  }
}
.btn-light:focus, .btn-light.focus {
  color: #4f5d73;
  background-color: #d6dade;
  border-color: #cfd4d8;
  box-shadow: 0 0 0 0.2rem rgba(212, 215, 220, 0.5);
}
.btn-light.disabled, .btn-light:disabled {
  color: #4f5d73;
  background-color: #ebedef;
  border-color: #ebedef;
}
.btn-light:not(:disabled):not(.disabled):active, .show > .btn-light.dropdown-toggle {
  color: #4f5d73;
  background-color: #cfd4d8;
  border-color: #c8cdd3;
}
.btn-light:not(:disabled):not(.disabled):active:focus, .show > .btn-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(212, 215, 220, 0.5);
}
.show > .btn-light.dropdown-toggle {
  color: #4f5d73;
  background-color: #cfd4d8;
  border-color: #c8cdd3;
}
.show > .btn-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(212, 215, 220, 0.5);
}
.btn-dark {
  color: #fff;
  background-color: #636f83;
  border-color: #636f83;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn-dark:hover {
    color: #fff;
    background-color: #535d6d;
    border-color: #4d5666;
  }
}
.btn-dark:focus, .btn-dark.focus {
  color: #fff;
  background-color: #535d6d;
  border-color: #4d5666;
  box-shadow: 0 0 0 0.2rem rgba(122, 133, 150, 0.5);
}
.btn-dark.disabled, .btn-dark:disabled {
  color: #fff;
  background-color: #636f83;
  border-color: #636f83;
}
.btn-dark:not(:disabled):not(.disabled):active, .show > .btn-dark.dropdown-toggle {
  color: #fff;
  background-color: #4d5666;
  border-color: #48505f;
}
.btn-dark:not(:disabled):not(.disabled):active:focus, .show > .btn-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(122, 133, 150, 0.5);
}
.show > .btn-dark.dropdown-toggle {
  color: #fff;
  background-color: #4d5666;
  border-color: #48505f;
}
.show > .btn-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(122, 133, 150, 0.5);
}
.c-dark-theme .btn-primary {
  color: #fff;
  background-color: #4638c2;
  border-color: #4638c2;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-dark-theme .btn-primary:hover {
    color: #fff;
    background-color: #3b2fa4;
    border-color: #382d9a;
  }
}
.c-dark-theme .btn-primary:focus, .c-dark-theme .btn-primary.focus {
  color: #fff;
  background-color: #3b2fa4;
  border-color: #382d9a;
  box-shadow: 0 0 0 0.2rem rgba(98, 86, 203, 0.5);
}
.c-dark-theme .btn-primary.disabled, .c-dark-theme .btn-primary:disabled {
  color: #fff;
  background-color: #4638c2;
  border-color: #4638c2;
}
.c-dark-theme .btn-primary:not(:disabled):not(.disabled):active, .show > .c-dark-theme .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: #382d9a;
  border-color: #342a91;
}
.c-dark-theme .btn-primary:not(:disabled):not(.disabled):active:focus, .show > .c-dark-theme .btn-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(98, 86, 203, 0.5);
}
.c-dark-theme .show > .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: #382d9a;
  border-color: #342a91;
}
.c-dark-theme .show > .btn-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(98, 86, 203, 0.5);
}
.c-dark-theme .btn-secondary {
  color: #fff;
  background-color: #4c4f54;
  border-color: #4c4f54;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-dark-theme .btn-secondary:hover {
    color: #fff;
    background-color: #3a3c40;
    border-color: #343639;
  }
}
.c-dark-theme .btn-secondary:focus, .c-dark-theme .btn-secondary.focus {
  color: #fff;
  background-color: #3a3c40;
  border-color: #343639;
  box-shadow: 0 0 0 0.2rem rgba(103, 105, 110, 0.5);
}
.c-dark-theme .btn-secondary.disabled, .c-dark-theme .btn-secondary:disabled {
  color: #fff;
  background-color: #4c4f54;
  border-color: #4c4f54;
}
.c-dark-theme .btn-secondary:not(:disabled):not(.disabled):active, .show > .c-dark-theme .btn-secondary.dropdown-toggle {
  color: #fff;
  background-color: #343639;
  border-color: #2e3033;
}
.c-dark-theme .btn-secondary:not(:disabled):not(.disabled):active:focus, .show > .c-dark-theme .btn-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(103, 105, 110, 0.5);
}
.c-dark-theme .show > .btn-secondary.dropdown-toggle {
  color: #fff;
  background-color: #343639;
  border-color: #2e3033;
}
.c-dark-theme .show > .btn-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(103, 105, 110, 0.5);
}
.c-dark-theme .btn-success {
  color: #fff;
  background-color: #45a164;
  border-color: #45a164;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-dark-theme .btn-success:hover {
    color: #fff;
    background-color: #3a8653;
    border-color: #367d4e;
  }
}
.c-dark-theme .btn-success:focus, .c-dark-theme .btn-success.focus {
  color: #fff;
  background-color: #3a8653;
  border-color: #367d4e;
  box-shadow: 0 0 0 0.2rem rgba(97, 175, 123, 0.5);
}
.c-dark-theme .btn-success.disabled, .c-dark-theme .btn-success:disabled {
  color: #fff;
  background-color: #45a164;
  border-color: #45a164;
}
.c-dark-theme .btn-success:not(:disabled):not(.disabled):active, .show > .c-dark-theme .btn-success.dropdown-toggle {
  color: #fff;
  background-color: #367d4e;
  border-color: #327448;
}
.c-dark-theme .btn-success:not(:disabled):not(.disabled):active:focus, .show > .c-dark-theme .btn-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(97, 175, 123, 0.5);
}
.c-dark-theme .show > .btn-success.dropdown-toggle {
  color: #fff;
  background-color: #367d4e;
  border-color: #327448;
}
.c-dark-theme .show > .btn-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(97, 175, 123, 0.5);
}
.c-dark-theme .btn-info {
  color: #fff;
  background-color: #4799eb;
  border-color: #4799eb;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-dark-theme .btn-info:hover {
    color: #fff;
    background-color: #2586e7;
    border-color: #1a80e6;
  }
}
.c-dark-theme .btn-info:focus, .c-dark-theme .btn-info.focus {
  color: #fff;
  background-color: #2586e7;
  border-color: #1a80e6;
  box-shadow: 0 0 0 0.2rem rgba(99, 168, 238, 0.5);
}
.c-dark-theme .btn-info.disabled, .c-dark-theme .btn-info:disabled {
  color: #fff;
  background-color: #4799eb;
  border-color: #4799eb;
}
.c-dark-theme .btn-info:not(:disabled):not(.disabled):active, .show > .c-dark-theme .btn-info.dropdown-toggle {
  color: #fff;
  background-color: #1a80e6;
  border-color: #1879da;
}
.c-dark-theme .btn-info:not(:disabled):not(.disabled):active:focus, .show > .c-dark-theme .btn-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(99, 168, 238, 0.5);
}
.c-dark-theme .show > .btn-info.dropdown-toggle {
  color: #fff;
  background-color: #1a80e6;
  border-color: #1879da;
}
.c-dark-theme .show > .btn-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(99, 168, 238, 0.5);
}
.c-dark-theme .btn-warning {
  color: #4f5d73;
  background-color: #e1a82d;
  border-color: #e1a82d;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-dark-theme .btn-warning:hover {
    color: #4f5d73;
    background-color: #cb941d;
    border-color: #c08c1b;
  }
}
.c-dark-theme .btn-warning:focus, .c-dark-theme .btn-warning.focus {
  color: #4f5d73;
  background-color: #cb941d;
  border-color: #c08c1b;
  box-shadow: 0 0 0 0.2rem rgba(203, 157, 56, 0.5);
}
.c-dark-theme .btn-warning.disabled, .c-dark-theme .btn-warning:disabled {
  color: #4f5d73;
  background-color: #e1a82d;
  border-color: #e1a82d;
}
.c-dark-theme .btn-warning:not(:disabled):not(.disabled):active, .show > .c-dark-theme .btn-warning.dropdown-toggle {
  color: #fff;
  background-color: #c08c1b;
  border-color: #b4841a;
}
.c-dark-theme .btn-warning:not(:disabled):not(.disabled):active:focus, .show > .c-dark-theme .btn-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(203, 157, 56, 0.5);
}
.c-dark-theme .show > .btn-warning.dropdown-toggle {
  color: #fff;
  background-color: #c08c1b;
  border-color: #b4841a;
}
.c-dark-theme .show > .btn-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(203, 157, 56, 0.5);
}
.c-dark-theme .btn-danger {
  color: #fff;
  background-color: #d16767;
  border-color: #d16767;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-dark-theme .btn-danger:hover {
    color: #fff;
    background-color: #c84949;
    border-color: #c54040;
  }
}
.c-dark-theme .btn-danger:focus, .c-dark-theme .btn-danger.focus {
  color: #fff;
  background-color: #c84949;
  border-color: #c54040;
  box-shadow: 0 0 0 0.2rem rgba(216, 126, 126, 0.5);
}
.c-dark-theme .btn-danger.disabled, .c-dark-theme .btn-danger:disabled {
  color: #fff;
  background-color: #d16767;
  border-color: #d16767;
}
.c-dark-theme .btn-danger:not(:disabled):not(.disabled):active, .show > .c-dark-theme .btn-danger.dropdown-toggle {
  color: #fff;
  background-color: #c54040;
  border-color: #bf3939;
}
.c-dark-theme .btn-danger:not(:disabled):not(.disabled):active:focus, .show > .c-dark-theme .btn-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(216, 126, 126, 0.5);
}
.c-dark-theme .show > .btn-danger.dropdown-toggle {
  color: #fff;
  background-color: #c54040;
  border-color: #bf3939;
}
.c-dark-theme .show > .btn-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(216, 126, 126, 0.5);
}
.c-dark-theme .btn-light {
  color: #fff;
  background-color: #6c6e7e;
  border-color: #6c6e7e;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-dark-theme .btn-light:hover {
    color: #fff;
    background-color: #5a5c69;
    border-color: #555662;
  }
}
.c-dark-theme .btn-light:focus, .c-dark-theme .btn-light.focus {
  color: #fff;
  background-color: #5a5c69;
  border-color: #555662;
  box-shadow: 0 0 0 0.2rem rgba(130, 132, 145, 0.5);
}
.c-dark-theme .btn-light.disabled, .c-dark-theme .btn-light:disabled {
  color: #fff;
  background-color: #6c6e7e;
  border-color: #6c6e7e;
}
.c-dark-theme .btn-light:not(:disabled):not(.disabled):active, .show > .c-dark-theme .btn-light.dropdown-toggle {
  color: #fff;
  background-color: #555662;
  border-color: #4f505c;
}
.c-dark-theme .btn-light:not(:disabled):not(.disabled):active:focus, .show > .c-dark-theme .btn-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(130, 132, 145, 0.5);
}
.c-dark-theme .show > .btn-light.dropdown-toggle {
  color: #fff;
  background-color: #555662;
  border-color: #4f505c;
}
.c-dark-theme .show > .btn-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(130, 132, 145, 0.5);
}
.c-dark-theme .btn-dark {
  color: #fff;
  background-color: #0e0e15;
  border-color: #0e0e15;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-dark-theme .btn-dark:hover {
    color: #fff;
    background-color: black;
    border-color: black;
  }
}
.c-dark-theme .btn-dark:focus, .c-dark-theme .btn-dark.focus {
  color: #fff;
  background-color: black;
  border-color: black;
  box-shadow: 0 0 0 0.2rem rgba(50, 50, 56, 0.5);
}
.c-dark-theme .btn-dark.disabled, .c-dark-theme .btn-dark:disabled {
  color: #fff;
  background-color: #0e0e15;
  border-color: #0e0e15;
}
.c-dark-theme .btn-dark:not(:disabled):not(.disabled):active, .show > .c-dark-theme .btn-dark.dropdown-toggle {
  color: #fff;
  background-color: black;
  border-color: black;
}
.c-dark-theme .btn-dark:not(:disabled):not(.disabled):active:focus, .show > .c-dark-theme .btn-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(50, 50, 56, 0.5);
}
.c-dark-theme .show > .btn-dark.dropdown-toggle {
  color: #fff;
  background-color: black;
  border-color: black;
}
.c-dark-theme .show > .btn-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(50, 50, 56, 0.5);
}
.c-legacy-theme .btn-primary {
  color: #fff;
  background-color: #20a8d8;
  border-color: #20a8d8;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-legacy-theme .btn-primary:hover {
    color: #fff;
    background-color: #1b8eb7;
    border-color: #1985ac;
  }
}
.c-legacy-theme .btn-primary:focus, .c-legacy-theme .btn-primary.focus {
  color: #fff;
  background-color: #1b8eb7;
  border-color: #1985ac;
  box-shadow: 0 0 0 0.2rem rgba(65, 181, 222, 0.5);
}
.c-legacy-theme .btn-primary.disabled, .c-legacy-theme .btn-primary:disabled {
  color: #fff;
  background-color: #20a8d8;
  border-color: #20a8d8;
}
.c-legacy-theme .btn-primary:not(:disabled):not(.disabled):active, .show > .c-legacy-theme .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: #1985ac;
  border-color: #187da0;
}
.c-legacy-theme .btn-primary:not(:disabled):not(.disabled):active:focus, .show > .c-legacy-theme .btn-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(65, 181, 222, 0.5);
}
.c-legacy-theme .show > .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: #1985ac;
  border-color: #187da0;
}
.c-legacy-theme .show > .btn-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(65, 181, 222, 0.5);
}
.c-legacy-theme .btn-secondary {
  color: #4f5d73;
  background-color: #c8ced3;
  border-color: #c8ced3;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-legacy-theme .btn-secondary:hover {
    color: #4f5d73;
    background-color: #b3bbc2;
    border-color: #acb5bc;
  }
}
.c-legacy-theme .btn-secondary:focus, .c-legacy-theme .btn-secondary.focus {
  color: #4f5d73;
  background-color: #b3bbc2;
  border-color: #acb5bc;
  box-shadow: 0 0 0 0.2rem rgba(182, 189, 197, 0.5);
}
.c-legacy-theme .btn-secondary.disabled, .c-legacy-theme .btn-secondary:disabled {
  color: #4f5d73;
  background-color: #c8ced3;
  border-color: #c8ced3;
}
.c-legacy-theme .btn-secondary:not(:disabled):not(.disabled):active, .show > .c-legacy-theme .btn-secondary.dropdown-toggle {
  color: #4f5d73;
  background-color: #acb5bc;
  border-color: #a5aeb7;
}
.c-legacy-theme .btn-secondary:not(:disabled):not(.disabled):active:focus, .show > .c-legacy-theme .btn-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(182, 189, 197, 0.5);
}
.c-legacy-theme .show > .btn-secondary.dropdown-toggle {
  color: #4f5d73;
  background-color: #acb5bc;
  border-color: #a5aeb7;
}
.c-legacy-theme .show > .btn-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(182, 189, 197, 0.5);
}
.c-legacy-theme .btn-success {
  color: #fff;
  background-color: #4dbd74;
  border-color: #4dbd74;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-legacy-theme .btn-success:hover {
    color: #fff;
    background-color: #3ea662;
    border-color: #3a9d5d;
  }
}
.c-legacy-theme .btn-success:focus, .c-legacy-theme .btn-success.focus {
  color: #fff;
  background-color: #3ea662;
  border-color: #3a9d5d;
  box-shadow: 0 0 0 0.2rem rgba(104, 199, 137, 0.5);
}
.c-legacy-theme .btn-success.disabled, .c-legacy-theme .btn-success:disabled {
  color: #fff;
  background-color: #4dbd74;
  border-color: #4dbd74;
}
.c-legacy-theme .btn-success:not(:disabled):not(.disabled):active, .show > .c-legacy-theme .btn-success.dropdown-toggle {
  color: #fff;
  background-color: #3a9d5d;
  border-color: #379457;
}
.c-legacy-theme .btn-success:not(:disabled):not(.disabled):active:focus, .show > .c-legacy-theme .btn-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(104, 199, 137, 0.5);
}
.c-legacy-theme .show > .btn-success.dropdown-toggle {
  color: #fff;
  background-color: #3a9d5d;
  border-color: #379457;
}
.c-legacy-theme .show > .btn-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(104, 199, 137, 0.5);
}
.c-legacy-theme .btn-info {
  color: #4f5d73;
  background-color: #63c2de;
  border-color: #63c2de;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-legacy-theme .btn-info:hover {
    color: #4f5d73;
    background-color: #43b6d7;
    border-color: #39b2d5;
  }
}
.c-legacy-theme .btn-info:focus, .c-legacy-theme .btn-info.focus {
  color: #4f5d73;
  background-color: #43b6d7;
  border-color: #39b2d5;
  box-shadow: 0 0 0 0.2rem rgba(96, 179, 206, 0.5);
}
.c-legacy-theme .btn-info.disabled, .c-legacy-theme .btn-info:disabled {
  color: #4f5d73;
  background-color: #63c2de;
  border-color: #63c2de;
}
.c-legacy-theme .btn-info:not(:disabled):not(.disabled):active, .show > .c-legacy-theme .btn-info.dropdown-toggle {
  color: #fff;
  background-color: #39b2d5;
  border-color: #2eadd3;
}
.c-legacy-theme .btn-info:not(:disabled):not(.disabled):active:focus, .show > .c-legacy-theme .btn-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(96, 179, 206, 0.5);
}
.c-legacy-theme .show > .btn-info.dropdown-toggle {
  color: #fff;
  background-color: #39b2d5;
  border-color: #2eadd3;
}
.c-legacy-theme .show > .btn-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(96, 179, 206, 0.5);
}
.c-legacy-theme .btn-warning {
  color: #4f5d73;
  background-color: #ffc107;
  border-color: #ffc107;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-legacy-theme .btn-warning:hover {
    color: #4f5d73;
    background-color: #e0a800;
    border-color: #d39e00;
  }
}
.c-legacy-theme .btn-warning:focus, .c-legacy-theme .btn-warning.focus {
  color: #4f5d73;
  background-color: #e0a800;
  border-color: #d39e00;
  box-shadow: 0 0 0 0.2rem rgba(229, 178, 23, 0.5);
}
.c-legacy-theme .btn-warning.disabled, .c-legacy-theme .btn-warning:disabled {
  color: #4f5d73;
  background-color: #ffc107;
  border-color: #ffc107;
}
.c-legacy-theme .btn-warning:not(:disabled):not(.disabled):active, .show > .c-legacy-theme .btn-warning.dropdown-toggle {
  color: #4f5d73;
  background-color: #d39e00;
  border-color: #c69500;
}
.c-legacy-theme .btn-warning:not(:disabled):not(.disabled):active:focus, .show > .c-legacy-theme .btn-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(229, 178, 23, 0.5);
}
.c-legacy-theme .show > .btn-warning.dropdown-toggle {
  color: #4f5d73;
  background-color: #d39e00;
  border-color: #c69500;
}
.c-legacy-theme .show > .btn-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(229, 178, 23, 0.5);
}
.c-legacy-theme .btn-danger {
  color: #fff;
  background-color: #f86c6b;
  border-color: #f86c6b;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-legacy-theme .btn-danger:hover {
    color: #fff;
    background-color: #f64846;
    border-color: #f63c3a;
  }
}
.c-legacy-theme .btn-danger:focus, .c-legacy-theme .btn-danger.focus {
  color: #fff;
  background-color: #f64846;
  border-color: #f63c3a;
  box-shadow: 0 0 0 0.2rem rgba(249, 130, 129, 0.5);
}
.c-legacy-theme .btn-danger.disabled, .c-legacy-theme .btn-danger:disabled {
  color: #fff;
  background-color: #f86c6b;
  border-color: #f86c6b;
}
.c-legacy-theme .btn-danger:not(:disabled):not(.disabled):active, .show > .c-legacy-theme .btn-danger.dropdown-toggle {
  color: #fff;
  background-color: #f63c3a;
  border-color: #f5302e;
}
.c-legacy-theme .btn-danger:not(:disabled):not(.disabled):active:focus, .show > .c-legacy-theme .btn-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(249, 130, 129, 0.5);
}
.c-legacy-theme .show > .btn-danger.dropdown-toggle {
  color: #fff;
  background-color: #f63c3a;
  border-color: #f5302e;
}
.c-legacy-theme .show > .btn-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(249, 130, 129, 0.5);
}
.c-legacy-theme .btn-light {
  color: #4f5d73;
  background-color: #f0f3f5;
  border-color: #f0f3f5;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-legacy-theme .btn-light:hover {
    color: #4f5d73;
    background-color: #d9e1e6;
    border-color: #d1dbe1;
  }
}
.c-legacy-theme .btn-light:focus, .c-legacy-theme .btn-light.focus {
  color: #4f5d73;
  background-color: #d9e1e6;
  border-color: #d1dbe1;
  box-shadow: 0 0 0 0.2rem rgba(216, 221, 226, 0.5);
}
.c-legacy-theme .btn-light.disabled, .c-legacy-theme .btn-light:disabled {
  color: #4f5d73;
  background-color: #f0f3f5;
  border-color: #f0f3f5;
}
.c-legacy-theme .btn-light:not(:disabled):not(.disabled):active, .show > .c-legacy-theme .btn-light.dropdown-toggle {
  color: #4f5d73;
  background-color: #d1dbe1;
  border-color: #cad4dc;
}
.c-legacy-theme .btn-light:not(:disabled):not(.disabled):active:focus, .show > .c-legacy-theme .btn-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(216, 221, 226, 0.5);
}
.c-legacy-theme .show > .btn-light.dropdown-toggle {
  color: #4f5d73;
  background-color: #d1dbe1;
  border-color: #cad4dc;
}
.c-legacy-theme .show > .btn-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(216, 221, 226, 0.5);
}
.c-legacy-theme .btn-dark {
  color: #fff;
  background-color: #2f353a;
  border-color: #2f353a;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-legacy-theme .btn-dark:hover {
    color: #fff;
    background-color: #1e2225;
    border-color: #181b1e;
  }
}
.c-legacy-theme .btn-dark:focus, .c-legacy-theme .btn-dark.focus {
  color: #fff;
  background-color: #1e2225;
  border-color: #181b1e;
  box-shadow: 0 0 0 0.2rem rgba(78, 83, 88, 0.5);
}
.c-legacy-theme .btn-dark.disabled, .c-legacy-theme .btn-dark:disabled {
  color: #fff;
  background-color: #2f353a;
  border-color: #2f353a;
}
.c-legacy-theme .btn-dark:not(:disabled):not(.disabled):active, .show > .c-legacy-theme .btn-dark.dropdown-toggle {
  color: #fff;
  background-color: #181b1e;
  border-color: #121517;
}
.c-legacy-theme .btn-dark:not(:disabled):not(.disabled):active:focus, .show > .c-legacy-theme .btn-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(78, 83, 88, 0.5);
}
.c-legacy-theme .show > .btn-dark.dropdown-toggle {
  color: #fff;
  background-color: #181b1e;
  border-color: #121517;
}
.c-legacy-theme .show > .btn-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(78, 83, 88, 0.5);
}
.btn-transparent {
  color: rgba(255, 255, 255, 0.8);
}
.btn-transparent:hover {
  color: white;
}
.btn-outline-primary {
  color: #321fdb;
  border-color: #321fdb;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn-outline-primary:hover {
    color: #fff;
    background-color: #321fdb;
    border-color: #321fdb;
  }
}
.btn-outline-primary:focus, .btn-outline-primary.focus {
  box-shadow: 0 0 0 0.2rem rgba(50, 31, 219, 0.5);
}
.btn-outline-primary.disabled, .btn-outline-primary:disabled {
  color: #321fdb;
  background-color: transparent;
}
.btn-outline-primary:not(:disabled):not(.disabled):active, .btn-outline-primary:not(:disabled):not(.disabled).active {
  color: #fff;
  background-color: #321fdb;
  border-color: #321fdb;
}
.btn-outline-primary:not(:disabled):not(.disabled):active:focus, .btn-outline-primary:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(50, 31, 219, 0.5);
}
.show > .btn-outline-primary.dropdown-toggle {
  color: #fff;
  background-color: #321fdb;
  border-color: #321fdb;
}
.show > .btn-outline-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(50, 31, 219, 0.5);
}
.btn-outline-secondary {
  color: #ced2d8;
  border-color: #ced2d8;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn-outline-secondary:hover {
    color: #4f5d73;
    background-color: #ced2d8;
    border-color: #ced2d8;
  }
}
.btn-outline-secondary:focus, .btn-outline-secondary.focus {
  box-shadow: 0 0 0 0.2rem rgba(206, 210, 216, 0.5);
}
.btn-outline-secondary.disabled, .btn-outline-secondary:disabled {
  color: #ced2d8;
  background-color: transparent;
}
.btn-outline-secondary:not(:disabled):not(.disabled):active, .btn-outline-secondary:not(:disabled):not(.disabled).active {
  color: #4f5d73;
  background-color: #ced2d8;
  border-color: #ced2d8;
}
.btn-outline-secondary:not(:disabled):not(.disabled):active:focus, .btn-outline-secondary:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(206, 210, 216, 0.5);
}
.show > .btn-outline-secondary.dropdown-toggle {
  color: #4f5d73;
  background-color: #ced2d8;
  border-color: #ced2d8;
}
.show > .btn-outline-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(206, 210, 216, 0.5);
}
.btn-outline-success {
  color: #2eb85c;
  border-color: #2eb85c;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn-outline-success:hover {
    color: #fff;
    background-color: #2eb85c;
    border-color: #2eb85c;
  }
}
.btn-outline-success:focus, .btn-outline-success.focus {
  box-shadow: 0 0 0 0.2rem rgba(46, 184, 92, 0.5);
}
.btn-outline-success.disabled, .btn-outline-success:disabled {
  color: #2eb85c;
  background-color: transparent;
}
.btn-outline-success:not(:disabled):not(.disabled):active, .btn-outline-success:not(:disabled):not(.disabled).active {
  color: #fff;
  background-color: #2eb85c;
  border-color: #2eb85c;
}
.btn-outline-success:not(:disabled):not(.disabled):active:focus, .btn-outline-success:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(46, 184, 92, 0.5);
}
.show > .btn-outline-success.dropdown-toggle {
  color: #fff;
  background-color: #2eb85c;
  border-color: #2eb85c;
}
.show > .btn-outline-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(46, 184, 92, 0.5);
}
.btn-outline-info {
  color: #39f;
  border-color: #39f;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn-outline-info:hover {
    color: #fff;
    background-color: #39f;
    border-color: #39f;
  }
}
.btn-outline-info:focus, .btn-outline-info.focus {
  box-shadow: 0 0 0 0.2rem rgba(51, 153, 255, 0.5);
}
.btn-outline-info.disabled, .btn-outline-info:disabled {
  color: #39f;
  background-color: transparent;
}
.btn-outline-info:not(:disabled):not(.disabled):active, .btn-outline-info:not(:disabled):not(.disabled).active {
  color: #fff;
  background-color: #39f;
  border-color: #39f;
}
.btn-outline-info:not(:disabled):not(.disabled):active:focus, .btn-outline-info:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(51, 153, 255, 0.5);
}
.show > .btn-outline-info.dropdown-toggle {
  color: #fff;
  background-color: #39f;
  border-color: #39f;
}
.show > .btn-outline-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(51, 153, 255, 0.5);
}
.btn-outline-warning {
  color: #f9b115;
  border-color: #f9b115;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn-outline-warning:hover {
    color: #4f5d73;
    background-color: #f9b115;
    border-color: #f9b115;
  }
}
.btn-outline-warning:focus, .btn-outline-warning.focus {
  box-shadow: 0 0 0 0.2rem rgba(249, 177, 21, 0.5);
}
.btn-outline-warning.disabled, .btn-outline-warning:disabled {
  color: #f9b115;
  background-color: transparent;
}
.btn-outline-warning:not(:disabled):not(.disabled):active, .btn-outline-warning:not(:disabled):not(.disabled).active {
  color: #4f5d73;
  background-color: #f9b115;
  border-color: #f9b115;
}
.btn-outline-warning:not(:disabled):not(.disabled):active:focus, .btn-outline-warning:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(249, 177, 21, 0.5);
}
.show > .btn-outline-warning.dropdown-toggle {
  color: #4f5d73;
  background-color: #f9b115;
  border-color: #f9b115;
}
.show > .btn-outline-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(249, 177, 21, 0.5);
}
.btn-outline-danger {
  color: #e55353;
  border-color: #e55353;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn-outline-danger:hover {
    color: #fff;
    background-color: #e55353;
    border-color: #e55353;
  }
}
.btn-outline-danger:focus, .btn-outline-danger.focus {
  box-shadow: 0 0 0 0.2rem rgba(229, 83, 83, 0.5);
}
.btn-outline-danger.disabled, .btn-outline-danger:disabled {
  color: #e55353;
  background-color: transparent;
}
.btn-outline-danger:not(:disabled):not(.disabled):active, .btn-outline-danger:not(:disabled):not(.disabled).active {
  color: #fff;
  background-color: #e55353;
  border-color: #e55353;
}
.btn-outline-danger:not(:disabled):not(.disabled):active:focus, .btn-outline-danger:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(229, 83, 83, 0.5);
}
.show > .btn-outline-danger.dropdown-toggle {
  color: #fff;
  background-color: #e55353;
  border-color: #e55353;
}
.show > .btn-outline-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(229, 83, 83, 0.5);
}
.btn-outline-light {
  color: #ebedef;
  border-color: #ebedef;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn-outline-light:hover {
    color: #4f5d73;
    background-color: #ebedef;
    border-color: #ebedef;
  }
}
.btn-outline-light:focus, .btn-outline-light.focus {
  box-shadow: 0 0 0 0.2rem rgba(235, 237, 239, 0.5);
}
.btn-outline-light.disabled, .btn-outline-light:disabled {
  color: #ebedef;
  background-color: transparent;
}
.btn-outline-light:not(:disabled):not(.disabled):active, .btn-outline-light:not(:disabled):not(.disabled).active {
  color: #4f5d73;
  background-color: #ebedef;
  border-color: #ebedef;
}
.btn-outline-light:not(:disabled):not(.disabled):active:focus, .btn-outline-light:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(235, 237, 239, 0.5);
}
.show > .btn-outline-light.dropdown-toggle {
  color: #4f5d73;
  background-color: #ebedef;
  border-color: #ebedef;
}
.show > .btn-outline-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(235, 237, 239, 0.5);
}
.btn-outline-dark {
  color: #636f83;
  border-color: #636f83;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn-outline-dark:hover {
    color: #fff;
    background-color: #636f83;
    border-color: #636f83;
  }
}
.btn-outline-dark:focus, .btn-outline-dark.focus {
  box-shadow: 0 0 0 0.2rem rgba(99, 111, 131, 0.5);
}
.btn-outline-dark.disabled, .btn-outline-dark:disabled {
  color: #636f83;
  background-color: transparent;
}
.btn-outline-dark:not(:disabled):not(.disabled):active, .btn-outline-dark:not(:disabled):not(.disabled).active {
  color: #fff;
  background-color: #636f83;
  border-color: #636f83;
}
.btn-outline-dark:not(:disabled):not(.disabled):active:focus, .btn-outline-dark:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(99, 111, 131, 0.5);
}
.show > .btn-outline-dark.dropdown-toggle {
  color: #fff;
  background-color: #636f83;
  border-color: #636f83;
}
.show > .btn-outline-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(99, 111, 131, 0.5);
}
.c-dark-theme .btn-outline-primary {
  color: #4638c2;
  border-color: #4638c2;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-dark-theme .btn-outline-primary:hover {
    color: #fff;
    background-color: #4638c2;
    border-color: #4638c2;
  }
}
.c-dark-theme .btn-outline-primary:focus, .c-dark-theme .btn-outline-primary.focus {
  box-shadow: 0 0 0 0.2rem rgba(70, 56, 194, 0.5);
}
.c-dark-theme .btn-outline-primary.disabled, .c-dark-theme .btn-outline-primary:disabled {
  color: #4638c2;
  background-color: transparent;
}
.c-dark-theme .btn-outline-primary:not(:disabled):not(.disabled):active, .c-dark-theme .btn-outline-primary:not(:disabled):not(.disabled).active {
  color: #fff;
  background-color: #4638c2;
  border-color: #4638c2;
}
.c-dark-theme .btn-outline-primary:not(:disabled):not(.disabled):active:focus, .c-dark-theme .btn-outline-primary:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(70, 56, 194, 0.5);
}
.c-dark-theme .show > .btn-outline-primary.dropdown-toggle {
  color: #fff;
  background-color: #4638c2;
  border-color: #4638c2;
}
.c-dark-theme .show > .btn-outline-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(70, 56, 194, 0.5);
}
.c-dark-theme .btn-outline-secondary {
  color: #4c4f54;
  border-color: #4c4f54;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-dark-theme .btn-outline-secondary:hover {
    color: #fff;
    background-color: #4c4f54;
    border-color: #4c4f54;
  }
}
.c-dark-theme .btn-outline-secondary:focus, .c-dark-theme .btn-outline-secondary.focus {
  box-shadow: 0 0 0 0.2rem rgba(76, 79, 84, 0.5);
}
.c-dark-theme .btn-outline-secondary.disabled, .c-dark-theme .btn-outline-secondary:disabled {
  color: #4c4f54;
  background-color: transparent;
}
.c-dark-theme .btn-outline-secondary:not(:disabled):not(.disabled):active, .c-dark-theme .btn-outline-secondary:not(:disabled):not(.disabled).active {
  color: #fff;
  background-color: #4c4f54;
  border-color: #4c4f54;
}
.c-dark-theme .btn-outline-secondary:not(:disabled):not(.disabled):active:focus, .c-dark-theme .btn-outline-secondary:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(76, 79, 84, 0.5);
}
.c-dark-theme .show > .btn-outline-secondary.dropdown-toggle {
  color: #fff;
  background-color: #4c4f54;
  border-color: #4c4f54;
}
.c-dark-theme .show > .btn-outline-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(76, 79, 84, 0.5);
}
.c-dark-theme .btn-outline-success {
  color: #45a164;
  border-color: #45a164;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-dark-theme .btn-outline-success:hover {
    color: #fff;
    background-color: #45a164;
    border-color: #45a164;
  }
}
.c-dark-theme .btn-outline-success:focus, .c-dark-theme .btn-outline-success.focus {
  box-shadow: 0 0 0 0.2rem rgba(69, 161, 100, 0.5);
}
.c-dark-theme .btn-outline-success.disabled, .c-dark-theme .btn-outline-success:disabled {
  color: #45a164;
  background-color: transparent;
}
.c-dark-theme .btn-outline-success:not(:disabled):not(.disabled):active, .c-dark-theme .btn-outline-success:not(:disabled):not(.disabled).active {
  color: #fff;
  background-color: #45a164;
  border-color: #45a164;
}
.c-dark-theme .btn-outline-success:not(:disabled):not(.disabled):active:focus, .c-dark-theme .btn-outline-success:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(69, 161, 100, 0.5);
}
.c-dark-theme .show > .btn-outline-success.dropdown-toggle {
  color: #fff;
  background-color: #45a164;
  border-color: #45a164;
}
.c-dark-theme .show > .btn-outline-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(69, 161, 100, 0.5);
}
.c-dark-theme .btn-outline-info {
  color: #4799eb;
  border-color: #4799eb;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-dark-theme .btn-outline-info:hover {
    color: #fff;
    background-color: #4799eb;
    border-color: #4799eb;
  }
}
.c-dark-theme .btn-outline-info:focus, .c-dark-theme .btn-outline-info.focus {
  box-shadow: 0 0 0 0.2rem rgba(71, 153, 235, 0.5);
}
.c-dark-theme .btn-outline-info.disabled, .c-dark-theme .btn-outline-info:disabled {
  color: #4799eb;
  background-color: transparent;
}
.c-dark-theme .btn-outline-info:not(:disabled):not(.disabled):active, .c-dark-theme .btn-outline-info:not(:disabled):not(.disabled).active {
  color: #fff;
  background-color: #4799eb;
  border-color: #4799eb;
}
.c-dark-theme .btn-outline-info:not(:disabled):not(.disabled):active:focus, .c-dark-theme .btn-outline-info:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(71, 153, 235, 0.5);
}
.c-dark-theme .show > .btn-outline-info.dropdown-toggle {
  color: #fff;
  background-color: #4799eb;
  border-color: #4799eb;
}
.c-dark-theme .show > .btn-outline-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(71, 153, 235, 0.5);
}
.c-dark-theme .btn-outline-warning {
  color: #e1a82d;
  border-color: #e1a82d;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-dark-theme .btn-outline-warning:hover {
    color: #4f5d73;
    background-color: #e1a82d;
    border-color: #e1a82d;
  }
}
.c-dark-theme .btn-outline-warning:focus, .c-dark-theme .btn-outline-warning.focus {
  box-shadow: 0 0 0 0.2rem rgba(225, 168, 45, 0.5);
}
.c-dark-theme .btn-outline-warning.disabled, .c-dark-theme .btn-outline-warning:disabled {
  color: #e1a82d;
  background-color: transparent;
}
.c-dark-theme .btn-outline-warning:not(:disabled):not(.disabled):active, .c-dark-theme .btn-outline-warning:not(:disabled):not(.disabled).active {
  color: #4f5d73;
  background-color: #e1a82d;
  border-color: #e1a82d;
}
.c-dark-theme .btn-outline-warning:not(:disabled):not(.disabled):active:focus, .c-dark-theme .btn-outline-warning:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(225, 168, 45, 0.5);
}
.c-dark-theme .show > .btn-outline-warning.dropdown-toggle {
  color: #4f5d73;
  background-color: #e1a82d;
  border-color: #e1a82d;
}
.c-dark-theme .show > .btn-outline-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(225, 168, 45, 0.5);
}
.c-dark-theme .btn-outline-danger {
  color: #d16767;
  border-color: #d16767;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-dark-theme .btn-outline-danger:hover {
    color: #fff;
    background-color: #d16767;
    border-color: #d16767;
  }
}
.c-dark-theme .btn-outline-danger:focus, .c-dark-theme .btn-outline-danger.focus {
  box-shadow: 0 0 0 0.2rem rgba(209, 103, 103, 0.5);
}
.c-dark-theme .btn-outline-danger.disabled, .c-dark-theme .btn-outline-danger:disabled {
  color: #d16767;
  background-color: transparent;
}
.c-dark-theme .btn-outline-danger:not(:disabled):not(.disabled):active, .c-dark-theme .btn-outline-danger:not(:disabled):not(.disabled).active {
  color: #fff;
  background-color: #d16767;
  border-color: #d16767;
}
.c-dark-theme .btn-outline-danger:not(:disabled):not(.disabled):active:focus, .c-dark-theme .btn-outline-danger:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(209, 103, 103, 0.5);
}
.c-dark-theme .show > .btn-outline-danger.dropdown-toggle {
  color: #fff;
  background-color: #d16767;
  border-color: #d16767;
}
.c-dark-theme .show > .btn-outline-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(209, 103, 103, 0.5);
}
.c-dark-theme .btn-outline-light {
  color: #6c6e7e;
  border-color: #6c6e7e;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-dark-theme .btn-outline-light:hover {
    color: #fff;
    background-color: #6c6e7e;
    border-color: #6c6e7e;
  }
}
.c-dark-theme .btn-outline-light:focus, .c-dark-theme .btn-outline-light.focus {
  box-shadow: 0 0 0 0.2rem rgba(108, 110, 126, 0.5);
}
.c-dark-theme .btn-outline-light.disabled, .c-dark-theme .btn-outline-light:disabled {
  color: #6c6e7e;
  background-color: transparent;
}
.c-dark-theme .btn-outline-light:not(:disabled):not(.disabled):active, .c-dark-theme .btn-outline-light:not(:disabled):not(.disabled).active {
  color: #fff;
  background-color: #6c6e7e;
  border-color: #6c6e7e;
}
.c-dark-theme .btn-outline-light:not(:disabled):not(.disabled):active:focus, .c-dark-theme .btn-outline-light:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(108, 110, 126, 0.5);
}
.c-dark-theme .show > .btn-outline-light.dropdown-toggle {
  color: #fff;
  background-color: #6c6e7e;
  border-color: #6c6e7e;
}
.c-dark-theme .show > .btn-outline-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(108, 110, 126, 0.5);
}
.c-dark-theme .btn-outline-dark {
  color: #0e0e15;
  border-color: #0e0e15;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-dark-theme .btn-outline-dark:hover {
    color: #fff;
    background-color: #0e0e15;
    border-color: #0e0e15;
  }
}
.c-dark-theme .btn-outline-dark:focus, .c-dark-theme .btn-outline-dark.focus {
  box-shadow: 0 0 0 0.2rem rgba(14, 14, 21, 0.5);
}
.c-dark-theme .btn-outline-dark.disabled, .c-dark-theme .btn-outline-dark:disabled {
  color: #0e0e15;
  background-color: transparent;
}
.c-dark-theme .btn-outline-dark:not(:disabled):not(.disabled):active, .c-dark-theme .btn-outline-dark:not(:disabled):not(.disabled).active {
  color: #fff;
  background-color: #0e0e15;
  border-color: #0e0e15;
}
.c-dark-theme .btn-outline-dark:not(:disabled):not(.disabled):active:focus, .c-dark-theme .btn-outline-dark:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(14, 14, 21, 0.5);
}
.c-dark-theme .show > .btn-outline-dark.dropdown-toggle {
  color: #fff;
  background-color: #0e0e15;
  border-color: #0e0e15;
}
.c-dark-theme .show > .btn-outline-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(14, 14, 21, 0.5);
}
.c-legacy-theme .btn-outline-primary {
  color: #20a8d8;
  border-color: #20a8d8;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-legacy-theme .btn-outline-primary:hover {
    color: #fff;
    background-color: #20a8d8;
    border-color: #20a8d8;
  }
}
.c-legacy-theme .btn-outline-primary:focus, .c-legacy-theme .btn-outline-primary.focus {
  box-shadow: 0 0 0 0.2rem rgba(32, 168, 216, 0.5);
}
.c-legacy-theme .btn-outline-primary.disabled, .c-legacy-theme .btn-outline-primary:disabled {
  color: #20a8d8;
  background-color: transparent;
}
.c-legacy-theme .btn-outline-primary:not(:disabled):not(.disabled):active, .c-legacy-theme .btn-outline-primary:not(:disabled):not(.disabled).active {
  color: #fff;
  background-color: #20a8d8;
  border-color: #20a8d8;
}
.c-legacy-theme .btn-outline-primary:not(:disabled):not(.disabled):active:focus, .c-legacy-theme .btn-outline-primary:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(32, 168, 216, 0.5);
}
.c-legacy-theme .show > .btn-outline-primary.dropdown-toggle {
  color: #fff;
  background-color: #20a8d8;
  border-color: #20a8d8;
}
.c-legacy-theme .show > .btn-outline-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(32, 168, 216, 0.5);
}
.c-legacy-theme .btn-outline-secondary {
  color: #c8ced3;
  border-color: #c8ced3;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-legacy-theme .btn-outline-secondary:hover {
    color: #4f5d73;
    background-color: #c8ced3;
    border-color: #c8ced3;
  }
}
.c-legacy-theme .btn-outline-secondary:focus, .c-legacy-theme .btn-outline-secondary.focus {
  box-shadow: 0 0 0 0.2rem rgba(200, 206, 211, 0.5);
}
.c-legacy-theme .btn-outline-secondary.disabled, .c-legacy-theme .btn-outline-secondary:disabled {
  color: #c8ced3;
  background-color: transparent;
}
.c-legacy-theme .btn-outline-secondary:not(:disabled):not(.disabled):active, .c-legacy-theme .btn-outline-secondary:not(:disabled):not(.disabled).active {
  color: #4f5d73;
  background-color: #c8ced3;
  border-color: #c8ced3;
}
.c-legacy-theme .btn-outline-secondary:not(:disabled):not(.disabled):active:focus, .c-legacy-theme .btn-outline-secondary:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(200, 206, 211, 0.5);
}
.c-legacy-theme .show > .btn-outline-secondary.dropdown-toggle {
  color: #4f5d73;
  background-color: #c8ced3;
  border-color: #c8ced3;
}
.c-legacy-theme .show > .btn-outline-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(200, 206, 211, 0.5);
}
.c-legacy-theme .btn-outline-success {
  color: #4dbd74;
  border-color: #4dbd74;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-legacy-theme .btn-outline-success:hover {
    color: #fff;
    background-color: #4dbd74;
    border-color: #4dbd74;
  }
}
.c-legacy-theme .btn-outline-success:focus, .c-legacy-theme .btn-outline-success.focus {
  box-shadow: 0 0 0 0.2rem rgba(77, 189, 116, 0.5);
}
.c-legacy-theme .btn-outline-success.disabled, .c-legacy-theme .btn-outline-success:disabled {
  color: #4dbd74;
  background-color: transparent;
}
.c-legacy-theme .btn-outline-success:not(:disabled):not(.disabled):active, .c-legacy-theme .btn-outline-success:not(:disabled):not(.disabled).active {
  color: #fff;
  background-color: #4dbd74;
  border-color: #4dbd74;
}
.c-legacy-theme .btn-outline-success:not(:disabled):not(.disabled):active:focus, .c-legacy-theme .btn-outline-success:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(77, 189, 116, 0.5);
}
.c-legacy-theme .show > .btn-outline-success.dropdown-toggle {
  color: #fff;
  background-color: #4dbd74;
  border-color: #4dbd74;
}
.c-legacy-theme .show > .btn-outline-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(77, 189, 116, 0.5);
}
.c-legacy-theme .btn-outline-info {
  color: #63c2de;
  border-color: #63c2de;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-legacy-theme .btn-outline-info:hover {
    color: #4f5d73;
    background-color: #63c2de;
    border-color: #63c2de;
  }
}
.c-legacy-theme .btn-outline-info:focus, .c-legacy-theme .btn-outline-info.focus {
  box-shadow: 0 0 0 0.2rem rgba(99, 194, 222, 0.5);
}
.c-legacy-theme .btn-outline-info.disabled, .c-legacy-theme .btn-outline-info:disabled {
  color: #63c2de;
  background-color: transparent;
}
.c-legacy-theme .btn-outline-info:not(:disabled):not(.disabled):active, .c-legacy-theme .btn-outline-info:not(:disabled):not(.disabled).active {
  color: #4f5d73;
  background-color: #63c2de;
  border-color: #63c2de;
}
.c-legacy-theme .btn-outline-info:not(:disabled):not(.disabled):active:focus, .c-legacy-theme .btn-outline-info:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(99, 194, 222, 0.5);
}
.c-legacy-theme .show > .btn-outline-info.dropdown-toggle {
  color: #4f5d73;
  background-color: #63c2de;
  border-color: #63c2de;
}
.c-legacy-theme .show > .btn-outline-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(99, 194, 222, 0.5);
}
.c-legacy-theme .btn-outline-warning {
  color: #ffc107;
  border-color: #ffc107;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-legacy-theme .btn-outline-warning:hover {
    color: #4f5d73;
    background-color: #ffc107;
    border-color: #ffc107;
  }
}
.c-legacy-theme .btn-outline-warning:focus, .c-legacy-theme .btn-outline-warning.focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}
.c-legacy-theme .btn-outline-warning.disabled, .c-legacy-theme .btn-outline-warning:disabled {
  color: #ffc107;
  background-color: transparent;
}
.c-legacy-theme .btn-outline-warning:not(:disabled):not(.disabled):active, .c-legacy-theme .btn-outline-warning:not(:disabled):not(.disabled).active {
  color: #4f5d73;
  background-color: #ffc107;
  border-color: #ffc107;
}
.c-legacy-theme .btn-outline-warning:not(:disabled):not(.disabled):active:focus, .c-legacy-theme .btn-outline-warning:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}
.c-legacy-theme .show > .btn-outline-warning.dropdown-toggle {
  color: #4f5d73;
  background-color: #ffc107;
  border-color: #ffc107;
}
.c-legacy-theme .show > .btn-outline-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}
.c-legacy-theme .btn-outline-danger {
  color: #f86c6b;
  border-color: #f86c6b;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-legacy-theme .btn-outline-danger:hover {
    color: #fff;
    background-color: #f86c6b;
    border-color: #f86c6b;
  }
}
.c-legacy-theme .btn-outline-danger:focus, .c-legacy-theme .btn-outline-danger.focus {
  box-shadow: 0 0 0 0.2rem rgba(248, 108, 107, 0.5);
}
.c-legacy-theme .btn-outline-danger.disabled, .c-legacy-theme .btn-outline-danger:disabled {
  color: #f86c6b;
  background-color: transparent;
}
.c-legacy-theme .btn-outline-danger:not(:disabled):not(.disabled):active, .c-legacy-theme .btn-outline-danger:not(:disabled):not(.disabled).active {
  color: #fff;
  background-color: #f86c6b;
  border-color: #f86c6b;
}
.c-legacy-theme .btn-outline-danger:not(:disabled):not(.disabled):active:focus, .c-legacy-theme .btn-outline-danger:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(248, 108, 107, 0.5);
}
.c-legacy-theme .show > .btn-outline-danger.dropdown-toggle {
  color: #fff;
  background-color: #f86c6b;
  border-color: #f86c6b;
}
.c-legacy-theme .show > .btn-outline-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(248, 108, 107, 0.5);
}
.c-legacy-theme .btn-outline-light {
  color: #f0f3f5;
  border-color: #f0f3f5;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-legacy-theme .btn-outline-light:hover {
    color: #4f5d73;
    background-color: #f0f3f5;
    border-color: #f0f3f5;
  }
}
.c-legacy-theme .btn-outline-light:focus, .c-legacy-theme .btn-outline-light.focus {
  box-shadow: 0 0 0 0.2rem rgba(240, 243, 245, 0.5);
}
.c-legacy-theme .btn-outline-light.disabled, .c-legacy-theme .btn-outline-light:disabled {
  color: #f0f3f5;
  background-color: transparent;
}
.c-legacy-theme .btn-outline-light:not(:disabled):not(.disabled):active, .c-legacy-theme .btn-outline-light:not(:disabled):not(.disabled).active {
  color: #4f5d73;
  background-color: #f0f3f5;
  border-color: #f0f3f5;
}
.c-legacy-theme .btn-outline-light:not(:disabled):not(.disabled):active:focus, .c-legacy-theme .btn-outline-light:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(240, 243, 245, 0.5);
}
.c-legacy-theme .show > .btn-outline-light.dropdown-toggle {
  color: #4f5d73;
  background-color: #f0f3f5;
  border-color: #f0f3f5;
}
.c-legacy-theme .show > .btn-outline-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(240, 243, 245, 0.5);
}
.c-legacy-theme .btn-outline-dark {
  color: #2f353a;
  border-color: #2f353a;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-legacy-theme .btn-outline-dark:hover {
    color: #fff;
    background-color: #2f353a;
    border-color: #2f353a;
  }
}
.c-legacy-theme .btn-outline-dark:focus, .c-legacy-theme .btn-outline-dark.focus {
  box-shadow: 0 0 0 0.2rem rgba(47, 53, 58, 0.5);
}
.c-legacy-theme .btn-outline-dark.disabled, .c-legacy-theme .btn-outline-dark:disabled {
  color: #2f353a;
  background-color: transparent;
}
.c-legacy-theme .btn-outline-dark:not(:disabled):not(.disabled):active, .c-legacy-theme .btn-outline-dark:not(:disabled):not(.disabled).active {
  color: #fff;
  background-color: #2f353a;
  border-color: #2f353a;
}
.c-legacy-theme .btn-outline-dark:not(:disabled):not(.disabled):active:focus, .c-legacy-theme .btn-outline-dark:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(47, 53, 58, 0.5);
}
.c-legacy-theme .show > .btn-outline-dark.dropdown-toggle {
  color: #fff;
  background-color: #2f353a;
  border-color: #2f353a;
}
.c-legacy-theme .show > .btn-outline-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(47, 53, 58, 0.5);
}
.btn-link {
  font-weight: 400;
  color: #321fdb;
  text-decoration: none;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn-link:hover {
    color: #231698;
    text-decoration: underline;
  }
}
.btn-link:focus, .btn-link.focus {
  text-decoration: underline;
}
.btn-link:disabled, .btn-link.disabled {
  color: #8a93a2;
  pointer-events: none;
}
.btn-lg, .btn-group-lg > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.09375rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}
.btn-lg i, .btn-group-lg > .btn i,
.btn-lg .c-icon,
.btn-group-lg > .btn .c-icon {
  width: 1.09375rem;
  height: 1.09375rem;
  margin: 0.2734375rem 0;
}
.btn-sm, .btn-group-sm > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.765625rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}
.btn-sm i, .btn-group-sm > .btn i,
.btn-sm .c-icon,
.btn-group-sm > .btn .c-icon {
  width: 0.765625rem;
  height: 0.765625rem;
  margin: 0.19140625rem 0;
}
.btn-block {
  display: block;
  width: 100%;
}
.btn-block + .btn-block {
  margin-top: 0.5rem;
}
input[type=submit].btn-block,
input[type=reset].btn-block,
input[type=button].btn-block {
  width: 100%;
}
.btn-pill {
  border-radius: 50em;
}
.btn-square {
  border-radius: 0;
}
.btn-ghost-primary {
  color: #321fdb;
  background-color: transparent;
  background-image: none;
  border-color: transparent;
}
.btn-ghost-primary:hover {
  color: #fff;
  background-color: #321fdb;
  border-color: #321fdb;
}
.btn-ghost-primary:focus, .btn-ghost-primary.focus {
  box-shadow: 0 0 0 0.2rem rgba(50, 31, 219, 0.5);
}
.btn-ghost-primary.disabled, .btn-ghost-primary:disabled {
  color: #321fdb;
  background-color: transparent;
  border-color: transparent;
}
.btn-ghost-primary:not(:disabled):not(.disabled):active, .btn-ghost-primary:not(:disabled):not(.disabled).active {
  color: #fff;
  background-color: #321fdb;
  border-color: #321fdb;
}
.btn-ghost-primary:not(:disabled):not(.disabled):active:focus, .btn-ghost-primary:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(50, 31, 219, 0.5);
}
.show > .btn-ghost-primary.dropdown-toggle {
  color: #fff;
  background-color: #321fdb;
  border-color: #321fdb;
}
.show > .btn-ghost-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(50, 31, 219, 0.5);
}
.btn-ghost-secondary {
  color: #ced2d8;
  background-color: transparent;
  background-image: none;
  border-color: transparent;
}
.btn-ghost-secondary:hover {
  color: #4f5d73;
  background-color: #ced2d8;
  border-color: #ced2d8;
}
.btn-ghost-secondary:focus, .btn-ghost-secondary.focus {
  box-shadow: 0 0 0 0.2rem rgba(206, 210, 216, 0.5);
}
.btn-ghost-secondary.disabled, .btn-ghost-secondary:disabled {
  color: #ced2d8;
  background-color: transparent;
  border-color: transparent;
}
.btn-ghost-secondary:not(:disabled):not(.disabled):active, .btn-ghost-secondary:not(:disabled):not(.disabled).active {
  color: #4f5d73;
  background-color: #ced2d8;
  border-color: #ced2d8;
}
.btn-ghost-secondary:not(:disabled):not(.disabled):active:focus, .btn-ghost-secondary:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(206, 210, 216, 0.5);
}
.show > .btn-ghost-secondary.dropdown-toggle {
  color: #4f5d73;
  background-color: #ced2d8;
  border-color: #ced2d8;
}
.show > .btn-ghost-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(206, 210, 216, 0.5);
}
.btn-ghost-success {
  color: #2eb85c;
  background-color: transparent;
  background-image: none;
  border-color: transparent;
}
.btn-ghost-success:hover {
  color: #fff;
  background-color: #2eb85c;
  border-color: #2eb85c;
}
.btn-ghost-success:focus, .btn-ghost-success.focus {
  box-shadow: 0 0 0 0.2rem rgba(46, 184, 92, 0.5);
}
.btn-ghost-success.disabled, .btn-ghost-success:disabled {
  color: #2eb85c;
  background-color: transparent;
  border-color: transparent;
}
.btn-ghost-success:not(:disabled):not(.disabled):active, .btn-ghost-success:not(:disabled):not(.disabled).active {
  color: #fff;
  background-color: #2eb85c;
  border-color: #2eb85c;
}
.btn-ghost-success:not(:disabled):not(.disabled):active:focus, .btn-ghost-success:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(46, 184, 92, 0.5);
}
.show > .btn-ghost-success.dropdown-toggle {
  color: #fff;
  background-color: #2eb85c;
  border-color: #2eb85c;
}
.show > .btn-ghost-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(46, 184, 92, 0.5);
}
.btn-ghost-info {
  color: #39f;
  background-color: transparent;
  background-image: none;
  border-color: transparent;
}
.btn-ghost-info:hover {
  color: #fff;
  background-color: #39f;
  border-color: #39f;
}
.btn-ghost-info:focus, .btn-ghost-info.focus {
  box-shadow: 0 0 0 0.2rem rgba(51, 153, 255, 0.5);
}
.btn-ghost-info.disabled, .btn-ghost-info:disabled {
  color: #39f;
  background-color: transparent;
  border-color: transparent;
}
.btn-ghost-info:not(:disabled):not(.disabled):active, .btn-ghost-info:not(:disabled):not(.disabled).active {
  color: #fff;
  background-color: #39f;
  border-color: #39f;
}
.btn-ghost-info:not(:disabled):not(.disabled):active:focus, .btn-ghost-info:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(51, 153, 255, 0.5);
}
.show > .btn-ghost-info.dropdown-toggle {
  color: #fff;
  background-color: #39f;
  border-color: #39f;
}
.show > .btn-ghost-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(51, 153, 255, 0.5);
}
.btn-ghost-warning {
  color: #f9b115;
  background-color: transparent;
  background-image: none;
  border-color: transparent;
}
.btn-ghost-warning:hover {
  color: #4f5d73;
  background-color: #f9b115;
  border-color: #f9b115;
}
.btn-ghost-warning:focus, .btn-ghost-warning.focus {
  box-shadow: 0 0 0 0.2rem rgba(249, 177, 21, 0.5);
}
.btn-ghost-warning.disabled, .btn-ghost-warning:disabled {
  color: #f9b115;
  background-color: transparent;
  border-color: transparent;
}
.btn-ghost-warning:not(:disabled):not(.disabled):active, .btn-ghost-warning:not(:disabled):not(.disabled).active {
  color: #4f5d73;
  background-color: #f9b115;
  border-color: #f9b115;
}
.btn-ghost-warning:not(:disabled):not(.disabled):active:focus, .btn-ghost-warning:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(249, 177, 21, 0.5);
}
.show > .btn-ghost-warning.dropdown-toggle {
  color: #4f5d73;
  background-color: #f9b115;
  border-color: #f9b115;
}
.show > .btn-ghost-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(249, 177, 21, 0.5);
}
.btn-ghost-danger {
  color: #e55353;
  background-color: transparent;
  background-image: none;
  border-color: transparent;
}
.btn-ghost-danger:hover {
  color: #fff;
  background-color: #e55353;
  border-color: #e55353;
}
.btn-ghost-danger:focus, .btn-ghost-danger.focus {
  box-shadow: 0 0 0 0.2rem rgba(229, 83, 83, 0.5);
}
.btn-ghost-danger.disabled, .btn-ghost-danger:disabled {
  color: #e55353;
  background-color: transparent;
  border-color: transparent;
}
.btn-ghost-danger:not(:disabled):not(.disabled):active, .btn-ghost-danger:not(:disabled):not(.disabled).active {
  color: #fff;
  background-color: #e55353;
  border-color: #e55353;
}
.btn-ghost-danger:not(:disabled):not(.disabled):active:focus, .btn-ghost-danger:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(229, 83, 83, 0.5);
}
.show > .btn-ghost-danger.dropdown-toggle {
  color: #fff;
  background-color: #e55353;
  border-color: #e55353;
}
.show > .btn-ghost-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(229, 83, 83, 0.5);
}
.btn-ghost-light {
  color: #ebedef;
  background-color: transparent;
  background-image: none;
  border-color: transparent;
}
.btn-ghost-light:hover {
  color: #4f5d73;
  background-color: #ebedef;
  border-color: #ebedef;
}
.btn-ghost-light:focus, .btn-ghost-light.focus {
  box-shadow: 0 0 0 0.2rem rgba(235, 237, 239, 0.5);
}
.btn-ghost-light.disabled, .btn-ghost-light:disabled {
  color: #ebedef;
  background-color: transparent;
  border-color: transparent;
}
.btn-ghost-light:not(:disabled):not(.disabled):active, .btn-ghost-light:not(:disabled):not(.disabled).active {
  color: #4f5d73;
  background-color: #ebedef;
  border-color: #ebedef;
}
.btn-ghost-light:not(:disabled):not(.disabled):active:focus, .btn-ghost-light:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(235, 237, 239, 0.5);
}
.show > .btn-ghost-light.dropdown-toggle {
  color: #4f5d73;
  background-color: #ebedef;
  border-color: #ebedef;
}
.show > .btn-ghost-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(235, 237, 239, 0.5);
}
.btn-ghost-dark {
  color: #636f83;
  background-color: transparent;
  background-image: none;
  border-color: transparent;
}
.btn-ghost-dark:hover {
  color: #fff;
  background-color: #636f83;
  border-color: #636f83;
}
.btn-ghost-dark:focus, .btn-ghost-dark.focus {
  box-shadow: 0 0 0 0.2rem rgba(99, 111, 131, 0.5);
}
.btn-ghost-dark.disabled, .btn-ghost-dark:disabled {
  color: #636f83;
  background-color: transparent;
  border-color: transparent;
}
.btn-ghost-dark:not(:disabled):not(.disabled):active, .btn-ghost-dark:not(:disabled):not(.disabled).active {
  color: #fff;
  background-color: #636f83;
  border-color: #636f83;
}
.btn-ghost-dark:not(:disabled):not(.disabled):active:focus, .btn-ghost-dark:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(99, 111, 131, 0.5);
}
.show > .btn-ghost-dark.dropdown-toggle {
  color: #fff;
  background-color: #636f83;
  border-color: #636f83;
}
.show > .btn-ghost-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(99, 111, 131, 0.5);
}
.c-dark-theme .btn-ghost-primary {
  color: #4638c2;
  background-color: transparent;
  background-image: none;
  border-color: transparent;
}
.c-dark-theme .btn-ghost-primary:hover {
  color: #fff;
  background-color: #4638c2;
  border-color: #4638c2;
}
.c-dark-theme .btn-ghost-primary:focus, .c-dark-theme .btn-ghost-primary.focus {
  box-shadow: 0 0 0 0.2rem rgba(70, 56, 194, 0.5);
}
.c-dark-theme .btn-ghost-primary.disabled, .c-dark-theme .btn-ghost-primary:disabled {
  color: #4638c2;
  background-color: transparent;
  border-color: transparent;
}
.c-dark-theme .btn-ghost-primary:not(:disabled):not(.disabled):active, .c-dark-theme .btn-ghost-primary:not(:disabled):not(.disabled).active {
  color: #fff;
  background-color: #4638c2;
  border-color: #4638c2;
}
.c-dark-theme .btn-ghost-primary:not(:disabled):not(.disabled):active:focus, .c-dark-theme .btn-ghost-primary:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(70, 56, 194, 0.5);
}
.c-dark-theme .show > .btn-ghost-primary.dropdown-toggle {
  color: #fff;
  background-color: #4638c2;
  border-color: #4638c2;
}
.c-dark-theme .show > .btn-ghost-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(70, 56, 194, 0.5);
}
.c-dark-theme .btn-ghost-secondary {
  color: #4c4f54;
  background-color: transparent;
  background-image: none;
  border-color: transparent;
}
.c-dark-theme .btn-ghost-secondary:hover {
  color: #fff;
  background-color: #4c4f54;
  border-color: #4c4f54;
}
.c-dark-theme .btn-ghost-secondary:focus, .c-dark-theme .btn-ghost-secondary.focus {
  box-shadow: 0 0 0 0.2rem rgba(76, 79, 84, 0.5);
}
.c-dark-theme .btn-ghost-secondary.disabled, .c-dark-theme .btn-ghost-secondary:disabled {
  color: #4c4f54;
  background-color: transparent;
  border-color: transparent;
}
.c-dark-theme .btn-ghost-secondary:not(:disabled):not(.disabled):active, .c-dark-theme .btn-ghost-secondary:not(:disabled):not(.disabled).active {
  color: #fff;
  background-color: #4c4f54;
  border-color: #4c4f54;
}
.c-dark-theme .btn-ghost-secondary:not(:disabled):not(.disabled):active:focus, .c-dark-theme .btn-ghost-secondary:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(76, 79, 84, 0.5);
}
.c-dark-theme .show > .btn-ghost-secondary.dropdown-toggle {
  color: #fff;
  background-color: #4c4f54;
  border-color: #4c4f54;
}
.c-dark-theme .show > .btn-ghost-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(76, 79, 84, 0.5);
}
.c-dark-theme .btn-ghost-success {
  color: #45a164;
  background-color: transparent;
  background-image: none;
  border-color: transparent;
}
.c-dark-theme .btn-ghost-success:hover {
  color: #fff;
  background-color: #45a164;
  border-color: #45a164;
}
.c-dark-theme .btn-ghost-success:focus, .c-dark-theme .btn-ghost-success.focus {
  box-shadow: 0 0 0 0.2rem rgba(69, 161, 100, 0.5);
}
.c-dark-theme .btn-ghost-success.disabled, .c-dark-theme .btn-ghost-success:disabled {
  color: #45a164;
  background-color: transparent;
  border-color: transparent;
}
.c-dark-theme .btn-ghost-success:not(:disabled):not(.disabled):active, .c-dark-theme .btn-ghost-success:not(:disabled):not(.disabled).active {
  color: #fff;
  background-color: #45a164;
  border-color: #45a164;
}
.c-dark-theme .btn-ghost-success:not(:disabled):not(.disabled):active:focus, .c-dark-theme .btn-ghost-success:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(69, 161, 100, 0.5);
}
.c-dark-theme .show > .btn-ghost-success.dropdown-toggle {
  color: #fff;
  background-color: #45a164;
  border-color: #45a164;
}
.c-dark-theme .show > .btn-ghost-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(69, 161, 100, 0.5);
}
.c-dark-theme .btn-ghost-info {
  color: #4799eb;
  background-color: transparent;
  background-image: none;
  border-color: transparent;
}
.c-dark-theme .btn-ghost-info:hover {
  color: #fff;
  background-color: #4799eb;
  border-color: #4799eb;
}
.c-dark-theme .btn-ghost-info:focus, .c-dark-theme .btn-ghost-info.focus {
  box-shadow: 0 0 0 0.2rem rgba(71, 153, 235, 0.5);
}
.c-dark-theme .btn-ghost-info.disabled, .c-dark-theme .btn-ghost-info:disabled {
  color: #4799eb;
  background-color: transparent;
  border-color: transparent;
}
.c-dark-theme .btn-ghost-info:not(:disabled):not(.disabled):active, .c-dark-theme .btn-ghost-info:not(:disabled):not(.disabled).active {
  color: #fff;
  background-color: #4799eb;
  border-color: #4799eb;
}
.c-dark-theme .btn-ghost-info:not(:disabled):not(.disabled):active:focus, .c-dark-theme .btn-ghost-info:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(71, 153, 235, 0.5);
}
.c-dark-theme .show > .btn-ghost-info.dropdown-toggle {
  color: #fff;
  background-color: #4799eb;
  border-color: #4799eb;
}
.c-dark-theme .show > .btn-ghost-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(71, 153, 235, 0.5);
}
.c-dark-theme .btn-ghost-warning {
  color: #e1a82d;
  background-color: transparent;
  background-image: none;
  border-color: transparent;
}
.c-dark-theme .btn-ghost-warning:hover {
  color: #4f5d73;
  background-color: #e1a82d;
  border-color: #e1a82d;
}
.c-dark-theme .btn-ghost-warning:focus, .c-dark-theme .btn-ghost-warning.focus {
  box-shadow: 0 0 0 0.2rem rgba(225, 168, 45, 0.5);
}
.c-dark-theme .btn-ghost-warning.disabled, .c-dark-theme .btn-ghost-warning:disabled {
  color: #e1a82d;
  background-color: transparent;
  border-color: transparent;
}
.c-dark-theme .btn-ghost-warning:not(:disabled):not(.disabled):active, .c-dark-theme .btn-ghost-warning:not(:disabled):not(.disabled).active {
  color: #4f5d73;
  background-color: #e1a82d;
  border-color: #e1a82d;
}
.c-dark-theme .btn-ghost-warning:not(:disabled):not(.disabled):active:focus, .c-dark-theme .btn-ghost-warning:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(225, 168, 45, 0.5);
}
.c-dark-theme .show > .btn-ghost-warning.dropdown-toggle {
  color: #4f5d73;
  background-color: #e1a82d;
  border-color: #e1a82d;
}
.c-dark-theme .show > .btn-ghost-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(225, 168, 45, 0.5);
}
.c-dark-theme .btn-ghost-danger {
  color: #d16767;
  background-color: transparent;
  background-image: none;
  border-color: transparent;
}
.c-dark-theme .btn-ghost-danger:hover {
  color: #fff;
  background-color: #d16767;
  border-color: #d16767;
}
.c-dark-theme .btn-ghost-danger:focus, .c-dark-theme .btn-ghost-danger.focus {
  box-shadow: 0 0 0 0.2rem rgba(209, 103, 103, 0.5);
}
.c-dark-theme .btn-ghost-danger.disabled, .c-dark-theme .btn-ghost-danger:disabled {
  color: #d16767;
  background-color: transparent;
  border-color: transparent;
}
.c-dark-theme .btn-ghost-danger:not(:disabled):not(.disabled):active, .c-dark-theme .btn-ghost-danger:not(:disabled):not(.disabled).active {
  color: #fff;
  background-color: #d16767;
  border-color: #d16767;
}
.c-dark-theme .btn-ghost-danger:not(:disabled):not(.disabled):active:focus, .c-dark-theme .btn-ghost-danger:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(209, 103, 103, 0.5);
}
.c-dark-theme .show > .btn-ghost-danger.dropdown-toggle {
  color: #fff;
  background-color: #d16767;
  border-color: #d16767;
}
.c-dark-theme .show > .btn-ghost-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(209, 103, 103, 0.5);
}
.c-dark-theme .btn-ghost-light {
  color: #6c6e7e;
  background-color: transparent;
  background-image: none;
  border-color: transparent;
}
.c-dark-theme .btn-ghost-light:hover {
  color: #fff;
  background-color: #6c6e7e;
  border-color: #6c6e7e;
}
.c-dark-theme .btn-ghost-light:focus, .c-dark-theme .btn-ghost-light.focus {
  box-shadow: 0 0 0 0.2rem rgba(108, 110, 126, 0.5);
}
.c-dark-theme .btn-ghost-light.disabled, .c-dark-theme .btn-ghost-light:disabled {
  color: #6c6e7e;
  background-color: transparent;
  border-color: transparent;
}
.c-dark-theme .btn-ghost-light:not(:disabled):not(.disabled):active, .c-dark-theme .btn-ghost-light:not(:disabled):not(.disabled).active {
  color: #fff;
  background-color: #6c6e7e;
  border-color: #6c6e7e;
}
.c-dark-theme .btn-ghost-light:not(:disabled):not(.disabled):active:focus, .c-dark-theme .btn-ghost-light:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(108, 110, 126, 0.5);
}
.c-dark-theme .show > .btn-ghost-light.dropdown-toggle {
  color: #fff;
  background-color: #6c6e7e;
  border-color: #6c6e7e;
}
.c-dark-theme .show > .btn-ghost-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(108, 110, 126, 0.5);
}
.c-dark-theme .btn-ghost-dark {
  color: #0e0e15;
  background-color: transparent;
  background-image: none;
  border-color: transparent;
}
.c-dark-theme .btn-ghost-dark:hover {
  color: #fff;
  background-color: #0e0e15;
  border-color: #0e0e15;
}
.c-dark-theme .btn-ghost-dark:focus, .c-dark-theme .btn-ghost-dark.focus {
  box-shadow: 0 0 0 0.2rem rgba(14, 14, 21, 0.5);
}
.c-dark-theme .btn-ghost-dark.disabled, .c-dark-theme .btn-ghost-dark:disabled {
  color: #0e0e15;
  background-color: transparent;
  border-color: transparent;
}
.c-dark-theme .btn-ghost-dark:not(:disabled):not(.disabled):active, .c-dark-theme .btn-ghost-dark:not(:disabled):not(.disabled).active {
  color: #fff;
  background-color: #0e0e15;
  border-color: #0e0e15;
}
.c-dark-theme .btn-ghost-dark:not(:disabled):not(.disabled):active:focus, .c-dark-theme .btn-ghost-dark:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(14, 14, 21, 0.5);
}
.c-dark-theme .show > .btn-ghost-dark.dropdown-toggle {
  color: #fff;
  background-color: #0e0e15;
  border-color: #0e0e15;
}
.c-dark-theme .show > .btn-ghost-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(14, 14, 21, 0.5);
}
.c-legacy-theme .btn-ghost-primary {
  color: #20a8d8;
  background-color: transparent;
  background-image: none;
  border-color: transparent;
}
.c-legacy-theme .btn-ghost-primary:hover {
  color: #fff;
  background-color: #20a8d8;
  border-color: #20a8d8;
}
.c-legacy-theme .btn-ghost-primary:focus, .c-legacy-theme .btn-ghost-primary.focus {
  box-shadow: 0 0 0 0.2rem rgba(32, 168, 216, 0.5);
}
.c-legacy-theme .btn-ghost-primary.disabled, .c-legacy-theme .btn-ghost-primary:disabled {
  color: #20a8d8;
  background-color: transparent;
  border-color: transparent;
}
.c-legacy-theme .btn-ghost-primary:not(:disabled):not(.disabled):active, .c-legacy-theme .btn-ghost-primary:not(:disabled):not(.disabled).active {
  color: #fff;
  background-color: #20a8d8;
  border-color: #20a8d8;
}
.c-legacy-theme .btn-ghost-primary:not(:disabled):not(.disabled):active:focus, .c-legacy-theme .btn-ghost-primary:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(32, 168, 216, 0.5);
}
.c-legacy-theme .show > .btn-ghost-primary.dropdown-toggle {
  color: #fff;
  background-color: #20a8d8;
  border-color: #20a8d8;
}
.c-legacy-theme .show > .btn-ghost-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(32, 168, 216, 0.5);
}
.c-legacy-theme .btn-ghost-secondary {
  color: #c8ced3;
  background-color: transparent;
  background-image: none;
  border-color: transparent;
}
.c-legacy-theme .btn-ghost-secondary:hover {
  color: #4f5d73;
  background-color: #c8ced3;
  border-color: #c8ced3;
}
.c-legacy-theme .btn-ghost-secondary:focus, .c-legacy-theme .btn-ghost-secondary.focus {
  box-shadow: 0 0 0 0.2rem rgba(200, 206, 211, 0.5);
}
.c-legacy-theme .btn-ghost-secondary.disabled, .c-legacy-theme .btn-ghost-secondary:disabled {
  color: #c8ced3;
  background-color: transparent;
  border-color: transparent;
}
.c-legacy-theme .btn-ghost-secondary:not(:disabled):not(.disabled):active, .c-legacy-theme .btn-ghost-secondary:not(:disabled):not(.disabled).active {
  color: #4f5d73;
  background-color: #c8ced3;
  border-color: #c8ced3;
}
.c-legacy-theme .btn-ghost-secondary:not(:disabled):not(.disabled):active:focus, .c-legacy-theme .btn-ghost-secondary:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(200, 206, 211, 0.5);
}
.c-legacy-theme .show > .btn-ghost-secondary.dropdown-toggle {
  color: #4f5d73;
  background-color: #c8ced3;
  border-color: #c8ced3;
}
.c-legacy-theme .show > .btn-ghost-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(200, 206, 211, 0.5);
}
.c-legacy-theme .btn-ghost-success {
  color: #4dbd74;
  background-color: transparent;
  background-image: none;
  border-color: transparent;
}
.c-legacy-theme .btn-ghost-success:hover {
  color: #fff;
  background-color: #4dbd74;
  border-color: #4dbd74;
}
.c-legacy-theme .btn-ghost-success:focus, .c-legacy-theme .btn-ghost-success.focus {
  box-shadow: 0 0 0 0.2rem rgba(77, 189, 116, 0.5);
}
.c-legacy-theme .btn-ghost-success.disabled, .c-legacy-theme .btn-ghost-success:disabled {
  color: #4dbd74;
  background-color: transparent;
  border-color: transparent;
}
.c-legacy-theme .btn-ghost-success:not(:disabled):not(.disabled):active, .c-legacy-theme .btn-ghost-success:not(:disabled):not(.disabled).active {
  color: #fff;
  background-color: #4dbd74;
  border-color: #4dbd74;
}
.c-legacy-theme .btn-ghost-success:not(:disabled):not(.disabled):active:focus, .c-legacy-theme .btn-ghost-success:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(77, 189, 116, 0.5);
}
.c-legacy-theme .show > .btn-ghost-success.dropdown-toggle {
  color: #fff;
  background-color: #4dbd74;
  border-color: #4dbd74;
}
.c-legacy-theme .show > .btn-ghost-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(77, 189, 116, 0.5);
}
.c-legacy-theme .btn-ghost-info {
  color: #63c2de;
  background-color: transparent;
  background-image: none;
  border-color: transparent;
}
.c-legacy-theme .btn-ghost-info:hover {
  color: #4f5d73;
  background-color: #63c2de;
  border-color: #63c2de;
}
.c-legacy-theme .btn-ghost-info:focus, .c-legacy-theme .btn-ghost-info.focus {
  box-shadow: 0 0 0 0.2rem rgba(99, 194, 222, 0.5);
}
.c-legacy-theme .btn-ghost-info.disabled, .c-legacy-theme .btn-ghost-info:disabled {
  color: #63c2de;
  background-color: transparent;
  border-color: transparent;
}
.c-legacy-theme .btn-ghost-info:not(:disabled):not(.disabled):active, .c-legacy-theme .btn-ghost-info:not(:disabled):not(.disabled).active {
  color: #4f5d73;
  background-color: #63c2de;
  border-color: #63c2de;
}
.c-legacy-theme .btn-ghost-info:not(:disabled):not(.disabled):active:focus, .c-legacy-theme .btn-ghost-info:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(99, 194, 222, 0.5);
}
.c-legacy-theme .show > .btn-ghost-info.dropdown-toggle {
  color: #4f5d73;
  background-color: #63c2de;
  border-color: #63c2de;
}
.c-legacy-theme .show > .btn-ghost-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(99, 194, 222, 0.5);
}
.c-legacy-theme .btn-ghost-warning {
  color: #ffc107;
  background-color: transparent;
  background-image: none;
  border-color: transparent;
}
.c-legacy-theme .btn-ghost-warning:hover {
  color: #4f5d73;
  background-color: #ffc107;
  border-color: #ffc107;
}
.c-legacy-theme .btn-ghost-warning:focus, .c-legacy-theme .btn-ghost-warning.focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}
.c-legacy-theme .btn-ghost-warning.disabled, .c-legacy-theme .btn-ghost-warning:disabled {
  color: #ffc107;
  background-color: transparent;
  border-color: transparent;
}
.c-legacy-theme .btn-ghost-warning:not(:disabled):not(.disabled):active, .c-legacy-theme .btn-ghost-warning:not(:disabled):not(.disabled).active {
  color: #4f5d73;
  background-color: #ffc107;
  border-color: #ffc107;
}
.c-legacy-theme .btn-ghost-warning:not(:disabled):not(.disabled):active:focus, .c-legacy-theme .btn-ghost-warning:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}
.c-legacy-theme .show > .btn-ghost-warning.dropdown-toggle {
  color: #4f5d73;
  background-color: #ffc107;
  border-color: #ffc107;
}
.c-legacy-theme .show > .btn-ghost-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}
.c-legacy-theme .btn-ghost-danger {
  color: #f86c6b;
  background-color: transparent;
  background-image: none;
  border-color: transparent;
}
.c-legacy-theme .btn-ghost-danger:hover {
  color: #fff;
  background-color: #f86c6b;
  border-color: #f86c6b;
}
.c-legacy-theme .btn-ghost-danger:focus, .c-legacy-theme .btn-ghost-danger.focus {
  box-shadow: 0 0 0 0.2rem rgba(248, 108, 107, 0.5);
}
.c-legacy-theme .btn-ghost-danger.disabled, .c-legacy-theme .btn-ghost-danger:disabled {
  color: #f86c6b;
  background-color: transparent;
  border-color: transparent;
}
.c-legacy-theme .btn-ghost-danger:not(:disabled):not(.disabled):active, .c-legacy-theme .btn-ghost-danger:not(:disabled):not(.disabled).active {
  color: #fff;
  background-color: #f86c6b;
  border-color: #f86c6b;
}
.c-legacy-theme .btn-ghost-danger:not(:disabled):not(.disabled):active:focus, .c-legacy-theme .btn-ghost-danger:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(248, 108, 107, 0.5);
}
.c-legacy-theme .show > .btn-ghost-danger.dropdown-toggle {
  color: #fff;
  background-color: #f86c6b;
  border-color: #f86c6b;
}
.c-legacy-theme .show > .btn-ghost-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(248, 108, 107, 0.5);
}
.c-legacy-theme .btn-ghost-light {
  color: #f0f3f5;
  background-color: transparent;
  background-image: none;
  border-color: transparent;
}
.c-legacy-theme .btn-ghost-light:hover {
  color: #4f5d73;
  background-color: #f0f3f5;
  border-color: #f0f3f5;
}
.c-legacy-theme .btn-ghost-light:focus, .c-legacy-theme .btn-ghost-light.focus {
  box-shadow: 0 0 0 0.2rem rgba(240, 243, 245, 0.5);
}
.c-legacy-theme .btn-ghost-light.disabled, .c-legacy-theme .btn-ghost-light:disabled {
  color: #f0f3f5;
  background-color: transparent;
  border-color: transparent;
}
.c-legacy-theme .btn-ghost-light:not(:disabled):not(.disabled):active, .c-legacy-theme .btn-ghost-light:not(:disabled):not(.disabled).active {
  color: #4f5d73;
  background-color: #f0f3f5;
  border-color: #f0f3f5;
}
.c-legacy-theme .btn-ghost-light:not(:disabled):not(.disabled):active:focus, .c-legacy-theme .btn-ghost-light:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(240, 243, 245, 0.5);
}
.c-legacy-theme .show > .btn-ghost-light.dropdown-toggle {
  color: #4f5d73;
  background-color: #f0f3f5;
  border-color: #f0f3f5;
}
.c-legacy-theme .show > .btn-ghost-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(240, 243, 245, 0.5);
}
.c-legacy-theme .btn-ghost-dark {
  color: #2f353a;
  background-color: transparent;
  background-image: none;
  border-color: transparent;
}
.c-legacy-theme .btn-ghost-dark:hover {
  color: #fff;
  background-color: #2f353a;
  border-color: #2f353a;
}
.c-legacy-theme .btn-ghost-dark:focus, .c-legacy-theme .btn-ghost-dark.focus {
  box-shadow: 0 0 0 0.2rem rgba(47, 53, 58, 0.5);
}
.c-legacy-theme .btn-ghost-dark.disabled, .c-legacy-theme .btn-ghost-dark:disabled {
  color: #2f353a;
  background-color: transparent;
  border-color: transparent;
}
.c-legacy-theme .btn-ghost-dark:not(:disabled):not(.disabled):active, .c-legacy-theme .btn-ghost-dark:not(:disabled):not(.disabled).active {
  color: #fff;
  background-color: #2f353a;
  border-color: #2f353a;
}
.c-legacy-theme .btn-ghost-dark:not(:disabled):not(.disabled):active:focus, .c-legacy-theme .btn-ghost-dark:not(:disabled):not(.disabled).active:focus {
  box-shadow: 0 0 0 0.2rem rgba(47, 53, 58, 0.5);
}
.c-legacy-theme .show > .btn-ghost-dark.dropdown-toggle {
  color: #fff;
  background-color: #2f353a;
  border-color: #2f353a;
}
.c-legacy-theme .show > .btn-ghost-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(47, 53, 58, 0.5);
}
.btn-facebook {
  color: #fff;
  background-color: #3b5998;
  border-color: #3b5998;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn-facebook:hover {
    color: #fff;
    background-color: #30497c;
    border-color: #2d4373;
  }
}
.btn-facebook:focus, .btn-facebook.focus {
  color: #fff;
  background-color: #30497c;
  border-color: #2d4373;
  box-shadow: 0 0 0 0.2rem rgba(88, 114, 167, 0.5);
}
.btn-facebook.disabled, .btn-facebook:disabled {
  color: #fff;
  background-color: #3b5998;
  border-color: #3b5998;
}
.btn-facebook:not(:disabled):not(.disabled):active, .show > .btn-facebook.dropdown-toggle {
  color: #fff;
  background-color: #2d4373;
  border-color: #293e6a;
}
.btn-facebook:not(:disabled):not(.disabled):active:focus, .show > .btn-facebook.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(88, 114, 167, 0.5);
}
.show > .btn-facebook.dropdown-toggle {
  color: #fff;
  background-color: #2d4373;
  border-color: #293e6a;
}
.show > .btn-facebook.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(88, 114, 167, 0.5);
}
.btn-twitter {
  color: #fff;
  background-color: #00aced;
  border-color: #00aced;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn-twitter:hover {
    color: #fff;
    background-color: #0090c7;
    border-color: #0087ba;
  }
}
.btn-twitter:focus, .btn-twitter.focus {
  color: #fff;
  background-color: #0090c7;
  border-color: #0087ba;
  box-shadow: 0 0 0 0.2rem rgba(38, 184, 240, 0.5);
}
.btn-twitter.disabled, .btn-twitter:disabled {
  color: #fff;
  background-color: #00aced;
  border-color: #00aced;
}
.btn-twitter:not(:disabled):not(.disabled):active, .show > .btn-twitter.dropdown-toggle {
  color: #fff;
  background-color: #0087ba;
  border-color: #007ead;
}
.btn-twitter:not(:disabled):not(.disabled):active:focus, .show > .btn-twitter.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(38, 184, 240, 0.5);
}
.show > .btn-twitter.dropdown-toggle {
  color: #fff;
  background-color: #0087ba;
  border-color: #007ead;
}
.show > .btn-twitter.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(38, 184, 240, 0.5);
}
.btn-linkedin {
  color: #fff;
  background-color: #4875b4;
  border-color: #4875b4;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn-linkedin:hover {
    color: #fff;
    background-color: #3d6399;
    border-color: #395d90;
  }
}
.btn-linkedin:focus, .btn-linkedin.focus {
  color: #fff;
  background-color: #3d6399;
  border-color: #395d90;
  box-shadow: 0 0 0 0.2rem rgba(99, 138, 191, 0.5);
}
.btn-linkedin.disabled, .btn-linkedin:disabled {
  color: #fff;
  background-color: #4875b4;
  border-color: #4875b4;
}
.btn-linkedin:not(:disabled):not(.disabled):active, .show > .btn-linkedin.dropdown-toggle {
  color: #fff;
  background-color: #395d90;
  border-color: #365786;
}
.btn-linkedin:not(:disabled):not(.disabled):active:focus, .show > .btn-linkedin.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(99, 138, 191, 0.5);
}
.show > .btn-linkedin.dropdown-toggle {
  color: #fff;
  background-color: #395d90;
  border-color: #365786;
}
.show > .btn-linkedin.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(99, 138, 191, 0.5);
}
.btn-flickr {
  color: #fff;
  background-color: #ff0084;
  border-color: #ff0084;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn-flickr:hover {
    color: #fff;
    background-color: #d90070;
    border-color: #cc006a;
  }
}
.btn-flickr:focus, .btn-flickr.focus {
  color: #fff;
  background-color: #d90070;
  border-color: #cc006a;
  box-shadow: 0 0 0 0.2rem rgba(255, 38, 150, 0.5);
}
.btn-flickr.disabled, .btn-flickr:disabled {
  color: #fff;
  background-color: #ff0084;
  border-color: #ff0084;
}
.btn-flickr:not(:disabled):not(.disabled):active, .show > .btn-flickr.dropdown-toggle {
  color: #fff;
  background-color: #cc006a;
  border-color: #bf0063;
}
.btn-flickr:not(:disabled):not(.disabled):active:focus, .show > .btn-flickr.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 38, 150, 0.5);
}
.show > .btn-flickr.dropdown-toggle {
  color: #fff;
  background-color: #cc006a;
  border-color: #bf0063;
}
.show > .btn-flickr.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 38, 150, 0.5);
}
.btn-tumblr {
  color: #fff;
  background-color: #32506d;
  border-color: #32506d;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn-tumblr:hover {
    color: #fff;
    background-color: #263d53;
    border-color: #22364a;
  }
}
.btn-tumblr:focus, .btn-tumblr.focus {
  color: #fff;
  background-color: #263d53;
  border-color: #22364a;
  box-shadow: 0 0 0 0.2rem rgba(81, 106, 131, 0.5);
}
.btn-tumblr.disabled, .btn-tumblr:disabled {
  color: #fff;
  background-color: #32506d;
  border-color: #32506d;
}
.btn-tumblr:not(:disabled):not(.disabled):active, .show > .btn-tumblr.dropdown-toggle {
  color: #fff;
  background-color: #22364a;
  border-color: #1e3041;
}
.btn-tumblr:not(:disabled):not(.disabled):active:focus, .show > .btn-tumblr.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(81, 106, 131, 0.5);
}
.show > .btn-tumblr.dropdown-toggle {
  color: #fff;
  background-color: #22364a;
  border-color: #1e3041;
}
.show > .btn-tumblr.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(81, 106, 131, 0.5);
}
.btn-xing {
  color: #fff;
  background-color: #026466;
  border-color: #026466;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn-xing:hover {
    color: #fff;
    background-color: #013f40;
    border-color: #013334;
  }
}
.btn-xing:focus, .btn-xing.focus {
  color: #fff;
  background-color: #013f40;
  border-color: #013334;
  box-shadow: 0 0 0 0.2rem rgba(40, 123, 125, 0.5);
}
.btn-xing.disabled, .btn-xing:disabled {
  color: #fff;
  background-color: #026466;
  border-color: #026466;
}
.btn-xing:not(:disabled):not(.disabled):active, .show > .btn-xing.dropdown-toggle {
  color: #fff;
  background-color: #013334;
  border-color: #012727;
}
.btn-xing:not(:disabled):not(.disabled):active:focus, .show > .btn-xing.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(40, 123, 125, 0.5);
}
.show > .btn-xing.dropdown-toggle {
  color: #fff;
  background-color: #013334;
  border-color: #012727;
}
.show > .btn-xing.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(40, 123, 125, 0.5);
}
.btn-github {
  color: #fff;
  background-color: #4183c4;
  border-color: #4183c4;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn-github:hover {
    color: #fff;
    background-color: #3570aa;
    border-color: #3269a0;
  }
}
.btn-github:focus, .btn-github.focus {
  color: #fff;
  background-color: #3570aa;
  border-color: #3269a0;
  box-shadow: 0 0 0 0.2rem rgba(94, 150, 205, 0.5);
}
.btn-github.disabled, .btn-github:disabled {
  color: #fff;
  background-color: #4183c4;
  border-color: #4183c4;
}
.btn-github:not(:disabled):not(.disabled):active, .show > .btn-github.dropdown-toggle {
  color: #fff;
  background-color: #3269a0;
  border-color: #2f6397;
}
.btn-github:not(:disabled):not(.disabled):active:focus, .show > .btn-github.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(94, 150, 205, 0.5);
}
.show > .btn-github.dropdown-toggle {
  color: #fff;
  background-color: #3269a0;
  border-color: #2f6397;
}
.show > .btn-github.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(94, 150, 205, 0.5);
}
.btn-stack-overflow {
  color: #fff;
  background-color: #fe7a15;
  border-color: #fe7a15;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn-stack-overflow:hover {
    color: #fff;
    background-color: #ec6701;
    border-color: #df6101;
  }
}
.btn-stack-overflow:focus, .btn-stack-overflow.focus {
  color: #fff;
  background-color: #ec6701;
  border-color: #df6101;
  box-shadow: 0 0 0 0.2rem rgba(254, 142, 56, 0.5);
}
.btn-stack-overflow.disabled, .btn-stack-overflow:disabled {
  color: #fff;
  background-color: #fe7a15;
  border-color: #fe7a15;
}
.btn-stack-overflow:not(:disabled):not(.disabled):active, .show > .btn-stack-overflow.dropdown-toggle {
  color: #fff;
  background-color: #df6101;
  border-color: #d25c01;
}
.btn-stack-overflow:not(:disabled):not(.disabled):active:focus, .show > .btn-stack-overflow.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(254, 142, 56, 0.5);
}
.show > .btn-stack-overflow.dropdown-toggle {
  color: #fff;
  background-color: #df6101;
  border-color: #d25c01;
}
.show > .btn-stack-overflow.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(254, 142, 56, 0.5);
}
.btn-youtube {
  color: #fff;
  background-color: #b00;
  border-color: #b00;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn-youtube:hover {
    color: #fff;
    background-color: #950000;
    border-color: #880000;
  }
}
.btn-youtube:focus, .btn-youtube.focus {
  color: #fff;
  background-color: #950000;
  border-color: #880000;
  box-shadow: 0 0 0 0.2rem rgba(197, 38, 38, 0.5);
}
.btn-youtube.disabled, .btn-youtube:disabled {
  color: #fff;
  background-color: #b00;
  border-color: #b00;
}
.btn-youtube:not(:disabled):not(.disabled):active, .show > .btn-youtube.dropdown-toggle {
  color: #fff;
  background-color: #880000;
  border-color: #7b0000;
}
.btn-youtube:not(:disabled):not(.disabled):active:focus, .show > .btn-youtube.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(197, 38, 38, 0.5);
}
.show > .btn-youtube.dropdown-toggle {
  color: #fff;
  background-color: #880000;
  border-color: #7b0000;
}
.show > .btn-youtube.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(197, 38, 38, 0.5);
}
.btn-dribbble {
  color: #fff;
  background-color: #ea4c89;
  border-color: #ea4c89;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn-dribbble:hover {
    color: #fff;
    background-color: #e62a72;
    border-color: #e51e6b;
  }
}
.btn-dribbble:focus, .btn-dribbble.focus {
  color: #fff;
  background-color: #e62a72;
  border-color: #e51e6b;
  box-shadow: 0 0 0 0.2rem rgba(237, 103, 155, 0.5);
}
.btn-dribbble.disabled, .btn-dribbble:disabled {
  color: #fff;
  background-color: #ea4c89;
  border-color: #ea4c89;
}
.btn-dribbble:not(:disabled):not(.disabled):active, .show > .btn-dribbble.dropdown-toggle {
  color: #fff;
  background-color: #e51e6b;
  border-color: #dc1a65;
}
.btn-dribbble:not(:disabled):not(.disabled):active:focus, .show > .btn-dribbble.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(237, 103, 155, 0.5);
}
.show > .btn-dribbble.dropdown-toggle {
  color: #fff;
  background-color: #e51e6b;
  border-color: #dc1a65;
}
.show > .btn-dribbble.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(237, 103, 155, 0.5);
}
.btn-instagram {
  color: #fff;
  background-color: #517fa4;
  border-color: #517fa4;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn-instagram:hover {
    color: #fff;
    background-color: #446b8a;
    border-color: #406582;
  }
}
.btn-instagram:focus, .btn-instagram.focus {
  color: #fff;
  background-color: #446b8a;
  border-color: #406582;
  box-shadow: 0 0 0 0.2rem rgba(107, 146, 178, 0.5);
}
.btn-instagram.disabled, .btn-instagram:disabled {
  color: #fff;
  background-color: #517fa4;
  border-color: #517fa4;
}
.btn-instagram:not(:disabled):not(.disabled):active, .show > .btn-instagram.dropdown-toggle {
  color: #fff;
  background-color: #406582;
  border-color: #3c5e79;
}
.btn-instagram:not(:disabled):not(.disabled):active:focus, .show > .btn-instagram.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(107, 146, 178, 0.5);
}
.show > .btn-instagram.dropdown-toggle {
  color: #fff;
  background-color: #406582;
  border-color: #3c5e79;
}
.show > .btn-instagram.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(107, 146, 178, 0.5);
}
.btn-pinterest {
  color: #fff;
  background-color: #cb2027;
  border-color: #cb2027;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn-pinterest:hover {
    color: #fff;
    background-color: #aa1b21;
    border-color: #9f191f;
  }
}
.btn-pinterest:focus, .btn-pinterest.focus {
  color: #fff;
  background-color: #aa1b21;
  border-color: #9f191f;
  box-shadow: 0 0 0 0.2rem rgba(211, 65, 71, 0.5);
}
.btn-pinterest.disabled, .btn-pinterest:disabled {
  color: #fff;
  background-color: #cb2027;
  border-color: #cb2027;
}
.btn-pinterest:not(:disabled):not(.disabled):active, .show > .btn-pinterest.dropdown-toggle {
  color: #fff;
  background-color: #9f191f;
  border-color: #94171c;
}
.btn-pinterest:not(:disabled):not(.disabled):active:focus, .show > .btn-pinterest.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(211, 65, 71, 0.5);
}
.show > .btn-pinterest.dropdown-toggle {
  color: #fff;
  background-color: #9f191f;
  border-color: #94171c;
}
.show > .btn-pinterest.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(211, 65, 71, 0.5);
}
.btn-vk {
  color: #fff;
  background-color: #45668e;
  border-color: #45668e;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn-vk:hover {
    color: #fff;
    background-color: #385474;
    border-color: #344d6c;
  }
}
.btn-vk:focus, .btn-vk.focus {
  color: #fff;
  background-color: #385474;
  border-color: #344d6c;
  box-shadow: 0 0 0 0.2rem rgba(97, 125, 159, 0.5);
}
.btn-vk.disabled, .btn-vk:disabled {
  color: #fff;
  background-color: #45668e;
  border-color: #45668e;
}
.btn-vk:not(:disabled):not(.disabled):active, .show > .btn-vk.dropdown-toggle {
  color: #fff;
  background-color: #344d6c;
  border-color: #304763;
}
.btn-vk:not(:disabled):not(.disabled):active:focus, .show > .btn-vk.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(97, 125, 159, 0.5);
}
.show > .btn-vk.dropdown-toggle {
  color: #fff;
  background-color: #344d6c;
  border-color: #304763;
}
.show > .btn-vk.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(97, 125, 159, 0.5);
}
.btn-yahoo {
  color: #fff;
  background-color: #400191;
  border-color: #400191;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn-yahoo:hover {
    color: #fff;
    background-color: #2f016b;
    border-color: #2a015e;
  }
}
.btn-yahoo:focus, .btn-yahoo.focus {
  color: #fff;
  background-color: #2f016b;
  border-color: #2a015e;
  box-shadow: 0 0 0 0.2rem rgba(93, 39, 162, 0.5);
}
.btn-yahoo.disabled, .btn-yahoo:disabled {
  color: #fff;
  background-color: #400191;
  border-color: #400191;
}
.btn-yahoo:not(:disabled):not(.disabled):active, .show > .btn-yahoo.dropdown-toggle {
  color: #fff;
  background-color: #2a015e;
  border-color: #240152;
}
.btn-yahoo:not(:disabled):not(.disabled):active:focus, .show > .btn-yahoo.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(93, 39, 162, 0.5);
}
.show > .btn-yahoo.dropdown-toggle {
  color: #fff;
  background-color: #2a015e;
  border-color: #240152;
}
.show > .btn-yahoo.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(93, 39, 162, 0.5);
}
.btn-behance {
  color: #fff;
  background-color: #1769ff;
  border-color: #1769ff;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn-behance:hover {
    color: #fff;
    background-color: #0055f0;
    border-color: #0050e3;
  }
}
.btn-behance:focus, .btn-behance.focus {
  color: #fff;
  background-color: #0055f0;
  border-color: #0050e3;
  box-shadow: 0 0 0 0.2rem rgba(58, 128, 255, 0.5);
}
.btn-behance.disabled, .btn-behance:disabled {
  color: #fff;
  background-color: #1769ff;
  border-color: #1769ff;
}
.btn-behance:not(:disabled):not(.disabled):active, .show > .btn-behance.dropdown-toggle {
  color: #fff;
  background-color: #0050e3;
  border-color: #004cd6;
}
.btn-behance:not(:disabled):not(.disabled):active:focus, .show > .btn-behance.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(58, 128, 255, 0.5);
}
.show > .btn-behance.dropdown-toggle {
  color: #fff;
  background-color: #0050e3;
  border-color: #004cd6;
}
.show > .btn-behance.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(58, 128, 255, 0.5);
}
.btn-reddit {
  color: #fff;
  background-color: #ff4500;
  border-color: #ff4500;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn-reddit:hover {
    color: #fff;
    background-color: #d93b00;
    border-color: #cc3700;
  }
}
.btn-reddit:focus, .btn-reddit.focus {
  color: #fff;
  background-color: #d93b00;
  border-color: #cc3700;
  box-shadow: 0 0 0 0.2rem rgba(255, 97, 38, 0.5);
}
.btn-reddit.disabled, .btn-reddit:disabled {
  color: #fff;
  background-color: #ff4500;
  border-color: #ff4500;
}
.btn-reddit:not(:disabled):not(.disabled):active, .show > .btn-reddit.dropdown-toggle {
  color: #fff;
  background-color: #cc3700;
  border-color: #bf3400;
}
.btn-reddit:not(:disabled):not(.disabled):active:focus, .show > .btn-reddit.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 97, 38, 0.5);
}
.show > .btn-reddit.dropdown-toggle {
  color: #fff;
  background-color: #cc3700;
  border-color: #bf3400;
}
.show > .btn-reddit.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 97, 38, 0.5);
}
.btn-vimeo {
  color: #4f5d73;
  background-color: #aad450;
  border-color: #aad450;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .btn-vimeo:hover {
    color: #4f5d73;
    background-color: #9bcc32;
    border-color: #93c130;
  }
}
.btn-vimeo:focus, .btn-vimeo.focus {
  color: #4f5d73;
  background-color: #9bcc32;
  border-color: #93c130;
  box-shadow: 0 0 0 0.2rem rgba(156, 194, 85, 0.5);
}
.btn-vimeo.disabled, .btn-vimeo:disabled {
  color: #4f5d73;
  background-color: #aad450;
  border-color: #aad450;
}
.btn-vimeo:not(:disabled):not(.disabled):active, .show > .btn-vimeo.dropdown-toggle {
  color: #4f5d73;
  background-color: #93c130;
  border-color: #8bb72d;
}
.btn-vimeo:not(:disabled):not(.disabled):active:focus, .show > .btn-vimeo.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(156, 194, 85, 0.5);
}
.show > .btn-vimeo.dropdown-toggle {
  color: #4f5d73;
  background-color: #93c130;
  border-color: #8bb72d;
}
.show > .btn-vimeo.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(156, 194, 85, 0.5);
}
.c-callout {
  position: relative;
  padding: 0 1rem;
  margin: 1rem 0;
  border-radius: 0.25rem;
}
html:not([dir=rtl]) .c-callout {
  border-left: 4px solid #d8dbe0;
}
*[dir=rtl] .c-callout {
  border-right: 4px solid #d8dbe0;
}
.c-callout-bordered {
  border: 1px solid #d8dbe0;
  border-left-width: 4px;
}
.c-callout code {
  border-radius: 0.25rem;
}
.c-callout h4 {
  margin-top: 0;
  margin-bottom: 0.25rem;
}
.c-callout p:last-child {
  margin-bottom: 0;
}
.c-callout + .c-callout {
  margin-top: -0.25rem;
}
html:not([dir=rtl]) .c-callout-primary {
  border-left-color: #321fdb;
}
*[dir=rtl] .c-callout-primary {
  border-right-color: #321fdb;
}
.c-callout-primary h4 {
  color: #321fdb;
}
html:not([dir=rtl]) .c-callout-secondary {
  border-left-color: #ced2d8;
}
*[dir=rtl] .c-callout-secondary {
  border-right-color: #ced2d8;
}
.c-callout-secondary h4 {
  color: #ced2d8;
}
html:not([dir=rtl]) .c-callout-success {
  border-left-color: #2eb85c;
}
*[dir=rtl] .c-callout-success {
  border-right-color: #2eb85c;
}
.c-callout-success h4 {
  color: #2eb85c;
}
html:not([dir=rtl]) .c-callout-info {
  border-left-color: #39f;
}
*[dir=rtl] .c-callout-info {
  border-right-color: #39f;
}
.c-callout-info h4 {
  color: #39f;
}
html:not([dir=rtl]) .c-callout-warning {
  border-left-color: #f9b115;
}
*[dir=rtl] .c-callout-warning {
  border-right-color: #f9b115;
}
.c-callout-warning h4 {
  color: #f9b115;
}
html:not([dir=rtl]) .c-callout-danger {
  border-left-color: #e55353;
}
*[dir=rtl] .c-callout-danger {
  border-right-color: #e55353;
}
.c-callout-danger h4 {
  color: #e55353;
}
html:not([dir=rtl]) .c-callout-light {
  border-left-color: #ebedef;
}
*[dir=rtl] .c-callout-light {
  border-right-color: #ebedef;
}
.c-callout-light h4 {
  color: #ebedef;
}
html:not([dir=rtl]) .c-callout-dark {
  border-left-color: #636f83;
}
*[dir=rtl] .c-callout-dark {
  border-right-color: #636f83;
}
.c-callout-dark h4 {
  color: #636f83;
}
html:not([dir=rtl]) .c-dark-theme .c-callout-primary {
  border-left-color: #4638c2;
}
*[dir=rtl] .c-dark-theme .c-callout-primary {
  border-right-color: #4638c2;
}
.c-dark-theme .c-callout-primary h4 {
  color: #4638c2;
}
html:not([dir=rtl]) .c-dark-theme .c-callout-secondary {
  border-left-color: #4c4f54;
}
*[dir=rtl] .c-dark-theme .c-callout-secondary {
  border-right-color: #4c4f54;
}
.c-dark-theme .c-callout-secondary h4 {
  color: #4c4f54;
}
html:not([dir=rtl]) .c-dark-theme .c-callout-success {
  border-left-color: #45a164;
}
*[dir=rtl] .c-dark-theme .c-callout-success {
  border-right-color: #45a164;
}
.c-dark-theme .c-callout-success h4 {
  color: #45a164;
}
html:not([dir=rtl]) .c-dark-theme .c-callout-info {
  border-left-color: #4799eb;
}
*[dir=rtl] .c-dark-theme .c-callout-info {
  border-right-color: #4799eb;
}
.c-dark-theme .c-callout-info h4 {
  color: #4799eb;
}
html:not([dir=rtl]) .c-dark-theme .c-callout-warning {
  border-left-color: #e1a82d;
}
*[dir=rtl] .c-dark-theme .c-callout-warning {
  border-right-color: #e1a82d;
}
.c-dark-theme .c-callout-warning h4 {
  color: #e1a82d;
}
html:not([dir=rtl]) .c-dark-theme .c-callout-danger {
  border-left-color: #d16767;
}
*[dir=rtl] .c-dark-theme .c-callout-danger {
  border-right-color: #d16767;
}
.c-dark-theme .c-callout-danger h4 {
  color: #d16767;
}
html:not([dir=rtl]) .c-dark-theme .c-callout-light {
  border-left-color: #6c6e7e;
}
*[dir=rtl] .c-dark-theme .c-callout-light {
  border-right-color: #6c6e7e;
}
.c-dark-theme .c-callout-light h4 {
  color: #6c6e7e;
}
html:not([dir=rtl]) .c-dark-theme .c-callout-dark {
  border-left-color: #0e0e15;
}
*[dir=rtl] .c-dark-theme .c-callout-dark {
  border-right-color: #0e0e15;
}
.c-dark-theme .c-callout-dark h4 {
  color: #0e0e15;
}
html:not([dir=rtl]) .c-legacy-theme .c-callout-primary {
  border-left-color: #20a8d8;
}
*[dir=rtl] .c-legacy-theme .c-callout-primary {
  border-right-color: #20a8d8;
}
.c-legacy-theme .c-callout-primary h4 {
  color: #20a8d8;
}
html:not([dir=rtl]) .c-legacy-theme .c-callout-secondary {
  border-left-color: #c8ced3;
}
*[dir=rtl] .c-legacy-theme .c-callout-secondary {
  border-right-color: #c8ced3;
}
.c-legacy-theme .c-callout-secondary h4 {
  color: #c8ced3;
}
html:not([dir=rtl]) .c-legacy-theme .c-callout-success {
  border-left-color: #4dbd74;
}
*[dir=rtl] .c-legacy-theme .c-callout-success {
  border-right-color: #4dbd74;
}
.c-legacy-theme .c-callout-success h4 {
  color: #4dbd74;
}
html:not([dir=rtl]) .c-legacy-theme .c-callout-info {
  border-left-color: #63c2de;
}
*[dir=rtl] .c-legacy-theme .c-callout-info {
  border-right-color: #63c2de;
}
.c-legacy-theme .c-callout-info h4 {
  color: #63c2de;
}
html:not([dir=rtl]) .c-legacy-theme .c-callout-warning {
  border-left-color: #ffc107;
}
*[dir=rtl] .c-legacy-theme .c-callout-warning {
  border-right-color: #ffc107;
}
.c-legacy-theme .c-callout-warning h4 {
  color: #ffc107;
}
html:not([dir=rtl]) .c-legacy-theme .c-callout-danger {
  border-left-color: #f86c6b;
}
*[dir=rtl] .c-legacy-theme .c-callout-danger {
  border-right-color: #f86c6b;
}
.c-legacy-theme .c-callout-danger h4 {
  color: #f86c6b;
}
html:not([dir=rtl]) .c-legacy-theme .c-callout-light {
  border-left-color: #f0f3f5;
}
*[dir=rtl] .c-legacy-theme .c-callout-light {
  border-right-color: #f0f3f5;
}
.c-legacy-theme .c-callout-light h4 {
  color: #f0f3f5;
}
html:not([dir=rtl]) .c-legacy-theme .c-callout-dark {
  border-left-color: #2f353a;
}
*[dir=rtl] .c-legacy-theme .c-callout-dark {
  border-right-color: #2f353a;
}
.c-legacy-theme .c-callout-dark h4 {
  color: #2f353a;
}
.card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  margin-bottom: 1.5rem;
  word-wrap: break-word;
  background-clip: border-box;
  border: 1px solid;
  border-radius: 0.25rem;
  background-color: #fff;
  border-color: #d8dbe0;
}
.c-legacy-theme .card {
  background-color: #fff;
  border-color: #c8ced3;
}
.c-dark-theme .card {
  background-color: #24252f;
  border-color: rgba(255, 255, 255, 0.075);
}
.c-app:not(.c-legacy-theme) .card {
  border: 0;
  box-shadow: 0 1px 1px 0 rgba(var(--elevation-base-color), .14), 0 2px 1px -1px rgba(var(--elevation-base-color), .12), 0 1px 3px 0 rgba(var(--elevation-base-color), .20);
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .card {
    box-shadow: 0 1px 1px 0 rgba(60, 75, 100, .14), 0 2px 1px -1px rgba(60, 75, 100, .12), 0 1px 3px 0 rgba(60, 75, 100, .20);
  }
}
.card > hr {
  margin-right: 0;
  margin-left: 0;
}
.card > .list-group {
  border-top: inherit;
  border-bottom: inherit;
}
.card > .list-group:first-child {
  border-top-width: 0;
  border-top-left-radius: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px);
}
.card > .list-group:last-child {
  border-bottom-width: 0;
  border-bottom-right-radius: calc(0.25rem - 1px);
  border-bottom-left-radius: calc(0.25rem - 1px);
}
.card.drag,
.card .drag {
  cursor: move;
}
.card[class^=bg-],
.card[class*=" bg-"] {
  border-color: rgba(0, 0, 0, 0.125);
}
.card[class^=bg-] .card-header,
.card[class*=" bg-"] .card-header {
  background-color: rgba(0, 0, 0, 0.05);
  border-color: rgba(0, 0, 0, 0.125);
}
.card-body {
  flex: 1 1 auto;
  min-height: 1px;
  padding: 1.25rem;
}
.card-title {
  margin-bottom: 0.75rem;
}
.card-subtitle {
  margin-top: -0.375rem;
  margin-bottom: 0;
}
.card-text:last-child {
  margin-bottom: 0;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .card-link:hover {
    text-decoration: none;
  }
}
html:not([dir=rtl]) .card-link + .card-link {
  margin-left: 1.25rem;
}
*[dir=rtl] .card-link + .card-link {
  margin-right: 1.25rem;
}
.card-header {
  padding: 0.75rem 1.25rem;
  margin-bottom: 0;
  border-bottom: 1px solid;
  background-color: #fff;
  border-color: #d8dbe0;
}
.c-legacy-theme .card-header {
  background-color: #f0f3f5;
  border-color: #c8ced3;
}
.c-dark-theme .card-header {
  background-color: #282933;
  border-color: rgba(255, 255, 255, 0.075);
}
.card-header:first-child {
  border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0;
}
.card-header + .list-group .list-group-item:first-child {
  border-top: 0;
}
.card-header .c-chart-wrapper {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
.card-footer {
  padding: 0.75rem 1.25rem;
  border-top: 1px solid;
  background-color: #fff;
  border-color: #d8dbe0;
}
.c-legacy-theme .card-footer {
  background-color: #f0f3f5;
  border-color: #c8ced3;
}
.c-dark-theme .card-footer {
  background-color: #282933;
  border-color: rgba(255, 255, 255, 0.075);
}
.card-footer:last-child {
  border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px);
}
.card-header-tabs {
  margin-right: -0.625rem;
  margin-bottom: -0.75rem;
  margin-left: -0.625rem;
  border-bottom: 0;
}
.card-header-pills {
  margin-right: -0.625rem;
  margin-left: -0.625rem;
}
.card-img-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 1.25rem;
}
.card-img,
.card-img-top,
.card-img-bottom {
  flex-shrink: 0;
  width: 100%;
}
.card-img,
.card-img-top {
  border-top-left-radius: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px);
}
.card-img,
.card-img-bottom {
  border-bottom-right-radius: calc(0.25rem - 1px);
  border-bottom-left-radius: calc(0.25rem - 1px);
}
.card-deck .card {
  margin-bottom: 15px;
}
@media (min-width: 576px) {
  .card-deck {
    display: flex;
    flex-flow: row wrap;
    margin-right: -15px;
    margin-left: -15px;
  }
  .card-deck .card {
    flex: 1 0 0%;
    margin-right: 15px;
    margin-bottom: 0;
    margin-left: 15px;
  }
}
.card-group > .card {
  margin-bottom: 15px;
}
@media (min-width: 576px) {
  .card-group {
    display: flex;
    flex-flow: row wrap;
  }
  .card-group > .card {
    flex: 1 0 0%;
    margin-bottom: 0;
  }
  html:not([dir=rtl]) .card-group > .card + .card {
    margin-left: 0;
    border-left: 0;
  }
  *[dir=rtl] .card-group > .card + .card {
    margin-right: 0;
    border-right: 0;
  }
  .card-group > .card:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }
  .card-group > .card:not(:last-child) .card-img-top,
.card-group > .card:not(:last-child) .card-header {
    border-top-right-radius: 0;
  }
  .card-group > .card:not(:last-child) .card-img-bottom,
.card-group > .card:not(:last-child) .card-footer {
    border-bottom-right-radius: 0;
  }
  .card-group > .card:not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }
  .card-group > .card:not(:first-child) .card-img-top,
.card-group > .card:not(:first-child) .card-header {
    border-top-left-radius: 0;
  }
  .card-group > .card:not(:first-child) .card-img-bottom,
.card-group > .card:not(:first-child) .card-footer {
    border-bottom-left-radius: 0;
  }
}
.card-columns .card {
  margin-bottom: 0.75rem;
}
@media (min-width: 576px) {
  .card-columns {
    -moz-column-count: 3;
         column-count: 3;
    -moz-column-gap: 1.25rem;
         column-gap: 1.25rem;
    orphans: 1;
    widows: 1;
  }
  .card-columns .card {
    display: inline-block;
    width: 100%;
  }
}
.accordion > .card {
  overflow: hidden;
}
.accordion > .card:not(:last-of-type) {
  border-bottom: 0;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.accordion > .card:not(:first-of-type) {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.accordion > .card > .card-header {
  border-radius: 0;
  margin-bottom: -1px;
}
.card-placeholder {
  background: rgba(0, 0, 21, 0.025);
  border: 1px dashed #c4c9d0;
}
.card-header-icon-bg {
  display: inline-block;
  width: 2.8125rem;
  padding: 0.75rem 0;
  margin: -0.75rem 1.25rem -0.75rem -1.25rem;
  line-height: inherit;
  color: #3c4b64;
  text-align: center;
  background: transparent;
  border-right: 1px solid;
  border-right: #d8dbe0;
}
.c-legacy-theme .card-header-icon-bg {
  border-right: #c8ced3;
}
.c-dark-theme .card-header-icon-bg {
  border-right: rgba(255, 255, 255, 0.075);
}
.card-header-actions {
  display: inline-block;
}
html:not([dir=rtl]) .card-header-actions {
  float: right;
  margin-right: -0.25rem;
}
*[dir=rtl] .card-header-actions {
  float: left;
  margin-left: -0.25rem;
}
.card-header-action {
  padding: 0 0.25rem;
  color: #8a93a2;
}
.card-header-action:hover {
  color: #3c4b64;
  text-decoration: none;
}
.card-accent-primary {
  border-top: 2px solid #321fdb !important;
}
.card-accent-secondary {
  border-top: 2px solid #ced2d8 !important;
}
.card-accent-success {
  border-top: 2px solid #2eb85c !important;
}
.card-accent-info {
  border-top: 2px solid #39f !important;
}
.card-accent-warning {
  border-top: 2px solid #f9b115 !important;
}
.card-accent-danger {
  border-top: 2px solid #e55353 !important;
}
.card-accent-light {
  border-top: 2px solid #ebedef !important;
}
.card-accent-dark {
  border-top: 2px solid #636f83 !important;
}
.c-dark-theme .card-accent-primary {
  border-top: 2px solid #4638c2 !important;
}
.c-dark-theme .card-accent-secondary {
  border-top: 2px solid #4c4f54 !important;
}
.c-dark-theme .card-accent-success {
  border-top: 2px solid #45a164 !important;
}
.c-dark-theme .card-accent-info {
  border-top: 2px solid #4799eb !important;
}
.c-dark-theme .card-accent-warning {
  border-top: 2px solid #e1a82d !important;
}
.c-dark-theme .card-accent-danger {
  border-top: 2px solid #d16767 !important;
}
.c-dark-theme .card-accent-light {
  border-top: 2px solid #6c6e7e !important;
}
.c-dark-theme .card-accent-dark {
  border-top: 2px solid #0e0e15 !important;
}
.c-legacy-theme .card-accent-primary {
  border-top: 2px solid #20a8d8 !important;
}
.c-legacy-theme .card-accent-secondary {
  border-top: 2px solid #c8ced3 !important;
}
.c-legacy-theme .card-accent-success {
  border-top: 2px solid #4dbd74 !important;
}
.c-legacy-theme .card-accent-info {
  border-top: 2px solid #63c2de !important;
}
.c-legacy-theme .card-accent-warning {
  border-top: 2px solid #ffc107 !important;
}
.c-legacy-theme .card-accent-danger {
  border-top: 2px solid #f86c6b !important;
}
.c-legacy-theme .card-accent-light {
  border-top: 2px solid #f0f3f5 !important;
}
.c-legacy-theme .card-accent-dark {
  border-top: 2px solid #2f353a !important;
}
.card-full {
  margin-top: -1rem;
  margin-right: -15px;
  margin-left: -15px;
  border: 0;
  border-bottom: 1px solid #d8dbe0;
}
@media (min-width: 576px) {
  .card-columns.cols-2 {
    -moz-column-count: 2;
         column-count: 2;
  }
}
.carousel {
  position: relative;
}
.carousel.pointer-event {
  touch-action: pan-y;
}
.carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.carousel-inner::after {
  display: block;
  clear: both;
  content: "";
}
.carousel-item {
  position: relative;
  display: none;
  float: left;
  width: 100%;
  margin-right: -100%;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  transition: transform 0.6s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-item {
    transition: none;
  }
}
.carousel-item.active,
.carousel-item-next,
.carousel-item-prev {
  display: block;
}
.carousel-item-next:not(.carousel-item-left),
.active.carousel-item-right {
  transform: translateX(100%);
}
.carousel-item-prev:not(.carousel-item-right),
.active.carousel-item-left {
  transform: translateX(-100%);
}
.carousel-fade .carousel-item {
  opacity: 0;
  transition-property: opacity;
  transform: none;
}
.carousel-fade .carousel-item.active,
.carousel-fade .carousel-item-next.carousel-item-left,
.carousel-fade .carousel-item-prev.carousel-item-right {
  z-index: 1;
  opacity: 1;
}
.carousel-fade .active.carousel-item-left,
.carousel-fade .active.carousel-item-right {
  z-index: 0;
  opacity: 0;
  transition: opacity 0s 0.6s;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-fade .active.carousel-item-left,
.carousel-fade .active.carousel-item-right {
    transition: none;
  }
}
.carousel-control-prev,
.carousel-control-next {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 15%;
  color: #fff;
  text-align: center;
  opacity: 0.5;
  transition: opacity 0.15s ease;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-control-prev,
.carousel-control-next {
    transition: none;
  }
}
.carousel-control-prev:hover, .carousel-control-prev:focus,
.carousel-control-next:hover,
.carousel-control-next:focus {
  color: #fff;
  text-decoration: none;
  outline: 0;
  opacity: 0.9;
}
.carousel-control-prev {
  left: 0;
}
.carousel-control-next {
  right: 0;
}
.carousel-control-prev-icon,
.carousel-control-next-icon {
  display: inline-block;
  width: 20px;
  height: 20px;
  background: no-repeat 50%/100% 100%;
}
.carousel-control-prev-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e");
}
.carousel-control-next-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e");
}
.carousel-indicators {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 15;
  display: flex;
  justify-content: center;
  margin-right: 15%;
  margin-left: 15%;
  list-style: none;
}
html:not([dir=rtl]) .carousel-indicators {
  padding-left: 0;
}
*[dir=rtl] .carousel-indicators {
  padding-right: 0;
}
.carousel-indicators li {
  box-sizing: content-box;
  flex: 0 1 auto;
  width: 30px;
  height: 3px;
  margin-right: 3px;
  margin-left: 3px;
  text-indent: -999px;
  cursor: pointer;
  background-color: #fff;
  background-clip: padding-box;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  opacity: 0.5;
  transition: opacity 0.6s ease;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-indicators li {
    transition: none;
  }
}
.carousel-indicators .active {
  opacity: 1;
}
.carousel-caption {
  position: absolute;
  right: 15%;
  bottom: 20px;
  left: 15%;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #fff;
  text-align: center;
}
.c-chart-wrapper canvas {
  width: 100%;
}
base-chart.chart {
  display: block;
}
canvas {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.close {
  float: right;
  font-size: 1.3125rem;
  font-weight: 700;
  line-height: 1;
  opacity: 0.5;
  color: #000015;
  text-shadow: 0 1px 0 #fff;
}
.c-legacy-theme .close {
  color: #000;
  text-shadow: 0 1px 0 #fff;
}
.c-dark-theme .close {
  color: #fff;
  text-shadow: 0 1px 0 #000015;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .close:hover {
    text-decoration: none;
    color: #000015;
  }
  .c-legacy-theme .close:hover {
    color: #000;
  }

  .c-dark-theme .close:hover {
    color: #fff;
  }
}
.close:not(:disabled):not(.disabled):hover, .close:not(:disabled):not(.disabled):focus {
  opacity: 0.75;
}
button.close {
  padding: 0;
  background-color: transparent;
  border: 0;
}
a.close.disabled {
  pointer-events: none;
}
code {
  font-size: 87.5%;
  color: #e83e8c;
  word-wrap: break-word;
}
a > code {
  color: inherit;
}
kbd {
  padding: 0.2rem 0.4rem;
  font-size: 87.5%;
  color: #fff;
  background-color: #4f5d73;
  border-radius: 0.2rem;
}
kbd kbd {
  padding: 0;
  font-size: 100%;
  font-weight: 700;
}
pre {
  display: block;
  font-size: 87.5%;
  color: #4f5d73;
}
pre code {
  font-size: inherit;
  color: inherit;
  word-break: normal;
}
.pre-scrollable {
  max-height: 340px;
  overflow-y: scroll;
}
.custom-control {
  position: relative;
  display: block;
  min-height: 1.3125rem;
}
html:not([dir=rtl]) .custom-control {
  padding-left: 1.5rem;
}
*[dir=rtl] .custom-control {
  padding-right: 1.5rem;
}
.custom-control-inline {
  display: inline-flex;
  margin-right: 1rem;
}
.custom-control-input {
  position: absolute;
  z-index: -1;
  width: 1rem;
  height: 1.15625rem;
  opacity: 0;
}
html:not([dir=rtl]) .custom-control-input {
  left: 0;
}
*[dir=rtl] .custom-control-input {
  right: 0;
}
.custom-control-input:checked ~ .custom-control-label::before {
  color: #fff;
  border-color: #321fdb;
  background-color: #321fdb;
}
.c-legacy-theme .custom-control-input:checked ~ .custom-control-label::before {
  color: #fff;
  border-color: #321fdb;
  background-color: #20a8d8;
}
.c-dark-theme .custom-control-input:checked ~ .custom-control-label::before {
  color: #fff;
  border-color: #4638c2;
  background-color: #4638c2;
}
.custom-control-input:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(50, 31, 219, 0.25);
}
.custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #958bef;
}
.c-legacy-theme .custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #8ad4ee;
}
.c-dark-theme .custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
  border-color: rgba(255, 255, 255, 0.2);
}
.custom-control-input:not(:disabled):active ~ .custom-control-label::before {
  color: #fff;
  background-color: #beb8f5;
  border-color: #beb8f5;
}
.c-legacy-theme .custom-control-input:not(:disabled):active ~ .custom-control-label::before {
  color: #fff;
  background-color: #b6e4f4;
  border-color: #b6e4f4;
}
.c-dark-theme .custom-control-input:not(:disabled):active ~ .custom-control-label::before {
  color: #fff;
  background-color: #c4c0ed;
  border-color: #c4c0ed;
}
.custom-control-input[disabled] ~ .custom-control-label, .custom-control-input:disabled ~ .custom-control-label {
  color: #8a93a2;
}
.c-legacy-theme .custom-control-input[disabled] ~ .custom-control-label, .c-legacy-theme .custom-control-input:disabled ~ .custom-control-label {
  color: #73818f;
}
.c-dark-theme .custom-control-input[disabled] ~ .custom-control-label, .c-dark-theme .custom-control-input:disabled ~ .custom-control-label {
  color: rgba(255, 255, 255, 0.38);
}
.custom-control-input[disabled] ~ .custom-control-label::before, .custom-control-input:disabled ~ .custom-control-label::before {
  background-color: #d8dbe0;
}
.c-legacy-theme .custom-control-input[disabled] ~ .custom-control-label::before, .c-legacy-theme .custom-control-input:disabled ~ .custom-control-label::before {
  background-color: #e4e7ea;
}
.c-dark-theme .custom-control-input[disabled] ~ .custom-control-label::before, .c-dark-theme .custom-control-input:disabled ~ .custom-control-label::before {
  background-color: rgba(255, 255, 255, 0.1);
}
.custom-control-label {
  position: relative;
  margin-bottom: 0;
  vertical-align: top;
}
.custom-control-label::before {
  position: absolute;
  top: 0.15625rem;
  display: block;
  width: 1rem;
  height: 1rem;
  pointer-events: none;
  content: "";
  border: solid 1px;
  background-color: #fff;
  border-color: #9da5b1;
}
html:not([dir=rtl]) .custom-control-label::before {
  left: -1.5rem;
}
*[dir=rtl] .custom-control-label::before {
  right: -1.5rem;
}
.c-legacy-theme .custom-control-label::before {
  background-color: #fff;
  border-color: #8f9ba6;
}
.c-dark-theme .custom-control-label::before {
  background-color: rgba(255, 255, 255, 0.05);
  border-color: rgba(0, 0, 21, 0.3);
}
.custom-control-label::after {
  position: absolute;
  top: 0.15625rem;
  display: block;
  width: 1rem;
  height: 1rem;
  content: "";
  background: no-repeat 50%/50% 50%;
}
html:not([dir=rtl]) .custom-control-label::after {
  left: -1.5rem;
}
*[dir=rtl] .custom-control-label::after {
  right: -1.5rem;
}
.custom-checkbox .custom-control-label::before {
  border-radius: 0.25rem;
}
.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e");
}
.c-legacy-theme .custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e");
}
.c-dark-theme .custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e");
}
.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before {
  border-color: #321fdb;
  background-color: #321fdb;
}
.c-legacy-theme .custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before {
  border-color: #20a8d8;
}
.c-dark-theme .custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before {
  border-color: #4638c2;
}
.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e");
}
.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(50, 31, 219, 0.5);
}
.c-legacy-theme .custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(32, 168, 216, 0.5);
}
.c-dark-theme .custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(70, 56, 194, 0.5);
}
.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before {
  background-color: rgba(50, 31, 219, 0.5);
}
.c-legacy-theme .custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before {
  background-color: rgba(32, 168, 216, 0.5);
}
.c-dark-theme .custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before {
  background-color: rgba(70, 56, 194, 0.5);
}
.custom-radio .custom-control-label::before {
  border-radius: 50%;
}
.custom-radio .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
}
.c-legacy-theme .custom-radio .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
}
.c-dark-theme .custom-radio .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
}
.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(50, 31, 219, 0.5);
}
.c-legacy-theme .custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(32, 168, 216, 0.5);
}
.c-dark-theme .custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(70, 56, 194, 0.5);
}
html:not([dir=rtl]) .custom-switch {
  padding-left: 2.25rem;
}
*[dir=rtl] .custom-switch {
  padding-right: 2.25rem;
}
.custom-switch .custom-control-label::before {
  width: 1.75rem;
  pointer-events: all;
  border-radius: 0.5rem;
}
html:not([dir=rtl]) .custom-switch .custom-control-label::before {
  left: -2.25rem;
}
*[dir=rtl] .custom-switch .custom-control-label::before {
  right: -2.25rem;
}
.custom-switch .custom-control-label::after {
  top: calc(0.15625rem + 2px);
  width: calc(1rem - 4px);
  height: calc(1rem - 4px);
  background-color: #9da5b1;
  border-radius: 0.5rem;
  transition: transform 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  background-color: #9da5b1;
}
html:not([dir=rtl]) .custom-switch .custom-control-label::after {
  left: calc(-2.25rem + 2px);
}
*[dir=rtl] .custom-switch .custom-control-label::after {
  right: calc(-2.25rem + 2px);
}
@media (prefers-reduced-motion: reduce) {
  .custom-switch .custom-control-label::after {
    transition: none;
  }
}
.c-legacy-theme .custom-switch .custom-control-label::after {
  background-color: #8f9ba6;
}
.c-dark-theme .custom-switch .custom-control-label::after {
  background-color: rgba(0, 0, 21, 0.3);
}
.custom-switch .custom-control-input:checked ~ .custom-control-label::after {
  background-color: #fff;
  transform: translateX(0.75rem);
}
.c-legacy-theme .custom-switch .custom-control-input:checked ~ .custom-control-label::after {
  background-color: #fff;
}
.c-dark-theme .custom-switch .custom-control-input:checked ~ .custom-control-label::after {
  background-color: rgba(255, 255, 255, 0.05);
}
.custom-switch .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(50, 31, 219, 0.5);
}
.c-legacy-theme .custom-switch .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(32, 168, 216, 0.5);
}
.c-dark-theme .custom-switch .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(70, 56, 194, 0.5);
}
.custom-select {
  display: inline-block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 1.75rem 0.375rem 0.75rem;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  vertical-align: middle;
  border: 1px solid;
  border-radius: 0.25rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  color: #768192;
  background: #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23636f83' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px;
  border-color: #d8dbe0;
}
.c-legacy-theme .custom-select {
  color: #5c6873;
  background: #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%232f353a' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px;
  border-color: #e4e7ea;
}
.c-dark-theme .custom-select {
  color: rgba(255, 255, 255, 0.87);
  background: rgba(255, 255, 255, 0.05) url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23636f83' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px;
  border-color: rgba(0, 0, 21, 0.3);
}
.custom-select:focus {
  border-color: #958bef;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(50, 31, 219, 0.25);
}
.c-legacy-theme .custom-select:focus {
  border-color: #8ad4ee;
}
.c-dark-theme .custom-select:focus {
  border-color: rgba(255, 255, 255, 0.2);
}
.custom-select:focus::-ms-value {
  color: #5c6873;
  background-color: #fff;
}
.c-dark-theme .custom-select:focus::-ms-value {
  color: rgba(255, 255, 255, 0.87);
  background-color: rgba(255, 255, 255, 0.05);
}
.custom-select[multiple], .custom-select[size]:not([size="1"]) {
  height: auto;
  background-image: none;
}
html:not([dir=rtl]) .custom-select[multiple], html:not([dir=rtl]) .custom-select[size]:not([size="1"]) {
  padding-right: 0.75rem;
}
*[dir=rtl] .custom-select[multiple], *[dir=rtl] .custom-select[size]:not([size="1"]) {
  padding-left: 0.75rem;
}
.custom-select:disabled {
  color: #8a93a2;
  background-color: #d8dbe0;
}
.c-legacy-theme .custom-select:disabled {
  color: #73818f;
  background-color: #e4e7ea;
}
.c-dark-theme .custom-select:disabled {
  color: rgba(255, 255, 255, 0.38);
  background-color: rgba(255, 255, 255, 0.1);
}
.custom-select::-ms-expand {
  display: none;
}
.custom-select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #768192;
}
.custom-select-sm {
  height: calc(1.5em + 0.5rem + 2px);
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  font-size: 0.765625rem;
}
html:not([dir=rtl]) .custom-select-sm {
  padding-left: 0.5rem;
}
*[dir=rtl] .custom-select-sm {
  padding-right: 0.5rem;
}
.custom-select-lg {
  height: calc(1.5em + 1rem + 2px);
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  font-size: 1.09375rem;
}
html:not([dir=rtl]) .custom-select-lg {
  padding-left: 1rem;
}
*[dir=rtl] .custom-select-lg {
  padding-right: 1rem;
}
.custom-file {
  position: relative;
  display: inline-block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  margin-bottom: 0;
}
.custom-file-input {
  position: relative;
  z-index: 2;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  margin: 0;
  opacity: 0;
}
.custom-file-input:focus ~ .custom-file-label {
  box-shadow: 0 0 0 0.2rem rgba(50, 31, 219, 0.25);
  border-color: #958bef;
}
.c-legacy-theme .custom-file-input:focus ~ .custom-file-label {
  border-color: #8ad4ee;
}
.c-dark-theme .custom-file-input:focus ~ .custom-file-label {
  border-color: rgba(255, 255, 255, 0.2);
}
.custom-file-input[disabled] ~ .custom-file-label, .custom-file-input:disabled ~ .custom-file-label {
  background-color: #d8dbe0;
}
.c-legacy-theme .custom-file-input[disabled] ~ .custom-file-label, .c-legacy-theme .custom-file-input:disabled ~ .custom-file-label {
  background-color: #e4e7ea;
}
.c-dark-theme .custom-file-input[disabled] ~ .custom-file-label, .c-dark-theme .custom-file-input:disabled ~ .custom-file-label {
  background-color: rgba(255, 255, 255, 0.1);
}
.custom-file-input:lang(en) ~ .custom-file-label::after {
  content: "Browse";
}
.custom-file-input ~ .custom-file-label[data-browse]::after {
  content: attr(data-browse);
}
.custom-file-label {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
  font-weight: 400;
  line-height: 1.5;
  border: 1px solid;
  border-radius: 0.25rem;
  color: #768192;
  background-color: #fff;
  border-color: #d8dbe0;
}
.c-legacy-theme .custom-file-label {
  color: #5c6873;
  background-color: #fff;
  border-color: #e4e7ea;
}
.c-dark-theme .custom-file-label {
  color: rgba(255, 255, 255, 0.87);
  background-color: rgba(255, 255, 255, 0.05);
  border-color: rgba(0, 0, 21, 0.3);
}
.custom-file-label::after {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 3;
  display: block;
  height: calc(1.5em + 0.75rem);
  padding: 0.375rem 0.75rem;
  line-height: 1.5;
  content: "Browse";
  border-left: inherit;
  border-radius: 0 0.25rem 0.25rem 0;
  color: #768192;
  background-color: #ebedef;
}
html:not([dir=rtl]) .custom-file-label::after {
  right: 0;
}
*[dir=rtl] .custom-file-label::after {
  left: 0;
}
.c-legacy-theme .custom-file-label::after {
  color: #5c6873;
  background-color: #f0f3f5;
}
.c-dark-theme .custom-file-label::after {
  color: rgba(255, 255, 255, 0.87);
  background-color: rgba(255, 255, 255, 0.09);
}
.custom-range {
  width: 100%;
  height: 1.4rem;
  padding: 0;
  background-color: transparent;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.custom-range:focus {
  outline: none;
}
.custom-range:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 1px #ebedef, 0 0 0 0.2rem rgba(50, 31, 219, 0.25);
}
.custom-range:focus::-moz-range-thumb {
  box-shadow: 0 0 0 1px #ebedef, 0 0 0 0.2rem rgba(50, 31, 219, 0.25);
}
.custom-range:focus::-ms-thumb {
  box-shadow: 0 0 0 1px #ebedef, 0 0 0 0.2rem rgba(50, 31, 219, 0.25);
}
.custom-range::-moz-focus-outer {
  border: 0;
}
.custom-range::-webkit-slider-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: -0.25rem;
  background-color: #321fdb;
  border: 0;
  border-radius: 1rem;
  -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  -webkit-appearance: none;
          appearance: none;
}
.c-legacy-theme .custom-range::-webkit-slider-thumb {
  background-color: #20a8d8;
}
.c-dark-theme .custom-range::-webkit-slider-thumb {
  background-color: #4638c2;
}
@media (prefers-reduced-motion: reduce) {
  .custom-range::-webkit-slider-thumb {
    -webkit-transition: none;
    transition: none;
  }
}
.custom-range::-webkit-slider-thumb:active {
  background-color: #beb8f5;
}
.c-legacy-theme .custom-range::-webkit-slider-thumb:active {
  background-color: #b6e4f4;
}
.c-dark-theme .custom-range::-webkit-slider-thumb:active {
  background-color: #c4c0ed;
}
.custom-range::-webkit-slider-runnable-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  border-color: transparent;
  border-radius: 1rem;
  background-color: #c4c9d0;
}
.c-legacy-theme .custom-range::-webkit-slider-runnable-track {
  background-color: #c8ced3;
}
.c-dark-theme .custom-range::-webkit-slider-runnable-track {
  background-color: #c4c9d0;
}
.custom-range::-moz-range-thumb {
  width: 1rem;
  height: 1rem;
  background-color: #321fdb;
  border: 0;
  border-radius: 1rem;
  -moz-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  -moz-appearance: none;
       appearance: none;
}
.c-legacy-theme .custom-range::-moz-range-thumb {
  background-color: #20a8d8;
}
.c-dark-theme .custom-range::-moz-range-thumb {
  background-color: #4638c2;
}
@media (prefers-reduced-motion: reduce) {
  .custom-range::-moz-range-thumb {
    -moz-transition: none;
    transition: none;
  }
}
.custom-range::-moz-range-thumb:active {
  background-color: #beb8f5;
}
.c-legacy-theme .custom-range::-moz-range-thumb:active {
  background-color: #b6e4f4;
}
.c-dark-theme .custom-range::-moz-range-thumb:active {
  background-color: #c4c0ed;
}
.custom-range::-moz-range-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: #c4c9d0;
  border-color: transparent;
  border-radius: 1rem;
}
.c-legacy-theme .custom-range::-moz-range-track {
  background-color: #c8ced3;
}
.c-dark-theme .custom-range::-moz-range-track {
  background-color: #c4c9d0;
}
.custom-range::-ms-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: 0;
  margin-right: 0.2rem;
  margin-left: 0.2rem;
  background-color: #321fdb;
  border: 0;
  border-radius: 1rem;
  -ms-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  appearance: none;
}
.c-legacy-theme .custom-range::-ms-thumb {
  background-color: #20a8d8;
}
.c-dark-theme .custom-range::-ms-thumb {
  background-color: #4638c2;
}
@media (prefers-reduced-motion: reduce) {
  .custom-range::-ms-thumb {
    -ms-transition: none;
    transition: none;
  }
}
.custom-range::-ms-thumb:active {
  background-color: #beb8f5;
}
.c-legacy-theme .custom-range::-ms-thumb:active {
  background-color: #b6e4f4;
}
.c-dark-theme .custom-range::-ms-thumb:active {
  background-color: #c4c0ed;
}
.custom-range::-ms-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: transparent;
  border-color: transparent;
  border-width: 0.5rem;
}
.custom-range::-ms-fill-lower {
  background-color: #c4c9d0;
  border-radius: 1rem;
}
.c-legacy-theme .custom-range::-ms-fill-lower {
  background-color: #c8ced3;
}
.c-dark-theme .custom-range::-ms-fill-lower {
  background-color: #c4c9d0;
}
.custom-range::-ms-fill-upper {
  margin-right: 15px;
  background-color: #c4c9d0;
  border-radius: 1rem;
}
.c-legacy-theme .custom-range::-ms-fill-upper {
  background-color: #c8ced3;
}
.c-dark-theme .custom-range::-ms-fill-upper {
  background-color: #c4c9d0;
}
.custom-range:disabled::-webkit-slider-thumb {
  background-color: #9da5b1;
}
.c-legacy-theme .custom-range:disabled::-webkit-slider-thumb {
  background-color: #8f9ba6;
}
.c-dark-theme .custom-range:disabled::-webkit-slider-thumb {
  background-color: #9da5b1;
}
.custom-range:disabled::-webkit-slider-runnable-track {
  cursor: default;
}
.custom-range:disabled::-moz-range-thumb {
  background-color: #9da5b1;
}
.c-legacy-theme .custom-range:disabled::-moz-range-thumb {
  background-color: #8f9ba6;
}
.c-dark-theme .custom-range:disabled::-moz-range-thumb {
  background-color: #9da5b1;
}
.custom-range:disabled::-moz-range-track {
  cursor: default;
}
.custom-range:disabled::-ms-thumb {
  background-color: #9da5b1;
}
.c-legacy-theme .custom-range:disabled::-ms-thumb {
  background-color: #8f9ba6;
}
.c-dark-theme .custom-range:disabled::-ms-thumb {
  background-color: #9da5b1;
}
.custom-control-label::before,
.custom-file-label,
.custom-select {
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .custom-control-label::before,
.custom-file-label,
.custom-select {
    transition: none;
  }
}
.dropup,
.dropright,
.dropdown,
.dropleft {
  position: relative;
}
.dropdown-toggle {
  white-space: nowrap;
}
.dropdown-toggle::after {
  display: inline-block;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid;
  border-right: 0.3em solid transparent;
  border-bottom: 0;
  border-left: 0.3em solid transparent;
}
html:not([dir=rtl]) .dropdown-toggle::after {
  margin-left: 0.255em;
}
*[dir=rtl] .dropdown-toggle::after {
  margin-right: 0.255em;
}
html:not([dir=rtl]) .dropdown-toggle:empty::after {
  margin-left: 0;
}
*[dir=rtl] .dropdown-toggle:empty::after {
  margin-right: 0;
}
.dropdown-menu {
  position: absolute;
  top: 100%;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 10rem;
  padding: 0.5rem 0;
  font-size: 0.875rem;
  text-align: left;
  list-style: none;
  background-clip: padding-box;
  border: 1px solid;
  border-radius: 0.25rem;
  color: #3c4b64;
  background-color: #fff;
  border-color: #222222;
}
.c-legacy-theme .dropdown-menu {
  color: #23282c;
  background-color: #fff;
  border-color: #c8ced3;
}
.c-dark-theme .dropdown-menu {
  color: rgba(255, 255, 255, 0.87);
  background-color: #34353e;
  border-color: rgba(255, 255, 255, 0.075);
}
.c-app:not(.c-legacy-theme) .dropdown-menu {
  border: 0;
  box-shadow: 0 4px 5px 0 rgba(var(--elevation-base-color), .14), 0 1px 10px 0 rgba(var(--elevation-base-color), .12), 0 2px 4px -1px rgba(var(--elevation-base-color), .20);
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .dropdown-menu {
    box-shadow: 0 4px 5px 0 rgba(60, 75, 100, .14), 0 1px 10px 0 rgba(60, 75, 100, .12), 0 2px 4px -1px rgba(60, 75, 100, .20);
  }
}
.c-header .dropdown-menu,
.navbar .dropdown-menu,
[data-display^=static] ~ .dropdown-menu {
  margin: 0.125rem 0 0;
}
html:not([dir=rtl]) .c-header .dropdown-menu-left,
html:not([dir=rtl]) .navbar .dropdown-menu-left,
html:not([dir=rtl]) [data-display^=static] ~ .dropdown-menu-left {
  right: auto;
  left: 0;
}
*[dir=rtl] .c-header .dropdown-menu-left,
*[dir=rtl] .navbar .dropdown-menu-left,
*[dir=rtl] [data-display^=static] ~ .dropdown-menu-left {
  right: 0;
  left: auto;
}
html:not([dir=rtl]) .c-header .dropdown-menu-right,
html:not([dir=rtl]) .navbar .dropdown-menu-right,
html:not([dir=rtl]) [data-display^=static] ~ .dropdown-menu-right {
  right: 0;
  left: auto;
}
*[dir=rtl] .c-header .dropdown-menu-right,
*[dir=rtl] .navbar .dropdown-menu-right,
*[dir=rtl] [data-display^=static] ~ .dropdown-menu-right {
  right: auto;
  left: 0;
}
@media (min-width: 576px) {
  html:not([dir=rtl]) .c-header .dropdown-menu-sm-left,
html:not([dir=rtl]) .navbar .dropdown-menu-sm-left,
html:not([dir=rtl]) [data-display^=static] ~ .dropdown-menu-sm-left {
    right: auto;
    left: 0;
  }
  *[dir=rtl] .c-header .dropdown-menu-sm-left,
*[dir=rtl] .navbar .dropdown-menu-sm-left,
*[dir=rtl] [data-display^=static] ~ .dropdown-menu-sm-left {
    right: 0;
    left: auto;
  }

  html:not([dir=rtl]) .c-header .dropdown-menu-sm-right,
html:not([dir=rtl]) .navbar .dropdown-menu-sm-right,
html:not([dir=rtl]) [data-display^=static] ~ .dropdown-menu-sm-right {
    right: 0;
    left: auto;
  }
  *[dir=rtl] .c-header .dropdown-menu-sm-right,
*[dir=rtl] .navbar .dropdown-menu-sm-right,
*[dir=rtl] [data-display^=static] ~ .dropdown-menu-sm-right {
    right: auto;
    left: 0;
  }
}
@media (min-width: 768px) {
  html:not([dir=rtl]) .c-header .dropdown-menu-md-left,
html:not([dir=rtl]) .navbar .dropdown-menu-md-left,
html:not([dir=rtl]) [data-display^=static] ~ .dropdown-menu-md-left {
    right: auto;
    left: 0;
  }
  *[dir=rtl] .c-header .dropdown-menu-md-left,
*[dir=rtl] .navbar .dropdown-menu-md-left,
*[dir=rtl] [data-display^=static] ~ .dropdown-menu-md-left {
    right: 0;
    left: auto;
  }

  html:not([dir=rtl]) .c-header .dropdown-menu-md-right,
html:not([dir=rtl]) .navbar .dropdown-menu-md-right,
html:not([dir=rtl]) [data-display^=static] ~ .dropdown-menu-md-right {
    right: 0;
    left: auto;
  }
  *[dir=rtl] .c-header .dropdown-menu-md-right,
*[dir=rtl] .navbar .dropdown-menu-md-right,
*[dir=rtl] [data-display^=static] ~ .dropdown-menu-md-right {
    right: auto;
    left: 0;
  }
}
@media (min-width: 992px) {
  html:not([dir=rtl]) .c-header .dropdown-menu-lg-left,
html:not([dir=rtl]) .navbar .dropdown-menu-lg-left,
html:not([dir=rtl]) [data-display^=static] ~ .dropdown-menu-lg-left {
    right: auto;
    left: 0;
  }
  *[dir=rtl] .c-header .dropdown-menu-lg-left,
*[dir=rtl] .navbar .dropdown-menu-lg-left,
*[dir=rtl] [data-display^=static] ~ .dropdown-menu-lg-left {
    right: 0;
    left: auto;
  }

  html:not([dir=rtl]) .c-header .dropdown-menu-lg-right,
html:not([dir=rtl]) .navbar .dropdown-menu-lg-right,
html:not([dir=rtl]) [data-display^=static] ~ .dropdown-menu-lg-right {
    right: 0;
    left: auto;
  }
  *[dir=rtl] .c-header .dropdown-menu-lg-right,
*[dir=rtl] .navbar .dropdown-menu-lg-right,
*[dir=rtl] [data-display^=static] ~ .dropdown-menu-lg-right {
    right: auto;
    left: 0;
  }
}
@media (min-width: 1200px) {
  html:not([dir=rtl]) .c-header .dropdown-menu-xl-left,
html:not([dir=rtl]) .navbar .dropdown-menu-xl-left,
html:not([dir=rtl]) [data-display^=static] ~ .dropdown-menu-xl-left {
    right: auto;
    left: 0;
  }
  *[dir=rtl] .c-header .dropdown-menu-xl-left,
*[dir=rtl] .navbar .dropdown-menu-xl-left,
*[dir=rtl] [data-display^=static] ~ .dropdown-menu-xl-left {
    right: 0;
    left: auto;
  }

  html:not([dir=rtl]) .c-header .dropdown-menu-xl-right,
html:not([dir=rtl]) .navbar .dropdown-menu-xl-right,
html:not([dir=rtl]) [data-display^=static] ~ .dropdown-menu-xl-right {
    right: 0;
    left: auto;
  }
  *[dir=rtl] .c-header .dropdown-menu-xl-right,
*[dir=rtl] .navbar .dropdown-menu-xl-right,
*[dir=rtl] [data-display^=static] ~ .dropdown-menu-xl-right {
    right: auto;
    left: 0;
  }
}
@media (min-width: 1400px) {
  html:not([dir=rtl]) .c-header .dropdown-menu-xxl-left,
html:not([dir=rtl]) .navbar .dropdown-menu-xxl-left,
html:not([dir=rtl]) [data-display^=static] ~ .dropdown-menu-xxl-left {
    right: auto;
    left: 0;
  }
  *[dir=rtl] .c-header .dropdown-menu-xxl-left,
*[dir=rtl] .navbar .dropdown-menu-xxl-left,
*[dir=rtl] [data-display^=static] ~ .dropdown-menu-xxl-left {
    right: 0;
    left: auto;
  }

  html:not([dir=rtl]) .c-header .dropdown-menu-xxl-right,
html:not([dir=rtl]) .navbar .dropdown-menu-xxl-right,
html:not([dir=rtl]) [data-display^=static] ~ .dropdown-menu-xxl-right {
    right: 0;
    left: auto;
  }
  *[dir=rtl] .c-header .dropdown-menu-xxl-right,
*[dir=rtl] .navbar .dropdown-menu-xxl-right,
*[dir=rtl] [data-display^=static] ~ .dropdown-menu-xxl-right {
    right: auto;
    left: 0;
  }
}
.dropup .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-top: 0;
  margin-bottom: 0.125rem;
}
.dropup .dropdown-toggle::after {
  display: inline-block;
  vertical-align: 0.255em;
  content: "";
  border-top: 0;
  border-right: 0.3em solid transparent;
  border-bottom: 0.3em solid;
  border-left: 0.3em solid transparent;
}
html:not([dir=rtl]) .dropup .dropdown-toggle::after {
  margin-left: 0.255em;
}
*[dir=rtl] .dropup .dropdown-toggle::after {
  margin-right: 0.255em;
}
html:not([dir=rtl]) .dropup .dropdown-toggle:empty::after {
  margin-left: 0;
}
*[dir=rtl] .dropup .dropdown-toggle:empty::after {
  margin-right: 0;
}
.dropright .dropdown-menu {
  top: 0;
  margin-top: 0;
}
html:not([dir=rtl]) .dropright .dropdown-menu {
  right: auto;
  left: 100%;
  margin-left: 0.125rem;
}
*[dir=rtl] .dropright .dropdown-menu {
  right: 100%;
  left: auto;
  margin-right: 0.125rem;
}
.dropright .dropdown-toggle::after {
  display: inline-block;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0;
  border-bottom: 0.3em solid transparent;
  border-left: 0.3em solid;
}
html:not([dir=rtl]) .dropright .dropdown-toggle::after {
  margin-left: 0.255em;
}
*[dir=rtl] .dropright .dropdown-toggle::after {
  margin-right: 0.255em;
}
html:not([dir=rtl]) .dropright .dropdown-toggle:empty::after {
  margin-left: 0;
}
*[dir=rtl] .dropright .dropdown-toggle:empty::after {
  margin-right: 0;
}
.dropright .dropdown-toggle::after {
  vertical-align: 0;
}
.dropleft .dropdown-menu {
  top: 0;
  margin-top: 0;
}
html:not([dir=rtl]) .dropleft .dropdown-menu {
  right: 100%;
  left: auto;
  margin-right: 0.125rem;
}
*[dir=rtl] .dropleft .dropdown-menu {
  right: auto;
  left: 100%;
  margin-left: 0.125rem;
}
.dropleft .dropdown-toggle::after {
  display: inline-block;
  vertical-align: 0.255em;
  content: "";
}
html:not([dir=rtl]) .dropleft .dropdown-toggle::after {
  margin-left: 0.255em;
}
*[dir=rtl] .dropleft .dropdown-toggle::after {
  margin-right: 0.255em;
}
.dropleft .dropdown-toggle::after {
  display: none;
}
.dropleft .dropdown-toggle::before {
  display: inline-block;
  margin-right: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0.3em solid;
  border-bottom: 0.3em solid transparent;
}
html:not([dir=rtl]) .dropleft .dropdown-toggle:empty::after {
  margin-left: 0;
}
*[dir=rtl] .dropleft .dropdown-toggle:empty::after {
  margin-right: 0;
}
.dropleft .dropdown-toggle::before {
  vertical-align: 0;
}
.dropdown-divider {
  height: 0;
  margin: 0.5rem 0;
  overflow: hidden;
  border-top: 1px solid #d8dbe0;
}
.c-legacy-theme .dropdown-divider {
  height: 0;
  margin: 0.5rem 0;
  overflow: hidden;
  border-top: 1px solid #e4e7ea;
}
.c-dark-theme .dropdown-divider {
  height: 0;
  margin: 0.5rem 0;
  overflow: hidden;
  border-top: 1px solid rgba(255, 255, 255, 0.075);
}
.dropdown-item {
  display: flex;
  align-items: center;
  width: 100%;
  padding: 0.5rem 1.25rem;
  clear: both;
  font-weight: 400;
  text-align: inherit;
  white-space: nowrap;
  background-color: transparent;
  border: 0;
  color: #4f5d73;
}
.c-legacy-theme .dropdown-item {
  color: #23282c;
}
.c-dark-theme .dropdown-item {
  color: rgba(255, 255, 255, 0.87);
}
.dropdown-item:hover, .dropdown-item:focus {
  text-decoration: none;
  color: #455164;
  background-color: #ebedef;
}
.c-legacy-theme .dropdown-item:hover, .c-legacy-theme .dropdown-item:focus {
  color: #181b1e;
  background-color: #f0f3f5;
}
.c-dark-theme .dropdown-item:hover, .c-dark-theme .dropdown-item:focus {
  color: rgba(255, 255, 255, 0.87);
  background-color: #3b3c45;
}
.dropdown-item.active, .dropdown-item:active {
  text-decoration: none;
  color: #fff;
  background-color: #321fdb;
}
.c-legacy-theme .dropdown-item.active, .c-legacy-theme .dropdown-item:active {
  color: #fff;
  background-color: #20a8d8;
}
.c-dark-theme .dropdown-item.active, .c-dark-theme .dropdown-item:active {
  color: #fff;
  background-color: #4638c2;
}
.dropdown-item.disabled, .dropdown-item:disabled {
  pointer-events: none;
  background-color: transparent;
  color: #8a93a2;
}
.c-legacy-theme .dropdown-item.disabled, .c-legacy-theme .dropdown-item:disabled {
  color: #73818f;
}
.c-dark-theme .dropdown-item.disabled, .c-dark-theme .dropdown-item:disabled {
  color: rgba(255, 255, 255, 0.6);
}
.dropdown-menu.show {
  display: block;
}
.dropdown-header {
  display: block;
  padding: 0.5rem 1.25rem;
  margin-bottom: 0;
  font-size: 0.765625rem;
  white-space: nowrap;
  color: #8a93a2;
}
.c-legacy-theme .dropdown-header {
  color: #73818f;
}
.c-dark-theme .dropdown-header {
  color: rgba(255, 255, 255, 0.87);
}
.dropdown-item-text {
  display: block;
  padding: 0.5rem 1.25rem;
  color: #4f5d73;
}
.c-legacy-theme .dropdown-item-text {
  color: #23282c;
}
.c-dark-theme .dropdown-item-text {
  color: rgba(255, 255, 255, 0.87);
}
.c-footer {
  display: flex;
  flex: 0 0 50px;
  flex-wrap: wrap;
  align-items: center;
  height: 50px;
  padding: 0 1rem;
}
.c-footer[class*=bg-] {
  border-color: rgba(0, 0, 21, 0.1);
}
.c-footer.c-footer-fixed {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1030;
}
.c-app:not(.c-legacy-theme) .c-footer.c-footer-fixed {
  border: 0;
  box-shadow: 0 2px 2px 0 rgba(var(--elevation-base-color), .14), 0 3px 1px -2px rgba(var(--elevation-base-color), .12), 0 1px 5px 0 rgba(var(--elevation-base-color), .20);
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .c-footer.c-footer-fixed {
    box-shadow: 0 2px 2px 0 rgba(60, 75, 100, .14), 0 3px 1px -2px rgba(60, 75, 100, .12), 0 1px 5px 0 rgba(60, 75, 100, .20);
  }
}
.c-footer.c-footer-dark {
  color: #fff;
  background: #636f83;
}
.c-footer {
  color: #3c4b64;
  background: #ebedef;
  border-top: 1px solid #d8dbe0;
}
.c-legacy-theme .c-footer.c-footer-dark {
  color: #fff;
  background: #636f83;
}
.c-legacy-theme .c-footer {
  color: #3c4b64;
  background: #ebedef;
  border-top: 1px solid #d8dbe0;
}
.c-dark-theme .c-footer {
  color: rgba(255, 255, 255, 0.87);
  background: #2a2b36;
  border-top: 0;
}
.form-control {
  display: block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  background-clip: padding-box;
  border: 1px solid;
  color: #5c6873;
  background-color: #fff;
  border-color: #e4e7ea;
  border-radius: 0.25rem;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
.c-dark-theme .form-control {
  color: rgba(255, 255, 255, 0.87);
  background-color: rgba(255, 255, 255, 0.05);
  border-color: rgba(255, 255, 255, 0.09);
}
@media (prefers-reduced-motion: reduce) {
  .form-control {
    transition: none;
  }
}
.form-control::-ms-expand {
  background-color: transparent;
  border: 0;
}
.form-control:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #768192;
}
.form-control:focus {
  color: #5c6873;
  background-color: #fff;
  border-color: #8ad4ee;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(50, 31, 219, 0.25);
}
.c-dark-theme .form-control:focus {
  color: rgba(255, 255, 255, 0.87);
  background-color: rgba(255, 255, 255, 0.05);
  border-color: rgba(255, 255, 255, 0.2);
}
.form-control::-moz-placeholder {
  color: #73818f;
  opacity: 1;
}
.form-control:-ms-input-placeholder {
  color: #73818f;
  opacity: 1;
}
.form-control::placeholder {
  color: #73818f;
  opacity: 1;
}
.c-dark-theme .form-control::-moz-placeholder {
  color: rgba(255, 255, 255, 0.6);
}
.c-dark-theme .form-control:-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.6);
}
.c-dark-theme .form-control::placeholder {
  color: rgba(255, 255, 255, 0.6);
}
.form-control:disabled, .form-control[readonly] {
  background-color: #e4e7ea;
  opacity: 1;
}
.c-dark-theme .form-control:disabled, .c-dark-theme .form-control[readonly] {
  background-color: rgba(255, 255, 255, 0.1);
}
input[type=date].form-control,
input[type=time].form-control,
input[type=datetime-local].form-control,
input[type=month].form-control {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
select.form-control:focus::-ms-value {
  color: #5c6873;
  background-color: #fff;
}
.c-dark-theme select.form-control:focus::-ms-value {
  color: rgba(255, 255, 255, 0.87);
  background-color: rgba(255, 255, 255, 0.05);
}
.c-dark-theme select.form-control option {
  background-color: #34353e;
}
.form-control-file,
.form-control-range {
  display: block;
  width: 100%;
}
.col-form-label {
  padding-top: calc(0.375rem + 1px);
  padding-bottom: calc(0.375rem + 1px);
  margin-bottom: 0;
  font-size: inherit;
  line-height: 1.5;
}
.col-form-label-lg {
  padding-top: calc(0.5rem + 1px);
  padding-bottom: calc(0.5rem + 1px);
  font-size: 1.09375rem;
  line-height: 1.5;
}
.col-form-label-sm {
  padding-top: calc(0.25rem + 1px);
  padding-bottom: calc(0.25rem + 1px);
  font-size: 0.765625rem;
  line-height: 1.5;
}
.form-control-plaintext {
  display: block;
  width: 100%;
  padding: 0.375rem 0;
  margin-bottom: 0;
  font-size: 0.875rem;
  line-height: 1.5;
  background-color: transparent;
  border: solid transparent;
  border-width: 1px 0;
  color: #23282c;
}
.c-dark-theme .form-control-plaintext {
  color: rgba(255, 255, 255, 0.87);
}
.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {
  padding-right: 0;
  padding-left: 0;
}
.form-control-sm {
  height: calc(1.5em + 0.5rem + 2px);
  padding: 0.25rem 0.5rem;
  font-size: 0.765625rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}
.form-control-lg {
  height: calc(1.5em + 1rem + 2px);
  padding: 0.5rem 1rem;
  font-size: 1.09375rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}
select.form-control[size], select.form-control[multiple] {
  height: auto;
}
textarea.form-control {
  height: auto;
}
.form-group {
  margin-bottom: 1rem;
}
.form-text {
  display: block;
  margin-top: 0.25rem;
}
.form-row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -5px;
  margin-left: -5px;
}
.form-row > .col,
.form-row > [class*=col-] {
  padding-right: 5px;
  padding-left: 5px;
}
.form-check {
  position: relative;
  display: block;
}
html:not([dir=rtl]) .form-check {
  padding-left: 1.25rem;
}
*[dir=rtl] .form-check {
  padding-right: 1.25rem;
}
.form-check-input {
  position: absolute;
  margin-top: 0.3rem;
}
html:not([dir=rtl]) .form-check-input {
  margin-left: -1.25rem;
}
*[dir=rtl] .form-check-input {
  margin-right: -1.25rem;
}
.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label {
  color: #768192;
}
.c-dark-theme .form-check-input[disabled] ~ .form-check-label, .c-dark-theme .form-check-input:disabled ~ .form-check-label {
  color: rgba(255, 255, 255, 0.6);
}
.form-check-label {
  margin-bottom: 0;
}
.form-check-inline {
  display: inline-flex;
  align-items: center;
}
html:not([dir=rtl]) .form-check-inline {
  padding-left: 0;
  margin-right: 0.75rem;
}
*[dir=rtl] .form-check-inline {
  padding-right: 0;
  margin-left: 0.75rem;
}
.form-check-inline .form-check-input {
  position: static;
  margin-top: 0;
}
html:not([dir=rtl]) .form-check-inline .form-check-input {
  margin-right: 0.3125rem;
  margin-left: 0;
}
*[dir=rtl] .form-check-inline .form-check-input {
  margin-right: 0;
  margin-left: 0.3125rem;
}
.valid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 80%;
  color: #2eb85c;
}
.valid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: 0.1rem;
  font-size: 0.765625rem;
  line-height: 1.5;
  color: #fff;
  background-color: rgba(46, 184, 92, 0.9);
  border-radius: 0.25rem;
}
.was-validated :valid ~ .valid-feedback,
.was-validated :valid ~ .valid-tooltip,
.is-valid ~ .valid-feedback,
.is-valid ~ .valid-tooltip {
  display: block;
}
.was-validated .form-control:valid, .form-control.is-valid {
  border-color: #2eb85c;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%232eb85c' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
html:not([dir=rtl]) .was-validated .form-control:valid, html:not([dir=rtl]) .form-control.is-valid {
  padding-right: calc(1.5em + 0.75rem);
}
*[dir=rtl] .was-validated .form-control:valid, *[dir=rtl] .form-control.is-valid {
  padding-left: calc(1.5em + 0.75rem);
}
html:not([dir=rtl]) .was-validated .form-control:valid, html:not([dir=rtl]) .form-control.is-valid {
  background-position: right calc(0.375em + 0.1875rem) center;
}
*[dir=rtl] .was-validated .form-control:valid, *[dir=rtl] .form-control.is-valid {
  background-position: left calc(0.375em + 0.1875rem) center;
}
.was-validated .form-control:valid:focus, .form-control.is-valid:focus {
  border-color: #2eb85c;
  box-shadow: 0 0 0 0.2rem rgba(46, 184, 92, 0.25);
}
html:not([dir=rtl]) .was-validated textarea.form-control:valid, html:not([dir=rtl]) textarea.form-control.is-valid {
  padding-right: calc(1.5em + 0.75rem);
  background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}
*[dir=rtl] .was-validated textarea.form-control:valid, *[dir=rtl] textarea.form-control.is-valid {
  padding-left: calc(1.5em + 0.75rem);
  background-position: top calc(0.375em + 0.1875rem) left calc(0.375em + 0.1875rem);
}
.was-validated .custom-select:valid, .custom-select.is-valid {
  border-color: #2eb85c;
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23636f83' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px, url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%232eb85c' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
html:not([dir=rtl]) .was-validated .custom-select:valid, html:not([dir=rtl]) .custom-select.is-valid {
  padding-right: calc(0.75em + 2.3125rem);
}
*[dir=rtl] .was-validated .custom-select:valid, *[dir=rtl] .custom-select.is-valid {
  padding-left: calc(0.75em + 2.3125rem);
}
.was-validated .custom-select:valid:focus, .custom-select.is-valid:focus {
  border-color: #2eb85c;
  box-shadow: 0 0 0 0.2rem rgba(46, 184, 92, 0.25);
}
.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {
  color: #2eb85c;
}
.was-validated .form-check-input:valid ~ .valid-feedback,
.was-validated .form-check-input:valid ~ .valid-tooltip, .form-check-input.is-valid ~ .valid-feedback,
.form-check-input.is-valid ~ .valid-tooltip {
  display: block;
}
.was-validated .custom-control-input:valid ~ .custom-control-label, .custom-control-input.is-valid ~ .custom-control-label {
  color: #2eb85c;
}
.was-validated .custom-control-input:valid ~ .custom-control-label::before, .custom-control-input.is-valid ~ .custom-control-label::before {
  border-color: #2eb85c;
}
.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before, .custom-control-input.is-valid:checked ~ .custom-control-label::before {
  border-color: #48d176;
  background-color: #48d176;
}
.was-validated .custom-control-input:valid:focus ~ .custom-control-label::before, .custom-control-input.is-valid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(46, 184, 92, 0.25);
}
.was-validated .custom-control-input:valid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-valid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #2eb85c;
}
.was-validated .custom-file-input:valid ~ .custom-file-label, .custom-file-input.is-valid ~ .custom-file-label {
  border-color: #2eb85c;
}
.was-validated .custom-file-input:valid:focus ~ .custom-file-label, .custom-file-input.is-valid:focus ~ .custom-file-label {
  border-color: #2eb85c;
  box-shadow: 0 0 0 0.2rem rgba(46, 184, 92, 0.25);
}
.invalid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 80%;
  color: #e55353;
}
.invalid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: 0.1rem;
  font-size: 0.765625rem;
  line-height: 1.5;
  color: #fff;
  background-color: rgba(229, 83, 83, 0.9);
  border-radius: 0.25rem;
}
.was-validated :invalid ~ .invalid-feedback,
.was-validated :invalid ~ .invalid-tooltip,
.is-invalid ~ .invalid-feedback,
.is-invalid ~ .invalid-tooltip {
  display: block;
}
.was-validated .form-control:invalid, .form-control.is-invalid {
  border-color: #e55353;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23e55353' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23e55353' stroke='none'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
html:not([dir=rtl]) .was-validated .form-control:invalid, html:not([dir=rtl]) .form-control.is-invalid {
  padding-right: calc(1.5em + 0.75rem);
}
*[dir=rtl] .was-validated .form-control:invalid, *[dir=rtl] .form-control.is-invalid {
  padding-left: calc(1.5em + 0.75rem);
}
html:not([dir=rtl]) .was-validated .form-control:invalid, html:not([dir=rtl]) .form-control.is-invalid {
  background-position: right calc(0.375em + 0.1875rem) center;
}
*[dir=rtl] .was-validated .form-control:invalid, *[dir=rtl] .form-control.is-invalid {
  background-position: left calc(0.375em + 0.1875rem) center;
}
.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {
  border-color: #e55353;
  box-shadow: 0 0 0 0.2rem rgba(229, 83, 83, 0.25);
}
html:not([dir=rtl]) .was-validated textarea.form-control:invalid, html:not([dir=rtl]) textarea.form-control.is-invalid {
  padding-right: calc(1.5em + 0.75rem);
  background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}
*[dir=rtl] .was-validated textarea.form-control:invalid, *[dir=rtl] textarea.form-control.is-invalid {
  padding-left: calc(1.5em + 0.75rem);
  background-position: top calc(0.375em + 0.1875rem) left calc(0.375em + 0.1875rem);
}
.was-validated .custom-select:invalid, .custom-select.is-invalid {
  border-color: #e55353;
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23636f83' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px, url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23e55353' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23e55353' stroke='none'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
html:not([dir=rtl]) .was-validated .custom-select:invalid, html:not([dir=rtl]) .custom-select.is-invalid {
  padding-right: calc(0.75em + 2.3125rem);
}
*[dir=rtl] .was-validated .custom-select:invalid, *[dir=rtl] .custom-select.is-invalid {
  padding-left: calc(0.75em + 2.3125rem);
}
.was-validated .custom-select:invalid:focus, .custom-select.is-invalid:focus {
  border-color: #e55353;
  box-shadow: 0 0 0 0.2rem rgba(229, 83, 83, 0.25);
}
.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
  color: #e55353;
}
.was-validated .form-check-input:invalid ~ .invalid-feedback,
.was-validated .form-check-input:invalid ~ .invalid-tooltip, .form-check-input.is-invalid ~ .invalid-feedback,
.form-check-input.is-invalid ~ .invalid-tooltip {
  display: block;
}
.was-validated .custom-control-input:invalid ~ .custom-control-label, .custom-control-input.is-invalid ~ .custom-control-label {
  color: #e55353;
}
.was-validated .custom-control-input:invalid ~ .custom-control-label::before, .custom-control-input.is-invalid ~ .custom-control-label::before {
  border-color: #e55353;
}
.was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before, .custom-control-input.is-invalid:checked ~ .custom-control-label::before {
  border-color: #ec7f7f;
  background-color: #ec7f7f;
}
.was-validated .custom-control-input:invalid:focus ~ .custom-control-label::before, .custom-control-input.is-invalid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(229, 83, 83, 0.25);
}
.was-validated .custom-control-input:invalid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-invalid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #e55353;
}
.was-validated .custom-file-input:invalid ~ .custom-file-label, .custom-file-input.is-invalid ~ .custom-file-label {
  border-color: #e55353;
}
.was-validated .custom-file-input:invalid:focus ~ .custom-file-label, .custom-file-input.is-invalid:focus ~ .custom-file-label {
  border-color: #e55353;
  box-shadow: 0 0 0 0.2rem rgba(229, 83, 83, 0.25);
}
.form-inline {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
}
.form-inline .form-check {
  width: 100%;
}
@media (min-width: 576px) {
  .form-inline label {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0;
  }
  .form-inline .form-group {
    display: flex;
    flex: 0 0 auto;
    flex-flow: row wrap;
    align-items: center;
    margin-bottom: 0;
  }
  .form-inline .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }
  .form-inline .form-control-plaintext {
    display: inline-block;
  }
  .form-inline .input-group,
.form-inline .custom-select {
    width: auto;
  }
  .form-inline .form-check {
    display: flex;
    align-items: center;
    justify-content: center;
    width: auto;
  }
  html:not([dir=rtl]) .form-inline .form-check {
    padding-left: 0;
  }
  *[dir=rtl] .form-inline .form-check {
    padding-right: 0;
  }
  .form-inline .form-check-input {
    position: relative;
    flex-shrink: 0;
    margin-top: 0;
  }
  html:not([dir=rtl]) .form-inline .form-check-input {
    margin-right: 0.25rem;
    margin-left: 0;
  }
  *[dir=rtl] .form-inline .form-check-input {
    margin-right: 0;
    margin-left: 0.25rem;
  }
  .form-inline .custom-control {
    align-items: center;
    justify-content: center;
  }
  .form-inline .custom-control-label {
    margin-bottom: 0;
  }
}
.form-control-color {
  max-width: 3rem;
  padding: 0.375rem;
}
.form-control-color::-moz-color-swatch {
  border-radius: 0.25rem;
}
.form-control-color::-webkit-color-swatch {
  border-radius: 0.25rem;
}
.container {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 576px) {
  .container {
    max-width: 540px;
  }
}
@media (min-width: 768px) {
  .container {
    max-width: 720px;
  }
}
@media (min-width: 992px) {
  .container {
    max-width: 960px;
  }
}
@media (min-width: 1200px) {
  .container {
    max-width: 1140px;
  }
}
@media (min-width: 1400px) {
  .container {
    max-width: 1320px;
  }
}
.container-fluid, .container-xxl, .container-xl, .container-lg, .container-md, .container-sm {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 576px) {
  .container-sm, .container {
    max-width: 540px;
  }
}
@media (min-width: 768px) {
  .container-md, .container-sm, .container {
    max-width: 720px;
  }
}
@media (min-width: 992px) {
  .container-lg, .container-md, .container-sm, .container {
    max-width: 960px;
  }
}
@media (min-width: 1200px) {
  .container-xl, .container-lg, .container-md, .container-sm, .container {
    max-width: 1140px;
  }
}
@media (min-width: 1400px) {
  .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {
    max-width: 1320px;
  }
}
.row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px;
}
.no-gutters {
  margin-right: 0;
  margin-left: 0;
}
.no-gutters > .col,
.no-gutters > [class*=col-] {
  padding-right: 0;
  padding-left: 0;
}
.col-xxl,
.col-xxl-auto, .col-xxl-12, .col-xxl-11, .col-xxl-10, .col-xxl-9, .col-xxl-8, .col-xxl-7, .col-xxl-6, .col-xxl-5, .col-xxl-4, .col-xxl-3, .col-xxl-2, .col-xxl-1, .col-xl,
.col-xl-auto, .col-xl-12, .col-xl-11, .col-xl-10, .col-xl-9, .col-xl-8, .col-xl-7, .col-xl-6, .col-xl-5, .col-xl-4, .col-xl-3, .col-xl-2, .col-xl-1, .col-lg,
.col-lg-auto, .col-lg-12, .col-lg-11, .col-lg-10, .col-lg-9, .col-lg-8, .col-lg-7, .col-lg-6, .col-lg-5, .col-lg-4, .col-lg-3, .col-lg-2, .col-lg-1, .col-md,
.col-md-auto, .col-md-12, .col-md-11, .col-md-10, .col-md-9, .col-md-8, .col-md-7, .col-md-6, .col-md-5, .col-md-4, .col-md-3, .col-md-2, .col-md-1, .col-sm,
.col-sm-auto, .col-sm-12, .col-sm-11, .col-sm-10, .col-sm-9, .col-sm-8, .col-sm-7, .col-sm-6, .col-sm-5, .col-sm-4, .col-sm-3, .col-sm-2, .col-sm-1, .col,
.col-auto, .col-12, .col-11, .col-10, .col-9, .col-8, .col-7, .col-6, .col-5, .col-4, .col-3, .col-2, .col-1 {
  position: relative;
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
}
.col {
  flex-basis: 0;
  flex-grow: 1;
  min-width: 0;
  max-width: 100%;
}
.row-cols-1 > * {
  flex: 0 0 100%;
  max-width: 100%;
}
.row-cols-2 > * {
  flex: 0 0 50%;
  max-width: 50%;
}
.row-cols-3 > * {
  flex: 0 0 33.3333333333%;
  max-width: 33.3333333333%;
}
.row-cols-4 > * {
  flex: 0 0 25%;
  max-width: 25%;
}
.row-cols-5 > * {
  flex: 0 0 20%;
  max-width: 20%;
}
.row-cols-6 > * {
  flex: 0 0 16.6666666667%;
  max-width: 16.6666666667%;
}
.col-auto {
  flex: 0 0 auto;
  width: auto;
  max-width: 100%;
}
.col-1 {
  flex: 0 0 8.3333333333%;
  max-width: 8.3333333333%;
}
.col-2 {
  flex: 0 0 16.6666666667%;
  max-width: 16.6666666667%;
}
.col-3 {
  flex: 0 0 25%;
  max-width: 25%;
}
.col-4 {
  flex: 0 0 33.3333333333%;
  max-width: 33.3333333333%;
}
.col-5 {
  flex: 0 0 41.6666666667%;
  max-width: 41.6666666667%;
}
.col-6 {
  flex: 0 0 50%;
  max-width: 50%;
}
.col-7 {
  flex: 0 0 58.3333333333%;
  max-width: 58.3333333333%;
}
.col-8 {
  flex: 0 0 66.6666666667%;
  max-width: 66.6666666667%;
}
.col-9 {
  flex: 0 0 75%;
  max-width: 75%;
}
.col-10 {
  flex: 0 0 83.3333333333%;
  max-width: 83.3333333333%;
}
.col-11 {
  flex: 0 0 91.6666666667%;
  max-width: 91.6666666667%;
}
.col-12 {
  flex: 0 0 100%;
  max-width: 100%;
}
.order-first {
  order: -1;
}
.order-last {
  order: 13;
}
.order-0 {
  order: 0;
}
.order-1 {
  order: 1;
}
.order-2 {
  order: 2;
}
.order-3 {
  order: 3;
}
.order-4 {
  order: 4;
}
.order-5 {
  order: 5;
}
.order-6 {
  order: 6;
}
.order-7 {
  order: 7;
}
.order-8 {
  order: 8;
}
.order-9 {
  order: 9;
}
.order-10 {
  order: 10;
}
.order-11 {
  order: 11;
}
.order-12 {
  order: 12;
}
.offset-1 {
  margin-left: 8.3333333333%;
}
.offset-2 {
  margin-left: 16.6666666667%;
}
.offset-3 {
  margin-left: 25%;
}
.offset-4 {
  margin-left: 33.3333333333%;
}
.offset-5 {
  margin-left: 41.6666666667%;
}
.offset-6 {
  margin-left: 50%;
}
.offset-7 {
  margin-left: 58.3333333333%;
}
.offset-8 {
  margin-left: 66.6666666667%;
}
.offset-9 {
  margin-left: 75%;
}
.offset-10 {
  margin-left: 83.3333333333%;
}
.offset-11 {
  margin-left: 91.6666666667%;
}
@media (min-width: 576px) {
  .col-sm {
    flex-basis: 0;
    flex-grow: 1;
    min-width: 0;
    max-width: 100%;
  }

  .row-cols-sm-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .row-cols-sm-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .row-cols-sm-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .row-cols-sm-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .row-cols-sm-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }

  .row-cols-sm-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }

  .col-sm-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }

  .col-sm-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .col-sm-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .col-sm-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .col-sm-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }

  .col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .col-sm-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }

  .col-sm-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }

  .col-sm-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }

  .col-sm-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }

  .col-sm-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }

  .col-sm-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .order-sm-first {
    order: -1;
  }

  .order-sm-last {
    order: 13;
  }

  .order-sm-0 {
    order: 0;
  }

  .order-sm-1 {
    order: 1;
  }

  .order-sm-2 {
    order: 2;
  }

  .order-sm-3 {
    order: 3;
  }

  .order-sm-4 {
    order: 4;
  }

  .order-sm-5 {
    order: 5;
  }

  .order-sm-6 {
    order: 6;
  }

  .order-sm-7 {
    order: 7;
  }

  .order-sm-8 {
    order: 8;
  }

  .order-sm-9 {
    order: 9;
  }

  .order-sm-10 {
    order: 10;
  }

  .order-sm-11 {
    order: 11;
  }

  .order-sm-12 {
    order: 12;
  }

  .offset-sm-0 {
    margin-left: 0;
  }

  .offset-sm-1 {
    margin-left: 8.3333333333%;
  }

  .offset-sm-2 {
    margin-left: 16.6666666667%;
  }

  .offset-sm-3 {
    margin-left: 25%;
  }

  .offset-sm-4 {
    margin-left: 33.3333333333%;
  }

  .offset-sm-5 {
    margin-left: 41.6666666667%;
  }

  .offset-sm-6 {
    margin-left: 50%;
  }

  .offset-sm-7 {
    margin-left: 58.3333333333%;
  }

  .offset-sm-8 {
    margin-left: 66.6666666667%;
  }

  .offset-sm-9 {
    margin-left: 75%;
  }

  .offset-sm-10 {
    margin-left: 83.3333333333%;
  }

  .offset-sm-11 {
    margin-left: 91.6666666667%;
  }
}
@media (min-width: 768px) {
  .col-md {
    flex-basis: 0;
    flex-grow: 1;
    min-width: 0;
    max-width: 100%;
  }

  .row-cols-md-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .row-cols-md-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .row-cols-md-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .row-cols-md-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .row-cols-md-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }

  .row-cols-md-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }

  .col-md-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }

  .col-md-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .col-md-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .col-md-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .col-md-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }

  .col-md-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .col-md-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }

  .col-md-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }

  .col-md-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }

  .col-md-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }

  .col-md-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }

  .col-md-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .order-md-first {
    order: -1;
  }

  .order-md-last {
    order: 13;
  }

  .order-md-0 {
    order: 0;
  }

  .order-md-1 {
    order: 1;
  }

  .order-md-2 {
    order: 2;
  }

  .order-md-3 {
    order: 3;
  }

  .order-md-4 {
    order: 4;
  }

  .order-md-5 {
    order: 5;
  }

  .order-md-6 {
    order: 6;
  }

  .order-md-7 {
    order: 7;
  }

  .order-md-8 {
    order: 8;
  }

  .order-md-9 {
    order: 9;
  }

  .order-md-10 {
    order: 10;
  }

  .order-md-11 {
    order: 11;
  }

  .order-md-12 {
    order: 12;
  }

  .offset-md-0 {
    margin-left: 0;
  }

  .offset-md-1 {
    margin-left: 8.3333333333%;
  }

  .offset-md-2 {
    margin-left: 16.6666666667%;
  }

  .offset-md-3 {
    margin-left: 25%;
  }

  .offset-md-4 {
    margin-left: 33.3333333333%;
  }

  .offset-md-5 {
    margin-left: 41.6666666667%;
  }

  .offset-md-6 {
    margin-left: 50%;
  }

  .offset-md-7 {
    margin-left: 58.3333333333%;
  }

  .offset-md-8 {
    margin-left: 66.6666666667%;
  }

  .offset-md-9 {
    margin-left: 75%;
  }

  .offset-md-10 {
    margin-left: 83.3333333333%;
  }

  .offset-md-11 {
    margin-left: 91.6666666667%;
  }
}
@media (min-width: 992px) {
  .col-lg {
    flex-basis: 0;
    flex-grow: 1;
    min-width: 0;
    max-width: 100%;
  }

  .row-cols-lg-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .row-cols-lg-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .row-cols-lg-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .row-cols-lg-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .row-cols-lg-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }

  .row-cols-lg-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }

  .col-lg-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }

  .col-lg-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .col-lg-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .col-lg-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .col-lg-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }

  .col-lg-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .col-lg-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }

  .col-lg-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }

  .col-lg-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }

  .col-lg-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }

  .col-lg-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }

  .col-lg-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .order-lg-first {
    order: -1;
  }

  .order-lg-last {
    order: 13;
  }

  .order-lg-0 {
    order: 0;
  }

  .order-lg-1 {
    order: 1;
  }

  .order-lg-2 {
    order: 2;
  }

  .order-lg-3 {
    order: 3;
  }

  .order-lg-4 {
    order: 4;
  }

  .order-lg-5 {
    order: 5;
  }

  .order-lg-6 {
    order: 6;
  }

  .order-lg-7 {
    order: 7;
  }

  .order-lg-8 {
    order: 8;
  }

  .order-lg-9 {
    order: 9;
  }

  .order-lg-10 {
    order: 10;
  }

  .order-lg-11 {
    order: 11;
  }

  .order-lg-12 {
    order: 12;
  }

  .offset-lg-0 {
    margin-left: 0;
  }

  .offset-lg-1 {
    margin-left: 8.3333333333%;
  }

  .offset-lg-2 {
    margin-left: 16.6666666667%;
  }

  .offset-lg-3 {
    margin-left: 25%;
  }

  .offset-lg-4 {
    margin-left: 33.3333333333%;
  }

  .offset-lg-5 {
    margin-left: 41.6666666667%;
  }

  .offset-lg-6 {
    margin-left: 50%;
  }

  .offset-lg-7 {
    margin-left: 58.3333333333%;
  }

  .offset-lg-8 {
    margin-left: 66.6666666667%;
  }

  .offset-lg-9 {
    margin-left: 75%;
  }

  .offset-lg-10 {
    margin-left: 83.3333333333%;
  }

  .offset-lg-11 {
    margin-left: 91.6666666667%;
  }
}
@media (min-width: 1200px) {
  .col-xl {
    flex-basis: 0;
    flex-grow: 1;
    min-width: 0;
    max-width: 100%;
  }

  .row-cols-xl-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .row-cols-xl-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .row-cols-xl-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .row-cols-xl-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .row-cols-xl-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }

  .row-cols-xl-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }

  .col-xl-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }

  .col-xl-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .col-xl-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .col-xl-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .col-xl-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }

  .col-xl-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .col-xl-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }

  .col-xl-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }

  .col-xl-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }

  .col-xl-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }

  .col-xl-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }

  .col-xl-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .order-xl-first {
    order: -1;
  }

  .order-xl-last {
    order: 13;
  }

  .order-xl-0 {
    order: 0;
  }

  .order-xl-1 {
    order: 1;
  }

  .order-xl-2 {
    order: 2;
  }

  .order-xl-3 {
    order: 3;
  }

  .order-xl-4 {
    order: 4;
  }

  .order-xl-5 {
    order: 5;
  }

  .order-xl-6 {
    order: 6;
  }

  .order-xl-7 {
    order: 7;
  }

  .order-xl-8 {
    order: 8;
  }

  .order-xl-9 {
    order: 9;
  }

  .order-xl-10 {
    order: 10;
  }

  .order-xl-11 {
    order: 11;
  }

  .order-xl-12 {
    order: 12;
  }

  .offset-xl-0 {
    margin-left: 0;
  }

  .offset-xl-1 {
    margin-left: 8.3333333333%;
  }

  .offset-xl-2 {
    margin-left: 16.6666666667%;
  }

  .offset-xl-3 {
    margin-left: 25%;
  }

  .offset-xl-4 {
    margin-left: 33.3333333333%;
  }

  .offset-xl-5 {
    margin-left: 41.6666666667%;
  }

  .offset-xl-6 {
    margin-left: 50%;
  }

  .offset-xl-7 {
    margin-left: 58.3333333333%;
  }

  .offset-xl-8 {
    margin-left: 66.6666666667%;
  }

  .offset-xl-9 {
    margin-left: 75%;
  }

  .offset-xl-10 {
    margin-left: 83.3333333333%;
  }

  .offset-xl-11 {
    margin-left: 91.6666666667%;
  }
}
@media (min-width: 1400px) {
  .col-xxl {
    flex-basis: 0;
    flex-grow: 1;
    min-width: 0;
    max-width: 100%;
  }

  .row-cols-xxl-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .row-cols-xxl-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .row-cols-xxl-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .row-cols-xxl-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .row-cols-xxl-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }

  .row-cols-xxl-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .col-xxl-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }

  .col-xxl-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }

  .col-xxl-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }

  .col-xxl-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .col-xxl-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .col-xxl-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }

  .col-xxl-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .col-xxl-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }

  .col-xxl-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }

  .col-xxl-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }

  .col-xxl-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }

  .col-xxl-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }

  .col-xxl-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .order-xxl-first {
    order: -1;
  }

  .order-xxl-last {
    order: 13;
  }

  .order-xxl-0 {
    order: 0;
  }

  .order-xxl-1 {
    order: 1;
  }

  .order-xxl-2 {
    order: 2;
  }

  .order-xxl-3 {
    order: 3;
  }

  .order-xxl-4 {
    order: 4;
  }

  .order-xxl-5 {
    order: 5;
  }

  .order-xxl-6 {
    order: 6;
  }

  .order-xxl-7 {
    order: 7;
  }

  .order-xxl-8 {
    order: 8;
  }

  .order-xxl-9 {
    order: 9;
  }

  .order-xxl-10 {
    order: 10;
  }

  .order-xxl-11 {
    order: 11;
  }

  .order-xxl-12 {
    order: 12;
  }

  .offset-xxl-0 {
    margin-left: 0;
  }

  .offset-xxl-1 {
    margin-left: 8.3333333333%;
  }

  .offset-xxl-2 {
    margin-left: 16.6666666667%;
  }

  .offset-xxl-3 {
    margin-left: 25%;
  }

  .offset-xxl-4 {
    margin-left: 33.3333333333%;
  }

  .offset-xxl-5 {
    margin-left: 41.6666666667%;
  }

  .offset-xxl-6 {
    margin-left: 50%;
  }

  .offset-xxl-7 {
    margin-left: 58.3333333333%;
  }

  .offset-xxl-8 {
    margin-left: 66.6666666667%;
  }

  .offset-xxl-9 {
    margin-left: 75%;
  }

  .offset-xxl-10 {
    margin-left: 83.3333333333%;
  }

  .offset-xxl-11 {
    margin-left: 91.6666666667%;
  }
}
.row.row-equal {
  padding-right: 7.5px;
  padding-left: 7.5px;
  margin-right: -15px;
  margin-left: -15px;
}
.row.row-equal [class*=col-] {
  padding-right: 7.5px;
  padding-left: 7.5px;
}
.main .container-fluid, .main .container-sm, .main .container-md, .main .container-lg, .main .container-xl, .main .container-xxl {
  padding: 0 30px;
}
.c-header {
  position: relative;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  flex-shrink: 0;
  min-height: 56px;
}
.c-header[class*=bg-] {
  border-color: rgba(0, 0, 21, 0.1);
}
.c-header.c-header-fixed {
  position: fixed;
  right: 0;
  left: 0;
  z-index: 1029;
}
.c-app:not(.c-legacy-theme) .c-header.c-header-fixed {
  border: 0;
  box-shadow: 0 2px 2px 0 rgba(var(--elevation-base-color), .14), 0 3px 1px -2px rgba(var(--elevation-base-color), .12), 0 1px 5px 0 rgba(var(--elevation-base-color), .20);
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .c-header.c-header-fixed {
    box-shadow: 0 2px 2px 0 rgba(60, 75, 100, .14), 0 3px 1px -2px rgba(60, 75, 100, .12), 0 1px 5px 0 rgba(60, 75, 100, .20);
  }
}
.c-header .c-subheader {
  border-bottom: 0;
}
.c-header-brand {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  min-height: 56px;
  transition: width 0.3s;
}
.c-header-brand.c-header-brand-center {
  position: absolute;
  top: 56px;
  transform: translate(-50%, -100%);
}
html:not([dir=rtl]) .c-header-brand.c-header-brand-center {
  left: 50%;
}
*[dir=rtl] .c-header-brand.c-header-brand-center {
  right: 50%;
}
@media (max-width: 575.98px) {
  .c-header-brand.c-header-brand-xs-down-center {
    position: absolute;
    top: 56px;
    transform: translate(-50%, -100%);
  }
  html:not([dir=rtl]) .c-header-brand.c-header-brand-xs-down-center {
    left: 50%;
  }
  *[dir=rtl] .c-header-brand.c-header-brand-xs-down-center {
    right: 50%;
  }
}
.c-header-brand.c-header-brand-xs-up-center {
  position: absolute;
  top: 56px;
  transform: translate(-50%, -100%);
}
html:not([dir=rtl]) .c-header-brand.c-header-brand-xs-up-center {
  left: 50%;
}
*[dir=rtl] .c-header-brand.c-header-brand-xs-up-center {
  right: 50%;
}
@media (max-width: 767.98px) {
  .c-header-brand.c-header-brand-sm-down-center {
    position: absolute;
    top: 56px;
    transform: translate(-50%, -100%);
  }
  html:not([dir=rtl]) .c-header-brand.c-header-brand-sm-down-center {
    left: 50%;
  }
  *[dir=rtl] .c-header-brand.c-header-brand-sm-down-center {
    right: 50%;
  }
}
@media (min-width: 576px) {
  .c-header-brand.c-header-brand-sm-up-center {
    position: absolute;
    top: 56px;
    transform: translate(-50%, -100%);
  }
  html:not([dir=rtl]) .c-header-brand.c-header-brand-sm-up-center {
    left: 50%;
  }
  *[dir=rtl] .c-header-brand.c-header-brand-sm-up-center {
    right: 50%;
  }
}
@media (max-width: 991.98px) {
  .c-header-brand.c-header-brand-md-down-center {
    position: absolute;
    top: 56px;
    transform: translate(-50%, -100%);
  }
  html:not([dir=rtl]) .c-header-brand.c-header-brand-md-down-center {
    left: 50%;
  }
  *[dir=rtl] .c-header-brand.c-header-brand-md-down-center {
    right: 50%;
  }
}
@media (min-width: 768px) {
  .c-header-brand.c-header-brand-md-up-center {
    position: absolute;
    top: 56px;
    transform: translate(-50%, -100%);
  }
  html:not([dir=rtl]) .c-header-brand.c-header-brand-md-up-center {
    left: 50%;
  }
  *[dir=rtl] .c-header-brand.c-header-brand-md-up-center {
    right: 50%;
  }
}
@media (max-width: 1199.98px) {
  .c-header-brand.c-header-brand-lg-down-center {
    position: absolute;
    top: 56px;
    transform: translate(-50%, -100%);
  }
  html:not([dir=rtl]) .c-header-brand.c-header-brand-lg-down-center {
    left: 50%;
  }
  *[dir=rtl] .c-header-brand.c-header-brand-lg-down-center {
    right: 50%;
  }
}
@media (min-width: 992px) {
  .c-header-brand.c-header-brand-lg-up-center {
    position: absolute;
    top: 56px;
    transform: translate(-50%, -100%);
  }
  html:not([dir=rtl]) .c-header-brand.c-header-brand-lg-up-center {
    left: 50%;
  }
  *[dir=rtl] .c-header-brand.c-header-brand-lg-up-center {
    right: 50%;
  }
}
@media (max-width: 1399.98px) {
  .c-header-brand.c-header-brand-xl-down-center {
    position: absolute;
    top: 56px;
    transform: translate(-50%, -100%);
  }
  html:not([dir=rtl]) .c-header-brand.c-header-brand-xl-down-center {
    left: 50%;
  }
  *[dir=rtl] .c-header-brand.c-header-brand-xl-down-center {
    right: 50%;
  }
}
@media (min-width: 1200px) {
  .c-header-brand.c-header-brand-xl-up-center {
    position: absolute;
    top: 56px;
    transform: translate(-50%, -100%);
  }
  html:not([dir=rtl]) .c-header-brand.c-header-brand-xl-up-center {
    left: 50%;
  }
  *[dir=rtl] .c-header-brand.c-header-brand-xl-up-center {
    right: 50%;
  }
}
.c-header-brand.c-header-brand-xxl-down-center {
  position: absolute;
  top: 56px;
  transform: translate(-50%, -100%);
}
html:not([dir=rtl]) .c-header-brand.c-header-brand-xxl-down-center {
  left: 50%;
}
*[dir=rtl] .c-header-brand.c-header-brand-xxl-down-center {
  right: 50%;
}
@media (min-width: 1400px) {
  .c-header-brand.c-header-brand-xxl-up-center {
    position: absolute;
    top: 56px;
    transform: translate(-50%, -100%);
  }
  html:not([dir=rtl]) .c-header-brand.c-header-brand-xxl-up-center {
    left: 50%;
  }
  *[dir=rtl] .c-header-brand.c-header-brand-xxl-up-center {
    right: 50%;
  }
}
.c-header-toggler {
  min-width: 50px;
  font-size: 1.09375rem;
  background-color: transparent;
  border: 0;
  border-radius: 0.25rem;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-header-toggler:hover {
    color: #3c4b64;
    text-decoration: none;
  }
}
.c-header-toggler:focus, .c-header-toggler.focus {
  outline: 0;
}
.c-header-toggler:not(:disabled):not(.c-disabled) {
  cursor: pointer;
}
.c-header-toggler-icon {
  display: block;
  height: 1.3671875rem;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100% 100%;
}
.c-header-nav {
  display: flex;
  flex-direction: row;
  align-items: center;
  min-height: 56px;
  padding: 0;
  margin-bottom: 0;
  list-style: none;
}
.c-header-nav .c-header-nav-item {
  position: relative;
}
.c-header-nav .c-header-nav-btn {
  background-color: transparent;
  border: 1px solid transparent;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-header-nav .c-header-nav-btn:hover {
    text-decoration: none;
  }
}
.c-header-nav .c-header-nav-btn:focus, .c-header-nav .c-header-nav-btn.focus {
  outline: 0;
}
.c-header-nav .c-header-nav-link,
.c-header-nav .c-header-nav-btn {
  display: flex;
  align-items: center;
  padding-right: 0.5rem;
  padding-left: 0.5rem;
}
.c-header-nav .c-header-nav-link .badge,
.c-header-nav .c-header-nav-btn .badge {
  position: absolute;
  top: 50%;
  margin-top: -16px;
}
html:not([dir=rtl]) .c-header-nav .c-header-nav-link .badge,
html:not([dir=rtl]) .c-header-nav .c-header-nav-btn .badge {
  left: 50%;
  margin-left: 0;
}
*[dir=rtl] .c-header-nav .c-header-nav-link .badge,
*[dir=rtl] .c-header-nav .c-header-nav-btn .badge {
  right: 50%;
  margin-right: 0;
}
.c-header-nav .c-header-nav-link:hover,
.c-header-nav .c-header-nav-btn:hover {
  text-decoration: none;
}
.c-header-nav .dropdown-item {
  min-width: 180px;
}
.c-header.c-header-dark {
  background: #3c4b64;
  border-bottom: 1px solid #636f83;
}
.c-header.c-header-dark .c-subheader {
  margin-top: -1px;
  border-top: 1px solid #636f83;
}
.c-header.c-header-dark .c-header-brand {
  color: #fff;
  background-color: transparent;
}
.c-header.c-header-dark .c-header-brand:hover, .c-header.c-header-dark .c-header-brand:focus {
  color: #fff;
}
.c-header.c-header-dark .c-header-nav .c-header-nav-link,
.c-header.c-header-dark .c-header-nav .c-header-nav-btn {
  color: rgba(255, 255, 255, 0.75);
}
.c-header.c-header-dark .c-header-nav .c-header-nav-link:hover, .c-header.c-header-dark .c-header-nav .c-header-nav-link:focus,
.c-header.c-header-dark .c-header-nav .c-header-nav-btn:hover,
.c-header.c-header-dark .c-header-nav .c-header-nav-btn:focus {
  color: rgba(255, 255, 255, 0.9);
}
.c-header.c-header-dark .c-header-nav .c-header-nav-link.c-disabled,
.c-header.c-header-dark .c-header-nav .c-header-nav-btn.c-disabled {
  color: rgba(255, 255, 255, 0.25);
}
.c-header.c-header-dark .c-header-nav .c-show > .c-header-nav-link,
.c-header.c-header-dark .c-header-nav .c-active > .c-header-nav-link,
.c-header.c-header-dark .c-header-nav .c-header-nav-link.c-show,
.c-header.c-header-dark .c-header-nav .c-header-nav-link.c-active {
  color: #fff;
}
.c-header.c-header-dark .c-header-toggler {
  color: rgba(255, 255, 255, 0.75);
  border-color: rgba(255, 255, 255, 0.1);
}
.c-header.c-header-dark .c-header-toggler-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 0.75)' stroke-width='2.25' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}
.c-header.c-header-dark .c-header-toggler-icon:hover {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 0.9)' stroke-width='2.25' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}
.c-header.c-header-dark .c-header-text {
  color: rgba(255, 255, 255, 0.75);
}
.c-header.c-header-dark .c-header-text a {
  color: #fff;
}
.c-header.c-header-dark .c-header-text a:hover, .c-header.c-header-dark .c-header-text a:focus {
  color: #fff;
}
.c-header {
  background: #fff;
  border-bottom: 1px solid #d8dbe0;
}
.c-header .c-subheader {
  margin-top: -1px;
  border-top: 1px solid #d8dbe0;
}
.c-header .c-header-brand {
  color: #4f5d73;
  background-color: transparent;
}
.c-header .c-header-brand:hover, .c-header .c-header-brand:focus {
  color: #3a4555;
}
.c-header .c-header-nav .c-header-nav-link,
.c-header .c-header-nav .c-header-nav-btn {
  color: rgba(0, 0, 21, 0.5);
}
.c-header .c-header-nav .c-header-nav-link:hover, .c-header .c-header-nav .c-header-nav-link:focus,
.c-header .c-header-nav .c-header-nav-btn:hover,
.c-header .c-header-nav .c-header-nav-btn:focus {
  color: rgba(0, 0, 21, 0.7);
}
.c-header .c-header-nav .c-header-nav-link.c-disabled,
.c-header .c-header-nav .c-header-nav-btn.c-disabled {
  color: rgba(0, 0, 21, 0.3);
}
.c-header .c-header-nav .c-show > .c-header-nav-link,
.c-header .c-header-nav .c-active > .c-header-nav-link,
.c-header .c-header-nav .c-header-nav-link.c-show,
.c-header .c-header-nav .c-header-nav-link.c-active {
  color: rgba(0, 0, 21, 0.9);
}
.c-header .c-header-toggler {
  color: rgba(0, 0, 21, 0.5);
  border-color: rgba(0, 0, 21, 0.1);
}
.c-header .c-header-toggler-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(0, 0, 21, 0.5)' stroke-width='2.25' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}
.c-header .c-header-toggler-icon:hover {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(0, 0, 21, 0.7)' stroke-width='2.25' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}
.c-header .c-header-text {
  color: rgba(0, 0, 21, 0.5);
}
.c-header .c-header-text a {
  color: rgba(0, 0, 21, 0.9);
}
.c-header .c-header-text a:hover, .c-header .c-header-text a:focus {
  color: rgba(0, 0, 21, 0.9);
}
.c-legacy-theme .c-header.c-header-dark {
  background: #3c4b64;
  border-bottom: 1px solid #636f83;
}
.c-legacy-theme .c-header.c-header-dark .c-subheader {
  margin-top: -1px;
  border-top: 1px solid #636f83;
}
.c-legacy-theme .c-header.c-header-dark .c-header-brand {
  color: #fff;
  background-color: transparent;
}
.c-legacy-theme .c-header.c-header-dark .c-header-brand:hover, .c-legacy-theme .c-header.c-header-dark .c-header-brand:focus {
  color: #fff;
}
.c-legacy-theme .c-header.c-header-dark .c-header-nav .c-header-nav-link,
.c-legacy-theme .c-header.c-header-dark .c-header-nav .c-header-nav-btn {
  color: rgba(255, 255, 255, 0.75);
}
.c-legacy-theme .c-header.c-header-dark .c-header-nav .c-header-nav-link:hover, .c-legacy-theme .c-header.c-header-dark .c-header-nav .c-header-nav-link:focus,
.c-legacy-theme .c-header.c-header-dark .c-header-nav .c-header-nav-btn:hover,
.c-legacy-theme .c-header.c-header-dark .c-header-nav .c-header-nav-btn:focus {
  color: rgba(255, 255, 255, 0.9);
}
.c-legacy-theme .c-header.c-header-dark .c-header-nav .c-header-nav-link.c-disabled,
.c-legacy-theme .c-header.c-header-dark .c-header-nav .c-header-nav-btn.c-disabled {
  color: rgba(255, 255, 255, 0.25);
}
.c-legacy-theme .c-header.c-header-dark .c-header-nav .c-show > .c-header-nav-link,
.c-legacy-theme .c-header.c-header-dark .c-header-nav .c-active > .c-header-nav-link,
.c-legacy-theme .c-header.c-header-dark .c-header-nav .c-header-nav-link.c-show,
.c-legacy-theme .c-header.c-header-dark .c-header-nav .c-header-nav-link.c-active {
  color: #fff;
}
.c-legacy-theme .c-header.c-header-dark .c-header-toggler {
  color: rgba(255, 255, 255, 0.75);
  border-color: rgba(255, 255, 255, 0.1);
}
.c-legacy-theme .c-header.c-header-dark .c-header-toggler-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 0.75)' stroke-width='2.25' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}
.c-legacy-theme .c-header.c-header-dark .c-header-toggler-icon:hover {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 0.9)' stroke-width='2.25' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}
.c-legacy-theme .c-header.c-header-dark .c-header-text {
  color: rgba(255, 255, 255, 0.75);
}
.c-legacy-theme .c-header.c-header-dark .c-header-text a {
  color: #fff;
}
.c-legacy-theme .c-header.c-header-dark .c-header-text a:hover, .c-legacy-theme .c-header.c-header-dark .c-header-text a:focus {
  color: #fff;
}
.c-legacy-theme .c-header {
  background: #fff;
  border-bottom: 1px solid #d8dbe0;
}
.c-legacy-theme .c-header .c-subheader {
  margin-top: -1px;
  border-top: 1px solid #d8dbe0;
}
.c-legacy-theme .c-header .c-header-brand {
  color: #4f5d73;
  background-color: transparent;
}
.c-legacy-theme .c-header .c-header-brand:hover, .c-legacy-theme .c-header .c-header-brand:focus {
  color: #3a4555;
}
.c-legacy-theme .c-header .c-header-nav .c-header-nav-link,
.c-legacy-theme .c-header .c-header-nav .c-header-nav-btn {
  color: rgba(0, 0, 21, 0.5);
}
.c-legacy-theme .c-header .c-header-nav .c-header-nav-link:hover, .c-legacy-theme .c-header .c-header-nav .c-header-nav-link:focus,
.c-legacy-theme .c-header .c-header-nav .c-header-nav-btn:hover,
.c-legacy-theme .c-header .c-header-nav .c-header-nav-btn:focus {
  color: rgba(0, 0, 21, 0.7);
}
.c-legacy-theme .c-header .c-header-nav .c-header-nav-link.c-disabled,
.c-legacy-theme .c-header .c-header-nav .c-header-nav-btn.c-disabled {
  color: rgba(0, 0, 21, 0.3);
}
.c-legacy-theme .c-header .c-header-nav .c-show > .c-header-nav-link,
.c-legacy-theme .c-header .c-header-nav .c-active > .c-header-nav-link,
.c-legacy-theme .c-header .c-header-nav .c-header-nav-link.c-show,
.c-legacy-theme .c-header .c-header-nav .c-header-nav-link.c-active {
  color: rgba(0, 0, 21, 0.9);
}
.c-legacy-theme .c-header .c-header-toggler {
  color: rgba(0, 0, 21, 0.5);
  border-color: rgba(0, 0, 21, 0.1);
}
.c-legacy-theme .c-header .c-header-toggler-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(0, 0, 21, 0.5)' stroke-width='2.25' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}
.c-legacy-theme .c-header .c-header-toggler-icon:hover {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(0, 0, 21, 0.7)' stroke-width='2.25' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}
.c-legacy-theme .c-header .c-header-text {
  color: rgba(0, 0, 21, 0.5);
}
.c-legacy-theme .c-header .c-header-text a {
  color: rgba(0, 0, 21, 0.9);
}
.c-legacy-theme .c-header .c-header-text a:hover, .c-legacy-theme .c-header .c-header-text a:focus {
  color: rgba(0, 0, 21, 0.9);
}
.c-dark-theme .c-header {
  background: #2a2b36;
  border-bottom: 0;
}
.c-dark-theme .c-header .c-subheader {
  margin-top: -1px;
  border-top: 1px solid rgba(255, 255, 255, 0.075);
}
.c-dark-theme .c-header .c-header-brand {
  color: #fff;
  background-color: transparent;
}
.c-dark-theme .c-header .c-header-brand:hover, .c-dark-theme .c-header .c-header-brand:focus {
  color: #fff;
}
.c-dark-theme .c-header .c-header-nav .c-header-nav-link,
.c-dark-theme .c-header .c-header-nav .c-header-nav-btn {
  color: rgba(255, 255, 255, 0.75);
}
.c-dark-theme .c-header .c-header-nav .c-header-nav-link:hover, .c-dark-theme .c-header .c-header-nav .c-header-nav-link:focus,
.c-dark-theme .c-header .c-header-nav .c-header-nav-btn:hover,
.c-dark-theme .c-header .c-header-nav .c-header-nav-btn:focus {
  color: rgba(255, 255, 255, 0.9);
}
.c-dark-theme .c-header .c-header-nav .c-header-nav-link.c-disabled,
.c-dark-theme .c-header .c-header-nav .c-header-nav-btn.c-disabled {
  color: rgba(255, 255, 255, 0.25);
}
.c-dark-theme .c-header .c-header-nav .c-show > .c-header-nav-link,
.c-dark-theme .c-header .c-header-nav .c-active > .c-header-nav-link,
.c-dark-theme .c-header .c-header-nav .c-header-nav-link.c-show,
.c-dark-theme .c-header .c-header-nav .c-header-nav-link.c-active {
  color: #fff;
}
.c-dark-theme .c-header .c-header-toggler {
  color: rgba(255, 255, 255, 0.75);
  border-color: rgba(255, 255, 255, 0.1);
}
.c-dark-theme .c-header .c-header-toggler-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 0.75)' stroke-width='2.25' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}
.c-dark-theme .c-header .c-header-toggler-icon:hover {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 0.9)' stroke-width='2.25' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}
.c-dark-theme .c-header .c-header-text {
  color: rgba(255, 255, 255, 0.75);
}
.c-dark-theme .c-header .c-header-text a {
  color: #fff;
}
.c-dark-theme .c-header .c-header-text a:hover, .c-dark-theme .c-header .c-header-text a:focus {
  color: #fff;
}
.c-icon {
  display: inline-block;
  color: inherit;
  text-align: center;
  fill: currentColor;
}
.c-icon:not(.c-icon-c-s):not(.c-icon-custom-size) {
  width: 1rem;
  height: 1rem;
  font-size: 1rem;
}
.c-icon:not(.c-icon-c-s):not(.c-icon-custom-size).c-icon-2xl {
  width: 2rem;
  height: 2rem;
  font-size: 2rem;
}
.c-icon:not(.c-icon-c-s):not(.c-icon-custom-size).c-icon-3xl {
  width: 3rem;
  height: 3rem;
  font-size: 3rem;
}
.c-icon:not(.c-icon-c-s):not(.c-icon-custom-size).c-icon-4xl {
  width: 4rem;
  height: 4rem;
  font-size: 4rem;
}
.c-icon:not(.c-icon-c-s):not(.c-icon-custom-size).c-icon-5xl {
  width: 5rem;
  height: 5rem;
  font-size: 5rem;
}
.c-icon:not(.c-icon-c-s):not(.c-icon-custom-size).c-icon-6xl {
  width: 6rem;
  height: 6rem;
  font-size: 6rem;
}
.c-icon:not(.c-icon-c-s):not(.c-icon-custom-size).c-icon-7xl {
  width: 7rem;
  height: 7rem;
  font-size: 7rem;
}
.c-icon:not(.c-icon-c-s):not(.c-icon-custom-size).c-icon-8xl {
  width: 8rem;
  height: 8rem;
  font-size: 8rem;
}
.c-icon:not(.c-icon-c-s):not(.c-icon-custom-size).c-icon-9xl {
  width: 9rem;
  height: 9rem;
  font-size: 9rem;
}
.c-icon:not(.c-icon-c-s):not(.c-icon-custom-size).c-icon-xl {
  width: 1.5rem;
  height: 1.5rem;
  font-size: 1.5rem;
}
.c-icon:not(.c-icon-c-s):not(.c-icon-custom-size).c-icon-lg {
  width: 1.25rem;
  height: 1.25rem;
  font-size: 1.25rem;
}
.c-icon:not(.c-icon-c-s):not(.c-icon-custom-size).c-icon-sm {
  width: 0.875rem;
  height: 0.875rem;
  font-size: 0.875rem;
}
.input-group {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  width: 100%;
}
.input-group > .form-control,
.input-group > .form-control-plaintext,
.input-group > .custom-select,
.input-group > .custom-file {
  position: relative;
  flex: 1 1 auto;
  width: 1%;
  min-width: 0;
  margin-bottom: 0;
}
html:not([dir=rtl]) .input-group > .form-control + .form-control,
html:not([dir=rtl]) .input-group > .form-control + .custom-select,
html:not([dir=rtl]) .input-group > .form-control + .custom-file,
html:not([dir=rtl]) .input-group > .form-control-plaintext + .form-control,
html:not([dir=rtl]) .input-group > .form-control-plaintext + .custom-select,
html:not([dir=rtl]) .input-group > .form-control-plaintext + .custom-file,
html:not([dir=rtl]) .input-group > .custom-select + .form-control,
html:not([dir=rtl]) .input-group > .custom-select + .custom-select,
html:not([dir=rtl]) .input-group > .custom-select + .custom-file,
html:not([dir=rtl]) .input-group > .custom-file + .form-control,
html:not([dir=rtl]) .input-group > .custom-file + .custom-select,
html:not([dir=rtl]) .input-group > .custom-file + .custom-file {
  margin-left: -1px;
}
*[dir=rtl] .input-group > .form-control + .form-control,
*[dir=rtl] .input-group > .form-control + .custom-select,
*[dir=rtl] .input-group > .form-control + .custom-file,
*[dir=rtl] .input-group > .form-control-plaintext + .form-control,
*[dir=rtl] .input-group > .form-control-plaintext + .custom-select,
*[dir=rtl] .input-group > .form-control-plaintext + .custom-file,
*[dir=rtl] .input-group > .custom-select + .form-control,
*[dir=rtl] .input-group > .custom-select + .custom-select,
*[dir=rtl] .input-group > .custom-select + .custom-file,
*[dir=rtl] .input-group > .custom-file + .form-control,
*[dir=rtl] .input-group > .custom-file + .custom-select,
*[dir=rtl] .input-group > .custom-file + .custom-file {
  margin-right: -1px;
}
.input-group > .form-control:focus,
.input-group > .custom-select:focus,
.input-group > .custom-file .custom-file-input:focus ~ .custom-file-label {
  z-index: 3;
}
.input-group > .custom-file .custom-file-input:focus {
  z-index: 4;
}
html:not([dir=rtl]) .input-group > .form-control:not(:last-child),
html:not([dir=rtl]) .input-group > .custom-select:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
*[dir=rtl] .input-group > .form-control:not(:last-child),
*[dir=rtl] .input-group > .custom-select:not(:last-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
html:not([dir=rtl]) .input-group > .form-control:not(:first-child),
html:not([dir=rtl]) .input-group > .custom-select:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
*[dir=rtl] .input-group > .form-control:not(:first-child),
*[dir=rtl] .input-group > .custom-select:not(:first-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input-group > .custom-file {
  display: flex;
  align-items: center;
}
html:not([dir=rtl]) .input-group > .custom-file:not(:last-child) .custom-file-label, html:not([dir=rtl]) .input-group > .custom-file:not(:last-child) .custom-file-label::after {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
*[dir=rtl] .input-group > .custom-file:not(:last-child) .custom-file-label, *[dir=rtl] .input-group > .custom-file:not(:last-child) .custom-file-label::after {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
html:not([dir=rtl]) .input-group > .custom-file:not(:first-child) .custom-file-label {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
*[dir=rtl] .input-group > .custom-file:not(:first-child) .custom-file-label {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input-group-prepend,
.input-group-append {
  display: flex;
}
.input-group-prepend .btn,
.input-group-append .btn {
  position: relative;
  z-index: 2;
}
.input-group-prepend .btn:focus,
.input-group-append .btn:focus {
  z-index: 3;
}
html:not([dir=rtl]) .input-group-prepend .btn + .btn,
html:not([dir=rtl]) .input-group-prepend .btn + .input-group-text,
html:not([dir=rtl]) .input-group-prepend .input-group-text + .input-group-text,
html:not([dir=rtl]) .input-group-prepend .input-group-text + .btn,
html:not([dir=rtl]) .input-group-append .btn + .btn,
html:not([dir=rtl]) .input-group-append .btn + .input-group-text,
html:not([dir=rtl]) .input-group-append .input-group-text + .input-group-text,
html:not([dir=rtl]) .input-group-append .input-group-text + .btn {
  margin-left: -1px;
}
*[dir=rtl] .input-group-prepend .btn + .btn,
*[dir=rtl] .input-group-prepend .btn + .input-group-text,
*[dir=rtl] .input-group-prepend .input-group-text + .input-group-text,
*[dir=rtl] .input-group-prepend .input-group-text + .btn,
*[dir=rtl] .input-group-append .btn + .btn,
*[dir=rtl] .input-group-append .btn + .input-group-text,
*[dir=rtl] .input-group-append .input-group-text + .input-group-text,
*[dir=rtl] .input-group-append .input-group-text + .btn {
  margin-right: -1px;
}
.input-group-prepend {
  white-space: nowrap;
  vertical-align: middle;
}
html:not([dir=rtl]) .input-group-prepend {
  margin-right: -1px;
}
*[dir=rtl] .input-group-prepend {
  margin-left: -1px;
}
.input-group-append {
  white-space: nowrap;
  vertical-align: middle;
}
html:not([dir=rtl]) .input-group-append {
  margin-left: -1px;
}
*[dir=rtl] .input-group-append {
  margin-right: -1px;
}
.input-group-text {
  display: flex;
  align-items: center;
  padding: 0.375rem 0.75rem;
  margin-bottom: 0;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  text-align: center;
  white-space: nowrap;
  border: 1px solid;
  border-radius: 0.25rem;
  color: #5c6873;
  background-color: #f0f3f5;
  border-color: #e4e7ea;
}
.c-dark-theme .input-group-text {
  color: rgba(255, 255, 255, 0.87);
  background-color: rgba(255, 255, 255, 0.09);
  border-color: rgba(255, 255, 255, 0.09);
}
.input-group-text input[type=radio],
.input-group-text input[type=checkbox] {
  margin-top: 0;
}
.input-group-lg > .form-control:not(textarea),
.input-group-lg > .custom-select {
  height: calc(1.5em + 1rem + 2px);
}
.input-group-lg > .form-control,
.input-group-lg > .custom-select,
.input-group-lg > .input-group-prepend > .input-group-text,
.input-group-lg > .input-group-append > .input-group-text,
.input-group-lg > .input-group-prepend > .btn,
.input-group-lg > .input-group-append > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.09375rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}
.input-group-sm > .form-control:not(textarea),
.input-group-sm > .custom-select {
  height: calc(1.5em + 0.5rem + 2px);
}
.input-group-sm > .form-control,
.input-group-sm > .custom-select,
.input-group-sm > .input-group-prepend > .input-group-text,
.input-group-sm > .input-group-append > .input-group-text,
.input-group-sm > .input-group-prepend > .btn,
.input-group-sm > .input-group-append > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.765625rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}
html:not([dir=rtl]) .input-group-lg > .custom-select,
html:not([dir=rtl]) .input-group-sm > .custom-select {
  padding-right: 1.75rem;
}
*[dir=rtl] .input-group-lg > .custom-select,
*[dir=rtl] .input-group-sm > .custom-select {
  padding-left: 1.75rem;
}
html:not([dir=rtl]) .input-group > .input-group-prepend > .btn,
html:not([dir=rtl]) .input-group > .input-group-prepend > .input-group-text,
html:not([dir=rtl]) .input-group > .input-group-append:not(:last-child) > .btn,
html:not([dir=rtl]) .input-group > .input-group-append:not(:last-child) > .input-group-text,
html:not([dir=rtl]) .input-group > .input-group-append:last-child > .btn:not(:last-child):not(.dropdown-toggle),
html:not([dir=rtl]) .input-group > .input-group-append:last-child > .input-group-text:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
*[dir=rtl] .input-group > .input-group-prepend > .btn,
*[dir=rtl] .input-group > .input-group-prepend > .input-group-text,
*[dir=rtl] .input-group > .input-group-append:not(:last-child) > .btn,
*[dir=rtl] .input-group > .input-group-append:not(:last-child) > .input-group-text,
*[dir=rtl] .input-group > .input-group-append:last-child > .btn:not(:last-child):not(.dropdown-toggle),
*[dir=rtl] .input-group > .input-group-append:last-child > .input-group-text:not(:last-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
html:not([dir=rtl]) .input-group > .input-group-append > .btn,
html:not([dir=rtl]) .input-group > .input-group-append > .input-group-text,
html:not([dir=rtl]) .input-group > .input-group-prepend:not(:first-child) > .btn,
html:not([dir=rtl]) .input-group > .input-group-prepend:not(:first-child) > .input-group-text,
html:not([dir=rtl]) .input-group > .input-group-prepend:first-child > .btn:not(:first-child),
html:not([dir=rtl]) .input-group > .input-group-prepend:first-child > .input-group-text:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
*[dir=rtl] .input-group > .input-group-append > .btn,
*[dir=rtl] .input-group > .input-group-append > .input-group-text,
*[dir=rtl] .input-group > .input-group-prepend:not(:first-child) > .btn,
*[dir=rtl] .input-group > .input-group-prepend:not(:first-child) > .input-group-text,
*[dir=rtl] .input-group > .input-group-prepend:first-child > .btn:not(:first-child),
*[dir=rtl] .input-group > .input-group-prepend:first-child > .input-group-text:not(:first-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.img-fluid {
  max-width: 100%;
  height: auto;
}
.img-thumbnail {
  padding: 0.25rem;
  background-color: #ebedef;
  border: 1px solid #c4c9d0;
  border-radius: 0.25rem;
  max-width: 100%;
  height: auto;
}
.figure {
  display: inline-block;
}
.figure-img {
  margin-bottom: 0.5rem;
  line-height: 1;
}
.figure-caption {
  font-size: 90%;
  color: #8a93a2;
}
.jumbotron {
  padding: 2rem 1rem;
  margin-bottom: 2rem;
  border-radius: 0.3rem;
  background-color: #d8dbe0;
}
.c-legacy-theme .jumbotron {
  background-color: #e4e7ea;
}
.c-dark-theme .jumbotron {
  background-color: rgba(255, 255, 255, 0.1);
}
@media (min-width: 576px) {
  .jumbotron {
    padding: 4rem 2rem;
  }
}
.jumbotron-fluid {
  padding-right: 0;
  padding-left: 0;
  border-radius: 0;
}
.list-group {
  display: flex;
  flex-direction: column;
  margin-bottom: 0;
  border-radius: 0.25rem;
}
html:not([dir=rtl]) .list-group {
  padding-left: 0;
}
*[dir=rtl] .list-group {
  padding-right: 0;
}
.list-group-item-action {
  width: 100%;
  text-align: inherit;
  color: #768192;
}
.c-legacy-theme .list-group-item-action {
  color: #5c6873;
}
.c-dark-theme .list-group-item-action {
  color: rgba(255, 255, 255, 0.87);
}
.list-group-item-action:hover, .list-group-item-action:focus {
  z-index: 1;
  text-decoration: none;
  color: #768192;
  background-color: #ebedef;
}
.c-legacy-theme .list-group-item-action:hover, .c-legacy-theme .list-group-item-action:focus {
  color: #5c6873;
  background-color: #f0f3f5;
}
.c-dark-theme .list-group-item-action:hover, .c-dark-theme .list-group-item-action:focus {
  color: rgba(255, 255, 255, 0.87);
  background-color: rgba(255, 255, 255, 0.1);
}
.list-group-item-action:active {
  color: #3c4b64;
  background-color: #d8dbe0;
}
.c-legacy-theme .list-group-item-action:active {
  color: #23282c;
  background-color: #e4e7ea;
}
.c-dark-theme .list-group-item-action:active {
  color: rgba(255, 255, 255, 0.87);
  background-color: #4f5d73;
}
.list-group-item {
  position: relative;
  display: block;
  padding: 0.75rem 1.25rem;
  border: 1px solid;
  background-color: inherit;
  border-color: rgba(0, 0, 21, 0.125);
}
.c-legacy-theme .list-group-item {
  background-color: inherit;
  border-color: rgba(0, 0, 0, 0.125);
}
.c-dark-theme .list-group-item {
  color: rgba(255, 255, 255, 0.87);
  background-color: inherit;
  border-color: rgba(255, 255, 255, 0.075);
}
.list-group-item:first-child {
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
}
.list-group-item:last-child {
  border-bottom-right-radius: inherit;
  border-bottom-left-radius: inherit;
}
.list-group-item.disabled, .list-group-item:disabled {
  pointer-events: none;
  color: #8a93a2;
  background-color: inherit;
}
.c-legacy-theme .list-group-item.disabled, .c-legacy-theme .list-group-item:disabled {
  color: #73818f;
  background-color: inherit;
}
.c-dark-theme .list-group-item.disabled, .c-dark-theme .list-group-item:disabled {
  color: rgba(255, 255, 255, 0.5);
  background-color: rgba(255, 255, 255, 0.8);
}
.list-group-item.active {
  z-index: 2;
  color: #fff;
  background-color: #321fdb;
  border-color: #321fdb;
}
.c-legacy-theme .list-group-item.active {
  color: #fff;
  background-color: #20a8d8;
  border-color: #20a8d8;
}
.c-dark-theme .list-group-item.active {
  color: #fff;
  background-color: #4638c2;
  border-color: #4638c2;
}
.list-group-item + .list-group-item {
  border-top-width: 0;
}
.list-group-item + .list-group-item.active {
  margin-top: -1px;
  border-top-width: 1px;
}
.list-group-horizontal {
  flex-direction: row;
}
.list-group-horizontal .list-group-item:first-child {
  border-bottom-left-radius: 0.25rem;
  border-top-right-radius: 0;
}
.list-group-horizontal .list-group-item:last-child {
  border-top-right-radius: 0.25rem;
  border-bottom-left-radius: 0;
}
.list-group-horizontal .list-group-item.active {
  margin-top: 0;
}
.list-group-horizontal .list-group-item + .list-group-item {
  border-top-width: 1px;
  border-left-width: 0;
}
.list-group-horizontal .list-group-item + .list-group-item.active {
  margin-left: -1px;
  border-left-width: 1px;
}
@media (min-width: 576px) {
  .list-group-horizontal-sm {
    flex-direction: row;
  }
  .list-group-horizontal-sm .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-sm .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-sm .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-sm .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-sm .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}
@media (min-width: 768px) {
  .list-group-horizontal-md {
    flex-direction: row;
  }
  .list-group-horizontal-md .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-md .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-md .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-md .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-md .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}
@media (min-width: 992px) {
  .list-group-horizontal-lg {
    flex-direction: row;
  }
  .list-group-horizontal-lg .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-lg .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-lg .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-lg .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-lg .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}
@media (min-width: 1200px) {
  .list-group-horizontal-xl {
    flex-direction: row;
  }
  .list-group-horizontal-xl .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-xl .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-xl .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-xl .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-xl .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}
@media (min-width: 1400px) {
  .list-group-horizontal-xxl {
    flex-direction: row;
  }
  .list-group-horizontal-xxl .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-xxl .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-xxl .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-xxl .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-xxl .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}
.list-group-flush {
  border-radius: 0;
}
.list-group-flush > .list-group-item {
  border-width: 0 0 1px;
}
.list-group-flush > .list-group-item:last-child {
  border-bottom-width: 0;
}
.list-group-item-primary {
  color: #1a107c;
  background-color: #c6c0f5;
}
.list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus {
  color: #1a107c;
  background-color: #b2aaf2;
}
.list-group-item-primary.list-group-item-action.active {
  color: #fff;
  background-color: #1a107c;
  border-color: #1a107c;
}
.list-group-item-secondary {
  color: #6b6d7a;
  background-color: #f1f2f4;
}
.list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus {
  color: #6b6d7a;
  background-color: #e3e5e9;
}
.list-group-item-secondary.list-group-item-action.active {
  color: #fff;
  background-color: #6b6d7a;
  border-color: #6b6d7a;
}
.list-group-item-success {
  color: #18603a;
  background-color: #c4ebd1;
}
.list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus {
  color: #18603a;
  background-color: #b1e5c2;
}
.list-group-item-success.list-group-item-action.active {
  color: #fff;
  background-color: #18603a;
  border-color: #18603a;
}
.list-group-item-info {
  color: #1b508f;
  background-color: #c6e2ff;
}
.list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus {
  color: #1b508f;
  background-color: #add5ff;
}
.list-group-item-info.list-group-item-action.active {
  color: #fff;
  background-color: #1b508f;
  border-color: #1b508f;
}
.list-group-item-warning {
  color: #815c15;
  background-color: #fde9bd;
}
.list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus {
  color: #815c15;
  background-color: #fce1a4;
}
.list-group-item-warning.list-group-item-action.active {
  color: #fff;
  background-color: #815c15;
  border-color: #815c15;
}
.list-group-item-danger {
  color: #772b35;
  background-color: #f8cfcf;
}
.list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus {
  color: #772b35;
  background-color: #f5b9b9;
}
.list-group-item-danger.list-group-item-action.active {
  color: #fff;
  background-color: #772b35;
  border-color: #772b35;
}
.list-group-item-light {
  color: #7a7b86;
  background-color: #f9fafb;
}
.list-group-item-light.list-group-item-action:hover, .list-group-item-light.list-group-item-action:focus {
  color: #7a7b86;
  background-color: #eaedf1;
}
.list-group-item-light.list-group-item-action.active {
  color: #fff;
  background-color: #7a7b86;
  border-color: #7a7b86;
}
.list-group-item-dark {
  color: #333a4e;
  background-color: #d3d7dc;
}
.list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus {
  color: #333a4e;
  background-color: #c5cad1;
}
.list-group-item-dark.list-group-item-action.active {
  color: #fff;
  background-color: #333a4e;
  border-color: #333a4e;
}
.c-dark-theme .list-group-item-primary {
  color: #241d6f;
  background-color: #cbc7ee;
}
.c-dark-theme .list-group-item-primary.list-group-item-action:hover, .c-dark-theme .list-group-item-primary.list-group-item-action:focus {
  color: #241d6f;
  background-color: #b9b3e8;
}
.c-dark-theme .list-group-item-primary.list-group-item-action.active {
  color: #fff;
  background-color: #241d6f;
  border-color: #241d6f;
}
.c-dark-theme .list-group-item-secondary {
  color: #282936;
  background-color: #cdcecf;
}
.c-dark-theme .list-group-item-secondary.list-group-item-action:hover, .c-dark-theme .list-group-item-secondary.list-group-item-action:focus {
  color: #282936;
  background-color: #c0c1c3;
}
.c-dark-theme .list-group-item-secondary.list-group-item-action.active {
  color: #fff;
  background-color: #282936;
  border-color: #282936;
}
.c-dark-theme .list-group-item-success {
  color: #24543e;
  background-color: #cbe5d4;
}
.c-dark-theme .list-group-item-success.list-group-item-action:hover, .c-dark-theme .list-group-item-success.list-group-item-action:focus {
  color: #24543e;
  background-color: #baddc6;
}
.c-dark-theme .list-group-item-success.list-group-item-action.active {
  color: #fff;
  background-color: #24543e;
  border-color: #24543e;
}
.c-dark-theme .list-group-item-info {
  color: #255084;
  background-color: #cbe2f9;
}
.c-dark-theme .list-group-item-info.list-group-item-action:hover, .c-dark-theme .list-group-item-info.list-group-item-action:focus {
  color: #255084;
  background-color: #b4d5f6;
}
.c-dark-theme .list-group-item-info.list-group-item-action.active {
  color: #fff;
  background-color: #255084;
  border-color: #255084;
}
.c-dark-theme .list-group-item-warning {
  color: #755721;
  background-color: #f7e7c4;
}
.c-dark-theme .list-group-item-warning.list-group-item-action:hover, .c-dark-theme .list-group-item-warning.list-group-item-action:focus {
  color: #755721;
  background-color: #f4deae;
}
.c-dark-theme .list-group-item-warning.list-group-item-action.active {
  color: #fff;
  background-color: #755721;
  border-color: #755721;
}
.c-dark-theme .list-group-item-danger {
  color: #6d3640;
  background-color: #f2d4d4;
}
.c-dark-theme .list-group-item-danger.list-group-item-action:hover, .c-dark-theme .list-group-item-danger.list-group-item-action:focus {
  color: #6d3640;
  background-color: #ecc0c0;
}
.c-dark-theme .list-group-item-danger.list-group-item-action.active {
  color: #fff;
  background-color: #6d3640;
  border-color: #6d3640;
}
.c-dark-theme .list-group-item-light {
  color: #38394c;
  background-color: #d6d6db;
}
.c-dark-theme .list-group-item-light.list-group-item-action:hover, .c-dark-theme .list-group-item-light.list-group-item-action:focus {
  color: #38394c;
  background-color: #c8c8cf;
}
.c-dark-theme .list-group-item-light.list-group-item-action.active {
  color: #fff;
  background-color: #38394c;
  border-color: #38394c;
}
.c-dark-theme .list-group-item-dark {
  color: #070715;
  background-color: #bcbcbd;
}
.c-dark-theme .list-group-item-dark.list-group-item-action:hover, .c-dark-theme .list-group-item-dark.list-group-item-action:focus {
  color: #070715;
  background-color: #afafb0;
}
.c-dark-theme .list-group-item-dark.list-group-item-action.active {
  color: #fff;
  background-color: #070715;
  border-color: #070715;
}
.c-legacy-theme .list-group-item-primary {
  color: #11577a;
  background-color: #c1e7f4;
}
.c-legacy-theme .list-group-item-primary.list-group-item-action:hover, .c-legacy-theme .list-group-item-primary.list-group-item-action:focus {
  color: #11577a;
  background-color: #abdff0;
}
.c-legacy-theme .list-group-item-primary.list-group-item-action.active {
  color: #fff;
  background-color: #11577a;
  border-color: #11577a;
}
.c-legacy-theme .list-group-item-secondary {
  color: #686b78;
  background-color: #f0f1f3;
}
.c-legacy-theme .list-group-item-secondary.list-group-item-action:hover, .c-legacy-theme .list-group-item-secondary.list-group-item-action:focus {
  color: #686b78;
  background-color: #e2e4e8;
}
.c-legacy-theme .list-group-item-secondary.list-group-item-action.active {
  color: #fff;
  background-color: #686b78;
  border-color: #686b78;
}
.c-legacy-theme .list-group-item-success {
  color: #286246;
  background-color: #cdedd8;
}
.c-legacy-theme .list-group-item-success.list-group-item-action:hover, .c-legacy-theme .list-group-item-success.list-group-item-action:focus {
  color: #286246;
  background-color: #bae6c9;
}
.c-legacy-theme .list-group-item-success.list-group-item-action.active {
  color: #fff;
  background-color: #286246;
  border-color: #286246;
}
.c-legacy-theme .list-group-item-info {
  color: #33657e;
  background-color: #d3eef6;
}
.c-legacy-theme .list-group-item-info.list-group-item-action:hover, .c-legacy-theme .list-group-item-info.list-group-item-action:focus {
  color: #33657e;
  background-color: #bee6f2;
}
.c-legacy-theme .list-group-item-info.list-group-item-action.active {
  color: #fff;
  background-color: #33657e;
  border-color: #33657e;
}
.c-legacy-theme .list-group-item-warning {
  color: #85640e;
  background-color: #ffeeba;
}
.c-legacy-theme .list-group-item-warning.list-group-item-action:hover, .c-legacy-theme .list-group-item-warning.list-group-item-action:focus {
  color: #85640e;
  background-color: #ffe8a1;
}
.c-legacy-theme .list-group-item-warning.list-group-item-action.active {
  color: #fff;
  background-color: #85640e;
  border-color: #85640e;
}
.c-legacy-theme .list-group-item-danger {
  color: #813842;
  background-color: #fdd6d6;
}
.c-legacy-theme .list-group-item-danger.list-group-item-action:hover, .c-legacy-theme .list-group-item-danger.list-group-item-action:focus {
  color: #813842;
  background-color: #fcbebe;
}
.c-legacy-theme .list-group-item-danger.list-group-item-action.active {
  color: #fff;
  background-color: #813842;
  border-color: #813842;
}
.c-legacy-theme .list-group-item-light {
  color: #7d7e89;
  background-color: #fbfcfc;
}
.c-legacy-theme .list-group-item-light.list-group-item-action:hover, .c-legacy-theme .list-group-item-light.list-group-item-action:focus {
  color: #7d7e89;
  background-color: #ecf1f1;
}
.c-legacy-theme .list-group-item-light.list-group-item-action.active {
  color: #fff;
  background-color: #7d7e89;
  border-color: #7d7e89;
}
.c-legacy-theme .list-group-item-dark {
  color: #181c28;
  background-color: #c5c6c8;
}
.c-legacy-theme .list-group-item-dark.list-group-item-action:hover, .c-legacy-theme .list-group-item-dark.list-group-item-action:focus {
  color: #181c28;
  background-color: #b8b9bc;
}
.c-legacy-theme .list-group-item-dark.list-group-item-action.active {
  color: #fff;
  background-color: #181c28;
  border-color: #181c28;
}
.list-group-accent .list-group-item {
  margin-bottom: 1px;
  border-top: 0;
  border-right: 0;
  border-bottom: 0;
  border-radius: 0;
}
.list-group-accent .list-group-item.list-group-item-divider {
  position: relative;
}
.list-group-accent .list-group-item.list-group-item-divider::before {
  position: absolute;
  bottom: -1px;
  width: 90%;
  height: 1px;
  content: "";
  background-color: rgba(0, 0, 21, 0.125);
}
html:not([dir=rtl]) .list-group-accent .list-group-item.list-group-item-divider::before {
  left: 5%;
}
*[dir=rtl] .list-group-accent .list-group-item.list-group-item-divider::before {
  right: 5%;
}
.c-legacy-theme .list-group-accent .list-group-item.list-group-item-divider::before {
  background-color: rgba(0, 0, 0, 0.125);
}
.c-dark-theme .list-group-accent .list-group-item.list-group-item-divider::before {
  background-color: rgba(255, 255, 255, 0.075);
}
.list-group-accent .list-group-item-accent-primary {
  border-left: 4px solid #321fdb;
}
.list-group-accent .list-group-item-accent-secondary {
  border-left: 4px solid #ced2d8;
}
.list-group-accent .list-group-item-accent-success {
  border-left: 4px solid #2eb85c;
}
.list-group-accent .list-group-item-accent-info {
  border-left: 4px solid #39f;
}
.list-group-accent .list-group-item-accent-warning {
  border-left: 4px solid #f9b115;
}
.list-group-accent .list-group-item-accent-danger {
  border-left: 4px solid #e55353;
}
.list-group-accent .list-group-item-accent-light {
  border-left: 4px solid #ebedef;
}
.list-group-accent .list-group-item-accent-dark {
  border-left: 4px solid #636f83;
}
.c-dark-theme .list-group-item-accent-primary {
  border-left: 4px solid #4638c2;
}
.c-dark-theme .list-group-item-accent-secondary {
  border-left: 4px solid #4c4f54;
}
.c-dark-theme .list-group-item-accent-success {
  border-left: 4px solid #45a164;
}
.c-dark-theme .list-group-item-accent-info {
  border-left: 4px solid #4799eb;
}
.c-dark-theme .list-group-item-accent-warning {
  border-left: 4px solid #e1a82d;
}
.c-dark-theme .list-group-item-accent-danger {
  border-left: 4px solid #d16767;
}
.c-dark-theme .list-group-item-accent-light {
  border-left: 4px solid #6c6e7e;
}
.c-dark-theme .list-group-item-accent-dark {
  border-left: 4px solid #0e0e15;
}
.c-legacy-theme .list-group-item-accent-primary {
  border-left: 4px solid #20a8d8;
}
.c-legacy-theme .list-group-item-accent-secondary {
  border-left: 4px solid #c8ced3;
}
.c-legacy-theme .list-group-item-accent-success {
  border-left: 4px solid #4dbd74;
}
.c-legacy-theme .list-group-item-accent-info {
  border-left: 4px solid #63c2de;
}
.c-legacy-theme .list-group-item-accent-warning {
  border-left: 4px solid #ffc107;
}
.c-legacy-theme .list-group-item-accent-danger {
  border-left: 4px solid #f86c6b;
}
.c-legacy-theme .list-group-item-accent-light {
  border-left: 4px solid #f0f3f5;
}
.c-legacy-theme .list-group-item-accent-dark {
  border-left: 4px solid #2f353a;
}
.media {
  display: flex;
  align-items: flex-start;
}
.media-body {
  flex: 1;
}
.modal-open {
  overflow: hidden;
}
.modal-open .modal {
  overflow-x: hidden;
  overflow-y: auto;
}
.modal {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1050;
  display: none;
  width: 100%;
  height: 100%;
  overflow: hidden;
  outline: 0;
}
.modal-dialog {
  position: relative;
  width: auto;
  margin: 0.5rem;
  pointer-events: none;
}
.modal.fade .modal-dialog {
  transition: transform 0.3s ease-out;
  transform: translate(0, -50px);
}
@media (prefers-reduced-motion: reduce) {
  .modal.fade .modal-dialog {
    transition: none;
  }
}
.modal.show .modal-dialog {
  transform: none;
}
.modal.modal-static .modal-dialog {
  transform: scale(1.02);
}
.modal-dialog-scrollable {
  display: flex;
  max-height: calc(100% - 1rem);
}
.modal-dialog-scrollable .modal-content {
  max-height: calc(100vh - 1rem);
  overflow: hidden;
}
.modal-dialog-scrollable .modal-header,
.modal-dialog-scrollable .modal-footer {
  flex-shrink: 0;
}
.modal-dialog-scrollable .modal-body {
  overflow-y: auto;
}
.modal-dialog-centered {
  display: flex;
  align-items: center;
  min-height: calc(100% - 1rem);
}
.modal-dialog-centered::before {
  display: block;
  height: calc(100vh - 1rem);
  height: -webkit-min-content;
  height: -moz-min-content;
  height: min-content;
  content: "";
}
.modal-dialog-centered.modal-dialog-scrollable {
  flex-direction: column;
  justify-content: center;
  height: 100%;
}
.modal-dialog-centered.modal-dialog-scrollable .modal-content {
  max-height: none;
}
.modal-dialog-centered.modal-dialog-scrollable::before {
  content: none;
}
.modal-content {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  pointer-events: auto;
  background-clip: padding-box;
  border: 1px solid;
  border-radius: 0.3rem;
  outline: 0;
  background-color: #fff;
  border-color: rgba(0, 0, 21, 0.2);
}
.c-legacy-theme .modal-content {
  background-color: #fff;
  border-color: rgba(0, 0, 0, 0.2);
}
.c-dark-theme .modal-content {
  background-color: #3d3e47;
  border-color: rgba(0, 0, 0, 0.2);
}
.c-app:not(.c-legacy-theme) .modal-content {
  border: 0;
  box-shadow: 0 24px 38px 3px rgba(var(--elevation-base-color), .14), 0 9px 46px 8px rgba(var(--elevation-base-color), .12), 0 11px 15px -7px rgba(var(--elevation-base-color), .20);
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .modal-content {
    box-shadow: 0 24px 38px 3px rgba(60, 75, 100, .14), 0 9px 46px 8px rgba(60, 75, 100, .12), 0 11px 15px -7px rgba(60, 75, 100, .20);
  }
}
.modal-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1040;
  width: 100vw;
  height: 100vh;
  background-color: #000015;
}
.modal-backdrop.fade {
  opacity: 0;
}
.modal-backdrop.show {
  opacity: 0.5;
}
.modal-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: 1rem 1rem;
  border-bottom: 1px solid;
  border-top-left-radius: calc(0.3rem - 1px);
  border-top-right-radius: calc(0.3rem - 1px);
  border-color: #d8dbe0;
}
.c-legacy-theme .modal-header {
  border-color: #c8ced3;
}
.c-dark-theme .modal-header {
  border-color: rgba(0, 0, 0, 0.2);
}
.modal-header .close {
  padding: 1rem 1rem;
}
html:not([dir=rtl]) .modal-header .close {
  margin: -1rem -1rem -1rem auto;
}
*[dir=rtl] .modal-header .close {
  margin: -1rem auto -1rem -1rem;
}
.modal-title {
  margin-bottom: 0;
  line-height: 1.5;
}
.modal-body {
  position: relative;
  flex: 1 1 auto;
  padding: 1rem;
}
.modal-footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  padding: 0.75rem;
  border-top: 1px solid;
  border-bottom-right-radius: calc(0.3rem - 1px);
  border-bottom-left-radius: calc(0.3rem - 1px);
  border-color: #d8dbe0;
}
.c-legacy-theme .modal-footer {
  border-color: #c8ced3;
}
.c-dark-theme .modal-footer {
  border-color: rgba(0, 0, 0, 0.2);
}
.modal-footer > * {
  margin: 0.25rem;
}
.modal-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll;
}
@media (min-width: 576px) {
  .modal-dialog {
    max-width: 500px;
    margin: 1.75rem auto;
  }

  .modal-dialog-scrollable {
    max-height: calc(100% - 3.5rem);
  }
  .modal-dialog-scrollable .modal-content {
    max-height: calc(100vh - 3.5rem);
  }

  .modal-dialog-centered {
    min-height: calc(100% - 3.5rem);
  }
  .modal-dialog-centered::before {
    height: calc(100vh - 3.5rem);
    height: -webkit-min-content;
    height: -moz-min-content;
    height: min-content;
  }

  .modal-sm {
    max-width: 300px;
  }
}
@media (min-width: 992px) {
  .modal-lg,
.modal-xl {
    max-width: 800px;
  }
}
@media (min-width: 1200px) {
  .modal-xl {
    max-width: 1140px;
  }
}
.modal-primary .modal-content {
  border-color: #321fdb;
}
.modal-primary .modal-header {
  color: #fff;
  background-color: #321fdb;
}
.modal-secondary .modal-content {
  border-color: #ced2d8;
}
.modal-secondary .modal-header {
  color: #fff;
  background-color: #ced2d8;
}
.modal-success .modal-content {
  border-color: #2eb85c;
}
.modal-success .modal-header {
  color: #fff;
  background-color: #2eb85c;
}
.modal-info .modal-content {
  border-color: #39f;
}
.modal-info .modal-header {
  color: #fff;
  background-color: #39f;
}
.modal-warning .modal-content {
  border-color: #f9b115;
}
.modal-warning .modal-header {
  color: #fff;
  background-color: #f9b115;
}
.modal-danger .modal-content {
  border-color: #e55353;
}
.modal-danger .modal-header {
  color: #fff;
  background-color: #e55353;
}
.modal-light .modal-content {
  border-color: #ebedef;
}
.modal-light .modal-header {
  color: #fff;
  background-color: #ebedef;
}
.modal-dark .modal-content {
  border-color: #636f83;
}
.modal-dark .modal-header {
  color: #fff;
  background-color: #636f83;
}
.c-dark-theme .modal-primary .modal-content {
  border-color: #4638c2;
}
.c-dark-theme .modal-primary .modal-header {
  color: #fff;
  background-color: #4638c2;
}
.c-dark-theme .modal-secondary .modal-content {
  border-color: #4c4f54;
}
.c-dark-theme .modal-secondary .modal-header {
  color: #fff;
  background-color: #4c4f54;
}
.c-dark-theme .modal-success .modal-content {
  border-color: #45a164;
}
.c-dark-theme .modal-success .modal-header {
  color: #fff;
  background-color: #45a164;
}
.c-dark-theme .modal-info .modal-content {
  border-color: #4799eb;
}
.c-dark-theme .modal-info .modal-header {
  color: #fff;
  background-color: #4799eb;
}
.c-dark-theme .modal-warning .modal-content {
  border-color: #e1a82d;
}
.c-dark-theme .modal-warning .modal-header {
  color: #fff;
  background-color: #e1a82d;
}
.c-dark-theme .modal-danger .modal-content {
  border-color: #d16767;
}
.c-dark-theme .modal-danger .modal-header {
  color: #fff;
  background-color: #d16767;
}
.c-dark-theme .modal-light .modal-content {
  border-color: #6c6e7e;
}
.c-dark-theme .modal-light .modal-header {
  color: #fff;
  background-color: #6c6e7e;
}
.c-dark-theme .modal-dark .modal-content {
  border-color: #0e0e15;
}
.c-dark-theme .modal-dark .modal-header {
  color: #fff;
  background-color: #0e0e15;
}
.c-legacy-theme .modal-primary .modal-content {
  border-color: #20a8d8;
}
.c-legacy-theme .modal-primary .modal-header {
  color: #fff;
  background-color: #20a8d8;
}
.c-legacy-theme .modal-secondary .modal-content {
  border-color: #c8ced3;
}
.c-legacy-theme .modal-secondary .modal-header {
  color: #fff;
  background-color: #c8ced3;
}
.c-legacy-theme .modal-success .modal-content {
  border-color: #4dbd74;
}
.c-legacy-theme .modal-success .modal-header {
  color: #fff;
  background-color: #4dbd74;
}
.c-legacy-theme .modal-info .modal-content {
  border-color: #63c2de;
}
.c-legacy-theme .modal-info .modal-header {
  color: #fff;
  background-color: #63c2de;
}
.c-legacy-theme .modal-warning .modal-content {
  border-color: #ffc107;
}
.c-legacy-theme .modal-warning .modal-header {
  color: #fff;
  background-color: #ffc107;
}
.c-legacy-theme .modal-danger .modal-content {
  border-color: #f86c6b;
}
.c-legacy-theme .modal-danger .modal-header {
  color: #fff;
  background-color: #f86c6b;
}
.c-legacy-theme .modal-light .modal-content {
  border-color: #f0f3f5;
}
.c-legacy-theme .modal-light .modal-header {
  color: #fff;
  background-color: #f0f3f5;
}
.c-legacy-theme .modal-dark .modal-content {
  border-color: #2f353a;
}
.c-legacy-theme .modal-dark .modal-header {
  color: #fff;
  background-color: #2f353a;
}
.nav {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 0;
  list-style: none;
}
html:not([dir=rtl]) .nav {
  padding-left: 0;
}
*[dir=rtl] .nav {
  padding-right: 0;
}
.nav-link {
  display: block;
  padding: 0.5rem 1rem;
}
.nav-link:hover, .nav-link:focus {
  text-decoration: none;
}
.nav-link.disabled {
  color: #8a93a2;
  pointer-events: none;
  cursor: default;
  color: #8a93a2;
}
.c-legacy-theme .nav-link.disabled {
  color: #73818f;
}
.c-dark-theme .nav-link.disabled {
  color: rgba(255, 255, 255, 0.38);
}
.nav-tabs {
  border-bottom: 1px solid;
  border-color: #c4c9d0;
}
.c-legacy-theme .nav-tabs {
  border-color: #c8ced3;
}
.c-dark-theme .nav-tabs {
  border-color: rgba(255, 255, 255, 0.075);
}
.nav-tabs .nav-item {
  margin-bottom: -1px;
}
.nav-tabs .nav-link {
  border: 1px solid transparent;
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}
.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
  border-color: #d8dbe0 #d8dbe0 #c4c9d0;
}
.c-legacy-theme .nav-tabs .nav-link:hover, .c-legacy-theme .nav-tabs .nav-link:focus {
  border-color: #e4e7ea #e4e7ea #c8ced3;
}
.c-dark-theme .nav-tabs .nav-link:hover, .c-dark-theme .nav-tabs .nav-link:focus {
  border-color: rgba(255, 255, 255, 0.075) rgba(255, 255, 255, 0.075) rgba(255, 255, 255, 0.075);
}
.nav-tabs .nav-link.disabled {
  background-color: transparent;
  border-color: transparent;
  color: #8a93a2;
}
.c-legacy-theme .nav-tabs .nav-link.disabled {
  color: #73818f;
}
.c-dark-theme .nav-tabs .nav-link.disabled {
  color: rgba(255, 255, 255, 0.38);
}
.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  color: #768192;
  background-color: #ebedef;
  border-color: #c4c9d0 #c4c9d0 #ebedef;
}
.c-legacy-theme .nav-tabs .nav-link.active,
.c-legacy-theme .nav-tabs .nav-item.show .nav-link {
  color: #5c6873;
  background-color: #e4e5e6;
  border-color: #c8ced3 #c8ced3 #e4e5e6;
}
.c-dark-theme .nav-tabs .nav-link.active,
.c-dark-theme .nav-tabs .nav-item.show .nav-link {
  color: rgba(255, 255, 255, 0.87);
  background-color: rgba(255, 255, 255, 0.075);
  border-color: transparent;
}
.nav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.nav-tabs-boxed .nav-tabs {
  border: 0;
}
.nav-tabs-boxed .nav-tabs .nav-link.active {
  background-color: #fff;
  border-bottom-color: #fff;
}
.c-legacy-theme .nav-tabs-boxed .nav-tabs .nav-link.active {
  background-color: #fff;
  border-bottom-color: #fff;
}
.c-dark-theme .nav-tabs-boxed .nav-tabs .nav-link.active {
  background-color: #282933;
  border-bottom-color: #282933;
}
.nav-tabs-boxed .tab-content {
  padding: 0.75rem 1.25rem;
  border: 1px solid;
  border-radius: 0 0.25rem 0.25rem 0.25rem;
  color: #768192;
  background-color: #fff;
  border-color: #d8dbe0;
}
.c-legacy-theme .nav-tabs-boxed .tab-content {
  color: #5c6873;
  background-color: #fff;
  border-color: #c8ced3;
}
.c-dark-theme .nav-tabs-boxed .tab-content {
  color: rgba(255, 255, 255, 0.87);
  background-color: #282933;
  border-color: #282933;
}
.nav-tabs-boxed.nav-tabs-boxed-top-right .nav-tabs {
  justify-content: flex-end;
}
.nav-tabs-boxed.nav-tabs-boxed-top-right .tab-content {
  border-radius: 0.25rem 0 0.25rem 0.25rem;
}
.nav-tabs-boxed.nav-tabs-boxed-left, .nav-tabs-boxed.nav-tabs-boxed-right {
  display: flex;
}
.nav-tabs-boxed.nav-tabs-boxed-left .nav-item, .nav-tabs-boxed.nav-tabs-boxed-right .nav-item {
  z-index: 1;
  flex-grow: 1;
  margin-bottom: 0;
}
*[dir=rtl] .nav-tabs-boxed.nav-tabs-boxed-left {
  flex-direction: row-reverse;
}
.nav-tabs-boxed.nav-tabs-boxed-left .nav-item {
  margin-right: -1px;
}
.nav-tabs-boxed.nav-tabs-boxed-left .nav-link {
  border-radius: 0.25rem 0 0 0.25rem;
}
.nav-tabs-boxed.nav-tabs-boxed-left .nav-link.active {
  border-color: #d8dbe0 #fff #d8dbe0 #d8dbe0;
}
.c-legacy-theme .nav-tabs-boxed.nav-tabs-boxed-left .nav-link.active {
  border-color: #c8ced3 #fff #c8ced3 #c8ced3;
}
.c-dark-theme .nav-tabs-boxed.nav-tabs-boxed-left .nav-link.active {
  border-color: rgba(255, 255, 255, 0.075);
}
html:not([dir=rtl]) .nav-tabs-boxed.nav-tabs-boxed-right {
  flex-direction: row-reverse;
}
*[dir=rtl] .nav-tabs-boxed.nav-tabs-boxed-right {
  flex-direction: row;
}
html:not([dir=rtl]) .nav-tabs-boxed.nav-tabs-boxed-right .nav-item {
  margin-left: -1px;
}
*[dir=rtl] .nav-tabs-boxed.nav-tabs-boxed-right .nav-item {
  margin-right: -1px;
}
.nav-tabs-boxed.nav-tabs-boxed-right .nav-link {
  border-radius: 0 0.25rem 0.25rem 0;
}
.nav-tabs-boxed.nav-tabs-boxed-right .nav-link.active {
  border-color: #d8dbe0 #d8dbe0 #d8dbe0 #fff;
}
.c-legacy-theme .nav-tabs-boxed.nav-tabs-boxed-right .nav-link.active {
  border-color: #c8ced3 #c8ced3 #c8ced3 #fff;
}
.c-dark-theme .nav-tabs-boxed.nav-tabs-boxed-right .nav-link.active {
  border-color: #282933 #282933 #282933 #282933;
}
.nav-tabs-boxed.nav-tabs-boxed-right .tab-content {
  border-radius: 0.25rem 0 0.25rem 0.25rem;
}
.nav-pills .nav-link {
  border-radius: 0.25rem;
}
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  color: #fff;
  background-color: #321fdb;
}
.c-legacy-theme .nav-pills .nav-link.active,
.c-legacy-theme .nav-pills .show > .nav-link {
  color: #fff;
  background-color: #20a8d8;
}
.c-dark-theme .nav-pills .nav-link.active,
.c-dark-theme .nav-pills .show > .nav-link {
  color: #fff;
  background-color: #4638c2;
}
.nav-underline {
  border-bottom: 2px solid;
  border-color: #c4c9d0;
}
.c-legacy-theme .nav-underline {
  border-color: #c8ced3;
}
.c-dark-theme .nav-underline {
  border-color: rgba(255, 255, 255, 0.075);
}
.nav-underline .nav-item {
  margin-bottom: -2px;
}
.nav-underline .nav-link {
  border: 0;
  border-bottom: 2px solid transparent;
}
.nav-underline .nav-link.active,
.nav-underline .show > .nav-link {
  background: transparent;
}
.nav-underline-primary .nav-link.active,
.nav-underline-primary .show > .nav-link {
  color: #321fdb;
  border-color: #321fdb;
}
.nav-underline-secondary .nav-link.active,
.nav-underline-secondary .show > .nav-link {
  color: #ced2d8;
  border-color: #ced2d8;
}
.nav-underline-success .nav-link.active,
.nav-underline-success .show > .nav-link {
  color: #2eb85c;
  border-color: #2eb85c;
}
.nav-underline-info .nav-link.active,
.nav-underline-info .show > .nav-link {
  color: #39f;
  border-color: #39f;
}
.nav-underline-warning .nav-link.active,
.nav-underline-warning .show > .nav-link {
  color: #f9b115;
  border-color: #f9b115;
}
.nav-underline-danger .nav-link.active,
.nav-underline-danger .show > .nav-link {
  color: #e55353;
  border-color: #e55353;
}
.nav-underline-light .nav-link.active,
.nav-underline-light .show > .nav-link {
  color: #ebedef;
  border-color: #ebedef;
}
.nav-underline-dark .nav-link.active,
.nav-underline-dark .show > .nav-link {
  color: #636f83;
  border-color: #636f83;
}
.c-dark-theme .nav-underline-primary .nav-link.active,
.c-dark-theme .nav-underline-primary .show > .nav-link {
  color: #4638c2;
  border-color: #4638c2;
}
.c-dark-theme .nav-underline-secondary .nav-link.active,
.c-dark-theme .nav-underline-secondary .show > .nav-link {
  color: #4c4f54;
  border-color: #4c4f54;
}
.c-dark-theme .nav-underline-success .nav-link.active,
.c-dark-theme .nav-underline-success .show > .nav-link {
  color: #45a164;
  border-color: #45a164;
}
.c-dark-theme .nav-underline-info .nav-link.active,
.c-dark-theme .nav-underline-info .show > .nav-link {
  color: #4799eb;
  border-color: #4799eb;
}
.c-dark-theme .nav-underline-warning .nav-link.active,
.c-dark-theme .nav-underline-warning .show > .nav-link {
  color: #e1a82d;
  border-color: #e1a82d;
}
.c-dark-theme .nav-underline-danger .nav-link.active,
.c-dark-theme .nav-underline-danger .show > .nav-link {
  color: #d16767;
  border-color: #d16767;
}
.c-dark-theme .nav-underline-light .nav-link.active,
.c-dark-theme .nav-underline-light .show > .nav-link {
  color: #6c6e7e;
  border-color: #6c6e7e;
}
.c-dark-theme .nav-underline-dark .nav-link.active,
.c-dark-theme .nav-underline-dark .show > .nav-link {
  color: #0e0e15;
  border-color: #0e0e15;
}
.c-legacy-theme .nav-underline-primary .nav-link.active,
.c-legacy-theme .nav-underline-primary .show > .nav-link {
  color: #20a8d8;
  border-color: #20a8d8;
}
.c-legacy-theme .nav-underline-secondary .nav-link.active,
.c-legacy-theme .nav-underline-secondary .show > .nav-link {
  color: #c8ced3;
  border-color: #c8ced3;
}
.c-legacy-theme .nav-underline-success .nav-link.active,
.c-legacy-theme .nav-underline-success .show > .nav-link {
  color: #4dbd74;
  border-color: #4dbd74;
}
.c-legacy-theme .nav-underline-info .nav-link.active,
.c-legacy-theme .nav-underline-info .show > .nav-link {
  color: #63c2de;
  border-color: #63c2de;
}
.c-legacy-theme .nav-underline-warning .nav-link.active,
.c-legacy-theme .nav-underline-warning .show > .nav-link {
  color: #ffc107;
  border-color: #ffc107;
}
.c-legacy-theme .nav-underline-danger .nav-link.active,
.c-legacy-theme .nav-underline-danger .show > .nav-link {
  color: #f86c6b;
  border-color: #f86c6b;
}
.c-legacy-theme .nav-underline-light .nav-link.active,
.c-legacy-theme .nav-underline-light .show > .nav-link {
  color: #f0f3f5;
  border-color: #f0f3f5;
}
.c-legacy-theme .nav-underline-dark .nav-link.active,
.c-legacy-theme .nav-underline-dark .show > .nav-link {
  color: #2f353a;
  border-color: #2f353a;
}
.nav-fill .nav-item {
  flex: 1 1 auto;
  text-align: center;
}
.nav-justified .nav-item {
  flex-basis: 0;
  flex-grow: 1;
  text-align: center;
}
.tab-content > .tab-pane {
  display: none;
}
.tab-content > .active {
  display: block;
}
.c-sidebar .nav-tabs:first-child .nav-link,
.c-sidebar .c-sidebar-close + .nav-tabs .nav-link {
  display: flex;
  align-items: center;
  height: 56px;
  padding-top: 0;
  padding-bottom: 0;
}
.navbar {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding: 0.5rem 1rem;
}
.navbar .container,
.navbar .container-fluid,
.navbar .container-sm,
.navbar .container-md,
.navbar .container-lg,
.navbar .container-xl,
.navbar .container-xxl {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}
.navbar-brand {
  display: inline-block;
  padding-top: 0.3359375rem;
  padding-bottom: 0.3359375rem;
  margin-right: 1rem;
  font-size: 1.09375rem;
  line-height: inherit;
  white-space: nowrap;
}
.navbar-brand:hover, .navbar-brand:focus {
  text-decoration: none;
}
.navbar-nav {
  display: flex;
  flex-direction: column;
  margin-bottom: 0;
  list-style: none;
}
html:not([dir=rtl]) .navbar-nav {
  padding-left: 0;
}
*[dir=rtl] .navbar-nav {
  padding-right: 0;
}
.navbar-nav .nav-link {
  padding-right: 0;
  padding-left: 0;
}
.navbar-nav .dropdown-menu {
  position: static;
  float: none;
}
.navbar-text {
  display: inline-block;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.navbar-collapse {
  flex-basis: 100%;
  flex-grow: 1;
  align-items: center;
}
.navbar-toggler {
  padding: 0.25rem 0.75rem;
  font-size: 1.09375rem;
  line-height: 1;
  background-color: transparent;
  border: 1px solid transparent;
  border-radius: 0.25rem;
}
.navbar-toggler:hover, .navbar-toggler:focus {
  text-decoration: none;
}
.navbar-toggler-icon {
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  vertical-align: middle;
  content: "";
  background: no-repeat center center;
  background-size: 100% 100%;
}
@media (max-width: 575.98px) {
  .navbar-expand-sm > .container,
.navbar-expand-sm > .container-fluid,
.navbar-expand-sm > .container-sm,
.navbar-expand-sm > .container-md,
.navbar-expand-sm > .container-lg,
.navbar-expand-sm > .container-xl,
.navbar-expand-sm > .container-xxl {
    padding-right: 0;
    padding-left: 0;
  }
}
@media (min-width: 576px) {
  .navbar-expand-sm {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-sm .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-sm .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-sm .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-sm > .container,
.navbar-expand-sm > .container-fluid,
.navbar-expand-sm > .container-sm,
.navbar-expand-sm > .container-md,
.navbar-expand-sm > .container-lg,
.navbar-expand-sm > .container-xl,
.navbar-expand-sm > .container-xxl {
    flex-wrap: nowrap;
  }
  .navbar-expand-sm .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-sm .navbar-toggler {
    display: none;
  }
}
@media (max-width: 767.98px) {
  .navbar-expand-md > .container,
.navbar-expand-md > .container-fluid,
.navbar-expand-md > .container-sm,
.navbar-expand-md > .container-md,
.navbar-expand-md > .container-lg,
.navbar-expand-md > .container-xl,
.navbar-expand-md > .container-xxl {
    padding-right: 0;
    padding-left: 0;
  }
}
@media (min-width: 768px) {
  .navbar-expand-md {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-md .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-md .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-md .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-md > .container,
.navbar-expand-md > .container-fluid,
.navbar-expand-md > .container-sm,
.navbar-expand-md > .container-md,
.navbar-expand-md > .container-lg,
.navbar-expand-md > .container-xl,
.navbar-expand-md > .container-xxl {
    flex-wrap: nowrap;
  }
  .navbar-expand-md .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-md .navbar-toggler {
    display: none;
  }
}
@media (max-width: 991.98px) {
  .navbar-expand-lg > .container,
.navbar-expand-lg > .container-fluid,
.navbar-expand-lg > .container-sm,
.navbar-expand-lg > .container-md,
.navbar-expand-lg > .container-lg,
.navbar-expand-lg > .container-xl,
.navbar-expand-lg > .container-xxl {
    padding-right: 0;
    padding-left: 0;
  }
}
@media (min-width: 992px) {
  .navbar-expand-lg {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-lg .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-lg .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-lg .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-lg > .container,
.navbar-expand-lg > .container-fluid,
.navbar-expand-lg > .container-sm,
.navbar-expand-lg > .container-md,
.navbar-expand-lg > .container-lg,
.navbar-expand-lg > .container-xl,
.navbar-expand-lg > .container-xxl {
    flex-wrap: nowrap;
  }
  .navbar-expand-lg .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-lg .navbar-toggler {
    display: none;
  }
}
@media (max-width: 1199.98px) {
  .navbar-expand-xl > .container,
.navbar-expand-xl > .container-fluid,
.navbar-expand-xl > .container-sm,
.navbar-expand-xl > .container-md,
.navbar-expand-xl > .container-lg,
.navbar-expand-xl > .container-xl,
.navbar-expand-xl > .container-xxl {
    padding-right: 0;
    padding-left: 0;
  }
}
@media (min-width: 1200px) {
  .navbar-expand-xl {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-xl .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-xl .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-xl .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-xl > .container,
.navbar-expand-xl > .container-fluid,
.navbar-expand-xl > .container-sm,
.navbar-expand-xl > .container-md,
.navbar-expand-xl > .container-lg,
.navbar-expand-xl > .container-xl,
.navbar-expand-xl > .container-xxl {
    flex-wrap: nowrap;
  }
  .navbar-expand-xl .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-xl .navbar-toggler {
    display: none;
  }
}
@media (max-width: 1399.98px) {
  .navbar-expand-xxl > .container,
.navbar-expand-xxl > .container-fluid,
.navbar-expand-xxl > .container-sm,
.navbar-expand-xxl > .container-md,
.navbar-expand-xxl > .container-lg,
.navbar-expand-xxl > .container-xl,
.navbar-expand-xxl > .container-xxl {
    padding-right: 0;
    padding-left: 0;
  }
}
@media (min-width: 1400px) {
  .navbar-expand-xxl {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-xxl .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-xxl .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-xxl .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-xxl > .container,
.navbar-expand-xxl > .container-fluid,
.navbar-expand-xxl > .container-sm,
.navbar-expand-xxl > .container-md,
.navbar-expand-xxl > .container-lg,
.navbar-expand-xxl > .container-xl,
.navbar-expand-xxl > .container-xxl {
    flex-wrap: nowrap;
  }
  .navbar-expand-xxl .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-xxl .navbar-toggler {
    display: none;
  }
}
.navbar-expand {
  flex-flow: row nowrap;
  justify-content: flex-start;
}
.navbar-expand > .container,
.navbar-expand > .container-fluid,
.navbar-expand > .container-sm,
.navbar-expand > .container-md,
.navbar-expand > .container-lg,
.navbar-expand > .container-xl,
.navbar-expand > .container-xxl {
  padding-right: 0;
  padding-left: 0;
}
.navbar-expand .navbar-nav {
  flex-direction: row;
}
.navbar-expand .navbar-nav .dropdown-menu {
  position: absolute;
}
.navbar-expand .navbar-nav .nav-link {
  padding-right: 0.5rem;
  padding-left: 0.5rem;
}
.navbar-expand > .container,
.navbar-expand > .container-fluid,
.navbar-expand > .container-sm,
.navbar-expand > .container-md,
.navbar-expand > .container-lg,
.navbar-expand > .container-xl,
.navbar-expand > .container-xxl {
  flex-wrap: nowrap;
}
.navbar-expand .navbar-collapse {
  display: flex !important;
  flex-basis: auto;
}
.navbar-expand .navbar-toggler {
  display: none;
}
.navbar.navbar-dark .navbar-brand {
  color: #fff;
}
.navbar.navbar-dark .navbar-brand:hover, .navbar.navbar-dark .navbar-brand:focus {
  color: #fff;
}
.navbar.navbar-dark .navbar-nav .nav-link {
  color: rgba(255, 255, 255, 0.5);
}
.navbar.navbar-dark .navbar-nav .nav-link:hover, .navbar.navbar-dark .navbar-nav .nav-link:focus {
  color: rgba(255, 255, 255, 0.75);
}
.navbar.navbar-dark .navbar-nav .nav-link.disabled {
  color: rgba(255, 255, 255, 0.25);
}
.navbar.navbar-dark .navbar-nav .show > .nav-link,
.navbar.navbar-dark .navbar-nav .active > .nav-link,
.navbar.navbar-dark .navbar-nav .nav-link.show,
.navbar.navbar-dark .navbar-nav .nav-link.active {
  color: #fff;
}
.navbar.navbar-dark .navbar-toggler {
  color: rgba(255, 255, 255, 0.5);
  border-color: rgba(255, 255, 255, 0.1);
}
.navbar.navbar-dark .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
.navbar.navbar-dark .navbar-text {
  color: rgba(255, 255, 255, 0.5);
}
.navbar.navbar-dark .navbar-text a {
  color: #fff;
}
.navbar.navbar-dark .navbar-text a:hover, .navbar.navbar-dark .navbar-text a:focus {
  color: #fff;
}
.navbar.navbar-light .navbar-brand {
  color: rgba(0, 0, 21, 0.9);
}
.navbar.navbar-light .navbar-brand:hover, .navbar.navbar-light .navbar-brand:focus {
  color: rgba(0, 0, 21, 0.9);
}
.navbar.navbar-light .navbar-nav .nav-link {
  color: rgba(0, 0, 21, 0.5);
}
.navbar.navbar-light .navbar-nav .nav-link:hover, .navbar.navbar-light .navbar-nav .nav-link:focus {
  color: rgba(0, 0, 21, 0.7);
}
.navbar.navbar-light .navbar-nav .nav-link.disabled {
  color: rgba(0, 0, 21, 0.3);
}
.navbar.navbar-light .navbar-nav .show > .nav-link,
.navbar.navbar-light .navbar-nav .active > .nav-link,
.navbar.navbar-light .navbar-nav .nav-link.show,
.navbar.navbar-light .navbar-nav .nav-link.active {
  color: rgba(0, 0, 21, 0.9);
}
.navbar.navbar-light .navbar-toggler {
  color: rgba(0, 0, 21, 0.5);
  border-color: rgba(0, 0, 21, 0.1);
}
.navbar.navbar-light .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 21, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
.navbar.navbar-light .navbar-text {
  color: rgba(0, 0, 21, 0.5);
}
.navbar.navbar-light .navbar-text a {
  color: rgba(0, 0, 21, 0.9);
}
.navbar.navbar-light .navbar-text a:hover, .navbar.navbar-light .navbar-text a:focus {
  color: rgba(0, 0, 21, 0.9);
}
.c-legacy-theme .navbar.navbar-dark .navbar-brand {
  color: #fff;
}
.c-legacy-theme .navbar.navbar-dark .navbar-brand:hover, .c-legacy-theme .navbar.navbar-dark .navbar-brand:focus {
  color: #fff;
}
.c-legacy-theme .navbar.navbar-dark .navbar-nav .nav-link {
  color: rgba(255, 255, 255, 0.5);
}
.c-legacy-theme .navbar.navbar-dark .navbar-nav .nav-link:hover, .c-legacy-theme .navbar.navbar-dark .navbar-nav .nav-link:focus {
  color: rgba(255, 255, 255, 0.75);
}
.c-legacy-theme .navbar.navbar-dark .navbar-nav .nav-link.disabled {
  color: rgba(255, 255, 255, 0.25);
}
.c-legacy-theme .navbar.navbar-dark .navbar-nav .show > .nav-link,
.c-legacy-theme .navbar.navbar-dark .navbar-nav .active > .nav-link,
.c-legacy-theme .navbar.navbar-dark .navbar-nav .nav-link.show,
.c-legacy-theme .navbar.navbar-dark .navbar-nav .nav-link.active {
  color: #fff;
}
.c-legacy-theme .navbar.navbar-dark .navbar-toggler {
  color: rgba(255, 255, 255, 0.5);
  border-color: rgba(255, 255, 255, 0.1);
}
.c-legacy-theme .navbar.navbar-dark .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
.c-legacy-theme .navbar.navbar-dark .navbar-text {
  color: rgba(255, 255, 255, 0.5);
}
.c-legacy-theme .navbar.navbar-dark .navbar-text a {
  color: #fff;
}
.c-legacy-theme .navbar.navbar-dark .navbar-text a:hover, .c-legacy-theme .navbar.navbar-dark .navbar-text a:focus {
  color: #fff;
}
.c-legacy-theme .navbar.navbar-light .navbar-brand {
  color: rgba(0, 0, 21, 0.9);
}
.c-legacy-theme .navbar.navbar-light .navbar-brand:hover, .c-legacy-theme .navbar.navbar-light .navbar-brand:focus {
  color: rgba(0, 0, 21, 0.9);
}
.c-legacy-theme .navbar.navbar-light .navbar-nav .nav-link {
  color: rgba(0, 0, 21, 0.5);
}
.c-legacy-theme .navbar.navbar-light .navbar-nav .nav-link:hover, .c-legacy-theme .navbar.navbar-light .navbar-nav .nav-link:focus {
  color: rgba(0, 0, 21, 0.7);
}
.c-legacy-theme .navbar.navbar-light .navbar-nav .nav-link.disabled {
  color: rgba(0, 0, 21, 0.3);
}
.c-legacy-theme .navbar.navbar-light .navbar-nav .show > .nav-link,
.c-legacy-theme .navbar.navbar-light .navbar-nav .active > .nav-link,
.c-legacy-theme .navbar.navbar-light .navbar-nav .nav-link.show,
.c-legacy-theme .navbar.navbar-light .navbar-nav .nav-link.active {
  color: rgba(0, 0, 21, 0.9);
}
.c-legacy-theme .navbar.navbar-light .navbar-toggler {
  color: rgba(0, 0, 21, 0.5);
  border-color: rgba(0, 0, 21, 0.1);
}
.c-legacy-theme .navbar.navbar-light .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 21, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
.c-legacy-theme .navbar.navbar-light .navbar-text {
  color: rgba(0, 0, 21, 0.5);
}
.c-legacy-theme .navbar.navbar-light .navbar-text a {
  color: rgba(0, 0, 21, 0.9);
}
.c-legacy-theme .navbar.navbar-light .navbar-text a:hover, .c-legacy-theme .navbar.navbar-light .navbar-text a:focus {
  color: rgba(0, 0, 21, 0.9);
}
.pagination {
  display: flex;
  list-style: none;
  border-radius: 0.25rem;
}
html:not([dir=rtl]) .pagination {
  padding-left: 0;
}
*[dir=rtl] .pagination {
  padding-right: 0;
}
.page-link {
  position: relative;
  display: block;
  padding: 0.5rem 0.75rem;
  line-height: 1.25;
  border: 1px solid;
  color: #321fdb;
  background-color: #fff;
  border-color: #d8dbe0;
}
html:not([dir=rtl]) .page-link {
  margin-left: -1px;
}
*[dir=rtl] .page-link {
  margin-right: -1px;
}
.c-legacy-theme .page-link {
  color: #20a8d8;
  background-color: #fff;
  border-color: #c8ced3;
}
.c-dark-theme .page-link {
  color: rgba(255, 255, 255, 0.87);
  background-color: transparent;
  border-color: rgba(255, 255, 255, 0.075);
}
.page-link:hover {
  z-index: 2;
  text-decoration: none;
  color: #231698;
  background-color: #d8dbe0;
  border-color: #c4c9d0;
}
.c-legacy-theme .page-link:hover {
  color: #167495;
  background-color: #e4e7ea;
  border-color: #c8ced3;
}
.c-dark-theme .page-link:hover {
  color: rgba(255, 255, 255, 0.87);
  background-color: rgba(255, 255, 255, 0.075);
  border-color: rgba(255, 255, 255, 0.075);
}
.page-link:focus {
  z-index: 3;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(50, 31, 219, 0.25);
}
html:not([dir=rtl]) .page-item:first-child .page-link {
  margin-left: 0;
  border-top-left-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}
*[dir=rtl] .page-item:first-child .page-link {
  margin-right: 0;
  border-top-right-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
}
html:not([dir=rtl]) .page-item:last-child .page-link {
  border-top-right-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
}
*[dir=rtl] .page-item:last-child .page-link {
  border-top-left-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}
.page-item.active .page-link {
  z-index: 3;
  color: #fff;
  background-color: #321fdb;
  border-color: #321fdb;
}
.c-legacy-theme .page-item.active .page-link {
  color: #fff;
  background-color: #20a8d8;
  border-color: #20a8d8;
}
.c-dark-theme .page-item.active .page-link {
  color: #fff;
  background-color: #4638c2;
  border-color: #321fdb;
}
.page-item.disabled .page-link {
  pointer-events: none;
  cursor: auto;
  color: #8a93a2;
  background-color: #fff;
  border-color: #c4c9d0;
}
.c-legacy-theme .page-item.disabled .page-link {
  color: #73818f;
  background-color: #fff;
  border-color: #c8ced3;
}
.c-dark-theme .page-item.disabled .page-link {
  color: rgba(255, 255, 255, 0.38);
  background-color: transparent;
  border-color: rgba(255, 255, 255, 0.075);
}
.pagination-lg .page-link {
  padding: 0.75rem 1.5rem;
  font-size: 1.09375rem;
  line-height: 1.5;
}
html:not([dir=rtl]) .pagination-lg .page-item:first-child .page-link {
  border-top-left-radius: 0.3rem;
  border-bottom-left-radius: 0.3rem;
}
*[dir=rtl] .pagination-lg .page-item:first-child .page-link {
  border-top-right-radius: 0.3rem;
  border-bottom-right-radius: 0.3rem;
}
html:not([dir=rtl]) .pagination-lg .page-item:last-child .page-link {
  border-top-right-radius: 0.3rem;
  border-bottom-right-radius: 0.3rem;
}
*[dir=rtl] .pagination-lg .page-item:last-child .page-link {
  border-top-left-radius: 0.3rem;
  border-bottom-left-radius: 0.3rem;
}
.pagination-sm .page-link {
  padding: 0.25rem 0.5rem;
  font-size: 0.765625rem;
  line-height: 1.5;
}
html:not([dir=rtl]) .pagination-sm .page-item:first-child .page-link {
  border-top-left-radius: 0.2rem;
  border-bottom-left-radius: 0.2rem;
}
*[dir=rtl] .pagination-sm .page-item:first-child .page-link {
  border-top-right-radius: 0.2rem;
  border-bottom-right-radius: 0.2rem;
}
html:not([dir=rtl]) .pagination-sm .page-item:last-child .page-link {
  border-top-right-radius: 0.2rem;
  border-bottom-right-radius: 0.2rem;
}
*[dir=rtl] .pagination-sm .page-item:last-child .page-link {
  border-top-left-radius: 0.2rem;
  border-bottom-left-radius: 0.2rem;
}
.popover {
  z-index: 1060;
  display: block;
  max-width: 276px;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.765625rem;
  word-wrap: break-word;
  background-clip: padding-box;
  border: 1px solid;
  border-radius: 0.3rem;
  background-color: #fff;
  border-color: rgba(0, 0, 21, 0.2);
}
.c-legacy-theme .popover {
  background-color: #fff;
  border-color: rgba(0, 0, 0, 0.2);
}
.c-dark-theme .popover {
  background-color: #3b3c45;
  border-color: rgba(255, 255, 255, 0.075);
}
.popover .popover-arrow {
  position: absolute;
  display: block;
}
.popover .popover-arrow::before, .popover .popover-arrow::after {
  position: absolute;
  display: block;
  content: "";
  border-color: transparent;
  border-style: solid;
}
.popover[data-popper-placement^=top] .popover-arrow,
.popover[data-popper-placement^=bottom] .popover-arrow {
  width: 1.6rem;
  height: 0.5rem;
  padding: 0 0.3rem;
}
.popover[data-popper-placement^=right] .popover-arrow,
.popover[data-popper-placement^=left] .popover-arrow {
  width: 0.5rem;
  height: 1.6rem;
  padding: 0.3rem 0;
  margin: 0;
}
.popover[data-popper-placement^=top] {
  margin-bottom: 0.5rem !important;
}
.popover[data-popper-placement^=top] > .popover-arrow {
  bottom: calc(-0.5rem - 1px);
}
.popover[data-popper-placement^=top] > .popover-arrow::before {
  bottom: 0;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: rgba(0, 0, 21, 0.25);
}
.c-legacy-theme .popover[data-popper-placement^=top] > .popover-arrow::before {
  border-top-color: rgba(0, 0, 0, 0.25);
}
.c-dark-theme .popover[data-popper-placement^=top] > .popover-arrow::before {
  border-top-color: rgba(255, 255, 255, 0.125);
}
.popover[data-popper-placement^=top] > .popover-arrow::after {
  bottom: 1px;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: #fff;
}
.c-legacy-theme .popover[data-popper-placement^=top] > .popover-arrow::after {
  border-top-color: #fff;
}
.c-dark-theme .popover[data-popper-placement^=top] > .popover-arrow::after {
  border-top-color: #3b3c45;
}
.popover[data-popper-placement^=right] {
  margin-left: 0.5rem !important;
}
.popover[data-popper-placement^=right] > .popover-arrow {
  left: calc(-0.5rem - 1px);
}
.popover[data-popper-placement^=right] > .popover-arrow::before {
  left: 0;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: rgba(0, 0, 21, 0.25);
}
.c-legacy-theme .popover[data-popper-placement^=right] > .popover-arrow::before {
  border-right-color: rgba(0, 0, 0, 0.25);
}
.c-dark-theme .popover[data-popper-placement^=right] > .popover-arrow::before {
  border-right-color: rgba(255, 255, 255, 0.125);
}
.popover[data-popper-placement^=right] > .popover-arrow::after {
  left: 1px;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: #fff;
}
.c-legacy-theme .popover[data-popper-placement^=right] > .popover-arrow::after {
  border-right-color: #fff;
}
.c-dark-theme .popover[data-popper-placement^=right] > .popover-arrow::after {
  border-right-color: #3b3c45;
}
.popover[data-popper-placement^=bottom] {
  margin-top: 0.5rem !important;
}
.popover[data-popper-placement^=bottom] > .popover-arrow {
  top: calc(-0.5rem - 1px);
}
.popover[data-popper-placement^=bottom] > .popover-arrow::before {
  top: 0;
  border-width: 0 0.5rem 0.5rem 0.5rem;
  border-bottom-color: rgba(0, 0, 21, 0.25);
}
.c-legacy-theme .popover[data-popper-placement^=bottom] > .popover-arrow::before {
  border-bottom-color: rgba(0, 0, 0, 0.25);
}
.c-dark-theme .popover[data-popper-placement^=bottom] > .popover-arrow::before {
  border-bottom-color: rgba(255, 255, 255, 0.125);
}
.popover[data-popper-placement^=bottom] > .popover-arrow::after {
  top: 1px;
  border-width: 0 0.5rem 0.5rem 0.5rem;
  border-bottom-color: #fff;
}
.c-legacy-theme .popover[data-popper-placement^=bottom] > .popover-arrow::after {
  border-bottom-color: #fff;
}
.c-dark-theme .popover[data-popper-placement^=bottom] > .popover-arrow::after {
  border-bottom-color: #3b3c45;
}
.popover[data-popper-placement^=bottom] .popover-header::before {
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: 1rem;
  margin-left: -0.5rem;
  content: "";
  border-bottom: 1px solid;
  border-bottom-color: #f7f7f7;
}
.c-legacy-theme .popover[data-popper-placement^=bottom] .popover-header::before {
  border-bottom-color: #f7f7f7;
}
.c-dark-theme .popover[data-popper-placement^=bottom] .popover-header::before {
  border-bottom-color: #3b3c45;
}
.popover[data-popper-placement^=left] {
  margin-left: 0.5rem !important;
}
.popover[data-popper-placement^=left] > .popover-arrow {
  right: calc(-0.5rem - 1px);
}
.popover[data-popper-placement^=left] > .popover-arrow::before {
  right: 0;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: rgba(0, 0, 21, 0.25);
}
.c-legacy-theme .popover[data-popper-placement^=left] > .popover-arrow::before {
  border-left-color: rgba(0, 0, 0, 0.25);
}
.c-dark-theme .popover[data-popper-placement^=left] > .popover-arrow::before {
  border-left-color: rgba(255, 255, 255, 0.125);
}
.popover[data-popper-placement^=left] > .popover-arrow::after {
  right: 1px;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: #fff;
}
.c-legacy-theme .popover[data-popper-placement^=left] > .popover-arrow::after {
  border-left-color: #fff;
}
.c-dark-theme .popover[data-popper-placement^=left] > .popover-arrow::after {
  border-left-color: #3b3c45;
}
.popover-header {
  padding: 0.5rem 0.75rem;
  margin-bottom: 0;
  font-size: 0.875rem;
  border-bottom: 1px solid;
  border-top-left-radius: calc(0.3rem - 1px);
  border-top-right-radius: calc(0.3rem - 1px);
  background-color: #f7f7f7;
  border-bottom-color: #ebebeb;
}
.c-legacy-theme .popover-header {
  background-color: #f7f7f7;
  border-bottom-color: #ebebeb;
}
.c-dark-theme .popover-header {
  color: rgba(255, 255, 255, 0.87);
  background-color: #3b3c45;
  border-bottom-color: #2f3037;
}
.popover-header:empty {
  display: none;
}
.popover-body {
  padding: 0.5rem 0.75rem;
  color: #3c4b64;
}
.c-legacy-theme .popover-body {
  color: #23282c;
}
.c-dark-theme .popover-body {
  color: rgba(255, 255, 255, 0.87);
}
@-webkit-keyframes progress-bar-stripes {
  from {
    background-position: 1rem 0;
  }
  to {
    background-position: 0 0;
  }
}
@keyframes progress-bar-stripes {
  from {
    background-position: 1rem 0;
  }
  to {
    background-position: 0 0;
  }
}
.progress {
  display: flex;
  height: 1rem;
  overflow: hidden;
  line-height: 0;
  font-size: 0.65625rem;
  border-radius: 0.25rem;
  background-color: #ebedef;
}
.c-legacy-theme .progress {
  background-color: #f0f3f5;
}
.c-dark-theme .progress {
  background-color: rgba(255, 255, 255, 0.2);
}
.progress-bar {
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  text-align: center;
  white-space: nowrap;
  transition: width 0.6s ease;
  color: #fff;
  background-color: #321fdb;
}
@media (prefers-reduced-motion: reduce) {
  .progress-bar {
    transition: none;
  }
}
.c-legacy-theme .progress-bar {
  color: #fff;
  background-color: #20a8d8;
}
.c-dark-theme .progress-bar {
  color: #fff;
  background-color: #4638c2;
}
.progress-bar-striped {
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: 1rem 1rem;
}
.progress-bar-animated {
  -webkit-animation: progress-bar-stripes 1s linear infinite;
          animation: progress-bar-stripes 1s linear infinite;
}
@media (prefers-reduced-motion: reduce) {
  .progress-bar-animated {
    -webkit-animation: none;
            animation: none;
  }
}
.progress-xs {
  height: 4px;
}
.progress-sm {
  height: 8px;
}
.progress.progress-white {
  background-color: rgba(255, 255, 255, 0.2);
}
.progress.progress-white .progress-bar {
  background-color: #fff;
}
.progress-group {
  display: flex;
  flex-flow: row wrap;
  margin-bottom: 1rem;
}
.progress-group-prepend {
  flex: 0 0 100px;
  align-self: center;
}
.progress-group-icon {
  font-size: 1.09375rem;
}
html:not([dir=rtl]) .progress-group-icon {
  margin: 0 1rem 0 0.25rem;
}
*[dir=rtl] .progress-group-icon {
  margin: 0 0.25rem 0 1rem;
}
.progress-group-text {
  font-size: 0.765625rem;
  color: #768192;
}
.progress-group-header {
  display: flex;
  flex-basis: 100%;
  align-items: flex-end;
  margin-bottom: 0.25rem;
}
.progress-group-bars {
  flex-grow: 1;
  align-self: center;
}
.progress-group-bars .progress:not(:last-child) {
  margin-bottom: 2px;
}
.progress-group-header + .progress-group-bars {
  flex-basis: 100%;
}
.c-sidebar {
  position: relative;
  display: flex;
  flex: 0 0 224px;
  flex-direction: column;
  order: -1;
  width: 224px;
  padding: 0;
  box-shadow: none;
}
.c-sidebar.c-sidebar-right {
  order: 99;
}
@media (max-width: 991.98px) {
  .c-sidebar {
    --is-mobile: true;
    position: fixed;
    top: 0;
    bottom: 0;
    z-index: 1031;
  }
  html:not([dir=rtl]) .c-sidebar:not(.c-sidebar-right) {
    left: 0;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-right {
    right: 0;
  }
  *[dir=rtl] .c-sidebar:not(.c-sidebar-right) {
    right: 0;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-right {
    left: 0;
  }
}
html:not([dir=rtl]) .c-sidebar:not(.c-sidebar-right) {
  margin-left: -224px;
}
html:not([dir=rtl]) .c-sidebar.c-sidebar-right {
  margin-right: -224px;
}
*[dir=rtl] .c-sidebar:not(.c-sidebar-right) {
  margin-right: -224px;
}
*[dir=rtl] .c-sidebar.c-sidebar-right {
  margin-left: -224px;
}
.c-sidebar[class*=bg-] {
  border-color: rgba(0, 0, 21, 0.1);
}
.c-sidebar.c-sidebar-sm {
  flex: 0 0 192px;
  width: 192px;
}
html:not([dir=rtl]) .c-sidebar.c-sidebar-sm:not(.c-sidebar-right) {
  margin-left: -192px;
}
html:not([dir=rtl]) .c-sidebar.c-sidebar-sm.c-sidebar-right {
  margin-right: -192px;
}
*[dir=rtl] .c-sidebar.c-sidebar-sm:not(.c-sidebar-right) {
  margin-right: -192px;
}
*[dir=rtl] .c-sidebar.c-sidebar-sm.c-sidebar-right {
  margin-left: -192px;
}
.c-sidebar.c-sidebar-lg {
  flex: 0 0 320px;
  width: 320px;
}
html:not([dir=rtl]) .c-sidebar.c-sidebar-lg:not(.c-sidebar-right) {
  margin-left: -320px;
}
html:not([dir=rtl]) .c-sidebar.c-sidebar-lg.c-sidebar-right {
  margin-right: -320px;
}
*[dir=rtl] .c-sidebar.c-sidebar-lg:not(.c-sidebar-right) {
  margin-right: -320px;
}
*[dir=rtl] .c-sidebar.c-sidebar-lg.c-sidebar-right {
  margin-left: -320px;
}
.c-sidebar.c-sidebar-xl {
  flex: 0 0 384px;
  width: 384px;
}
html:not([dir=rtl]) .c-sidebar.c-sidebar-xl:not(.c-sidebar-right) {
  margin-left: -384px;
}
html:not([dir=rtl]) .c-sidebar.c-sidebar-xl.c-sidebar-right {
  margin-right: -384px;
}
*[dir=rtl] .c-sidebar.c-sidebar-xl:not(.c-sidebar-right) {
  margin-right: -384px;
}
*[dir=rtl] .c-sidebar.c-sidebar-xl.c-sidebar-right {
  margin-left: -384px;
}
@media (min-width: 992px) {
  .c-sidebar.c-sidebar-fixed {
    position: fixed;
    top: 0;
    bottom: 0;
    z-index: 1030;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-fixed:not(.c-sidebar-right) {
    left: 0;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-fixed.c-sidebar-right {
    right: 0;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-fixed:not(.c-sidebar-right) {
    right: 0;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-fixed.c-sidebar-right {
    left: 0;
  }
}
.c-sidebar.c-sidebar-overlaid {
  position: fixed;
  top: 0;
  bottom: 0;
  z-index: 1032;
}
html:not([dir=rtl]) .c-sidebar.c-sidebar-overlaid:not(.c-sidebar-right) {
  left: 0;
}
html:not([dir=rtl]) .c-sidebar.c-sidebar-overlaid.c-sidebar-right {
  right: 0;
}
*[dir=rtl] .c-sidebar.c-sidebar-overlaid:not(.c-sidebar-right) {
  right: 0;
}
*[dir=rtl] .c-sidebar.c-sidebar-overlaid.c-sidebar-right {
  left: 0;
}
.c-sidebar-close {
  position: absolute;
  width: 56px;
  height: 56px;
  background: transparent;
  border: 0;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-sidebar-close:hover {
    text-decoration: none;
  }
}
.c-sidebar-close:focus, .c-sidebar-close.focus {
  outline: 0;
}
html:not([dir=rtl]) .c-sidebar-close {
  right: 0;
}
*[dir=rtl] .c-sidebar-close {
  left: 0;
}
.c-sidebar-brand {
  display: flex;
  flex: 0 0 56px;
  align-items: center;
  justify-content: center;
}
.c-sidebar-brand .c-sidebar-brand-minimized {
  display: none;
}
.c-sidebar-header {
  flex: 0 0 auto;
  padding: 0.75rem 1rem;
  text-align: center;
  transition: 0.3s;
}
.c-sidebar-nav {
  position: relative;
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 0;
  margin-bottom: 0;
  overflow-x: hidden;
  overflow-y: auto;
  list-style: none;
}
.c-sidebar-nav.ps {
  overflow: -moz-scrollbars-none;
  -ms-overflow-style: none;
}
.c-sidebar-nav.ps::-webkit-scrollbar {
  width: 0 !important;
}
.c-sidebar-nav-title {
  padding: 0.75rem 1rem;
  margin-top: 1rem;
  font-size: 80%;
  font-weight: 700;
  text-transform: uppercase;
  transition: 0.3s;
}
.c-sidebar-nav-divider {
  height: 10px;
  transition: height 0.3s;
}
.c-sidebar-nav-item {
  width: inherit;
}
.c-sidebar-nav-link, .c-sidebar-nav-dropdown-toggle {
  display: flex;
  flex: 1;
  align-items: center;
  padding: 0.8445rem 1rem;
  text-decoration: none;
  white-space: nowrap;
  transition: background 0.3s, color 0.3s;
}
html:not([dir=rtl]) .c-sidebar-nav-link .badge, html:not([dir=rtl]) .c-sidebar-nav-dropdown-toggle .badge {
  margin-left: auto;
}
*[dir=rtl] .c-sidebar-nav-link .badge, *[dir=rtl] .c-sidebar-nav-dropdown-toggle .badge {
  margin-right: auto;
}
.c-sidebar-nav-link.c-disabled, .c-disabled.c-sidebar-nav-dropdown-toggle {
  cursor: default;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-sidebar-nav-link:hover, .c-sidebar-nav-dropdown-toggle:hover {
    text-decoration: none;
  }
}
.c-sidebar-nav-icon {
  flex: 0 0 56px;
  height: 1.09375rem;
  font-size: 1.09375rem;
  text-align: center;
  transition: 0.3s;
  fill: currentColor;
}
html:not([dir=rtl]) .c-sidebar-nav-icon:first-child {
  margin-left: -1rem;
}
*[dir=rtl] .c-sidebar-nav-icon:first-child {
  margin-right: -1rem;
}
.c-sidebar-nav-dropdown {
  position: relative;
  transition: background 0.3s ease-in-out;
}
.c-sidebar-nav-dropdown.c-show > .c-sidebar-nav-dropdown-items {
  max-height: 1500px;
}
html:not([dir=rtl]) .c-sidebar-nav-dropdown.c-show > .c-sidebar-nav-dropdown-toggle::after {
  transform: rotate(-90deg);
}
*[dir=rtl] .c-sidebar-nav-dropdown.c-show > .c-sidebar-nav-dropdown-toggle::after {
  transform: rotate(270deg);
}
.c-sidebar-nav-dropdown.c-show + .c-sidebar-nav-dropdown.c-show {
  margin-top: 1px;
}
.c-sidebar-nav-dropdown-toggle {
  cursor: pointer;
}
.c-sidebar-nav-dropdown-toggle::after {
  display: block;
  flex: 0 8px;
  height: 8px;
  content: "";
  background-repeat: no-repeat;
  background-position: center;
  transition: transform 0.3s;
}
html:not([dir=rtl]) .c-sidebar-nav-dropdown-toggle::after {
  margin-left: auto;
}
*[dir=rtl] .c-sidebar-nav-dropdown-toggle::after {
  margin-right: auto;
  transform: rotate(180deg);
}
html:not([dir=rtl]) .c-sidebar-nav-dropdown-toggle .badge {
  margin-right: 1rem;
}
*[dir=rtl] .c-sidebar-nav-dropdown-toggle .badge {
  margin-left: 1rem;
}
.c-sidebar-nav-dropdown-items {
  max-height: 0;
  padding: 0;
  overflow-y: hidden;
  list-style: none;
  transition: max-height 0.3s ease-in-out;
}
html:not([dir=rtl]) .c-sidebar-nav-dropdown-items .c-sidebar-nav-link, html:not([dir=rtl]) .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-toggle {
  padding-left: 56px;
}
*[dir=rtl] .c-sidebar-nav-dropdown-items .c-sidebar-nav-link, *[dir=rtl] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-toggle {
  padding-right: 56px;
}
html:not([dir=rtl]) .c-sidebar-nav-dropdown-items .c-sidebar-nav-link .c-sidebar-nav-icon, html:not([dir=rtl]) .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  margin-left: -56px;
}
*[dir=rtl] .c-sidebar-nav-dropdown-items .c-sidebar-nav-link .c-sidebar-nav-icon, *[dir=rtl] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  margin-right: -56px;
}
html:not([dir=rtl]) .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-link, html:not([dir=rtl]) .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-toggle {
  padding-left: 64px;
}
*[dir=rtl] .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-link, *[dir=rtl] .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-toggle {
  padding-right: 64px;
}
html:not([dir=rtl]) .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-link .c-sidebar-nav-icon, html:not([dir=rtl]) .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  margin-left: -56px;
}
*[dir=rtl] .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-link .c-sidebar-nav-icon, *[dir=rtl] .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  margin-right: -56px;
}
html:not([dir=rtl]) .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-link, html:not([dir=rtl]) .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-toggle {
  padding-left: 72px;
}
*[dir=rtl] .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-link, *[dir=rtl] .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-toggle {
  padding-right: 72px;
}
html:not([dir=rtl]) .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-link .c-sidebar-nav-icon, html:not([dir=rtl]) .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  margin-left: -56px;
}
*[dir=rtl] .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-link .c-sidebar-nav-icon, *[dir=rtl] .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  margin-right: -56px;
}
html:not([dir=rtl]) .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-link, html:not([dir=rtl]) .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-toggle {
  padding-left: 80px;
}
*[dir=rtl] .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-link, *[dir=rtl] .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-toggle {
  padding-right: 80px;
}
html:not([dir=rtl]) .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-link .c-sidebar-nav-icon, html:not([dir=rtl]) .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  margin-left: -56px;
}
*[dir=rtl] .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-link .c-sidebar-nav-icon, *[dir=rtl] .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  margin-right: -56px;
}
html:not([dir=rtl]) .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-link, html:not([dir=rtl]) .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-toggle {
  padding-left: 88px;
}
*[dir=rtl] .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-link, *[dir=rtl] .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-toggle {
  padding-right: 88px;
}
html:not([dir=rtl]) .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-link .c-sidebar-nav-icon, html:not([dir=rtl]) .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  margin-left: -56px;
}
*[dir=rtl] .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-link .c-sidebar-nav-icon, *[dir=rtl] .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  margin-right: -56px;
}
html:not([dir=rtl]) .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-link, html:not([dir=rtl]) .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-toggle {
  padding-left: 96px;
}
*[dir=rtl] .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-link, *[dir=rtl] .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-toggle {
  padding-right: 96px;
}
html:not([dir=rtl]) .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-link .c-sidebar-nav-icon, html:not([dir=rtl]) .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  margin-left: -56px;
}
*[dir=rtl] .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-link .c-sidebar-nav-icon, *[dir=rtl] .c-sidebar-nav[data-indentation=true] .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  margin-right: -56px;
}
.c-sidebar-nav-label {
  display: flex;
  padding: 0.211125rem 1rem;
  transition: 0.3s;
}
.c-sidebar-nav-label:hover {
  text-decoration: none;
}
.c-sidebar-nav-label .c-sidebar-nav-icon {
  margin-top: 1px;
}
.c-sidebar-footer {
  flex: 0 0 auto;
  padding: 0.75rem 1rem;
  transition: 0.3s;
}
.c-sidebar-minimizer {
  display: flex;
  flex: 0 0 50px;
  justify-content: flex-end;
  width: inherit;
  padding: 0;
  cursor: pointer;
  border: 0;
}
@media (max-width: 991.98px) {
  .c-sidebar-minimizer {
    display: none;
  }
}
.c-sidebar-minimizer::before {
  display: block;
  width: 50px;
  height: 50px;
  content: "";
  background-repeat: no-repeat;
  background-position: center;
  background-size: 12.5px;
  transition: 0.3s;
}
*[dir=rtl] .c-sidebar-minimizer::before {
  transform: rotate(180deg);
}
.c-sidebar-minimizer:focus, .c-sidebar-minimizer.c-focus {
  outline: 0;
}
.c-sidebar-right .c-sidebar-minimizer {
  justify-content: flex-start;
}
html:not([dir=rtl]) .c-sidebar-right .c-sidebar-minimizer::before {
  transform: rotate(-180deg);
}
*[dir=rtl] .c-sidebar-right .c-sidebar-minimizer::before {
  transform: rotate(0deg);
}
@media (max-width: 991.98px) {
  .c-sidebar-backdrop {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1030;
    width: 100vw;
    height: 100vh;
    background-color: #000015;
    transition: 0.3s;
  }
  .c-sidebar-backdrop.c-fade {
    opacity: 0;
  }
  .c-sidebar-backdrop.c-show {
    opacity: 0.5;
  }
}
@media (min-width: 992px) {
  .c-sidebar-minimized {
    z-index: 1031;
    flex: 0 0 56px;
  }
  .c-sidebar-minimized.c-sidebar-fixed {
    z-index: 1031;
    width: 56px;
  }
  html:not([dir=rtl]) .c-sidebar-minimized:not(.c-sidebar-right) {
    margin-left: -56px;
  }
  *[dir=rtl] .c-sidebar-minimized:not(.c-sidebar-right) {
    margin-right: -56px;
  }
  html:not([dir=rtl]) .c-sidebar-minimized.c-sidebar-right {
    margin-right: -56px;
  }
  html:not([dir=rtl]) .c-sidebar-minimized.c-sidebar-right {
    margin-left: -56px;
  }
  .c-sidebar-minimized .c-sidebar-brand-full {
    display: none;
  }
  .c-sidebar-minimized .c-sidebar-brand-minimized {
    display: block;
  }
  .c-sidebar-minimized .c-sidebar-nav {
    padding-bottom: 50px;
    overflow: visible;
  }
  .c-sidebar-minimized .c-d-minimized-none,
.c-sidebar-minimized .c-sidebar-nav-divider,
.c-sidebar-minimized .c-sidebar-nav-label,
.c-sidebar-minimized .c-sidebar-nav-title,
.c-sidebar-minimized .c-sidebar-footer,
.c-sidebar-minimized .c-sidebar-form,
.c-sidebar-minimized .c-sidebar-header {
    height: 0;
    padding: 0;
    margin: 0;
    visibility: hidden;
    opacity: 0;
  }
  .c-sidebar-minimized .c-sidebar-minimizer {
    position: fixed;
    bottom: 0;
    width: inherit;
  }
  html:not([dir=rtl]) .c-sidebar-minimized .c-sidebar-minimizer::before {
    transform: rotate(-180deg);
  }
  *[dir=rtl] .c-sidebar-minimized .c-sidebar-minimizer::before {
    transform: rotate(0deg);
  }
  html:not([dir=rtl]) .c-sidebar-minimized.c-sidebar-right .c-sidebar-minimizer::before {
    transform: rotate(0deg);
  }
  *[dir=rtl] .c-sidebar-minimized.c-sidebar-right .c-sidebar-minimizer::before {
    transform: rotate(180deg);
  }
  html:not([dir=rtl]) .c-sidebar-minimized.c-sidebar-right .c-sidebar-nav > .c-sidebar-nav-item:hover,
html:not([dir=rtl]) .c-sidebar-minimized.c-sidebar-right .c-sidebar-nav > .c-sidebar-nav-dropdown:hover {
    margin-left: -224px;
  }
  *[dir=rtl] .c-sidebar-minimized.c-sidebar-right .c-sidebar-nav > .c-sidebar-nav-item:hover,
*[dir=rtl] .c-sidebar-minimized.c-sidebar-right .c-sidebar-nav > .c-sidebar-nav-dropdown:hover {
    margin-right: -224px;
  }
  .c-sidebar-minimized .c-sidebar-nav-link,
.c-sidebar-minimized .c-sidebar-nav-dropdown-toggle {
    overflow: hidden;
    white-space: nowrap;
    border-left: 0;
  }
  .c-sidebar-minimized .c-sidebar-nav-link:hover,
.c-sidebar-minimized .c-sidebar-nav-dropdown-toggle:hover {
    width: 280px;
  }
  .c-sidebar-minimized .c-sidebar-nav-dropdown-toggle::after {
    display: none;
  }
  .c-sidebar-minimized .c-sidebar-nav-dropdown-items .c-sidebar-nav-link, .c-sidebar-minimized .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-toggle {
    width: 224px;
  }
  .c-sidebar-minimized .c-sidebar-nav > .c-sidebar-nav-dropdown {
    position: relative;
  }
  .c-sidebar-minimized .c-sidebar-nav > .c-sidebar-nav-dropdown > .c-sidebar-nav-dropdown-items {
    display: none;
  }
  .c-sidebar-minimized .c-sidebar-nav > .c-sidebar-nav-dropdown > .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown:not(.c-show) > .c-sidebar-nav-dropdown-items {
    display: none;
  }
  .c-sidebar-minimized .c-sidebar-nav > .c-sidebar-nav-dropdown .c-sidebar-nav-dropdown-items {
    max-height: 1500px;
  }
  .c-sidebar-minimized .c-sidebar-nav > .c-sidebar-nav-dropdown:hover {
    width: 280px;
    overflow: visible;
  }
  .c-sidebar-minimized .c-sidebar-nav > .c-sidebar-nav-dropdown:hover > .c-sidebar-nav-dropdown-items {
    position: absolute;
    display: inline;
  }
  html:not([dir=rtl]) .c-sidebar-minimized .c-sidebar-nav > .c-sidebar-nav-dropdown:hover > .c-sidebar-nav-dropdown-items {
    left: 56px;
  }
  *[dir=rtl] .c-sidebar-minimized .c-sidebar-nav > .c-sidebar-nav-dropdown:hover > .c-sidebar-nav-dropdown-items {
    right: 56px;
  }
  html:not([dir=rtl]) .c-sidebar-minimized.c-sidebar-right > .c-sidebar-nav-dropdown:hover > .c-sidebar-nav-dropdown-items {
    left: 0;
  }
  *[dir=rtl] .c-sidebar-minimized.c-sidebar-right > .c-sidebar-nav-dropdown:hover > .c-sidebar-nav-dropdown-items {
    right: 0;
  }
}
@media (min-width: 992px) {
  .c-sidebar-unfoldable:not(:hover) {
    z-index: 1031;
    flex: 0 0 56px;
  }
  .c-sidebar-unfoldable:not(:hover).c-sidebar-fixed {
    z-index: 1031;
    width: 56px;
  }
  html:not([dir=rtl]) .c-sidebar-unfoldable:not(:hover):not(.c-sidebar-right) {
    margin-left: -56px;
  }
  *[dir=rtl] .c-sidebar-unfoldable:not(:hover):not(.c-sidebar-right) {
    margin-right: -56px;
  }
  html:not([dir=rtl]) .c-sidebar-unfoldable:not(:hover).c-sidebar-right {
    margin-right: -56px;
  }
  html:not([dir=rtl]) .c-sidebar-unfoldable:not(:hover).c-sidebar-right {
    margin-left: -56px;
  }
  .c-sidebar-unfoldable:not(:hover) .c-sidebar-brand-full {
    display: none;
  }
  .c-sidebar-unfoldable:not(:hover) .c-sidebar-brand-minimized {
    display: block;
  }
  .c-sidebar-unfoldable:not(:hover) .c-sidebar-nav {
    padding-bottom: 50px;
    overflow: visible;
  }
  .c-sidebar-unfoldable:not(:hover) .c-d-minimized-none,
.c-sidebar-unfoldable:not(:hover) .c-sidebar-nav-divider,
.c-sidebar-unfoldable:not(:hover) .c-sidebar-nav-label,
.c-sidebar-unfoldable:not(:hover) .c-sidebar-nav-title,
.c-sidebar-unfoldable:not(:hover) .c-sidebar-footer,
.c-sidebar-unfoldable:not(:hover) .c-sidebar-form,
.c-sidebar-unfoldable:not(:hover) .c-sidebar-header {
    height: 0;
    padding: 0;
    margin: 0;
    visibility: hidden;
    opacity: 0;
  }
  .c-sidebar-unfoldable:not(:hover) .c-sidebar-minimizer {
    position: fixed;
    bottom: 0;
    width: inherit;
  }
  html:not([dir=rtl]) .c-sidebar-unfoldable:not(:hover) .c-sidebar-minimizer::before {
    transform: rotate(-180deg);
  }
  *[dir=rtl] .c-sidebar-unfoldable:not(:hover) .c-sidebar-minimizer::before {
    transform: rotate(0deg);
  }
  html:not([dir=rtl]) .c-sidebar-unfoldable:not(:hover).c-sidebar-right .c-sidebar-minimizer::before {
    transform: rotate(0deg);
  }
  *[dir=rtl] .c-sidebar-unfoldable:not(:hover).c-sidebar-right .c-sidebar-minimizer::before {
    transform: rotate(180deg);
  }
  html:not([dir=rtl]) .c-sidebar-unfoldable:not(:hover).c-sidebar-right .c-sidebar-nav > .c-sidebar-nav-item:hover,
html:not([dir=rtl]) .c-sidebar-unfoldable:not(:hover).c-sidebar-right .c-sidebar-nav > .c-sidebar-nav-dropdown:hover {
    margin-left: -224px;
  }
  *[dir=rtl] .c-sidebar-unfoldable:not(:hover).c-sidebar-right .c-sidebar-nav > .c-sidebar-nav-item:hover,
*[dir=rtl] .c-sidebar-unfoldable:not(:hover).c-sidebar-right .c-sidebar-nav > .c-sidebar-nav-dropdown:hover {
    margin-right: -224px;
  }
  .c-sidebar-unfoldable:not(:hover) .c-sidebar-nav-link,
.c-sidebar-unfoldable:not(:hover) .c-sidebar-nav-dropdown-toggle {
    overflow: hidden;
    white-space: nowrap;
    border-left: 0;
  }
  .c-sidebar-unfoldable:not(:hover) .c-sidebar-nav-link:hover,
.c-sidebar-unfoldable:not(:hover) .c-sidebar-nav-dropdown-toggle:hover {
    width: 280px;
  }
  .c-sidebar-unfoldable:not(:hover) .c-sidebar-nav-dropdown-toggle::after {
    display: none;
  }
  .c-sidebar-unfoldable:not(:hover) .c-sidebar-nav-dropdown-items .c-sidebar-nav-link, .c-sidebar-unfoldable:not(:hover) .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown-toggle {
    width: 224px;
  }
  .c-sidebar-unfoldable:not(:hover) .c-sidebar-nav > .c-sidebar-nav-dropdown {
    position: relative;
  }
  .c-sidebar-unfoldable:not(:hover) .c-sidebar-nav > .c-sidebar-nav-dropdown > .c-sidebar-nav-dropdown-items {
    display: none;
  }
  .c-sidebar-unfoldable:not(:hover) .c-sidebar-nav > .c-sidebar-nav-dropdown > .c-sidebar-nav-dropdown-items .c-sidebar-nav-dropdown:not(.c-show) > .c-sidebar-nav-dropdown-items {
    display: none;
  }
}
.c-sidebar-unfoldable:not(:hover) .ps {
  overflow: initial !important;
}
@media (min-width: 992px) {
  .c-sidebar-unfoldable {
    z-index: 1031 !important;
  }
  .c-sidebar-unfoldable:hover .c-sidebar-nav-dropdown-items {
    overflow-x: hidden;
  }
  html:not([dir=rtl]) .c-sidebar-unfoldable:hover .c-sidebar-minimizer::before {
    transform: rotate(-180deg);
  }
  *[dir=rtl] .c-sidebar-unfoldable:hover .c-sidebar-minimizer::before {
    transform: rotate(0deg);
  }
}
@media (max-width: 991.98px) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show {
    border: 0;
    box-shadow: 0 3px 4px 0 rgba(var(--elevation-base-color), .14), 0 3px 3px -2px rgba(var(--elevation-base-color), .12), 0 1px 8px 0 rgba(var(--elevation-base-color), .20);
  }
}
@media (max-width: 991.98px) and (-ms-high-contrast: none), (max-width: 991.98px) and (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show {
    box-shadow: 0 3px 4px 0 rgba(60, 75, 100, .14), 0 3px 3px -2px rgba(60, 75, 100, .12), 0 1px 8px 0 rgba(60, 75, 100, .20);
  }
}
@media (min-width: 992px) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-fixed,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-fixed {
    border: 0;
    box-shadow: 0 2px 2px 0 rgba(var(--elevation-base-color), .14), 0 3px 1px -2px rgba(var(--elevation-base-color), .12), 0 1px 5px 0 rgba(var(--elevation-base-color), .20);
  }
}
@media (min-width: 992px) and (-ms-high-contrast: none), (min-width: 992px) and (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-fixed,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-fixed {
    box-shadow: 0 2px 2px 0 rgba(60, 75, 100, .14), 0 3px 1px -2px rgba(60, 75, 100, .12), 0 1px 5px 0 rgba(60, 75, 100, .20);
  }
}
@media (min-width: 992px) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-unfoldable,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-unfoldable {
    border: 0;
    box-shadow: 0 3px 4px 0 rgba(var(--elevation-base-color), .14), 0 3px 3px -2px rgba(var(--elevation-base-color), .12), 0 1px 8px 0 rgba(var(--elevation-base-color), .20);
  }
}
@media (min-width: 992px) and (-ms-high-contrast: none), (min-width: 992px) and (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-unfoldable,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-unfoldable {
    box-shadow: 0 3px 4px 0 rgba(60, 75, 100, .14), 0 3px 3px -2px rgba(60, 75, 100, .12), 0 1px 8px 0 rgba(60, 75, 100, .20);
  }
}
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-overlaid,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-overlaid {
  border: 0;
  box-shadow: 0 3px 4px 0 rgba(var(--elevation-base-color), .14), 0 3px 3px -2px rgba(var(--elevation-base-color), .12), 0 1px 8px 0 rgba(var(--elevation-base-color), .20);
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-overlaid,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-overlaid {
    box-shadow: 0 3px 4px 0 rgba(60, 75, 100, .14), 0 3px 3px -2px rgba(60, 75, 100, .12), 0 1px 8px 0 rgba(60, 75, 100, .20);
  }
}
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right),
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right) {
  margin-left: 0;
}
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right),
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right) {
  margin-right: 0;
}
@media (min-width: 992px) {
  html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed ~ .c-wrapper {
    margin-left: 224px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed ~ .c-wrapper {
    margin-right: 224px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper {
    margin-left: 192px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper {
    margin-right: 192px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper {
    margin-left: 320px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper {
    margin-right: 320px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper {
    margin-left: 384px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper {
    margin-right: 384px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper, html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper {
    margin-left: 56px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper, *[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper {
    margin-right: 56px;
  }
}
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right {
  margin-right: 0;
}
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right {
  margin-left: 0;
}
@media (min-width: 992px) {
  html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed ~ .c-wrapper {
    margin-right: 224px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed ~ .c-wrapper {
    margin-left: 224px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper {
    margin-right: 192px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper {
    margin-left: 192px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper {
    margin-right: 320px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper {
    margin-left: 320px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper {
    margin-right: 384px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper {
    margin-left: 384px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper, html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper {
    margin-right: 56px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper, *[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper {
    margin-left: 56px;
  }
}
@media (min-width: 576px) and (max-width: 991.98px) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-sm-show,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show {
    border: 0;
    box-shadow: 0 3px 4px 0 rgba(var(--elevation-base-color), .14), 0 3px 3px -2px rgba(var(--elevation-base-color), .12), 0 1px 8px 0 rgba(var(--elevation-base-color), .20);
  }
}
@media (min-width: 576px) and (max-width: 991.98px) and (-ms-high-contrast: none), (min-width: 576px) and (max-width: 991.98px) and (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-sm-show,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show {
    box-shadow: 0 3px 4px 0 rgba(60, 75, 100, .14), 0 3px 3px -2px rgba(60, 75, 100, .12), 0 1px 8px 0 rgba(60, 75, 100, .20);
  }
}
@media (min-width: 576px) and (min-width: 992px) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-sm-show.c-sidebar-fixed,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-fixed {
    border: 0;
    box-shadow: 0 2px 2px 0 rgba(var(--elevation-base-color), .14), 0 3px 1px -2px rgba(var(--elevation-base-color), .12), 0 1px 5px 0 rgba(var(--elevation-base-color), .20);
  }
}
@media (min-width: 576px) and (min-width: 992px) and (-ms-high-contrast: none), (min-width: 576px) and (min-width: 992px) and (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-sm-show.c-sidebar-fixed,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-fixed {
    box-shadow: 0 2px 2px 0 rgba(60, 75, 100, .14), 0 3px 1px -2px rgba(60, 75, 100, .12), 0 1px 5px 0 rgba(60, 75, 100, .20);
  }
}
@media (min-width: 576px) and (min-width: 992px) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-sm-show.c-sidebar-unfoldable,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-unfoldable {
    border: 0;
    box-shadow: 0 3px 4px 0 rgba(var(--elevation-base-color), .14), 0 3px 3px -2px rgba(var(--elevation-base-color), .12), 0 1px 8px 0 rgba(var(--elevation-base-color), .20);
  }
}
@media (min-width: 576px) and (min-width: 992px) and (-ms-high-contrast: none), (min-width: 576px) and (min-width: 992px) and (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-sm-show.c-sidebar-unfoldable,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-unfoldable {
    box-shadow: 0 3px 4px 0 rgba(60, 75, 100, .14), 0 3px 3px -2px rgba(60, 75, 100, .12), 0 1px 8px 0 rgba(60, 75, 100, .20);
  }
}
@media (min-width: 576px) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-sm-show.c-sidebar-overlaid,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-overlaid {
    border: 0;
    box-shadow: 0 3px 4px 0 rgba(var(--elevation-base-color), .14), 0 3px 3px -2px rgba(var(--elevation-base-color), .12), 0 1px 8px 0 rgba(var(--elevation-base-color), .20);
  }
}
@media (min-width: 576px) and (-ms-high-contrast: none), (min-width: 576px) and (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-sm-show.c-sidebar-overlaid,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-overlaid {
    box-shadow: 0 3px 4px 0 rgba(60, 75, 100, .14), 0 3px 3px -2px rgba(60, 75, 100, .12), 0 1px 8px 0 rgba(60, 75, 100, .20);
  }
}
@media (min-width: 576px) {
  html:not([dir=rtl]) .c-sidebar.c-sidebar-sm-show:not(.c-sidebar-right),
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right) {
    margin-left: 0;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-sm-show:not(.c-sidebar-right),
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right) {
    margin-right: 0;
  }
}
@media (min-width: 576px) and (min-width: 992px) {
  html:not([dir=rtl]) .c-sidebar.c-sidebar-sm-show:not(.c-sidebar-right).c-sidebar-fixed ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed ~ .c-wrapper {
    margin-left: 224px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-sm-show:not(.c-sidebar-right).c-sidebar-fixed ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed ~ .c-wrapper {
    margin-right: 224px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-sm-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper {
    margin-left: 192px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-sm-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper {
    margin-right: 192px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-sm-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper {
    margin-left: 320px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-sm-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper {
    margin-right: 320px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-sm-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper {
    margin-left: 384px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-sm-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper {
    margin-right: 384px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-sm-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper, html:not([dir=rtl]) .c-sidebar.c-sidebar-sm-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper {
    margin-left: 56px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-sm-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper, *[dir=rtl] .c-sidebar.c-sidebar-sm-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper {
    margin-right: 56px;
  }
}
@media (min-width: 576px) {
  html:not([dir=rtl]) .c-sidebar.c-sidebar-sm-show.c-sidebar-right,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right {
    margin-right: 0;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-sm-show.c-sidebar-right,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right {
    margin-left: 0;
  }
}
@media (min-width: 576px) and (min-width: 992px) {
  html:not([dir=rtl]) .c-sidebar.c-sidebar-sm-show.c-sidebar-right.c-sidebar-fixed ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed ~ .c-wrapper {
    margin-right: 224px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-sm-show.c-sidebar-right.c-sidebar-fixed ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed ~ .c-wrapper {
    margin-left: 224px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-sm-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper {
    margin-right: 192px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-sm-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper {
    margin-left: 192px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-sm-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper {
    margin-right: 320px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-sm-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper {
    margin-left: 320px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-sm-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper {
    margin-right: 384px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-sm-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper {
    margin-left: 384px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-sm-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper, html:not([dir=rtl]) .c-sidebar.c-sidebar-sm-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper {
    margin-right: 56px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-sm-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper, *[dir=rtl] .c-sidebar.c-sidebar-sm-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper {
    margin-left: 56px;
  }
}
@media (min-width: 768px) and (max-width: 991.98px) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-md-show,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show {
    border: 0;
    box-shadow: 0 3px 4px 0 rgba(var(--elevation-base-color), .14), 0 3px 3px -2px rgba(var(--elevation-base-color), .12), 0 1px 8px 0 rgba(var(--elevation-base-color), .20);
  }
}
@media (min-width: 768px) and (max-width: 991.98px) and (-ms-high-contrast: none), (min-width: 768px) and (max-width: 991.98px) and (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-md-show,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show {
    box-shadow: 0 3px 4px 0 rgba(60, 75, 100, .14), 0 3px 3px -2px rgba(60, 75, 100, .12), 0 1px 8px 0 rgba(60, 75, 100, .20);
  }
}
@media (min-width: 768px) and (min-width: 992px) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-md-show.c-sidebar-fixed,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-fixed {
    border: 0;
    box-shadow: 0 2px 2px 0 rgba(var(--elevation-base-color), .14), 0 3px 1px -2px rgba(var(--elevation-base-color), .12), 0 1px 5px 0 rgba(var(--elevation-base-color), .20);
  }
}
@media (min-width: 768px) and (min-width: 992px) and (-ms-high-contrast: none), (min-width: 768px) and (min-width: 992px) and (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-md-show.c-sidebar-fixed,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-fixed {
    box-shadow: 0 2px 2px 0 rgba(60, 75, 100, .14), 0 3px 1px -2px rgba(60, 75, 100, .12), 0 1px 5px 0 rgba(60, 75, 100, .20);
  }
}
@media (min-width: 768px) and (min-width: 992px) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-md-show.c-sidebar-unfoldable,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-unfoldable {
    border: 0;
    box-shadow: 0 3px 4px 0 rgba(var(--elevation-base-color), .14), 0 3px 3px -2px rgba(var(--elevation-base-color), .12), 0 1px 8px 0 rgba(var(--elevation-base-color), .20);
  }
}
@media (min-width: 768px) and (min-width: 992px) and (-ms-high-contrast: none), (min-width: 768px) and (min-width: 992px) and (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-md-show.c-sidebar-unfoldable,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-unfoldable {
    box-shadow: 0 3px 4px 0 rgba(60, 75, 100, .14), 0 3px 3px -2px rgba(60, 75, 100, .12), 0 1px 8px 0 rgba(60, 75, 100, .20);
  }
}
@media (min-width: 768px) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-md-show.c-sidebar-overlaid,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-overlaid {
    border: 0;
    box-shadow: 0 3px 4px 0 rgba(var(--elevation-base-color), .14), 0 3px 3px -2px rgba(var(--elevation-base-color), .12), 0 1px 8px 0 rgba(var(--elevation-base-color), .20);
  }
}
@media (min-width: 768px) and (-ms-high-contrast: none), (min-width: 768px) and (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-md-show.c-sidebar-overlaid,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-overlaid {
    box-shadow: 0 3px 4px 0 rgba(60, 75, 100, .14), 0 3px 3px -2px rgba(60, 75, 100, .12), 0 1px 8px 0 rgba(60, 75, 100, .20);
  }
}
@media (min-width: 768px) {
  html:not([dir=rtl]) .c-sidebar.c-sidebar-md-show:not(.c-sidebar-right),
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right) {
    margin-left: 0;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-md-show:not(.c-sidebar-right),
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right) {
    margin-right: 0;
  }
}
@media (min-width: 768px) and (min-width: 992px) {
  html:not([dir=rtl]) .c-sidebar.c-sidebar-md-show:not(.c-sidebar-right).c-sidebar-fixed ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed ~ .c-wrapper {
    margin-left: 224px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-md-show:not(.c-sidebar-right).c-sidebar-fixed ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed ~ .c-wrapper {
    margin-right: 224px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-md-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper {
    margin-left: 192px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-md-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper {
    margin-right: 192px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-md-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper {
    margin-left: 320px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-md-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper {
    margin-right: 320px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-md-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper {
    margin-left: 384px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-md-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper {
    margin-right: 384px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-md-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper, html:not([dir=rtl]) .c-sidebar.c-sidebar-md-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper {
    margin-left: 56px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-md-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper, *[dir=rtl] .c-sidebar.c-sidebar-md-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper {
    margin-right: 56px;
  }
}
@media (min-width: 768px) {
  html:not([dir=rtl]) .c-sidebar.c-sidebar-md-show.c-sidebar-right,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right {
    margin-right: 0;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-md-show.c-sidebar-right,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right {
    margin-left: 0;
  }
}
@media (min-width: 768px) and (min-width: 992px) {
  html:not([dir=rtl]) .c-sidebar.c-sidebar-md-show.c-sidebar-right.c-sidebar-fixed ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed ~ .c-wrapper {
    margin-right: 224px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-md-show.c-sidebar-right.c-sidebar-fixed ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed ~ .c-wrapper {
    margin-left: 224px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-md-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper {
    margin-right: 192px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-md-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper {
    margin-left: 192px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-md-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper {
    margin-right: 320px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-md-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper {
    margin-left: 320px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-md-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper {
    margin-right: 384px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-md-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper {
    margin-left: 384px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-md-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper, html:not([dir=rtl]) .c-sidebar.c-sidebar-md-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper {
    margin-right: 56px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-md-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper, *[dir=rtl] .c-sidebar.c-sidebar-md-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper {
    margin-left: 56px;
  }
}
@media (min-width: 992px) and (max-width: 991.98px) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-lg-show,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show {
    border: 0;
    box-shadow: 0 3px 4px 0 rgba(var(--elevation-base-color), .14), 0 3px 3px -2px rgba(var(--elevation-base-color), .12), 0 1px 8px 0 rgba(var(--elevation-base-color), .20);
  }
}
@media (min-width: 992px) and (max-width: 991.98px) and (-ms-high-contrast: none), (min-width: 992px) and (max-width: 991.98px) and (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-lg-show,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show {
    box-shadow: 0 3px 4px 0 rgba(60, 75, 100, .14), 0 3px 3px -2px rgba(60, 75, 100, .12), 0 1px 8px 0 rgba(60, 75, 100, .20);
  }
}
@media (min-width: 992px) and (min-width: 992px) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-lg-show.c-sidebar-fixed,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-fixed {
    border: 0;
    box-shadow: 0 2px 2px 0 rgba(var(--elevation-base-color), .14), 0 3px 1px -2px rgba(var(--elevation-base-color), .12), 0 1px 5px 0 rgba(var(--elevation-base-color), .20);
  }
}
@media (min-width: 992px) and (min-width: 992px) and (-ms-high-contrast: none), (min-width: 992px) and (min-width: 992px) and (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-lg-show.c-sidebar-fixed,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-fixed {
    box-shadow: 0 2px 2px 0 rgba(60, 75, 100, .14), 0 3px 1px -2px rgba(60, 75, 100, .12), 0 1px 5px 0 rgba(60, 75, 100, .20);
  }
}
@media (min-width: 992px) and (min-width: 992px) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-lg-show.c-sidebar-unfoldable,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-unfoldable {
    border: 0;
    box-shadow: 0 3px 4px 0 rgba(var(--elevation-base-color), .14), 0 3px 3px -2px rgba(var(--elevation-base-color), .12), 0 1px 8px 0 rgba(var(--elevation-base-color), .20);
  }
}
@media (min-width: 992px) and (min-width: 992px) and (-ms-high-contrast: none), (min-width: 992px) and (min-width: 992px) and (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-lg-show.c-sidebar-unfoldable,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-unfoldable {
    box-shadow: 0 3px 4px 0 rgba(60, 75, 100, .14), 0 3px 3px -2px rgba(60, 75, 100, .12), 0 1px 8px 0 rgba(60, 75, 100, .20);
  }
}
@media (min-width: 992px) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-lg-show.c-sidebar-overlaid,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-overlaid {
    border: 0;
    box-shadow: 0 3px 4px 0 rgba(var(--elevation-base-color), .14), 0 3px 3px -2px rgba(var(--elevation-base-color), .12), 0 1px 8px 0 rgba(var(--elevation-base-color), .20);
  }
}
@media (min-width: 992px) and (-ms-high-contrast: none), (min-width: 992px) and (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-lg-show.c-sidebar-overlaid,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-overlaid {
    box-shadow: 0 3px 4px 0 rgba(60, 75, 100, .14), 0 3px 3px -2px rgba(60, 75, 100, .12), 0 1px 8px 0 rgba(60, 75, 100, .20);
  }
}
@media (min-width: 992px) {
  html:not([dir=rtl]) .c-sidebar.c-sidebar-lg-show:not(.c-sidebar-right),
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right) {
    margin-left: 0;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-lg-show:not(.c-sidebar-right),
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right) {
    margin-right: 0;
  }
}
@media (min-width: 992px) and (min-width: 992px) {
  html:not([dir=rtl]) .c-sidebar.c-sidebar-lg-show:not(.c-sidebar-right).c-sidebar-fixed ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed ~ .c-wrapper {
    margin-left: 224px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-lg-show:not(.c-sidebar-right).c-sidebar-fixed ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed ~ .c-wrapper {
    margin-right: 224px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-lg-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper {
    margin-left: 192px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-lg-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper {
    margin-right: 192px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-lg-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper {
    margin-left: 320px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-lg-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper {
    margin-right: 320px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-lg-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper {
    margin-left: 384px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-lg-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper {
    margin-right: 384px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-lg-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper, html:not([dir=rtl]) .c-sidebar.c-sidebar-lg-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper {
    margin-left: 56px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-lg-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper, *[dir=rtl] .c-sidebar.c-sidebar-lg-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper {
    margin-right: 56px;
  }
}
@media (min-width: 992px) {
  html:not([dir=rtl]) .c-sidebar.c-sidebar-lg-show.c-sidebar-right,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right {
    margin-right: 0;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-lg-show.c-sidebar-right,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right {
    margin-left: 0;
  }
}
@media (min-width: 992px) and (min-width: 992px) {
  html:not([dir=rtl]) .c-sidebar.c-sidebar-lg-show.c-sidebar-right.c-sidebar-fixed ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed ~ .c-wrapper {
    margin-right: 224px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-lg-show.c-sidebar-right.c-sidebar-fixed ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed ~ .c-wrapper {
    margin-left: 224px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-lg-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper {
    margin-right: 192px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-lg-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper {
    margin-left: 192px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-lg-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper {
    margin-right: 320px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-lg-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper {
    margin-left: 320px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-lg-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper {
    margin-right: 384px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-lg-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper {
    margin-left: 384px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-lg-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper, html:not([dir=rtl]) .c-sidebar.c-sidebar-lg-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper {
    margin-right: 56px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-lg-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper, *[dir=rtl] .c-sidebar.c-sidebar-lg-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper {
    margin-left: 56px;
  }
}
@media (min-width: 1200px) and (max-width: 991.98px) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-xl-show,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show {
    border: 0;
    box-shadow: 0 3px 4px 0 rgba(var(--elevation-base-color), .14), 0 3px 3px -2px rgba(var(--elevation-base-color), .12), 0 1px 8px 0 rgba(var(--elevation-base-color), .20);
  }
}
@media (min-width: 1200px) and (max-width: 991.98px) and (-ms-high-contrast: none), (min-width: 1200px) and (max-width: 991.98px) and (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-xl-show,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show {
    box-shadow: 0 3px 4px 0 rgba(60, 75, 100, .14), 0 3px 3px -2px rgba(60, 75, 100, .12), 0 1px 8px 0 rgba(60, 75, 100, .20);
  }
}
@media (min-width: 1200px) and (min-width: 992px) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-xl-show.c-sidebar-fixed,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-fixed {
    border: 0;
    box-shadow: 0 2px 2px 0 rgba(var(--elevation-base-color), .14), 0 3px 1px -2px rgba(var(--elevation-base-color), .12), 0 1px 5px 0 rgba(var(--elevation-base-color), .20);
  }
}
@media (min-width: 1200px) and (min-width: 992px) and (-ms-high-contrast: none), (min-width: 1200px) and (min-width: 992px) and (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-xl-show.c-sidebar-fixed,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-fixed {
    box-shadow: 0 2px 2px 0 rgba(60, 75, 100, .14), 0 3px 1px -2px rgba(60, 75, 100, .12), 0 1px 5px 0 rgba(60, 75, 100, .20);
  }
}
@media (min-width: 1200px) and (min-width: 992px) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-xl-show.c-sidebar-unfoldable,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-unfoldable {
    border: 0;
    box-shadow: 0 3px 4px 0 rgba(var(--elevation-base-color), .14), 0 3px 3px -2px rgba(var(--elevation-base-color), .12), 0 1px 8px 0 rgba(var(--elevation-base-color), .20);
  }
}
@media (min-width: 1200px) and (min-width: 992px) and (-ms-high-contrast: none), (min-width: 1200px) and (min-width: 992px) and (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-xl-show.c-sidebar-unfoldable,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-unfoldable {
    box-shadow: 0 3px 4px 0 rgba(60, 75, 100, .14), 0 3px 3px -2px rgba(60, 75, 100, .12), 0 1px 8px 0 rgba(60, 75, 100, .20);
  }
}
@media (min-width: 1200px) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-xl-show.c-sidebar-overlaid,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-overlaid {
    border: 0;
    box-shadow: 0 3px 4px 0 rgba(var(--elevation-base-color), .14), 0 3px 3px -2px rgba(var(--elevation-base-color), .12), 0 1px 8px 0 rgba(var(--elevation-base-color), .20);
  }
}
@media (min-width: 1200px) and (-ms-high-contrast: none), (min-width: 1200px) and (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-xl-show.c-sidebar-overlaid,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-overlaid {
    box-shadow: 0 3px 4px 0 rgba(60, 75, 100, .14), 0 3px 3px -2px rgba(60, 75, 100, .12), 0 1px 8px 0 rgba(60, 75, 100, .20);
  }
}
@media (min-width: 1200px) {
  html:not([dir=rtl]) .c-sidebar.c-sidebar-xl-show:not(.c-sidebar-right),
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right) {
    margin-left: 0;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-xl-show:not(.c-sidebar-right),
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right) {
    margin-right: 0;
  }
}
@media (min-width: 1200px) and (min-width: 992px) {
  html:not([dir=rtl]) .c-sidebar.c-sidebar-xl-show:not(.c-sidebar-right).c-sidebar-fixed ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed ~ .c-wrapper {
    margin-left: 224px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-xl-show:not(.c-sidebar-right).c-sidebar-fixed ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed ~ .c-wrapper {
    margin-right: 224px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-xl-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper {
    margin-left: 192px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-xl-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper {
    margin-right: 192px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-xl-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper {
    margin-left: 320px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-xl-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper {
    margin-right: 320px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-xl-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper {
    margin-left: 384px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-xl-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper {
    margin-right: 384px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-xl-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper, html:not([dir=rtl]) .c-sidebar.c-sidebar-xl-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper {
    margin-left: 56px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-xl-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper, *[dir=rtl] .c-sidebar.c-sidebar-xl-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper {
    margin-right: 56px;
  }
}
@media (min-width: 1200px) {
  html:not([dir=rtl]) .c-sidebar.c-sidebar-xl-show.c-sidebar-right,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right {
    margin-right: 0;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-xl-show.c-sidebar-right,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right {
    margin-left: 0;
  }
}
@media (min-width: 1200px) and (min-width: 992px) {
  html:not([dir=rtl]) .c-sidebar.c-sidebar-xl-show.c-sidebar-right.c-sidebar-fixed ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed ~ .c-wrapper {
    margin-right: 224px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-xl-show.c-sidebar-right.c-sidebar-fixed ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed ~ .c-wrapper {
    margin-left: 224px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-xl-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper {
    margin-right: 192px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-xl-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper {
    margin-left: 192px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-xl-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper {
    margin-right: 320px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-xl-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper {
    margin-left: 320px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-xl-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper {
    margin-right: 384px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-xl-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper {
    margin-left: 384px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-xl-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper, html:not([dir=rtl]) .c-sidebar.c-sidebar-xl-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper {
    margin-right: 56px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-xl-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper, *[dir=rtl] .c-sidebar.c-sidebar-xl-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper {
    margin-left: 56px;
  }
}
@media (min-width: 1400px) and (max-width: 991.98px) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-xxl-show,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show {
    border: 0;
    box-shadow: 0 3px 4px 0 rgba(var(--elevation-base-color), .14), 0 3px 3px -2px rgba(var(--elevation-base-color), .12), 0 1px 8px 0 rgba(var(--elevation-base-color), .20);
  }
}
@media (min-width: 1400px) and (max-width: 991.98px) and (-ms-high-contrast: none), (min-width: 1400px) and (max-width: 991.98px) and (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-xxl-show,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show {
    box-shadow: 0 3px 4px 0 rgba(60, 75, 100, .14), 0 3px 3px -2px rgba(60, 75, 100, .12), 0 1px 8px 0 rgba(60, 75, 100, .20);
  }
}
@media (min-width: 1400px) and (min-width: 992px) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-xxl-show.c-sidebar-fixed,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-fixed {
    border: 0;
    box-shadow: 0 2px 2px 0 rgba(var(--elevation-base-color), .14), 0 3px 1px -2px rgba(var(--elevation-base-color), .12), 0 1px 5px 0 rgba(var(--elevation-base-color), .20);
  }
}
@media (min-width: 1400px) and (min-width: 992px) and (-ms-high-contrast: none), (min-width: 1400px) and (min-width: 992px) and (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-xxl-show.c-sidebar-fixed,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-fixed {
    box-shadow: 0 2px 2px 0 rgba(60, 75, 100, .14), 0 3px 1px -2px rgba(60, 75, 100, .12), 0 1px 5px 0 rgba(60, 75, 100, .20);
  }
}
@media (min-width: 1400px) and (min-width: 992px) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-xxl-show.c-sidebar-unfoldable,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-unfoldable {
    border: 0;
    box-shadow: 0 3px 4px 0 rgba(var(--elevation-base-color), .14), 0 3px 3px -2px rgba(var(--elevation-base-color), .12), 0 1px 8px 0 rgba(var(--elevation-base-color), .20);
  }
}
@media (min-width: 1400px) and (min-width: 992px) and (-ms-high-contrast: none), (min-width: 1400px) and (min-width: 992px) and (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-xxl-show.c-sidebar-unfoldable,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-unfoldable {
    box-shadow: 0 3px 4px 0 rgba(60, 75, 100, .14), 0 3px 3px -2px rgba(60, 75, 100, .12), 0 1px 8px 0 rgba(60, 75, 100, .20);
  }
}
@media (min-width: 1400px) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-xxl-show.c-sidebar-overlaid,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-overlaid {
    border: 0;
    box-shadow: 0 3px 4px 0 rgba(var(--elevation-base-color), .14), 0 3px 3px -2px rgba(var(--elevation-base-color), .12), 0 1px 8px 0 rgba(var(--elevation-base-color), .20);
  }
}
@media (min-width: 1400px) and (-ms-high-contrast: none), (min-width: 1400px) and (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-xxl-show.c-sidebar-overlaid,
.c-app:not(.c-legacy-theme) .c-sidebar.c-sidebar-show.c-sidebar-overlaid {
    box-shadow: 0 3px 4px 0 rgba(60, 75, 100, .14), 0 3px 3px -2px rgba(60, 75, 100, .12), 0 1px 8px 0 rgba(60, 75, 100, .20);
  }
}
@media (min-width: 1400px) {
  html:not([dir=rtl]) .c-sidebar.c-sidebar-xxl-show:not(.c-sidebar-right),
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right) {
    margin-left: 0;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-xxl-show:not(.c-sidebar-right),
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right) {
    margin-right: 0;
  }
}
@media (min-width: 1400px) and (min-width: 992px) {
  html:not([dir=rtl]) .c-sidebar.c-sidebar-xxl-show:not(.c-sidebar-right).c-sidebar-fixed ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed ~ .c-wrapper {
    margin-left: 224px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-xxl-show:not(.c-sidebar-right).c-sidebar-fixed ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed ~ .c-wrapper {
    margin-right: 224px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-xxl-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper {
    margin-left: 192px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-xxl-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper {
    margin-right: 192px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-xxl-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper {
    margin-left: 320px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-xxl-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper {
    margin-right: 320px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-xxl-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper {
    margin-left: 384px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-xxl-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper {
    margin-right: 384px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-xxl-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper, html:not([dir=rtl]) .c-sidebar.c-sidebar-xxl-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper {
    margin-left: 56px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-xxl-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper, *[dir=rtl] .c-sidebar.c-sidebar-xxl-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show:not(.c-sidebar-right).c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper {
    margin-right: 56px;
  }
}
@media (min-width: 1400px) {
  html:not([dir=rtl]) .c-sidebar.c-sidebar-xxl-show.c-sidebar-right,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right {
    margin-right: 0;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-xxl-show.c-sidebar-right,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right {
    margin-left: 0;
  }
}
@media (min-width: 1400px) and (min-width: 992px) {
  html:not([dir=rtl]) .c-sidebar.c-sidebar-xxl-show.c-sidebar-right.c-sidebar-fixed ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed ~ .c-wrapper {
    margin-right: 224px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-xxl-show.c-sidebar-right.c-sidebar-fixed ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed ~ .c-wrapper {
    margin-left: 224px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-xxl-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper {
    margin-right: 192px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-xxl-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-sm ~ .c-wrapper {
    margin-left: 192px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-xxl-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper {
    margin-right: 320px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-xxl-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-lg ~ .c-wrapper {
    margin-left: 320px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-xxl-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper {
    margin-right: 384px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-xxl-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-xl ~ .c-wrapper {
    margin-left: 384px;
  }
  html:not([dir=rtl]) .c-sidebar.c-sidebar-xxl-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper, html:not([dir=rtl]) .c-sidebar.c-sidebar-xxl-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper,
html:not([dir=rtl]) .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper {
    margin-right: 56px;
  }
  *[dir=rtl] .c-sidebar.c-sidebar-xxl-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper, *[dir=rtl] .c-sidebar.c-sidebar-xxl-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-minimized ~ .c-wrapper,
*[dir=rtl] .c-sidebar.c-sidebar-show.c-sidebar-right.c-sidebar-fixed.c-sidebar-unfoldable ~ .c-wrapper {
    margin-left: 56px;
  }
}
.c-sidebar {
  color: #fff;
  background: #3c4b64;
}
*[dir=rtl] .c-sidebar.c-sidebar-right {
  border: 0;
}
.c-sidebar .c-sidebar-close {
  color: #fff;
}
.c-sidebar .c-sidebar-brand {
  color: #fff;
  background: rgba(0, 0, 21, 0.2);
}
.c-sidebar .c-sidebar-header {
  background: rgba(0, 0, 21, 0.2);
}
.c-sidebar .c-sidebar-form .c-form-control {
  color: #fff;
  background: rgba(0, 0, 21, 0.1);
  border: 0;
}
.c-sidebar .c-sidebar-form .c-form-control::-moz-placeholder {
  color: rgba(255, 255, 255, 0.7);
}
.c-sidebar .c-sidebar-form .c-form-control:-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.7);
}
.c-sidebar .c-sidebar-form .c-form-control::placeholder {
  color: rgba(255, 255, 255, 0.7);
}
.c-sidebar .c-sidebar-nav-title {
  color: rgba(255, 255, 255, 0.6);
}
.c-sidebar .c-sidebar-nav-link, .c-sidebar .c-sidebar-nav-dropdown-toggle {
  color: rgba(255, 255, 255, 0.8);
  background: transparent;
}
.c-sidebar .c-sidebar-nav-link .c-sidebar-nav-icon, .c-sidebar .c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.5);
}
.c-sidebar .c-sidebar-nav-link.c-active, .c-sidebar .c-active.c-sidebar-nav-dropdown-toggle {
  color: #fff;
  background: rgba(255, 255, 255, 0.05);
}
.c-sidebar .c-sidebar-nav-link.c-active .c-sidebar-nav-icon, .c-sidebar .c-active.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: #fff;
}
.c-sidebar .c-sidebar-nav-link:focus, .c-sidebar .c-sidebar-nav-dropdown-toggle:focus {
  outline: none;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-sidebar .c-sidebar-nav-link:hover, .c-sidebar .c-sidebar-nav-dropdown-toggle:hover {
    color: #fff;
    background: #321fdb;
  }
  .c-sidebar .c-sidebar-nav-link:hover .c-sidebar-nav-icon, .c-sidebar .c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
    color: #fff;
  }
  .c-sidebar .c-sidebar-nav-link:hover.c-sidebar-nav-dropdown-toggle::after, .c-sidebar :hover.c-sidebar-nav-dropdown-toggle::after {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'%3E%3Cpath fill='%23fff' d='M9.148 2.352l-4.148 4.148 4.148 4.148q0.148 0.148 0.148 0.352t-0.148 0.352l-1.297 1.297q-0.148 0.148-0.352 0.148t-0.352-0.148l-5.797-5.797q-0.148-0.148-0.148-0.352t0.148-0.352l5.797-5.797q0.148-0.148 0.352-0.148t0.352 0.148l1.297 1.297q0.148 0.148 0.148 0.352t-0.148 0.352z'/%3E%3C/svg%3E");
  }
}
.c-sidebar .c-sidebar-nav-link.c-disabled, .c-sidebar .c-disabled.c-sidebar-nav-dropdown-toggle {
  color: #b3b3b3;
  background: transparent;
}
.c-sidebar .c-sidebar-nav-link.c-disabled .c-sidebar-nav-icon, .c-sidebar .c-disabled.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.5);
}
.c-sidebar .c-sidebar-nav-link.c-disabled:hover, .c-sidebar .c-disabled.c-sidebar-nav-dropdown-toggle:hover {
  color: #b3b3b3;
}
.c-sidebar .c-sidebar-nav-link.c-disabled:hover .c-sidebar-nav-icon, .c-sidebar .c-disabled.c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.5);
}
.c-sidebar .c-sidebar-nav-link.c-disabled:hover.c-sidebar-nav-dropdown-toggle::after, .c-sidebar .c-disabled:hover.c-sidebar-nav-dropdown-toggle::after {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'%3E%3Cpath fill='%23fff' d='M9.148 2.352l-4.148 4.148 4.148 4.148q0.148 0.148 0.148 0.352t-0.148 0.352l-1.297 1.297q-0.148 0.148-0.352 0.148t-0.352-0.148l-5.797-5.797q-0.148-0.148-0.148-0.352t0.148-0.352l5.797-5.797q0.148-0.148 0.352-0.148t0.352 0.148l1.297 1.297q0.148 0.148 0.148 0.352t-0.148 0.352z'/%3E%3C/svg%3E");
}
.c-sidebar .c-sidebar-nav-dropdown-toggle {
  position: relative;
}
.c-sidebar .c-sidebar-nav-dropdown-toggle::after {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'%3E%3Cpath fill='rgba(255, 255, 255, 0.5)' d='M9.148 2.352l-4.148 4.148 4.148 4.148q0.148 0.148 0.148 0.352t-0.148 0.352l-1.297 1.297q-0.148 0.148-0.352 0.148t-0.352-0.148l-5.797-5.797q-0.148-0.148-0.148-0.352t0.148-0.352l5.797-5.797q0.148-0.148 0.352-0.148t0.352 0.148l1.297 1.297q0.148 0.148 0.148 0.352t-0.148 0.352z'/%3E%3C/svg%3E");
}
.c-sidebar .c-sidebar-nav-dropdown.c-show {
  background: rgba(0, 0, 0, 0.2);
}
.c-sidebar .c-sidebar-nav-dropdown.c-show .c-sidebar-nav-link, .c-sidebar .c-sidebar-nav-dropdown.c-show .c-sidebar-nav-dropdown-toggle {
  color: #fff;
}
.c-sidebar .c-sidebar-nav-dropdown.c-show .c-sidebar-nav-link.c-disabled, .c-sidebar .c-sidebar-nav-dropdown.c-show .c-disabled.c-sidebar-nav-dropdown-toggle {
  color: #b3b3b3;
  background: transparent;
}
.c-sidebar .c-sidebar-nav-dropdown.c-show .c-sidebar-nav-link.c-disabled:hover, .c-sidebar .c-sidebar-nav-dropdown.c-show .c-disabled.c-sidebar-nav-dropdown-toggle:hover {
  color: #b3b3b3;
}
.c-sidebar .c-sidebar-nav-dropdown.c-show .c-sidebar-nav-link.c-disabled:hover .c-sidebar-nav-icon, .c-sidebar .c-sidebar-nav-dropdown.c-show .c-disabled.c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.5);
}
.c-sidebar .c-sidebar-nav-label {
  color: rgba(255, 255, 255, 0.6);
}
.c-sidebar .c-sidebar-nav-label:hover {
  color: #fff;
}
.c-sidebar .c-sidebar-nav-label .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.5);
}
.c-sidebar .c-progress {
  background-color: #596f94 !important;
}
.c-sidebar .c-sidebar-footer {
  background: rgba(0, 0, 21, 0.2);
}
.c-sidebar .c-sidebar-minimizer {
  background-color: rgba(0, 0, 21, 0.2);
}
.c-sidebar .c-sidebar-minimizer::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'%3E%3Cpath fill='%238a93a2' d='M9.148 2.352l-4.148 4.148 4.148 4.148q0.148 0.148 0.148 0.352t-0.148 0.352l-1.297 1.297q-0.148 0.148-0.352 0.148t-0.352-0.148l-5.797-5.797q-0.148-0.148-0.148-0.352t0.148-0.352l5.797-5.797q0.148-0.148 0.352-0.148t0.352 0.148l1.297 1.297q0.148 0.148 0.148 0.352t-0.148 0.352z'/%3E%3C/svg%3E");
}
.c-sidebar .c-sidebar-minimizer:focus, .c-sidebar .c-sidebar-minimizer.c-focus {
  outline: 0;
}
.c-sidebar .c-sidebar-minimizer:hover {
  background-color: rgba(0, 0, 0, 0.3);
}
.c-sidebar .c-sidebar-minimizer:hover::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'%3E%3Cpath fill='%23fff' d='M9.148 2.352l-4.148 4.148 4.148 4.148q0.148 0.148 0.148 0.352t-0.148 0.352l-1.297 1.297q-0.148 0.148-0.352 0.148t-0.352-0.148l-5.797-5.797q-0.148-0.148-0.148-0.352t0.148-0.352l5.797-5.797q0.148-0.148 0.352-0.148t0.352 0.148l1.297 1.297q0.148 0.148 0.148 0.352t-0.148 0.352z'/%3E%3C/svg%3E");
}
.c-sidebar.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-sidebar-nav-link, .c-sidebar.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-sidebar-nav-dropdown-toggle {
  background: #321fdb;
}
.c-sidebar.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-sidebar-nav-link .c-sidebar-nav-icon, .c-sidebar.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: #fff;
}
.c-sidebar.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-sidebar-nav-link.c-disabled, .c-sidebar.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-disabled.c-sidebar-nav-dropdown-toggle {
  background: #3c4b64;
}
.c-sidebar.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-sidebar-nav-link.c-disabled .c-sidebar-nav-icon, .c-sidebar.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-disabled.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.5);
}
.c-sidebar.c-sidebar-minimized .c-sidebar-nav > .c-sidebar-nav-dropdown > .c-sidebar-nav-dropdown-items {
  background: #3c4b64;
}
.c-sidebar.c-sidebar-minimized .c-sidebar-nav > .c-sidebar-nav-dropdown:hover {
  background: #321fdb;
}
.c-sidebar.c-sidebar-light {
  color: #3c4b64;
  background: #fff;
  border-right: 1px solid rgba(159, 167, 179, 0.5);
}
html:not([dir=rtl]) .c-sidebar.c-sidebar-light.c-sidebar-right {
  border-right: 0;
  border-left: 1px solid rgba(159, 167, 179, 0.5);
}
*[dir=rtl] .c-sidebar.c-sidebar-light {
  border-right: 0;
  border-left: 1px solid rgba(159, 167, 179, 0.5);
}
*[dir=rtl] .c-sidebar.c-sidebar-light.c-sidebar-right {
  border: 0;
  border-right: 1px solid rgba(159, 167, 179, 0.5);
}
.c-sidebar.c-sidebar-light .c-sidebar-close {
  color: #3c4b64;
}
.c-sidebar.c-sidebar-light .c-sidebar-brand {
  color: #fff;
  background: #321fdb;
}
.c-sidebar.c-sidebar-light .c-sidebar-header {
  background: rgba(0, 0, 21, 0.2);
}
.c-sidebar.c-sidebar-light .c-sidebar-form .c-form-control {
  color: #fff;
  background: rgba(0, 0, 21, 0.1);
  border: 0;
}
.c-sidebar.c-sidebar-light .c-sidebar-form .c-form-control::-moz-placeholder {
  color: rgba(255, 255, 255, 0.7);
}
.c-sidebar.c-sidebar-light .c-sidebar-form .c-form-control:-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.7);
}
.c-sidebar.c-sidebar-light .c-sidebar-form .c-form-control::placeholder {
  color: rgba(255, 255, 255, 0.7);
}
.c-sidebar.c-sidebar-light .c-sidebar-nav-title {
  color: rgba(0, 0, 21, 0.4);
}
.c-sidebar.c-sidebar-light .c-sidebar-nav-link, .c-sidebar.c-sidebar-light .c-sidebar-nav-dropdown-toggle {
  color: rgba(0, 0, 21, 0.8);
  background: transparent;
}
.c-sidebar.c-sidebar-light .c-sidebar-nav-link .c-sidebar-nav-icon, .c-sidebar.c-sidebar-light .c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(0, 0, 21, 0.5);
}
.c-sidebar.c-sidebar-light .c-sidebar-nav-link.c-active, .c-sidebar.c-sidebar-light .c-active.c-sidebar-nav-dropdown-toggle {
  color: rgba(0, 0, 21, 0.8);
  background: rgba(0, 0, 21, 0.05);
}
.c-sidebar.c-sidebar-light .c-sidebar-nav-link.c-active .c-sidebar-nav-icon, .c-sidebar.c-sidebar-light .c-active.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: #321fdb;
}
.c-sidebar.c-sidebar-light .c-sidebar-nav-link:focus, .c-sidebar.c-sidebar-light .c-sidebar-nav-dropdown-toggle:focus {
  outline: none;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-sidebar.c-sidebar-light .c-sidebar-nav-link:hover, .c-sidebar.c-sidebar-light .c-sidebar-nav-dropdown-toggle:hover {
    color: #fff;
    background: #321fdb;
  }
  .c-sidebar.c-sidebar-light .c-sidebar-nav-link:hover .c-sidebar-nav-icon, .c-sidebar.c-sidebar-light .c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
    color: #fff;
  }
  .c-sidebar.c-sidebar-light .c-sidebar-nav-link:hover.c-sidebar-nav-dropdown-toggle::after, .c-sidebar.c-sidebar-light :hover.c-sidebar-nav-dropdown-toggle::after {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'%3E%3Cpath fill='%23fff' d='M9.148 2.352l-4.148 4.148 4.148 4.148q0.148 0.148 0.148 0.352t-0.148 0.352l-1.297 1.297q-0.148 0.148-0.352 0.148t-0.352-0.148l-5.797-5.797q-0.148-0.148-0.148-0.352t0.148-0.352l5.797-5.797q0.148-0.148 0.352-0.148t0.352 0.148l1.297 1.297q0.148 0.148 0.148 0.352t-0.148 0.352z'/%3E%3C/svg%3E");
  }
}
.c-sidebar.c-sidebar-light .c-sidebar-nav-link.c-disabled, .c-sidebar.c-sidebar-light .c-disabled.c-sidebar-nav-dropdown-toggle {
  color: #b3b3b3;
  background: transparent;
}
.c-sidebar.c-sidebar-light .c-sidebar-nav-link.c-disabled .c-sidebar-nav-icon, .c-sidebar.c-sidebar-light .c-disabled.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(0, 0, 21, 0.5);
}
.c-sidebar.c-sidebar-light .c-sidebar-nav-link.c-disabled:hover, .c-sidebar.c-sidebar-light .c-disabled.c-sidebar-nav-dropdown-toggle:hover {
  color: #b3b3b3;
}
.c-sidebar.c-sidebar-light .c-sidebar-nav-link.c-disabled:hover .c-sidebar-nav-icon, .c-sidebar.c-sidebar-light .c-disabled.c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
  color: rgba(0, 0, 21, 0.5);
}
.c-sidebar.c-sidebar-light .c-sidebar-nav-link.c-disabled:hover.c-sidebar-nav-dropdown-toggle::after, .c-sidebar.c-sidebar-light .c-disabled:hover.c-sidebar-nav-dropdown-toggle::after {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'%3E%3Cpath fill='%23fff' d='M9.148 2.352l-4.148 4.148 4.148 4.148q0.148 0.148 0.148 0.352t-0.148 0.352l-1.297 1.297q-0.148 0.148-0.352 0.148t-0.352-0.148l-5.797-5.797q-0.148-0.148-0.148-0.352t0.148-0.352l5.797-5.797q0.148-0.148 0.352-0.148t0.352 0.148l1.297 1.297q0.148 0.148 0.148 0.352t-0.148 0.352z'/%3E%3C/svg%3E");
}
.c-sidebar.c-sidebar-light .c-sidebar-nav-dropdown-toggle {
  position: relative;
}
.c-sidebar.c-sidebar-light .c-sidebar-nav-dropdown-toggle::after {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'%3E%3Cpath fill='rgba(0, 0, 21, 0.5)' d='M9.148 2.352l-4.148 4.148 4.148 4.148q0.148 0.148 0.148 0.352t-0.148 0.352l-1.297 1.297q-0.148 0.148-0.352 0.148t-0.352-0.148l-5.797-5.797q-0.148-0.148-0.148-0.352t0.148-0.352l5.797-5.797q0.148-0.148 0.352-0.148t0.352 0.148l1.297 1.297q0.148 0.148 0.148 0.352t-0.148 0.352z'/%3E%3C/svg%3E");
}
.c-sidebar.c-sidebar-light .c-sidebar-nav-dropdown.c-show {
  background: rgba(0, 0, 0, 0.05);
}
.c-sidebar.c-sidebar-light .c-sidebar-nav-dropdown.c-show .c-sidebar-nav-link, .c-sidebar.c-sidebar-light .c-sidebar-nav-dropdown.c-show .c-sidebar-nav-dropdown-toggle {
  color: rgba(0, 0, 21, 0.8);
}
.c-sidebar.c-sidebar-light .c-sidebar-nav-dropdown.c-show .c-sidebar-nav-link.c-disabled, .c-sidebar.c-sidebar-light .c-sidebar-nav-dropdown.c-show .c-disabled.c-sidebar-nav-dropdown-toggle {
  color: #b3b3b3;
  background: transparent;
}
.c-sidebar.c-sidebar-light .c-sidebar-nav-dropdown.c-show .c-sidebar-nav-link.c-disabled:hover, .c-sidebar.c-sidebar-light .c-sidebar-nav-dropdown.c-show .c-disabled.c-sidebar-nav-dropdown-toggle:hover {
  color: #b3b3b3;
}
.c-sidebar.c-sidebar-light .c-sidebar-nav-dropdown.c-show .c-sidebar-nav-link.c-disabled:hover .c-sidebar-nav-icon, .c-sidebar.c-sidebar-light .c-sidebar-nav-dropdown.c-show .c-disabled.c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
  color: rgba(0, 0, 21, 0.5);
}
.c-sidebar.c-sidebar-light .c-sidebar-nav-label {
  color: rgba(0, 0, 21, 0.4);
}
.c-sidebar.c-sidebar-light .c-sidebar-nav-label:hover {
  color: #3c4b64;
}
.c-sidebar.c-sidebar-light .c-sidebar-nav-label .c-sidebar-nav-icon {
  color: rgba(0, 0, 21, 0.5);
}
.c-sidebar.c-sidebar-light .c-sidebar-footer {
  background: rgba(0, 0, 21, 0.2);
}
.c-sidebar.c-sidebar-light .c-sidebar-minimizer {
  background-color: rgba(0, 0, 0, 0.05);
}
.c-sidebar.c-sidebar-light .c-sidebar-minimizer::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'%3E%3Cpath fill='%238a93a2' d='M9.148 2.352l-4.148 4.148 4.148 4.148q0.148 0.148 0.148 0.352t-0.148 0.352l-1.297 1.297q-0.148 0.148-0.352 0.148t-0.352-0.148l-5.797-5.797q-0.148-0.148-0.148-0.352t0.148-0.352l5.797-5.797q0.148-0.148 0.352-0.148t0.352 0.148l1.297 1.297q0.148 0.148 0.148 0.352t-0.148 0.352z'/%3E%3C/svg%3E");
}
.c-sidebar.c-sidebar-light .c-sidebar-minimizer:focus, .c-sidebar.c-sidebar-light .c-sidebar-minimizer.c-focus {
  outline: 0;
}
.c-sidebar.c-sidebar-light .c-sidebar-minimizer:hover {
  background-color: rgba(0, 0, 0, 0.1);
}
.c-sidebar.c-sidebar-light .c-sidebar-minimizer:hover::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'%3E%3Cpath fill='%23768192' d='M9.148 2.352l-4.148 4.148 4.148 4.148q0.148 0.148 0.148 0.352t-0.148 0.352l-1.297 1.297q-0.148 0.148-0.352 0.148t-0.352-0.148l-5.797-5.797q-0.148-0.148-0.148-0.352t0.148-0.352l5.797-5.797q0.148-0.148 0.352-0.148t0.352 0.148l1.297 1.297q0.148 0.148 0.148 0.352t-0.148 0.352z'/%3E%3C/svg%3E");
}
.c-sidebar.c-sidebar-light.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-sidebar-nav-link, .c-sidebar.c-sidebar-light.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-sidebar-nav-dropdown-toggle {
  background: #321fdb;
}
.c-sidebar.c-sidebar-light.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-sidebar-nav-link .c-sidebar-nav-icon, .c-sidebar.c-sidebar-light.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: #fff;
}
.c-sidebar.c-sidebar-light.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-sidebar-nav-link.c-disabled, .c-sidebar.c-sidebar-light.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-disabled.c-sidebar-nav-dropdown-toggle {
  background: #fff;
}
.c-sidebar.c-sidebar-light.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-sidebar-nav-link.c-disabled .c-sidebar-nav-icon, .c-sidebar.c-sidebar-light.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-disabled.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(0, 0, 21, 0.5);
}
.c-sidebar.c-sidebar-light.c-sidebar-minimized .c-sidebar-nav > .c-sidebar-nav-dropdown > .c-sidebar-nav-dropdown-items {
  background: #fff;
}
.c-sidebar.c-sidebar-light.c-sidebar-minimized .c-sidebar-nav > .c-sidebar-nav-dropdown:hover {
  background: #321fdb;
}
.c-legacy-theme .c-sidebar {
  color: #fff;
  background: #2f353a;
}
*[dir=rtl] .c-legacy-theme .c-sidebar.c-sidebar-right {
  border: 0;
}
.c-legacy-theme .c-sidebar .c-sidebar-close {
  color: #fff;
}
.c-legacy-theme .c-sidebar .c-sidebar-brand {
  color: #23282c;
  background: #fff;
}
.c-legacy-theme .c-sidebar .c-sidebar-header {
  background: rgba(0, 0, 0, 0.2);
}
.c-legacy-theme .c-sidebar .c-sidebar-form .c-form-control {
  color: #fff;
  background: rgba(0, 0, 0, 0.1);
  border: 0;
}
.c-legacy-theme .c-sidebar .c-sidebar-form .c-form-control::-moz-placeholder {
  color: rgba(255, 255, 255, 0.7);
}
.c-legacy-theme .c-sidebar .c-sidebar-form .c-form-control:-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.7);
}
.c-legacy-theme .c-sidebar .c-sidebar-form .c-form-control::placeholder {
  color: rgba(255, 255, 255, 0.7);
}
.c-legacy-theme .c-sidebar .c-sidebar-nav-title {
  color: rgba(255, 255, 255, 0.6);
}
.c-legacy-theme .c-sidebar .c-sidebar-nav-link, .c-legacy-theme .c-sidebar .c-sidebar-nav-dropdown-toggle {
  color: rgba(255, 255, 255, 0.8);
  background: transparent;
}
.c-legacy-theme .c-sidebar .c-sidebar-nav-link .c-sidebar-nav-icon, .c-legacy-theme .c-sidebar .c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.5);
}
.c-legacy-theme .c-sidebar .c-sidebar-nav-link.c-active, .c-legacy-theme .c-sidebar .c-active.c-sidebar-nav-dropdown-toggle {
  color: #fff;
  background: rgba(255, 255, 255, 0.05);
}
.c-legacy-theme .c-sidebar .c-sidebar-nav-link.c-active .c-sidebar-nav-icon, .c-legacy-theme .c-sidebar .c-active.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: #fff;
}
.c-legacy-theme .c-sidebar .c-sidebar-nav-link:focus, .c-legacy-theme .c-sidebar .c-sidebar-nav-dropdown-toggle:focus {
  outline: none;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-legacy-theme .c-sidebar .c-sidebar-nav-link:hover, .c-legacy-theme .c-sidebar .c-sidebar-nav-dropdown-toggle:hover {
    color: #fff;
    background: #20a8d8;
  }
  .c-legacy-theme .c-sidebar .c-sidebar-nav-link:hover .c-sidebar-nav-icon, .c-legacy-theme .c-sidebar .c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
    color: #fff;
  }
  .c-legacy-theme .c-sidebar .c-sidebar-nav-link:hover.c-sidebar-nav-dropdown-toggle::after, .c-legacy-theme .c-sidebar :hover.c-sidebar-nav-dropdown-toggle::after {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'%3E%3Cpath fill='%23fff' d='M9.148 2.352l-4.148 4.148 4.148 4.148q0.148 0.148 0.148 0.352t-0.148 0.352l-1.297 1.297q-0.148 0.148-0.352 0.148t-0.352-0.148l-5.797-5.797q-0.148-0.148-0.148-0.352t0.148-0.352l5.797-5.797q0.148-0.148 0.352-0.148t0.352 0.148l1.297 1.297q0.148 0.148 0.148 0.352t-0.148 0.352z'/%3E%3C/svg%3E");
  }
}
.c-legacy-theme .c-sidebar .c-sidebar-nav-link.c-disabled, .c-legacy-theme .c-sidebar .c-disabled.c-sidebar-nav-dropdown-toggle {
  color: #b3b3b3;
  background: transparent;
}
.c-legacy-theme .c-sidebar .c-sidebar-nav-link.c-disabled .c-sidebar-nav-icon, .c-legacy-theme .c-sidebar .c-disabled.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.5);
}
.c-legacy-theme .c-sidebar .c-sidebar-nav-link.c-disabled:hover, .c-legacy-theme .c-sidebar .c-disabled.c-sidebar-nav-dropdown-toggle:hover {
  color: #b3b3b3;
}
.c-legacy-theme .c-sidebar .c-sidebar-nav-link.c-disabled:hover .c-sidebar-nav-icon, .c-legacy-theme .c-sidebar .c-disabled.c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.5);
}
.c-legacy-theme .c-sidebar .c-sidebar-nav-link.c-disabled:hover.c-sidebar-nav-dropdown-toggle::after, .c-legacy-theme .c-sidebar .c-disabled:hover.c-sidebar-nav-dropdown-toggle::after {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'%3E%3Cpath fill='%23fff' d='M9.148 2.352l-4.148 4.148 4.148 4.148q0.148 0.148 0.148 0.352t-0.148 0.352l-1.297 1.297q-0.148 0.148-0.352 0.148t-0.352-0.148l-5.797-5.797q-0.148-0.148-0.148-0.352t0.148-0.352l5.797-5.797q0.148-0.148 0.352-0.148t0.352 0.148l1.297 1.297q0.148 0.148 0.148 0.352t-0.148 0.352z'/%3E%3C/svg%3E");
}
.c-legacy-theme .c-sidebar .c-sidebar-nav-dropdown-toggle {
  position: relative;
}
.c-legacy-theme .c-sidebar .c-sidebar-nav-dropdown-toggle::after {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'%3E%3Cpath fill='rgba(255, 255, 255, 0.5)' d='M9.148 2.352l-4.148 4.148 4.148 4.148q0.148 0.148 0.148 0.352t-0.148 0.352l-1.297 1.297q-0.148 0.148-0.352 0.148t-0.352-0.148l-5.797-5.797q-0.148-0.148-0.148-0.352t0.148-0.352l5.797-5.797q0.148-0.148 0.352-0.148t0.352 0.148l1.297 1.297q0.148 0.148 0.148 0.352t-0.148 0.352z'/%3E%3C/svg%3E");
}
.c-legacy-theme .c-sidebar .c-sidebar-nav-dropdown.c-show {
  background: rgba(0, 0, 0, 0.2);
}
.c-legacy-theme .c-sidebar .c-sidebar-nav-dropdown.c-show .c-sidebar-nav-link, .c-legacy-theme .c-sidebar .c-sidebar-nav-dropdown.c-show .c-sidebar-nav-dropdown-toggle {
  color: #fff;
}
.c-legacy-theme .c-sidebar .c-sidebar-nav-dropdown.c-show .c-sidebar-nav-link.c-disabled, .c-legacy-theme .c-sidebar .c-sidebar-nav-dropdown.c-show .c-disabled.c-sidebar-nav-dropdown-toggle {
  color: #b3b3b3;
  background: transparent;
}
.c-legacy-theme .c-sidebar .c-sidebar-nav-dropdown.c-show .c-sidebar-nav-link.c-disabled:hover, .c-legacy-theme .c-sidebar .c-sidebar-nav-dropdown.c-show .c-disabled.c-sidebar-nav-dropdown-toggle:hover {
  color: #b3b3b3;
}
.c-legacy-theme .c-sidebar .c-sidebar-nav-dropdown.c-show .c-sidebar-nav-link.c-disabled:hover .c-sidebar-nav-icon, .c-legacy-theme .c-sidebar .c-sidebar-nav-dropdown.c-show .c-disabled.c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.5);
}
.c-legacy-theme .c-sidebar .c-sidebar-nav-label {
  color: rgba(255, 255, 255, 0.6);
}
.c-legacy-theme .c-sidebar .c-sidebar-nav-label:hover {
  color: #fff;
}
.c-legacy-theme .c-sidebar .c-sidebar-nav-label .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.5);
}
.c-legacy-theme .c-sidebar .c-progress {
  background-color: #515c64 !important;
}
.c-legacy-theme .c-sidebar .c-sidebar-footer {
  background: rgba(0, 0, 0, 0.2);
}
.c-legacy-theme .c-sidebar .c-sidebar-minimizer {
  background-color: rgba(0, 0, 0, 0.2);
}
.c-legacy-theme .c-sidebar .c-sidebar-minimizer::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'%3E%3Cpath fill='%2373818f' d='M9.148 2.352l-4.148 4.148 4.148 4.148q0.148 0.148 0.148 0.352t-0.148 0.352l-1.297 1.297q-0.148 0.148-0.352 0.148t-0.352-0.148l-5.797-5.797q-0.148-0.148-0.148-0.352t0.148-0.352l5.797-5.797q0.148-0.148 0.352-0.148t0.352 0.148l1.297 1.297q0.148 0.148 0.148 0.352t-0.148 0.352z'/%3E%3C/svg%3E");
}
.c-legacy-theme .c-sidebar .c-sidebar-minimizer:focus, .c-legacy-theme .c-sidebar .c-sidebar-minimizer.c-focus {
  outline: 0;
}
.c-legacy-theme .c-sidebar .c-sidebar-minimizer:hover {
  background-color: rgba(0, 0, 0, 0.3);
}
.c-legacy-theme .c-sidebar .c-sidebar-minimizer:hover::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'%3E%3Cpath fill='%23fff' d='M9.148 2.352l-4.148 4.148 4.148 4.148q0.148 0.148 0.148 0.352t-0.148 0.352l-1.297 1.297q-0.148 0.148-0.352 0.148t-0.352-0.148l-5.797-5.797q-0.148-0.148-0.148-0.352t0.148-0.352l5.797-5.797q0.148-0.148 0.352-0.148t0.352 0.148l1.297 1.297q0.148 0.148 0.148 0.352t-0.148 0.352z'/%3E%3C/svg%3E");
}
.c-legacy-theme .c-sidebar.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-sidebar-nav-link, .c-legacy-theme .c-sidebar.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-sidebar-nav-dropdown-toggle {
  background: #20a8d8;
}
.c-legacy-theme .c-sidebar.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-sidebar-nav-link .c-sidebar-nav-icon, .c-legacy-theme .c-sidebar.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: #fff;
}
.c-legacy-theme .c-sidebar.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-sidebar-nav-link.c-disabled, .c-legacy-theme .c-sidebar.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-disabled.c-sidebar-nav-dropdown-toggle {
  background: #2f353a;
}
.c-legacy-theme .c-sidebar.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-sidebar-nav-link.c-disabled .c-sidebar-nav-icon, .c-legacy-theme .c-sidebar.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-disabled.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.5);
}
.c-legacy-theme .c-sidebar.c-sidebar-minimized .c-sidebar-nav > .c-sidebar-nav-dropdown > .c-sidebar-nav-dropdown-items {
  background: #2f353a;
}
.c-legacy-theme .c-sidebar.c-sidebar-minimized .c-sidebar-nav > .c-sidebar-nav-dropdown:hover {
  background: #20a8d8;
}
.c-legacy-theme .c-sidebar.c-sidebar-light {
  color: #23282c;
  background: #fff;
  border-right: 1px solid rgba(143, 156, 166, 0.5);
}
html:not([dir=rtl]) .c-legacy-theme .c-sidebar.c-sidebar-light.c-sidebar-right {
  border-right: 0;
  border-left: 1px solid rgba(143, 156, 166, 0.5);
}
*[dir=rtl] .c-legacy-theme .c-sidebar.c-sidebar-light {
  border-right: 0;
  border-left: 1px solid rgba(143, 156, 166, 0.5);
}
*[dir=rtl] .c-legacy-theme .c-sidebar.c-sidebar-light.c-sidebar-right {
  border: 0;
  border-right: 1px solid rgba(143, 156, 166, 0.5);
}
.c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-close {
  color: #23282c;
}
.c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-brand {
  color: #fff;
  background: #20a8d8;
}
.c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-header {
  background: rgba(0, 0, 0, 0.2);
}
.c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-form .c-form-control {
  color: #fff;
  background: rgba(0, 0, 0, 0.1);
  border: 0;
}
.c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-form .c-form-control::-moz-placeholder {
  color: rgba(255, 255, 255, 0.7);
}
.c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-form .c-form-control:-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.7);
}
.c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-form .c-form-control::placeholder {
  color: rgba(255, 255, 255, 0.7);
}
.c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-nav-title {
  color: rgba(0, 0, 0, 0.4);
}
.c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-nav-link, .c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-nav-dropdown-toggle {
  color: rgba(0, 0, 0, 0.8);
  background: transparent;
}
.c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-nav-link .c-sidebar-nav-icon, .c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(0, 0, 0, 0.5);
}
.c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-nav-link.c-active, .c-legacy-theme .c-sidebar.c-sidebar-light .c-active.c-sidebar-nav-dropdown-toggle {
  color: rgba(0, 0, 0, 0.8);
  background: rgba(0, 0, 0, 0.05);
}
.c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-nav-link.c-active .c-sidebar-nav-icon, .c-legacy-theme .c-sidebar.c-sidebar-light .c-active.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: #20a8d8;
}
.c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-nav-link:focus, .c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-nav-dropdown-toggle:focus {
  outline: none;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-nav-link:hover, .c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-nav-dropdown-toggle:hover {
    color: #fff;
    background: #20a8d8;
  }
  .c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-nav-link:hover .c-sidebar-nav-icon, .c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
    color: #fff;
  }
  .c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-nav-link:hover.c-sidebar-nav-dropdown-toggle::after, .c-legacy-theme .c-sidebar.c-sidebar-light :hover.c-sidebar-nav-dropdown-toggle::after {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'%3E%3Cpath fill='%23fff' d='M9.148 2.352l-4.148 4.148 4.148 4.148q0.148 0.148 0.148 0.352t-0.148 0.352l-1.297 1.297q-0.148 0.148-0.352 0.148t-0.352-0.148l-5.797-5.797q-0.148-0.148-0.148-0.352t0.148-0.352l5.797-5.797q0.148-0.148 0.352-0.148t0.352 0.148l1.297 1.297q0.148 0.148 0.148 0.352t-0.148 0.352z'/%3E%3C/svg%3E");
  }
}
.c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-nav-link.c-disabled, .c-legacy-theme .c-sidebar.c-sidebar-light .c-disabled.c-sidebar-nav-dropdown-toggle {
  color: #b3b3b3;
  background: transparent;
}
.c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-nav-link.c-disabled .c-sidebar-nav-icon, .c-legacy-theme .c-sidebar.c-sidebar-light .c-disabled.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(0, 0, 0, 0.5);
}
.c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-nav-link.c-disabled:hover, .c-legacy-theme .c-sidebar.c-sidebar-light .c-disabled.c-sidebar-nav-dropdown-toggle:hover {
  color: #b3b3b3;
}
.c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-nav-link.c-disabled:hover .c-sidebar-nav-icon, .c-legacy-theme .c-sidebar.c-sidebar-light .c-disabled.c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
  color: rgba(0, 0, 0, 0.5);
}
.c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-nav-link.c-disabled:hover.c-sidebar-nav-dropdown-toggle::after, .c-legacy-theme .c-sidebar.c-sidebar-light .c-disabled:hover.c-sidebar-nav-dropdown-toggle::after {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'%3E%3Cpath fill='%23fff' d='M9.148 2.352l-4.148 4.148 4.148 4.148q0.148 0.148 0.148 0.352t-0.148 0.352l-1.297 1.297q-0.148 0.148-0.352 0.148t-0.352-0.148l-5.797-5.797q-0.148-0.148-0.148-0.352t0.148-0.352l5.797-5.797q0.148-0.148 0.352-0.148t0.352 0.148l1.297 1.297q0.148 0.148 0.148 0.352t-0.148 0.352z'/%3E%3C/svg%3E");
}
.c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-nav-dropdown-toggle {
  position: relative;
}
.c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-nav-dropdown-toggle::after {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'%3E%3Cpath fill='rgba(0, 0, 0, 0.5)' d='M9.148 2.352l-4.148 4.148 4.148 4.148q0.148 0.148 0.148 0.352t-0.148 0.352l-1.297 1.297q-0.148 0.148-0.352 0.148t-0.352-0.148l-5.797-5.797q-0.148-0.148-0.148-0.352t0.148-0.352l5.797-5.797q0.148-0.148 0.352-0.148t0.352 0.148l1.297 1.297q0.148 0.148 0.148 0.352t-0.148 0.352z'/%3E%3C/svg%3E");
}
.c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-nav-dropdown.c-show {
  background: rgba(0, 0, 0, 0.05);
}
.c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-nav-dropdown.c-show .c-sidebar-nav-link, .c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-nav-dropdown.c-show .c-sidebar-nav-dropdown-toggle {
  color: rgba(0, 0, 0, 0.8);
}
.c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-nav-dropdown.c-show .c-sidebar-nav-link.c-disabled, .c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-nav-dropdown.c-show .c-disabled.c-sidebar-nav-dropdown-toggle {
  color: #b3b3b3;
  background: transparent;
}
.c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-nav-dropdown.c-show .c-sidebar-nav-link.c-disabled:hover, .c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-nav-dropdown.c-show .c-disabled.c-sidebar-nav-dropdown-toggle:hover {
  color: #b3b3b3;
}
.c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-nav-dropdown.c-show .c-sidebar-nav-link.c-disabled:hover .c-sidebar-nav-icon, .c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-nav-dropdown.c-show .c-disabled.c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
  color: rgba(0, 0, 0, 0.5);
}
.c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-nav-label {
  color: rgba(0, 0, 0, 0.4);
}
.c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-nav-label:hover {
  color: #23282c;
}
.c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-nav-label .c-sidebar-nav-icon {
  color: rgba(0, 0, 0, 0.5);
}
.c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-footer {
  background: rgba(0, 0, 0, 0.2);
}
.c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-minimizer {
  background-color: rgba(0, 0, 0, 0.05);
}
.c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-minimizer::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'%3E%3Cpath fill='%2373818f' d='M9.148 2.352l-4.148 4.148 4.148 4.148q0.148 0.148 0.148 0.352t-0.148 0.352l-1.297 1.297q-0.148 0.148-0.352 0.148t-0.352-0.148l-5.797-5.797q-0.148-0.148-0.148-0.352t0.148-0.352l5.797-5.797q0.148-0.148 0.352-0.148t0.352 0.148l1.297 1.297q0.148 0.148 0.148 0.352t-0.148 0.352z'/%3E%3C/svg%3E");
}
.c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-minimizer:focus, .c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-minimizer.c-focus {
  outline: 0;
}
.c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-minimizer:hover {
  background-color: rgba(0, 0, 0, 0.1);
}
.c-legacy-theme .c-sidebar.c-sidebar-light .c-sidebar-minimizer:hover::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'%3E%3Cpath fill='%235c6873' d='M9.148 2.352l-4.148 4.148 4.148 4.148q0.148 0.148 0.148 0.352t-0.148 0.352l-1.297 1.297q-0.148 0.148-0.352 0.148t-0.352-0.148l-5.797-5.797q-0.148-0.148-0.148-0.352t0.148-0.352l5.797-5.797q0.148-0.148 0.352-0.148t0.352 0.148l1.297 1.297q0.148 0.148 0.148 0.352t-0.148 0.352z'/%3E%3C/svg%3E");
}
.c-legacy-theme .c-sidebar.c-sidebar-light.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-sidebar-nav-link, .c-legacy-theme .c-sidebar.c-sidebar-light.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-sidebar-nav-dropdown-toggle {
  background: #20a8d8;
}
.c-legacy-theme .c-sidebar.c-sidebar-light.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-sidebar-nav-link .c-sidebar-nav-icon, .c-legacy-theme .c-sidebar.c-sidebar-light.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: #fff;
}
.c-legacy-theme .c-sidebar.c-sidebar-light.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-sidebar-nav-link.c-disabled, .c-legacy-theme .c-sidebar.c-sidebar-light.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-disabled.c-sidebar-nav-dropdown-toggle {
  background: #fff;
}
.c-legacy-theme .c-sidebar.c-sidebar-light.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-sidebar-nav-link.c-disabled .c-sidebar-nav-icon, .c-legacy-theme .c-sidebar.c-sidebar-light.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-disabled.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(0, 0, 0, 0.5);
}
.c-legacy-theme .c-sidebar.c-sidebar-light.c-sidebar-minimized .c-sidebar-nav > .c-sidebar-nav-dropdown > .c-sidebar-nav-dropdown-items {
  background: #fff;
}
.c-legacy-theme .c-sidebar.c-sidebar-light.c-sidebar-minimized .c-sidebar-nav > .c-sidebar-nav-dropdown:hover {
  background: #20a8d8;
}
.c-dark-theme .c-sidebar {
  color: rgba(255, 255, 255, 0.87);
  background: #2a2b36;
  border: 0;
}
html:not([dir=rtl]) .c-dark-theme .c-sidebar.c-sidebar-right {
  border: 0;
}
*[dir=rtl] .c-dark-theme .c-sidebar {
  border: 0;
}
*[dir=rtl] .c-dark-theme .c-sidebar.c-sidebar-right {
  border: 0;
  border: 0;
}
.c-dark-theme .c-sidebar .c-sidebar-close {
  color: rgba(255, 255, 255, 0.87);
}
.c-dark-theme .c-sidebar .c-sidebar-brand {
  background: rgba(0, 0, 21, 0.2);
}
.c-dark-theme .c-sidebar .c-sidebar-header {
  background: rgba(0, 0, 21, 0.2);
}
.c-dark-theme .c-sidebar .c-sidebar-form .c-form-control {
  color: #fff;
  background: rgba(0, 0, 21, 0.1);
  border: 0;
}
.c-dark-theme .c-sidebar .c-sidebar-form .c-form-control::-moz-placeholder {
  color: rgba(255, 255, 255, 0.7);
}
.c-dark-theme .c-sidebar .c-sidebar-form .c-form-control:-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.7);
}
.c-dark-theme .c-sidebar .c-sidebar-form .c-form-control::placeholder {
  color: rgba(255, 255, 255, 0.7);
}
.c-dark-theme .c-sidebar .c-sidebar-nav-title {
  color: rgba(255, 255, 255, 0.6);
}
.c-dark-theme .c-sidebar .c-sidebar-nav-link, .c-dark-theme .c-sidebar .c-sidebar-nav-dropdown-toggle {
  color: rgba(255, 255, 255, 0.8);
  background: transparent;
}
.c-dark-theme .c-sidebar .c-sidebar-nav-link .c-sidebar-nav-icon, .c-dark-theme .c-sidebar .c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.6);
}
.c-dark-theme .c-sidebar .c-sidebar-nav-link.c-active, .c-dark-theme .c-sidebar .c-active.c-sidebar-nav-dropdown-toggle {
  color: #fff;
  background: rgba(255, 255, 255, 0.05);
}
.c-dark-theme .c-sidebar .c-sidebar-nav-link.c-active .c-sidebar-nav-icon, .c-dark-theme .c-sidebar .c-active.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: #fff;
}
.c-dark-theme .c-sidebar .c-sidebar-nav-link:focus, .c-dark-theme .c-sidebar .c-sidebar-nav-dropdown-toggle:focus {
  outline: none;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-dark-theme .c-sidebar .c-sidebar-nav-link:hover, .c-dark-theme .c-sidebar .c-sidebar-nav-dropdown-toggle:hover {
    color: #fff;
    background: #4638c2;
  }
  .c-dark-theme .c-sidebar .c-sidebar-nav-link:hover .c-sidebar-nav-icon, .c-dark-theme .c-sidebar .c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
    color: #fff;
  }
  .c-dark-theme .c-sidebar .c-sidebar-nav-link:hover.c-sidebar-nav-dropdown-toggle::after, .c-dark-theme .c-sidebar :hover.c-sidebar-nav-dropdown-toggle::after {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'%3E%3Cpath fill='%23fff' d='M9.148 2.352l-4.148 4.148 4.148 4.148q0.148 0.148 0.148 0.352t-0.148 0.352l-1.297 1.297q-0.148 0.148-0.352 0.148t-0.352-0.148l-5.797-5.797q-0.148-0.148-0.148-0.352t0.148-0.352l5.797-5.797q0.148-0.148 0.352-0.148t0.352 0.148l1.297 1.297q0.148 0.148 0.148 0.352t-0.148 0.352z'/%3E%3C/svg%3E");
  }
}
.c-dark-theme .c-sidebar .c-sidebar-nav-link.c-disabled, .c-dark-theme .c-sidebar .c-disabled.c-sidebar-nav-dropdown-toggle {
  color: #b3b3b3;
  background: transparent;
}
.c-dark-theme .c-sidebar .c-sidebar-nav-link.c-disabled .c-sidebar-nav-icon, .c-dark-theme .c-sidebar .c-disabled.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.6);
}
.c-dark-theme .c-sidebar .c-sidebar-nav-link.c-disabled:hover, .c-dark-theme .c-sidebar .c-disabled.c-sidebar-nav-dropdown-toggle:hover {
  color: #b3b3b3;
}
.c-dark-theme .c-sidebar .c-sidebar-nav-link.c-disabled:hover .c-sidebar-nav-icon, .c-dark-theme .c-sidebar .c-disabled.c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.6);
}
.c-dark-theme .c-sidebar .c-sidebar-nav-link.c-disabled:hover.c-sidebar-nav-dropdown-toggle::after, .c-dark-theme .c-sidebar .c-disabled:hover.c-sidebar-nav-dropdown-toggle::after {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'%3E%3Cpath fill='%23fff' d='M9.148 2.352l-4.148 4.148 4.148 4.148q0.148 0.148 0.148 0.352t-0.148 0.352l-1.297 1.297q-0.148 0.148-0.352 0.148t-0.352-0.148l-5.797-5.797q-0.148-0.148-0.148-0.352t0.148-0.352l5.797-5.797q0.148-0.148 0.352-0.148t0.352 0.148l1.297 1.297q0.148 0.148 0.148 0.352t-0.148 0.352z'/%3E%3C/svg%3E");
}
.c-dark-theme .c-sidebar .c-sidebar-nav-dropdown-toggle {
  position: relative;
}
.c-dark-theme .c-sidebar .c-sidebar-nav-dropdown-toggle::after {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'%3E%3Cpath fill='rgba(255, 255, 255, 0.5)' d='M9.148 2.352l-4.148 4.148 4.148 4.148q0.148 0.148 0.148 0.352t-0.148 0.352l-1.297 1.297q-0.148 0.148-0.352 0.148t-0.352-0.148l-5.797-5.797q-0.148-0.148-0.148-0.352t0.148-0.352l5.797-5.797q0.148-0.148 0.352-0.148t0.352 0.148l1.297 1.297q0.148 0.148 0.148 0.352t-0.148 0.352z'/%3E%3C/svg%3E");
}
.c-dark-theme .c-sidebar .c-sidebar-nav-dropdown.c-show {
  background: rgba(0, 0, 0, 0.2);
}
.c-dark-theme .c-sidebar .c-sidebar-nav-dropdown.c-show .c-sidebar-nav-link, .c-dark-theme .c-sidebar .c-sidebar-nav-dropdown.c-show .c-sidebar-nav-dropdown-toggle {
  color: #fff;
}
.c-dark-theme .c-sidebar .c-sidebar-nav-dropdown.c-show .c-sidebar-nav-link.c-disabled, .c-dark-theme .c-sidebar .c-sidebar-nav-dropdown.c-show .c-disabled.c-sidebar-nav-dropdown-toggle {
  color: #b3b3b3;
  background: transparent;
}
.c-dark-theme .c-sidebar .c-sidebar-nav-dropdown.c-show .c-sidebar-nav-link.c-disabled:hover, .c-dark-theme .c-sidebar .c-sidebar-nav-dropdown.c-show .c-disabled.c-sidebar-nav-dropdown-toggle:hover {
  color: #b3b3b3;
}
.c-dark-theme .c-sidebar .c-sidebar-nav-dropdown.c-show .c-sidebar-nav-link.c-disabled:hover .c-sidebar-nav-icon, .c-dark-theme .c-sidebar .c-sidebar-nav-dropdown.c-show .c-disabled.c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.6);
}
.c-dark-theme .c-sidebar .c-sidebar-nav-label {
  color: rgba(255, 255, 255, 0.6);
}
.c-dark-theme .c-sidebar .c-sidebar-nav-label:hover {
  color: rgba(255, 255, 255, 0.87);
}
.c-dark-theme .c-sidebar .c-sidebar-nav-label .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.6);
}
.c-dark-theme .c-sidebar .c-progress {
  background-color: #4b4d61 !important;
}
.c-dark-theme .c-sidebar .c-sidebar-footer {
  background: rgba(0, 0, 21, 0.2);
}
.c-dark-theme .c-sidebar .c-sidebar-minimizer {
  background-color: rgba(0, 0, 21, 0.2);
}
.c-dark-theme .c-sidebar .c-sidebar-minimizer::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'%3E%3Cpath fill='rgba(255, 255, 255, 0.5)' d='M9.148 2.352l-4.148 4.148 4.148 4.148q0.148 0.148 0.148 0.352t-0.148 0.352l-1.297 1.297q-0.148 0.148-0.352 0.148t-0.352-0.148l-5.797-5.797q-0.148-0.148-0.148-0.352t0.148-0.352l5.797-5.797q0.148-0.148 0.352-0.148t0.352 0.148l1.297 1.297q0.148 0.148 0.148 0.352t-0.148 0.352z'/%3E%3C/svg%3E");
}
.c-dark-theme .c-sidebar .c-sidebar-minimizer:focus, .c-dark-theme .c-sidebar .c-sidebar-minimizer.c-focus {
  outline: 0;
}
.c-dark-theme .c-sidebar .c-sidebar-minimizer:hover {
  background-color: rgba(0, 0, 0, 0.3);
}
.c-dark-theme .c-sidebar .c-sidebar-minimizer:hover::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'%3E%3Cpath fill='%23fff' d='M9.148 2.352l-4.148 4.148 4.148 4.148q0.148 0.148 0.148 0.352t-0.148 0.352l-1.297 1.297q-0.148 0.148-0.352 0.148t-0.352-0.148l-5.797-5.797q-0.148-0.148-0.148-0.352t0.148-0.352l5.797-5.797q0.148-0.148 0.352-0.148t0.352 0.148l1.297 1.297q0.148 0.148 0.148 0.352t-0.148 0.352z'/%3E%3C/svg%3E");
}
.c-dark-theme .c-sidebar.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-sidebar-nav-link, .c-dark-theme .c-sidebar.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-sidebar-nav-dropdown-toggle {
  background: #4638c2;
}
.c-dark-theme .c-sidebar.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-sidebar-nav-link .c-sidebar-nav-icon, .c-dark-theme .c-sidebar.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: #fff;
}
.c-dark-theme .c-sidebar.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-sidebar-nav-link.c-disabled, .c-dark-theme .c-sidebar.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-disabled.c-sidebar-nav-dropdown-toggle {
  background: #2a2b36;
}
.c-dark-theme .c-sidebar.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-sidebar-nav-link.c-disabled .c-sidebar-nav-icon, .c-dark-theme .c-sidebar.c-sidebar-minimized .c-sidebar-nav-item:hover > .c-disabled.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.6);
}
.c-dark-theme .c-sidebar.c-sidebar-minimized .c-sidebar-nav > .c-sidebar-nav-dropdown > .c-sidebar-nav-dropdown-items {
  background: #2a2b36;
}
.c-dark-theme .c-sidebar.c-sidebar-minimized .c-sidebar-nav > .c-sidebar-nav-dropdown:hover {
  background: #4638c2;
}
.c-sidebar .c-sidebar-nav-link.c-sidebar-nav-link-primary, .c-sidebar .c-sidebar-nav-link-primary.c-sidebar-nav-dropdown-toggle {
  background: #321fdb;
}
.c-sidebar .c-sidebar-nav-link.c-sidebar-nav-link-primary .c-sidebar-nav-icon, .c-sidebar .c-sidebar-nav-link-primary.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.7);
}
.c-sidebar .c-sidebar-nav-link.c-sidebar-nav-link-primary:hover, .c-sidebar .c-sidebar-nav-link-primary.c-sidebar-nav-dropdown-toggle:hover {
  background: #2d1cc5;
}
.c-sidebar .c-sidebar-nav-link.c-sidebar-nav-link-primary:hover .c-sidebar-nav-icon, .c-sidebar .c-sidebar-nav-link-primary.c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
  color: #fff;
}
.c-sidebar .c-sidebar-nav-link.c-sidebar-nav-link-secondary, .c-sidebar .c-sidebar-nav-link-secondary.c-sidebar-nav-dropdown-toggle {
  background: #ced2d8;
}
.c-sidebar .c-sidebar-nav-link.c-sidebar-nav-link-secondary .c-sidebar-nav-icon, .c-sidebar .c-sidebar-nav-link-secondary.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.7);
}
.c-sidebar .c-sidebar-nav-link.c-sidebar-nav-link-secondary:hover, .c-sidebar .c-sidebar-nav-link-secondary.c-sidebar-nav-dropdown-toggle:hover {
  background: #c0c5cd;
}
.c-sidebar .c-sidebar-nav-link.c-sidebar-nav-link-secondary:hover .c-sidebar-nav-icon, .c-sidebar .c-sidebar-nav-link-secondary.c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
  color: #fff;
}
.c-sidebar .c-sidebar-nav-link.c-sidebar-nav-link-success, .c-sidebar .c-sidebar-nav-link-success.c-sidebar-nav-dropdown-toggle {
  background: #2eb85c;
}
.c-sidebar .c-sidebar-nav-link.c-sidebar-nav-link-success .c-sidebar-nav-icon, .c-sidebar .c-sidebar-nav-link-success.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.7);
}
.c-sidebar .c-sidebar-nav-link.c-sidebar-nav-link-success:hover, .c-sidebar .c-sidebar-nav-link-success.c-sidebar-nav-dropdown-toggle:hover {
  background: #29a452;
}
.c-sidebar .c-sidebar-nav-link.c-sidebar-nav-link-success:hover .c-sidebar-nav-icon, .c-sidebar .c-sidebar-nav-link-success.c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
  color: #fff;
}
.c-sidebar .c-sidebar-nav-link.c-sidebar-nav-link-info, .c-sidebar .c-sidebar-nav-link-info.c-sidebar-nav-dropdown-toggle {
  background: #39f;
}
.c-sidebar .c-sidebar-nav-link.c-sidebar-nav-link-info .c-sidebar-nav-icon, .c-sidebar .c-sidebar-nav-link-info.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.7);
}
.c-sidebar .c-sidebar-nav-link.c-sidebar-nav-link-info:hover, .c-sidebar .c-sidebar-nav-link-info.c-sidebar-nav-dropdown-toggle:hover {
  background: #1a8cff;
}
.c-sidebar .c-sidebar-nav-link.c-sidebar-nav-link-info:hover .c-sidebar-nav-icon, .c-sidebar .c-sidebar-nav-link-info.c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
  color: #fff;
}
.c-sidebar .c-sidebar-nav-link.c-sidebar-nav-link-warning, .c-sidebar .c-sidebar-nav-link-warning.c-sidebar-nav-dropdown-toggle {
  background: #f9b115;
}
.c-sidebar .c-sidebar-nav-link.c-sidebar-nav-link-warning .c-sidebar-nav-icon, .c-sidebar .c-sidebar-nav-link-warning.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.7);
}
.c-sidebar .c-sidebar-nav-link.c-sidebar-nav-link-warning:hover, .c-sidebar .c-sidebar-nav-link-warning.c-sidebar-nav-dropdown-toggle:hover {
  background: #eea506;
}
.c-sidebar .c-sidebar-nav-link.c-sidebar-nav-link-warning:hover .c-sidebar-nav-icon, .c-sidebar .c-sidebar-nav-link-warning.c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
  color: #fff;
}
.c-sidebar .c-sidebar-nav-link.c-sidebar-nav-link-danger, .c-sidebar .c-sidebar-nav-link-danger.c-sidebar-nav-dropdown-toggle {
  background: #e55353;
}
.c-sidebar .c-sidebar-nav-link.c-sidebar-nav-link-danger .c-sidebar-nav-icon, .c-sidebar .c-sidebar-nav-link-danger.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.7);
}
.c-sidebar .c-sidebar-nav-link.c-sidebar-nav-link-danger:hover, .c-sidebar .c-sidebar-nav-link-danger.c-sidebar-nav-dropdown-toggle:hover {
  background: #e23d3d;
}
.c-sidebar .c-sidebar-nav-link.c-sidebar-nav-link-danger:hover .c-sidebar-nav-icon, .c-sidebar .c-sidebar-nav-link-danger.c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
  color: #fff;
}
.c-sidebar .c-sidebar-nav-link.c-sidebar-nav-link-light, .c-sidebar .c-sidebar-nav-link-light.c-sidebar-nav-dropdown-toggle {
  background: #ebedef;
}
.c-sidebar .c-sidebar-nav-link.c-sidebar-nav-link-light .c-sidebar-nav-icon, .c-sidebar .c-sidebar-nav-link-light.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.7);
}
.c-sidebar .c-sidebar-nav-link.c-sidebar-nav-link-light:hover, .c-sidebar .c-sidebar-nav-link-light.c-sidebar-nav-dropdown-toggle:hover {
  background: #dde0e4;
}
.c-sidebar .c-sidebar-nav-link.c-sidebar-nav-link-light:hover .c-sidebar-nav-icon, .c-sidebar .c-sidebar-nav-link-light.c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
  color: #fff;
}
.c-sidebar .c-sidebar-nav-link.c-sidebar-nav-link-dark, .c-sidebar .c-sidebar-nav-link-dark.c-sidebar-nav-dropdown-toggle {
  background: #636f83;
}
.c-sidebar .c-sidebar-nav-link.c-sidebar-nav-link-dark .c-sidebar-nav-icon, .c-sidebar .c-sidebar-nav-link-dark.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.7);
}
.c-sidebar .c-sidebar-nav-link.c-sidebar-nav-link-dark:hover, .c-sidebar .c-sidebar-nav-link-dark.c-sidebar-nav-dropdown-toggle:hover {
  background: #586374;
}
.c-sidebar .c-sidebar-nav-link.c-sidebar-nav-link-dark:hover .c-sidebar-nav-icon, .c-sidebar .c-sidebar-nav-link-dark.c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
  color: #fff;
}
.c-dark-theme .c-sidebar-nav-link.c-sidebar-nav-link-primary, .c-dark-theme .c-sidebar-nav-link-primary.c-sidebar-nav-dropdown-toggle {
  background: #4638c2;
}
.c-dark-theme .c-sidebar-nav-link.c-sidebar-nav-link-primary .c-sidebar-nav-icon, .c-dark-theme .c-sidebar-nav-link-primary.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.7);
}
.c-dark-theme .c-sidebar-nav-link.c-sidebar-nav-link-primary:hover, .c-dark-theme .c-sidebar-nav-link-primary.c-sidebar-nav-dropdown-toggle:hover {
  background: #3f32ae;
}
.c-dark-theme .c-sidebar-nav-link.c-sidebar-nav-link-primary:hover .c-sidebar-nav-icon, .c-dark-theme .c-sidebar-nav-link-primary.c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
  color: #fff;
}
.c-dark-theme .c-sidebar-nav-link.c-sidebar-nav-link-secondary, .c-dark-theme .c-sidebar-nav-link-secondary.c-sidebar-nav-dropdown-toggle {
  background: #4c4f54;
}
.c-dark-theme .c-sidebar-nav-link.c-sidebar-nav-link-secondary .c-sidebar-nav-icon, .c-dark-theme .c-sidebar-nav-link-secondary.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.7);
}
.c-dark-theme .c-sidebar-nav-link.c-sidebar-nav-link-secondary:hover, .c-dark-theme .c-sidebar-nav-link-secondary.c-sidebar-nav-dropdown-toggle:hover {
  background: #404247;
}
.c-dark-theme .c-sidebar-nav-link.c-sidebar-nav-link-secondary:hover .c-sidebar-nav-icon, .c-dark-theme .c-sidebar-nav-link-secondary.c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
  color: #fff;
}
.c-dark-theme .c-sidebar-nav-link.c-sidebar-nav-link-success, .c-dark-theme .c-sidebar-nav-link-success.c-sidebar-nav-dropdown-toggle {
  background: #45a164;
}
.c-dark-theme .c-sidebar-nav-link.c-sidebar-nav-link-success .c-sidebar-nav-icon, .c-dark-theme .c-sidebar-nav-link-success.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.7);
}
.c-dark-theme .c-sidebar-nav-link.c-sidebar-nav-link-success:hover, .c-dark-theme .c-sidebar-nav-link-success.c-sidebar-nav-dropdown-toggle:hover {
  background: #3d8f59;
}
.c-dark-theme .c-sidebar-nav-link.c-sidebar-nav-link-success:hover .c-sidebar-nav-icon, .c-dark-theme .c-sidebar-nav-link-success.c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
  color: #fff;
}
.c-dark-theme .c-sidebar-nav-link.c-sidebar-nav-link-info, .c-dark-theme .c-sidebar-nav-link-info.c-sidebar-nav-dropdown-toggle {
  background: #4799eb;
}
.c-dark-theme .c-sidebar-nav-link.c-sidebar-nav-link-info .c-sidebar-nav-icon, .c-dark-theme .c-sidebar-nav-link-info.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.7);
}
.c-dark-theme .c-sidebar-nav-link.c-sidebar-nav-link-info:hover, .c-dark-theme .c-sidebar-nav-link-info.c-sidebar-nav-dropdown-toggle:hover {
  background: #308ce8;
}
.c-dark-theme .c-sidebar-nav-link.c-sidebar-nav-link-info:hover .c-sidebar-nav-icon, .c-dark-theme .c-sidebar-nav-link-info.c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
  color: #fff;
}
.c-dark-theme .c-sidebar-nav-link.c-sidebar-nav-link-warning, .c-dark-theme .c-sidebar-nav-link-warning.c-sidebar-nav-dropdown-toggle {
  background: #e1a82d;
}
.c-dark-theme .c-sidebar-nav-link.c-sidebar-nav-link-warning .c-sidebar-nav-icon, .c-dark-theme .c-sidebar-nav-link-warning.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.7);
}
.c-dark-theme .c-sidebar-nav-link.c-sidebar-nav-link-warning:hover, .c-dark-theme .c-sidebar-nav-link-warning.c-sidebar-nav-dropdown-toggle:hover {
  background: #d69c1f;
}
.c-dark-theme .c-sidebar-nav-link.c-sidebar-nav-link-warning:hover .c-sidebar-nav-icon, .c-dark-theme .c-sidebar-nav-link-warning.c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
  color: #fff;
}
.c-dark-theme .c-sidebar-nav-link.c-sidebar-nav-link-danger, .c-dark-theme .c-sidebar-nav-link-danger.c-sidebar-nav-dropdown-toggle {
  background: #d16767;
}
.c-dark-theme .c-sidebar-nav-link.c-sidebar-nav-link-danger .c-sidebar-nav-icon, .c-dark-theme .c-sidebar-nav-link-danger.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.7);
}
.c-dark-theme .c-sidebar-nav-link.c-sidebar-nav-link-danger:hover, .c-dark-theme .c-sidebar-nav-link-danger.c-sidebar-nav-dropdown-toggle:hover {
  background: #cb5353;
}
.c-dark-theme .c-sidebar-nav-link.c-sidebar-nav-link-danger:hover .c-sidebar-nav-icon, .c-dark-theme .c-sidebar-nav-link-danger.c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
  color: #fff;
}
.c-dark-theme .c-sidebar-nav-link.c-sidebar-nav-link-light, .c-dark-theme .c-sidebar-nav-link-light.c-sidebar-nav-dropdown-toggle {
  background: #6c6e7e;
}
.c-dark-theme .c-sidebar-nav-link.c-sidebar-nav-link-light .c-sidebar-nav-icon, .c-dark-theme .c-sidebar-nav-link-light.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.7);
}
.c-dark-theme .c-sidebar-nav-link.c-sidebar-nav-link-light:hover, .c-dark-theme .c-sidebar-nav-link-light.c-sidebar-nav-dropdown-toggle:hover {
  background: #606270;
}
.c-dark-theme .c-sidebar-nav-link.c-sidebar-nav-link-light:hover .c-sidebar-nav-icon, .c-dark-theme .c-sidebar-nav-link-light.c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
  color: #fff;
}
.c-dark-theme .c-sidebar-nav-link.c-sidebar-nav-link-dark, .c-dark-theme .c-sidebar-nav-link-dark.c-sidebar-nav-dropdown-toggle {
  background: #0e0e15;
}
.c-dark-theme .c-sidebar-nav-link.c-sidebar-nav-link-dark .c-sidebar-nav-icon, .c-dark-theme .c-sidebar-nav-link-dark.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.7);
}
.c-dark-theme .c-sidebar-nav-link.c-sidebar-nav-link-dark:hover, .c-dark-theme .c-sidebar-nav-link-dark.c-sidebar-nav-dropdown-toggle:hover {
  background: #040405;
}
.c-dark-theme .c-sidebar-nav-link.c-sidebar-nav-link-dark:hover .c-sidebar-nav-icon, .c-dark-theme .c-sidebar-nav-link-dark.c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
  color: #fff;
}
.c-legacy-theme .c-sidebar-nav-link.c-sidebar-nav-link-primary, .c-legacy-theme .c-sidebar-nav-link-primary.c-sidebar-nav-dropdown-toggle {
  background: #20a8d8;
}
.c-legacy-theme .c-sidebar-nav-link.c-sidebar-nav-link-primary .c-sidebar-nav-icon, .c-legacy-theme .c-sidebar-nav-link-primary.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.7);
}
.c-legacy-theme .c-sidebar-nav-link.c-sidebar-nav-link-primary:hover, .c-legacy-theme .c-sidebar-nav-link-primary.c-sidebar-nav-dropdown-toggle:hover {
  background: #1d97c2;
}
.c-legacy-theme .c-sidebar-nav-link.c-sidebar-nav-link-primary:hover .c-sidebar-nav-icon, .c-legacy-theme .c-sidebar-nav-link-primary.c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
  color: #fff;
}
.c-legacy-theme .c-sidebar-nav-link.c-sidebar-nav-link-secondary, .c-legacy-theme .c-sidebar-nav-link-secondary.c-sidebar-nav-dropdown-toggle {
  background: #c8ced3;
}
.c-legacy-theme .c-sidebar-nav-link.c-sidebar-nav-link-secondary .c-sidebar-nav-icon, .c-legacy-theme .c-sidebar-nav-link-secondary.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.7);
}
.c-legacy-theme .c-sidebar-nav-link.c-sidebar-nav-link-secondary:hover, .c-legacy-theme .c-sidebar-nav-link-secondary.c-sidebar-nav-dropdown-toggle:hover {
  background: #bac1c8;
}
.c-legacy-theme .c-sidebar-nav-link.c-sidebar-nav-link-secondary:hover .c-sidebar-nav-icon, .c-legacy-theme .c-sidebar-nav-link-secondary.c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
  color: #fff;
}
.c-legacy-theme .c-sidebar-nav-link.c-sidebar-nav-link-success, .c-legacy-theme .c-sidebar-nav-link-success.c-sidebar-nav-dropdown-toggle {
  background: #4dbd74;
}
.c-legacy-theme .c-sidebar-nav-link.c-sidebar-nav-link-success .c-sidebar-nav-icon, .c-legacy-theme .c-sidebar-nav-link-success.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.7);
}
.c-legacy-theme .c-sidebar-nav-link.c-sidebar-nav-link-success:hover, .c-legacy-theme .c-sidebar-nav-link-success.c-sidebar-nav-dropdown-toggle:hover {
  background: #41af67;
}
.c-legacy-theme .c-sidebar-nav-link.c-sidebar-nav-link-success:hover .c-sidebar-nav-icon, .c-legacy-theme .c-sidebar-nav-link-success.c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
  color: #fff;
}
.c-legacy-theme .c-sidebar-nav-link.c-sidebar-nav-link-info, .c-legacy-theme .c-sidebar-nav-link-info.c-sidebar-nav-dropdown-toggle {
  background: #63c2de;
}
.c-legacy-theme .c-sidebar-nav-link.c-sidebar-nav-link-info .c-sidebar-nav-icon, .c-legacy-theme .c-sidebar-nav-link-info.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.7);
}
.c-legacy-theme .c-sidebar-nav-link.c-sidebar-nav-link-info:hover, .c-legacy-theme .c-sidebar-nav-link-info.c-sidebar-nav-dropdown-toggle:hover {
  background: #4ebada;
}
.c-legacy-theme .c-sidebar-nav-link.c-sidebar-nav-link-info:hover .c-sidebar-nav-icon, .c-legacy-theme .c-sidebar-nav-link-info.c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
  color: #fff;
}
.c-legacy-theme .c-sidebar-nav-link.c-sidebar-nav-link-warning, .c-legacy-theme .c-sidebar-nav-link-warning.c-sidebar-nav-dropdown-toggle {
  background: #ffc107;
}
.c-legacy-theme .c-sidebar-nav-link.c-sidebar-nav-link-warning .c-sidebar-nav-icon, .c-legacy-theme .c-sidebar-nav-link-warning.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.7);
}
.c-legacy-theme .c-sidebar-nav-link.c-sidebar-nav-link-warning:hover, .c-legacy-theme .c-sidebar-nav-link-warning.c-sidebar-nav-dropdown-toggle:hover {
  background: #edb100;
}
.c-legacy-theme .c-sidebar-nav-link.c-sidebar-nav-link-warning:hover .c-sidebar-nav-icon, .c-legacy-theme .c-sidebar-nav-link-warning.c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
  color: #fff;
}
.c-legacy-theme .c-sidebar-nav-link.c-sidebar-nav-link-danger, .c-legacy-theme .c-sidebar-nav-link-danger.c-sidebar-nav-dropdown-toggle {
  background: #f86c6b;
}
.c-legacy-theme .c-sidebar-nav-link.c-sidebar-nav-link-danger .c-sidebar-nav-icon, .c-legacy-theme .c-sidebar-nav-link-danger.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.7);
}
.c-legacy-theme .c-sidebar-nav-link.c-sidebar-nav-link-danger:hover, .c-legacy-theme .c-sidebar-nav-link-danger.c-sidebar-nav-dropdown-toggle:hover {
  background: #f75453;
}
.c-legacy-theme .c-sidebar-nav-link.c-sidebar-nav-link-danger:hover .c-sidebar-nav-icon, .c-legacy-theme .c-sidebar-nav-link-danger.c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
  color: #fff;
}
.c-legacy-theme .c-sidebar-nav-link.c-sidebar-nav-link-light, .c-legacy-theme .c-sidebar-nav-link-light.c-sidebar-nav-dropdown-toggle {
  background: #f0f3f5;
}
.c-legacy-theme .c-sidebar-nav-link.c-sidebar-nav-link-light .c-sidebar-nav-icon, .c-legacy-theme .c-sidebar-nav-link-light.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.7);
}
.c-legacy-theme .c-sidebar-nav-link.c-sidebar-nav-link-light:hover, .c-legacy-theme .c-sidebar-nav-link-light.c-sidebar-nav-dropdown-toggle:hover {
  background: #e1e7eb;
}
.c-legacy-theme .c-sidebar-nav-link.c-sidebar-nav-link-light:hover .c-sidebar-nav-icon, .c-legacy-theme .c-sidebar-nav-link-light.c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
  color: #fff;
}
.c-legacy-theme .c-sidebar-nav-link.c-sidebar-nav-link-dark, .c-legacy-theme .c-sidebar-nav-link-dark.c-sidebar-nav-dropdown-toggle {
  background: #2f353a;
}
.c-legacy-theme .c-sidebar-nav-link.c-sidebar-nav-link-dark .c-sidebar-nav-icon, .c-legacy-theme .c-sidebar-nav-link-dark.c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
  color: rgba(255, 255, 255, 0.7);
}
.c-legacy-theme .c-sidebar-nav-link.c-sidebar-nav-link-dark:hover, .c-legacy-theme .c-sidebar-nav-link-dark.c-sidebar-nav-dropdown-toggle:hover {
  background: #24282c;
}
.c-legacy-theme .c-sidebar-nav-link.c-sidebar-nav-link-dark:hover .c-sidebar-nav-icon, .c-legacy-theme .c-sidebar-nav-link-dark.c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
  color: #fff;
}
@-webkit-keyframes spinner-border {
  to {
    transform: rotate(360deg);
  }
}
@keyframes spinner-border {
  to {
    transform: rotate(360deg);
  }
}
.spinner-border {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: text-bottom;
  border: 0.25em solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  -webkit-animation: spinner-border 0.75s linear infinite;
          animation: spinner-border 0.75s linear infinite;
}
.spinner-border-sm {
  width: 1rem;
  height: 1rem;
  border-width: 0.2em;
}
@-webkit-keyframes spinner-grow {
  0% {
    transform: scale(0);
  }
  50% {
    opacity: 1;
    transform: none;
  }
}
@keyframes spinner-grow {
  0% {
    transform: scale(0);
  }
  50% {
    opacity: 1;
    transform: none;
  }
}
.spinner-grow {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: text-bottom;
  background-color: currentColor;
  border-radius: 50%;
  opacity: 0;
  -webkit-animation: spinner-grow 0.75s linear infinite;
          animation: spinner-grow 0.75s linear infinite;
}
.spinner-grow-sm {
  width: 1rem;
  height: 1rem;
}
.c-subheader {
  position: relative;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  width: 100%;
  min-height: 48px;
}
.c-subheader[class*=bg-] {
  border-color: rgba(0, 0, 21, 0.1);
}
.c-subheader.c-subheader-fixed {
  position: fixed;
  right: 0;
  left: 0;
  z-index: 1030;
}
.c-app:not(.c-legacy-theme) .c-subheader.c-subheader-fixed {
  border: 0;
  box-shadow: 0 2px 2px 0 rgba(var(--elevation-base-color), .14), 0 3px 1px -2px rgba(var(--elevation-base-color), .12), 0 1px 5px 0 rgba(var(--elevation-base-color), .20);
  -webkit-clip-path: inset(0 0 -1000px 0);
          clip-path: inset(0 0 -1000px 0);
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .c-subheader.c-subheader-fixed {
    box-shadow: 0 2px 2px 0 rgba(60, 75, 100, .14), 0 3px 1px -2px rgba(60, 75, 100, .12), 0 1px 5px 0 rgba(60, 75, 100, .20);
  }
}
.c-subheader-nav {
  display: flex;
  flex-direction: row;
  align-items: center;
  min-height: 48px;
  padding: 0;
  margin-bottom: 0;
  list-style: none;
}
.c-subheader-nav .c-subheader-nav-item {
  position: relative;
}
.c-subheader-nav .c-subheader-nav-btn {
  background-color: transparent;
  border: 1px solid transparent;
}
.c-subheader-nav .c-subheader-nav-link,
.c-subheader-nav .c-subheader-nav-btn {
  display: flex;
  align-items: center;
  padding-right: 0.5rem;
  padding-left: 0.5rem;
}
.c-subheader-nav .c-subheader-nav-link .badge,
.c-subheader-nav .c-subheader-nav-btn .badge {
  position: absolute;
  top: 50%;
  margin-top: -16px;
}
html:not([dir=rtl]) .c-subheader-nav .c-subheader-nav-link .badge,
html:not([dir=rtl]) .c-subheader-nav .c-subheader-nav-btn .badge {
  left: 50%;
  margin-left: 0;
}
*[dir=rtl] .c-subheader-nav .c-subheader-nav-link .badge,
*[dir=rtl] .c-subheader-nav .c-subheader-nav-btn .badge {
  right: 50%;
  margin-right: 0;
}
.c-subheader-nav .c-subheader-nav-link:hover,
.c-subheader-nav .c-subheader-nav-btn:hover {
  text-decoration: none;
}
.c-subheader.c-subheader-dark {
  background: #3c4b64;
  border-bottom: 1px solid #636f83;
}
.c-subheader.c-subheader-dark .c-subheader-nav .c-subheader-nav-link,
.c-subheader.c-subheader-dark .c-subheader-nav .c-subheader-nav-btn {
  color: rgba(255, 255, 255, 0.75);
}
.c-subheader.c-subheader-dark .c-subheader-nav .c-subheader-nav-link:hover, .c-subheader.c-subheader-dark .c-subheader-nav .c-subheader-nav-link:focus,
.c-subheader.c-subheader-dark .c-subheader-nav .c-subheader-nav-btn:hover,
.c-subheader.c-subheader-dark .c-subheader-nav .c-subheader-nav-btn:focus {
  color: rgba(255, 255, 255, 0.9);
}
.c-subheader.c-subheader-dark .c-subheader-nav .c-subheader-nav-link.c-disabled,
.c-subheader.c-subheader-dark .c-subheader-nav .c-subheader-nav-btn.c-disabled {
  color: rgba(255, 255, 255, 0.25);
}
.c-subheader.c-subheader-dark .c-subheader-nav .c-show > .c-subheader-nav-link,
.c-subheader.c-subheader-dark .c-subheader-nav .c-active > .c-subheader-nav-link,
.c-subheader.c-subheader-dark .c-subheader-nav .c-subheader-nav-link.c-show,
.c-subheader.c-subheader-dark .c-subheader-nav .c-subheader-nav-link.c-active {
  color: #fff;
}
.c-subheader.c-subheader-dark .c-subheader-text {
  color: rgba(255, 255, 255, 0.75);
}
.c-subheader.c-subheader-dark .c-subheader-text a {
  color: #fff;
}
.c-subheader.c-subheader-dark .c-subheader-text a:hover, .c-subheader.c-subheader-dark .c-subheader-text a:focus {
  color: #fff;
}
.c-subheader {
  background: #fff;
  border-bottom: 1px solid #d8dbe0;
}
.c-subheader .c-subheader-nav .c-subheader-nav-link,
.c-subheader .c-subheader-nav .c-subheader-nav-btn {
  color: rgba(0, 0, 21, 0.5);
}
.c-subheader .c-subheader-nav .c-subheader-nav-link:hover, .c-subheader .c-subheader-nav .c-subheader-nav-link:focus,
.c-subheader .c-subheader-nav .c-subheader-nav-btn:hover,
.c-subheader .c-subheader-nav .c-subheader-nav-btn:focus {
  color: rgba(0, 0, 21, 0.7);
}
.c-subheader .c-subheader-nav .c-subheader-nav-link.c-disabled,
.c-subheader .c-subheader-nav .c-subheader-nav-btn.c-disabled {
  color: rgba(0, 0, 21, 0.3);
}
.c-subheader .c-subheader-nav .c-show > .c-subheader-nav-link,
.c-subheader .c-subheader-nav .c-active > .c-subheader-nav-link,
.c-subheader .c-subheader-nav .c-subheader-nav-link.c-show,
.c-subheader .c-subheader-nav .c-subheader-nav-link.c-active {
  color: rgba(0, 0, 21, 0.9);
}
.c-subheader .c-subheader-text {
  color: rgba(0, 0, 21, 0.5);
}
.c-subheader .c-subheader-text a {
  color: rgba(0, 0, 21, 0.9);
}
.c-subheader .c-subheader-text a:hover, .c-subheader .c-subheader-text a:focus {
  color: rgba(0, 0, 21, 0.9);
}
.c-legacy-theme .c-subheader.c-subheader-dark {
  background: #181b1e;
  border-bottom: 1px solid #2f353a;
}
.c-legacy-theme .c-subheader.c-subheader-dark .c-subheader-nav .c-subheader-nav-link,
.c-legacy-theme .c-subheader.c-subheader-dark .c-subheader-nav .c-subheader-nav-btn {
  color: rgba(255, 255, 255, 0.75);
}
.c-legacy-theme .c-subheader.c-subheader-dark .c-subheader-nav .c-subheader-nav-link:hover, .c-legacy-theme .c-subheader.c-subheader-dark .c-subheader-nav .c-subheader-nav-link:focus,
.c-legacy-theme .c-subheader.c-subheader-dark .c-subheader-nav .c-subheader-nav-btn:hover,
.c-legacy-theme .c-subheader.c-subheader-dark .c-subheader-nav .c-subheader-nav-btn:focus {
  color: rgba(255, 255, 255, 0.9);
}
.c-legacy-theme .c-subheader.c-subheader-dark .c-subheader-nav .c-subheader-nav-link.c-disabled,
.c-legacy-theme .c-subheader.c-subheader-dark .c-subheader-nav .c-subheader-nav-btn.c-disabled {
  color: rgba(255, 255, 255, 0.25);
}
.c-legacy-theme .c-subheader.c-subheader-dark .c-subheader-nav .c-show > .c-subheader-nav-link,
.c-legacy-theme .c-subheader.c-subheader-dark .c-subheader-nav .c-active > .c-subheader-nav-link,
.c-legacy-theme .c-subheader.c-subheader-dark .c-subheader-nav .c-subheader-nav-link.c-show,
.c-legacy-theme .c-subheader.c-subheader-dark .c-subheader-nav .c-subheader-nav-link.c-active {
  color: #fff;
}
.c-legacy-theme .c-subheader.c-subheader-dark .c-subheader-text {
  color: rgba(255, 255, 255, 0.75);
}
.c-legacy-theme .c-subheader.c-subheader-dark .c-subheader-text a {
  color: #fff;
}
.c-legacy-theme .c-subheader.c-subheader-dark .c-subheader-text a:hover, .c-legacy-theme .c-subheader.c-subheader-dark .c-subheader-text a:focus {
  color: #fff;
}
.c-legacy-theme .c-subheader {
  background: #fff;
  border-bottom: 1px solid #c8ced3;
}
.c-legacy-theme .c-subheader .c-subheader-nav .c-subheader-nav-link,
.c-legacy-theme .c-subheader .c-subheader-nav .c-subheader-nav-btn {
  color: rgba(0, 0, 0, 0.5);
}
.c-legacy-theme .c-subheader .c-subheader-nav .c-subheader-nav-link:hover, .c-legacy-theme .c-subheader .c-subheader-nav .c-subheader-nav-link:focus,
.c-legacy-theme .c-subheader .c-subheader-nav .c-subheader-nav-btn:hover,
.c-legacy-theme .c-subheader .c-subheader-nav .c-subheader-nav-btn:focus {
  color: rgba(0, 0, 0, 0.7);
}
.c-legacy-theme .c-subheader .c-subheader-nav .c-subheader-nav-link.c-disabled,
.c-legacy-theme .c-subheader .c-subheader-nav .c-subheader-nav-btn.c-disabled {
  color: rgba(0, 0, 0, 0.3);
}
.c-legacy-theme .c-subheader .c-subheader-nav .c-show > .c-subheader-nav-link,
.c-legacy-theme .c-subheader .c-subheader-nav .c-active > .c-subheader-nav-link,
.c-legacy-theme .c-subheader .c-subheader-nav .c-subheader-nav-link.c-show,
.c-legacy-theme .c-subheader .c-subheader-nav .c-subheader-nav-link.c-active {
  color: rgba(0, 0, 0, 0.9);
}
.c-legacy-theme .c-subheader .c-subheader-text {
  color: rgba(0, 0, 0, 0.5);
}
.c-legacy-theme .c-subheader .c-subheader-text a {
  color: rgba(0, 0, 0, 0.9);
}
.c-legacy-theme .c-subheader .c-subheader-text a:hover, .c-legacy-theme .c-subheader .c-subheader-text a:focus {
  color: rgba(0, 0, 0, 0.9);
}
.c-dark-theme .c-subheader {
  background: #2a2b36;
  border-bottom: 0;
}
.c-dark-theme .c-subheader .c-subheader-nav .c-subheader-nav-link,
.c-dark-theme .c-subheader .c-subheader-nav .c-subheader-nav-btn {
  color: rgba(255, 255, 255, 0.75);
}
.c-dark-theme .c-subheader .c-subheader-nav .c-subheader-nav-link:hover, .c-dark-theme .c-subheader .c-subheader-nav .c-subheader-nav-link:focus,
.c-dark-theme .c-subheader .c-subheader-nav .c-subheader-nav-btn:hover,
.c-dark-theme .c-subheader .c-subheader-nav .c-subheader-nav-btn:focus {
  color: rgba(255, 255, 255, 0.9);
}
.c-dark-theme .c-subheader .c-subheader-nav .c-subheader-nav-link.c-disabled,
.c-dark-theme .c-subheader .c-subheader-nav .c-subheader-nav-btn.c-disabled {
  color: rgba(255, 255, 255, 0.25);
}
.c-dark-theme .c-subheader .c-subheader-nav .c-show > .c-subheader-nav-link,
.c-dark-theme .c-subheader .c-subheader-nav .c-active > .c-subheader-nav-link,
.c-dark-theme .c-subheader .c-subheader-nav .c-subheader-nav-link.c-show,
.c-dark-theme .c-subheader .c-subheader-nav .c-subheader-nav-link.c-active {
  color: #fff;
}
.c-dark-theme .c-subheader .c-subheader-text {
  color: rgba(255, 255, 255, 0.75);
}
.c-dark-theme .c-subheader .c-subheader-text a {
  color: #fff;
}
.c-dark-theme .c-subheader .c-subheader-text a:hover, .c-dark-theme .c-subheader .c-subheader-text a:focus {
  color: #fff;
}
.c-switch {
  display: inline-block;
  width: 40px;
  height: 26px;
}
.c-switch-input {
  position: absolute;
  z-index: -1;
  opacity: 0;
}
.c-switch-slider {
  position: relative;
  display: block;
  height: inherit;
  cursor: pointer;
  border: 1px solid;
  transition: 0.15s ease-out;
  border-radius: 0.25rem;
  background-color: #fff;
  border-color: #e4e7ea;
}
.c-dark-theme .c-switch-slider {
  background-color: rgba(255, 255, 255, 0.05);
  border-color: rgba(255, 255, 255, 0.09);
}
.c-switch-slider::before {
  position: absolute;
  top: 2px;
  left: 2px;
  box-sizing: border-box;
  width: 20px;
  height: 20px;
  content: "";
  background-color: #fff;
  border: 1px solid #d8dbe0;
  transition: 0.15s ease-out;
  border-radius: 0.125rem;
}
.c-switch-input:checked ~ .c-switch-slider::before {
  transform: translateX(14px);
}
.c-switch-input:focus ~ .c-switch-slider {
  color: #5c6873;
  background-color: #fff;
  border-color: #8ad4ee;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(50, 31, 219, 0.25);
}
.c-dark-theme .c-switch-input:focus ~ .c-switch-slider {
  color: rgba(255, 255, 255, 0.87);
  background-color: rgba(255, 255, 255, 0.05);
  border-color: rgba(255, 255, 255, 0.2);
}
.c-switch-input:disabled ~ .c-switch-slider {
  cursor: not-allowed;
  opacity: 0.5;
}
.c-switch-lg {
  width: 48px;
  height: 30px;
}
.c-switch-lg .c-switch-slider {
  font-size: 12px;
}
.c-switch-lg .c-switch-slider::before {
  width: 24px;
  height: 24px;
}
.c-switch-lg .c-switch-slider::after {
  font-size: 12px;
}
.c-switch-lg .c-switch-input:checked ~ .c-switch-slider::before {
  transform: translateX(18px);
}
.c-switch-sm {
  width: 32px;
  height: 22px;
}
.c-switch-sm .c-switch-slider {
  font-size: 8px;
}
.c-switch-sm .c-switch-slider::before {
  width: 16px;
  height: 16px;
}
.c-switch-sm .c-switch-slider::after {
  font-size: 8px;
}
.c-switch-sm .c-switch-input:checked ~ .c-switch-slider::before {
  transform: translateX(10px);
}
.c-switch-label {
  width: 48px;
}
.c-switch-label .c-switch-slider::before {
  z-index: 2;
}
.c-switch-label .c-switch-slider::after {
  position: absolute;
  top: 50%;
  z-index: 1;
  width: 50%;
  margin-top: -0.5em;
  font-size: 10px;
  font-weight: 600;
  line-height: 1;
  color: #c4c9d0;
  text-align: center;
  text-transform: uppercase;
  content: attr(data-unchecked);
  transition: inherit;
}
html:not([dir=rtl]) .c-switch-label .c-switch-slider::after {
  right: 1px;
}
.c-switch-label .c-switch-input:checked ~ .c-switch-slider::before {
  transform: translateX(22px);
}
.c-switch-label .c-switch-input:checked ~ .c-switch-slider::after {
  left: 1px;
  color: #fff;
  content: attr(data-checked);
}
.c-switch-label.c-switch-lg {
  width: 56px;
  height: 30px;
}
.c-switch-label.c-switch-lg .c-switch-slider {
  font-size: 12px;
}
.c-switch-label.c-switch-lg .c-switch-slider::before {
  width: 24px;
  height: 24px;
}
.c-switch-label.c-switch-lg .c-switch-slider::after {
  font-size: 12px;
}
.c-switch-label.c-switch-lg .c-switch-input:checked ~ .c-switch-slider::before {
  transform: translateX(26px);
}
.c-switch-label.c-switch-sm {
  width: 40px;
  height: 22px;
}
.c-switch-label.c-switch-sm .c-switch-slider {
  font-size: 8px;
}
.c-switch-label.c-switch-sm .c-switch-slider::before {
  width: 16px;
  height: 16px;
}
.c-switch-label.c-switch-sm .c-switch-slider::after {
  font-size: 8px;
}
.c-switch-label.c-switch-sm .c-switch-input:checked ~ .c-switch-slider::before {
  transform: translateX(18px);
}
.c-switch[class*="-3d"] .c-switch-slider {
  background-color: #ebedef;
  border-radius: 50em;
}
.c-switch[class*="-3d"] .c-switch-slider::before {
  top: -1px;
  left: -1px;
  width: 26px;
  height: 26px;
  border: 0;
  border-radius: 50em;
  box-shadow: 0 2px 5px rgba(0, 0, 21, 0.3);
}
.c-switch[class*="-3d"].c-switch-lg {
  width: 48px;
  height: 30px;
}
.c-switch[class*="-3d"].c-switch-lg .c-switch-slider::before {
  width: 30px;
  height: 30px;
}
.c-switch[class*="-3d"].c-switch-lg .c-switch-input:checked ~ .c-switch-slider::before {
  transform: translateX(18px);
}
.c-switch[class*="-3d"].c-switch-sm {
  width: 32px;
  height: 22px;
}
.c-switch[class*="-3d"].c-switch-sm .c-switch-slider::before {
  width: 22px;
  height: 22px;
}
.c-switch[class*="-3d"].c-switch-sm .c-switch-input:checked ~ .c-switch-slider::before {
  transform: translateX(10px);
}
.c-switch-primary .c-switch-input:checked + .c-switch-slider {
  background-color: #321fdb;
  border-color: #2819ae;
}
.c-switch-primary .c-switch-input:checked + .c-switch-slider::before {
  border-color: #2819ae;
}
.c-switch-3d-primary .c-switch-input:checked + .c-switch-slider {
  background-color: #321fdb;
}
.c-switch-outline-primary .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #321fdb;
}
.c-switch-outline-primary .c-switch-input:checked + .c-switch-slider::before {
  border-color: #321fdb;
}
.c-switch-outline-primary .c-switch-input:checked + .c-switch-slider::after {
  color: #321fdb;
}
.c-switch-opposite-primary .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #321fdb;
}
.c-switch-opposite-primary .c-switch-input:checked + .c-switch-slider::before {
  background-color: #321fdb;
  border-color: #321fdb;
}
.c-switch-opposite-primary .c-switch-input:checked + .c-switch-slider::after {
  color: #321fdb;
}
.c-switch-secondary .c-switch-input:checked + .c-switch-slider {
  background-color: #ced2d8;
  border-color: #b2b8c1;
}
.c-switch-secondary .c-switch-input:checked + .c-switch-slider::before {
  border-color: #b2b8c1;
}
.c-switch-3d-secondary .c-switch-input:checked + .c-switch-slider {
  background-color: #ced2d8;
}
.c-switch-outline-secondary .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #ced2d8;
}
.c-switch-outline-secondary .c-switch-input:checked + .c-switch-slider::before {
  border-color: #ced2d8;
}
.c-switch-outline-secondary .c-switch-input:checked + .c-switch-slider::after {
  color: #ced2d8;
}
.c-switch-opposite-secondary .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #ced2d8;
}
.c-switch-opposite-secondary .c-switch-input:checked + .c-switch-slider::before {
  background-color: #ced2d8;
  border-color: #ced2d8;
}
.c-switch-opposite-secondary .c-switch-input:checked + .c-switch-slider::after {
  color: #ced2d8;
}
.c-switch-success .c-switch-input:checked + .c-switch-slider {
  background-color: #2eb85c;
  border-color: #248f48;
}
.c-switch-success .c-switch-input:checked + .c-switch-slider::before {
  border-color: #248f48;
}
.c-switch-3d-success .c-switch-input:checked + .c-switch-slider {
  background-color: #2eb85c;
}
.c-switch-outline-success .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #2eb85c;
}
.c-switch-outline-success .c-switch-input:checked + .c-switch-slider::before {
  border-color: #2eb85c;
}
.c-switch-outline-success .c-switch-input:checked + .c-switch-slider::after {
  color: #2eb85c;
}
.c-switch-opposite-success .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #2eb85c;
}
.c-switch-opposite-success .c-switch-input:checked + .c-switch-slider::before {
  background-color: #2eb85c;
  border-color: #2eb85c;
}
.c-switch-opposite-success .c-switch-input:checked + .c-switch-slider::after {
  color: #2eb85c;
}
.c-switch-info .c-switch-input:checked + .c-switch-slider {
  background-color: #39f;
  border-color: #0080ff;
}
.c-switch-info .c-switch-input:checked + .c-switch-slider::before {
  border-color: #0080ff;
}
.c-switch-3d-info .c-switch-input:checked + .c-switch-slider {
  background-color: #39f;
}
.c-switch-outline-info .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #39f;
}
.c-switch-outline-info .c-switch-input:checked + .c-switch-slider::before {
  border-color: #39f;
}
.c-switch-outline-info .c-switch-input:checked + .c-switch-slider::after {
  color: #39f;
}
.c-switch-opposite-info .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #39f;
}
.c-switch-opposite-info .c-switch-input:checked + .c-switch-slider::before {
  background-color: #39f;
  border-color: #39f;
}
.c-switch-opposite-info .c-switch-input:checked + .c-switch-slider::after {
  color: #39f;
}
.c-switch-warning .c-switch-input:checked + .c-switch-slider {
  background-color: #f9b115;
  border-color: #d69405;
}
.c-switch-warning .c-switch-input:checked + .c-switch-slider::before {
  border-color: #d69405;
}
.c-switch-3d-warning .c-switch-input:checked + .c-switch-slider {
  background-color: #f9b115;
}
.c-switch-outline-warning .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #f9b115;
}
.c-switch-outline-warning .c-switch-input:checked + .c-switch-slider::before {
  border-color: #f9b115;
}
.c-switch-outline-warning .c-switch-input:checked + .c-switch-slider::after {
  color: #f9b115;
}
.c-switch-opposite-warning .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #f9b115;
}
.c-switch-opposite-warning .c-switch-input:checked + .c-switch-slider::before {
  background-color: #f9b115;
  border-color: #f9b115;
}
.c-switch-opposite-warning .c-switch-input:checked + .c-switch-slider::after {
  color: #f9b115;
}
.c-switch-danger .c-switch-input:checked + .c-switch-slider {
  background-color: #e55353;
  border-color: #de2727;
}
.c-switch-danger .c-switch-input:checked + .c-switch-slider::before {
  border-color: #de2727;
}
.c-switch-3d-danger .c-switch-input:checked + .c-switch-slider {
  background-color: #e55353;
}
.c-switch-outline-danger .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #e55353;
}
.c-switch-outline-danger .c-switch-input:checked + .c-switch-slider::before {
  border-color: #e55353;
}
.c-switch-outline-danger .c-switch-input:checked + .c-switch-slider::after {
  color: #e55353;
}
.c-switch-opposite-danger .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #e55353;
}
.c-switch-opposite-danger .c-switch-input:checked + .c-switch-slider::before {
  background-color: #e55353;
  border-color: #e55353;
}
.c-switch-opposite-danger .c-switch-input:checked + .c-switch-slider::after {
  color: #e55353;
}
.c-switch-light .c-switch-input:checked + .c-switch-slider {
  background-color: #ebedef;
  border-color: #cfd4d8;
}
.c-switch-light .c-switch-input:checked + .c-switch-slider::before {
  border-color: #cfd4d8;
}
.c-switch-3d-light .c-switch-input:checked + .c-switch-slider {
  background-color: #ebedef;
}
.c-switch-outline-light .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #ebedef;
}
.c-switch-outline-light .c-switch-input:checked + .c-switch-slider::before {
  border-color: #ebedef;
}
.c-switch-outline-light .c-switch-input:checked + .c-switch-slider::after {
  color: #ebedef;
}
.c-switch-opposite-light .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #ebedef;
}
.c-switch-opposite-light .c-switch-input:checked + .c-switch-slider::before {
  background-color: #ebedef;
  border-color: #ebedef;
}
.c-switch-opposite-light .c-switch-input:checked + .c-switch-slider::after {
  color: #ebedef;
}
.c-switch-dark .c-switch-input:checked + .c-switch-slider {
  background-color: #636f83;
  border-color: #4d5666;
}
.c-switch-dark .c-switch-input:checked + .c-switch-slider::before {
  border-color: #4d5666;
}
.c-switch-3d-dark .c-switch-input:checked + .c-switch-slider {
  background-color: #636f83;
}
.c-switch-outline-dark .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #636f83;
}
.c-switch-outline-dark .c-switch-input:checked + .c-switch-slider::before {
  border-color: #636f83;
}
.c-switch-outline-dark .c-switch-input:checked + .c-switch-slider::after {
  color: #636f83;
}
.c-switch-opposite-dark .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #636f83;
}
.c-switch-opposite-dark .c-switch-input:checked + .c-switch-slider::before {
  background-color: #636f83;
  border-color: #636f83;
}
.c-switch-opposite-dark .c-switch-input:checked + .c-switch-slider::after {
  color: #636f83;
}
.c-dark-theme .c-switch-primary .c-switch-input:checked + .c-switch-slider {
  background-color: #4638c2;
  border-color: #382d9a;
}
.c-dark-theme .c-switch-primary .c-switch-input:checked + .c-switch-slider::before {
  border-color: #382d9a;
}
.c-dark-theme .c-switch-3d-primary .c-switch-input:checked + .c-switch-slider {
  background-color: #4638c2;
}
.c-dark-theme .c-switch-outline-primary .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #4638c2;
}
.c-dark-theme .c-switch-outline-primary .c-switch-input:checked + .c-switch-slider::before {
  border-color: #4638c2;
}
.c-dark-theme .c-switch-outline-primary .c-switch-input:checked + .c-switch-slider::after {
  color: #4638c2;
}
.c-dark-theme .c-switch-opposite-primary .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #4638c2;
}
.c-dark-theme .c-switch-opposite-primary .c-switch-input:checked + .c-switch-slider::before {
  background-color: #4638c2;
  border-color: #4638c2;
}
.c-dark-theme .c-switch-opposite-primary .c-switch-input:checked + .c-switch-slider::after {
  color: #4638c2;
}
.c-dark-theme .c-switch-secondary .c-switch-input:checked + .c-switch-slider {
  background-color: #4c4f54;
  border-color: #343639;
}
.c-dark-theme .c-switch-secondary .c-switch-input:checked + .c-switch-slider::before {
  border-color: #343639;
}
.c-dark-theme .c-switch-3d-secondary .c-switch-input:checked + .c-switch-slider {
  background-color: #4c4f54;
}
.c-dark-theme .c-switch-outline-secondary .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #4c4f54;
}
.c-dark-theme .c-switch-outline-secondary .c-switch-input:checked + .c-switch-slider::before {
  border-color: #4c4f54;
}
.c-dark-theme .c-switch-outline-secondary .c-switch-input:checked + .c-switch-slider::after {
  color: #4c4f54;
}
.c-dark-theme .c-switch-opposite-secondary .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #4c4f54;
}
.c-dark-theme .c-switch-opposite-secondary .c-switch-input:checked + .c-switch-slider::before {
  background-color: #4c4f54;
  border-color: #4c4f54;
}
.c-dark-theme .c-switch-opposite-secondary .c-switch-input:checked + .c-switch-slider::after {
  color: #4c4f54;
}
.c-dark-theme .c-switch-success .c-switch-input:checked + .c-switch-slider {
  background-color: #45a164;
  border-color: #367d4e;
}
.c-dark-theme .c-switch-success .c-switch-input:checked + .c-switch-slider::before {
  border-color: #367d4e;
}
.c-dark-theme .c-switch-3d-success .c-switch-input:checked + .c-switch-slider {
  background-color: #45a164;
}
.c-dark-theme .c-switch-outline-success .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #45a164;
}
.c-dark-theme .c-switch-outline-success .c-switch-input:checked + .c-switch-slider::before {
  border-color: #45a164;
}
.c-dark-theme .c-switch-outline-success .c-switch-input:checked + .c-switch-slider::after {
  color: #45a164;
}
.c-dark-theme .c-switch-opposite-success .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #45a164;
}
.c-dark-theme .c-switch-opposite-success .c-switch-input:checked + .c-switch-slider::before {
  background-color: #45a164;
  border-color: #45a164;
}
.c-dark-theme .c-switch-opposite-success .c-switch-input:checked + .c-switch-slider::after {
  color: #45a164;
}
.c-dark-theme .c-switch-info .c-switch-input:checked + .c-switch-slider {
  background-color: #4799eb;
  border-color: #1a80e6;
}
.c-dark-theme .c-switch-info .c-switch-input:checked + .c-switch-slider::before {
  border-color: #1a80e6;
}
.c-dark-theme .c-switch-3d-info .c-switch-input:checked + .c-switch-slider {
  background-color: #4799eb;
}
.c-dark-theme .c-switch-outline-info .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #4799eb;
}
.c-dark-theme .c-switch-outline-info .c-switch-input:checked + .c-switch-slider::before {
  border-color: #4799eb;
}
.c-dark-theme .c-switch-outline-info .c-switch-input:checked + .c-switch-slider::after {
  color: #4799eb;
}
.c-dark-theme .c-switch-opposite-info .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #4799eb;
}
.c-dark-theme .c-switch-opposite-info .c-switch-input:checked + .c-switch-slider::before {
  background-color: #4799eb;
  border-color: #4799eb;
}
.c-dark-theme .c-switch-opposite-info .c-switch-input:checked + .c-switch-slider::after {
  color: #4799eb;
}
.c-dark-theme .c-switch-warning .c-switch-input:checked + .c-switch-slider {
  background-color: #e1a82d;
  border-color: #c08c1b;
}
.c-dark-theme .c-switch-warning .c-switch-input:checked + .c-switch-slider::before {
  border-color: #c08c1b;
}
.c-dark-theme .c-switch-3d-warning .c-switch-input:checked + .c-switch-slider {
  background-color: #e1a82d;
}
.c-dark-theme .c-switch-outline-warning .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #e1a82d;
}
.c-dark-theme .c-switch-outline-warning .c-switch-input:checked + .c-switch-slider::before {
  border-color: #e1a82d;
}
.c-dark-theme .c-switch-outline-warning .c-switch-input:checked + .c-switch-slider::after {
  color: #e1a82d;
}
.c-dark-theme .c-switch-opposite-warning .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #e1a82d;
}
.c-dark-theme .c-switch-opposite-warning .c-switch-input:checked + .c-switch-slider::before {
  background-color: #e1a82d;
  border-color: #e1a82d;
}
.c-dark-theme .c-switch-opposite-warning .c-switch-input:checked + .c-switch-slider::after {
  color: #e1a82d;
}
.c-dark-theme .c-switch-danger .c-switch-input:checked + .c-switch-slider {
  background-color: #d16767;
  border-color: #c54040;
}
.c-dark-theme .c-switch-danger .c-switch-input:checked + .c-switch-slider::before {
  border-color: #c54040;
}
.c-dark-theme .c-switch-3d-danger .c-switch-input:checked + .c-switch-slider {
  background-color: #d16767;
}
.c-dark-theme .c-switch-outline-danger .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #d16767;
}
.c-dark-theme .c-switch-outline-danger .c-switch-input:checked + .c-switch-slider::before {
  border-color: #d16767;
}
.c-dark-theme .c-switch-outline-danger .c-switch-input:checked + .c-switch-slider::after {
  color: #d16767;
}
.c-dark-theme .c-switch-opposite-danger .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #d16767;
}
.c-dark-theme .c-switch-opposite-danger .c-switch-input:checked + .c-switch-slider::before {
  background-color: #d16767;
  border-color: #d16767;
}
.c-dark-theme .c-switch-opposite-danger .c-switch-input:checked + .c-switch-slider::after {
  color: #d16767;
}
.c-dark-theme .c-switch-light .c-switch-input:checked + .c-switch-slider {
  background-color: #6c6e7e;
  border-color: #555662;
}
.c-dark-theme .c-switch-light .c-switch-input:checked + .c-switch-slider::before {
  border-color: #555662;
}
.c-dark-theme .c-switch-3d-light .c-switch-input:checked + .c-switch-slider {
  background-color: #6c6e7e;
}
.c-dark-theme .c-switch-outline-light .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #6c6e7e;
}
.c-dark-theme .c-switch-outline-light .c-switch-input:checked + .c-switch-slider::before {
  border-color: #6c6e7e;
}
.c-dark-theme .c-switch-outline-light .c-switch-input:checked + .c-switch-slider::after {
  color: #6c6e7e;
}
.c-dark-theme .c-switch-opposite-light .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #6c6e7e;
}
.c-dark-theme .c-switch-opposite-light .c-switch-input:checked + .c-switch-slider::before {
  background-color: #6c6e7e;
  border-color: #6c6e7e;
}
.c-dark-theme .c-switch-opposite-light .c-switch-input:checked + .c-switch-slider::after {
  color: #6c6e7e;
}
.c-dark-theme .c-switch-dark .c-switch-input:checked + .c-switch-slider {
  background-color: #0e0e15;
  border-color: black;
}
.c-dark-theme .c-switch-dark .c-switch-input:checked + .c-switch-slider::before {
  border-color: black;
}
.c-dark-theme .c-switch-3d-dark .c-switch-input:checked + .c-switch-slider {
  background-color: #0e0e15;
}
.c-dark-theme .c-switch-outline-dark .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #0e0e15;
}
.c-dark-theme .c-switch-outline-dark .c-switch-input:checked + .c-switch-slider::before {
  border-color: #0e0e15;
}
.c-dark-theme .c-switch-outline-dark .c-switch-input:checked + .c-switch-slider::after {
  color: #0e0e15;
}
.c-dark-theme .c-switch-opposite-dark .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #0e0e15;
}
.c-dark-theme .c-switch-opposite-dark .c-switch-input:checked + .c-switch-slider::before {
  background-color: #0e0e15;
  border-color: #0e0e15;
}
.c-dark-theme .c-switch-opposite-dark .c-switch-input:checked + .c-switch-slider::after {
  color: #0e0e15;
}
.c-legacy-theme .c-switch-primary .c-switch-input:checked + .c-switch-slider {
  background-color: #20a8d8;
  border-color: #1985ac;
}
.c-legacy-theme .c-switch-primary .c-switch-input:checked + .c-switch-slider::before {
  border-color: #1985ac;
}
.c-legacy-theme .c-switch-3d-primary .c-switch-input:checked + .c-switch-slider {
  background-color: #20a8d8;
}
.c-legacy-theme .c-switch-outline-primary .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #20a8d8;
}
.c-legacy-theme .c-switch-outline-primary .c-switch-input:checked + .c-switch-slider::before {
  border-color: #20a8d8;
}
.c-legacy-theme .c-switch-outline-primary .c-switch-input:checked + .c-switch-slider::after {
  color: #20a8d8;
}
.c-legacy-theme .c-switch-opposite-primary .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #20a8d8;
}
.c-legacy-theme .c-switch-opposite-primary .c-switch-input:checked + .c-switch-slider::before {
  background-color: #20a8d8;
  border-color: #20a8d8;
}
.c-legacy-theme .c-switch-opposite-primary .c-switch-input:checked + .c-switch-slider::after {
  color: #20a8d8;
}
.c-legacy-theme .c-switch-secondary .c-switch-input:checked + .c-switch-slider {
  background-color: #c8ced3;
  border-color: #acb5bc;
}
.c-legacy-theme .c-switch-secondary .c-switch-input:checked + .c-switch-slider::before {
  border-color: #acb5bc;
}
.c-legacy-theme .c-switch-3d-secondary .c-switch-input:checked + .c-switch-slider {
  background-color: #c8ced3;
}
.c-legacy-theme .c-switch-outline-secondary .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #c8ced3;
}
.c-legacy-theme .c-switch-outline-secondary .c-switch-input:checked + .c-switch-slider::before {
  border-color: #c8ced3;
}
.c-legacy-theme .c-switch-outline-secondary .c-switch-input:checked + .c-switch-slider::after {
  color: #c8ced3;
}
.c-legacy-theme .c-switch-opposite-secondary .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #c8ced3;
}
.c-legacy-theme .c-switch-opposite-secondary .c-switch-input:checked + .c-switch-slider::before {
  background-color: #c8ced3;
  border-color: #c8ced3;
}
.c-legacy-theme .c-switch-opposite-secondary .c-switch-input:checked + .c-switch-slider::after {
  color: #c8ced3;
}
.c-legacy-theme .c-switch-success .c-switch-input:checked + .c-switch-slider {
  background-color: #4dbd74;
  border-color: #3a9d5d;
}
.c-legacy-theme .c-switch-success .c-switch-input:checked + .c-switch-slider::before {
  border-color: #3a9d5d;
}
.c-legacy-theme .c-switch-3d-success .c-switch-input:checked + .c-switch-slider {
  background-color: #4dbd74;
}
.c-legacy-theme .c-switch-outline-success .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #4dbd74;
}
.c-legacy-theme .c-switch-outline-success .c-switch-input:checked + .c-switch-slider::before {
  border-color: #4dbd74;
}
.c-legacy-theme .c-switch-outline-success .c-switch-input:checked + .c-switch-slider::after {
  color: #4dbd74;
}
.c-legacy-theme .c-switch-opposite-success .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #4dbd74;
}
.c-legacy-theme .c-switch-opposite-success .c-switch-input:checked + .c-switch-slider::before {
  background-color: #4dbd74;
  border-color: #4dbd74;
}
.c-legacy-theme .c-switch-opposite-success .c-switch-input:checked + .c-switch-slider::after {
  color: #4dbd74;
}
.c-legacy-theme .c-switch-info .c-switch-input:checked + .c-switch-slider {
  background-color: #63c2de;
  border-color: #39b2d5;
}
.c-legacy-theme .c-switch-info .c-switch-input:checked + .c-switch-slider::before {
  border-color: #39b2d5;
}
.c-legacy-theme .c-switch-3d-info .c-switch-input:checked + .c-switch-slider {
  background-color: #63c2de;
}
.c-legacy-theme .c-switch-outline-info .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #63c2de;
}
.c-legacy-theme .c-switch-outline-info .c-switch-input:checked + .c-switch-slider::before {
  border-color: #63c2de;
}
.c-legacy-theme .c-switch-outline-info .c-switch-input:checked + .c-switch-slider::after {
  color: #63c2de;
}
.c-legacy-theme .c-switch-opposite-info .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #63c2de;
}
.c-legacy-theme .c-switch-opposite-info .c-switch-input:checked + .c-switch-slider::before {
  background-color: #63c2de;
  border-color: #63c2de;
}
.c-legacy-theme .c-switch-opposite-info .c-switch-input:checked + .c-switch-slider::after {
  color: #63c2de;
}
.c-legacy-theme .c-switch-warning .c-switch-input:checked + .c-switch-slider {
  background-color: #ffc107;
  border-color: #d39e00;
}
.c-legacy-theme .c-switch-warning .c-switch-input:checked + .c-switch-slider::before {
  border-color: #d39e00;
}
.c-legacy-theme .c-switch-3d-warning .c-switch-input:checked + .c-switch-slider {
  background-color: #ffc107;
}
.c-legacy-theme .c-switch-outline-warning .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #ffc107;
}
.c-legacy-theme .c-switch-outline-warning .c-switch-input:checked + .c-switch-slider::before {
  border-color: #ffc107;
}
.c-legacy-theme .c-switch-outline-warning .c-switch-input:checked + .c-switch-slider::after {
  color: #ffc107;
}
.c-legacy-theme .c-switch-opposite-warning .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #ffc107;
}
.c-legacy-theme .c-switch-opposite-warning .c-switch-input:checked + .c-switch-slider::before {
  background-color: #ffc107;
  border-color: #ffc107;
}
.c-legacy-theme .c-switch-opposite-warning .c-switch-input:checked + .c-switch-slider::after {
  color: #ffc107;
}
.c-legacy-theme .c-switch-danger .c-switch-input:checked + .c-switch-slider {
  background-color: #f86c6b;
  border-color: #f63c3a;
}
.c-legacy-theme .c-switch-danger .c-switch-input:checked + .c-switch-slider::before {
  border-color: #f63c3a;
}
.c-legacy-theme .c-switch-3d-danger .c-switch-input:checked + .c-switch-slider {
  background-color: #f86c6b;
}
.c-legacy-theme .c-switch-outline-danger .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #f86c6b;
}
.c-legacy-theme .c-switch-outline-danger .c-switch-input:checked + .c-switch-slider::before {
  border-color: #f86c6b;
}
.c-legacy-theme .c-switch-outline-danger .c-switch-input:checked + .c-switch-slider::after {
  color: #f86c6b;
}
.c-legacy-theme .c-switch-opposite-danger .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #f86c6b;
}
.c-legacy-theme .c-switch-opposite-danger .c-switch-input:checked + .c-switch-slider::before {
  background-color: #f86c6b;
  border-color: #f86c6b;
}
.c-legacy-theme .c-switch-opposite-danger .c-switch-input:checked + .c-switch-slider::after {
  color: #f86c6b;
}
.c-legacy-theme .c-switch-light .c-switch-input:checked + .c-switch-slider {
  background-color: #f0f3f5;
  border-color: #d1dbe1;
}
.c-legacy-theme .c-switch-light .c-switch-input:checked + .c-switch-slider::before {
  border-color: #d1dbe1;
}
.c-legacy-theme .c-switch-3d-light .c-switch-input:checked + .c-switch-slider {
  background-color: #f0f3f5;
}
.c-legacy-theme .c-switch-outline-light .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #f0f3f5;
}
.c-legacy-theme .c-switch-outline-light .c-switch-input:checked + .c-switch-slider::before {
  border-color: #f0f3f5;
}
.c-legacy-theme .c-switch-outline-light .c-switch-input:checked + .c-switch-slider::after {
  color: #f0f3f5;
}
.c-legacy-theme .c-switch-opposite-light .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #f0f3f5;
}
.c-legacy-theme .c-switch-opposite-light .c-switch-input:checked + .c-switch-slider::before {
  background-color: #f0f3f5;
  border-color: #f0f3f5;
}
.c-legacy-theme .c-switch-opposite-light .c-switch-input:checked + .c-switch-slider::after {
  color: #f0f3f5;
}
.c-legacy-theme .c-switch-dark .c-switch-input:checked + .c-switch-slider {
  background-color: #2f353a;
  border-color: #181b1e;
}
.c-legacy-theme .c-switch-dark .c-switch-input:checked + .c-switch-slider::before {
  border-color: #181b1e;
}
.c-legacy-theme .c-switch-3d-dark .c-switch-input:checked + .c-switch-slider {
  background-color: #2f353a;
}
.c-legacy-theme .c-switch-outline-dark .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #2f353a;
}
.c-legacy-theme .c-switch-outline-dark .c-switch-input:checked + .c-switch-slider::before {
  border-color: #2f353a;
}
.c-legacy-theme .c-switch-outline-dark .c-switch-input:checked + .c-switch-slider::after {
  color: #2f353a;
}
.c-legacy-theme .c-switch-opposite-dark .c-switch-input:checked + .c-switch-slider {
  background-color: inherit;
  border-color: #2f353a;
}
.c-legacy-theme .c-switch-opposite-dark .c-switch-input:checked + .c-switch-slider::before {
  background-color: #2f353a;
  border-color: #2f353a;
}
.c-legacy-theme .c-switch-opposite-dark .c-switch-input:checked + .c-switch-slider::after {
  color: #2f353a;
}
.c-switch-pill .c-switch-slider {
  border-radius: 50em;
}
.c-switch-pill .c-switch-slider::before {
  border-radius: 50em;
}
.c-switch-square .c-switch-slider {
  border-radius: 0;
}
.c-switch-square .c-switch-slider::before {
  border-radius: 0;
}
.table {
  width: 100%;
  margin-bottom: 1rem;
  color: #3c4b64;
}
.c-legacy-theme .table {
  color: #23282c;
}
.c-dark-theme .table {
  color: rgba(255, 255, 255, 0.87);
  background-color: transparent;
}
.table th,
.table td {
  padding: 0.75rem;
  vertical-align: top;
  border-top: 1px solid;
  border-top-color: #d8dbe0;
}
.c-legacy-theme .table th,
.c-legacy-theme .table td {
  border-top-color: #c8ced3;
}
.c-dark-theme .table th,
.c-dark-theme .table td {
  border-top-color: rgba(255, 255, 255, 0.1);
}
.table thead th {
  vertical-align: bottom;
  border-bottom: 2px solid;
  border-bottom-color: #d8dbe0;
}
.c-legacy-theme .table thead th {
  border-bottom-color: #c8ced3;
}
.c-dark-theme .table thead th {
  border-bottom-color: rgba(255, 255, 255, 0.1);
}
.table tbody + tbody {
  border-top: 2px solid;
  border-top-color: #d8dbe0;
}
.c-legacy-theme .table tbody + tbody {
  border-top-color: #c8ced3;
}
.c-dark-theme .table tbody + tbody {
  border-top-color: rgba(255, 255, 255, 0.1);
}
.table-sm th,
.table-sm td {
  padding: 0.3rem;
}
.table-bordered {
  border: 1px solid;
  border-color: #d8dbe0;
}
.c-legacy-theme .table-bordered {
  border-color: #c8ced3;
}
.c-dark-theme .table-bordered {
  border-color: rgba(255, 255, 255, 0.1);
}
.table-bordered th,
.table-bordered td {
  border: 1px solid;
  border-color: #d8dbe0;
}
.c-legacy-theme .table-bordered th,
.c-legacy-theme .table-bordered td {
  border-color: #c8ced3;
}
.c-dark-theme .table-bordered th,
.c-dark-theme .table-bordered td {
  border-color: rgba(255, 255, 255, 0.1);
}
.table-bordered thead th,
.table-bordered thead td {
  border-bottom-width: 2px;
}
.table-borderless th,
.table-borderless td,
.table-borderless thead th,
.table-borderless tbody + tbody {
  border: 0;
}
.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(0, 0, 21, 0.05);
}
.c-legacy-theme .table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(0, 0, 0, 0.05);
}
.c-dark-theme .table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(0, 0, 21, 0.05);
}
@media (hover: hover), (-ms-high-contrast: none) {
  .table-hover tbody tr:hover {
    color: #3c4b64;
    background-color: rgba(0, 0, 21, 0.075);
  }
  .c-legacy-theme .table-hover tbody tr:hover {
    color: #23282c;
    background-color: rgba(0, 0, 0, 0.075);
  }

  .c-dark-theme .table-hover tbody tr:hover {
    color: rgba(255, 255, 255, 0.87);
    background-color: rgba(255, 255, 255, 0.1);
  }
}
.table-primary,
.table-primary > th,
.table-primary > td {
  color: #0a0b18;
  background-color: #c6c0f5;
}
.table-primary th,
.table-primary td,
.table-primary thead th,
.table-primary tbody + tbody {
  border-color: #948bec;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .table-hover .table-primary:hover {
    background-color: #b2aaf2;
  }
  .table-hover .table-primary:hover > td,
.table-hover .table-primary:hover > th {
    background-color: #b2aaf2;
  }
}
.table-secondary,
.table-secondary > th,
.table-secondary > td {
  color: #0a0b18;
  background-color: #f1f2f4;
}
.table-secondary th,
.table-secondary td,
.table-secondary thead th,
.table-secondary tbody + tbody {
  border-color: #e6e8eb;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .table-hover .table-secondary:hover {
    background-color: #e3e5e9;
  }
  .table-hover .table-secondary:hover > td,
.table-hover .table-secondary:hover > th {
    background-color: #e3e5e9;
  }
}
.table-success,
.table-success > th,
.table-success > td {
  color: #0a0b18;
  background-color: #c4ebd1;
}
.table-success th,
.table-success td,
.table-success thead th,
.table-success tbody + tbody {
  border-color: #92daaa;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .table-hover .table-success:hover {
    background-color: #b1e5c2;
  }
  .table-hover .table-success:hover > td,
.table-hover .table-success:hover > th {
    background-color: #b1e5c2;
  }
}
.table-info,
.table-info > th,
.table-info > td {
  color: #0a0b18;
  background-color: #c6e2ff;
}
.table-info th,
.table-info td,
.table-info thead th,
.table-info tbody + tbody {
  border-color: #95caff;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .table-hover .table-info:hover {
    background-color: #add5ff;
  }
  .table-hover .table-info:hover > td,
.table-hover .table-info:hover > th {
    background-color: #add5ff;
  }
}
.table-warning,
.table-warning > th,
.table-warning > td {
  color: #0a0b18;
  background-color: #fde9bd;
}
.table-warning th,
.table-warning td,
.table-warning thead th,
.table-warning tbody + tbody {
  border-color: #fcd685;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .table-hover .table-warning:hover {
    background-color: #fce1a4;
  }
  .table-hover .table-warning:hover > td,
.table-hover .table-warning:hover > th {
    background-color: #fce1a4;
  }
}
.table-danger,
.table-danger > th,
.table-danger > td {
  color: #0a0b18;
  background-color: #f8cfcf;
}
.table-danger th,
.table-danger td,
.table-danger thead th,
.table-danger tbody + tbody {
  border-color: #f1a6a6;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .table-hover .table-danger:hover {
    background-color: #f5b9b9;
  }
  .table-hover .table-danger:hover > td,
.table-hover .table-danger:hover > th {
    background-color: #f5b9b9;
  }
}
.table-light,
.table-light > th,
.table-light > td {
  color: #0a0b18;
  background-color: #f9fafb;
}
.table-light th,
.table-light td,
.table-light thead th,
.table-light tbody + tbody {
  border-color: #f5f6f7;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .table-hover .table-light:hover {
    background-color: #eaedf1;
  }
  .table-hover .table-light:hover > td,
.table-hover .table-light:hover > th {
    background-color: #eaedf1;
  }
}
.table-dark,
.table-dark > th,
.table-dark > td {
  color: #0a0b18;
  background-color: #d3d7dc;
}
.table-dark th,
.table-dark td,
.table-dark thead th,
.table-dark tbody + tbody {
  border-color: #aeb4bf;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .table-hover .table-dark:hover {
    background-color: #c5cad1;
  }
  .table-hover .table-dark:hover > td,
.table-hover .table-dark:hover > th {
    background-color: #c5cad1;
  }
}
.c-dark-theme .table-primary,
.c-dark-theme .table-primary > th,
.c-dark-theme .table-primary > td {
  color: #0a0b18;
  background-color: #cbc7ee;
}
.c-dark-theme .table-primary th,
.c-dark-theme .table-primary td,
.c-dark-theme .table-primary thead th,
.c-dark-theme .table-primary tbody + tbody {
  border-color: #9f98df;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-dark-theme .table-hover .table-primary:hover {
    background-color: #b9b3e8;
  }
  .c-dark-theme .table-hover .table-primary:hover > td,
.c-dark-theme .table-hover .table-primary:hover > th {
    background-color: #b9b3e8;
  }
}
.c-dark-theme .table-secondary,
.c-dark-theme .table-secondary > th,
.c-dark-theme .table-secondary > td {
  color: #0a0b18;
  background-color: #cdcecf;
}
.c-dark-theme .table-secondary th,
.c-dark-theme .table-secondary td,
.c-dark-theme .table-secondary thead th,
.c-dark-theme .table-secondary tbody + tbody {
  border-color: #a2a3a6;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-dark-theme .table-hover .table-secondary:hover {
    background-color: #c0c1c3;
  }
  .c-dark-theme .table-hover .table-secondary:hover > td,
.c-dark-theme .table-hover .table-secondary:hover > th {
    background-color: #c0c1c3;
  }
}
.c-dark-theme .table-success,
.c-dark-theme .table-success > th,
.c-dark-theme .table-success > td {
  color: #0a0b18;
  background-color: #cbe5d4;
}
.c-dark-theme .table-success th,
.c-dark-theme .table-success td,
.c-dark-theme .table-success thead th,
.c-dark-theme .table-success tbody + tbody {
  border-color: #9eceae;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-dark-theme .table-hover .table-success:hover {
    background-color: #baddc6;
  }
  .c-dark-theme .table-hover .table-success:hover > td,
.c-dark-theme .table-hover .table-success:hover > th {
    background-color: #baddc6;
  }
}
.c-dark-theme .table-info,
.c-dark-theme .table-info > th,
.c-dark-theme .table-info > td {
  color: #0a0b18;
  background-color: #cbe2f9;
}
.c-dark-theme .table-info th,
.c-dark-theme .table-info td,
.c-dark-theme .table-info thead th,
.c-dark-theme .table-info tbody + tbody {
  border-color: #9fcaf5;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-dark-theme .table-hover .table-info:hover {
    background-color: #b4d5f6;
  }
  .c-dark-theme .table-hover .table-info:hover > td,
.c-dark-theme .table-hover .table-info:hover > th {
    background-color: #b4d5f6;
  }
}
.c-dark-theme .table-warning,
.c-dark-theme .table-warning > th,
.c-dark-theme .table-warning > td {
  color: #0a0b18;
  background-color: #f7e7c4;
}
.c-dark-theme .table-warning th,
.c-dark-theme .table-warning td,
.c-dark-theme .table-warning thead th,
.c-dark-theme .table-warning tbody + tbody {
  border-color: #efd292;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-dark-theme .table-hover .table-warning:hover {
    background-color: #f4deae;
  }
  .c-dark-theme .table-hover .table-warning:hover > td,
.c-dark-theme .table-hover .table-warning:hover > th {
    background-color: #f4deae;
  }
}
.c-dark-theme .table-danger,
.c-dark-theme .table-danger > th,
.c-dark-theme .table-danger > td {
  color: #0a0b18;
  background-color: #f2d4d4;
}
.c-dark-theme .table-danger th,
.c-dark-theme .table-danger td,
.c-dark-theme .table-danger thead th,
.c-dark-theme .table-danger tbody + tbody {
  border-color: #e7b0b0;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-dark-theme .table-hover .table-danger:hover {
    background-color: #ecc0c0;
  }
  .c-dark-theme .table-hover .table-danger:hover > td,
.c-dark-theme .table-hover .table-danger:hover > th {
    background-color: #ecc0c0;
  }
}
.c-dark-theme .table-light,
.c-dark-theme .table-light > th,
.c-dark-theme .table-light > td {
  color: #0a0b18;
  background-color: #d6d6db;
}
.c-dark-theme .table-light th,
.c-dark-theme .table-light td,
.c-dark-theme .table-light thead th,
.c-dark-theme .table-light tbody + tbody {
  border-color: #b3b4bc;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-dark-theme .table-hover .table-light:hover {
    background-color: #c8c8cf;
  }
  .c-dark-theme .table-hover .table-light:hover > td,
.c-dark-theme .table-hover .table-light:hover > th {
    background-color: #c8c8cf;
  }
}
.c-dark-theme .table-dark,
.c-dark-theme .table-dark > th,
.c-dark-theme .table-dark > td {
  color: #0a0b18;
  background-color: #bcbcbd;
}
.c-dark-theme .table-dark th,
.c-dark-theme .table-dark td,
.c-dark-theme .table-dark thead th,
.c-dark-theme .table-dark tbody + tbody {
  border-color: #828285;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-dark-theme .table-hover .table-dark:hover {
    background-color: #afafb0;
  }
  .c-dark-theme .table-hover .table-dark:hover > td,
.c-dark-theme .table-hover .table-dark:hover > th {
    background-color: #afafb0;
  }
}
.c-legacy-theme .table-primary,
.c-legacy-theme .table-primary > th,
.c-legacy-theme .table-primary > td {
  color: #0a0b18;
  background-color: #c1e7f4;
}
.c-legacy-theme .table-primary th,
.c-legacy-theme .table-primary td,
.c-legacy-theme .table-primary thead th,
.c-legacy-theme .table-primary tbody + tbody {
  border-color: #8bd2eb;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-legacy-theme .table-hover .table-primary:hover {
    background-color: #abdff0;
  }
  .c-legacy-theme .table-hover .table-primary:hover > td,
.c-legacy-theme .table-hover .table-primary:hover > th {
    background-color: #abdff0;
  }
}
.c-legacy-theme .table-secondary,
.c-legacy-theme .table-secondary > th,
.c-legacy-theme .table-secondary > td {
  color: #0a0b18;
  background-color: #f0f1f3;
}
.c-legacy-theme .table-secondary th,
.c-legacy-theme .table-secondary td,
.c-legacy-theme .table-secondary thead th,
.c-legacy-theme .table-secondary tbody + tbody {
  border-color: #e2e6e8;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-legacy-theme .table-hover .table-secondary:hover {
    background-color: #e2e4e8;
  }
  .c-legacy-theme .table-hover .table-secondary:hover > td,
.c-legacy-theme .table-hover .table-secondary:hover > th {
    background-color: #e2e4e8;
  }
}
.c-legacy-theme .table-success,
.c-legacy-theme .table-success > th,
.c-legacy-theme .table-success > td {
  color: #0a0b18;
  background-color: #cdedd8;
}
.c-legacy-theme .table-success th,
.c-legacy-theme .table-success td,
.c-legacy-theme .table-success thead th,
.c-legacy-theme .table-success tbody + tbody {
  border-color: #a2ddb7;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-legacy-theme .table-hover .table-success:hover {
    background-color: #bae6c9;
  }
  .c-legacy-theme .table-hover .table-success:hover > td,
.c-legacy-theme .table-hover .table-success:hover > th {
    background-color: #bae6c9;
  }
}
.c-legacy-theme .table-info,
.c-legacy-theme .table-info > th,
.c-legacy-theme .table-info > td {
  color: #0a0b18;
  background-color: #d3eef6;
}
.c-legacy-theme .table-info th,
.c-legacy-theme .table-info td,
.c-legacy-theme .table-info thead th,
.c-legacy-theme .table-info tbody + tbody {
  border-color: #aedfee;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-legacy-theme .table-hover .table-info:hover {
    background-color: #bee6f2;
  }
  .c-legacy-theme .table-hover .table-info:hover > td,
.c-legacy-theme .table-hover .table-info:hover > th {
    background-color: #bee6f2;
  }
}
.c-legacy-theme .table-warning,
.c-legacy-theme .table-warning > th,
.c-legacy-theme .table-warning > td {
  color: #0a0b18;
  background-color: #ffeeba;
}
.c-legacy-theme .table-warning th,
.c-legacy-theme .table-warning td,
.c-legacy-theme .table-warning thead th,
.c-legacy-theme .table-warning tbody + tbody {
  border-color: #ffdf7e;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-legacy-theme .table-hover .table-warning:hover {
    background-color: #ffe8a1;
  }
  .c-legacy-theme .table-hover .table-warning:hover > td,
.c-legacy-theme .table-hover .table-warning:hover > th {
    background-color: #ffe8a1;
  }
}
.c-legacy-theme .table-danger,
.c-legacy-theme .table-danger > th,
.c-legacy-theme .table-danger > td {
  color: #0a0b18;
  background-color: #fdd6d6;
}
.c-legacy-theme .table-danger th,
.c-legacy-theme .table-danger td,
.c-legacy-theme .table-danger thead th,
.c-legacy-theme .table-danger tbody + tbody {
  border-color: #fbb3b2;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-legacy-theme .table-hover .table-danger:hover {
    background-color: #fcbebe;
  }
  .c-legacy-theme .table-hover .table-danger:hover > td,
.c-legacy-theme .table-hover .table-danger:hover > th {
    background-color: #fcbebe;
  }
}
.c-legacy-theme .table-light,
.c-legacy-theme .table-light > th,
.c-legacy-theme .table-light > td {
  color: #0a0b18;
  background-color: #fbfcfc;
}
.c-legacy-theme .table-light th,
.c-legacy-theme .table-light td,
.c-legacy-theme .table-light thead th,
.c-legacy-theme .table-light tbody + tbody {
  border-color: #f7f9fa;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-legacy-theme .table-hover .table-light:hover {
    background-color: #ecf1f1;
  }
  .c-legacy-theme .table-hover .table-light:hover > td,
.c-legacy-theme .table-hover .table-light:hover > th {
    background-color: #ecf1f1;
  }
}
.c-legacy-theme .table-dark,
.c-legacy-theme .table-dark > th,
.c-legacy-theme .table-dark > td {
  color: #0a0b18;
  background-color: #c5c6c8;
}
.c-legacy-theme .table-dark th,
.c-legacy-theme .table-dark td,
.c-legacy-theme .table-dark thead th,
.c-legacy-theme .table-dark tbody + tbody {
  border-color: #939699;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-legacy-theme .table-hover .table-dark:hover {
    background-color: #b8b9bc;
  }
  .c-legacy-theme .table-hover .table-dark:hover > td,
.c-legacy-theme .table-hover .table-dark:hover > th {
    background-color: #b8b9bc;
  }
}
.table-active,
.table-active > th,
.table-active > td {
  color: #4f5d73;
  background-color: #d8dbe0;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .table-hover .table-active:hover {
    background-color: #caced5;
  }
  .table-hover .table-active:hover > td,
.table-hover .table-active:hover > th {
    background-color: #caced5;
  }
}
.table-selected,
.table-selected > th,
.table-selected > td {
  color: #4f5d73;
  background-color: #d8dbe0;
}
.table-selected th,
.table-selected td,
.table-selected thead th,
.table-selected tbody + tbody {
  border-color: #d8dbe0;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .table-hover .table-selected:hover {
    background-color: #caced5;
  }
  .table-hover .table-selected:hover > td,
.table-hover .table-selected:hover > th {
    background-color: #caced5;
  }
}
.c-legacy-theme .table-active,
.c-legacy-theme .table-active > th,
.c-legacy-theme .table-active > td {
  color: #181b1e;
  background-color: #e4e7ea;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-legacy-theme .table-hover .table-active:hover {
    background-color: #d6dadf;
  }
  .c-legacy-theme .table-hover .table-active:hover > td,
.c-legacy-theme .table-hover .table-active:hover > th {
    background-color: #d6dadf;
  }
}
.c-legacy-theme .table-selected,
.c-legacy-theme .table-selected > th,
.c-legacy-theme .table-selected > td {
  color: #181b1e;
  background-color: #e4e7ea;
}
.c-legacy-theme .table-selected th,
.c-legacy-theme .table-selected td,
.c-legacy-theme .table-selected thead th,
.c-legacy-theme .table-selected tbody + tbody {
  border-color: #e4e7ea;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-legacy-theme .table-hover .table-selected:hover {
    background-color: #d6dadf;
  }
  .c-legacy-theme .table-hover .table-selected:hover > td,
.c-legacy-theme .table-hover .table-selected:hover > th {
    background-color: #d6dadf;
  }
}
.c-dark-theme .table-active,
.c-dark-theme .table-active > th,
.c-dark-theme .table-active > td {
  color: rgba(255, 255, 255, 0.87);
  background-color: rgba(0, 0, 21, 0.2);
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-dark-theme .table-hover .table-active:hover {
    background-color: rgba(0, 0, 0, 0.2);
  }
  .c-dark-theme .table-hover .table-active:hover > td,
.c-dark-theme .table-hover .table-active:hover > th {
    background-color: rgba(0, 0, 0, 0.2);
  }
}
.c-dark-theme .table-selected,
.c-dark-theme .table-selected > th,
.c-dark-theme .table-selected > td {
  color: rgba(255, 255, 255, 0.87);
  background-color: rgba(0, 0, 21, 0.2);
}
.c-dark-theme .table-selected th,
.c-dark-theme .table-selected td,
.c-dark-theme .table-selected thead th,
.c-dark-theme .table-selected tbody + tbody {
  border-color: rgba(0, 0, 21, 0.2);
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-dark-theme .table-hover .table-selected:hover {
    background-color: rgba(0, 0, 0, 0.2);
  }
  .c-dark-theme .table-hover .table-selected:hover > td,
.c-dark-theme .table-hover .table-selected:hover > th {
    background-color: rgba(0, 0, 0, 0.2);
  }
}
.table tbody tr:focus {
  outline: 0;
  color: #3c4b64;
  background-color: rgba(0, 0, 21, 0.075);
}
.c-legacy-theme .table tbody tr:focus {
  color: #23282c;
  background-color: rgba(0, 0, 0, 0.075);
}
.c-dark-theme .table tbody tr:focus {
  color: rgba(255, 255, 255, 0.87);
  background-color: rgba(255, 255, 255, 0.1);
}
.table .thead-dark th {
  color: #fff;
  background-color: #636f83;
  border-color: #758297;
}
.c-legacy-theme .table .thead-dark th {
  color: #fff;
  background-color: #2f353a;
  border-color: #40484f;
}
.c-dark-theme .table .thead-dark th {
  color: #fff;
  background-color: rgba(0, 0, 21, 0.5);
  border-color: rgba(0, 0, 21, 0.9);
}
.table .thead-light th {
  color: #768192;
  background-color: #d8dbe0;
  border-color: #d8dbe0;
}
.c-legacy-theme .table .thead-light th {
  color: #5c6873;
  background-color: #e4e7ea;
  border-color: #c8ced3;
}
.c-dark-theme .table .thead-light th {
  color: rgba(255, 255, 255, 0.87);
  background-color: rgba(255, 255, 255, 0.05);
  border-color: rgba(255, 255, 255, 0.1);
}
.table-dark {
  color: #fff;
  background-color: #636f83;
}
.c-legacy-theme .table-dark {
  color: #fff;
  background-color: #2f353a;
}
.c-dark-theme .table-dark {
  color: #fff;
  background-color: rgba(0, 0, 21, 0.5);
}
.table-dark th,
.table-dark td,
.table-dark thead th {
  border-color: #758297;
}
.c-legacy-theme .table-dark th,
.c-legacy-theme .table-dark td,
.c-legacy-theme .table-dark thead th {
  border-color: #40484f;
}
.c-dark-theme .table-dark th,
.c-dark-theme .table-dark td,
.c-dark-theme .table-dark thead th {
  border-color: rgba(0, 0, 21, 0.9);
}
.table-dark.table-bordered {
  border: 0;
}
.table-dark.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(255, 255, 255, 0.05);
}
.c-legacy-theme .table-dark.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(255, 255, 255, 0.05);
}
.c-dark-theme .table-dark.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(255, 255, 255, 0.05);
}
@media (hover: hover), (-ms-high-contrast: none) {
  .table-dark.table-hover tbody tr:hover {
    color: #fff;
    background-color: rgba(255, 255, 255, 0.075);
  }
  .c-legacy-theme .table-dark.table-hover tbody tr:hover {
    color: #fff;
    background-color: rgba(255, 255, 255, 0.075);
  }

  .c-dark-theme .table-dark.table-hover tbody tr:hover {
    color: #fff;
    background-color: rgba(255, 255, 255, 0.1);
  }
}
@media (max-width: 575.98px) {
  .table-responsive-sm {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-sm > .table-bordered {
    border: 0;
  }
}
@media (max-width: 767.98px) {
  .table-responsive-md {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-md > .table-bordered {
    border: 0;
  }
}
@media (max-width: 991.98px) {
  .table-responsive-lg {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-lg > .table-bordered {
    border: 0;
  }
}
@media (max-width: 1199.98px) {
  .table-responsive-xl {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-xl > .table-bordered {
    border: 0;
  }
}
@media (max-width: 1399.98px) {
  .table-responsive-xxl {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-xxl > .table-bordered {
    border: 0;
  }
}
.table-responsive {
  display: block;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.table-responsive > .table-bordered {
  border: 0;
}
.table-outline {
  border: 1px solid;
  border-color: #d8dbe0;
}
.c-legacy-theme .table-outline {
  border-color: #c8ced3;
}
.c-dark-theme .table-outline {
  border-color: rgba(255, 255, 255, 0.1);
}
.table-outline td {
  vertical-align: middle;
}
.table-align-middle td {
  vertical-align: middle;
}
.table-clear td {
  border: 0;
}
.toast {
  width: 350px;
  max-width: 350px;
  overflow: hidden;
  font-size: 0.875rem;
  background-clip: padding-box;
  border: 1px solid;
  box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 21, 0.1);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
  opacity: 0;
  border-radius: 0.25rem;
  background-color: rgba(255, 255, 255, 0.85);
  border-color: rgba(0, 0, 21, 0.1);
}
.c-legacy-theme .toast {
  background-color: rgba(255, 255, 255, 0.85);
  border-color: rgba(0, 0, 0, 0.1);
}
.c-dark-theme .toast {
  color: rgba(255, 255, 255, 0.87);
  background-color: #37373d;
  border-color: transparent;
}
.toast:not(:last-child) {
  margin-bottom: 0.75rem;
}
.toast.showing {
  opacity: 1;
}
.toast.show {
  display: block;
  opacity: 1;
}
.toast.hide {
  display: none;
}
.toast-full {
  width: 100%;
  max-width: 100%;
}
.toast-header {
  display: flex;
  align-items: center;
  padding: 0.25rem 0.75rem;
  background-clip: padding-box;
  border-bottom: 1px solid;
  color: #8a93a2;
  background-color: rgba(255, 255, 255, 0.85);
  border-color: rgba(0, 0, 21, 0.05);
}
.c-legacy-theme .toast-header {
  color: #73818f;
  background-color: rgba(255, 255, 255, 0.85);
  border-color: rgba(0, 0, 0, 0.05);
}
.c-dark-theme .toast-header {
  color: rgba(255, 255, 255, 0.87);
  background-color: #37373d;
  border-color: rgba(0, 0, 21, 0.2);
}
.toast-body {
  padding: 0.75rem;
}
.toaster {
  display: flex;
  flex-direction: column-reverse;
  width: 100%;
  padding: 0.25rem 0.5rem;
}
.toaster-top-full, .toaster-top-center, .toaster-top-right, .toaster-top-left, .toaster-bottom-full, .toaster-bottom-center, .toaster-bottom-right, .toaster-bottom-left {
  position: fixed;
  z-index: 1080;
  width: 350px;
}
.toaster-top-full, .toaster-top-center, .toaster-top-right, .toaster-top-left {
  top: 0;
}
.toaster-bottom-full, .toaster-bottom-center, .toaster-bottom-right, .toaster-bottom-left {
  bottom: 0;
  flex-direction: column;
}
.toaster-top-full, .toaster-bottom-full {
  width: auto;
}
.toaster-top-center, .toaster-bottom-center {
  left: 50%;
  transform: translateX(-50%);
}
.toaster-top-full, .toaster-bottom-full, .toaster-top-right, .toaster-bottom-right {
  right: 0;
}
.toaster-top-full, .toaster-bottom-full, .toaster-top-left, .toaster-bottom-left {
  left: 0;
}
.toaster .toast {
  width: 100%;
  max-width: 100%;
  margin-top: 0.125rem;
  margin-bottom: 0.125rem;
}
.toast-primary {
  color: #fff;
  background-color: #321fdb;
  border-color: #2819ae;
}
.toast-primary .toast-header {
  color: #fff;
  background-color: #2d1cc5;
  border-color: #2819ae;
}
.toast-secondary {
  color: #4f5d73;
  background-color: #ced2d8;
  border-color: #b2b8c1;
}
.toast-secondary .toast-header {
  color: #4f5d73;
  background-color: #c0c5cd;
  border-color: #b2b8c1;
}
.toast-success {
  color: #fff;
  background-color: #2eb85c;
  border-color: #248f48;
}
.toast-success .toast-header {
  color: #fff;
  background-color: #29a452;
  border-color: #248f48;
}
.toast-info {
  color: #fff;
  background-color: #39f;
  border-color: #0080ff;
}
.toast-info .toast-header {
  color: #fff;
  background-color: #1a8cff;
  border-color: #0080ff;
}
.toast-warning {
  color: #4f5d73;
  background-color: #f9b115;
  border-color: #d69405;
}
.toast-warning .toast-header {
  color: #4f5d73;
  background-color: #eea506;
  border-color: #d69405;
}
.toast-danger {
  color: #fff;
  background-color: #e55353;
  border-color: #de2727;
}
.toast-danger .toast-header {
  color: #fff;
  background-color: #e23d3d;
  border-color: #de2727;
}
.toast-light {
  color: #4f5d73;
  background-color: #ebedef;
  border-color: #cfd4d8;
}
.toast-light .toast-header {
  color: #4f5d73;
  background-color: #dde0e4;
  border-color: #cfd4d8;
}
.toast-dark {
  color: #fff;
  background-color: #636f83;
  border-color: #4d5666;
}
.toast-dark .toast-header {
  color: #fff;
  background-color: #586374;
  border-color: #4d5666;
}
.c-dark-theme .toast-primary {
  color: #fff;
  background-color: #4638c2;
  border-color: #382d9a;
}
.c-dark-theme .toast-primary .toast-header {
  color: #fff;
  background-color: #3f32ae;
  border-color: #382d9a;
}
.c-dark-theme .toast-secondary {
  color: #fff;
  background-color: #4c4f54;
  border-color: #343639;
}
.c-dark-theme .toast-secondary .toast-header {
  color: #fff;
  background-color: #404247;
  border-color: #343639;
}
.c-dark-theme .toast-success {
  color: #fff;
  background-color: #45a164;
  border-color: #367d4e;
}
.c-dark-theme .toast-success .toast-header {
  color: #fff;
  background-color: #3d8f59;
  border-color: #367d4e;
}
.c-dark-theme .toast-info {
  color: #fff;
  background-color: #4799eb;
  border-color: #1a80e6;
}
.c-dark-theme .toast-info .toast-header {
  color: #fff;
  background-color: #308ce8;
  border-color: #1a80e6;
}
.c-dark-theme .toast-warning {
  color: #4f5d73;
  background-color: #e1a82d;
  border-color: #c08c1b;
}
.c-dark-theme .toast-warning .toast-header {
  color: #4f5d73;
  background-color: #d69c1f;
  border-color: #c08c1b;
}
.c-dark-theme .toast-danger {
  color: #fff;
  background-color: #d16767;
  border-color: #c54040;
}
.c-dark-theme .toast-danger .toast-header {
  color: #fff;
  background-color: #cb5353;
  border-color: #c54040;
}
.c-dark-theme .toast-light {
  color: #fff;
  background-color: #6c6e7e;
  border-color: #555662;
}
.c-dark-theme .toast-light .toast-header {
  color: #fff;
  background-color: #606270;
  border-color: #555662;
}
.c-dark-theme .toast-dark {
  color: #fff;
  background-color: #0e0e15;
  border-color: black;
}
.c-dark-theme .toast-dark .toast-header {
  color: #fff;
  background-color: #040405;
  border-color: black;
}
.c-legacy-theme .toast-primary {
  color: #fff;
  background-color: #20a8d8;
  border-color: #1985ac;
}
.c-legacy-theme .toast-primary .toast-header {
  color: #fff;
  background-color: #1d97c2;
  border-color: #1985ac;
}
.c-legacy-theme .toast-secondary {
  color: #4f5d73;
  background-color: #c8ced3;
  border-color: #acb5bc;
}
.c-legacy-theme .toast-secondary .toast-header {
  color: #4f5d73;
  background-color: #bac1c8;
  border-color: #acb5bc;
}
.c-legacy-theme .toast-success {
  color: #fff;
  background-color: #4dbd74;
  border-color: #3a9d5d;
}
.c-legacy-theme .toast-success .toast-header {
  color: #fff;
  background-color: #41af67;
  border-color: #3a9d5d;
}
.c-legacy-theme .toast-info {
  color: #4f5d73;
  background-color: #63c2de;
  border-color: #39b2d5;
}
.c-legacy-theme .toast-info .toast-header {
  color: #4f5d73;
  background-color: #4ebada;
  border-color: #39b2d5;
}
.c-legacy-theme .toast-warning {
  color: #4f5d73;
  background-color: #ffc107;
  border-color: #d39e00;
}
.c-legacy-theme .toast-warning .toast-header {
  color: #4f5d73;
  background-color: #edb100;
  border-color: #d39e00;
}
.c-legacy-theme .toast-danger {
  color: #fff;
  background-color: #f86c6b;
  border-color: #f63c3a;
}
.c-legacy-theme .toast-danger .toast-header {
  color: #fff;
  background-color: #f75453;
  border-color: #f63c3a;
}
.c-legacy-theme .toast-light {
  color: #4f5d73;
  background-color: #f0f3f5;
  border-color: #d1dbe1;
}
.c-legacy-theme .toast-light .toast-header {
  color: #4f5d73;
  background-color: #e1e7eb;
  border-color: #d1dbe1;
}
.c-legacy-theme .toast-dark {
  color: #fff;
  background-color: #2f353a;
  border-color: #181b1e;
}
.c-legacy-theme .toast-dark .toast-header {
  color: #fff;
  background-color: #24282c;
  border-color: #181b1e;
}
.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.765625rem;
  word-wrap: break-word;
  opacity: 0;
}
.tooltip.show {
  opacity: 0.9;
}
.tooltip .tooltip-arrow {
  position: absolute;
  display: block;
}
.tooltip .tooltip-arrow::before {
  position: absolute;
  content: "";
  border-color: transparent;
  border-style: solid;
}
.tooltip[data-popper-placement^=top],
.tooltip[data-popper-placement^=bottom] {
  padding: 0.4rem 0;
}
.tooltip[data-popper-placement^=top] .tooltip-arrow,
.tooltip[data-popper-placement^=bottom] .tooltip-arrow {
  width: 0.8rem;
  height: 0.4rem;
}
.tooltip[data-popper-placement^=right],
.tooltip[data-popper-placement^=left] {
  padding: 0 0.4rem;
}
.tooltip[data-popper-placement^=right] .tooltip-arrow,
.tooltip[data-popper-placement^=left] .tooltip-arrow {
  width: 0.4rem;
  height: 0.8rem;
}
.tooltip[data-popper-placement^=top] .tooltip-arrow {
  bottom: 0;
}
.tooltip[data-popper-placement^=top] .tooltip-arrow::before {
  top: 0;
  border-width: 0.4rem 0.4rem 0;
  border-top-color: #000015;
}
.tooltip[data-popper-placement^=right] .tooltip-arrow {
  left: 0;
}
.tooltip[data-popper-placement^=right] .tooltip-arrow::before {
  right: 0;
  border-width: 0.4rem 0.4rem 0.4rem 0;
  border-right-color: #000015;
}
.tooltip[data-popper-placement^=bottom] .tooltip-arrow {
  top: 0;
}
.tooltip[data-popper-placement^=bottom] .tooltip-arrow::before {
  bottom: 0;
  border-width: 0 0.4rem 0.4rem;
  border-bottom-color: #000015;
}
.tooltip[data-popper-placement^=left] .tooltip-arrow {
  right: 0;
}
.tooltip[data-popper-placement^=left] .tooltip-arrow::before {
  left: 0;
  border-width: 0.4rem 0 0.4rem 0.4rem;
  border-left-color: #000015;
}
.tooltip-inner {
  max-width: 200px;
  padding: 0.25rem 0.5rem;
  color: #fff;
  text-align: center;
  background-color: #000015;
  border-radius: 0.25rem;
}
.fade {
  transition: opacity 0.15s linear;
}
@media (prefers-reduced-motion: reduce) {
  .fade {
    transition: none;
  }
}
.fade:not(.show) {
  opacity: 0;
}
.collapse:not(.show) {
  display: none;
}
.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  transition: height 0.35s ease;
}
@media (prefers-reduced-motion: reduce) {
  .collapsing {
    transition: none;
  }
}
@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.fade-in {
  -webkit-animation-name: fadeIn;
          animation-name: fadeIn;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
}
.c-wrapper {
  transition: margin 0.3s;
}
.c-sidebar {
  transition: box-shadow 0.3s 0.15s, transform 0.3s, margin-left 0.3s, margin-right 0.3s, width 0.3s, z-index 0s ease 0.3s;
}
.c-sidebar.c-sidebar-unfoldable {
  transition: transform 0.3s, margin-left 0.3s, margin-right 0.3s, width 0.3s, z-index 0s ease 0s;
}
.c-no-layout-transition .c-wrapper,
.c-no-layout-transition .c-sidebar {
  transition: none;
}
.c-no-layout-transition .c-wrapper .c-sidebar-header,
.c-no-layout-transition .c-wrapper .c-sidebar-nav-title,
.c-no-layout-transition .c-wrapper .c-sidebar-nav-divider,
.c-no-layout-transition .c-wrapper .c-sidebar-nav-link,
.c-no-layout-transition .c-wrapper .c-sidebar-nav-icon,
.c-no-layout-transition .c-wrapper .c-sidebar-nav-dropdown,
.c-no-layout-transition .c-wrapper .c-sidebar-nav-dropdown-toggle,
.c-no-layout-transition .c-wrapper .c-sidebar-nav-dropdown-toggle::after,
.c-no-layout-transition .c-wrapper .c-sidebar-nav-dropdown-items,
.c-no-layout-transition .c-wrapper .c-sidebar-nav-label,
.c-no-layout-transition .c-wrapper .c-sidebar-footer,
.c-no-layout-transition .c-wrapper .c-sidebar-minimizer,
.c-no-layout-transition .c-sidebar .c-sidebar-header,
.c-no-layout-transition .c-sidebar .c-sidebar-nav-title,
.c-no-layout-transition .c-sidebar .c-sidebar-nav-divider,
.c-no-layout-transition .c-sidebar .c-sidebar-nav-link,
.c-no-layout-transition .c-sidebar .c-sidebar-nav-icon,
.c-no-layout-transition .c-sidebar .c-sidebar-nav-dropdown,
.c-no-layout-transition .c-sidebar .c-sidebar-nav-dropdown-toggle,
.c-no-layout-transition .c-sidebar .c-sidebar-nav-dropdown-toggle::after,
.c-no-layout-transition .c-sidebar .c-sidebar-nav-dropdown-items,
.c-no-layout-transition .c-sidebar .c-sidebar-nav-label,
.c-no-layout-transition .c-sidebar .c-sidebar-footer,
.c-no-layout-transition .c-sidebar .c-sidebar-minimizer {
  transition: none;
}
.c-no-transition {
  transition: none;
}
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  margin-bottom: 0.5rem;
  font-weight: 500;
  line-height: 1.2;
}
h1, .h1 {
  font-size: 2.1875rem;
}
h2, .h2 {
  font-size: 1.75rem;
}
h3, .h3 {
  font-size: 1.53125rem;
}
h4, .h4 {
  font-size: 1.3125rem;
}
h5, .h5 {
  font-size: 1.09375rem;
}
h6, .h6 {
  font-size: 0.875rem;
}
.lead {
  font-size: 1.09375rem;
  font-weight: 300;
}
.display-1 {
  font-size: 6rem;
  font-weight: 300;
  line-height: 1.2;
}
.display-2 {
  font-size: 5.5rem;
  font-weight: 300;
  line-height: 1.2;
}
.display-3 {
  font-size: 4.5rem;
  font-weight: 300;
  line-height: 1.2;
}
.display-4 {
  font-size: 3.5rem;
  font-weight: 300;
  line-height: 1.2;
}
hr {
  margin-top: 1rem;
  margin-bottom: 1rem;
  border: 0;
  border-top: 1px solid;
  border-color: rgba(0, 0, 21, 0.2);
}
.c-dark-theme hr {
  border-color: rgba(255, 255, 255, 0.075);
}
.c-vr {
  width: 1px;
  background-color: rgba(0, 0, 21, 0.2);
}
.c-dark-theme .c-vr {
  background-color: rgba(255, 255, 255, 0.075);
}
small,
.small {
  font-size: 80%;
  font-weight: 400;
}
mark,
.mark {
  padding: 0.2em;
  background-color: #fcf8e3;
}
.list-unstyled {
  list-style: none;
}
html:not([dir=rtl]) .list-unstyled {
  padding-left: 0;
}
*[dir=rtl] .list-unstyled {
  padding-right: 0;
}
.list-inline {
  list-style: none;
}
html:not([dir=rtl]) .list-inline {
  padding-left: 0;
}
*[dir=rtl] .list-inline {
  padding-right: 0;
}
.list-inline-item {
  display: inline-block;
}
.list-inline-item:not(:last-child) {
  margin-right: 0.5rem;
}
.initialism {
  font-size: 90%;
  text-transform: uppercase;
}
.blockquote {
  margin-bottom: 1rem;
  font-size: 1.09375rem;
}
.blockquote-footer {
  display: block;
  font-size: 80%;
  color: #8a93a2;
}
.blockquote-footer::before {
  content: "— ";
}
.c-loading-button {
  position: relative;
  overflow: hidden;
}
.c-loading-button-progress {
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
}
.c-loading-button-spinner {
  margin-right: 1rem;
  margin-left: -2rem;
  opacity: 0;
  transition: margin 0.3s, opacity 0.3s, border 0.3s;
}
.c-loading-button-loading .c-loading-button-spinner {
  width: 1rem;
  margin-left: 0;
  opacity: 1;
}
.c-multi-select {
  position: relative;
  display: inline-block;
  width: 100%;
  min-height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 1.75rem 0.375rem 0.75rem;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  vertical-align: middle;
  border: 1px solid;
  border-radius: 0.25rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  color: #768192;
  background: #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23636f83' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px;
  border-color: #d8dbe0;
}
.c-dark-theme .c-multi-select {
  color: rgba(255, 255, 255, 0.87);
  background: rgba(255, 255, 255, 0.05) url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23636f83' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px;
  border-color: rgba(255, 255, 255, 0.09);
}
.c-multi-select:disabled, .c-multi-select.c-disabled {
  color: #8a93a2;
  background-color: #d8dbe0;
}
.c-dark-theme .c-multi-select:disabled, .c-dark-theme .c-multi-select.c-disabled {
  color: rgba(255, 255, 255, 0.38);
  background-color: rgba(255, 255, 255, 0.1);
}
.c-multi-select-selection-tags {
  padding: 2px 1.75rem 2px 2px;
}
.c-multi-select-selection-tags:not(.c-multi-select-inline) .c-multi-select-search {
  height: 29px;
  margin-left: 0.75rem;
}
.c-multi-select-selection-tags:not(.c-multi-select-inline) .c-multi-select-search[size] {
  height: 25px;
}
.c-multi-select-selection {
  display: inline;
  padding: 0;
}
.c-multi-select-selection-cleaner {
  position: absolute;
  top: 50%;
  right: 1.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  font-size: 1.5rem;
  font-weight: 700;
  cursor: pointer;
  opacity: 0.5;
  transform: translateY(-50%);
  color: #000015;
  text-shadow: 0 1px 0 #fff;
}
.c-legacy-theme .c-multi-select-selection-cleaner {
  color: #000;
  text-shadow: 0 1px 0 #fff;
}
.c-dark-theme .c-multi-select-selection-cleaner {
  color: #fff;
  text-shadow: 0 1px 0 #000015;
}
@media (hover: hover), (-ms-high-contrast: none) {
  .c-multi-select-selection-cleaner:hover {
    text-decoration: none;
    color: #000015;
  }
  .c-legacy-theme .c-multi-select-selection-cleaner:hover {
    color: #000;
  }

  .c-dark-theme .c-multi-select-selection-cleaner:hover {
    color: #fff;
  }
}
.c-multi-select-selection-cleaner:not(:disabled):not(.disabled):hover, .c-multi-select-selection-cleaner:not(:disabled):not(.disabled):focus {
  opacity: 0.75;
}
.c-multi-select-search {
  max-width: 100%;
  padding: 0;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  border: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border-radius: 0.25rem;
  color: #768192;
  background-color: #fff;
}
.c-dark-theme .c-multi-select-search {
  color: rgba(255, 255, 255, 0.87);
  background-color: transparent;
}
.c-multi-select-search:focus {
  outline: 0;
}
.c-multi-select-search[size] {
  display: none;
  margin-left: 0.75rem;
}
.c-multi-select-options {
  position: absolute;
  top: 100%;
  left: 0;
  display: none;
  float: left;
  width: 100%;
  padding: 0.5rem 0.75rem;
  margin-top: 0.625rem;
  font-size: 0.875rem;
  text-align: left;
  background-clip: padding-box;
  border: 1px solid;
  border-radius: 0.25rem;
  color: #3c4b64;
  background-color: #fff;
  border-color: #d8dbe0;
}
.c-dark-theme .c-multi-select-options {
  color: rgba(255, 255, 255, 0.87);
  background-color: #34353e;
  border-color: rgba(255, 255, 255, 0.075);
}
.c-app:not(.c-legacy-theme) .c-multi-select-options {
  border: 0;
  box-shadow: 0 4px 5px 0 rgba(var(--elevation-base-color), .14), 0 1px 10px 0 rgba(var(--elevation-base-color), .12), 0 2px 4px -1px rgba(var(--elevation-base-color), .20);
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .c-multi-select-options {
    box-shadow: 0 4px 5px 0 rgba(60, 75, 100, .14), 0 1px 10px 0 rgba(60, 75, 100, .12), 0 2px 4px -1px rgba(60, 75, 100, .20);
  }
}
.c-multi-select-option {
  position: relative;
  padding: 0.5rem 1.25rem 0.5rem 2.25rem;
  margin-bottom: 2px;
  vertical-align: top;
  cursor: pointer;
  border-radius: 0.25rem;
}
.c-multi-select-option:hover, .c-multi-select-option:focus {
  text-decoration: none;
  color: #455164;
  background-color: #ebedef;
}
.c-dark-theme .c-multi-select-option:hover, .c-dark-theme .c-multi-select-option:focus {
  color: rgba(255, 255, 255, 0.87);
  background-color: rgba(255, 255, 255, 0.04);
}
.c-multi-select-option.disabled, .c-multi-select-option:disabled {
  pointer-events: none;
  background-color: transparent;
  color: #8a93a2;
}
.c-dark-theme .c-multi-select-option.disabled, .c-dark-theme .c-multi-select-option:disabled {
  color: #8a93a2;
}
.c-multi-select-option::before {
  position: absolute;
  top: 0.7rem;
  display: block;
  width: 1rem;
  height: 1rem;
  pointer-events: none;
  content: "";
  border: solid 1px;
  background-color: #fff;
  border-color: #9da5b1;
  border-radius: 0.25rem;
}
html:not([dir=rtl]) .c-multi-select-option::before {
  left: 0.625rem;
}
*[dir=rtl] .c-multi-select-option::before {
  right: 0.625rem;
}
.c-dark-theme .c-multi-select-option::before {
  background-color: rgba(255, 255, 255, 0.05);
  border-color: #9da5b1;
}
.c-multi-select-option::after {
  position: absolute;
  top: 0.7rem;
  display: block;
  width: 1rem;
  height: 1rem;
  content: "";
  background: no-repeat 50%/50% 50%;
}
html:not([dir=rtl]) .c-multi-select-option::after {
  left: 0.625rem;
}
*[dir=rtl] .c-multi-select-option::after {
  right: 0.625rem;
}
.c-multi-select-option.c-multi-selected {
  background-color: #ebedef;
}
.c-dark-theme .c-multi-select-option.c-multi-selected {
  background-color: rgba(255, 255, 255, 0.04);
}
.c-multi-select-option.c-multi-selected::before {
  color: #fff;
  border-color: #321fdb;
  background-color: #321fdb;
}
.c-dark-theme .c-multi-select-option.c-multi-selected::before {
  color: #fff;
  border-color: #4638c2;
  background-color: #4638c2;
}
.c-multi-select-option.c-multi-selected::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e");
}
.c-dark-theme .c-multi-select-option.c-multi-selected::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e");
}
.c-multi-select-optgroup-label {
  padding: 0.5rem 0.625rem;
  font-weight: 700;
}
.c-multi-select-options-empty {
  padding: 0.5rem 1.25rem;
}
.c-multi-select-tag {
  display: inline-block;
  height: 25px;
  padding: 0 0.5rem;
  margin: 2px;
  border: 1px solid;
  border-radius: 0.25rem;
  background-color: #ebedef;
  border-color: #d8dbe0;
}
.c-dark-theme .c-multi-select-tag {
  background-color: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.075);
}
.c-multi-select-tag-delete {
  margin-left: 6px;
  cursor: pointer;
}
.c-multi-select.c-show {
  color: #768192;
  background-color: #fff;
  border-color: #958bef;
  box-shadow: 0 0 0 0.2rem rgba(50, 31, 219, 0.25);
}
.c-dark-theme .c-multi-select.c-show {
  color: rgba(255, 255, 255, 0.87);
  background-color: rgba(255, 255, 255, 0.05);
  border-color: rgba(255, 255, 255, 0.2);
}
.c-multi-select.c-show .c-multi-select-search[size] {
  display: inline;
}
.c-multi-select.c-show .c-multi-select-options {
  z-index: 1000;
  display: initial;
}
.c-multi-select-inline {
  padding: 0.375rem;
  background: #fff;
}
.c-dark-theme .c-multi-select-inline {
  background: rgba(255, 255, 255, 0.05);
}
.c-multi-select-inline .c-multi-select-selection {
  display: block;
  margin-bottom: 0.375rem;
}
.c-multi-select-inline:not(.c-multi-select-selection-tags) .c-multi-select-selection {
  padding: 0.375rem;
}
.c-multi-select-inline .c-multi-select-search {
  width: 100%;
  padding: 0.375rem 0.75rem;
  border: 1px solid;
  border-color: #d8dbe0;
}
.c-dark-theme .c-multi-select-inline .c-multi-select-search {
  border-color: rgba(255, 255, 255, 0.09);
}
.c-multi-select-inline .c-multi-select-options {
  position: relative;
  z-index: 1;
  display: block;
  padding: 0;
  background-color: transparent;
  border: 0;
}
.c-app:not(.c-legacy-theme) .c-multi-select-inline .c-multi-select-options {
  border: 0;
  box-shadow: none;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .c-app:not(.c-legacy-theme) .c-multi-select-inline .c-multi-select-options {
    box-shadow: none;
  }
}
.c-app {
  display: flex;
  flex-direction: row;
  min-height: 100vh;
}
@media all and (-ms-high-contrast: none) {
  html {
    display: flex;
    flex-direction: column;
  }
}
.c-wrapper {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-width: 0;
  min-height: 100vh;
}
.c-wrapper:not(.c-wrapper-fluid) .c-subheader-fixed {
  position: relative;
}
.c-wrapper:not(.c-wrapper-fluid) .c-header-fixed {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
}
@media all and (-ms-high-contrast: none) {
  .c-wrapper:not(.c-wrapper-fluid) .c-header-fixed {
    position: fixed;
    margin: inherit;
  }
  .c-wrapper:not(.c-wrapper-fluid) .c-header-fixed ~ .c-body {
    margin-top: 104px;
  }
}
.c-wrapper:not(.c-wrapper-fluid) .c-footer-fixed {
  position: -webkit-sticky;
  position: sticky;
  bottom: 0;
}
@media all and (-ms-high-contrast: none) {
  .c-wrapper:not(.c-wrapper-fluid) .c-footer-fixed {
    position: fixed;
    margin: inherit;
  }
  .c-wrapper:not(.c-wrapper-fluid) .c-footer-fixed ~ .c-body {
    margin-bottom: 49px;
  }
}
.c-wrapper:not(.c-wrapper-fluid) .c-body {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}
.c-wrapper.c-wrapper-fluid {
  min-height: 100vh;
}
.c-wrapper.c-wrapper-fluid .c-header-fixed {
  margin: inherit;
}
.c-main {
  flex-basis: auto;
  flex-shrink: 0;
  flex-grow: 1;
  min-width: 0;
  padding-top: 2rem;
}
@media (min-width: 768px) {
  .c-main > .container-fluid, .c-main > .container-sm, .c-main > .container-md, .c-main > .container-lg, .c-main > .container-xl, .c-main > .container-xxl {
    padding-right: 30px;
    padding-left: 30px;
  }
}
.align-baseline {
  vertical-align: baseline !important;
}
.align-top {
  vertical-align: top !important;
}
.align-middle {
  vertical-align: middle !important;
}
.align-bottom {
  vertical-align: bottom !important;
}
.align-text-bottom {
  vertical-align: text-bottom !important;
}
.align-text-top {
  vertical-align: text-top !important;
}
.bg-primary {
  background-color: #321fdb !important;
}
a.bg-primary:hover, a.bg-primary:focus,
button.bg-primary:hover,
button.bg-primary:focus {
  background-color: #2819ae !important;
}
.bg-secondary {
  background-color: #ced2d8 !important;
}
a.bg-secondary:hover, a.bg-secondary:focus,
button.bg-secondary:hover,
button.bg-secondary:focus {
  background-color: #b2b8c1 !important;
}
.bg-success {
  background-color: #2eb85c !important;
}
a.bg-success:hover, a.bg-success:focus,
button.bg-success:hover,
button.bg-success:focus {
  background-color: #248f48 !important;
}
.bg-info {
  background-color: #39f !important;
}
a.bg-info:hover, a.bg-info:focus,
button.bg-info:hover,
button.bg-info:focus {
  background-color: #0080ff !important;
}
.bg-warning {
  background-color: #f9b115 !important;
}
a.bg-warning:hover, a.bg-warning:focus,
button.bg-warning:hover,
button.bg-warning:focus {
  background-color: #d69405 !important;
}
.bg-danger {
  background-color: #e55353 !important;
}
a.bg-danger:hover, a.bg-danger:focus,
button.bg-danger:hover,
button.bg-danger:focus {
  background-color: #de2727 !important;
}
.bg-light {
  background-color: #ebedef !important;
}
a.bg-light:hover, a.bg-light:focus,
button.bg-light:hover,
button.bg-light:focus {
  background-color: #cfd4d8 !important;
}
.bg-dark {
  background-color: #636f83 !important;
}
a.bg-dark:hover, a.bg-dark:focus,
button.bg-dark:hover,
button.bg-dark:focus {
  background-color: #4d5666 !important;
}
.c-dark-theme .bg-primary {
  background-color: #4638c2 !important;
}
.c-dark-theme a.bg-primary:hover, .c-dark-theme a.bg-primary:focus,
.c-dark-theme button.bg-primary:hover,
.c-dark-theme button.bg-primary:focus {
  background-color: #382d9a !important;
}
.c-dark-theme .bg-secondary {
  background-color: #4c4f54 !important;
}
.c-dark-theme a.bg-secondary:hover, .c-dark-theme a.bg-secondary:focus,
.c-dark-theme button.bg-secondary:hover,
.c-dark-theme button.bg-secondary:focus {
  background-color: #343639 !important;
}
.c-dark-theme .bg-success {
  background-color: #45a164 !important;
}
.c-dark-theme a.bg-success:hover, .c-dark-theme a.bg-success:focus,
.c-dark-theme button.bg-success:hover,
.c-dark-theme button.bg-success:focus {
  background-color: #367d4e !important;
}
.c-dark-theme .bg-info {
  background-color: #4799eb !important;
}
.c-dark-theme a.bg-info:hover, .c-dark-theme a.bg-info:focus,
.c-dark-theme button.bg-info:hover,
.c-dark-theme button.bg-info:focus {
  background-color: #1a80e6 !important;
}
.c-dark-theme .bg-warning {
  background-color: #e1a82d !important;
}
.c-dark-theme a.bg-warning:hover, .c-dark-theme a.bg-warning:focus,
.c-dark-theme button.bg-warning:hover,
.c-dark-theme button.bg-warning:focus {
  background-color: #c08c1b !important;
}
.c-dark-theme .bg-danger {
  background-color: #d16767 !important;
}
.c-dark-theme a.bg-danger:hover, .c-dark-theme a.bg-danger:focus,
.c-dark-theme button.bg-danger:hover,
.c-dark-theme button.bg-danger:focus {
  background-color: #c54040 !important;
}
.c-dark-theme .bg-light {
  background-color: #6c6e7e !important;
}
.c-dark-theme a.bg-light:hover, .c-dark-theme a.bg-light:focus,
.c-dark-theme button.bg-light:hover,
.c-dark-theme button.bg-light:focus {
  background-color: #555662 !important;
}
.c-dark-theme .bg-dark {
  background-color: #0e0e15 !important;
}
.c-dark-theme a.bg-dark:hover, .c-dark-theme a.bg-dark:focus,
.c-dark-theme button.bg-dark:hover,
.c-dark-theme button.bg-dark:focus {
  background-color: black !important;
}
.c-legacy-theme .bg-primary {
  background-color: #20a8d8 !important;
}
.c-legacy-theme a.bg-primary:hover, .c-legacy-theme a.bg-primary:focus,
.c-legacy-theme button.bg-primary:hover,
.c-legacy-theme button.bg-primary:focus {
  background-color: #1985ac !important;
}
.c-legacy-theme .bg-secondary {
  background-color: #c8ced3 !important;
}
.c-legacy-theme a.bg-secondary:hover, .c-legacy-theme a.bg-secondary:focus,
.c-legacy-theme button.bg-secondary:hover,
.c-legacy-theme button.bg-secondary:focus {
  background-color: #acb5bc !important;
}
.c-legacy-theme .bg-success {
  background-color: #4dbd74 !important;
}
.c-legacy-theme a.bg-success:hover, .c-legacy-theme a.bg-success:focus,
.c-legacy-theme button.bg-success:hover,
.c-legacy-theme button.bg-success:focus {
  background-color: #3a9d5d !important;
}
.c-legacy-theme .bg-info {
  background-color: #63c2de !important;
}
.c-legacy-theme a.bg-info:hover, .c-legacy-theme a.bg-info:focus,
.c-legacy-theme button.bg-info:hover,
.c-legacy-theme button.bg-info:focus {
  background-color: #39b2d5 !important;
}
.c-legacy-theme .bg-warning {
  background-color: #ffc107 !important;
}
.c-legacy-theme a.bg-warning:hover, .c-legacy-theme a.bg-warning:focus,
.c-legacy-theme button.bg-warning:hover,
.c-legacy-theme button.bg-warning:focus {
  background-color: #d39e00 !important;
}
.c-legacy-theme .bg-danger {
  background-color: #f86c6b !important;
}
.c-legacy-theme a.bg-danger:hover, .c-legacy-theme a.bg-danger:focus,
.c-legacy-theme button.bg-danger:hover,
.c-legacy-theme button.bg-danger:focus {
  background-color: #f63c3a !important;
}
.c-legacy-theme .bg-light {
  background-color: #f0f3f5 !important;
}
.c-legacy-theme a.bg-light:hover, .c-legacy-theme a.bg-light:focus,
.c-legacy-theme button.bg-light:hover,
.c-legacy-theme button.bg-light:focus {
  background-color: #d1dbe1 !important;
}
.c-legacy-theme .bg-dark {
  background-color: #2f353a !important;
}
.c-legacy-theme a.bg-dark:hover, .c-legacy-theme a.bg-dark:focus,
.c-legacy-theme button.bg-dark:hover,
.c-legacy-theme button.bg-dark:focus {
  background-color: #181b1e !important;
}
.bg-gradient-primary {
  background: #1f1498 !important;
  background: linear-gradient(45deg, #321fdb 0%, #1f1498 100%) !important;
  border-color: #1f1498 !important;
}
.bg-gradient-secondary {
  background: #fff !important;
  background: linear-gradient(45deg, #c8d2dc 0%, #fff 100%) !important;
  border-color: #fff !important;
}
.bg-gradient-success {
  background: #1b9e3e !important;
  background: linear-gradient(45deg, #2eb85c 0%, #1b9e3e 100%) !important;
  border-color: #1b9e3e !important;
}
.bg-gradient-info {
  background: #2982cc !important;
  background: linear-gradient(45deg, #39f 0%, #2982cc 100%) !important;
  border-color: #2982cc !important;
}
.bg-gradient-warning {
  background: #f6960b !important;
  background: linear-gradient(45deg, #f9b115 0%, #f6960b 100%) !important;
  border-color: #f6960b !important;
}
.bg-gradient-danger {
  background: #d93737 !important;
  background: linear-gradient(45deg, #e55353 0%, #d93737 100%) !important;
  border-color: #d93737 !important;
}
.bg-gradient-light {
  background: #fff !important;
  background: linear-gradient(45deg, #e3e8ed 0%, #fff 100%) !important;
  border-color: #fff !important;
}
.bg-gradient-dark {
  background: #212333 !important;
  background: linear-gradient(45deg, #3c4b64 0%, #212333 100%) !important;
  border-color: #212333 !important;
}
.c-dark-theme .bg-gradient-primary {
  background: #2d2587 !important;
  background: linear-gradient(45deg, #4638c2 0%, #2d2587 100%) !important;
  border-color: #2d2587 !important;
}
.c-dark-theme .bg-gradient-secondary {
  background: white !important;
  background: linear-gradient(45deg, #d1d2d3 0%, white 100%) !important;
  border-color: white !important;
}
.c-dark-theme .bg-gradient-success {
  background: #2e8c47 !important;
  background: linear-gradient(45deg, #45a164 0%, #2e8c47 100%) !important;
  border-color: #2e8c47 !important;
}
.c-dark-theme .bg-gradient-info {
  background: #4280b4 !important;
  background: linear-gradient(45deg, #4799eb 0%, #4280b4 100%) !important;
  border-color: #4280b4 !important;
}
.c-dark-theme .bg-gradient-warning {
  background: #dd9124 !important;
  background: linear-gradient(45deg, #e1a82d 0%, #dd9124 100%) !important;
  border-color: #dd9124 !important;
}
.c-dark-theme .bg-gradient-danger {
  background: #c14f4f !important;
  background: linear-gradient(45deg, #d16767 0%, #c14f4f 100%) !important;
  border-color: #c14f4f !important;
}
.c-dark-theme .bg-gradient-light {
  background: white !important;
  background: linear-gradient(45deg, #e8e8e8 0%, white 100%) !important;
  border-color: white !important;
}
.c-dark-theme .bg-gradient-dark {
  background: #292a2b !important;
  background: linear-gradient(45deg, #4c4f54 0%, #292a2b 100%) !important;
  border-color: #292a2b !important;
}
.c-legacy-theme .bg-gradient-primary {
  background: #1d97c2 !important;
  background: linear-gradient(45deg, #31b3e0 0%, #1d97c2 100%) !important;
  border-color: #1d97c2 !important;
}
.c-legacy-theme .bg-gradient-secondary {
  background: #bac1c8 !important;
  background: linear-gradient(45deg, #d6dbde 0%, #bac1c8 100%) !important;
  border-color: #bac1c8 !important;
}
.c-legacy-theme .bg-gradient-success {
  background: #41af67 !important;
  background: linear-gradient(45deg, #60c483 0%, #41af67 100%) !important;
  border-color: #41af67 !important;
}
.c-legacy-theme .bg-gradient-info {
  background: #4ebada !important;
  background: linear-gradient(45deg, #78cae2 0%, #4ebada 100%) !important;
  border-color: #4ebada !important;
}
.c-legacy-theme .bg-gradient-warning {
  background: #edb100 !important;
  background: linear-gradient(45deg, #ffc721 0%, #edb100 100%) !important;
  border-color: #edb100 !important;
}
.c-legacy-theme .bg-gradient-danger {
  background: #f75453 !important;
  background: linear-gradient(45deg, #f98483 0%, #f75453 100%) !important;
  border-color: #f75453 !important;
}
.c-legacy-theme .bg-gradient-light {
  background: #e1e7eb !important;
  background: linear-gradient(45deg, white 0%, #e1e7eb 100%) !important;
  border-color: #e1e7eb !important;
}
.c-legacy-theme .bg-gradient-dark {
  background: #24282c !important;
  background: linear-gradient(45deg, #3a4248 0%, #24282c 100%) !important;
  border-color: #24282c !important;
}
.bg-white {
  background-color: #fff !important;
}
.bg-transparent {
  background-color: transparent !important;
}
[class^=bg-] {
  color: #fff;
}
.bg-facebook {
  background-color: #3b5998 !important;
}
a.bg-facebook:hover, a.bg-facebook:focus,
button.bg-facebook:hover,
button.bg-facebook:focus {
  background-color: #2d4373 !important;
}
.bg-twitter {
  background-color: #00aced !important;
}
a.bg-twitter:hover, a.bg-twitter:focus,
button.bg-twitter:hover,
button.bg-twitter:focus {
  background-color: #0087ba !important;
}
.bg-linkedin {
  background-color: #4875b4 !important;
}
a.bg-linkedin:hover, a.bg-linkedin:focus,
button.bg-linkedin:hover,
button.bg-linkedin:focus {
  background-color: #395d90 !important;
}
.bg-flickr {
  background-color: #ff0084 !important;
}
a.bg-flickr:hover, a.bg-flickr:focus,
button.bg-flickr:hover,
button.bg-flickr:focus {
  background-color: #cc006a !important;
}
.bg-tumblr {
  background-color: #32506d !important;
}
a.bg-tumblr:hover, a.bg-tumblr:focus,
button.bg-tumblr:hover,
button.bg-tumblr:focus {
  background-color: #22364a !important;
}
.bg-xing {
  background-color: #026466 !important;
}
a.bg-xing:hover, a.bg-xing:focus,
button.bg-xing:hover,
button.bg-xing:focus {
  background-color: #013334 !important;
}
.bg-github {
  background-color: #4183c4 !important;
}
a.bg-github:hover, a.bg-github:focus,
button.bg-github:hover,
button.bg-github:focus {
  background-color: #3269a0 !important;
}
.bg-stack-overflow {
  background-color: #fe7a15 !important;
}
a.bg-stack-overflow:hover, a.bg-stack-overflow:focus,
button.bg-stack-overflow:hover,
button.bg-stack-overflow:focus {
  background-color: #df6101 !important;
}
.bg-youtube {
  background-color: #b00 !important;
}
a.bg-youtube:hover, a.bg-youtube:focus,
button.bg-youtube:hover,
button.bg-youtube:focus {
  background-color: #880000 !important;
}
.bg-dribbble {
  background-color: #ea4c89 !important;
}
a.bg-dribbble:hover, a.bg-dribbble:focus,
button.bg-dribbble:hover,
button.bg-dribbble:focus {
  background-color: #e51e6b !important;
}
.bg-instagram {
  background-color: #517fa4 !important;
}
a.bg-instagram:hover, a.bg-instagram:focus,
button.bg-instagram:hover,
button.bg-instagram:focus {
  background-color: #406582 !important;
}
.bg-pinterest {
  background-color: #cb2027 !important;
}
a.bg-pinterest:hover, a.bg-pinterest:focus,
button.bg-pinterest:hover,
button.bg-pinterest:focus {
  background-color: #9f191f !important;
}
.bg-vk {
  background-color: #45668e !important;
}
a.bg-vk:hover, a.bg-vk:focus,
button.bg-vk:hover,
button.bg-vk:focus {
  background-color: #344d6c !important;
}
.bg-yahoo {
  background-color: #400191 !important;
}
a.bg-yahoo:hover, a.bg-yahoo:focus,
button.bg-yahoo:hover,
button.bg-yahoo:focus {
  background-color: #2a015e !important;
}
.bg-behance {
  background-color: #1769ff !important;
}
a.bg-behance:hover, a.bg-behance:focus,
button.bg-behance:hover,
button.bg-behance:focus {
  background-color: #0050e3 !important;
}
.bg-reddit {
  background-color: #ff4500 !important;
}
a.bg-reddit:hover, a.bg-reddit:focus,
button.bg-reddit:hover,
button.bg-reddit:focus {
  background-color: #cc3700 !important;
}
.bg-vimeo {
  background-color: #aad450 !important;
}
a.bg-vimeo:hover, a.bg-vimeo:focus,
button.bg-vimeo:hover,
button.bg-vimeo:focus {
  background-color: #93c130 !important;
}
.bg-gray-100 {
  background-color: #ebedef !important;
}
a.bg-gray-100:hover, a.bg-gray-100:focus,
button.bg-gray-100:hover,
button.bg-gray-100:focus {
  background-color: #cfd4d8 !important;
}
.bg-gray-200 {
  background-color: #d8dbe0 !important;
}
a.bg-gray-200:hover, a.bg-gray-200:focus,
button.bg-gray-200:hover,
button.bg-gray-200:focus {
  background-color: #bcc1c9 !important;
}
.bg-gray-300 {
  background-color: #c4c9d0 !important;
}
a.bg-gray-300:hover, a.bg-gray-300:focus,
button.bg-gray-300:hover,
button.bg-gray-300:focus {
  background-color: #a8afb9 !important;
}
.bg-gray-400 {
  background-color: #b1b7c1 !important;
}
a.bg-gray-400:hover, a.bg-gray-400:focus,
button.bg-gray-400:hover,
button.bg-gray-400:focus {
  background-color: #959daa !important;
}
.bg-gray-500 {
  background-color: #9da5b1 !important;
}
a.bg-gray-500:hover, a.bg-gray-500:focus,
button.bg-gray-500:hover,
button.bg-gray-500:focus {
  background-color: #818b9a !important;
}
.bg-gray-600 {
  background-color: #8a93a2 !important;
}
a.bg-gray-600:hover, a.bg-gray-600:focus,
button.bg-gray-600:hover,
button.bg-gray-600:focus {
  background-color: #6e798b !important;
}
.bg-gray-700 {
  background-color: #768192 !important;
}
a.bg-gray-700:hover, a.bg-gray-700:focus,
button.bg-gray-700:hover,
button.bg-gray-700:focus {
  background-color: #5e6877 !important;
}
.bg-gray-800 {
  background-color: #636f83 !important;
}
a.bg-gray-800:hover, a.bg-gray-800:focus,
button.bg-gray-800:hover,
button.bg-gray-800:focus {
  background-color: #4d5666 !important;
}
.bg-gray-900 {
  background-color: #4f5d73 !important;
}
a.bg-gray-900:hover, a.bg-gray-900:focus,
button.bg-gray-900:hover,
button.bg-gray-900:focus {
  background-color: #3a4555 !important;
}
.bg-box {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
}
.border {
  border: 1px solid #d8dbe0 !important;
}
.border-top {
  border-top: 1px solid #d8dbe0 !important;
}
.border-right {
  border-right: 1px solid #d8dbe0 !important;
}
.border-bottom {
  border-bottom: 1px solid #d8dbe0 !important;
}
.border-left {
  border-left: 1px solid #d8dbe0 !important;
}
.c-legacy-theme .border {
  border: 1px solid #c8ced3 !important;
}
.c-legacy-theme .border-top {
  border-top: 1px solid #c8ced3 !important;
}
.c-legacy-theme .border-right {
  border-right: 1px solid #c8ced3 !important;
}
.c-legacy-theme .border-bottom {
  border-bottom: 1px solid #c8ced3 !important;
}
.c-legacy-theme .border-left {
  border-left: 1px solid #c8ced3 !important;
}
.c-dark-theme .border {
  border: 1px solid rgba(255, 255, 255, 0.075) !important;
}
.c-dark-theme .border-top {
  border-top: 1px solid rgba(255, 255, 255, 0.075) !important;
}
.c-dark-theme .border-right {
  border-right: 1px solid rgba(255, 255, 255, 0.075) !important;
}
.c-dark-theme .border-bottom {
  border-bottom: 1px solid rgba(255, 255, 255, 0.075) !important;
}
.c-dark-theme .border-left {
  border-left: 1px solid rgba(255, 255, 255, 0.075) !important;
}
.border-0 {
  border: 0 !important;
}
.border-top-0 {
  border-top: 0 !important;
}
.border-right-0 {
  border-right: 0 !important;
}
.border-bottom-0 {
  border-bottom: 0 !important;
}
.border-left-0 {
  border-left: 0 !important;
}
.border-primary {
  border: 1px solid !important;
  border-color: #321fdb !important;
}
.border-secondary {
  border: 1px solid !important;
  border-color: #ced2d8 !important;
}
.border-success {
  border: 1px solid !important;
  border-color: #2eb85c !important;
}
.border-info {
  border: 1px solid !important;
  border-color: #39f !important;
}
.border-warning {
  border: 1px solid !important;
  border-color: #f9b115 !important;
}
.border-danger {
  border: 1px solid !important;
  border-color: #e55353 !important;
}
.border-light {
  border: 1px solid !important;
  border-color: #ebedef !important;
}
.border-dark {
  border: 1px solid !important;
  border-color: #636f83 !important;
}
.c-dark-theme .border-primary {
  border: 1px solid !important;
  border-color: #4638c2 !important;
}
.c-dark-theme .border-secondary {
  border: 1px solid !important;
  border-color: #4c4f54 !important;
}
.c-dark-theme .border-success {
  border: 1px solid !important;
  border-color: #45a164 !important;
}
.c-dark-theme .border-info {
  border: 1px solid !important;
  border-color: #4799eb !important;
}
.c-dark-theme .border-warning {
  border: 1px solid !important;
  border-color: #e1a82d !important;
}
.c-dark-theme .border-danger {
  border: 1px solid !important;
  border-color: #d16767 !important;
}
.c-dark-theme .border-light {
  border: 1px solid !important;
  border-color: #6c6e7e !important;
}
.c-dark-theme .border-dark {
  border: 1px solid !important;
  border-color: #0e0e15 !important;
}
.c-legacy-theme .border-primary {
  border: 1px solid !important;
  border-color: #20a8d8 !important;
}
.c-legacy-theme .border-secondary {
  border: 1px solid !important;
  border-color: #c8ced3 !important;
}
.c-legacy-theme .border-success {
  border: 1px solid !important;
  border-color: #4dbd74 !important;
}
.c-legacy-theme .border-info {
  border: 1px solid !important;
  border-color: #63c2de !important;
}
.c-legacy-theme .border-warning {
  border: 1px solid !important;
  border-color: #ffc107 !important;
}
.c-legacy-theme .border-danger {
  border: 1px solid !important;
  border-color: #f86c6b !important;
}
.c-legacy-theme .border-light {
  border: 1px solid !important;
  border-color: #f0f3f5 !important;
}
.c-legacy-theme .border-dark {
  border: 1px solid !important;
  border-color: #2f353a !important;
}
.border-white {
  border-color: #fff !important;
}
.rounded-sm {
  border-radius: 0.2rem !important;
}
.rounded {
  border-radius: 0.25rem !important;
}
.rounded-top {
  border-top-left-radius: 0.25rem !important;
  border-top-right-radius: 0.25rem !important;
}
.rounded-right {
  border-top-right-radius: 0.25rem !important;
  border-bottom-right-radius: 0.25rem !important;
}
.rounded-bottom {
  border-bottom-right-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important;
}
.rounded-left {
  border-top-left-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important;
}
.rounded-lg {
  border-radius: 0.3rem !important;
}
.rounded-circle {
  border-radius: 50% !important;
}
.rounded-pill {
  border-radius: 50rem !important;
}
.rounded-0 {
  border-radius: 0 !important;
}
.b-a-0 {
  border: 0 !important;
}
.b-t-0 {
  border-top: 0 !important;
}
.b-r-0 {
  border-right: 0 !important;
}
.b-b-0 {
  border-bottom: 0 !important;
}
.b-l-0 {
  border-left: 0 !important;
}
.b-a-1 {
  border: 1px solid #d8dbe0;
}
.b-t-1 {
  border-top: 1px solid #d8dbe0;
}
.b-r-1 {
  border-right: 1px solid #d8dbe0;
}
.b-b-1 {
  border-bottom: 1px solid #d8dbe0;
}
.b-l-1 {
  border-left: 1px solid #d8dbe0;
}
.b-a-2 {
  border: 2px solid #d8dbe0;
}
.b-t-2 {
  border-top: 2px solid #d8dbe0;
}
.b-r-2 {
  border-right: 2px solid #d8dbe0;
}
.b-b-2 {
  border-bottom: 2px solid #d8dbe0;
}
.b-l-2 {
  border-left: 2px solid #d8dbe0;
}
.content-center {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  text-align: center;
}
.clearfix::after {
  display: block;
  clear: both;
  content: "";
}
.d-none {
  display: none !important;
}
.d-inline {
  display: inline !important;
}
.d-inline-block {
  display: inline-block !important;
}
.d-block {
  display: block !important;
}
.d-table {
  display: table !important;
}
.d-table-row {
  display: table-row !important;
}
.d-table-cell {
  display: table-cell !important;
}
.d-flex {
  display: flex !important;
}
.d-inline-flex {
  display: inline-flex !important;
}
@media (min-width: 576px) {
  .d-sm-none {
    display: none !important;
  }

  .d-sm-inline {
    display: inline !important;
  }

  .d-sm-inline-block {
    display: inline-block !important;
  }

  .d-sm-block {
    display: block !important;
  }

  .d-sm-table {
    display: table !important;
  }

  .d-sm-table-row {
    display: table-row !important;
  }

  .d-sm-table-cell {
    display: table-cell !important;
  }

  .d-sm-flex {
    display: flex !important;
  }

  .d-sm-inline-flex {
    display: inline-flex !important;
  }
}
@media (min-width: 768px) {
  .d-md-none {
    display: none !important;
  }

  .d-md-inline {
    display: inline !important;
  }

  .d-md-inline-block {
    display: inline-block !important;
  }

  .d-md-block {
    display: block !important;
  }

  .d-md-table {
    display: table !important;
  }

  .d-md-table-row {
    display: table-row !important;
  }

  .d-md-table-cell {
    display: table-cell !important;
  }

  .d-md-flex {
    display: flex !important;
  }

  .d-md-inline-flex {
    display: inline-flex !important;
  }
}
@media (min-width: 992px) {
  .d-lg-none {
    display: none !important;
  }

  .d-lg-inline {
    display: inline !important;
  }

  .d-lg-inline-block {
    display: inline-block !important;
  }

  .d-lg-block {
    display: block !important;
  }

  .d-lg-table {
    display: table !important;
  }

  .d-lg-table-row {
    display: table-row !important;
  }

  .d-lg-table-cell {
    display: table-cell !important;
  }

  .d-lg-flex {
    display: flex !important;
  }

  .d-lg-inline-flex {
    display: inline-flex !important;
  }
}
@media (min-width: 1200px) {
  .d-xl-none {
    display: none !important;
  }

  .d-xl-inline {
    display: inline !important;
  }

  .d-xl-inline-block {
    display: inline-block !important;
  }

  .d-xl-block {
    display: block !important;
  }

  .d-xl-table {
    display: table !important;
  }

  .d-xl-table-row {
    display: table-row !important;
  }

  .d-xl-table-cell {
    display: table-cell !important;
  }

  .d-xl-flex {
    display: flex !important;
  }

  .d-xl-inline-flex {
    display: inline-flex !important;
  }
}
@media (min-width: 1400px) {
  .d-xxl-none {
    display: none !important;
  }

  .d-xxl-inline {
    display: inline !important;
  }

  .d-xxl-inline-block {
    display: inline-block !important;
  }

  .d-xxl-block {
    display: block !important;
  }

  .d-xxl-table {
    display: table !important;
  }

  .d-xxl-table-row {
    display: table-row !important;
  }

  .d-xxl-table-cell {
    display: table-cell !important;
  }

  .d-xxl-flex {
    display: flex !important;
  }

  .d-xxl-inline-flex {
    display: inline-flex !important;
  }
}
@media (max-width: 575.98px) {
  .d-down-none {
    display: none !important;
  }
}
@media (max-width: 767.98px) {
  .d-sm-down-none {
    display: none !important;
  }
}
@media (max-width: 991.98px) {
  .d-md-down-none {
    display: none !important;
  }
}
@media (max-width: 1199.98px) {
  .d-lg-down-none {
    display: none !important;
  }
}
@media (max-width: 1399.98px) {
  .d-xl-down-none {
    display: none !important;
  }
}
.d-xxl-down-none {
  display: none !important;
}
.c-default-theme .c-d-default-none {
  display: none !important;
}
.c-app:not(.c-dark-theme):not(.c-legacy-theme) .c-d-default-none {
  display: none !important;
}
.c-dark-theme .c-d-dark-none {
  display: none !important;
}
.c-legacy-theme .c-d-legacy-none {
  display: none !important;
}
@media print {
  .d-print-none {
    display: none !important;
  }

  .d-print-inline {
    display: inline !important;
  }

  .d-print-inline-block {
    display: inline-block !important;
  }

  .d-print-block {
    display: block !important;
  }

  .d-print-table {
    display: table !important;
  }

  .d-print-table-row {
    display: table-row !important;
  }

  .d-print-table-cell {
    display: table-cell !important;
  }

  .d-print-flex {
    display: flex !important;
  }

  .d-print-inline-flex {
    display: inline-flex !important;
  }
}
.c-elevation-0 {
  border: 0;
  box-shadow: none !important;
}
.c-elevation-1 {
  border: 0;
  box-shadow: 0 1px 1px 0 rgba(var(--elevation-base-color), .14), 0 2px 1px -1px rgba(var(--elevation-base-color), .12), 0 1px 3px 0 rgba(var(--elevation-base-color), .20) !important;
}
.c-elevation-2 {
  border: 0;
  box-shadow: 0 2px 2px 0 rgba(var(--elevation-base-color), .14), 0 3px 1px -2px rgba(var(--elevation-base-color), .12), 0 1px 5px 0 rgba(var(--elevation-base-color), .20) !important;
}
.c-elevation-3 {
  border: 0;
  box-shadow: 0 3px 4px 0 rgba(var(--elevation-base-color), .14), 0 3px 3px -2px rgba(var(--elevation-base-color), .12), 0 1px 8px 0 rgba(var(--elevation-base-color), .20) !important;
}
.c-elevation-4 {
  border: 0;
  box-shadow: 0 4px 5px 0 rgba(var(--elevation-base-color), .14), 0 1px 10px 0 rgba(var(--elevation-base-color), .12), 0 2px 4px -1px rgba(var(--elevation-base-color), .20) !important;
}
.c-elevation-6 {
  border: 0;
  box-shadow: 0 6px 10px 0 rgba(var(--elevation-base-color), .14), 0 1px 18px 0 rgba(var(--elevation-base-color), .12), 0 3px 5px -1px rgba(var(--elevation-base-color), .20) !important;
}
.c-elevation-8 {
  border: 0;
  box-shadow: 0 8px 10px 1px rgba(var(--elevation-base-color), .14), 0 3px 14px 2px rgba(var(--elevation-base-color), .12), 0 5px 5px -3px rgba(var(--elevation-base-color), .20) !important;
}
.c-elevation-9 {
  border: 0;
  box-shadow: 0 9px 12px 1px rgba(var(--elevation-base-color), .14), 0 3px 16px 2px rgba(var(--elevation-base-color), .12), 0 5px 6px -3px rgba(var(--elevation-base-color), .20) !important;
}
.c-elevation-12 {
  border: 0;
  box-shadow: 0 12px 17px 2px rgba(var(--elevation-base-color), .14), 0 5px 22px 4px rgba(var(--elevation-base-color), .12), 0 7px 8px -4px rgba(var(--elevation-base-color), .20) !important;
}
.c-elevation-16 {
  border: 0;
  box-shadow: 0 16px 24px 2px rgba(var(--elevation-base-color), .14), 0 6px 30px 5px rgba(var(--elevation-base-color), .12), 0 8px 10px -5px rgba(var(--elevation-base-color), .20) !important;
}
.c-elevation-24 {
  border: 0;
  box-shadow: 0 24px 38px 3px rgba(var(--elevation-base-color), .14), 0 9px 46px 8px rgba(var(--elevation-base-color), .12), 0 11px 15px -7px rgba(var(--elevation-base-color), .20) !important;
}
.embed-responsive {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  overflow: hidden;
}
.embed-responsive::before {
  display: block;
  content: "";
}
.embed-responsive .embed-responsive-item,
.embed-responsive iframe,
.embed-responsive embed,
.embed-responsive object,
.embed-responsive video {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
.embed-responsive-21by9::before {
  padding-top: 42.8571428571%;
}
.embed-responsive-16by9::before {
  padding-top: 56.25%;
}
.embed-responsive-4by3::before {
  padding-top: 75%;
}
.embed-responsive-1by1::before {
  padding-top: 100%;
}
.embed-responsive-21by9::before {
  padding-top: 42.8571428571%;
}
.embed-responsive-16by9::before {
  padding-top: 56.25%;
}
.embed-responsive-4by3::before {
  padding-top: 75%;
}
.embed-responsive-1by1::before {
  padding-top: 100%;
}
.flex-row {
  flex-direction: row !important;
}
.flex-column {
  flex-direction: column !important;
}
.flex-row-reverse {
  flex-direction: row-reverse !important;
}
.flex-column-reverse {
  flex-direction: column-reverse !important;
}
.flex-wrap {
  flex-wrap: wrap !important;
}
.flex-nowrap {
  flex-wrap: nowrap !important;
}
.flex-wrap-reverse {
  flex-wrap: wrap-reverse !important;
}
.flex-fill {
  flex: 1 1 auto !important;
}
.flex-grow-0 {
  flex-grow: 0 !important;
}
.flex-grow-1 {
  flex-grow: 1 !important;
}
.flex-shrink-0 {
  flex-shrink: 0 !important;
}
.flex-shrink-1 {
  flex-shrink: 1 !important;
}
.justify-content-start {
  justify-content: flex-start !important;
}
.justify-content-end {
  justify-content: flex-end !important;
}
.justify-content-center {
  justify-content: center !important;
}
.justify-content-between {
  justify-content: space-between !important;
}
.justify-content-around {
  justify-content: space-around !important;
}
.align-items-start {
  align-items: flex-start !important;
}
.align-items-end {
  align-items: flex-end !important;
}
.align-items-center {
  align-items: center !important;
}
.align-items-baseline {
  align-items: baseline !important;
}
.align-items-stretch {
  align-items: stretch !important;
}
.align-content-start {
  align-content: flex-start !important;
}
.align-content-end {
  align-content: flex-end !important;
}
.align-content-center {
  align-content: center !important;
}
.align-content-between {
  align-content: space-between !important;
}
.align-content-around {
  align-content: space-around !important;
}
.align-content-stretch {
  align-content: stretch !important;
}
.align-self-auto {
  align-self: auto !important;
}
.align-self-start {
  align-self: flex-start !important;
}
.align-self-end {
  align-self: flex-end !important;
}
.align-self-center {
  align-self: center !important;
}
.align-self-baseline {
  align-self: baseline !important;
}
.align-self-stretch {
  align-self: stretch !important;
}
@media (min-width: 576px) {
  .flex-sm-row {
    flex-direction: row !important;
  }

  .flex-sm-column {
    flex-direction: column !important;
  }

  .flex-sm-row-reverse {
    flex-direction: row-reverse !important;
  }

  .flex-sm-column-reverse {
    flex-direction: column-reverse !important;
  }

  .flex-sm-wrap {
    flex-wrap: wrap !important;
  }

  .flex-sm-nowrap {
    flex-wrap: nowrap !important;
  }

  .flex-sm-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }

  .flex-sm-fill {
    flex: 1 1 auto !important;
  }

  .flex-sm-grow-0 {
    flex-grow: 0 !important;
  }

  .flex-sm-grow-1 {
    flex-grow: 1 !important;
  }

  .flex-sm-shrink-0 {
    flex-shrink: 0 !important;
  }

  .flex-sm-shrink-1 {
    flex-shrink: 1 !important;
  }

  .justify-content-sm-start {
    justify-content: flex-start !important;
  }

  .justify-content-sm-end {
    justify-content: flex-end !important;
  }

  .justify-content-sm-center {
    justify-content: center !important;
  }

  .justify-content-sm-between {
    justify-content: space-between !important;
  }

  .justify-content-sm-around {
    justify-content: space-around !important;
  }

  .align-items-sm-start {
    align-items: flex-start !important;
  }

  .align-items-sm-end {
    align-items: flex-end !important;
  }

  .align-items-sm-center {
    align-items: center !important;
  }

  .align-items-sm-baseline {
    align-items: baseline !important;
  }

  .align-items-sm-stretch {
    align-items: stretch !important;
  }

  .align-content-sm-start {
    align-content: flex-start !important;
  }

  .align-content-sm-end {
    align-content: flex-end !important;
  }

  .align-content-sm-center {
    align-content: center !important;
  }

  .align-content-sm-between {
    align-content: space-between !important;
  }

  .align-content-sm-around {
    align-content: space-around !important;
  }

  .align-content-sm-stretch {
    align-content: stretch !important;
  }

  .align-self-sm-auto {
    align-self: auto !important;
  }

  .align-self-sm-start {
    align-self: flex-start !important;
  }

  .align-self-sm-end {
    align-self: flex-end !important;
  }

  .align-self-sm-center {
    align-self: center !important;
  }

  .align-self-sm-baseline {
    align-self: baseline !important;
  }

  .align-self-sm-stretch {
    align-self: stretch !important;
  }
}
@media (min-width: 768px) {
  .flex-md-row {
    flex-direction: row !important;
  }

  .flex-md-column {
    flex-direction: column !important;
  }

  .flex-md-row-reverse {
    flex-direction: row-reverse !important;
  }

  .flex-md-column-reverse {
    flex-direction: column-reverse !important;
  }

  .flex-md-wrap {
    flex-wrap: wrap !important;
  }

  .flex-md-nowrap {
    flex-wrap: nowrap !important;
  }

  .flex-md-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }

  .flex-md-fill {
    flex: 1 1 auto !important;
  }

  .flex-md-grow-0 {
    flex-grow: 0 !important;
  }

  .flex-md-grow-1 {
    flex-grow: 1 !important;
  }

  .flex-md-shrink-0 {
    flex-shrink: 0 !important;
  }

  .flex-md-shrink-1 {
    flex-shrink: 1 !important;
  }

  .justify-content-md-start {
    justify-content: flex-start !important;
  }

  .justify-content-md-end {
    justify-content: flex-end !important;
  }

  .justify-content-md-center {
    justify-content: center !important;
  }

  .justify-content-md-between {
    justify-content: space-between !important;
  }

  .justify-content-md-around {
    justify-content: space-around !important;
  }

  .align-items-md-start {
    align-items: flex-start !important;
  }

  .align-items-md-end {
    align-items: flex-end !important;
  }

  .align-items-md-center {
    align-items: center !important;
  }

  .align-items-md-baseline {
    align-items: baseline !important;
  }

  .align-items-md-stretch {
    align-items: stretch !important;
  }

  .align-content-md-start {
    align-content: flex-start !important;
  }

  .align-content-md-end {
    align-content: flex-end !important;
  }

  .align-content-md-center {
    align-content: center !important;
  }

  .align-content-md-between {
    align-content: space-between !important;
  }

  .align-content-md-around {
    align-content: space-around !important;
  }

  .align-content-md-stretch {
    align-content: stretch !important;
  }

  .align-self-md-auto {
    align-self: auto !important;
  }

  .align-self-md-start {
    align-self: flex-start !important;
  }

  .align-self-md-end {
    align-self: flex-end !important;
  }

  .align-self-md-center {
    align-self: center !important;
  }

  .align-self-md-baseline {
    align-self: baseline !important;
  }

  .align-self-md-stretch {
    align-self: stretch !important;
  }
}
@media (min-width: 992px) {
  .flex-lg-row {
    flex-direction: row !important;
  }

  .flex-lg-column {
    flex-direction: column !important;
  }

  .flex-lg-row-reverse {
    flex-direction: row-reverse !important;
  }

  .flex-lg-column-reverse {
    flex-direction: column-reverse !important;
  }

  .flex-lg-wrap {
    flex-wrap: wrap !important;
  }

  .flex-lg-nowrap {
    flex-wrap: nowrap !important;
  }

  .flex-lg-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }

  .flex-lg-fill {
    flex: 1 1 auto !important;
  }

  .flex-lg-grow-0 {
    flex-grow: 0 !important;
  }

  .flex-lg-grow-1 {
    flex-grow: 1 !important;
  }

  .flex-lg-shrink-0 {
    flex-shrink: 0 !important;
  }

  .flex-lg-shrink-1 {
    flex-shrink: 1 !important;
  }

  .justify-content-lg-start {
    justify-content: flex-start !important;
  }

  .justify-content-lg-end {
    justify-content: flex-end !important;
  }

  .justify-content-lg-center {
    justify-content: center !important;
  }

  .justify-content-lg-between {
    justify-content: space-between !important;
  }

  .justify-content-lg-around {
    justify-content: space-around !important;
  }

  .align-items-lg-start {
    align-items: flex-start !important;
  }

  .align-items-lg-end {
    align-items: flex-end !important;
  }

  .align-items-lg-center {
    align-items: center !important;
  }

  .align-items-lg-baseline {
    align-items: baseline !important;
  }

  .align-items-lg-stretch {
    align-items: stretch !important;
  }

  .align-content-lg-start {
    align-content: flex-start !important;
  }

  .align-content-lg-end {
    align-content: flex-end !important;
  }

  .align-content-lg-center {
    align-content: center !important;
  }

  .align-content-lg-between {
    align-content: space-between !important;
  }

  .align-content-lg-around {
    align-content: space-around !important;
  }

  .align-content-lg-stretch {
    align-content: stretch !important;
  }

  .align-self-lg-auto {
    align-self: auto !important;
  }

  .align-self-lg-start {
    align-self: flex-start !important;
  }

  .align-self-lg-end {
    align-self: flex-end !important;
  }

  .align-self-lg-center {
    align-self: center !important;
  }

  .align-self-lg-baseline {
    align-self: baseline !important;
  }

  .align-self-lg-stretch {
    align-self: stretch !important;
  }
}
@media (min-width: 1200px) {
  .flex-xl-row {
    flex-direction: row !important;
  }

  .flex-xl-column {
    flex-direction: column !important;
  }

  .flex-xl-row-reverse {
    flex-direction: row-reverse !important;
  }

  .flex-xl-column-reverse {
    flex-direction: column-reverse !important;
  }

  .flex-xl-wrap {
    flex-wrap: wrap !important;
  }

  .flex-xl-nowrap {
    flex-wrap: nowrap !important;
  }

  .flex-xl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }

  .flex-xl-fill {
    flex: 1 1 auto !important;
  }

  .flex-xl-grow-0 {
    flex-grow: 0 !important;
  }

  .flex-xl-grow-1 {
    flex-grow: 1 !important;
  }

  .flex-xl-shrink-0 {
    flex-shrink: 0 !important;
  }

  .flex-xl-shrink-1 {
    flex-shrink: 1 !important;
  }

  .justify-content-xl-start {
    justify-content: flex-start !important;
  }

  .justify-content-xl-end {
    justify-content: flex-end !important;
  }

  .justify-content-xl-center {
    justify-content: center !important;
  }

  .justify-content-xl-between {
    justify-content: space-between !important;
  }

  .justify-content-xl-around {
    justify-content: space-around !important;
  }

  .align-items-xl-start {
    align-items: flex-start !important;
  }

  .align-items-xl-end {
    align-items: flex-end !important;
  }

  .align-items-xl-center {
    align-items: center !important;
  }

  .align-items-xl-baseline {
    align-items: baseline !important;
  }

  .align-items-xl-stretch {
    align-items: stretch !important;
  }

  .align-content-xl-start {
    align-content: flex-start !important;
  }

  .align-content-xl-end {
    align-content: flex-end !important;
  }

  .align-content-xl-center {
    align-content: center !important;
  }

  .align-content-xl-between {
    align-content: space-between !important;
  }

  .align-content-xl-around {
    align-content: space-around !important;
  }

  .align-content-xl-stretch {
    align-content: stretch !important;
  }

  .align-self-xl-auto {
    align-self: auto !important;
  }

  .align-self-xl-start {
    align-self: flex-start !important;
  }

  .align-self-xl-end {
    align-self: flex-end !important;
  }

  .align-self-xl-center {
    align-self: center !important;
  }

  .align-self-xl-baseline {
    align-self: baseline !important;
  }

  .align-self-xl-stretch {
    align-self: stretch !important;
  }
}
@media (min-width: 1400px) {
  .flex-xxl-row {
    flex-direction: row !important;
  }

  .flex-xxl-column {
    flex-direction: column !important;
  }

  .flex-xxl-row-reverse {
    flex-direction: row-reverse !important;
  }

  .flex-xxl-column-reverse {
    flex-direction: column-reverse !important;
  }

  .flex-xxl-wrap {
    flex-wrap: wrap !important;
  }

  .flex-xxl-nowrap {
    flex-wrap: nowrap !important;
  }

  .flex-xxl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }

  .flex-xxl-fill {
    flex: 1 1 auto !important;
  }

  .flex-xxl-grow-0 {
    flex-grow: 0 !important;
  }

  .flex-xxl-grow-1 {
    flex-grow: 1 !important;
  }

  .flex-xxl-shrink-0 {
    flex-shrink: 0 !important;
  }

  .flex-xxl-shrink-1 {
    flex-shrink: 1 !important;
  }

  .justify-content-xxl-start {
    justify-content: flex-start !important;
  }

  .justify-content-xxl-end {
    justify-content: flex-end !important;
  }

  .justify-content-xxl-center {
    justify-content: center !important;
  }

  .justify-content-xxl-between {
    justify-content: space-between !important;
  }

  .justify-content-xxl-around {
    justify-content: space-around !important;
  }

  .align-items-xxl-start {
    align-items: flex-start !important;
  }

  .align-items-xxl-end {
    align-items: flex-end !important;
  }

  .align-items-xxl-center {
    align-items: center !important;
  }

  .align-items-xxl-baseline {
    align-items: baseline !important;
  }

  .align-items-xxl-stretch {
    align-items: stretch !important;
  }

  .align-content-xxl-start {
    align-content: flex-start !important;
  }

  .align-content-xxl-end {
    align-content: flex-end !important;
  }

  .align-content-xxl-center {
    align-content: center !important;
  }

  .align-content-xxl-between {
    align-content: space-between !important;
  }

  .align-content-xxl-around {
    align-content: space-around !important;
  }

  .align-content-xxl-stretch {
    align-content: stretch !important;
  }

  .align-self-xxl-auto {
    align-self: auto !important;
  }

  .align-self-xxl-start {
    align-self: flex-start !important;
  }

  .align-self-xxl-end {
    align-self: flex-end !important;
  }

  .align-self-xxl-center {
    align-self: center !important;
  }

  .align-self-xxl-baseline {
    align-self: baseline !important;
  }

  .align-self-xxl-stretch {
    align-self: stretch !important;
  }
}
html:not([dir=rtl]) .float-left {
  float: left !important;
}
*[dir=rtl] .float-left {
  float: right !important;
}
html:not([dir=rtl]) .float-right {
  float: right !important;
}
*[dir=rtl] .float-right {
  float: left !important;
}
.float-none {
  float: none !important;
}
@media (min-width: 576px) {
  html:not([dir=rtl]) .float-sm-left {
    float: left !important;
  }
  *[dir=rtl] .float-sm-left {
    float: right !important;
  }

  html:not([dir=rtl]) .float-sm-right {
    float: right !important;
  }
  *[dir=rtl] .float-sm-right {
    float: left !important;
  }

  .float-sm-none {
    float: none !important;
  }
}
@media (min-width: 768px) {
  html:not([dir=rtl]) .float-md-left {
    float: left !important;
  }
  *[dir=rtl] .float-md-left {
    float: right !important;
  }

  html:not([dir=rtl]) .float-md-right {
    float: right !important;
  }
  *[dir=rtl] .float-md-right {
    float: left !important;
  }

  .float-md-none {
    float: none !important;
  }
}
@media (min-width: 992px) {
  html:not([dir=rtl]) .float-lg-left {
    float: left !important;
  }
  *[dir=rtl] .float-lg-left {
    float: right !important;
  }

  html:not([dir=rtl]) .float-lg-right {
    float: right !important;
  }
  *[dir=rtl] .float-lg-right {
    float: left !important;
  }

  .float-lg-none {
    float: none !important;
  }
}
@media (min-width: 1200px) {
  html:not([dir=rtl]) .float-xl-left {
    float: left !important;
  }
  *[dir=rtl] .float-xl-left {
    float: right !important;
  }

  html:not([dir=rtl]) .float-xl-right {
    float: right !important;
  }
  *[dir=rtl] .float-xl-right {
    float: left !important;
  }

  .float-xl-none {
    float: none !important;
  }
}
@media (min-width: 1400px) {
  html:not([dir=rtl]) .float-xxl-left {
    float: left !important;
  }
  *[dir=rtl] .float-xxl-left {
    float: right !important;
  }

  html:not([dir=rtl]) .float-xxl-right {
    float: right !important;
  }
  *[dir=rtl] .float-xxl-right {
    float: left !important;
  }

  .float-xxl-none {
    float: none !important;
  }
}
.user-select-all {
  -webkit-user-select: all !important;
     -moz-user-select: all !important;
          user-select: all !important;
}
.user-select-auto {
  -webkit-user-select: auto !important;
     -moz-user-select: auto !important;
      -ms-user-select: auto !important;
          user-select: auto !important;
}
.user-select-none {
  -webkit-user-select: none !important;
     -moz-user-select: none !important;
      -ms-user-select: none !important;
          user-select: none !important;
}
.overflow-auto {
  overflow: auto !important;
}
.overflow-hidden {
  overflow: hidden !important;
}
.position-static {
  position: static !important;
}
.position-relative {
  position: relative !important;
}
.position-absolute {
  position: absolute !important;
}
.position-fixed {
  position: fixed !important;
}
.position-sticky {
  position: -webkit-sticky !important;
  position: sticky !important;
}
.fixed-top {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1030;
}
.fixed-bottom {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1030;
}
@supports ((position: -webkit-sticky) or (position: sticky)) {
  .sticky-top {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 1020;
  }
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.sr-only-focusable:active, .sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal;
}
.shadow-sm {
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 21, 0.075) !important;
}
.shadow {
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 21, 0.15) !important;
}
.shadow-lg {
  box-shadow: 0 1rem 3rem rgba(0, 0, 21, 0.175) !important;
}
.shadow-none {
  box-shadow: none !important;
}
.w-25 {
  width: 25% !important;
}
.w-50 {
  width: 50% !important;
}
.w-75 {
  width: 75% !important;
}
.w-100 {
  width: 100% !important;
}
.w-auto {
  width: auto !important;
}
.h-25 {
  height: 25% !important;
}
.h-50 {
  height: 50% !important;
}
.h-75 {
  height: 75% !important;
}
.h-100 {
  height: 100% !important;
}
.h-auto {
  height: auto !important;
}
.mw-100 {
  max-width: 100% !important;
}
.mh-100 {
  max-height: 100% !important;
}
.min-vw-100 {
  min-width: 100vw !important;
}
.min-vh-100 {
  min-height: 100vh !important;
}
.vw-100 {
  width: 100vw !important;
}
.vh-100 {
  height: 100vh !important;
}
.m-0 {
  margin: 0 !important;
}
.mt-0,
.my-0 {
  margin-top: 0 !important;
}
.mr-0,
.mx-0 {
  margin-right: 0 !important;
}
.mb-0,
.my-0 {
  margin-bottom: 0 !important;
}
.ml-0,
.mx-0 {
  margin-left: 0 !important;
}
html:not([dir=rtl]) .mfs-0 {
  margin-left: 0 !important;
}
*[dir=rtl] .mfs-0 {
  margin-right: 0 !important;
}
html:not([dir=rtl]) .mfe-0 {
  margin-right: 0 !important;
}
*[dir=rtl] .mfe-0 {
  margin-left: 0 !important;
}
.m-1 {
  margin: 0.25rem !important;
}
.mt-1,
.my-1 {
  margin-top: 0.25rem !important;
}
.mr-1,
.mx-1 {
  margin-right: 0.25rem !important;
}
.mb-1,
.my-1 {
  margin-bottom: 0.25rem !important;
}
.ml-1,
.mx-1 {
  margin-left: 0.25rem !important;
}
html:not([dir=rtl]) .mfs-1 {
  margin-left: 0.25rem !important;
}
*[dir=rtl] .mfs-1 {
  margin-right: 0.25rem !important;
}
html:not([dir=rtl]) .mfe-1 {
  margin-right: 0.25rem !important;
}
*[dir=rtl] .mfe-1 {
  margin-left: 0.25rem !important;
}
.m-2 {
  margin: 0.5rem !important;
}
.mt-2,
.my-2 {
  margin-top: 0.5rem !important;
}
.mr-2,
.mx-2 {
  margin-right: 0.5rem !important;
}
.mb-2,
.my-2 {
  margin-bottom: 0.5rem !important;
}
.ml-2,
.mx-2 {
  margin-left: 0.5rem !important;
}
html:not([dir=rtl]) .mfs-2 {
  margin-left: 0.5rem !important;
}
*[dir=rtl] .mfs-2 {
  margin-right: 0.5rem !important;
}
html:not([dir=rtl]) .mfe-2 {
  margin-right: 0.5rem !important;
}
*[dir=rtl] .mfe-2 {
  margin-left: 0.5rem !important;
}
.m-3 {
  margin: 1rem !important;
}
.mt-3,
.my-3 {
  margin-top: 1rem !important;
}
.mr-3,
.mx-3 {
  margin-right: 1rem !important;
}
.mb-3,
.my-3 {
  margin-bottom: 1rem !important;
}
.ml-3,
.mx-3 {
  margin-left: 1rem !important;
}
html:not([dir=rtl]) .mfs-3 {
  margin-left: 1rem !important;
}
*[dir=rtl] .mfs-3 {
  margin-right: 1rem !important;
}
html:not([dir=rtl]) .mfe-3 {
  margin-right: 1rem !important;
}
*[dir=rtl] .mfe-3 {
  margin-left: 1rem !important;
}
.m-4 {
  margin: 1.5rem !important;
}
.mt-4,
.my-4 {
  margin-top: 1.5rem !important;
}
.mr-4,
.mx-4 {
  margin-right: 1.5rem !important;
}
.mb-4,
.my-4 {
  margin-bottom: 1.5rem !important;
}
.ml-4,
.mx-4 {
  margin-left: 1.5rem !important;
}
html:not([dir=rtl]) .mfs-4 {
  margin-left: 1.5rem !important;
}
*[dir=rtl] .mfs-4 {
  margin-right: 1.5rem !important;
}
html:not([dir=rtl]) .mfe-4 {
  margin-right: 1.5rem !important;
}
*[dir=rtl] .mfe-4 {
  margin-left: 1.5rem !important;
}
.m-5 {
  margin: 3rem !important;
}
.mt-5,
.my-5 {
  margin-top: 3rem !important;
}
.mr-5,
.mx-5 {
  margin-right: 3rem !important;
}
.mb-5,
.my-5 {
  margin-bottom: 3rem !important;
}
.ml-5,
.mx-5 {
  margin-left: 3rem !important;
}
html:not([dir=rtl]) .mfs-5 {
  margin-left: 3rem !important;
}
*[dir=rtl] .mfs-5 {
  margin-right: 3rem !important;
}
html:not([dir=rtl]) .mfe-5 {
  margin-right: 3rem !important;
}
*[dir=rtl] .mfe-5 {
  margin-left: 3rem !important;
}
.p-0 {
  padding: 0 !important;
}
.pt-0,
.py-0 {
  padding-top: 0 !important;
}
.pr-0,
.px-0 {
  padding-right: 0 !important;
}
.pb-0,
.py-0 {
  padding-bottom: 0 !important;
}
.pl-0,
.px-0 {
  padding-left: 0 !important;
}
html:not([dir=rtl]) .pfs-0 {
  padding-left: 0 !important;
}
*[dir=rtl] .pfs-0 {
  padding-right: 0 !important;
}
html:not([dir=rtl]) .pfe-0 {
  padding-right: 0 !important;
}
*[dir=rtl] .pfe-0 {
  padding-left: 0 !important;
}
.p-1 {
  padding: 0.25rem !important;
}
.pt-1,
.py-1 {
  padding-top: 0.25rem !important;
}
.pr-1,
.px-1 {
  padding-right: 0.25rem !important;
}
.pb-1,
.py-1 {
  padding-bottom: 0.25rem !important;
}
.pl-1,
.px-1 {
  padding-left: 0.25rem !important;
}
html:not([dir=rtl]) .pfs-1 {
  padding-left: 0.25rem !important;
}
*[dir=rtl] .pfs-1 {
  padding-right: 0.25rem !important;
}
html:not([dir=rtl]) .pfe-1 {
  padding-right: 0.25rem !important;
}
*[dir=rtl] .pfe-1 {
  padding-left: 0.25rem !important;
}
.p-2 {
  padding: 0.5rem !important;
}
.pt-2,
.py-2 {
  padding-top: 0.5rem !important;
}
.pr-2,
.px-2 {
  padding-right: 0.5rem !important;
}
.pb-2,
.py-2 {
  padding-bottom: 0.5rem !important;
}
.pl-2,
.px-2 {
  padding-left: 0.5rem !important;
}
html:not([dir=rtl]) .pfs-2 {
  padding-left: 0.5rem !important;
}
*[dir=rtl] .pfs-2 {
  padding-right: 0.5rem !important;
}
html:not([dir=rtl]) .pfe-2 {
  padding-right: 0.5rem !important;
}
*[dir=rtl] .pfe-2 {
  padding-left: 0.5rem !important;
}
.p-3 {
  padding: 1rem !important;
}
.pt-3,
.py-3 {
  padding-top: 1rem !important;
}
.pr-3,
.px-3 {
  padding-right: 1rem !important;
}
.pb-3,
.py-3 {
  padding-bottom: 1rem !important;
}
.pl-3,
.px-3 {
  padding-left: 1rem !important;
}
html:not([dir=rtl]) .pfs-3 {
  padding-left: 1rem !important;
}
*[dir=rtl] .pfs-3 {
  padding-right: 1rem !important;
}
html:not([dir=rtl]) .pfe-3 {
  padding-right: 1rem !important;
}
*[dir=rtl] .pfe-3 {
  padding-left: 1rem !important;
}
.p-4 {
  padding: 1.5rem !important;
}
.pt-4,
.py-4 {
  padding-top: 1.5rem !important;
}
.pr-4,
.px-4 {
  padding-right: 1.5rem !important;
}
.pb-4,
.py-4 {
  padding-bottom: 1.5rem !important;
}
.pl-4,
.px-4 {
  padding-left: 1.5rem !important;
}
html:not([dir=rtl]) .pfs-4 {
  padding-left: 1.5rem !important;
}
*[dir=rtl] .pfs-4 {
  padding-right: 1.5rem !important;
}
html:not([dir=rtl]) .pfe-4 {
  padding-right: 1.5rem !important;
}
*[dir=rtl] .pfe-4 {
  padding-left: 1.5rem !important;
}
.p-5 {
  padding: 3rem !important;
}
.pt-5,
.py-5 {
  padding-top: 3rem !important;
}
.pr-5,
.px-5 {
  padding-right: 3rem !important;
}
.pb-5,
.py-5 {
  padding-bottom: 3rem !important;
}
.pl-5,
.px-5 {
  padding-left: 3rem !important;
}
html:not([dir=rtl]) .pfs-5 {
  padding-left: 3rem !important;
}
*[dir=rtl] .pfs-5 {
  padding-right: 3rem !important;
}
html:not([dir=rtl]) .pfe-5 {
  padding-right: 3rem !important;
}
*[dir=rtl] .pfe-5 {
  padding-left: 3rem !important;
}
.m-n1 {
  margin: -0.25rem !important;
}
.mt-n1,
.my-n1 {
  margin-top: -0.25rem !important;
}
.mr-n1,
.mx-n1 {
  margin-right: -0.25rem !important;
}
.mb-n1,
.my-n1 {
  margin-bottom: -0.25rem !important;
}
.ml-n1,
.mx-n1 {
  margin-left: -0.25rem !important;
}
html:not([dir=rtl]) .mfs-n1 {
  margin-left: -0.25rem !important;
}
*[dir=rtl] .mfs-n1 {
  margin-right: -0.25rem !important;
}
html:not([dir=rtl]) .mfe-n1 {
  margin-right: -0.25rem !important;
}
*[dir=rtl] .mfe-n1 {
  margin-left: -0.25rem !important;
}
.m-n2 {
  margin: -0.5rem !important;
}
.mt-n2,
.my-n2 {
  margin-top: -0.5rem !important;
}
.mr-n2,
.mx-n2 {
  margin-right: -0.5rem !important;
}
.mb-n2,
.my-n2 {
  margin-bottom: -0.5rem !important;
}
.ml-n2,
.mx-n2 {
  margin-left: -0.5rem !important;
}
html:not([dir=rtl]) .mfs-n2 {
  margin-left: -0.5rem !important;
}
*[dir=rtl] .mfs-n2 {
  margin-right: -0.5rem !important;
}
html:not([dir=rtl]) .mfe-n2 {
  margin-right: -0.5rem !important;
}
*[dir=rtl] .mfe-n2 {
  margin-left: -0.5rem !important;
}
.m-n3 {
  margin: -1rem !important;
}
.mt-n3,
.my-n3 {
  margin-top: -1rem !important;
}
.mr-n3,
.mx-n3 {
  margin-right: -1rem !important;
}
.mb-n3,
.my-n3 {
  margin-bottom: -1rem !important;
}
.ml-n3,
.mx-n3 {
  margin-left: -1rem !important;
}
html:not([dir=rtl]) .mfs-n3 {
  margin-left: -1rem !important;
}
*[dir=rtl] .mfs-n3 {
  margin-right: -1rem !important;
}
html:not([dir=rtl]) .mfe-n3 {
  margin-right: -1rem !important;
}
*[dir=rtl] .mfe-n3 {
  margin-left: -1rem !important;
}
.m-n4 {
  margin: -1.5rem !important;
}
.mt-n4,
.my-n4 {
  margin-top: -1.5rem !important;
}
.mr-n4,
.mx-n4 {
  margin-right: -1.5rem !important;
}
.mb-n4,
.my-n4 {
  margin-bottom: -1.5rem !important;
}
.ml-n4,
.mx-n4 {
  margin-left: -1.5rem !important;
}
html:not([dir=rtl]) .mfs-n4 {
  margin-left: -1.5rem !important;
}
*[dir=rtl] .mfs-n4 {
  margin-right: -1.5rem !important;
}
html:not([dir=rtl]) .mfe-n4 {
  margin-right: -1.5rem !important;
}
*[dir=rtl] .mfe-n4 {
  margin-left: -1.5rem !important;
}
.m-n5 {
  margin: -3rem !important;
}
.mt-n5,
.my-n5 {
  margin-top: -3rem !important;
}
.mr-n5,
.mx-n5 {
  margin-right: -3rem !important;
}
.mb-n5,
.my-n5 {
  margin-bottom: -3rem !important;
}
.ml-n5,
.mx-n5 {
  margin-left: -3rem !important;
}
html:not([dir=rtl]) .mfs-n5 {
  margin-left: -3rem !important;
}
*[dir=rtl] .mfs-n5 {
  margin-right: -3rem !important;
}
html:not([dir=rtl]) .mfe-n5 {
  margin-right: -3rem !important;
}
*[dir=rtl] .mfe-n5 {
  margin-left: -3rem !important;
}
.m-auto {
  margin: auto !important;
}
.mt-auto,
.my-auto {
  margin-top: auto !important;
}
.mr-auto,
.mx-auto {
  margin-right: auto !important;
}
.mb-auto,
.my-auto {
  margin-bottom: auto !important;
}
.ml-auto,
.mx-auto {
  margin-left: auto !important;
}
html:not([dir=rtl]) .mfs-auto {
  margin-left: auto !important;
}
*[dir=rtl] .mfs-auto {
  margin-right: auto !important;
}
html:not([dir=rtl]) .mfe-auto {
  margin-right: auto !important;
}
*[dir=rtl] .mfe-auto {
  margin-left: auto !important;
}
@media (min-width: 576px) {
  .m-sm-0 {
    margin: 0 !important;
  }

  .mt-sm-0,
.my-sm-0 {
    margin-top: 0 !important;
  }

  .mr-sm-0,
.mx-sm-0 {
    margin-right: 0 !important;
  }

  .mb-sm-0,
.my-sm-0 {
    margin-bottom: 0 !important;
  }

  .ml-sm-0,
.mx-sm-0 {
    margin-left: 0 !important;
  }

  html:not([dir=rtl]) .mfs-sm-0 {
    margin-left: 0 !important;
  }
  *[dir=rtl] .mfs-sm-0 {
    margin-right: 0 !important;
  }

  html:not([dir=rtl]) .mfe-sm-0 {
    margin-right: 0 !important;
  }
  *[dir=rtl] .mfe-sm-0 {
    margin-left: 0 !important;
  }

  .m-sm-1 {
    margin: 0.25rem !important;
  }

  .mt-sm-1,
.my-sm-1 {
    margin-top: 0.25rem !important;
  }

  .mr-sm-1,
.mx-sm-1 {
    margin-right: 0.25rem !important;
  }

  .mb-sm-1,
.my-sm-1 {
    margin-bottom: 0.25rem !important;
  }

  .ml-sm-1,
.mx-sm-1 {
    margin-left: 0.25rem !important;
  }

  html:not([dir=rtl]) .mfs-sm-1 {
    margin-left: 0.25rem !important;
  }
  *[dir=rtl] .mfs-sm-1 {
    margin-right: 0.25rem !important;
  }

  html:not([dir=rtl]) .mfe-sm-1 {
    margin-right: 0.25rem !important;
  }
  *[dir=rtl] .mfe-sm-1 {
    margin-left: 0.25rem !important;
  }

  .m-sm-2 {
    margin: 0.5rem !important;
  }

  .mt-sm-2,
.my-sm-2 {
    margin-top: 0.5rem !important;
  }

  .mr-sm-2,
.mx-sm-2 {
    margin-right: 0.5rem !important;
  }

  .mb-sm-2,
.my-sm-2 {
    margin-bottom: 0.5rem !important;
  }

  .ml-sm-2,
.mx-sm-2 {
    margin-left: 0.5rem !important;
  }

  html:not([dir=rtl]) .mfs-sm-2 {
    margin-left: 0.5rem !important;
  }
  *[dir=rtl] .mfs-sm-2 {
    margin-right: 0.5rem !important;
  }

  html:not([dir=rtl]) .mfe-sm-2 {
    margin-right: 0.5rem !important;
  }
  *[dir=rtl] .mfe-sm-2 {
    margin-left: 0.5rem !important;
  }

  .m-sm-3 {
    margin: 1rem !important;
  }

  .mt-sm-3,
.my-sm-3 {
    margin-top: 1rem !important;
  }

  .mr-sm-3,
.mx-sm-3 {
    margin-right: 1rem !important;
  }

  .mb-sm-3,
.my-sm-3 {
    margin-bottom: 1rem !important;
  }

  .ml-sm-3,
.mx-sm-3 {
    margin-left: 1rem !important;
  }

  html:not([dir=rtl]) .mfs-sm-3 {
    margin-left: 1rem !important;
  }
  *[dir=rtl] .mfs-sm-3 {
    margin-right: 1rem !important;
  }

  html:not([dir=rtl]) .mfe-sm-3 {
    margin-right: 1rem !important;
  }
  *[dir=rtl] .mfe-sm-3 {
    margin-left: 1rem !important;
  }

  .m-sm-4 {
    margin: 1.5rem !important;
  }

  .mt-sm-4,
.my-sm-4 {
    margin-top: 1.5rem !important;
  }

  .mr-sm-4,
.mx-sm-4 {
    margin-right: 1.5rem !important;
  }

  .mb-sm-4,
.my-sm-4 {
    margin-bottom: 1.5rem !important;
  }

  .ml-sm-4,
.mx-sm-4 {
    margin-left: 1.5rem !important;
  }

  html:not([dir=rtl]) .mfs-sm-4 {
    margin-left: 1.5rem !important;
  }
  *[dir=rtl] .mfs-sm-4 {
    margin-right: 1.5rem !important;
  }

  html:not([dir=rtl]) .mfe-sm-4 {
    margin-right: 1.5rem !important;
  }
  *[dir=rtl] .mfe-sm-4 {
    margin-left: 1.5rem !important;
  }

  .m-sm-5 {
    margin: 3rem !important;
  }

  .mt-sm-5,
.my-sm-5 {
    margin-top: 3rem !important;
  }

  .mr-sm-5,
.mx-sm-5 {
    margin-right: 3rem !important;
  }

  .mb-sm-5,
.my-sm-5 {
    margin-bottom: 3rem !important;
  }

  .ml-sm-5,
.mx-sm-5 {
    margin-left: 3rem !important;
  }

  html:not([dir=rtl]) .mfs-sm-5 {
    margin-left: 3rem !important;
  }
  *[dir=rtl] .mfs-sm-5 {
    margin-right: 3rem !important;
  }

  html:not([dir=rtl]) .mfe-sm-5 {
    margin-right: 3rem !important;
  }
  *[dir=rtl] .mfe-sm-5 {
    margin-left: 3rem !important;
  }

  .p-sm-0 {
    padding: 0 !important;
  }

  .pt-sm-0,
.py-sm-0 {
    padding-top: 0 !important;
  }

  .pr-sm-0,
.px-sm-0 {
    padding-right: 0 !important;
  }

  .pb-sm-0,
.py-sm-0 {
    padding-bottom: 0 !important;
  }

  .pl-sm-0,
.px-sm-0 {
    padding-left: 0 !important;
  }

  html:not([dir=rtl]) .pfs-sm-0 {
    padding-left: 0 !important;
  }
  *[dir=rtl] .pfs-sm-0 {
    padding-right: 0 !important;
  }

  html:not([dir=rtl]) .pfe-sm-0 {
    padding-right: 0 !important;
  }
  *[dir=rtl] .pfe-sm-0 {
    padding-left: 0 !important;
  }

  .p-sm-1 {
    padding: 0.25rem !important;
  }

  .pt-sm-1,
.py-sm-1 {
    padding-top: 0.25rem !important;
  }

  .pr-sm-1,
.px-sm-1 {
    padding-right: 0.25rem !important;
  }

  .pb-sm-1,
.py-sm-1 {
    padding-bottom: 0.25rem !important;
  }

  .pl-sm-1,
.px-sm-1 {
    padding-left: 0.25rem !important;
  }

  html:not([dir=rtl]) .pfs-sm-1 {
    padding-left: 0.25rem !important;
  }
  *[dir=rtl] .pfs-sm-1 {
    padding-right: 0.25rem !important;
  }

  html:not([dir=rtl]) .pfe-sm-1 {
    padding-right: 0.25rem !important;
  }
  *[dir=rtl] .pfe-sm-1 {
    padding-left: 0.25rem !important;
  }

  .p-sm-2 {
    padding: 0.5rem !important;
  }

  .pt-sm-2,
.py-sm-2 {
    padding-top: 0.5rem !important;
  }

  .pr-sm-2,
.px-sm-2 {
    padding-right: 0.5rem !important;
  }

  .pb-sm-2,
.py-sm-2 {
    padding-bottom: 0.5rem !important;
  }

  .pl-sm-2,
.px-sm-2 {
    padding-left: 0.5rem !important;
  }

  html:not([dir=rtl]) .pfs-sm-2 {
    padding-left: 0.5rem !important;
  }
  *[dir=rtl] .pfs-sm-2 {
    padding-right: 0.5rem !important;
  }

  html:not([dir=rtl]) .pfe-sm-2 {
    padding-right: 0.5rem !important;
  }
  *[dir=rtl] .pfe-sm-2 {
    padding-left: 0.5rem !important;
  }

  .p-sm-3 {
    padding: 1rem !important;
  }

  .pt-sm-3,
.py-sm-3 {
    padding-top: 1rem !important;
  }

  .pr-sm-3,
.px-sm-3 {
    padding-right: 1rem !important;
  }

  .pb-sm-3,
.py-sm-3 {
    padding-bottom: 1rem !important;
  }

  .pl-sm-3,
.px-sm-3 {
    padding-left: 1rem !important;
  }

  html:not([dir=rtl]) .pfs-sm-3 {
    padding-left: 1rem !important;
  }
  *[dir=rtl] .pfs-sm-3 {
    padding-right: 1rem !important;
  }

  html:not([dir=rtl]) .pfe-sm-3 {
    padding-right: 1rem !important;
  }
  *[dir=rtl] .pfe-sm-3 {
    padding-left: 1rem !important;
  }

  .p-sm-4 {
    padding: 1.5rem !important;
  }

  .pt-sm-4,
.py-sm-4 {
    padding-top: 1.5rem !important;
  }

  .pr-sm-4,
.px-sm-4 {
    padding-right: 1.5rem !important;
  }

  .pb-sm-4,
.py-sm-4 {
    padding-bottom: 1.5rem !important;
  }

  .pl-sm-4,
.px-sm-4 {
    padding-left: 1.5rem !important;
  }

  html:not([dir=rtl]) .pfs-sm-4 {
    padding-left: 1.5rem !important;
  }
  *[dir=rtl] .pfs-sm-4 {
    padding-right: 1.5rem !important;
  }

  html:not([dir=rtl]) .pfe-sm-4 {
    padding-right: 1.5rem !important;
  }
  *[dir=rtl] .pfe-sm-4 {
    padding-left: 1.5rem !important;
  }

  .p-sm-5 {
    padding: 3rem !important;
  }

  .pt-sm-5,
.py-sm-5 {
    padding-top: 3rem !important;
  }

  .pr-sm-5,
.px-sm-5 {
    padding-right: 3rem !important;
  }

  .pb-sm-5,
.py-sm-5 {
    padding-bottom: 3rem !important;
  }

  .pl-sm-5,
.px-sm-5 {
    padding-left: 3rem !important;
  }

  html:not([dir=rtl]) .pfs-sm-5 {
    padding-left: 3rem !important;
  }
  *[dir=rtl] .pfs-sm-5 {
    padding-right: 3rem !important;
  }

  html:not([dir=rtl]) .pfe-sm-5 {
    padding-right: 3rem !important;
  }
  *[dir=rtl] .pfe-sm-5 {
    padding-left: 3rem !important;
  }

  .m-sm-n1 {
    margin: -0.25rem !important;
  }

  .mt-sm-n1,
.my-sm-n1 {
    margin-top: -0.25rem !important;
  }

  .mr-sm-n1,
.mx-sm-n1 {
    margin-right: -0.25rem !important;
  }

  .mb-sm-n1,
.my-sm-n1 {
    margin-bottom: -0.25rem !important;
  }

  .ml-sm-n1,
.mx-sm-n1 {
    margin-left: -0.25rem !important;
  }

  html:not([dir=rtl]) .mfs-sm-n1 {
    margin-left: -0.25rem !important;
  }
  *[dir=rtl] .mfs-sm-n1 {
    margin-right: -0.25rem !important;
  }

  html:not([dir=rtl]) .mfe-sm-n1 {
    margin-right: -0.25rem !important;
  }
  *[dir=rtl] .mfe-sm-n1 {
    margin-left: -0.25rem !important;
  }

  .m-sm-n2 {
    margin: -0.5rem !important;
  }

  .mt-sm-n2,
.my-sm-n2 {
    margin-top: -0.5rem !important;
  }

  .mr-sm-n2,
.mx-sm-n2 {
    margin-right: -0.5rem !important;
  }

  .mb-sm-n2,
.my-sm-n2 {
    margin-bottom: -0.5rem !important;
  }

  .ml-sm-n2,
.mx-sm-n2 {
    margin-left: -0.5rem !important;
  }

  html:not([dir=rtl]) .mfs-sm-n2 {
    margin-left: -0.5rem !important;
  }
  *[dir=rtl] .mfs-sm-n2 {
    margin-right: -0.5rem !important;
  }

  html:not([dir=rtl]) .mfe-sm-n2 {
    margin-right: -0.5rem !important;
  }
  *[dir=rtl] .mfe-sm-n2 {
    margin-left: -0.5rem !important;
  }

  .m-sm-n3 {
    margin: -1rem !important;
  }

  .mt-sm-n3,
.my-sm-n3 {
    margin-top: -1rem !important;
  }

  .mr-sm-n3,
.mx-sm-n3 {
    margin-right: -1rem !important;
  }

  .mb-sm-n3,
.my-sm-n3 {
    margin-bottom: -1rem !important;
  }

  .ml-sm-n3,
.mx-sm-n3 {
    margin-left: -1rem !important;
  }

  html:not([dir=rtl]) .mfs-sm-n3 {
    margin-left: -1rem !important;
  }
  *[dir=rtl] .mfs-sm-n3 {
    margin-right: -1rem !important;
  }

  html:not([dir=rtl]) .mfe-sm-n3 {
    margin-right: -1rem !important;
  }
  *[dir=rtl] .mfe-sm-n3 {
    margin-left: -1rem !important;
  }

  .m-sm-n4 {
    margin: -1.5rem !important;
  }

  .mt-sm-n4,
.my-sm-n4 {
    margin-top: -1.5rem !important;
  }

  .mr-sm-n4,
.mx-sm-n4 {
    margin-right: -1.5rem !important;
  }

  .mb-sm-n4,
.my-sm-n4 {
    margin-bottom: -1.5rem !important;
  }

  .ml-sm-n4,
.mx-sm-n4 {
    margin-left: -1.5rem !important;
  }

  html:not([dir=rtl]) .mfs-sm-n4 {
    margin-left: -1.5rem !important;
  }
  *[dir=rtl] .mfs-sm-n4 {
    margin-right: -1.5rem !important;
  }

  html:not([dir=rtl]) .mfe-sm-n4 {
    margin-right: -1.5rem !important;
  }
  *[dir=rtl] .mfe-sm-n4 {
    margin-left: -1.5rem !important;
  }

  .m-sm-n5 {
    margin: -3rem !important;
  }

  .mt-sm-n5,
.my-sm-n5 {
    margin-top: -3rem !important;
  }

  .mr-sm-n5,
.mx-sm-n5 {
    margin-right: -3rem !important;
  }

  .mb-sm-n5,
.my-sm-n5 {
    margin-bottom: -3rem !important;
  }

  .ml-sm-n5,
.mx-sm-n5 {
    margin-left: -3rem !important;
  }

  html:not([dir=rtl]) .mfs-sm-n5 {
    margin-left: -3rem !important;
  }
  *[dir=rtl] .mfs-sm-n5 {
    margin-right: -3rem !important;
  }

  html:not([dir=rtl]) .mfe-sm-n5 {
    margin-right: -3rem !important;
  }
  *[dir=rtl] .mfe-sm-n5 {
    margin-left: -3rem !important;
  }

  .m-sm-auto {
    margin: auto !important;
  }

  .mt-sm-auto,
.my-sm-auto {
    margin-top: auto !important;
  }

  .mr-sm-auto,
.mx-sm-auto {
    margin-right: auto !important;
  }

  .mb-sm-auto,
.my-sm-auto {
    margin-bottom: auto !important;
  }

  .ml-sm-auto,
.mx-sm-auto {
    margin-left: auto !important;
  }

  html:not([dir=rtl]) .mfs-sm-auto {
    margin-left: auto !important;
  }
  *[dir=rtl] .mfs-sm-auto {
    margin-right: auto !important;
  }

  html:not([dir=rtl]) .mfe-sm-auto {
    margin-right: auto !important;
  }
  *[dir=rtl] .mfe-sm-auto {
    margin-left: auto !important;
  }
}
@media (min-width: 768px) {
  .m-md-0 {
    margin: 0 !important;
  }

  .mt-md-0,
.my-md-0 {
    margin-top: 0 !important;
  }

  .mr-md-0,
.mx-md-0 {
    margin-right: 0 !important;
  }

  .mb-md-0,
.my-md-0 {
    margin-bottom: 0 !important;
  }

  .ml-md-0,
.mx-md-0 {
    margin-left: 0 !important;
  }

  html:not([dir=rtl]) .mfs-md-0 {
    margin-left: 0 !important;
  }
  *[dir=rtl] .mfs-md-0 {
    margin-right: 0 !important;
  }

  html:not([dir=rtl]) .mfe-md-0 {
    margin-right: 0 !important;
  }
  *[dir=rtl] .mfe-md-0 {
    margin-left: 0 !important;
  }

  .m-md-1 {
    margin: 0.25rem !important;
  }

  .mt-md-1,
.my-md-1 {
    margin-top: 0.25rem !important;
  }

  .mr-md-1,
.mx-md-1 {
    margin-right: 0.25rem !important;
  }

  .mb-md-1,
.my-md-1 {
    margin-bottom: 0.25rem !important;
  }

  .ml-md-1,
.mx-md-1 {
    margin-left: 0.25rem !important;
  }

  html:not([dir=rtl]) .mfs-md-1 {
    margin-left: 0.25rem !important;
  }
  *[dir=rtl] .mfs-md-1 {
    margin-right: 0.25rem !important;
  }

  html:not([dir=rtl]) .mfe-md-1 {
    margin-right: 0.25rem !important;
  }
  *[dir=rtl] .mfe-md-1 {
    margin-left: 0.25rem !important;
  }

  .m-md-2 {
    margin: 0.5rem !important;
  }

  .mt-md-2,
.my-md-2 {
    margin-top: 0.5rem !important;
  }

  .mr-md-2,
.mx-md-2 {
    margin-right: 0.5rem !important;
  }

  .mb-md-2,
.my-md-2 {
    margin-bottom: 0.5rem !important;
  }

  .ml-md-2,
.mx-md-2 {
    margin-left: 0.5rem !important;
  }

  html:not([dir=rtl]) .mfs-md-2 {
    margin-left: 0.5rem !important;
  }
  *[dir=rtl] .mfs-md-2 {
    margin-right: 0.5rem !important;
  }

  html:not([dir=rtl]) .mfe-md-2 {
    margin-right: 0.5rem !important;
  }
  *[dir=rtl] .mfe-md-2 {
    margin-left: 0.5rem !important;
  }

  .m-md-3 {
    margin: 1rem !important;
  }

  .mt-md-3,
.my-md-3 {
    margin-top: 1rem !important;
  }

  .mr-md-3,
.mx-md-3 {
    margin-right: 1rem !important;
  }

  .mb-md-3,
.my-md-3 {
    margin-bottom: 1rem !important;
  }

  .ml-md-3,
.mx-md-3 {
    margin-left: 1rem !important;
  }

  html:not([dir=rtl]) .mfs-md-3 {
    margin-left: 1rem !important;
  }
  *[dir=rtl] .mfs-md-3 {
    margin-right: 1rem !important;
  }

  html:not([dir=rtl]) .mfe-md-3 {
    margin-right: 1rem !important;
  }
  *[dir=rtl] .mfe-md-3 {
    margin-left: 1rem !important;
  }

  .m-md-4 {
    margin: 1.5rem !important;
  }

  .mt-md-4,
.my-md-4 {
    margin-top: 1.5rem !important;
  }

  .mr-md-4,
.mx-md-4 {
    margin-right: 1.5rem !important;
  }

  .mb-md-4,
.my-md-4 {
    margin-bottom: 1.5rem !important;
  }

  .ml-md-4,
.mx-md-4 {
    margin-left: 1.5rem !important;
  }

  html:not([dir=rtl]) .mfs-md-4 {
    margin-left: 1.5rem !important;
  }
  *[dir=rtl] .mfs-md-4 {
    margin-right: 1.5rem !important;
  }

  html:not([dir=rtl]) .mfe-md-4 {
    margin-right: 1.5rem !important;
  }
  *[dir=rtl] .mfe-md-4 {
    margin-left: 1.5rem !important;
  }

  .m-md-5 {
    margin: 3rem !important;
  }

  .mt-md-5,
.my-md-5 {
    margin-top: 3rem !important;
  }

  .mr-md-5,
.mx-md-5 {
    margin-right: 3rem !important;
  }

  .mb-md-5,
.my-md-5 {
    margin-bottom: 3rem !important;
  }

  .ml-md-5,
.mx-md-5 {
    margin-left: 3rem !important;
  }

  html:not([dir=rtl]) .mfs-md-5 {
    margin-left: 3rem !important;
  }
  *[dir=rtl] .mfs-md-5 {
    margin-right: 3rem !important;
  }

  html:not([dir=rtl]) .mfe-md-5 {
    margin-right: 3rem !important;
  }
  *[dir=rtl] .mfe-md-5 {
    margin-left: 3rem !important;
  }

  .p-md-0 {
    padding: 0 !important;
  }

  .pt-md-0,
.py-md-0 {
    padding-top: 0 !important;
  }

  .pr-md-0,
.px-md-0 {
    padding-right: 0 !important;
  }

  .pb-md-0,
.py-md-0 {
    padding-bottom: 0 !important;
  }

  .pl-md-0,
.px-md-0 {
    padding-left: 0 !important;
  }

  html:not([dir=rtl]) .pfs-md-0 {
    padding-left: 0 !important;
  }
  *[dir=rtl] .pfs-md-0 {
    padding-right: 0 !important;
  }

  html:not([dir=rtl]) .pfe-md-0 {
    padding-right: 0 !important;
  }
  *[dir=rtl] .pfe-md-0 {
    padding-left: 0 !important;
  }

  .p-md-1 {
    padding: 0.25rem !important;
  }

  .pt-md-1,
.py-md-1 {
    padding-top: 0.25rem !important;
  }

  .pr-md-1,
.px-md-1 {
    padding-right: 0.25rem !important;
  }

  .pb-md-1,
.py-md-1 {
    padding-bottom: 0.25rem !important;
  }

  .pl-md-1,
.px-md-1 {
    padding-left: 0.25rem !important;
  }

  html:not([dir=rtl]) .pfs-md-1 {
    padding-left: 0.25rem !important;
  }
  *[dir=rtl] .pfs-md-1 {
    padding-right: 0.25rem !important;
  }

  html:not([dir=rtl]) .pfe-md-1 {
    padding-right: 0.25rem !important;
  }
  *[dir=rtl] .pfe-md-1 {
    padding-left: 0.25rem !important;
  }

  .p-md-2 {
    padding: 0.5rem !important;
  }

  .pt-md-2,
.py-md-2 {
    padding-top: 0.5rem !important;
  }

  .pr-md-2,
.px-md-2 {
    padding-right: 0.5rem !important;
  }

  .pb-md-2,
.py-md-2 {
    padding-bottom: 0.5rem !important;
  }

  .pl-md-2,
.px-md-2 {
    padding-left: 0.5rem !important;
  }

  html:not([dir=rtl]) .pfs-md-2 {
    padding-left: 0.5rem !important;
  }
  *[dir=rtl] .pfs-md-2 {
    padding-right: 0.5rem !important;
  }

  html:not([dir=rtl]) .pfe-md-2 {
    padding-right: 0.5rem !important;
  }
  *[dir=rtl] .pfe-md-2 {
    padding-left: 0.5rem !important;
  }

  .p-md-3 {
    padding: 1rem !important;
  }

  .pt-md-3,
.py-md-3 {
    padding-top: 1rem !important;
  }

  .pr-md-3,
.px-md-3 {
    padding-right: 1rem !important;
  }

  .pb-md-3,
.py-md-3 {
    padding-bottom: 1rem !important;
  }

  .pl-md-3,
.px-md-3 {
    padding-left: 1rem !important;
  }

  html:not([dir=rtl]) .pfs-md-3 {
    padding-left: 1rem !important;
  }
  *[dir=rtl] .pfs-md-3 {
    padding-right: 1rem !important;
  }

  html:not([dir=rtl]) .pfe-md-3 {
    padding-right: 1rem !important;
  }
  *[dir=rtl] .pfe-md-3 {
    padding-left: 1rem !important;
  }

  .p-md-4 {
    padding: 1.5rem !important;
  }

  .pt-md-4,
.py-md-4 {
    padding-top: 1.5rem !important;
  }

  .pr-md-4,
.px-md-4 {
    padding-right: 1.5rem !important;
  }

  .pb-md-4,
.py-md-4 {
    padding-bottom: 1.5rem !important;
  }

  .pl-md-4,
.px-md-4 {
    padding-left: 1.5rem !important;
  }

  html:not([dir=rtl]) .pfs-md-4 {
    padding-left: 1.5rem !important;
  }
  *[dir=rtl] .pfs-md-4 {
    padding-right: 1.5rem !important;
  }

  html:not([dir=rtl]) .pfe-md-4 {
    padding-right: 1.5rem !important;
  }
  *[dir=rtl] .pfe-md-4 {
    padding-left: 1.5rem !important;
  }

  .p-md-5 {
    padding: 3rem !important;
  }

  .pt-md-5,
.py-md-5 {
    padding-top: 3rem !important;
  }

  .pr-md-5,
.px-md-5 {
    padding-right: 3rem !important;
  }

  .pb-md-5,
.py-md-5 {
    padding-bottom: 3rem !important;
  }

  .pl-md-5,
.px-md-5 {
    padding-left: 3rem !important;
  }

  html:not([dir=rtl]) .pfs-md-5 {
    padding-left: 3rem !important;
  }
  *[dir=rtl] .pfs-md-5 {
    padding-right: 3rem !important;
  }

  html:not([dir=rtl]) .pfe-md-5 {
    padding-right: 3rem !important;
  }
  *[dir=rtl] .pfe-md-5 {
    padding-left: 3rem !important;
  }

  .m-md-n1 {
    margin: -0.25rem !important;
  }

  .mt-md-n1,
.my-md-n1 {
    margin-top: -0.25rem !important;
  }

  .mr-md-n1,
.mx-md-n1 {
    margin-right: -0.25rem !important;
  }

  .mb-md-n1,
.my-md-n1 {
    margin-bottom: -0.25rem !important;
  }

  .ml-md-n1,
.mx-md-n1 {
    margin-left: -0.25rem !important;
  }

  html:not([dir=rtl]) .mfs-md-n1 {
    margin-left: -0.25rem !important;
  }
  *[dir=rtl] .mfs-md-n1 {
    margin-right: -0.25rem !important;
  }

  html:not([dir=rtl]) .mfe-md-n1 {
    margin-right: -0.25rem !important;
  }
  *[dir=rtl] .mfe-md-n1 {
    margin-left: -0.25rem !important;
  }

  .m-md-n2 {
    margin: -0.5rem !important;
  }

  .mt-md-n2,
.my-md-n2 {
    margin-top: -0.5rem !important;
  }

  .mr-md-n2,
.mx-md-n2 {
    margin-right: -0.5rem !important;
  }

  .mb-md-n2,
.my-md-n2 {
    margin-bottom: -0.5rem !important;
  }

  .ml-md-n2,
.mx-md-n2 {
    margin-left: -0.5rem !important;
  }

  html:not([dir=rtl]) .mfs-md-n2 {
    margin-left: -0.5rem !important;
  }
  *[dir=rtl] .mfs-md-n2 {
    margin-right: -0.5rem !important;
  }

  html:not([dir=rtl]) .mfe-md-n2 {
    margin-right: -0.5rem !important;
  }
  *[dir=rtl] .mfe-md-n2 {
    margin-left: -0.5rem !important;
  }

  .m-md-n3 {
    margin: -1rem !important;
  }

  .mt-md-n3,
.my-md-n3 {
    margin-top: -1rem !important;
  }

  .mr-md-n3,
.mx-md-n3 {
    margin-right: -1rem !important;
  }

  .mb-md-n3,
.my-md-n3 {
    margin-bottom: -1rem !important;
  }

  .ml-md-n3,
.mx-md-n3 {
    margin-left: -1rem !important;
  }

  html:not([dir=rtl]) .mfs-md-n3 {
    margin-left: -1rem !important;
  }
  *[dir=rtl] .mfs-md-n3 {
    margin-right: -1rem !important;
  }

  html:not([dir=rtl]) .mfe-md-n3 {
    margin-right: -1rem !important;
  }
  *[dir=rtl] .mfe-md-n3 {
    margin-left: -1rem !important;
  }

  .m-md-n4 {
    margin: -1.5rem !important;
  }

  .mt-md-n4,
.my-md-n4 {
    margin-top: -1.5rem !important;
  }

  .mr-md-n4,
.mx-md-n4 {
    margin-right: -1.5rem !important;
  }

  .mb-md-n4,
.my-md-n4 {
    margin-bottom: -1.5rem !important;
  }

  .ml-md-n4,
.mx-md-n4 {
    margin-left: -1.5rem !important;
  }

  html:not([dir=rtl]) .mfs-md-n4 {
    margin-left: -1.5rem !important;
  }
  *[dir=rtl] .mfs-md-n4 {
    margin-right: -1.5rem !important;
  }

  html:not([dir=rtl]) .mfe-md-n4 {
    margin-right: -1.5rem !important;
  }
  *[dir=rtl] .mfe-md-n4 {
    margin-left: -1.5rem !important;
  }

  .m-md-n5 {
    margin: -3rem !important;
  }

  .mt-md-n5,
.my-md-n5 {
    margin-top: -3rem !important;
  }

  .mr-md-n5,
.mx-md-n5 {
    margin-right: -3rem !important;
  }

  .mb-md-n5,
.my-md-n5 {
    margin-bottom: -3rem !important;
  }

  .ml-md-n5,
.mx-md-n5 {
    margin-left: -3rem !important;
  }

  html:not([dir=rtl]) .mfs-md-n5 {
    margin-left: -3rem !important;
  }
  *[dir=rtl] .mfs-md-n5 {
    margin-right: -3rem !important;
  }

  html:not([dir=rtl]) .mfe-md-n5 {
    margin-right: -3rem !important;
  }
  *[dir=rtl] .mfe-md-n5 {
    margin-left: -3rem !important;
  }

  .m-md-auto {
    margin: auto !important;
  }

  .mt-md-auto,
.my-md-auto {
    margin-top: auto !important;
  }

  .mr-md-auto,
.mx-md-auto {
    margin-right: auto !important;
  }

  .mb-md-auto,
.my-md-auto {
    margin-bottom: auto !important;
  }

  .ml-md-auto,
.mx-md-auto {
    margin-left: auto !important;
  }

  html:not([dir=rtl]) .mfs-md-auto {
    margin-left: auto !important;
  }
  *[dir=rtl] .mfs-md-auto {
    margin-right: auto !important;
  }

  html:not([dir=rtl]) .mfe-md-auto {
    margin-right: auto !important;
  }
  *[dir=rtl] .mfe-md-auto {
    margin-left: auto !important;
  }
}
@media (min-width: 992px) {
  .m-lg-0 {
    margin: 0 !important;
  }

  .mt-lg-0,
.my-lg-0 {
    margin-top: 0 !important;
  }

  .mr-lg-0,
.mx-lg-0 {
    margin-right: 0 !important;
  }

  .mb-lg-0,
.my-lg-0 {
    margin-bottom: 0 !important;
  }

  .ml-lg-0,
.mx-lg-0 {
    margin-left: 0 !important;
  }

  html:not([dir=rtl]) .mfs-lg-0 {
    margin-left: 0 !important;
  }
  *[dir=rtl] .mfs-lg-0 {
    margin-right: 0 !important;
  }

  html:not([dir=rtl]) .mfe-lg-0 {
    margin-right: 0 !important;
  }
  *[dir=rtl] .mfe-lg-0 {
    margin-left: 0 !important;
  }

  .m-lg-1 {
    margin: 0.25rem !important;
  }

  .mt-lg-1,
.my-lg-1 {
    margin-top: 0.25rem !important;
  }

  .mr-lg-1,
.mx-lg-1 {
    margin-right: 0.25rem !important;
  }

  .mb-lg-1,
.my-lg-1 {
    margin-bottom: 0.25rem !important;
  }

  .ml-lg-1,
.mx-lg-1 {
    margin-left: 0.25rem !important;
  }

  html:not([dir=rtl]) .mfs-lg-1 {
    margin-left: 0.25rem !important;
  }
  *[dir=rtl] .mfs-lg-1 {
    margin-right: 0.25rem !important;
  }

  html:not([dir=rtl]) .mfe-lg-1 {
    margin-right: 0.25rem !important;
  }
  *[dir=rtl] .mfe-lg-1 {
    margin-left: 0.25rem !important;
  }

  .m-lg-2 {
    margin: 0.5rem !important;
  }

  .mt-lg-2,
.my-lg-2 {
    margin-top: 0.5rem !important;
  }

  .mr-lg-2,
.mx-lg-2 {
    margin-right: 0.5rem !important;
  }

  .mb-lg-2,
.my-lg-2 {
    margin-bottom: 0.5rem !important;
  }

  .ml-lg-2,
.mx-lg-2 {
    margin-left: 0.5rem !important;
  }

  html:not([dir=rtl]) .mfs-lg-2 {
    margin-left: 0.5rem !important;
  }
  *[dir=rtl] .mfs-lg-2 {
    margin-right: 0.5rem !important;
  }

  html:not([dir=rtl]) .mfe-lg-2 {
    margin-right: 0.5rem !important;
  }
  *[dir=rtl] .mfe-lg-2 {
    margin-left: 0.5rem !important;
  }

  .m-lg-3 {
    margin: 1rem !important;
  }

  .mt-lg-3,
.my-lg-3 {
    margin-top: 1rem !important;
  }

  .mr-lg-3,
.mx-lg-3 {
    margin-right: 1rem !important;
  }

  .mb-lg-3,
.my-lg-3 {
    margin-bottom: 1rem !important;
  }

  .ml-lg-3,
.mx-lg-3 {
    margin-left: 1rem !important;
  }

  html:not([dir=rtl]) .mfs-lg-3 {
    margin-left: 1rem !important;
  }
  *[dir=rtl] .mfs-lg-3 {
    margin-right: 1rem !important;
  }

  html:not([dir=rtl]) .mfe-lg-3 {
    margin-right: 1rem !important;
  }
  *[dir=rtl] .mfe-lg-3 {
    margin-left: 1rem !important;
  }

  .m-lg-4 {
    margin: 1.5rem !important;
  }

  .mt-lg-4,
.my-lg-4 {
    margin-top: 1.5rem !important;
  }

  .mr-lg-4,
.mx-lg-4 {
    margin-right: 1.5rem !important;
  }

  .mb-lg-4,
.my-lg-4 {
    margin-bottom: 1.5rem !important;
  }

  .ml-lg-4,
.mx-lg-4 {
    margin-left: 1.5rem !important;
  }

  html:not([dir=rtl]) .mfs-lg-4 {
    margin-left: 1.5rem !important;
  }
  *[dir=rtl] .mfs-lg-4 {
    margin-right: 1.5rem !important;
  }

  html:not([dir=rtl]) .mfe-lg-4 {
    margin-right: 1.5rem !important;
  }
  *[dir=rtl] .mfe-lg-4 {
    margin-left: 1.5rem !important;
  }

  .m-lg-5 {
    margin: 3rem !important;
  }

  .mt-lg-5,
.my-lg-5 {
    margin-top: 3rem !important;
  }

  .mr-lg-5,
.mx-lg-5 {
    margin-right: 3rem !important;
  }

  .mb-lg-5,
.my-lg-5 {
    margin-bottom: 3rem !important;
  }

  .ml-lg-5,
.mx-lg-5 {
    margin-left: 3rem !important;
  }

  html:not([dir=rtl]) .mfs-lg-5 {
    margin-left: 3rem !important;
  }
  *[dir=rtl] .mfs-lg-5 {
    margin-right: 3rem !important;
  }

  html:not([dir=rtl]) .mfe-lg-5 {
    margin-right: 3rem !important;
  }
  *[dir=rtl] .mfe-lg-5 {
    margin-left: 3rem !important;
  }

  .p-lg-0 {
    padding: 0 !important;
  }

  .pt-lg-0,
.py-lg-0 {
    padding-top: 0 !important;
  }

  .pr-lg-0,
.px-lg-0 {
    padding-right: 0 !important;
  }

  .pb-lg-0,
.py-lg-0 {
    padding-bottom: 0 !important;
  }

  .pl-lg-0,
.px-lg-0 {
    padding-left: 0 !important;
  }

  html:not([dir=rtl]) .pfs-lg-0 {
    padding-left: 0 !important;
  }
  *[dir=rtl] .pfs-lg-0 {
    padding-right: 0 !important;
  }

  html:not([dir=rtl]) .pfe-lg-0 {
    padding-right: 0 !important;
  }
  *[dir=rtl] .pfe-lg-0 {
    padding-left: 0 !important;
  }

  .p-lg-1 {
    padding: 0.25rem !important;
  }

  .pt-lg-1,
.py-lg-1 {
    padding-top: 0.25rem !important;
  }

  .pr-lg-1,
.px-lg-1 {
    padding-right: 0.25rem !important;
  }

  .pb-lg-1,
.py-lg-1 {
    padding-bottom: 0.25rem !important;
  }

  .pl-lg-1,
.px-lg-1 {
    padding-left: 0.25rem !important;
  }

  html:not([dir=rtl]) .pfs-lg-1 {
    padding-left: 0.25rem !important;
  }
  *[dir=rtl] .pfs-lg-1 {
    padding-right: 0.25rem !important;
  }

  html:not([dir=rtl]) .pfe-lg-1 {
    padding-right: 0.25rem !important;
  }
  *[dir=rtl] .pfe-lg-1 {
    padding-left: 0.25rem !important;
  }

  .p-lg-2 {
    padding: 0.5rem !important;
  }

  .pt-lg-2,
.py-lg-2 {
    padding-top: 0.5rem !important;
  }

  .pr-lg-2,
.px-lg-2 {
    padding-right: 0.5rem !important;
  }

  .pb-lg-2,
.py-lg-2 {
    padding-bottom: 0.5rem !important;
  }

  .pl-lg-2,
.px-lg-2 {
    padding-left: 0.5rem !important;
  }

  html:not([dir=rtl]) .pfs-lg-2 {
    padding-left: 0.5rem !important;
  }
  *[dir=rtl] .pfs-lg-2 {
    padding-right: 0.5rem !important;
  }

  html:not([dir=rtl]) .pfe-lg-2 {
    padding-right: 0.5rem !important;
  }
  *[dir=rtl] .pfe-lg-2 {
    padding-left: 0.5rem !important;
  }

  .p-lg-3 {
    padding: 1rem !important;
  }

  .pt-lg-3,
.py-lg-3 {
    padding-top: 1rem !important;
  }

  .pr-lg-3,
.px-lg-3 {
    padding-right: 1rem !important;
  }

  .pb-lg-3,
.py-lg-3 {
    padding-bottom: 1rem !important;
  }

  .pl-lg-3,
.px-lg-3 {
    padding-left: 1rem !important;
  }

  html:not([dir=rtl]) .pfs-lg-3 {
    padding-left: 1rem !important;
  }
  *[dir=rtl] .pfs-lg-3 {
    padding-right: 1rem !important;
  }

  html:not([dir=rtl]) .pfe-lg-3 {
    padding-right: 1rem !important;
  }
  *[dir=rtl] .pfe-lg-3 {
    padding-left: 1rem !important;
  }

  .p-lg-4 {
    padding: 1.5rem !important;
  }

  .pt-lg-4,
.py-lg-4 {
    padding-top: 1.5rem !important;
  }

  .pr-lg-4,
.px-lg-4 {
    padding-right: 1.5rem !important;
  }

  .pb-lg-4,
.py-lg-4 {
    padding-bottom: 1.5rem !important;
  }

  .pl-lg-4,
.px-lg-4 {
    padding-left: 1.5rem !important;
  }

  html:not([dir=rtl]) .pfs-lg-4 {
    padding-left: 1.5rem !important;
  }
  *[dir=rtl] .pfs-lg-4 {
    padding-right: 1.5rem !important;
  }

  html:not([dir=rtl]) .pfe-lg-4 {
    padding-right: 1.5rem !important;
  }
  *[dir=rtl] .pfe-lg-4 {
    padding-left: 1.5rem !important;
  }

  .p-lg-5 {
    padding: 3rem !important;
  }

  .pt-lg-5,
.py-lg-5 {
    padding-top: 3rem !important;
  }

  .pr-lg-5,
.px-lg-5 {
    padding-right: 3rem !important;
  }

  .pb-lg-5,
.py-lg-5 {
    padding-bottom: 3rem !important;
  }

  .pl-lg-5,
.px-lg-5 {
    padding-left: 3rem !important;
  }

  html:not([dir=rtl]) .pfs-lg-5 {
    padding-left: 3rem !important;
  }
  *[dir=rtl] .pfs-lg-5 {
    padding-right: 3rem !important;
  }

  html:not([dir=rtl]) .pfe-lg-5 {
    padding-right: 3rem !important;
  }
  *[dir=rtl] .pfe-lg-5 {
    padding-left: 3rem !important;
  }

  .m-lg-n1 {
    margin: -0.25rem !important;
  }

  .mt-lg-n1,
.my-lg-n1 {
    margin-top: -0.25rem !important;
  }

  .mr-lg-n1,
.mx-lg-n1 {
    margin-right: -0.25rem !important;
  }

  .mb-lg-n1,
.my-lg-n1 {
    margin-bottom: -0.25rem !important;
  }

  .ml-lg-n1,
.mx-lg-n1 {
    margin-left: -0.25rem !important;
  }

  html:not([dir=rtl]) .mfs-lg-n1 {
    margin-left: -0.25rem !important;
  }
  *[dir=rtl] .mfs-lg-n1 {
    margin-right: -0.25rem !important;
  }

  html:not([dir=rtl]) .mfe-lg-n1 {
    margin-right: -0.25rem !important;
  }
  *[dir=rtl] .mfe-lg-n1 {
    margin-left: -0.25rem !important;
  }

  .m-lg-n2 {
    margin: -0.5rem !important;
  }

  .mt-lg-n2,
.my-lg-n2 {
    margin-top: -0.5rem !important;
  }

  .mr-lg-n2,
.mx-lg-n2 {
    margin-right: -0.5rem !important;
  }

  .mb-lg-n2,
.my-lg-n2 {
    margin-bottom: -0.5rem !important;
  }

  .ml-lg-n2,
.mx-lg-n2 {
    margin-left: -0.5rem !important;
  }

  html:not([dir=rtl]) .mfs-lg-n2 {
    margin-left: -0.5rem !important;
  }
  *[dir=rtl] .mfs-lg-n2 {
    margin-right: -0.5rem !important;
  }

  html:not([dir=rtl]) .mfe-lg-n2 {
    margin-right: -0.5rem !important;
  }
  *[dir=rtl] .mfe-lg-n2 {
    margin-left: -0.5rem !important;
  }

  .m-lg-n3 {
    margin: -1rem !important;
  }

  .mt-lg-n3,
.my-lg-n3 {
    margin-top: -1rem !important;
  }

  .mr-lg-n3,
.mx-lg-n3 {
    margin-right: -1rem !important;
  }

  .mb-lg-n3,
.my-lg-n3 {
    margin-bottom: -1rem !important;
  }

  .ml-lg-n3,
.mx-lg-n3 {
    margin-left: -1rem !important;
  }

  html:not([dir=rtl]) .mfs-lg-n3 {
    margin-left: -1rem !important;
  }
  *[dir=rtl] .mfs-lg-n3 {
    margin-right: -1rem !important;
  }

  html:not([dir=rtl]) .mfe-lg-n3 {
    margin-right: -1rem !important;
  }
  *[dir=rtl] .mfe-lg-n3 {
    margin-left: -1rem !important;
  }

  .m-lg-n4 {
    margin: -1.5rem !important;
  }

  .mt-lg-n4,
.my-lg-n4 {
    margin-top: -1.5rem !important;
  }

  .mr-lg-n4,
.mx-lg-n4 {
    margin-right: -1.5rem !important;
  }

  .mb-lg-n4,
.my-lg-n4 {
    margin-bottom: -1.5rem !important;
  }

  .ml-lg-n4,
.mx-lg-n4 {
    margin-left: -1.5rem !important;
  }

  html:not([dir=rtl]) .mfs-lg-n4 {
    margin-left: -1.5rem !important;
  }
  *[dir=rtl] .mfs-lg-n4 {
    margin-right: -1.5rem !important;
  }

  html:not([dir=rtl]) .mfe-lg-n4 {
    margin-right: -1.5rem !important;
  }
  *[dir=rtl] .mfe-lg-n4 {
    margin-left: -1.5rem !important;
  }

  .m-lg-n5 {
    margin: -3rem !important;
  }

  .mt-lg-n5,
.my-lg-n5 {
    margin-top: -3rem !important;
  }

  .mr-lg-n5,
.mx-lg-n5 {
    margin-right: -3rem !important;
  }

  .mb-lg-n5,
.my-lg-n5 {
    margin-bottom: -3rem !important;
  }

  .ml-lg-n5,
.mx-lg-n5 {
    margin-left: -3rem !important;
  }

  html:not([dir=rtl]) .mfs-lg-n5 {
    margin-left: -3rem !important;
  }
  *[dir=rtl] .mfs-lg-n5 {
    margin-right: -3rem !important;
  }

  html:not([dir=rtl]) .mfe-lg-n5 {
    margin-right: -3rem !important;
  }
  *[dir=rtl] .mfe-lg-n5 {
    margin-left: -3rem !important;
  }

  .m-lg-auto {
    margin: auto !important;
  }

  .mt-lg-auto,
.my-lg-auto {
    margin-top: auto !important;
  }

  .mr-lg-auto,
.mx-lg-auto {
    margin-right: auto !important;
  }

  .mb-lg-auto,
.my-lg-auto {
    margin-bottom: auto !important;
  }

  .ml-lg-auto,
.mx-lg-auto {
    margin-left: auto !important;
  }

  html:not([dir=rtl]) .mfs-lg-auto {
    margin-left: auto !important;
  }
  *[dir=rtl] .mfs-lg-auto {
    margin-right: auto !important;
  }

  html:not([dir=rtl]) .mfe-lg-auto {
    margin-right: auto !important;
  }
  *[dir=rtl] .mfe-lg-auto {
    margin-left: auto !important;
  }
}
@media (min-width: 1200px) {
  .m-xl-0 {
    margin: 0 !important;
  }

  .mt-xl-0,
.my-xl-0 {
    margin-top: 0 !important;
  }

  .mr-xl-0,
.mx-xl-0 {
    margin-right: 0 !important;
  }

  .mb-xl-0,
.my-xl-0 {
    margin-bottom: 0 !important;
  }

  .ml-xl-0,
.mx-xl-0 {
    margin-left: 0 !important;
  }

  html:not([dir=rtl]) .mfs-xl-0 {
    margin-left: 0 !important;
  }
  *[dir=rtl] .mfs-xl-0 {
    margin-right: 0 !important;
  }

  html:not([dir=rtl]) .mfe-xl-0 {
    margin-right: 0 !important;
  }
  *[dir=rtl] .mfe-xl-0 {
    margin-left: 0 !important;
  }

  .m-xl-1 {
    margin: 0.25rem !important;
  }

  .mt-xl-1,
.my-xl-1 {
    margin-top: 0.25rem !important;
  }

  .mr-xl-1,
.mx-xl-1 {
    margin-right: 0.25rem !important;
  }

  .mb-xl-1,
.my-xl-1 {
    margin-bottom: 0.25rem !important;
  }

  .ml-xl-1,
.mx-xl-1 {
    margin-left: 0.25rem !important;
  }

  html:not([dir=rtl]) .mfs-xl-1 {
    margin-left: 0.25rem !important;
  }
  *[dir=rtl] .mfs-xl-1 {
    margin-right: 0.25rem !important;
  }

  html:not([dir=rtl]) .mfe-xl-1 {
    margin-right: 0.25rem !important;
  }
  *[dir=rtl] .mfe-xl-1 {
    margin-left: 0.25rem !important;
  }

  .m-xl-2 {
    margin: 0.5rem !important;
  }

  .mt-xl-2,
.my-xl-2 {
    margin-top: 0.5rem !important;
  }

  .mr-xl-2,
.mx-xl-2 {
    margin-right: 0.5rem !important;
  }

  .mb-xl-2,
.my-xl-2 {
    margin-bottom: 0.5rem !important;
  }

  .ml-xl-2,
.mx-xl-2 {
    margin-left: 0.5rem !important;
  }

  html:not([dir=rtl]) .mfs-xl-2 {
    margin-left: 0.5rem !important;
  }
  *[dir=rtl] .mfs-xl-2 {
    margin-right: 0.5rem !important;
  }

  html:not([dir=rtl]) .mfe-xl-2 {
    margin-right: 0.5rem !important;
  }
  *[dir=rtl] .mfe-xl-2 {
    margin-left: 0.5rem !important;
  }

  .m-xl-3 {
    margin: 1rem !important;
  }

  .mt-xl-3,
.my-xl-3 {
    margin-top: 1rem !important;
  }

  .mr-xl-3,
.mx-xl-3 {
    margin-right: 1rem !important;
  }

  .mb-xl-3,
.my-xl-3 {
    margin-bottom: 1rem !important;
  }

  .ml-xl-3,
.mx-xl-3 {
    margin-left: 1rem !important;
  }

  html:not([dir=rtl]) .mfs-xl-3 {
    margin-left: 1rem !important;
  }
  *[dir=rtl] .mfs-xl-3 {
    margin-right: 1rem !important;
  }

  html:not([dir=rtl]) .mfe-xl-3 {
    margin-right: 1rem !important;
  }
  *[dir=rtl] .mfe-xl-3 {
    margin-left: 1rem !important;
  }

  .m-xl-4 {
    margin: 1.5rem !important;
  }

  .mt-xl-4,
.my-xl-4 {
    margin-top: 1.5rem !important;
  }

  .mr-xl-4,
.mx-xl-4 {
    margin-right: 1.5rem !important;
  }

  .mb-xl-4,
.my-xl-4 {
    margin-bottom: 1.5rem !important;
  }

  .ml-xl-4,
.mx-xl-4 {
    margin-left: 1.5rem !important;
  }

  html:not([dir=rtl]) .mfs-xl-4 {
    margin-left: 1.5rem !important;
  }
  *[dir=rtl] .mfs-xl-4 {
    margin-right: 1.5rem !important;
  }

  html:not([dir=rtl]) .mfe-xl-4 {
    margin-right: 1.5rem !important;
  }
  *[dir=rtl] .mfe-xl-4 {
    margin-left: 1.5rem !important;
  }

  .m-xl-5 {
    margin: 3rem !important;
  }

  .mt-xl-5,
.my-xl-5 {
    margin-top: 3rem !important;
  }

  .mr-xl-5,
.mx-xl-5 {
    margin-right: 3rem !important;
  }

  .mb-xl-5,
.my-xl-5 {
    margin-bottom: 3rem !important;
  }

  .ml-xl-5,
.mx-xl-5 {
    margin-left: 3rem !important;
  }

  html:not([dir=rtl]) .mfs-xl-5 {
    margin-left: 3rem !important;
  }
  *[dir=rtl] .mfs-xl-5 {
    margin-right: 3rem !important;
  }

  html:not([dir=rtl]) .mfe-xl-5 {
    margin-right: 3rem !important;
  }
  *[dir=rtl] .mfe-xl-5 {
    margin-left: 3rem !important;
  }

  .p-xl-0 {
    padding: 0 !important;
  }

  .pt-xl-0,
.py-xl-0 {
    padding-top: 0 !important;
  }

  .pr-xl-0,
.px-xl-0 {
    padding-right: 0 !important;
  }

  .pb-xl-0,
.py-xl-0 {
    padding-bottom: 0 !important;
  }

  .pl-xl-0,
.px-xl-0 {
    padding-left: 0 !important;
  }

  html:not([dir=rtl]) .pfs-xl-0 {
    padding-left: 0 !important;
  }
  *[dir=rtl] .pfs-xl-0 {
    padding-right: 0 !important;
  }

  html:not([dir=rtl]) .pfe-xl-0 {
    padding-right: 0 !important;
  }
  *[dir=rtl] .pfe-xl-0 {
    padding-left: 0 !important;
  }

  .p-xl-1 {
    padding: 0.25rem !important;
  }

  .pt-xl-1,
.py-xl-1 {
    padding-top: 0.25rem !important;
  }

  .pr-xl-1,
.px-xl-1 {
    padding-right: 0.25rem !important;
  }

  .pb-xl-1,
.py-xl-1 {
    padding-bottom: 0.25rem !important;
  }

  .pl-xl-1,
.px-xl-1 {
    padding-left: 0.25rem !important;
  }

  html:not([dir=rtl]) .pfs-xl-1 {
    padding-left: 0.25rem !important;
  }
  *[dir=rtl] .pfs-xl-1 {
    padding-right: 0.25rem !important;
  }

  html:not([dir=rtl]) .pfe-xl-1 {
    padding-right: 0.25rem !important;
  }
  *[dir=rtl] .pfe-xl-1 {
    padding-left: 0.25rem !important;
  }

  .p-xl-2 {
    padding: 0.5rem !important;
  }

  .pt-xl-2,
.py-xl-2 {
    padding-top: 0.5rem !important;
  }

  .pr-xl-2,
.px-xl-2 {
    padding-right: 0.5rem !important;
  }

  .pb-xl-2,
.py-xl-2 {
    padding-bottom: 0.5rem !important;
  }

  .pl-xl-2,
.px-xl-2 {
    padding-left: 0.5rem !important;
  }

  html:not([dir=rtl]) .pfs-xl-2 {
    padding-left: 0.5rem !important;
  }
  *[dir=rtl] .pfs-xl-2 {
    padding-right: 0.5rem !important;
  }

  html:not([dir=rtl]) .pfe-xl-2 {
    padding-right: 0.5rem !important;
  }
  *[dir=rtl] .pfe-xl-2 {
    padding-left: 0.5rem !important;
  }

  .p-xl-3 {
    padding: 1rem !important;
  }

  .pt-xl-3,
.py-xl-3 {
    padding-top: 1rem !important;
  }

  .pr-xl-3,
.px-xl-3 {
    padding-right: 1rem !important;
  }

  .pb-xl-3,
.py-xl-3 {
    padding-bottom: 1rem !important;
  }

  .pl-xl-3,
.px-xl-3 {
    padding-left: 1rem !important;
  }

  html:not([dir=rtl]) .pfs-xl-3 {
    padding-left: 1rem !important;
  }
  *[dir=rtl] .pfs-xl-3 {
    padding-right: 1rem !important;
  }

  html:not([dir=rtl]) .pfe-xl-3 {
    padding-right: 1rem !important;
  }
  *[dir=rtl] .pfe-xl-3 {
    padding-left: 1rem !important;
  }

  .p-xl-4 {
    padding: 1.5rem !important;
  }

  .pt-xl-4,
.py-xl-4 {
    padding-top: 1.5rem !important;
  }

  .pr-xl-4,
.px-xl-4 {
    padding-right: 1.5rem !important;
  }

  .pb-xl-4,
.py-xl-4 {
    padding-bottom: 1.5rem !important;
  }

  .pl-xl-4,
.px-xl-4 {
    padding-left: 1.5rem !important;
  }

  html:not([dir=rtl]) .pfs-xl-4 {
    padding-left: 1.5rem !important;
  }
  *[dir=rtl] .pfs-xl-4 {
    padding-right: 1.5rem !important;
  }

  html:not([dir=rtl]) .pfe-xl-4 {
    padding-right: 1.5rem !important;
  }
  *[dir=rtl] .pfe-xl-4 {
    padding-left: 1.5rem !important;
  }

  .p-xl-5 {
    padding: 3rem !important;
  }

  .pt-xl-5,
.py-xl-5 {
    padding-top: 3rem !important;
  }

  .pr-xl-5,
.px-xl-5 {
    padding-right: 3rem !important;
  }

  .pb-xl-5,
.py-xl-5 {
    padding-bottom: 3rem !important;
  }

  .pl-xl-5,
.px-xl-5 {
    padding-left: 3rem !important;
  }

  html:not([dir=rtl]) .pfs-xl-5 {
    padding-left: 3rem !important;
  }
  *[dir=rtl] .pfs-xl-5 {
    padding-right: 3rem !important;
  }

  html:not([dir=rtl]) .pfe-xl-5 {
    padding-right: 3rem !important;
  }
  *[dir=rtl] .pfe-xl-5 {
    padding-left: 3rem !important;
  }

  .m-xl-n1 {
    margin: -0.25rem !important;
  }

  .mt-xl-n1,
.my-xl-n1 {
    margin-top: -0.25rem !important;
  }

  .mr-xl-n1,
.mx-xl-n1 {
    margin-right: -0.25rem !important;
  }

  .mb-xl-n1,
.my-xl-n1 {
    margin-bottom: -0.25rem !important;
  }

  .ml-xl-n1,
.mx-xl-n1 {
    margin-left: -0.25rem !important;
  }

  html:not([dir=rtl]) .mfs-xl-n1 {
    margin-left: -0.25rem !important;
  }
  *[dir=rtl] .mfs-xl-n1 {
    margin-right: -0.25rem !important;
  }

  html:not([dir=rtl]) .mfe-xl-n1 {
    margin-right: -0.25rem !important;
  }
  *[dir=rtl] .mfe-xl-n1 {
    margin-left: -0.25rem !important;
  }

  .m-xl-n2 {
    margin: -0.5rem !important;
  }

  .mt-xl-n2,
.my-xl-n2 {
    margin-top: -0.5rem !important;
  }

  .mr-xl-n2,
.mx-xl-n2 {
    margin-right: -0.5rem !important;
  }

  .mb-xl-n2,
.my-xl-n2 {
    margin-bottom: -0.5rem !important;
  }

  .ml-xl-n2,
.mx-xl-n2 {
    margin-left: -0.5rem !important;
  }

  html:not([dir=rtl]) .mfs-xl-n2 {
    margin-left: -0.5rem !important;
  }
  *[dir=rtl] .mfs-xl-n2 {
    margin-right: -0.5rem !important;
  }

  html:not([dir=rtl]) .mfe-xl-n2 {
    margin-right: -0.5rem !important;
  }
  *[dir=rtl] .mfe-xl-n2 {
    margin-left: -0.5rem !important;
  }

  .m-xl-n3 {
    margin: -1rem !important;
  }

  .mt-xl-n3,
.my-xl-n3 {
    margin-top: -1rem !important;
  }

  .mr-xl-n3,
.mx-xl-n3 {
    margin-right: -1rem !important;
  }

  .mb-xl-n3,
.my-xl-n3 {
    margin-bottom: -1rem !important;
  }

  .ml-xl-n3,
.mx-xl-n3 {
    margin-left: -1rem !important;
  }

  html:not([dir=rtl]) .mfs-xl-n3 {
    margin-left: -1rem !important;
  }
  *[dir=rtl] .mfs-xl-n3 {
    margin-right: -1rem !important;
  }

  html:not([dir=rtl]) .mfe-xl-n3 {
    margin-right: -1rem !important;
  }
  *[dir=rtl] .mfe-xl-n3 {
    margin-left: -1rem !important;
  }

  .m-xl-n4 {
    margin: -1.5rem !important;
  }

  .mt-xl-n4,
.my-xl-n4 {
    margin-top: -1.5rem !important;
  }

  .mr-xl-n4,
.mx-xl-n4 {
    margin-right: -1.5rem !important;
  }

  .mb-xl-n4,
.my-xl-n4 {
    margin-bottom: -1.5rem !important;
  }

  .ml-xl-n4,
.mx-xl-n4 {
    margin-left: -1.5rem !important;
  }

  html:not([dir=rtl]) .mfs-xl-n4 {
    margin-left: -1.5rem !important;
  }
  *[dir=rtl] .mfs-xl-n4 {
    margin-right: -1.5rem !important;
  }

  html:not([dir=rtl]) .mfe-xl-n4 {
    margin-right: -1.5rem !important;
  }
  *[dir=rtl] .mfe-xl-n4 {
    margin-left: -1.5rem !important;
  }

  .m-xl-n5 {
    margin: -3rem !important;
  }

  .mt-xl-n5,
.my-xl-n5 {
    margin-top: -3rem !important;
  }

  .mr-xl-n5,
.mx-xl-n5 {
    margin-right: -3rem !important;
  }

  .mb-xl-n5,
.my-xl-n5 {
    margin-bottom: -3rem !important;
  }

  .ml-xl-n5,
.mx-xl-n5 {
    margin-left: -3rem !important;
  }

  html:not([dir=rtl]) .mfs-xl-n5 {
    margin-left: -3rem !important;
  }
  *[dir=rtl] .mfs-xl-n5 {
    margin-right: -3rem !important;
  }

  html:not([dir=rtl]) .mfe-xl-n5 {
    margin-right: -3rem !important;
  }
  *[dir=rtl] .mfe-xl-n5 {
    margin-left: -3rem !important;
  }

  .m-xl-auto {
    margin: auto !important;
  }

  .mt-xl-auto,
.my-xl-auto {
    margin-top: auto !important;
  }

  .mr-xl-auto,
.mx-xl-auto {
    margin-right: auto !important;
  }

  .mb-xl-auto,
.my-xl-auto {
    margin-bottom: auto !important;
  }

  .ml-xl-auto,
.mx-xl-auto {
    margin-left: auto !important;
  }

  html:not([dir=rtl]) .mfs-xl-auto {
    margin-left: auto !important;
  }
  *[dir=rtl] .mfs-xl-auto {
    margin-right: auto !important;
  }

  html:not([dir=rtl]) .mfe-xl-auto {
    margin-right: auto !important;
  }
  *[dir=rtl] .mfe-xl-auto {
    margin-left: auto !important;
  }
}
@media (min-width: 1400px) {
  .m-xxl-0 {
    margin: 0 !important;
  }

  .mt-xxl-0,
.my-xxl-0 {
    margin-top: 0 !important;
  }

  .mr-xxl-0,
.mx-xxl-0 {
    margin-right: 0 !important;
  }

  .mb-xxl-0,
.my-xxl-0 {
    margin-bottom: 0 !important;
  }

  .ml-xxl-0,
.mx-xxl-0 {
    margin-left: 0 !important;
  }

  html:not([dir=rtl]) .mfs-xxl-0 {
    margin-left: 0 !important;
  }
  *[dir=rtl] .mfs-xxl-0 {
    margin-right: 0 !important;
  }

  html:not([dir=rtl]) .mfe-xxl-0 {
    margin-right: 0 !important;
  }
  *[dir=rtl] .mfe-xxl-0 {
    margin-left: 0 !important;
  }

  .m-xxl-1 {
    margin: 0.25rem !important;
  }

  .mt-xxl-1,
.my-xxl-1 {
    margin-top: 0.25rem !important;
  }

  .mr-xxl-1,
.mx-xxl-1 {
    margin-right: 0.25rem !important;
  }

  .mb-xxl-1,
.my-xxl-1 {
    margin-bottom: 0.25rem !important;
  }

  .ml-xxl-1,
.mx-xxl-1 {
    margin-left: 0.25rem !important;
  }

  html:not([dir=rtl]) .mfs-xxl-1 {
    margin-left: 0.25rem !important;
  }
  *[dir=rtl] .mfs-xxl-1 {
    margin-right: 0.25rem !important;
  }

  html:not([dir=rtl]) .mfe-xxl-1 {
    margin-right: 0.25rem !important;
  }
  *[dir=rtl] .mfe-xxl-1 {
    margin-left: 0.25rem !important;
  }

  .m-xxl-2 {
    margin: 0.5rem !important;
  }

  .mt-xxl-2,
.my-xxl-2 {
    margin-top: 0.5rem !important;
  }

  .mr-xxl-2,
.mx-xxl-2 {
    margin-right: 0.5rem !important;
  }

  .mb-xxl-2,
.my-xxl-2 {
    margin-bottom: 0.5rem !important;
  }

  .ml-xxl-2,
.mx-xxl-2 {
    margin-left: 0.5rem !important;
  }

  html:not([dir=rtl]) .mfs-xxl-2 {
    margin-left: 0.5rem !important;
  }
  *[dir=rtl] .mfs-xxl-2 {
    margin-right: 0.5rem !important;
  }

  html:not([dir=rtl]) .mfe-xxl-2 {
    margin-right: 0.5rem !important;
  }
  *[dir=rtl] .mfe-xxl-2 {
    margin-left: 0.5rem !important;
  }

  .m-xxl-3 {
    margin: 1rem !important;
  }

  .mt-xxl-3,
.my-xxl-3 {
    margin-top: 1rem !important;
  }

  .mr-xxl-3,
.mx-xxl-3 {
    margin-right: 1rem !important;
  }

  .mb-xxl-3,
.my-xxl-3 {
    margin-bottom: 1rem !important;
  }

  .ml-xxl-3,
.mx-xxl-3 {
    margin-left: 1rem !important;
  }

  html:not([dir=rtl]) .mfs-xxl-3 {
    margin-left: 1rem !important;
  }
  *[dir=rtl] .mfs-xxl-3 {
    margin-right: 1rem !important;
  }

  html:not([dir=rtl]) .mfe-xxl-3 {
    margin-right: 1rem !important;
  }
  *[dir=rtl] .mfe-xxl-3 {
    margin-left: 1rem !important;
  }

  .m-xxl-4 {
    margin: 1.5rem !important;
  }

  .mt-xxl-4,
.my-xxl-4 {
    margin-top: 1.5rem !important;
  }

  .mr-xxl-4,
.mx-xxl-4 {
    margin-right: 1.5rem !important;
  }

  .mb-xxl-4,
.my-xxl-4 {
    margin-bottom: 1.5rem !important;
  }

  .ml-xxl-4,
.mx-xxl-4 {
    margin-left: 1.5rem !important;
  }

  html:not([dir=rtl]) .mfs-xxl-4 {
    margin-left: 1.5rem !important;
  }
  *[dir=rtl] .mfs-xxl-4 {
    margin-right: 1.5rem !important;
  }

  html:not([dir=rtl]) .mfe-xxl-4 {
    margin-right: 1.5rem !important;
  }
  *[dir=rtl] .mfe-xxl-4 {
    margin-left: 1.5rem !important;
  }

  .m-xxl-5 {
    margin: 3rem !important;
  }

  .mt-xxl-5,
.my-xxl-5 {
    margin-top: 3rem !important;
  }

  .mr-xxl-5,
.mx-xxl-5 {
    margin-right: 3rem !important;
  }

  .mb-xxl-5,
.my-xxl-5 {
    margin-bottom: 3rem !important;
  }

  .ml-xxl-5,
.mx-xxl-5 {
    margin-left: 3rem !important;
  }

  html:not([dir=rtl]) .mfs-xxl-5 {
    margin-left: 3rem !important;
  }
  *[dir=rtl] .mfs-xxl-5 {
    margin-right: 3rem !important;
  }

  html:not([dir=rtl]) .mfe-xxl-5 {
    margin-right: 3rem !important;
  }
  *[dir=rtl] .mfe-xxl-5 {
    margin-left: 3rem !important;
  }

  .p-xxl-0 {
    padding: 0 !important;
  }

  .pt-xxl-0,
.py-xxl-0 {
    padding-top: 0 !important;
  }

  .pr-xxl-0,
.px-xxl-0 {
    padding-right: 0 !important;
  }

  .pb-xxl-0,
.py-xxl-0 {
    padding-bottom: 0 !important;
  }

  .pl-xxl-0,
.px-xxl-0 {
    padding-left: 0 !important;
  }

  html:not([dir=rtl]) .pfs-xxl-0 {
    padding-left: 0 !important;
  }
  *[dir=rtl] .pfs-xxl-0 {
    padding-right: 0 !important;
  }

  html:not([dir=rtl]) .pfe-xxl-0 {
    padding-right: 0 !important;
  }
  *[dir=rtl] .pfe-xxl-0 {
    padding-left: 0 !important;
  }

  .p-xxl-1 {
    padding: 0.25rem !important;
  }

  .pt-xxl-1,
.py-xxl-1 {
    padding-top: 0.25rem !important;
  }

  .pr-xxl-1,
.px-xxl-1 {
    padding-right: 0.25rem !important;
  }

  .pb-xxl-1,
.py-xxl-1 {
    padding-bottom: 0.25rem !important;
  }

  .pl-xxl-1,
.px-xxl-1 {
    padding-left: 0.25rem !important;
  }

  html:not([dir=rtl]) .pfs-xxl-1 {
    padding-left: 0.25rem !important;
  }
  *[dir=rtl] .pfs-xxl-1 {
    padding-right: 0.25rem !important;
  }

  html:not([dir=rtl]) .pfe-xxl-1 {
    padding-right: 0.25rem !important;
  }
  *[dir=rtl] .pfe-xxl-1 {
    padding-left: 0.25rem !important;
  }

  .p-xxl-2 {
    padding: 0.5rem !important;
  }

  .pt-xxl-2,
.py-xxl-2 {
    padding-top: 0.5rem !important;
  }

  .pr-xxl-2,
.px-xxl-2 {
    padding-right: 0.5rem !important;
  }

  .pb-xxl-2,
.py-xxl-2 {
    padding-bottom: 0.5rem !important;
  }

  .pl-xxl-2,
.px-xxl-2 {
    padding-left: 0.5rem !important;
  }

  html:not([dir=rtl]) .pfs-xxl-2 {
    padding-left: 0.5rem !important;
  }
  *[dir=rtl] .pfs-xxl-2 {
    padding-right: 0.5rem !important;
  }

  html:not([dir=rtl]) .pfe-xxl-2 {
    padding-right: 0.5rem !important;
  }
  *[dir=rtl] .pfe-xxl-2 {
    padding-left: 0.5rem !important;
  }

  .p-xxl-3 {
    padding: 1rem !important;
  }

  .pt-xxl-3,
.py-xxl-3 {
    padding-top: 1rem !important;
  }

  .pr-xxl-3,
.px-xxl-3 {
    padding-right: 1rem !important;
  }

  .pb-xxl-3,
.py-xxl-3 {
    padding-bottom: 1rem !important;
  }

  .pl-xxl-3,
.px-xxl-3 {
    padding-left: 1rem !important;
  }

  html:not([dir=rtl]) .pfs-xxl-3 {
    padding-left: 1rem !important;
  }
  *[dir=rtl] .pfs-xxl-3 {
    padding-right: 1rem !important;
  }

  html:not([dir=rtl]) .pfe-xxl-3 {
    padding-right: 1rem !important;
  }
  *[dir=rtl] .pfe-xxl-3 {
    padding-left: 1rem !important;
  }

  .p-xxl-4 {
    padding: 1.5rem !important;
  }

  .pt-xxl-4,
.py-xxl-4 {
    padding-top: 1.5rem !important;
  }

  .pr-xxl-4,
.px-xxl-4 {
    padding-right: 1.5rem !important;
  }

  .pb-xxl-4,
.py-xxl-4 {
    padding-bottom: 1.5rem !important;
  }

  .pl-xxl-4,
.px-xxl-4 {
    padding-left: 1.5rem !important;
  }

  html:not([dir=rtl]) .pfs-xxl-4 {
    padding-left: 1.5rem !important;
  }
  *[dir=rtl] .pfs-xxl-4 {
    padding-right: 1.5rem !important;
  }

  html:not([dir=rtl]) .pfe-xxl-4 {
    padding-right: 1.5rem !important;
  }
  *[dir=rtl] .pfe-xxl-4 {
    padding-left: 1.5rem !important;
  }

  .p-xxl-5 {
    padding: 3rem !important;
  }

  .pt-xxl-5,
.py-xxl-5 {
    padding-top: 3rem !important;
  }

  .pr-xxl-5,
.px-xxl-5 {
    padding-right: 3rem !important;
  }

  .pb-xxl-5,
.py-xxl-5 {
    padding-bottom: 3rem !important;
  }

  .pl-xxl-5,
.px-xxl-5 {
    padding-left: 3rem !important;
  }

  html:not([dir=rtl]) .pfs-xxl-5 {
    padding-left: 3rem !important;
  }
  *[dir=rtl] .pfs-xxl-5 {
    padding-right: 3rem !important;
  }

  html:not([dir=rtl]) .pfe-xxl-5 {
    padding-right: 3rem !important;
  }
  *[dir=rtl] .pfe-xxl-5 {
    padding-left: 3rem !important;
  }

  .m-xxl-n1 {
    margin: -0.25rem !important;
  }

  .mt-xxl-n1,
.my-xxl-n1 {
    margin-top: -0.25rem !important;
  }

  .mr-xxl-n1,
.mx-xxl-n1 {
    margin-right: -0.25rem !important;
  }

  .mb-xxl-n1,
.my-xxl-n1 {
    margin-bottom: -0.25rem !important;
  }

  .ml-xxl-n1,
.mx-xxl-n1 {
    margin-left: -0.25rem !important;
  }

  html:not([dir=rtl]) .mfs-xxl-n1 {
    margin-left: -0.25rem !important;
  }
  *[dir=rtl] .mfs-xxl-n1 {
    margin-right: -0.25rem !important;
  }

  html:not([dir=rtl]) .mfe-xxl-n1 {
    margin-right: -0.25rem !important;
  }
  *[dir=rtl] .mfe-xxl-n1 {
    margin-left: -0.25rem !important;
  }

  .m-xxl-n2 {
    margin: -0.5rem !important;
  }

  .mt-xxl-n2,
.my-xxl-n2 {
    margin-top: -0.5rem !important;
  }

  .mr-xxl-n2,
.mx-xxl-n2 {
    margin-right: -0.5rem !important;
  }

  .mb-xxl-n2,
.my-xxl-n2 {
    margin-bottom: -0.5rem !important;
  }

  .ml-xxl-n2,
.mx-xxl-n2 {
    margin-left: -0.5rem !important;
  }

  html:not([dir=rtl]) .mfs-xxl-n2 {
    margin-left: -0.5rem !important;
  }
  *[dir=rtl] .mfs-xxl-n2 {
    margin-right: -0.5rem !important;
  }

  html:not([dir=rtl]) .mfe-xxl-n2 {
    margin-right: -0.5rem !important;
  }
  *[dir=rtl] .mfe-xxl-n2 {
    margin-left: -0.5rem !important;
  }

  .m-xxl-n3 {
    margin: -1rem !important;
  }

  .mt-xxl-n3,
.my-xxl-n3 {
    margin-top: -1rem !important;
  }

  .mr-xxl-n3,
.mx-xxl-n3 {
    margin-right: -1rem !important;
  }

  .mb-xxl-n3,
.my-xxl-n3 {
    margin-bottom: -1rem !important;
  }

  .ml-xxl-n3,
.mx-xxl-n3 {
    margin-left: -1rem !important;
  }

  html:not([dir=rtl]) .mfs-xxl-n3 {
    margin-left: -1rem !important;
  }
  *[dir=rtl] .mfs-xxl-n3 {
    margin-right: -1rem !important;
  }

  html:not([dir=rtl]) .mfe-xxl-n3 {
    margin-right: -1rem !important;
  }
  *[dir=rtl] .mfe-xxl-n3 {
    margin-left: -1rem !important;
  }

  .m-xxl-n4 {
    margin: -1.5rem !important;
  }

  .mt-xxl-n4,
.my-xxl-n4 {
    margin-top: -1.5rem !important;
  }

  .mr-xxl-n4,
.mx-xxl-n4 {
    margin-right: -1.5rem !important;
  }

  .mb-xxl-n4,
.my-xxl-n4 {
    margin-bottom: -1.5rem !important;
  }

  .ml-xxl-n4,
.mx-xxl-n4 {
    margin-left: -1.5rem !important;
  }

  html:not([dir=rtl]) .mfs-xxl-n4 {
    margin-left: -1.5rem !important;
  }
  *[dir=rtl] .mfs-xxl-n4 {
    margin-right: -1.5rem !important;
  }

  html:not([dir=rtl]) .mfe-xxl-n4 {
    margin-right: -1.5rem !important;
  }
  *[dir=rtl] .mfe-xxl-n4 {
    margin-left: -1.5rem !important;
  }

  .m-xxl-n5 {
    margin: -3rem !important;
  }

  .mt-xxl-n5,
.my-xxl-n5 {
    margin-top: -3rem !important;
  }

  .mr-xxl-n5,
.mx-xxl-n5 {
    margin-right: -3rem !important;
  }

  .mb-xxl-n5,
.my-xxl-n5 {
    margin-bottom: -3rem !important;
  }

  .ml-xxl-n5,
.mx-xxl-n5 {
    margin-left: -3rem !important;
  }

  html:not([dir=rtl]) .mfs-xxl-n5 {
    margin-left: -3rem !important;
  }
  *[dir=rtl] .mfs-xxl-n5 {
    margin-right: -3rem !important;
  }

  html:not([dir=rtl]) .mfe-xxl-n5 {
    margin-right: -3rem !important;
  }
  *[dir=rtl] .mfe-xxl-n5 {
    margin-left: -3rem !important;
  }

  .m-xxl-auto {
    margin: auto !important;
  }

  .mt-xxl-auto,
.my-xxl-auto {
    margin-top: auto !important;
  }

  .mr-xxl-auto,
.mx-xxl-auto {
    margin-right: auto !important;
  }

  .mb-xxl-auto,
.my-xxl-auto {
    margin-bottom: auto !important;
  }

  .ml-xxl-auto,
.mx-xxl-auto {
    margin-left: auto !important;
  }

  html:not([dir=rtl]) .mfs-xxl-auto {
    margin-left: auto !important;
  }
  *[dir=rtl] .mfs-xxl-auto {
    margin-right: auto !important;
  }

  html:not([dir=rtl]) .mfe-xxl-auto {
    margin-right: auto !important;
  }
  *[dir=rtl] .mfe-xxl-auto {
    margin-left: auto !important;
  }
}
.stretched-link::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  pointer-events: auto;
  content: "";
  background-color: rgba(0, 0, 21, 0);
}
.text-monospace {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !important;
}
.text-justify {
  text-align: justify !important;
}
.text-wrap {
  white-space: normal !important;
}
.text-nowrap {
  white-space: nowrap !important;
}
.text-truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.text-left {
  text-align: left !important;
}
.text-right {
  text-align: right !important;
}
.text-center {
  text-align: center !important;
}
@media (min-width: 576px) {
  .text-sm-left {
    text-align: left !important;
  }

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

  .text-sm-center {
    text-align: center !important;
  }
}
@media (min-width: 768px) {
  .text-md-left {
    text-align: left !important;
  }

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

  .text-md-center {
    text-align: center !important;
  }
}
@media (min-width: 992px) {
  .text-lg-left {
    text-align: left !important;
  }

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

  .text-lg-center {
    text-align: center !important;
  }
}
@media (min-width: 1200px) {
  .text-xl-left {
    text-align: left !important;
  }

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

  .text-xl-center {
    text-align: center !important;
  }
}
@media (min-width: 1400px) {
  .text-xxl-left {
    text-align: left !important;
  }

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

  .text-xxl-center {
    text-align: center !important;
  }
}
.text-lowercase {
  text-transform: lowercase !important;
}
.text-uppercase {
  text-transform: uppercase !important;
}
.text-capitalize {
  text-transform: capitalize !important;
}
.font-weight-light {
  font-weight: 300 !important;
}
.font-weight-lighter {
  font-weight: lighter !important;
}
.font-weight-normal {
  font-weight: 400 !important;
}
.font-weight-bold {
  font-weight: 700 !important;
}
.font-weight-bolder {
  font-weight: bolder !important;
}
.font-italic {
  font-style: italic !important;
}
.text-white {
  color: #fff !important;
}
.text-primary {
  color: #321fdb !important;
}
a.text-primary:hover, a.text-primary:focus {
  color: #231698 !important;
}
.text-secondary {
  color: #ced2d8 !important;
}
a.text-secondary:hover, a.text-secondary:focus {
  color: #a3abb6 !important;
}
.text-success {
  color: #2eb85c !important;
}
a.text-success:hover, a.text-success:focus {
  color: #1f7b3d !important;
}
.text-info {
  color: #39f !important;
}
a.text-info:hover, a.text-info:focus {
  color: #0073e6 !important;
}
.text-warning {
  color: #f9b115 !important;
}
a.text-warning:hover, a.text-warning:focus {
  color: #bd8305 !important;
}
.text-danger {
  color: #e55353 !important;
}
a.text-danger:hover, a.text-danger:focus {
  color: #cd1f1f !important;
}
.text-light {
  color: #ebedef !important;
}
a.text-light:hover, a.text-light:focus {
  color: #c1c7cd !important;
}
.text-dark {
  color: #636f83 !important;
}
a.text-dark:hover, a.text-dark:focus {
  color: #424a57 !important;
}
.c-dark-theme .text-primary {
  color: #4638c2 !important;
}
.c-dark-theme a.text-primary:hover, .c-dark-theme a.text-primary:focus {
  color: #312787 !important;
}
.c-dark-theme .text-secondary {
  color: #4c4f54 !important;
}
.c-dark-theme a.text-secondary:hover, .c-dark-theme a.text-secondary:focus {
  color: #28292c !important;
}
.c-dark-theme .text-success {
  color: #45a164 !important;
}
.c-dark-theme a.text-success:hover, .c-dark-theme a.text-success:focus {
  color: #2e6b43 !important;
}
.c-dark-theme .text-info {
  color: #4799eb !important;
}
.c-dark-theme a.text-info:hover, .c-dark-theme a.text-info:focus {
  color: #1773cf !important;
}
.c-dark-theme .text-warning {
  color: #e1a82d !important;
}
.c-dark-theme a.text-warning:hover, .c-dark-theme a.text-warning:focus {
  color: #a97b18 !important;
}
.c-dark-theme .text-danger {
  color: #d16767 !important;
}
.c-dark-theme a.text-danger:hover, .c-dark-theme a.text-danger:focus {
  color: #b53636 !important;
}
.c-dark-theme .text-light {
  color: #6c6e7e !important;
}
.c-dark-theme a.text-light:hover, .c-dark-theme a.text-light:focus {
  color: #494a55 !important;
}
.c-dark-theme .text-dark {
  color: #0e0e15 !important;
}
.c-dark-theme a.text-dark:hover, .c-dark-theme a.text-dark:focus {
  color: black !important;
}
.c-legacy-theme .text-primary {
  color: #20a8d8 !important;
}
.c-legacy-theme a.text-primary:hover, .c-legacy-theme a.text-primary:focus {
  color: #167495 !important;
}
.c-legacy-theme .text-secondary {
  color: #c8ced3 !important;
}
.c-legacy-theme a.text-secondary:hover, .c-legacy-theme a.text-secondary:focus {
  color: #9ea8b1 !important;
}
.c-legacy-theme .text-success {
  color: #4dbd74 !important;
}
.c-legacy-theme a.text-success:hover, .c-legacy-theme a.text-success:focus {
  color: #338a52 !important;
}
.c-legacy-theme .text-info {
  color: #63c2de !important;
}
.c-legacy-theme a.text-info:hover, .c-legacy-theme a.text-info:focus {
  color: #2ba6ca !important;
}
.c-legacy-theme .text-warning {
  color: #ffc107 !important;
}
.c-legacy-theme a.text-warning:hover, .c-legacy-theme a.text-warning:focus {
  color: #ba8b00 !important;
}
.c-legacy-theme .text-danger {
  color: #f86c6b !important;
}
.c-legacy-theme a.text-danger:hover, .c-legacy-theme a.text-danger:focus {
  color: #f52322 !important;
}
.c-legacy-theme .text-light {
  color: #f0f3f5 !important;
}
.c-legacy-theme a.text-light:hover, .c-legacy-theme a.text-light:focus {
  color: #c2ced6 !important;
}
.c-legacy-theme .text-dark {
  color: #2f353a !important;
}
.c-legacy-theme a.text-dark:hover, .c-legacy-theme a.text-dark:focus {
  color: #0d0e10 !important;
}
.text-body {
  color: #3c4b64 !important;
}
.text-muted {
  color: #768192 !important;
}
.c-dark-theme .text-muted {
  color: rgba(255, 255, 255, 0.6) !important;
}
.text-black-50 {
  color: rgba(0, 0, 21, 0.5) !important;
}
.text-white-50 {
  color: rgba(255, 255, 255, 0.5) !important;
}
.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}
.text-decoration-none {
  text-decoration: none !important;
}
.text-break {
  word-break: break-word !important;
  overflow-wrap: break-word !important;
}
.text-reset {
  color: inherit !important;
}
body {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
}
.font-xs {
  font-size: 0.75rem !important;
}
.font-sm {
  font-size: 0.85rem !important;
}
.font-lg {
  font-size: 1rem !important;
}
.font-xl {
  font-size: 1.25rem !important;
}
.font-2xl {
  font-size: 1.5rem !important;
}
.font-3xl {
  font-size: 1.75rem !important;
}
.font-4xl {
  font-size: 2rem !important;
}
.font-5xl {
  font-size: 2.5rem !important;
}
[class^=text-value] {
  font-weight: 600;
}
.text-value-xs {
  font-size: 0.65625rem;
}
.text-value-sm {
  font-size: 0.74375rem;
}
.text-value {
  font-size: 0.875rem;
}
.text-value-lg {
  font-size: 1.3125rem;
}
.text-value-xl {
  font-size: 1.53125rem;
}
.text-white .text-muted {
  color: rgba(255, 255, 255, 0.6) !important;
}
.visible {
  visibility: visible !important;
}
.invisible {
  visibility: hidden !important;
}
*[dir=rtl] {
  direction: rtl;
  unicode-bidi: embed;
}
*[dir=rtl] body {
  text-align: right;
}
.c-email-app {
  background-color: #fff;
}
.c-dark-theme .c-email-app {
  background-color: #23242d;
}
@media (max-width: 991.98px) {
  .c-email-app .c-body {
    display: block !important;
  }
  .c-email-app .c-sidebar {
    border: 0;
  }
}
.c-email-app .c-toolbar {
  border-bottom: 1px solid;
  border-color: #d8dbe0;
}
.c-dark-theme .c-email-app .c-toolbar {
  border-color: rgba(255, 255, 255, 0.075);
}
.c-email-app .c-message {
  display: flex;
  margin-bottom: 1rem;
  text-decoration: none;
  color: #3c4b64;
}
.c-dark-theme .c-email-app .c-message {
  color: rgba(255, 255, 255, 0.87);
}
.c-email-app .c-message.c-message-read {
  color: #768192;
}
.c-dark-theme .c-email-app .c-message.c-message-read {
  color: rgba(179, 179, 179, 0.87);
}
.c-email-app .c-message:last-child .c-message-details {
  border: 0;
}
html:not([dir=rtl]) .c-email-app .c-message-actions {
  margin-right: 1rem;
}
*[dir=rtl] .c-email-app .c-message-actions {
  margin-left: 1rem;
}
.c-email-app .c-message-details {
  flex-wrap: wrap;
  padding-bottom: 1rem;
  border-bottom: 1px solid;
  border-color: #d8dbe0;
}
.c-dark-theme .c-email-app .c-message-details {
  border-color: rgba(255, 255, 255, 0.075);
}
.c-email-app .c-message-headers {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
html:not([dir=rtl]) .c-email-app .c-message-headers-date {
  margin-left: auto;
}
*[dir=rtl] .c-email-app .c-message-headers-date {
  margin-right: auto;
}
.c-email-app .c-message-headers-subject {
  width: 100%;
  font-size: 1.09375rem;
  font-weight: 600;
}
.c-email-app .c-message-body {
  color: rgba(255, 255, 255, 0.87);
}
.c-email-app .c-message-attachment {
  display: flex;
  align-items: center;
}
.ie-custom-properties {
  primary: #321fdb;
  secondary: #ced2d8;
  success: #2eb85c;
  info: #39f;
  warning: #f9b115;
  danger: #e55353;
  light: #ebedef;
  dark: #636f83;
  breakpoint-xs: 0;
  breakpoint-sm: 576px;
  breakpoint-md: 768px;
  breakpoint-lg: 992px;
  breakpoint-xl: 1200px;
  breakpoint-xxl: 1400px;
}
@media print {
  *,
*::before,
*::after {
    text-shadow: none !important;
    box-shadow: none !important;
  }

  a:not(.btn) {
    text-decoration: underline;
  }

  abbr[title]::after {
    content: " (" attr(title) ")";
  }

  pre {
    white-space: pre-wrap !important;
  }

  pre,
blockquote {
    border: 1px solid #9da5b1;
    page-break-inside: avoid;
  }

  thead {
    display: table-header-group;
  }

  tr,
img {
    page-break-inside: avoid;
  }

  p,
h2,
h3 {
    orphans: 3;
    widows: 3;
  }

  h2,
h3 {
    page-break-after: avoid;
  }

  @page {
    size: a3;
  }
  body {
    min-width: 992px !important;
  }

  .container {
    min-width: 992px !important;
  }

  .navbar {
    display: none;
  }

  .badge {
    border: 1px solid #000015;
  }

  .table {
    border-collapse: collapse !important;
  }
  .table td,
.table th {
    background-color: #fff !important;
  }

  .table-bordered th,
.table-bordered td {
    border: 1px solid #c4c9d0 !important;
  }

  .table-dark {
    color: inherit;
  }
  .table-dark th,
.table-dark td,
.table-dark thead th,
.table-dark tbody + tbody {
    border-color: #d8dbe0;
  }

  .table .thead-dark th {
    color: inherit;
    border-color: #d8dbe0;
  }
}
/*
 *  Usage:
 *
      <div class="sk-rotating-plane"></div>
 *
 */
.sk-rotating-plane {
  width: 40px;
  height: 40px;
  background-color: #333;
  margin: 40px auto;
  -webkit-animation: sk-rotatePlane 1.2s infinite ease-in-out;
          animation: sk-rotatePlane 1.2s infinite ease-in-out;
}
@-webkit-keyframes sk-rotatePlane {
  0% {
    transform: perspective(120px) rotateX(0deg) rotateY(0deg);
  }
  50% {
    transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
  }
  100% {
    transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
  }
}
@keyframes sk-rotatePlane {
  0% {
    transform: perspective(120px) rotateX(0deg) rotateY(0deg);
  }
  50% {
    transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
  }
  100% {
    transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
  }
}
/*
 *  Usage:
 *
      <div class="sk-double-bounce">
        <div class="sk-child sk-double-bounce1"></div>
        <div class="sk-child sk-double-bounce2"></div>
      </div>
 *
 */
.sk-double-bounce {
  width: 40px;
  height: 40px;
  position: relative;
  margin: 40px auto;
}
.sk-double-bounce .sk-child {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: #333;
  opacity: 0.6;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-animation: sk-doubleBounce 2s infinite ease-in-out;
          animation: sk-doubleBounce 2s infinite ease-in-out;
}
.sk-double-bounce .sk-double-bounce2 {
  -webkit-animation-delay: -1s;
          animation-delay: -1s;
}
@-webkit-keyframes sk-doubleBounce {
  0%, 100% {
    transform: scale(0);
  }
  50% {
    transform: scale(1);
  }
}
@keyframes sk-doubleBounce {
  0%, 100% {
    transform: scale(0);
  }
  50% {
    transform: scale(1);
  }
}
/*
 *  Usage:
 *
      <div class="sk-wave">
        <div class="sk-rect sk-rect1"></div>
        <div class="sk-rect sk-rect2"></div>
        <div class="sk-rect sk-rect3"></div>
        <div class="sk-rect sk-rect4"></div>
        <div class="sk-rect sk-rect5"></div>
      </div>
 *
 */
.sk-wave {
  margin: 40px auto;
  width: 50px;
  height: 40px;
  text-align: center;
  font-size: 10px;
}
.sk-wave .sk-rect {
  background-color: #333;
  height: 100%;
  width: 6px;
  display: inline-block;
  -webkit-animation: sk-waveStretchDelay 1.2s infinite ease-in-out;
          animation: sk-waveStretchDelay 1.2s infinite ease-in-out;
}
.sk-wave .sk-rect1 {
  -webkit-animation-delay: -1.2s;
          animation-delay: -1.2s;
}
.sk-wave .sk-rect2 {
  -webkit-animation-delay: -1.1s;
          animation-delay: -1.1s;
}
.sk-wave .sk-rect3 {
  -webkit-animation-delay: -1s;
          animation-delay: -1s;
}
.sk-wave .sk-rect4 {
  -webkit-animation-delay: -0.9s;
          animation-delay: -0.9s;
}
.sk-wave .sk-rect5 {
  -webkit-animation-delay: -0.8s;
          animation-delay: -0.8s;
}
@-webkit-keyframes sk-waveStretchDelay {
  0%, 40%, 100% {
    transform: scaleY(0.4);
  }
  20% {
    transform: scaleY(1);
  }
}
@keyframes sk-waveStretchDelay {
  0%, 40%, 100% {
    transform: scaleY(0.4);
  }
  20% {
    transform: scaleY(1);
  }
}
/*
 *  Usage:
 *
      <div class="sk-wandering-cubes">
        <div class="sk-cube sk-cube1"></div>
        <div class="sk-cube sk-cube2"></div>
      </div>
 *
 */
.sk-wandering-cubes {
  margin: 40px auto;
  width: 40px;
  height: 40px;
  position: relative;
}
.sk-wandering-cubes .sk-cube {
  background-color: #333;
  width: 10px;
  height: 10px;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-animation: sk-wanderingCube 1.8s ease-in-out -1.8s infinite both;
          animation: sk-wanderingCube 1.8s ease-in-out -1.8s infinite both;
}
.sk-wandering-cubes .sk-cube2 {
  -webkit-animation-delay: -0.9s;
          animation-delay: -0.9s;
}
@-webkit-keyframes sk-wanderingCube {
  0% {
    transform: rotate(0deg);
  }
  25% {
    transform: translateX(30px) rotate(-90deg) scale(0.5);
  }
  50% {
    /* Hack to make FF rotate in the right direction */
    transform: translateX(30px) translateY(30px) rotate(-179deg);
  }
  50.1% {
    transform: translateX(30px) translateY(30px) rotate(-180deg);
  }
  75% {
    transform: translateX(0) translateY(30px) rotate(-270deg) scale(0.5);
  }
  100% {
    transform: rotate(-360deg);
  }
}
@keyframes sk-wanderingCube {
  0% {
    transform: rotate(0deg);
  }
  25% {
    transform: translateX(30px) rotate(-90deg) scale(0.5);
  }
  50% {
    /* Hack to make FF rotate in the right direction */
    transform: translateX(30px) translateY(30px) rotate(-179deg);
  }
  50.1% {
    transform: translateX(30px) translateY(30px) rotate(-180deg);
  }
  75% {
    transform: translateX(0) translateY(30px) rotate(-270deg) scale(0.5);
  }
  100% {
    transform: rotate(-360deg);
  }
}
/*
 *  Usage:
 *
      <div class="sk-spinner sk-spinner-pulse"></div>
 *
 */
.sk-spinner-pulse {
  width: 40px;
  height: 40px;
  margin: 40px auto;
  background-color: #333;
  border-radius: 100%;
  -webkit-animation: sk-pulseScaleOut 1s infinite ease-in-out;
          animation: sk-pulseScaleOut 1s infinite ease-in-out;
}
@-webkit-keyframes sk-pulseScaleOut {
  0% {
    transform: scale(0);
  }
  100% {
    transform: scale(1);
    opacity: 0;
  }
}
@keyframes sk-pulseScaleOut {
  0% {
    transform: scale(0);
  }
  100% {
    transform: scale(1);
    opacity: 0;
  }
}
/*
 *  Usage:
 *
      <div class="sk-chasing-dots">
        <div class="sk-child sk-dot1"></div>
        <div class="sk-child sk-dot2"></div>
      </div>
 *
 */
.sk-chasing-dots {
  margin: 40px auto;
  width: 40px;
  height: 40px;
  position: relative;
  text-align: center;
  -webkit-animation: sk-chasingDotsRotate 2s infinite linear;
          animation: sk-chasingDotsRotate 2s infinite linear;
}
.sk-chasing-dots .sk-child {
  width: 60%;
  height: 60%;
  display: inline-block;
  position: absolute;
  top: 0;
  background-color: #333;
  border-radius: 100%;
  -webkit-animation: sk-chasingDotsBounce 2s infinite ease-in-out;
          animation: sk-chasingDotsBounce 2s infinite ease-in-out;
}
.sk-chasing-dots .sk-dot2 {
  top: auto;
  bottom: 0;
  -webkit-animation-delay: -1s;
          animation-delay: -1s;
}
@-webkit-keyframes sk-chasingDotsRotate {
  100% {
    transform: rotate(360deg);
  }
}
@keyframes sk-chasingDotsRotate {
  100% {
    transform: rotate(360deg);
  }
}
@-webkit-keyframes sk-chasingDotsBounce {
  0%, 100% {
    transform: scale(0);
  }
  50% {
    transform: scale(1);
  }
}
@keyframes sk-chasingDotsBounce {
  0%, 100% {
    transform: scale(0);
  }
  50% {
    transform: scale(1);
  }
}
/*
 *  Usage:
 *
      <div class="sk-three-bounce">
        <div class="sk-child sk-bounce1"></div>
        <div class="sk-child sk-bounce2"></div>
        <div class="sk-child sk-bounce3"></div>
      </div>
 *
 */
.sk-three-bounce {
  margin: 40px auto;
  width: 80px;
  text-align: center;
}
.sk-three-bounce .sk-child {
  width: 20px;
  height: 20px;
  background-color: #333;
  border-radius: 100%;
  display: inline-block;
  -webkit-animation: sk-three-bounce 1.4s ease-in-out 0s infinite both;
          animation: sk-three-bounce 1.4s ease-in-out 0s infinite both;
}
.sk-three-bounce .sk-bounce1 {
  -webkit-animation-delay: -0.32s;
          animation-delay: -0.32s;
}
.sk-three-bounce .sk-bounce2 {
  -webkit-animation-delay: -0.16s;
          animation-delay: -0.16s;
}
@-webkit-keyframes sk-three-bounce {
  0%, 80%, 100% {
    transform: scale(0);
  }
  40% {
    transform: scale(1);
  }
}
@keyframes sk-three-bounce {
  0%, 80%, 100% {
    transform: scale(0);
  }
  40% {
    transform: scale(1);
  }
}
/*
 *  Usage:
 *
      <div class="sk-circle">
        <div class="sk-circle1 sk-child"></div>
        <div class="sk-circle2 sk-child"></div>
        <div class="sk-circle3 sk-child"></div>
        <div class="sk-circle4 sk-child"></div>
        <div class="sk-circle5 sk-child"></div>
        <div class="sk-circle6 sk-child"></div>
        <div class="sk-circle7 sk-child"></div>
        <div class="sk-circle8 sk-child"></div>
        <div class="sk-circle9 sk-child"></div>
        <div class="sk-circle10 sk-child"></div>
        <div class="sk-circle11 sk-child"></div>
        <div class="sk-circle12 sk-child"></div>
      </div>
 *
 */
.sk-circle {
  margin: 40px auto;
  width: 40px;
  height: 40px;
  position: relative;
}
.sk-circle .sk-child {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}
.sk-circle .sk-child:before {
  content: "";
  display: block;
  margin: 0 auto;
  width: 15%;
  height: 15%;
  background-color: #333;
  border-radius: 100%;
  -webkit-animation: sk-circleBounceDelay 1.2s infinite ease-in-out both;
          animation: sk-circleBounceDelay 1.2s infinite ease-in-out both;
}
.sk-circle .sk-circle2 {
  transform: rotate(30deg);
}
.sk-circle .sk-circle3 {
  transform: rotate(60deg);
}
.sk-circle .sk-circle4 {
  transform: rotate(90deg);
}
.sk-circle .sk-circle5 {
  transform: rotate(120deg);
}
.sk-circle .sk-circle6 {
  transform: rotate(150deg);
}
.sk-circle .sk-circle7 {
  transform: rotate(180deg);
}
.sk-circle .sk-circle8 {
  transform: rotate(210deg);
}
.sk-circle .sk-circle9 {
  transform: rotate(240deg);
}
.sk-circle .sk-circle10 {
  transform: rotate(270deg);
}
.sk-circle .sk-circle11 {
  transform: rotate(300deg);
}
.sk-circle .sk-circle12 {
  transform: rotate(330deg);
}
.sk-circle .sk-circle2:before {
  -webkit-animation-delay: -1.1s;
          animation-delay: -1.1s;
}
.sk-circle .sk-circle3:before {
  -webkit-animation-delay: -1s;
          animation-delay: -1s;
}
.sk-circle .sk-circle4:before {
  -webkit-animation-delay: -0.9s;
          animation-delay: -0.9s;
}
.sk-circle .sk-circle5:before {
  -webkit-animation-delay: -0.8s;
          animation-delay: -0.8s;
}
.sk-circle .sk-circle6:before {
  -webkit-animation-delay: -0.7s;
          animation-delay: -0.7s;
}
.sk-circle .sk-circle7:before {
  -webkit-animation-delay: -0.6s;
          animation-delay: -0.6s;
}
.sk-circle .sk-circle8:before {
  -webkit-animation-delay: -0.5s;
          animation-delay: -0.5s;
}
.sk-circle .sk-circle9:before {
  -webkit-animation-delay: -0.4s;
          animation-delay: -0.4s;
}
.sk-circle .sk-circle10:before {
  -webkit-animation-delay: -0.3s;
          animation-delay: -0.3s;
}
.sk-circle .sk-circle11:before {
  -webkit-animation-delay: -0.2s;
          animation-delay: -0.2s;
}
.sk-circle .sk-circle12:before {
  -webkit-animation-delay: -0.1s;
          animation-delay: -0.1s;
}
@-webkit-keyframes sk-circleBounceDelay {
  0%, 80%, 100% {
    transform: scale(0);
  }
  40% {
    transform: scale(1);
  }
}
@keyframes sk-circleBounceDelay {
  0%, 80%, 100% {
    transform: scale(0);
  }
  40% {
    transform: scale(1);
  }
}
/*
 *  Usage:
 *
      <div class="sk-cube-grid">
        <div class="sk-cube sk-cube1"></div>
        <div class="sk-cube sk-cube2"></div>
        <div class="sk-cube sk-cube3"></div>
        <div class="sk-cube sk-cube4"></div>
        <div class="sk-cube sk-cube5"></div>
        <div class="sk-cube sk-cube6"></div>
        <div class="sk-cube sk-cube7"></div>
        <div class="sk-cube sk-cube8"></div>
        <div class="sk-cube sk-cube9"></div>
      </div>
 *
 */
.sk-cube-grid {
  width: 40px;
  height: 40px;
  margin: 40px auto;
  /*
   * Spinner positions
   * 1 2 3
   * 4 5 6
   * 7 8 9
   */
}
.sk-cube-grid .sk-cube {
  width: 33.33%;
  height: 33.33%;
  background-color: #333;
  float: left;
  -webkit-animation: sk-cubeGridScaleDelay 1.3s infinite ease-in-out;
          animation: sk-cubeGridScaleDelay 1.3s infinite ease-in-out;
}
.sk-cube-grid .sk-cube1 {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s;
}
.sk-cube-grid .sk-cube2 {
  -webkit-animation-delay: 0.3s;
          animation-delay: 0.3s;
}
.sk-cube-grid .sk-cube3 {
  -webkit-animation-delay: 0.4s;
          animation-delay: 0.4s;
}
.sk-cube-grid .sk-cube4 {
  -webkit-animation-delay: 0.1s;
          animation-delay: 0.1s;
}
.sk-cube-grid .sk-cube5 {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s;
}
.sk-cube-grid .sk-cube6 {
  -webkit-animation-delay: 0.3s;
          animation-delay: 0.3s;
}
.sk-cube-grid .sk-cube7 {
  -webkit-animation-delay: 0s;
          animation-delay: 0s;
}
.sk-cube-grid .sk-cube8 {
  -webkit-animation-delay: 0.1s;
          animation-delay: 0.1s;
}
.sk-cube-grid .sk-cube9 {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s;
}
@-webkit-keyframes sk-cubeGridScaleDelay {
  0%, 70%, 100% {
    transform: scale3D(1, 1, 1);
  }
  35% {
    transform: scale3D(0, 0, 1);
  }
}
@keyframes sk-cubeGridScaleDelay {
  0%, 70%, 100% {
    transform: scale3D(1, 1, 1);
  }
  35% {
    transform: scale3D(0, 0, 1);
  }
}
/*
 *  Usage:
 *
      <div class="sk-fading-circle">
        <div class="sk-circle1 sk-circle"></div>
        <div class="sk-circle2 sk-circle"></div>
        <div class="sk-circle3 sk-circle"></div>
        <div class="sk-circle4 sk-circle"></div>
        <div class="sk-circle5 sk-circle"></div>
        <div class="sk-circle6 sk-circle"></div>
        <div class="sk-circle7 sk-circle"></div>
        <div class="sk-circle8 sk-circle"></div>
        <div class="sk-circle9 sk-circle"></div>
        <div class="sk-circle10 sk-circle"></div>
        <div class="sk-circle11 sk-circle"></div>
        <div class="sk-circle12 sk-circle"></div>
      </div>
 *
 */
.sk-fading-circle {
  margin: 40px auto;
  width: 40px;
  height: 40px;
  position: relative;
}
.sk-fading-circle .sk-circle {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}
.sk-fading-circle .sk-circle:before {
  content: "";
  display: block;
  margin: 0 auto;
  width: 15%;
  height: 15%;
  background-color: #333;
  border-radius: 100%;
  -webkit-animation: sk-circleFadeDelay 1.2s infinite ease-in-out both;
          animation: sk-circleFadeDelay 1.2s infinite ease-in-out both;
}
.sk-fading-circle .sk-circle2 {
  transform: rotate(30deg);
}
.sk-fading-circle .sk-circle3 {
  transform: rotate(60deg);
}
.sk-fading-circle .sk-circle4 {
  transform: rotate(90deg);
}
.sk-fading-circle .sk-circle5 {
  transform: rotate(120deg);
}
.sk-fading-circle .sk-circle6 {
  transform: rotate(150deg);
}
.sk-fading-circle .sk-circle7 {
  transform: rotate(180deg);
}
.sk-fading-circle .sk-circle8 {
  transform: rotate(210deg);
}
.sk-fading-circle .sk-circle9 {
  transform: rotate(240deg);
}
.sk-fading-circle .sk-circle10 {
  transform: rotate(270deg);
}
.sk-fading-circle .sk-circle11 {
  transform: rotate(300deg);
}
.sk-fading-circle .sk-circle12 {
  transform: rotate(330deg);
}
.sk-fading-circle .sk-circle2:before {
  -webkit-animation-delay: -1.1s;
          animation-delay: -1.1s;
}
.sk-fading-circle .sk-circle3:before {
  -webkit-animation-delay: -1s;
          animation-delay: -1s;
}
.sk-fading-circle .sk-circle4:before {
  -webkit-animation-delay: -0.9s;
          animation-delay: -0.9s;
}
.sk-fading-circle .sk-circle5:before {
  -webkit-animation-delay: -0.8s;
          animation-delay: -0.8s;
}
.sk-fading-circle .sk-circle6:before {
  -webkit-animation-delay: -0.7s;
          animation-delay: -0.7s;
}
.sk-fading-circle .sk-circle7:before {
  -webkit-animation-delay: -0.6s;
          animation-delay: -0.6s;
}
.sk-fading-circle .sk-circle8:before {
  -webkit-animation-delay: -0.5s;
          animation-delay: -0.5s;
}
.sk-fading-circle .sk-circle9:before {
  -webkit-animation-delay: -0.4s;
          animation-delay: -0.4s;
}
.sk-fading-circle .sk-circle10:before {
  -webkit-animation-delay: -0.3s;
          animation-delay: -0.3s;
}
.sk-fading-circle .sk-circle11:before {
  -webkit-animation-delay: -0.2s;
          animation-delay: -0.2s;
}
.sk-fading-circle .sk-circle12:before {
  -webkit-animation-delay: -0.1s;
          animation-delay: -0.1s;
}
@-webkit-keyframes sk-circleFadeDelay {
  0%, 39%, 100% {
    opacity: 0;
  }
  40% {
    opacity: 1;
  }
}
@keyframes sk-circleFadeDelay {
  0%, 39%, 100% {
    opacity: 0;
  }
  40% {
    opacity: 1;
  }
}
/*
 *  Usage:
 *
      <div class="sk-folding-cube">
        <div class="sk-cube1 sk-cube"></div>
        <div class="sk-cube2 sk-cube"></div>
        <div class="sk-cube4 sk-cube"></div>
        <div class="sk-cube3 sk-cube"></div>
      </div>
 *
 */
.sk-folding-cube {
  margin: 40px auto;
  width: 40px;
  height: 40px;
  position: relative;
  transform: rotateZ(45deg);
}
.sk-folding-cube .sk-cube {
  float: left;
  width: 50%;
  height: 50%;
  position: relative;
  transform: scale(1.1);
}
.sk-folding-cube .sk-cube:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #333;
  -webkit-animation: sk-foldCubeAngle 2.4s infinite linear both;
          animation: sk-foldCubeAngle 2.4s infinite linear both;
  transform-origin: 100% 100%;
}
.sk-folding-cube .sk-cube2 {
  transform: scale(1.1) rotateZ(90deg);
}
.sk-folding-cube .sk-cube3 {
  transform: scale(1.1) rotateZ(180deg);
}
.sk-folding-cube .sk-cube4 {
  transform: scale(1.1) rotateZ(270deg);
}
.sk-folding-cube .sk-cube2:before {
  -webkit-animation-delay: 0.3s;
          animation-delay: 0.3s;
}
.sk-folding-cube .sk-cube3:before {
  -webkit-animation-delay: 0.6s;
          animation-delay: 0.6s;
}
.sk-folding-cube .sk-cube4:before {
  -webkit-animation-delay: 0.9s;
          animation-delay: 0.9s;
}
@-webkit-keyframes sk-foldCubeAngle {
  0%, 10% {
    transform: perspective(140px) rotateX(-180deg);
    opacity: 0;
  }
  25%, 75% {
    transform: perspective(140px) rotateX(0deg);
    opacity: 1;
  }
  90%, 100% {
    transform: perspective(140px) rotateY(180deg);
    opacity: 0;
  }
}
@keyframes sk-foldCubeAngle {
  0%, 10% {
    transform: perspective(140px) rotateX(-180deg);
    opacity: 0;
  }
  25%, 75% {
    transform: perspective(140px) rotateX(0deg);
    opacity: 1;
  }
  90%, 100% {
    transform: perspective(140px) rotateY(180deg);
    opacity: 0;
  }
}
/**
 * Swiper 6.8.4
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2021 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: August 23, 2021
 */
@font-face {
  font-family: "swiper-icons";
  src: url("data:application/font-woff;charset=utf-8;base64, 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") format("woff");
  font-weight: 400;
  font-style: normal;
}
:root {
  --swiper-theme-color: #007aff;
}
.swiper-container {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
}
.swiper-container-vertical > .swiper-wrapper {
  flex-direction: column;
}
.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  box-sizing: content-box;
}
.swiper-container-android .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}
.swiper-container-multirow > .swiper-wrapper {
  flex-wrap: wrap;
}
.swiper-container-multirow-column > .swiper-wrapper {
  flex-wrap: wrap;
  flex-direction: column;
}
.swiper-container-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto;
}
.swiper-container-pointer-events {
  touch-action: pan-y;
}
.swiper-container-pointer-events.swiper-container-vertical {
  touch-action: pan-x;
}
.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
}
.swiper-slide-invisible-blank {
  visibility: hidden;
}
/* Auto Height */
.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
  height: auto;
}
.swiper-container-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}
/* 3D Effects */
.swiper-container-3d {
  perspective: 1200px;
}
.swiper-container-3d .swiper-wrapper,
.swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-cube-shadow {
  transform-style: preserve-3d;
}
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}
.swiper-container-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-container-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-container-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-container-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
/* CSS Mode */
.swiper-container-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  /* For Firefox */
  -ms-overflow-style: none;
  /* For Internet Explorer and Edge */
}
.swiper-container-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}
.swiper-container-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}
.swiper-container-horizontal.swiper-container-css-mode > .swiper-wrapper {
  -ms-scroll-snap-type: x mandatory;
      scroll-snap-type: x mandatory;
}
.swiper-container-vertical.swiper-container-css-mode > .swiper-wrapper {
  -ms-scroll-snap-type: y mandatory;
      scroll-snap-type: y mandatory;
}
:root {
  --swiper-navigation-size: 44px;
  /*
  --swiper-navigation-color: var(--swiper-theme-color);
  */
}
.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: 50%;
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - (var(--swiper-navigation-size) / 2));
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}
.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none;
}
.swiper-button-prev:after,
.swiper-button-next:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  text-transform: none;
  font-variant: initial;
  line-height: 1;
}
.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
  left: 10px;
  right: auto;
}
.swiper-button-prev:after,
.swiper-container-rtl .swiper-button-next:after {
  content: "prev";
}
.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
  right: 10px;
  left: auto;
}
.swiper-button-next:after,
.swiper-container-rtl .swiper-button-prev:after {
  content: "next";
}
.swiper-button-prev.swiper-button-white,
.swiper-button-next.swiper-button-white {
  --swiper-navigation-color: #ffffff;
}
.swiper-button-prev.swiper-button-black,
.swiper-button-next.swiper-button-black {
  --swiper-navigation-color: #000000;
}
.swiper-button-lock {
  display: none;
}
:root {
  /*
  --swiper-pagination-color: var(--swiper-theme-color);
  */
}
.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10;
}
.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}
/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-container-horizontal > .swiper-pagination-bullets {
  bottom: 10px;
  left: 0;
  width: 100%;
}
/* Bullets */
.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(0.33);
  position: relative;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.33);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(0.33);
}
.swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  display: inline-block;
  border-radius: 50%;
  background: #000;
  opacity: 0.2;
}
button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
}
.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}
.swiper-pagination-bullet:only-child {
  display: none !important;
}
.swiper-pagination-bullet-active {
  opacity: 1;
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}
.swiper-container-vertical > .swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  transform: translate3d(0px, -50%, 0);
}
.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 6px 0;
  display: block;
}
.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
}
.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: 200ms transform, 200ms top;
}
.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 4px;
}
.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
}
.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms left;
}
.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms right;
}
/* Progress */
.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, 0.25);
  position: absolute;
}
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top;
}
.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top;
}
.swiper-container-horizontal > .swiper-pagination-progressbar,
.swiper-container-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0;
}
.swiper-container-vertical > .swiper-pagination-progressbar,
.swiper-container-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0;
}
.swiper-pagination-white {
  --swiper-pagination-color: #ffffff;
}
.swiper-pagination-black {
  --swiper-pagination-color: #000000;
}
.swiper-pagination-lock {
  display: none;
}
/* Scrollbar */
.swiper-scrollbar {
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1);
}
.swiper-container-horizontal > .swiper-scrollbar {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%;
}
.swiper-container-vertical > .swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%;
}
.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  left: 0;
  top: 0;
}
.swiper-scrollbar-cursor-drag {
  cursor: move;
}
.swiper-scrollbar-lock {
  display: none;
}
.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}
.swiper-zoom-container > img,
.swiper-zoom-container > svg,
.swiper-zoom-container > canvas {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.swiper-slide-zoomed {
  cursor: move;
}
/* Preloader */
:root {
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  */
}
.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  -webkit-animation: swiper-preloader-spin 1s infinite linear;
          animation: swiper-preloader-spin 1s infinite linear;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}
.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}
.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}
@-webkit-keyframes swiper-preloader-spin {
  100% {
    transform: rotate(360deg);
  }
}
@keyframes swiper-preloader-spin {
  100% {
    transform: rotate(360deg);
  }
}
/* a11y */
.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}
.swiper-container-fade.swiper-container-free-mode .swiper-slide {
  transition-timing-function: ease-out;
}
.swiper-container-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity;
}
.swiper-container-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-container-fade .swiper-slide-active,
.swiper-container-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}
.swiper-container-cube {
  overflow: visible;
}
.swiper-container-cube .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  transform-origin: 0 0;
  width: 100%;
  height: 100%;
}
.swiper-container-cube .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-container-cube.swiper-container-rtl .swiper-slide {
  transform-origin: 100% 0;
}
.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}
.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-next,
.swiper-container-cube .swiper-slide-prev,
.swiper-container-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible;
}
.swiper-container-cube .swiper-slide-shadow-top,
.swiper-container-cube .swiper-slide-shadow-bottom,
.swiper-container-cube .swiper-slide-shadow-left,
.swiper-container-cube .swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.swiper-container-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  opacity: 0.6;
  z-index: 0;
}
.swiper-container-cube .swiper-cube-shadow:before {
  content: "";
  background: #000;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  filter: blur(50px);
}
.swiper-container-flip {
  overflow: visible;
}
.swiper-container-flip .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
}
.swiper-container-flip .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-container-flip .swiper-slide-active,
.swiper-container-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}
.swiper-container-flip .swiper-slide-shadow-top,
.swiper-container-flip .swiper-slide-shadow-bottom,
.swiper-container-flip .swiper-slide-shadow-left,
.swiper-container-flip .swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
/* based on angular-toastr css https://github.com/Foxandxss/angular-toastr/blob/cb508fe6801d6b288d3afc525bb40fee1b101650/dist/angular-toastr.css */
/* position */
.toast-center-center {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.toast-top-center {
  top: 0;
  right: 0;
  width: 100%;
}
.toast-bottom-center {
  bottom: 0;
  right: 0;
  width: 100%;
}
.toast-top-full-width {
  top: 0;
  right: 0;
  width: 100%;
}
.toast-bottom-full-width {
  bottom: 0;
  right: 0;
  width: 100%;
}
.toast-top-left {
  top: 12px;
  left: 12px;
}
.toast-top-right {
  top: 12px;
  right: 12px;
}
.toast-bottom-right {
  right: 12px;
  bottom: 12px;
}
.toast-bottom-left {
  bottom: 12px;
  left: 12px;
}
/* toast styles */
.toast-title {
  font-weight: bold;
}
.toast-message {
  word-wrap: break-word;
}
.toast-message a,
.toast-message label {
  color: #FFFFFF;
}
.toast-message a:hover {
  color: #CCCCCC;
  text-decoration: none;
}
.toast-close-button {
  position: relative;
  right: -0.3em;
  top: -0.3em;
  float: right;
  font-size: 20px;
  font-weight: bold;
  color: #FFFFFF;
  text-shadow: 0 1px 0 #ffffff;
  /* opacity: 0.8; */
}
.toast-close-button:hover,
.toast-close-button:focus {
  color: #000000;
  text-decoration: none;
  cursor: pointer;
  opacity: 0.4;
}
/*Additional properties for button version
 iOS requires the button element instead of an anchor tag.
 If you want the anchor version, it requires `href="#"`.*/
button.toast-close-button {
  padding: 0;
  cursor: pointer;
  background: transparent;
  border: 0;
}
.toast-container {
  pointer-events: none;
  position: fixed;
  z-index: 999999;
}
.toast-container * {
  box-sizing: border-box;
}
.toast-container .ngx-toastr {
  position: relative;
  overflow: hidden;
  margin: 0 0 6px;
  padding: 15px 15px 15px 50px;
  width: 300px;
  border-radius: 3px 3px 3px 3px;
  background-position: 15px center;
  background-repeat: no-repeat;
  background-size: 24px;
  box-shadow: 0 0 12px #999999;
  color: #FFFFFF;
}
.toast-container .ngx-toastr:hover {
  box-shadow: 0 0 12px #000000;
  opacity: 1;
  cursor: pointer;
}
/* https://github.com/FortAwesome/Font-Awesome-Pro/blob/master/advanced-options/raw-svg/regular/info-circle.svg */
.toast-info {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' width='512' height='512'%3E%3Cpath fill='rgb(255,255,255)' d='M256 8C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm0 110c23.196 0 42 18.804 42 42s-18.804 42-42 42-42-18.804-42-42 18.804-42 42-42zm56 254c0 6.627-5.373 12-12 12h-88c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h12v-64h-12c-6.627 0-12-5.373-12-12v-24c0-6.627 5.373-12 12-12h64c6.627 0 12 5.373 12 12v100h12c6.627 0 12 5.373 12 12v24z'/%3E%3C/svg%3E");
}
/* https://github.com/FortAwesome/Font-Awesome-Pro/blob/master/advanced-options/raw-svg/regular/times-circle.svg */
.toast-error {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' width='512' height='512'%3E%3Cpath fill='rgb(255,255,255)' d='M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm121.6 313.1c4.7 4.7 4.7 12.3 0 17L338 377.6c-4.7 4.7-12.3 4.7-17 0L256 312l-65.1 65.6c-4.7 4.7-12.3 4.7-17 0L134.4 338c-4.7-4.7-4.7-12.3 0-17l65.6-65-65.6-65.1c-4.7-4.7-4.7-12.3 0-17l39.6-39.6c4.7-4.7 12.3-4.7 17 0l65 65.7 65.1-65.6c4.7-4.7 12.3-4.7 17 0l39.6 39.6c4.7 4.7 4.7 12.3 0 17L312 256l65.6 65.1z'/%3E%3C/svg%3E");
}
/* https://github.com/FortAwesome/Font-Awesome-Pro/blob/master/advanced-options/raw-svg/regular/check.svg */
.toast-success {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' width='512' height='512'%3E%3Cpath fill='rgb(255,255,255)' d='M173.898 439.404l-166.4-166.4c-9.997-9.997-9.997-26.206 0-36.204l36.203-36.204c9.997-9.998 26.207-9.998 36.204 0L192 312.69 432.095 72.596c9.997-9.997 26.207-9.997 36.204 0l36.203 36.204c9.997 9.997 9.997 26.206 0 36.204l-294.4 294.401c-9.998 9.997-26.207 9.997-36.204-.001z'/%3E%3C/svg%3E");
}
/* https://github.com/FortAwesome/Font-Awesome-Pro/blob/master/advanced-options/raw-svg/regular/exclamation-triangle.svg */
.toast-warning {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512' width='576' height='512'%3E%3Cpath fill='rgb(255,255,255)' d='M569.517 440.013C587.975 472.007 564.806 512 527.94 512H48.054c-36.937 0-59.999-40.055-41.577-71.987L246.423 23.985c18.467-32.009 64.72-31.951 83.154 0l239.94 416.028zM288 354c-25.405 0-46 20.595-46 46s20.595 46 46 46 46-20.595 46-46-20.595-46-46-46zm-43.673-165.346l7.418 136c.347 6.364 5.609 11.346 11.982 11.346h48.546c6.373 0 11.635-4.982 11.982-11.346l7.418-136c.375-6.874-5.098-12.654-11.982-12.654h-63.383c-6.884 0-12.356 5.78-11.981 12.654z'/%3E%3C/svg%3E");
}
.toast-container.toast-top-center .ngx-toastr,
.toast-container.toast-bottom-center .ngx-toastr {
  width: 300px;
  margin-left: auto;
  margin-right: auto;
}
.toast-container.toast-top-full-width .ngx-toastr,
.toast-container.toast-bottom-full-width .ngx-toastr {
  width: 96%;
  margin-left: auto;
  margin-right: auto;
}
.ngx-toastr {
  background-color: #030303;
  pointer-events: auto;
}
.toast-success {
  background-color: #51A351;
}
.toast-error {
  background-color: #BD362F;
}
.toast-info {
  background-color: #2F96B4;
}
.toast-warning {
  background-color: #F89406;
}
.toast-progress {
  position: absolute;
  left: 0;
  bottom: 0;
  height: 4px;
  background-color: #000000;
  opacity: 0.4;
}
/* Responsive Design */
@media all and (max-width: 240px) {
  .toast-container .ngx-toastr.div {
    padding: 8px 8px 8px 50px;
    width: 11em;
  }

  .toast-container .toast-close-button {
    right: -0.2em;
    top: -0.2em;
  }
}
@media all and (min-width: 241px) and (max-width: 480px) {
  .toast-container .ngx-toastr.div {
    padding: 8px 8px 8px 50px;
    width: 18em;
  }

  .toast-container .toast-close-button {
    right: -0.2em;
    top: -0.2em;
  }
}
@media all and (min-width: 481px) and (max-width: 768px) {
  .toast-container .ngx-toastr.div {
    padding: 15px 15px 15px 50px;
    width: 25em;
  }
}
app-default-layout {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}
.app-body {
  background-color: #FFFFFF;
}
.app-body .main {
  position: absolute;
  display: -webkit-box;
  display: -moz-box;
  height: 100vh;
  width: 100vw;
  overflow-x: scroll;
  overflow-y: hidden;
}
body {
  -ms-overflow-style: none;
  overflow-x: hidden;
  color: #222222;
}
hr {
  background-color: #DADBDE;
}
.no-margin {
  margin: 0;
}
.auto-margin {
  margin: auto;
}
.divider {
  background-color: #EAEAEA;
  border-color: rgba(0, 0, 0, 0) !important;
}
.kp-button {
  border-radius: 10px;
  outline: transparent 0;
  border: 0;
}
.kp-button:focus {
  outline: none;
}
.swiper-pagination {
  left: 0;
}
.swiper-pagination .swiper-pagination-bullet-active {
  background-color: white;
}
.swiper-container .swiper-button-prev {
  color: white;
}
.swiper-container .swiper-button-next {
  color: white;
}
.swiper-button-next:hover, .swiper-button-next:focus, .swiper-button-next:active {
  outline: none;
}
.no-padding {
  padding: 0;
}
.pt-8px {
  padding-top: 0.5rem;
}
.pb-8px {
  padding-bottom: 0.5rem;
}
.mt-none {
  margin-top: 0rem;
}
.mt-8px {
  margin-top: 0.5rem;
}
.mt-10px {
  margin-top: 0.625rem;
}
.mt-14px {
  margin-top: 0.875rem;
}
.mt-16px {
  margin-top: 1rem;
}
.mt-20px {
  margin-top: 1.25rem;
}
.mt-24px {
  margin-top: 1.5rem;
}
.mt-28px {
  margin-top: 1.75rem;
}
.mt-48px {
  margin-top: 3rem;
}
.mb-none {
  margin-bottom: 0;
}
.mb-16px {
  margin-bottom: 1rem;
}
.mb-20px {
  margin-bottom: 1.25rem;
}
.mb-24px {
  margin-bottom: 1.5rem;
}
.mb-32px {
  margin-bottom: 2rem;
}
.lh-80p {
  line-height: 80%;
}
.flex-container {
  display: flex;
}
.flex-inline {
  display: inline-flex;
}
.flex-wrap-content {
  flex-wrap: wrap;
}
.flex-content-end {
  justify-content: flex-end;
}
.flex-align-end {
  align-items: flex-end;
}
.align-self-center {
  align-self: center;
}
.float-left {
  float: left;
}
.float-right {
  float: right;
}
.no-padding {
  padding: 0;
}
.pt-8px {
  padding-top: 0.5rem;
}
.pt-16px {
  padding-top: 1rem;
}
.pt-24px {
  padding-top: 1.5rem;
}
.pb-8px {
  padding-bottom: 0.5rem;
}
.mt-none {
  margin-top: 0rem;
}
.mt-2px {
  margin-top: 0.125rem;
}
.mt-4px {
  margin-top: 0.25rem;
}
.mt-6px {
  margin-top: 0.375rem;
}
.mt-8px {
  margin-top: 0.5rem;
}
.mt-10px {
  margin-top: 0.625rem;
}
.mt-12px {
  margin-top: 0.75rem;
}
.mt-14px {
  margin-top: 0.875rem;
}
.mt-16px {
  margin-top: 1rem;
}
.mt-20px {
  margin-top: 1.25rem;
}
.mt-24px {
  margin-top: 1.5rem;
}
.mt-28px {
  margin-top: 1.75rem;
}
.mt-32px {
  margin-top: 2rem;
}
.mt-40px {
  margin-top: 2.5rem;
}
.mt-48px {
  margin-top: 3rem;
}
.ml-8px {
  margin-left: 0.5rem;
}
.ml-12px {
  margin-left: 0.75rem;
}
.ml-16px {
  margin-left: 1rem;
}
.ml-16px-force {
  margin-left: 1rem !important;
}
.mr-6px {
  margin-right: 0.375rem;
}
.mr-10px {
  margin-right: 0.625rem;
}
.mb-16px {
  margin-bottom: 1rem;
}
.mb-20px {
  margin-bottom: 1.25rem;
}
.mb-24px {
  margin-bottom: 1.5rem;
}
.mb-32px {
  margin-bottom: 2rem;
}
.mb-64px {
  margin-bottom: 4rem;
}
.mb-96px {
  margin-bottom: 6rem;
}
.lh-80p {
  line-height: 80%;
}
.flex-container {
  display: flex;
}
.flex-space-between {
  justify-content: space-between;
}
.flex-inline {
  display: inline-flex;
}
.flex-wrap-content {
  flex-wrap: wrap;
}
.flex-content-end {
  justify-content: flex-end;
}
.flex-align-end {
  align-items: flex-end;
}
.flex-justify-center {
  justify-content: center;
}
.flex-align-center {
  align-items: center;
}
.flex-fill {
  flex: 1;
}
.full-centered-text {
  text-align: center;
  width: 100%;
}
.align-self-flex-end {
  align-self: flex-end;
}
.align-self-center {
  align-self: center;
}
.float-left {
  float: left;
}
.float-right {
  float: right;
}
.float-down {
  float: bottom;
}
.float-up {
  float: top;
}
.h100p {
  height: 100%;
}
.w100p {
  width: 100%;
}
.fill {
  height: 100%;
  width: 100%;
}
.inline-block {
  display: inline-block;
}
.block {
  display: block;
}
.modal-content {
  border-radius: 10px !important;
  border: unset;
  overflow: hidden;
}
.blurred-background {
  -webkit-backdrop-filter: blur(2px);
          backdrop-filter: blur(2px);
}
.custom-toast {
  font-size: 1rem;
}
.toast-container .custom-toast.ngx-toastr.toast-success {
  background-color: #63D58F;
}
.toast-container .custom-toast.ngx-toastr.toast-info {
  background-color: #2c4058;
}
.toast-container .custom-toast.ngx-toastr.toast-warning {
  background-color: #FFD74B;
}
.toast-container .custom-toast.ngx-toastr.toast-error {
  background-color: #F28872;
}
.ellipsis-nowrap-text {
  width: 100%;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow-x: hidden;
}
.live-view-modal-landscape .modal-xl {
  max-width: 95vw;
  max-height: 90vh;
}
.live-view-modal-portrait .modal-xl {
  max-width: 65vw;
  max-height: 95vh;
}
.tooltip {
  font-size: 0.9rem;
  z-index: 1052 !important;
}
.show.tooltip {
  opacity: 1;
  z-index: 1052 !important;
}
.cdk-overlay-container {
  z-index: 1052;
}
.tooltip.tooltip-top,
.tooltip.tooltip-bottom,
.tooltip.tooltip-left,
.tooltip.tooltip-right {
  z-index: 100000;
}
.animating {
  -webkit-animation: 0.75s flicker-white-color infinite alternate;
          animation: 0.75s flicker-white-color infinite alternate;
}
.dark-animation.animating {
  -webkit-animation: 0.75s flicker-dark-color infinite alternate;
          animation: 0.75s flicker-dark-color infinite alternate;
}
@-webkit-keyframes flicker-white-color {
  0% {
    background-color: rgba(255, 255, 255, 0.1);
  }
  10% {
    background-color: rgba(255, 255, 255, 0.2);
  }
  20% {
    background-color: rgba(255, 255, 255, 0.3);
  }
  30% {
    background-color: rgba(255, 255, 255, 0.4);
  }
  40% {
    background-color: rgba(255, 255, 255, 0.5);
  }
  50% {
    background-color: rgba(255, 255, 255, 0.6);
  }
  60% {
    background-color: rgba(255, 255, 255, 0.5);
  }
  70% {
    background-color: rgba(255, 255, 255, 0.4);
  }
  80% {
    background-color: rgba(255, 255, 255, 0.3);
  }
  90% {
    background-color: rgba(255, 255, 255, 0.2);
  }
  100% {
    background-color: rgba(255, 255, 255, 0.1);
  }
}
@keyframes flicker-white-color {
  0% {
    background-color: rgba(255, 255, 255, 0.1);
  }
  10% {
    background-color: rgba(255, 255, 255, 0.2);
  }
  20% {
    background-color: rgba(255, 255, 255, 0.3);
  }
  30% {
    background-color: rgba(255, 255, 255, 0.4);
  }
  40% {
    background-color: rgba(255, 255, 255, 0.5);
  }
  50% {
    background-color: rgba(255, 255, 255, 0.6);
  }
  60% {
    background-color: rgba(255, 255, 255, 0.5);
  }
  70% {
    background-color: rgba(255, 255, 255, 0.4);
  }
  80% {
    background-color: rgba(255, 255, 255, 0.3);
  }
  90% {
    background-color: rgba(255, 255, 255, 0.2);
  }
  100% {
    background-color: rgba(255, 255, 255, 0.1);
  }
}
@-webkit-keyframes flicker-dark-color {
  0% {
    background-color: rgba(200, 200, 200, 0.1);
  }
  10% {
    background-color: rgba(200, 200, 200, 0.2);
  }
  20% {
    background-color: rgba(200, 200, 200, 0.3);
  }
  30% {
    background-color: rgba(200, 200, 200, 0.4);
  }
  40% {
    background-color: rgba(200, 200, 200, 0.5);
  }
  50% {
    background-color: rgba(200, 200, 200, 0.6);
  }
  60% {
    background-color: rgba(200, 200, 200, 0.5);
  }
  70% {
    background-color: rgba(200, 200, 200, 0.4);
  }
  80% {
    background-color: rgba(200, 200, 200, 0.3);
  }
  90% {
    background-color: rgba(200, 200, 200, 0.2);
  }
  100% {
    background-color: rgba(200, 200, 200, 0.1);
  }
}
@keyframes flicker-dark-color {
  0% {
    background-color: rgba(200, 200, 200, 0.1);
  }
  10% {
    background-color: rgba(200, 200, 200, 0.2);
  }
  20% {
    background-color: rgba(200, 200, 200, 0.3);
  }
  30% {
    background-color: rgba(200, 200, 200, 0.4);
  }
  40% {
    background-color: rgba(200, 200, 200, 0.5);
  }
  50% {
    background-color: rgba(200, 200, 200, 0.6);
  }
  60% {
    background-color: rgba(200, 200, 200, 0.5);
  }
  70% {
    background-color: rgba(200, 200, 200, 0.4);
  }
  80% {
    background-color: rgba(200, 200, 200, 0.3);
  }
  90% {
    background-color: rgba(200, 200, 200, 0.2);
  }
  100% {
    background-color: rgba(200, 200, 200, 0.1);
  }
}
@media only screen and (max-width: 768px) {
  .custom-toast {
    font-size: 2rem;
  }

  .custom-button {
    padding: 1rem 2rem;
    margin: 0 1rem;
    border-radius: 1.5rem;
    line-height: normal;
    height: 6rem;
    font-size: 2.5rem;
  }
}
/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3N0eWxlcy5zY3NzIiwiLi4vLi4vX2N1c3RvbS5zY3NzIiwiLi4vLi4vX2ZvbnQuc2NzcyIsIi4uLy4uL3N0eWxlc2hlZXQuc2NzcyIsIi4uLy4uL192YXJpYWJsZXMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AYW5ndWxhci9tYXRlcmlhbC9fdGhlbWluZy5zY3NzIiwiLi4vLi4vX3NjYWxpbmcuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy9jb3JldWkuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy90aGVtZXMvbGVnYWN5L19yb290LnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvdGhlbWVzL2RhcmsvX3Jvb3Quc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy9fcm9vdC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL19hcHAuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy9taXhpbnMvX3RoZW1lcy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL19yZWJvb3Quc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy92YXJpYWJsZXMvX3R5cG9ncmFwaHkuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy92ZW5kb3JzL19yZnMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy9taXhpbnMvX2x0ci5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL21peGlucy9fcnRsLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvdmFyaWFibGVzL2NvbXBvbmVudHMvX2xpbmtzLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvbWl4aW5zL19ob3Zlci5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL190YWJsZXMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy92YXJpYWJsZXMvX2NvbG9ycy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL19idXR0b25zLWZvcm1zLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvdmVuZG9ycy9fcGVyZmVjdC1zY3JvbGxiYXIuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy92ZW5kb3JzL3RpcHB5anMvYW5pbWF0aW9ucy9mYWRlLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvdmVuZG9ycy90aXBweWpzL3BvcG92ZXIuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy92YXJpYWJsZXMvX3otaW5kZXguc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy92YXJpYWJsZXMvY29tcG9uZW50cy9fcG9wb3ZlcnMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy9taXhpbnMvX3Jlc2V0LXRleHQuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy9taXhpbnMvX2JvcmRlci1yYWRpdXMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy92YXJpYWJsZXMvY29tcG9uZW50cy9fc2hhcmVkLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvdmVuZG9ycy90aXBweWpzL2luZGV4LnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvdmFyaWFibGVzL2NvbXBvbmVudHMvX3Rvb2x0aXBzLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvX2FsZXJ0LnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvdmFyaWFibGVzL2NvbXBvbmVudHMvX2FsZXJ0cy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL21peGlucy9fYWxlcnQuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy9taXhpbnMvX2dyYWRpZW50cy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL19hdmF0YXJzLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvbWl4aW5zL19hdmF0YXJzLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvdmFyaWFibGVzL2NvbXBvbmVudHMvX2F2YXRhcnMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy9fYmFkZ2Uuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy9taXhpbnMvX3RyYW5zaXRpb24uc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy92YXJpYWJsZXMvY29tcG9uZW50cy9fYmFkZ2VzLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvbWl4aW5zL19iYWRnZS5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL19icmVhZGNydW1iLW1lbnUuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy9fYnJlYWRjcnVtYi5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL21peGlucy9fYm9yZGVycy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL19icmVhZGNydW1iLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvX2J1dHRvbi1ncm91cC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL21peGlucy9fZWxldmF0aW9uLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvX2J1dHRvbnMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy9taXhpbnMvX2J1dHRvbnMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy92YXJpYWJsZXMvX2JyYW5kLWNvbG9ycy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL19jYWxsb3V0LnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvX2NhcmQuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy92YXJpYWJsZXMvY29tcG9uZW50cy9fY2FyZHMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvbWl4aW5zL19jYXJkLWFjY2VudC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL19jYXJvdXNlbC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL21peGlucy9fY2xlYXJmaXguc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy92YXJpYWJsZXMvY29tcG9uZW50cy9fY2Fyb3VzZWwuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy9fY2hhcnRzLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvX2Nsb3NlLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvX2NvZGUuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy92YXJpYWJsZXMvY29tcG9uZW50cy9fY29kZS5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL19jdXN0b20tZm9ybXMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy92YXJpYWJsZXMvY29tcG9uZW50cy9fY3VzdG9tLWZvcm1zLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvX2Ryb3Bkb3duLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvbWl4aW5zL19jYXJldC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL19kcm9wZG93bnMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy9taXhpbnMvX25hdi1kaXZpZGVyLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvX2Zvb3Rlci5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL19mb290ZXIuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy9fZm9ybXMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy9taXhpbnMvX2Zvcm1zLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvX2dyaWQuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy9taXhpbnMvX2dyaWQuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy92YXJpYWJsZXMvX2dyaWQuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy9taXhpbnMvX2dyaWQtZnJhbWV3b3JrLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvX2hlYWRlci5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL19oZWFkZXIuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy9faWNvbi5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL21peGlucy9faWNvbi5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL19pbnB1dC1ncm91cC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL19pbWFnZXMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy9taXhpbnMvX2ltYWdlLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvdmFyaWFibGVzL2NvbXBvbmVudHMvX2ltYWdlcy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL19qdW1ib3Ryb24uc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy92YXJpYWJsZXMvY29tcG9uZW50cy9fanVtYm90cm9uLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvX2xpc3QtZ3JvdXAuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy9taXhpbnMvX2xpc3QtZ3JvdXAuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy9fbWVkaWEuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy9fbW9kYWwuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy92YXJpYWJsZXMvY29tcG9uZW50cy9fbW9kYWxzLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvX25hdi5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL19zaWRlYmFyLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvX25hdmJhci5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL19uYXZiYXIuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy92YXJpYWJsZXMvX3NwYWNpbmcuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy92YXJpYWJsZXMvY29tcG9uZW50cy9fbmF2cy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL19wYWdpbmF0aW9uLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvbWl4aW5zL19saXN0cy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL19wYWdpbmF0aW9uLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvbWl4aW5zL19wYWdpbmF0aW9uLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvX3BvcG92ZXIuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy9fcHJvZ3Jlc3Muc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy92YXJpYWJsZXMvY29tcG9uZW50cy9fcHJvZ3Jlc3MtYmFycy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL19wcm9ncmVzcy1ncm91cC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL19zaWRlYmFyLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvdmFyaWFibGVzL19vcHRpb25zLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvX3ZhcmlhYmxlcy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL19zcGlubmVycy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL19zcGlubmVycy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL19zdWJoZWFkZXIuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy92YXJpYWJsZXMvY29tcG9uZW50cy9fc3ViaGVhZGVyLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvX3N3aXRjaGVzLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvdmFyaWFibGVzL2NvbXBvbmVudHMvX3N3aXRjaGVzLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvbWl4aW5zL19zd2l0Y2hlcy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL190YWJsZXMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy9taXhpbnMvX3RhYmxlLXJvdy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL190b2FzdHMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy92YXJpYWJsZXMvY29tcG9uZW50cy9fdG9hc3RzLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvbWl4aW5zL190b2FzdHMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy9fdG9vbHRpcC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL190cmFuc2l0aW9ucy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL190eXBlLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvX2xvYWRpbmctYnV0dG9uLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvX211bHRpLXNlbGVjdC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL3ZhcmlhYmxlcy9jb21wb25lbnRzL19tdWx0aS1zZWxlY3Quc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy9sYXlvdXRzL19kZWZhdWx0LnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvdXRpbGl0aWVzL19hbGlnbi5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL21peGlucy9fYmFja2dyb3VuZC12YXJpYW50LnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvdXRpbGl0aWVzL19iYWNrZ3JvdW5kLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvdXRpbGl0aWVzL19ib3JkZXJzLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvdXRpbGl0aWVzL19jZW50ZXIuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy91dGlsaXRpZXMvX2Rpc3BsYXkuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy91dGlsaXRpZXMvX2VsZXZhdGlvbi5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL3V0aWxpdGllcy9fZW1iZWQuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy91dGlsaXRpZXMvX2ZsZXguc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy91dGlsaXRpZXMvX2Zsb2F0LnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvdXRpbGl0aWVzL19pbnRlcmFjdGlvbnMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9AY29yZXVpL2NvcmV1aS1wcm8vc2Nzcy91dGlsaXRpZXMvX292ZXJmbG93LnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvdXRpbGl0aWVzL19wb3NpdGlvbi5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL3V0aWxpdGllcy9fc2NyZWVucmVhZGVycy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL21peGlucy9fc2NyZWVuLXJlYWRlci5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL3V0aWxpdGllcy9fc2hhZG93cy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL3V0aWxpdGllcy9fc2l6aW5nLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvdXRpbGl0aWVzL19zcGFjaW5nLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvdXRpbGl0aWVzL19zdHJldGNoZWQtbGluay5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL3V0aWxpdGllcy9fdGV4dC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL21peGlucy9fdGV4dC10cnVuY2F0ZS5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL21peGlucy9fdGV4dC1lbXBoYXNpcy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL21peGlucy9fdGV4dC1oaWRlLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvdXRpbGl0aWVzL190eXBvZ3JhcGh5LnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvdXRpbGl0aWVzL192aXNpYmlsaXR5LnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvX3J0bC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL0Bjb3JldWkvY29yZXVpLXByby9zY3NzL2FwcHMvZW1haWwvX2VtYWlsLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvX2llLWN1c3RvbS1wcm9wZXJ0aWVzLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvX3ByaW50LnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGNvcmV1aS9jb3JldWktcHJvL3Njc3MvdmFyaWFibGVzL19wcmludGluZy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3NwaW5raXQvc2Nzcy9zcGlubmVycy8xLXJvdGF0aW5nLXBsYW5lLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc3BpbmtpdC9zY3NzL192YXJpYWJsZXMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zcGlua2l0L3Njc3Mvc3Bpbm5lcnMvMi1kb3VibGUtYm91bmNlLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc3BpbmtpdC9zY3NzL3NwaW5uZXJzLzMtd2F2ZS5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3NwaW5raXQvc2Nzcy9zcGlubmVycy80LXdhbmRlcmluZy1jdWJlcy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3NwaW5raXQvc2Nzcy9zcGlubmVycy81LXB1bHNlLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc3BpbmtpdC9zY3NzL3NwaW5uZXJzLzYtY2hhc2luZy1kb3RzLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc3BpbmtpdC9zY3NzL3NwaW5uZXJzLzctdGhyZWUtYm91bmNlLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc3BpbmtpdC9zY3NzL3NwaW5uZXJzLzgtY2lyY2xlLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc3BpbmtpdC9zY3NzL3NwaW5uZXJzLzktY3ViZS1ncmlkLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc3BpbmtpdC9zY3NzL3NwaW5uZXJzLzEwLWZhZGluZy1jaXJjbGUuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9zcGlua2l0L3Njc3Mvc3Bpbm5lcnMvMTEtZm9sZGluZy1jdWJlLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvc3dpcGVyL3N3aXBlci1idW5kbGUuY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL25neC10b2FzdHIvdG9hc3RyLmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxnQkFBZ0I7QUNDaEI7RUFDRSxrQkFBQTtFQUNBLE9BQUE7RUFDQSxNQUFBO0VBQ0EsUUFBQTtFQUNBLFNBQUE7RUFDQSxVQUFBO0FEQ0Y7QUNFQTtFQUNFLGtCQUFBO0VBQ0EsT0FBQTtFQUNBLE1BQUE7RUFDQSxRQUFBO0VBQ0EsU0FBQTtF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RkY7QUdyRkE7RUFDRSxhQUFBO0FId0ZGO0FHckZBO0VBQ0UscUJBQUE7QUh3RkY7QUdyRkE7RUFDRSx5QkN0UWlCO0VEdVFqQixxQkFBQTtFQUNBLHlCQUFBO0FId0ZGO0FHckZBO0VBQ0UseUJDclJtQjtFRHNSbkIsY0NsUlk7QUowV2Q7QUdyRkE7RUFDRSxzQkFBQTtFQUNBLFlBQUE7QUh3RkY7QUdyRkE7RUFDRSxZQUFBO0VBQ0EsV0FBQTtFQUNBLGVBQUE7RUFDQSxrQkFBQTtBSHdGRjtBR3JGQTtFQUNFLFNBQUE7QUh3RkY7QUdyRkE7RUFDRSx5QkN6U2lCO0FKaVluQjtBR3JGQTtFQUNFLHlCQ3JTaUI7QUo2WG5CO0FHckZBO0VBQ0UseUJDM1NtQjtFRDRTbkIsY0NwU1k7QUo0WGQ7QUdyRkE7RUFDRSx5QkMvU2lCO0FKdVluQjtBR3JGQTtFQUNFLHlCQ3BUbUI7RURxVG5CLFlBQUE7QUh3RkY7QUdyRkE7RUFDRSx5QkN0VGdCO0VEdVRoQixjQzdUWTtBSnFaZDtBR3JGQTtFQUNFLHlCQzFUc0I7QUprWnhCO0FHckZBO0VBQ0UseUJDbFVtQjtBSjBackI7QUdyRkE7RUFDRSx5QkN6VVk7RUQwVVosY0MvVFk7QUp1WmQ7QUdwRkE7RUFDRSx5QkM1VW1CO0FKbWFyQjtBR3BGQTtFQUNFLHlCQzlVaUI7RUQrVWpCLFlBQUE7QUh1RkY7QUdwRkE7RUFDRSx5QkN4Vlk7RUR5VlosY0NoVlU7RURpVlYsOEJBQUE7QUh1RkY7QUdwRkE7RUFDRSx5QkNyVlU7RURzVlYsY0MvVlk7QUpzYmQ7QUdwRkE7RUFDRSx5QkM5VmlCO0VEK1ZqQixjQ3pWWTtFRDBWWixZQUFBO0FIdUZGO0FHcEZBO0VBQ0UseUJDeldZO0VEMFdaLGNDL1ZZO0FKc2JkO0FHcEZBO0VBQ0UseUJDN1dnQjtBSm9jbEI7QUdwRkE7RUFDRSwrQkFBQTtFQUNBLHlCQ25YWTtFRG9YWixjQ3pXWTtFRDBXWixZQUFBO0FIdUZGO0FHcEZBO0VBQ0UscUJBQUE7QUh1RkY7QUdwRkE7RUFDRSxVQUFBO0VBQ0EseUJDOVhZO0FKcWRkO0FHcEZB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LGdCQUFBO0VBQ0EsbUNBQUE7QVgraElKO0FZbHhIWTtFRHBSUixrQkFBQTtBWHlpSUo7QVlyeEhZO0VEcFJSLG9CQUFBO0FYNGlJSjtBWXh4SFk7RURwUlIsa0JBQUE7QVgraUlKO0FZM3hIWTtFRHBSUixlQUFBO0FYa2pJSjtBWTl4SFk7RURwUlIsa0JBQUE7QVhxaklKO0FZanlIWTtFRHBSUixpQkFBQTtBWHdqSUo7QVlweUhZO0VEcFJSLGdCQUFBO0FYMmpJSjtBWXZ5SFk7RURwUlIsZUFBQTtBWDhqSUo7QVkxeUhZO0VEcFJSLGtCQUFBO0FYaWtJSjtBWTd5SFk7RURwUlIsb0JBQUE7QVhva0lKO0FZaHpIWTtFRHBSUixrQkFBQTtBWHVrSUo7QVluekhZO0VEcFJSLGVBQUE7QVgwa0lKO0FZdHpIWTtFRHBSUixrQkFBQTtBWDZrSUo7QVl6ekhZO0VEcFJSLGlCQUFBO0FYZ2xJSjtBWTV6SFk7RURwUlIsZ0JBQUE7QVhtbElKO0FZL3pIWTtFRHBSUixlQUFBO0FYc2xJSjtBWTc2SEk7RUR0S0EsY0FBQTtFQUNBLHlCQUFBO0VBRUEsZ0JBQUE7RUFDQSxtQ0FBQTtBWHFsSUo7QVluN0hJO0VEdEtBLGdDQUFBO0VBQ0EseUJBQUE7RUFFQSxrQ0FBQTtFQUNBLCtCQUFBO0FYMmxJSjtBYWxsSUE7OztFQUdFLHNCQUFBO0FicWxJRjtBYWxsSUE7RUFDRSx1QkFBQTtFQUNBLGlCQUFBO0VBQ0EsOEJBQUE7RUFDQSw4Q0FBQTtBYnFsSUY7QWEva0lBO0VBQ0UsY0FBQTtBYmtsSUY7QWF2a0lBO0VBQ0UsU0FBQTtFQUVBLGtCQUFBO0VBQ0Esa01DN0N3QjtFQzBIcEIsbUJBdENhO0VGckNqQixnQkNwQ3FCO0VEcUNyQixnQkNoQ2tCO0VEaUNsQixnQkFBQTtFQUVFLGNBQUE7RUFDQSx5QkFBQTtBYndrSUo7QVl0OUhJO0VDbkhBLGNBQUE7RUFDQSx5QkFBQTtBYjRrSUo7QVkxOUhJO0VDbkhBLGdDQUFBO0VBQ0EseUJBQUE7QWJnbElKO0FhbmtJQTtFQUNFLHFCQUFBO0Fic2tJRjtBYTdqSUE7RUFDRSx1QkFBQTtFQUNBLFNBQUE7RUFDQSxpQkFBQTtBYmdrSUY7QWFuaklBO0VBQ0UsYUFBQTtFQUNBLHFCQ3BFd0I7QWQwbkkxQjtBYS9pSUE7RUFDRSxhQUFBO0VBQ0EsbUJDMUJ5QjtBZDRrSTNCO0FhdmlJQTs7RUFFRSwwQkFBQTtFQUNBLHlDQUFBO1VBQUEsaUNBQUE7RUFDQSxZQUFBO0VBQ0EsZ0JBQUE7RUFDQSxzQ0FBQTtVQUFBLDhCQUFBO0FiMGlJRjtBYXZpSUE7RUFDRSxtQkFBQTtFQUNBLGtCQUFBO0VBQ0Esb0JBQUE7QWIwaUlGO0FhdmlJQTs7O0VBR0UsYUFBQTtFQUNBLG1CQUFBO0FiMGlJRjtBYXZpSUE7Ozs7RUFJRSxnQkFBQTtBYjBpSUY7QWF2aUlBO0VBQ0UsZ0JDbklxQjtBZDZxSXZCO0FhdmlJQTtFQUNFLHFCQUFBO0FiMGlJRjtBZ0I5cklRO0VIc0pKLGNBQUE7QWIyaUlKO0FpQmpzSVE7RUp5SkosZUFBQTtBYjJpSUo7QWF2aUlBO0VBQ0UsZ0JBQUE7QWIwaUlGO0FhdmlJQTs7RUFFRSxtQkNySnFCO0FkK3JJdkI7QWF2aUlBO0VFbEdJLGNBQUE7QWY2b0lKO0FhbGlJQTs7RUFFRSxrQkFBQTtFRTdHRSxjQUFBO0VGK0dGLGNBQUE7RUFDQSx3QkFBQTtBYnFpSUY7QWFsaUlBO0VBQU0sZUFBQTtBYnNpSU47QWFyaUlBO0VBQU0sV0FBQTtBYnlpSU47QWFsaUlBO0VBQ0UscUJLaE15QztFTGlNekMsNkJBQUE7RUFFRSxjQUFBO0Fib2lJSjtBWXppSVE7RUNLSixjQUFBO0FidWlJSjtBWTVpSVE7RUNLSixjQUFBO0FiMmlJSjtBbUJ0dUlFO0VBQ0U7SU44TEEsMEJLdE11QztJTHdNckMsY0FBQTtFYjJpSUo7RVl0aklNO0lDV0YsY0FBQTtFYjhpSUo7O0VZempJTTtJQ1dGLGNBQUE7RWJraklKO0FBQ0Y7QWF6aUlBO0VBQ0UsY0FBQTtFQUNBLHFCQUFBO0FiNGlJRjtBbUJ6dklFO0VBQ0U7SU4rTUEsY0FBQTtJQUNBLHFCQUFBO0ViNmlJRjtBQUNGO0FhcmlJQTs7OztFQUlFLGlHQ3BPd0I7RUNrRXRCLGNBQUE7QWYyc0lKO0FhcmlJQTtFQUVFLGFBQUE7RUFFQSxtQkFBQTtFQUVBLGNBQUE7RUFHQSw2QkFBQTtBYm1pSUY7QWEzaElBO0VBRUUsZ0JBQUE7QWI2aElGO0FhcmhJQTtFQUNFLHNCQUFBO0VBQ0Esa0JBQUE7QWJ3aElGO0FhcmhJQTtFQUdFLGdCQUFBO0VBQ0Esc0JBQUE7QWJzaElGO0FhOWdJQTtFQUNFLHlCQUFBO0FiaWhJRjtBYTlnSUE7RUFDRSxvQk8zUndCO0VQNFJ4Qix1Qk81UndCO0VQNlJ4QixjUW5SVztFUm9SWCxnQkFBQTtFQUNBLG9CQUFBO0FiaWhJRjtBYTlnSUE7RUFHRSxtQkFBQTtBYitnSUY7QWF2Z0lBO0VBRUUscUJBQUE7RUFDQSxxQlN6T3FCO0F0Qmt2SXZCO0FhbmdJQTtFQUVFLGdCQUFBO0FicWdJRjtBYTkvSEE7RUFDRSxtQkFBQTtFQUNBLDBDQUFBO0FiaWdJRjtBYTkvSEE7Ozs7O0VBS0UsU0FBQTtFQUNBLG9CQUFBO0VFdFFFLGtCQUFBO0VGd1FGLG9CQUFBO0FiaWdJRjtBYTkvSEE7O0VBRUUsaUJBQUE7QWJpZ0lGO0FhOS9IQTs7RUFFRSxvQkFBQTtBYmlnSUY7QWEzL0hBO0VBQ0UsZUFBQTtBYjgvSEY7QWF4L0hBO0VBQ0UsaUJBQUE7QWIyL0hGO0FhcC9IQTs7OztFQUlFLDBCQUFBO0FidS9IRjtBYTkrSEk7Ozs7RUFDRSxlQUFBO0Fiby9ITjtBYTkrSEE7Ozs7RUFJRSxVQUFBO0VBQ0Esa0JBQUE7QWJpL0hGO0FhOStIQTs7RUFFRSxzQkFBQTtFQUNBLFVBQUE7QWJpL0hGO0FhOStIQTtFQUNFLGNBQUE7RUFFQSxnQkFBQTtBYmcvSEY7QWE3K0hBO0VBTUUsWUFBQTtFQUVBLFVBQUE7RUFDQSxTQUFBO0VBQ0EsU0FBQTtBYjArSEY7QWFyK0hBO0VBQ0UsY0FBQTtFQUNBLFdBQUE7RUFDQSxlQUFBO0VBQ0EsVUFBQTtFQUNBLHFCQUFBO0VFNVNJLGlCQXRDYTtFRm9WakIsb0JBQUE7RUFDQSxjQUFBO0VBQ0EsbUJBQUE7QWJ3K0hGO0FhcitIQTtFQUNFLHdCQUFBO0FidytIRjtBYXArSEE7O0VBRUUsWUFBQTtBYnUrSEY7QWFwK0hBO0VBS0Usb0JBQUE7RUFDQSx3QkFBQTtBYm0rSEY7QWE1OUhBO0VBQ0Usd0JBQUE7QWIrOUhGO0FhdjlIQTtFQUNFLGFBQUE7RUFDQSwwQkFBQTtBYjA5SEY7QWFuOUhBO0VBQ0UscUJBQUE7QWJzOUhGO0FhbjlIQTtFQUNFLGtCQUFBO0VBQ0EsZUFBQTtBYnM5SEY7QWFuOUhBO0VBQ0UsYUFBQTtBYnM5SEY7QWFqOUhBO0VBQ0Usd0JBQUE7QWJvOUhGO0F1Qjk3SUE7RUFDRSwyQkFBQTtFQUVBLGtCQUFBO0VBQ0Esd0JBQUE7RUFDQSxxQkFBQTtBdkJpOElGO0F1Qjk3SUE7RUFDRSxrQkFBQTtFQUNBLFNBQUE7RUFDQSxhQUFBO0VBQ0EsWUFBQTtFQUNBLFVBQUE7RUFDQSw2REFBQTtBdkJpOElGO0F1Qjk3SUE7RUFDRSxrQkFBQTtFQU9BLGFBQUE7RUFDQSxXQUFBO0VBQ0EsVUFBQTtFQUNBLDZEQUFBO0F2QjI3SUY7QWdCcDlJUTtFT2lCSixRQUFBO0F2QnM4SUo7QWlCdjlJUTtFTW9CSixPQUFBO0F2QnM4SUo7QXVCOTdJQTs7RUFFRSxjQUFBO0VBQ0EsNkJBQUE7QXZCaThJRjtBdUI5N0lBOzs7Ozs7RUFNRSxZQUFBO0F2Qmk4SUY7QXVCOTdJQTs7OztFQUlFLHNCQUFBO0VBQ0EsWUFBQTtBdkJpOElGO0F1Qjk3SUE7O0VBQUE7QUFHQTtFQUNFLGtCQUFBO0VBQ0EsV0FBQTtFQUNBLFdBQUE7RUFDQSxzQkFBQTtFQUNBLGtCQUFBO0VBQ0EsaUVBQUE7QXZCaThJRjtBdUI5N0lBO0VBQ0Usa0JBQUE7RUFPQSxVQUFBO0VBQ0Esc0JBQUE7RUFDQSxrQkFBQTtFQUNBLGdFQUFBO0F2QjI3SUY7QWdCcmdKUTtFT2tFSixVQUFBO0F2QnM4SUo7QWlCeGdKUTtFTXFFSixTQUFBO0F2QnM4SUo7QXVCOTdJQTs7RUFFRSxZQUFBO0VBQ0Esc0JBQUE7QXZCaThJRjtBdUI5N0lBOztFQUVFLFdBQUE7RUFDQSxzQkFBQTtBdkJpOElGO0F1Qjk3SUE7RUFDRTtJQUNFLHlCQUFBO0V2Qmk4SUY7QUFDRjtBdUI5N0lBO0VBQ0U7SUFDRSx5QkFBQTtFdkJnOElGO0FBQ0Y7QXdCbmlKRTtFQUNFLFVBQUE7QXhCcWlKSjtBeUJ6aUpBO0VBQ0UsYUNVdUI7RURUdkIsY0FBQTtFQUNBLGdCRUNzQjtFQ0h0QixrTWRJd0I7RWNGeEIsa0JBQUE7RUFDQSxnQmRZcUI7RWNYckIsZ0JkZ0JrQjtFY2ZsQixnQkFBQTtFQUNBLGlCQUFBO0VBQ0EscUJBQUE7RUFDQSxpQkFBQTtFQUNBLG9CQUFBO0VBQ0Esc0JBQUE7RUFDQSxrQkFBQTtFQUNBLG9CQUFBO0VBQ0EsbUJBQUE7RUFDQSxnQkFBQTtFYmdISSxzQkF0Q2E7RVVuRmpCLHFCQUFBO0VBQ0EsNEJBQUE7RUFDQSxpQkFBQTtFSVVFLHFCQUFBO0VKTEEsc0JBQUE7RUFDQSxpQ0FBQTtBekJzakpKO0FZbDRJUTtFYXJMSixzQkFBQTtFQUNBLGdDQUFBO0F6QjBqSko7QVl0NElRO0VhckxKLHlCQUFBO0VBQ0Esd0NBQUE7QXpCK2pKSjtBeUI1akpFO0VBQ0UsZUFBQTtFQUNBLFVBQUE7RUFDQSxjQUFBO0VBQ0EsbUJBQUE7RUFDQSx5QkFBQTtFQUNBLHNCQUFBO0F6QitqSko7QXlCNWpKRTtFQUNFLGtCQUFBO0VBQ0EsY0FBQTtFQUNBLGtCQUFBO0F6QjhqSko7QXlCNWpKSTtFQUVFLGtCQUFBO0VBQ0EsY0FBQTtFQUNBLFdBQUE7RUFDQSx5QkFBQTtFQUNBLG1CQUFBO0F6QjZqSk47QXlCdmlKSTtFQUNFLGFBQUE7RUFDQSxjRTNDa0I7RUY0Q2xCLGlCQUFBO0F6QnlpSk47QXlCdmlKTTtFQUNFLFVBQUE7QXpCeWlKUjtBeUJsaUpJO0VBQ0UsYUV2RGtCO0VGd0RsQixjQUFBO0VBQ0EsaUJBQUE7RUFDQSxTQUFBO0F6Qm9pSk47QXlCN2hKSTtFQUNFLDJCQUFBO0F6QitoSk47QXlCN2hKTTtFQUNFLFNBQUE7RUFDQSw2QkFBQTtFQUVFLHNDQUFBO0F6QjhoSlY7QVl0N0lRO0VheEdFLHFDQUFBO0F6QmlpSlY7QVl6N0lRO0VheEdFLDRDQUFBO0F6QnFpSlY7QXlCamlKTTtFQUNFLFdLdEZRO0VMdUZSLDZCQUFBO0VBRUUsc0JBQUE7QXpCbWlKVjtBWW44SVE7RWFoR0Usc0JBQUE7QXpCc2lKVjtBWXQ4SVE7RWFoR0UseUJBQUE7QXpCMGlKVjtBeUJsaUpJO0VBQ0Usd0JBQUE7QXpCcWlKTjtBeUJuaUpNO0VBQ0UsTUFBQTtFQUNBLG9DQUFBO0VBRUUseUNBQUE7QXpCb2lKVjtBWW45SVE7RWFqRkUsd0NBQUE7QXpCdWlKVjtBWXQ5SVE7RWFqRkUsK0NBQUE7QXpCMmlKVjtBeUJ2aUpNO0VBQ0UsUUs3R1E7RUw4R1Isb0NBQUE7RUFFRSx5QkFBQTtBekJ5aUpWO0FZaCtJUTtFYXpFRSx5QkFBQTtBekI0aUpWO0FZbitJUTtFYXpFRSw0QkFBQTtBekJnakpWO0F5QnhpSkk7RUFDRSwwQkFBQTtBekIyaUpOO0F5QnppSk07RUFDRSxRQUFBO0VBQ0Esb0NBQUE7RUFFRSx1Q0FBQTtBekIwaUpWO0FZaC9JUTtFYTFERSxzQ0FBQTtBekI2aUpWO0FZbi9JUTtFYTFERSw2Q0FBQTtBekJpakpWO0F5QjdpSk07RUFDRSxVS3BJUTtFTHFJUixvQ0FBQTtFQUVFLHVCQUFBO0F6QitpSlY7QVk3L0lRO0VhbERFLHVCQUFBO0F6QmtqSlY7QVloZ0pRO0VhbERFLDBCQUFBO0F6QnNqSlY7QXlCN2lKSTtFQUNFLHlCQUFBO0F6QmdqSk47QXlCOWlKTTtFQUNFLE9BQUE7RUFDQSxvQ0FBQTtFQUVFLHdDQUFBO0F6QitpSlY7QVk3Z0pRO0VhbENFLHVDQUFBO0F6QmtqSlY7QVloaEpRO0VhbENFLDhDQUFBO0F6QnNqSlY7QXlCbGpKTTtFQUNFLFNLNUpRO0VMNkpSLG9DQUFBO0VBRUUsd0JBQUE7QXpCb2pKVjtBWTFoSlE7RWExQkUsd0JBQUE7QXpCdWpKVjtBWTdoSlE7RWExQkUsMkJBQUE7QXpCMmpKVjtBK0I5dEpBO0VBQ0UsMEJBQUE7RUFDQSx3Q0FBQTtBL0JpdUpGO0ErQjl0SkE7RUFDRSw2QkFBQTtBL0JpdUpGO0ErQjl0SkE7RUFDRSxrQkFBQTtFQUNBLGFMSnVCO0VLS3ZCLGNBQUE7RUFDQSxTQ1J1QjtFSlR2QixrTWRJd0I7RWNGeEIsa0JBQUE7RUFDQSxnQmRZcUI7RWNYckIsZ0JkZ0JrQjtFY2ZsQixnQkFBQTtFQUNBLGlCQUFBO0VBQ0EscUJBQUE7RUFDQSxpQkFBQTtFQUNBLG9CQUFBO0VBQ0Esc0JBQUE7RUFDQSxrQkFBQTtFQUNBLG9CQUFBO0VBQ0EsbUJBQUE7RUFDQSxnQkFBQTtFYmdISSxzQkF0Q2E7RWdCakVqQixxQkFBQTtFQUNBLFVBQUE7RUFDQSxtREFBQTtBL0IydUpGO0ErQnp1SkU7RUFDRSxTQUFBO0EvQjJ1Sko7QStCenVKSTtFQUNFLGVBQUE7RUFDQSxPQUFBO0VBQ0EsNkJBQUE7RUFDQSx5QkFBQTtBL0IydUpOO0ErQnZ1SkU7RUFDRSxNQUFBO0EvQnl1Sko7QStCdnVKSTtFQUNFLFlBQUE7RUFDQSxPQUFBO0VBQ0EsNkJBQUE7RUFDQSw0QkFBQTtBL0J5dUpOO0ErQnJ1SkU7RUFDRSxRQUFBO0VBQ0EsYUN2Q3FCO0VEd0NyQixjQ3pDcUI7QWhDZ3hKekI7QStCcnVKSTtFQUNFLGNBQUE7RUFDQSxvQ0FBQTtFQUNBLDBCQUFBO0EvQnV1Sk47QStCbnVKRTtFQUNFLE9BQUE7RUFDQSxhQ25EcUI7RURvRHJCLGNDckRxQjtBaEMweEp6QjtBK0JudUpJO0VBQ0UsYUFBQTtFQUNBLG9DQUFBO0VBQ0EsMkJBQUE7QS9CcXVKTjtBK0JqdUpFO0VBQ0UsK0RBQUE7QS9CbXVKSjtBK0IvdEpBO0VBQ0Usa0JBQUE7RUFDQSxjQUFBO0VBQ0EsYUN0RXVCO0VEdUV2QixjQ3RFdUI7RUR1RXZCLGNWL0VPO0FyQml6SlQ7QStCaHVKRTtFQUNFLGtCQUFBO0VBQ0EsY0FBQTtFQUNBLFdBQUE7RUFDQSx5QkFBQTtFQUNBLG1CQUFBO0EvQmt1Sko7QStCOXRKQTtFQUNFLGdCQzdGdUI7RUQ4RnZCLHVCQUFBO0VBQ0EsV1Y5Rk87RVUrRlAsa0JBQUE7RUFDQSx5QlYvRk87RVFhTCxzQkFBQTtBN0JvekpKO0FpQ2wwSkE7RUFDRSxrQkFBQTtFQUNBLHdCQUFBO0VBQ0EsbUJDRXdCO0VERHhCLDZCQUFBO0VKVUUsc0JBQUE7QTdCNHpKSjtBaUNqMEpBO0VBRUUsY0FBQTtBakNtMEpGO0FpQy96SkE7RUFDRSxnQm5CSHFCO0FkcTBKdkI7QWdCbDFKUTtFaUIwQkosd0JBQUE7QWpDNHpKSjtBaUJ0MUpRO0VnQjZCSix1QkFBQTtBakM0ekpKO0FpQ3h6SkU7RUFDRSxrQkFBQTtFQUNBLE1BQUE7RUFPQSx3QkFBQTtFQUNBLGNBQUE7QWpDb3pKSjtBZ0IvMUpRO0VpQnFDRixRQUFBO0FqQzZ6Sk47QWlCbDJKUTtFZ0J3Q0YsT0FBQTtBakM2ekpOO0FpQ2h6SkU7RUV4REEsY0Z5RHdIO0VHcER0SCx5QkhvRHdCO0VFdkQxQixxQkZ1RHVFO0FqQ3F6SnpFO0FtQzEySkU7RUFDRSx5QkFBQTtBbkM0MkpKO0FtQ3oySkU7RUFDRSxjQUFBO0FuQzIySko7QWlDNXpKRTtFRXhEQSxjRnlEd0g7RUdwRHRILHlCSG9Ed0I7RUV2RDFCLHFCRnVEdUU7QWpDaTBKekU7QW1DdDNKRTtFQUNFLHlCQUFBO0FuQ3czSko7QW1DcjNKRTtFQUNFLGNBQUE7QW5DdTNKSjtBaUN4MEpFO0VFeERBLGNGeUR3SDtFR3BEdEgseUJIb0R3QjtFRXZEMUIscUJGdUR1RTtBakM2MEp6RTtBbUNsNEpFO0VBQ0UseUJBQUE7QW5DbzRKSjtBbUNqNEpFO0VBQ0UsY0FBQTtBbkNtNEpKO0FpQ3AxSkU7RUV4REEsY0Z5RHdIO0VHcER0SCx5QkhvRHdCO0VFdkQxQixxQkZ1RHVFO0FqQ3kxSnpFO0FtQzk0SkU7RUFDRSx5QkFBQTtBbkNnNUpKO0FtQzc0SkU7RUFDRSxjQUFBO0FuQys0Sko7QWlDaDJKRTtFRXhEQSxjRnlEd0g7RUdwRHRILHlCSG9Ed0I7RUV2RDFCLHFCRnVEdUU7QWpDcTJKekU7QW1DMTVKRTtFQUNFLHlCQUFBO0FuQzQ1Sko7QW1DejVKRTtFQUNFLGNBQUE7QW5DMjVKSjtBaUM1MkpFO0VFeERBLGNGeUR3SDtFR3BEdEgseUJIb0R3QjtFRXZEMUIscUJGdUR1RTtBakNpM0p6RTtBbUN0NkpFO0VBQ0UseUJBQUE7QW5DdzZKSjtBbUNyNkpFO0VBQ0UsY0FBQTtBbkN1NkpKO0FpQ3gzSkU7RUV4REEsY0Z5RHdIO0VHcER0SCx5QkhvRHdCO0VFdkQxQixxQkZ1RHVFO0FqQzYzSnpFO0FtQ2w3SkU7RUFDRSx5QkFBQTtBbkNvN0pKO0FtQ2o3SkU7RUFDRSxjQUFBO0FuQ203Sko7QWlDcDRKRTtFRXhEQSxjRnlEd0g7RUdwRHRILHlCSG9Ed0I7RUV2RDFCLHFCRnVEdUU7QWpDeTRKekU7QW1DOTdKRTtFQUNFLHlCQUFBO0FuQ2c4Sko7QW1DNzdKRTtFQUNFLGNBQUE7QW5DKzdKSjtBaUNoNUpFO0VFeERBLGNGeUR3SDtFR3BEdEgseUJIb0R3QjtFRXZEMUIscUJGdUR1RTtBakNxNUp6RTtBbUMxOEpFO0VBQ0UseUJBQUE7QW5DNDhKSjtBbUN6OEpFO0VBQ0UsY0FBQTtBbkMyOEpKO0FpQzU1SkU7RUV4REEsY0Z5RHdIO0VHcER0SCx5QkhvRHdCO0VFdkQxQixxQkZ1RHVFO0FqQ2k2SnpFO0FtQ3Q5SkU7RUFDRSx5QkFBQTtBbkN3OUpKO0FtQ3I5SkU7RUFDRSxjQUFBO0FuQ3U5Sko7QWlDeDZKRTtFRXhEQSxjRnlEd0g7RUdwRHRILHlCSG9Ed0I7RUV2RDFCLHFCRnVEdUU7QWpDNjZKekU7QW1DbCtKRTtFQUNFLHlCQUFBO0FuQ28rSko7QW1DaitKRTtFQUNFLGNBQUE7QW5DbStKSjtBaUNwN0pFO0VFeERBLGNGeUR3SDtFR3BEdEgseUJIb0R3QjtFRXZEMUIscUJGdUR1RTtBakN5N0p6RTtBbUM5K0pFO0VBQ0UseUJBQUE7QW5DZy9KSjtBbUM3K0pFO0VBQ0UsY0FBQTtBbkMrK0pKO0FpQ2g4SkU7RUV4REEsY0Z5RHdIO0VHcER0SCx5QkhvRHdCO0VFdkQxQixxQkZ1RHVFO0FqQ3E4SnpFO0FtQzEvSkU7RUFDRSx5QkFBQTtBbkM0L0pKO0FtQ3ovSkU7RUFDRSxjQUFBO0FuQzIvSko7QWlDNThKRTtFRXhEQSxjRnlEd0g7RUdwRHRILHlCSG9Ed0I7RUV2RDFCLHFCRnVEdUU7QWpDaTlKekU7QW1DdGdLRTtFQUNFLHlCQUFBO0FuQ3dnS0o7QW1DcmdLRTtFQUNFLGNBQUE7QW5DdWdLSjtBaUN4OUpFO0VFeERBLGNGeUR3SDtFR3BEdEgseUJIb0R3QjtFRXZEMUIscUJGdUR1RTtBakM2OUp6RTtBbUNsaEtFO0VBQ0UseUJBQUE7QW5Db2hLSjtBbUNqaEtFO0VBQ0UsY0FBQTtBbkNtaEtKO0FpQ3ArSkU7RUV4REEsY0Z5RHdIO0VHcER0SCx5QkhvRHdCO0VFdkQxQixxQkZ1RHVFO0FqQ3krSnpFO0FtQzloS0U7RUFDRSx5QkFBQTtBbkNnaUtKO0FtQzdoS0U7RUFDRSxZQUFBO0FuQytoS0o7QWlDaC9KRTtFRXhEQSxjRnlEd0g7RUdwRHRILHlCSG9Ed0I7RUV2RDFCLHFCRnVEdUU7QWpDcS9KekU7QW1DMWlLRTtFQUNFLHlCQUFBO0FuQzRpS0o7QW1DemlLRTtFQUNFLGNBQUE7QW5DMmlLSjtBaUM1L0pFO0VFeERBLGNGeUR3SDtFR3BEdEgseUJIb0R3QjtFRXZEMUIscUJGdUR1RTtBakNpZ0t6RTtBbUN0aktFO0VBQ0UseUJBQUE7QW5Dd2pLSjtBbUNyaktFO0VBQ0UsY0FBQTtBbkN1aktKO0FpQ3hnS0U7RUV4REEsY0Z5RHdIO0VHcER0SCx5QkhvRHdCO0VFdkQxQixxQkZ1RHVFO0FqQzZnS3pFO0FtQ2xrS0U7RUFDRSx5QkFBQTtBbkNva0tKO0FtQ2prS0U7RUFDRSxjQUFBO0FuQ21rS0o7QWlDcGhLRTtFRXhEQSxjRnlEd0g7RUdwRHRILHlCSG9Ed0I7RUV2RDFCLHFCRnVEdUU7QWpDeWhLekU7QW1DOWtLRTtFQUNFLHlCQUFBO0FuQ2dsS0o7QW1DN2tLRTtFQUNFLGNBQUE7QW5DK2tLSjtBaUNoaUtFO0VFeERBLGNGeUR3SDtFR3BEdEgseUJIb0R3QjtFRXZEMUIscUJGdUR1RTtBakNxaUt6RTtBbUMxbEtFO0VBQ0UseUJBQUE7QW5DNGxLSjtBbUN6bEtFO0VBQ0UsY0FBQTtBbkMybEtKO0FpQzVpS0U7RUV4REEsY0Z5RHdIO0VHcER0SCx5QkhvRHdCO0VFdkQxQixxQkZ1RHVFO0FqQ2lqS3pFO0FtQ3RtS0U7RUFDRSx5QkFBQTtBbkN3bUtKO0FtQ3JtS0U7RUFDRSxjQUFBO0FuQ3VtS0o7QWlDeGpLRTtFRXhEQSxjRnlEd0g7RUdwRHRILHlCSG9Ed0I7RUV2RDFCLHFCRnVEdUU7QWpDNmpLekU7QW1DbG5LRTtFQUNFLHlCQUFBO0FuQ29uS0o7QW1Dam5LRTtFQUNFLGNBQUE7QW5DbW5LSjtBaUNwa0tFO0VFeERBLGNGeUR3SDtFR3BEdEgseUJIb0R3QjtFRXZEMUIscUJGdUR1RTtBakN5a0t6RTtBbUM5bktFO0VBQ0UseUJBQUE7QW5DZ29LSjtBbUM3bktFO0VBQ0UsY0FBQTtBbkMrbktKO0FxQ3pvS0E7RUFDRSxrQkFBQTtFQUNBLG9CQUFBO0VBQ0EsbUJBQUE7RUFDQSx1QkFBQTtFQUNBLG1CQUFBO0VDSkEsV0NJd0I7RURIeEIsWUNHd0I7RURGeEIsaUJBQUE7QXRDaXBLRjtBc0Mvb0tFO0VBQ0UsV0FBQTtFQUNBLFlDRHNCO0F2Q2twSzFCO0FxQy9vS0E7RUFDRSxXQUFBO0VBQ0EsWUFBQTtFQUNBLG1CQUFBO0FyQ2twS0Y7QXFDL29LQTtFQUNFLGtCQUFBO0VBQ0EsU0FBQTtFQUNBLGNBQUE7RUFDQSxzQkFBQTtFQUNBLG1CQUFBO0FyQ2twS0Y7QWdCbHFLUTtFcUJtQkosUUFBQTtBckNrcEtKO0FpQnJxS1E7RW9Cc0JKLE9BQUE7QXJDa3BLSjtBcUM5b0tBO0VDN0JFLFdDQ3dCO0VEQXhCLFlBQUE7RUFDQSxnQkFBQTtBdEMrcUtGO0FzQzdxS0U7RUFDRSxVQ0hzQjtFREl0QixXQ0pzQjtBdkNtcksxQjtBcUNwcEtBO0VDakNFLFdDT3dCO0VETnhCLFlDTXdCO0VETHhCLGlCQUFBO0F0Q3lyS0Y7QXNDdnJLRTtFQUNFLFdDR3NCO0VERnRCLFlDRXNCO0F2Q3VySzFCO0FxQzFwS0E7RUNyQ0UsV0NVd0I7RURUeEIsWUNTd0I7RURSeEIsaUJBQUE7QXRDbXNLRjtBc0Nqc0tFO0VBQ0UsV0NNc0I7RURMdEIsWUNLc0I7QXZDOHJLMUI7QXFDaHFLQTtFQUNFLGFBQUE7QXJDbXFLRjtBcUNqcUtFO0VBQ0UsbUJBQUE7RUFDQSw2QkFBQTtBckNtcUtKO0FxQ2pxS0k7RUFDRSxlQUFBO0FyQ21xS047QXFDL3BLRTtFQUNFLG1CQUFBO0FyQ2lxS0o7QXFDOXBLRTtFQUNFLG1CQUFBO0FyQ2dxS0o7QXFDN3BLRTtFQUNFLG1CQUFBO0FyQytwS0o7QXFDM3BLQTtFQUNFLHNCUDdDa0I7QTlCMnNLcEI7QXFDM3BLQTtFQUNFLGdCQUFBO0FyQzhwS0Y7QXdDanVLQTtFQUNFLHFCQUFBO0VBQ0EscUJBQUE7RXpCaUVFLGNBQUE7RXlCL0RGLGdCMUJRcUI7RTBCUHJCLGNBQUE7RUFDQSxrQkFBQTtFQUNBLG1CQUFBO0VBQ0Esd0JBQUE7RVhLRSxzQkFBQTtFWUZFLHFJRERKO0F4Q291S0Y7QXlDL3RLTTtFRGZOO0lDZ0JRLGdCQUFBO0V6Q2t1S047QUFDRjtBbUJ0dUtFO0VxQkNJLHFCQUFBO0F4Q3d1S047QXdDbnVLRTtFQUNFLGFBQUE7QXhDc3VLSjtBd0NqdUtBO0VBQ0Usa0JBQUE7RUFDQSxTQUFBO0F4Q291S0Y7QXdDN3RLQTtFQUNFLG9CRTNCc0I7RUY0QnRCLG1CRTVCc0I7RWJLcEIsb0JBQUE7QTdCd3ZLSjtBd0N4dEtFO0VHakRBLFdBQUE7RUFDQSx5Qi9Cd1FlO0FacWdLakI7QW1CN3ZLRTtFd0JaSSxXQUFBO0VBQ0EseUJBQUE7QTNDNHdLTjtBMkN6d0tJO0VBRUUsVUFBQTtFQUNBLCtDQUFBO0EzQzB3S047QXdDcnVLRTtFR2pEQSxjQUFBO0VBQ0EseUIvQndRZTtBWmtoS2pCO0FtQjF3S0U7RXdCWkksY0FBQTtFQUNBLHlCQUFBO0EzQ3l4S047QTJDdHhLSTtFQUVFLFVBQUE7RUFDQSxpREFBQTtBM0N1eEtOO0F3Q2x2S0U7RUdqREEsV0FBQTtFQUNBLHlCL0J3UWU7QVoraEtqQjtBbUJ2eEtFO0V3QlpJLFdBQUE7RUFDQSx5QkFBQTtBM0NzeUtOO0EyQ255S0k7RUFFRSxVQUFBO0VBQ0EsK0NBQUE7QTNDb3lLTjtBd0MvdktFO0VHakRBLFdBQUE7RUFDQSxzQi9Cd1FlO0FaNGlLakI7QW1CcHlLRTtFd0JaSSxXQUFBO0VBQ0EseUJBQUE7QTNDbXpLTjtBMkNoektJO0VBRUUsVUFBQTtFQUNBLGdEQUFBO0EzQ2l6S047QXdDNXdLRTtFR2pEQSxjQUFBO0VBQ0EseUIvQndRZTtBWnlqS2pCO0FtQmp6S0U7RXdCWkksY0FBQTtFQUNBLHlCQUFBO0EzQ2cwS047QTJDN3pLSTtFQUVFLFVBQUE7RUFDQSxnREFBQTtBM0M4ektOO0F3Q3p4S0U7RUdqREEsV0FBQTtFQUNBLHlCL0J3UWU7QVpza0tqQjtBbUI5ektFO0V3QlpJLFdBQUE7RUFDQSx5QkFBQTtBM0M2MEtOO0EyQzEwS0k7RUFFRSxVQUFBO0VBQ0EsK0NBQUE7QTNDMjBLTjtBd0N0eUtFO0VHakRBLGNBQUE7RUFDQSx5Qi9Cd1FlO0FabWxLakI7QW1CMzBLRTtFd0JaSSxjQUFBO0VBQ0EseUJBQUE7QTNDMDFLTjtBMkN2MUtJO0VBRUUsVUFBQTtFQUNBLGlEQUFBO0EzQ3cxS047QXdDbnpLRTtFR2pEQSxXQUFBO0VBQ0EseUIvQndRZTtBWmdtS2pCO0FtQngxS0U7RXdCWkksV0FBQTtFQUNBLHlCQUFBO0EzQ3UyS047QTJDcDJLSTtFQUVFLFVBQUE7RUFDQSxnREFBQTtBM0NxMktOO0F3Q2gwS0U7RUdqREEsV0FBQTtFQUNBLHlCL0J3UWU7QVo2bUtqQjtBbUJyMktFO0V3QlpJLFdBQUE7RUFDQSx5QkFBQTtBM0NvM0tOO0EyQ2ozS0k7RUFFRSxVQUFBO0VBQ0EsK0NBQUE7QTNDazNLTjtBd0M3MEtFO0VHakRBLFdBQUE7RUFDQSx5Qi9Cd1FlO0FaMG5LakI7QW1CbDNLRTtFd0JaSSxXQUFBO0VBQ0EseUJBQUE7QTNDaTRLTjtBMkM5M0tJO0VBRUUsVUFBQTtFQUNBLDhDQUFBO0EzQyszS047QXdDMTFLRTtFR2pEQSxXQUFBO0VBQ0EseUIvQndRZTtBWnVvS2pCO0FtQi8zS0U7RXdCWkksV0FBQTtFQUNBLHlCQUFBO0EzQzg0S047QTJDMzRLSTtFQUVFLFVBQUE7RUFDQSxnREFBQTtBM0M0NEtOO0F3Q3YyS0U7RUdqREEsV0FBQTtFQUNBLHlCL0J3UWU7QVpvcEtqQjtBbUI1NEtFO0V3QlpJLFdBQUE7RUFDQSx5QkFBQTtBM0MyNUtOO0EyQ3g1S0k7RUFFRSxVQUFBO0VBQ0EsZ0RBQUE7QTNDeTVLTjtBd0NwM0tFO0VHakRBLGNBQUE7RUFDQSx5Qi9Cd1FlO0FaaXFLakI7QW1CejVLRTtFd0JaSSxjQUFBO0VBQ0EseUJBQUE7QTNDdzZLTjtBMkNyNktJO0VBRUUsVUFBQTtFQUNBLGdEQUFBO0EzQ3M2S047QXdDajRLRTtFR2pEQSxXQUFBO0VBQ0EseUIvQndRZTtBWjhxS2pCO0FtQnQ2S0U7RXdCWkksV0FBQTtFQUNBLHlCQUFBO0EzQ3E3S047QTJDbDdLSTtFQUVFLFVBQUE7RUFDQSxpREFBQTtBM0NtN0tOO0F3Qzk0S0U7RUdqREEsV0FBQTtFQUNBLHlCL0J3UWU7QVoycktqQjtBbUJuN0tFO0V3QlpJLFdBQUE7RUFDQSx5QkFBQTtBM0NrOEtOO0EyQy83S0k7RUFFRSxVQUFBO0VBQ0EsaURBQUE7QTNDZzhLTjtBd0MzNUtFO0VHakRBLFdBQUE7RUFDQSx5Qi9Cd1FlO0Fad3NLakI7QW1CaDhLRTtFd0JaSSxXQUFBO0VBQ0EsdUJBQUE7QTNDKzhLTjtBMkM1OEtJO0VBRUUsVUFBQTtFQUNBLDhDQUFBO0EzQzY4S047QXdDeDZLRTtFR2pEQSxXQUFBO0VBQ0EseUIvQndRZTtBWnF0S2pCO0FtQjc4S0U7RXdCWkksV0FBQTtFQUNBLHlCQUFBO0EzQzQ5S047QTJDejlLSTtFQUVFLFVBQUE7RUFDQSxnREFBQTtBM0MwOUtOO0F3Q3I3S0U7RUdqREEsY0FBQTtFQUNBLHlCL0J3UWU7QVprdUtqQjtBbUIxOUtFO0V3QlpJLGNBQUE7RUFDQSx5QkFBQTtBM0N5K0tOO0EyQ3QrS0k7RUFFRSxVQUFBO0VBQ0EsaURBQUE7QTNDdStLTjtBd0NsOEtFO0VHakRBLFdBQUE7RUFDQSx5Qi9Cd1FlO0FaK3VLakI7QW1CditLRTtFd0JaSSxXQUFBO0VBQ0EseUJBQUE7QTNDcy9LTjtBMkNuL0tJO0VBRUUsVUFBQTtFQUNBLGdEQUFBO0EzQ28vS047QXdDLzhLRTtFR2pEQSxjQUFBO0VBQ0EseUIvQndRZTtBWjR2S2pCO0FtQnAvS0U7RXdCWkksY0FBQTtFQUNBLHlCQUFBO0EzQ21nTE47QTJDaGdMSTtFQUVFLFVBQUE7RUFDQSxnREFBQTtBM0NpZ0xOO0F3QzU5S0U7RUdqREEsY0FBQTtFQUNBLHlCL0J3UWU7QVp5d0tqQjtBbUJqZ0xFO0V3QlpJLGNBQUE7RUFDQSx5QkFBQTtBM0NnaExOO0EyQzdnTEk7RUFFRSxVQUFBO0VBQ0EsK0NBQUE7QTNDOGdMTjtBd0N6K0tFO0VHakRBLFdBQUE7RUFDQSx5Qi9Cd1FlO0Fac3hLakI7QW1COWdMRTtFd0JaSSxXQUFBO0VBQ0EseUJBQUE7QTNDNmhMTjtBMkMxaExJO0VBRUUsVUFBQTtFQUNBLGlEQUFBO0EzQzJoTE47QXdDdC9LRTtFR2pEQSxjQUFBO0VBQ0EseUIvQndRZTtBWm15S2pCO0FtQjNoTEU7RXdCWkksY0FBQTtFQUNBLHlCQUFBO0EzQzBpTE47QTJDdmlMSTtFQUVFLFVBQUE7RUFDQSxpREFBQTtBM0N3aUxOO0F3Q25nTEU7RUdqREEsV0FBQTtFQUNBLHlCL0J3UWU7QVpnektqQjtBbUJ4aUxFO0V3QlpJLFdBQUE7RUFDQSx5QkFBQTtBM0N1akxOO0EyQ3BqTEk7RUFFRSxVQUFBO0VBQ0EsOENBQUE7QTNDcWpMTjtBZ0I5akxRO0U0QkZKLGlCQUFBO0E1Q29rTEo7QWdCbGtMUTtFNEJDSixrQkFBQTtBNUNva0xKO0E0Q2hrTEU7RUFDRSxhQUFBO0E1Q2trTEo7QTRDL2pMRTtFQUNFLG1CQUFBO0E1Q2lrTEo7QTRDOWpMRTtFQUNFLGtCQUFBO0VBQ0EsbUJBQUE7RUFDQSxTQUFBO0VBUUUsY0FBQTtBNUN5akxOO0E0Qy9qTEk7RUFFRSxjdkJqQk87RXVCa0JQLHVCQUFBO0E1Q2drTE47QVl2NUtRO0VnQ3RLRiwrQkFBQTtBNUNna0xOO0E0QzNqTEk7RUFDRSxjdkIzQk87RXVCNEJQLHVCQUFBO0E1QzhqTE47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UWE7RXVDbFFmLHFCdkNrUWU7QVpzZ01qQjtBbUJwd01FO0VBQ0U7SWdDREEsV0FBQTtJZk5BLHlCZUQyRDtJQVMzRCxxQkFUcUc7RW5EaXhNdkc7QUFDRjtBbUR0d01FO0VBRUUsV0FBQTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkcsaURBQUE7QW5EbXdNTjtBbUQ5dk1FO0VBRUUsV0FBQTtFQUNBLHlCdkN3T2E7RXVDdk9iLHFCdkN1T2E7QVp3aE1qQjtBbUR6dk1FO0VBRUUsV0FBQTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QW5Ea3lNN0w7QW1EcnZNSTtFQUtJLGlEQUFBO0FuRG12TVI7QW1EL3VNVztFQUNQLFdBQUE7RUFDQSx5QkF4RCtJO0VBNEQvSSxxQkE1RHlMO0FuRDB5TTdMO0FtRDV1TUk7RUFLSSxpREFBQTtBbkQwdU1SO0FrRGp1TUU7RUMzRUEsV0FBQTtFZkFFLHlCeEJvUWE7RXVDbFFmLHFCdkNrUWU7QVo4aU1qQjtBbUI1eU1FO0VBQ0U7SWdDREEsV0FBQTtJZk5BLHlCZUQyRDtJQVMzRCxxQkFUcUc7RW5EeXpNdkc7QUFDRjtBbUQ5eU1FO0VBRUUsV0FBQTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkcsZ0RBQUE7QW5EMnlNTjtBbUR0eU1FO0VBRUUsV0FBQTtFQUNBLHlCdkN3T2E7RXVDdk9iLHFCdkN1T2E7QVpna01qQjtBbURqeU1FO0VBRUUsV0FBQTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QW5EMDBNN0w7QW1EN3hNSTtFQUtJLGdEQUFBO0FuRDJ4TVI7QW1EdnhNVztFQUNQLFdBQUE7RUFDQSx5QkF4RCtJO0VBNEQvSSxxQkE1RHlMO0FuRGsxTTdMO0FtRHB4TUk7RUFLSSxnREFBQTtBbkRreE1SO0FrRHp3TUU7RUMzRUEsV0FBQTtFZkFFLHlCeEJvUWE7RXVDbFFmLHFCdkNrUWU7QVpzbE1qQjtBbUJwMU1FO0VBQ0U7SWdDREEsV0FBQTtJZk5BLHlCZUQyRDtJQVMzRCxxQkFUcUc7RW5EaTJNdkc7QUFDRjtBbUR0MU1F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RUEsV0FBQTtFZkFFLHlCeEJvUWE7RXVDbFFmLHFCdkNrUWU7QVo4Mk1qQjtBbUI1bU5FO0VBQ0U7SWdDREEsV0FBQTtJZk5BLHlCZUQyRDtJQVMzRCxxQkFUcUc7RW5EeW5Odkc7QUFDRjtBbUQ5bU5FO0VBRUUsV0FBQTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkcsaURBQUE7QW5EMm1OTjtBbUR0bU5FO0VBRUUsV0FBQTtFQUNBLHlCdkN3T2E7RXVDdk9iLHFCdkN1T2E7QVpnNE1qQjtBbURqbU5FO0VBRUUsV0FBQTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QW5EMG9ON0w7QW1EN2xOSTtFQUtJLGlEQUFBO0FuRDJsTlI7QW1EdmxOVztFQUNQLFdBQUE7RUFDQSx5QkF4RCtJO0VBNEQvSSxxQkE1RHlMO0FuRGtwTjdMO0FtRHBsTkk7RUFLSSxpREFBQTtBbkRrbE5SO0FrRHprTkU7RUMzRUEsY0FBQTtFZkFFLHlCeEJvUWE7RXVDbFFmLHFCdkNrUWU7QVpzNU1qQjtBbUJwcE5FO0VBQ0U7SWdDREEsY0FBQTtJZk5BLHlCZUQyRDtJQVMzRCxxQkFUcUc7RW5EaXFOdkc7QUFDRjtBbUR0cE5FO0VBRUUsY0FBQTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkcsZ0RBQUE7QW5EbXBOTjtBbUQ5b05FO0VBRUUsY0FBQTtFQUNBLHlCdkN3T2E7RXVDdk9iLHFCdkN1T2E7QVp3Nk1qQjtBbUR6b05FO0VBRUUsV0FBQTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QW5Ea3JON0w7QW1Ecm9OSTtFQUtJLGdEQUFBO0FuRG1vTlI7QW1EL25OVztFQUNQLFdBQUE7RUFDQSx5QkF4RCtJO0VBNEQvSSxxQkE1RHlMO0FuRDByTjdMO0FtRDVuTkk7RUFLSSxnREFBQTtBbkQwbk5SO0FrRGpuTkU7RUMzRUEsY0FBQTtFZkFFLHlCeEJvUWE7RXVDbFFmLHFCdkNrUWU7QVo4N01qQjtBbUI1ck5FO0VBQ0U7SWdDREEsY0FBQTtJZk5BLHlCZUQyRDtJQVMzRCxxQkFUcUc7RW5EeXNOdkc7QUFDRjtBbUQ5ck5FO0VBRUUsY0FBQTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkcsZ0RBQUE7QW5EMnJOTjtBbUR0ck5FO0VBRUUsY0FBQTtFQUNBLHlCdkN3T2E7RXVDdk9iLHFCdkN1T2E7QVpnOU1qQjtBbURqck5FO0VBRUUsY0FBQTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QW5EMHRON0w7QW1EN3FOSTtFQUtJLGdEQUFBO0FuRDJxTlI7QW1EdnFOVztFQUNQLGNBQUE7RUFDQSx5QkF4RCtJO0VBNEQvSSxxQkE1RHlMO0FuRGt1TjdMO0FtRHBxTkk7RUFLSSxnREFBQTtBbkRrcU5SO0FrRHpwTkU7RUMzRUEsV0FBQTtFZkFFLHlCeEJvUWE7RXVDbFFmLHFCdkNrUWU7QVpzK01qQjtBbUJwdU5FO0VBQ0U7SWdDREEsV0FBQTtJZk5BLHlCZUQyRDtJQVMzRCxxQkFUcUc7RW5EaXZOdkc7QUFDRjtBbUR0dU5FO0VBRUUsV0FBQTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkcsaURBQUE7QW5EbXVOTjtBbUQ5dE5FO0VBRUUsV0FBQTtFQUNBLHlCdkN3T2E7RXVDdk9iLHFCdkN1T2E7QVp3L01qQjtBbUR6dE5FO0VBRUUsV0FBQTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QW5Ea3dON0w7QW1EcnROSTtFQUtJLGlEQUFBO0FuRG10TlI7QW1EL3NOVztFQUNQLFdBQUE7RUFDQSx5QkF4RCtJO0VBNEQvSSxxQkE1RHlMO0FuRDB3TjdMO0FtRDVzTkk7RUFLSSxpREFBQTtBbkQwc05SO0FrRGpzTkU7RUMzRUEsY0FBQTtFZkFFLHlCeEJvUWE7RXVDbFFmLHFCdkNrUWU7QVo4Z05qQjtBbUI1d05FO0VBQ0U7SWdDREEsY0FBQTtJZk5BLHlCZUQyRDtJQVMzRCxxQkFUcUc7RW5EeXhOdkc7QUFDRjtBbUQ5d05FO0VBRUUsY0FBQTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkcsaURBQUE7QW5EMndOTjtBbUR0d05FO0VBRUUsY0FBQTtFQUNBLHlCdkN3T2E7RXVDdk9iLHFCdkN1T2E7QVpnaU5qQjtBbURqd05FO0VBRUUsY0FBQTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QW5EMHlON0w7QW1EN3ZOSTtFQUtJLGlEQUFBO0FuRDJ2TlI7QW1EdnZOVztFQUNQLGNBQUE7RUFDQSx5QkF4RCtJO0VBNEQvSSxxQkE1RHlMO0FuRGt6TjdMO0FtRHB2Tkk7RUFLSSxpREFBQTtBbkRrdk5SO0FrRHp1TkU7RUMzRUEsV0FBQTtFZkFFLHlCeEJvUWE7RXVDbFFmLHFCdkNrUWU7QVpzak5qQjtBbUJwek5FO0VBQ0U7SWdDREEsV0FBQTtJZk5BLHlCZUQyRDtJQVMzRCxxQkFUcUc7RW5EaTBOdkc7QUFDRjtBbUR0ek5FO0VBRUUsV0FBQTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkcsOENBQUE7QW5EbXpOTjtBbUQ5eU5FO0VBRUUsV0FBQTtFQUNBLHlCdkN3T2E7RXVDdk9iLHFCdkN1T2E7QVp3a05qQjtBbUR6eU5FO0VBRUUsV0FBQTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QW5EazFON0w7QW1EcnlOSTtFQUtJLDhDQUFBO0FuRG15TlI7QW1EL3hOVztFQUNQLFdBQUE7RUFDQSx5QkF4RCtJO0VBNEQvSSxxQkE1RHlMO0FuRDAxTjdMO0FtRDV4Tkk7RUFLSSw4Q0FBQTtBbkQweE5SO0FrRDV3TkE7RUFDRSwrQkFBQTtBbEQrd05GO0FrRDd3TkU7RUFDRSxZQUFBO0FsRCt3Tko7QWtEMXdORTtFQ2hCQSxjdkMyTGU7RXVDMUxmLHFCdkMwTGU7QVpvbU5qQjtBbUJsMk5FO0VBQ0U7SWdDc0VBLFdBTGdEO0lBTWhELHlCdkNzTGE7SXVDckxiLHFCdkNxTGE7RVowbU5mO0FBQ0Y7QW1EN3hORTtFQUVFLCtDQUFBO0FuRDh4Tko7QW1EM3hORTtFQUVFLGN2QzJLYTtFdUMxS2IsNkJBQUE7QW5ENHhOSjtBbUR6eE5FO0VBRUUsV0FBQTtFQUNBLHlCdkNvS2E7RXVDbktiLHFCdkNtS2E7QVp1bk5qQjtBbUR4eE5JO0VBS0ksK0NBQUE7QW5Ec3hOUjtBbURseE5XO0VBQ1AsV0FBQTtFQUNBLHlCdkNzSmE7RXVDckpiLHFCdkNxSmE7QVorbk5qQjtBbURseE5JO0VBS0ksK0NBQUE7QW5EZ3hOUjtBa0Q3eU5FO0VDaEJBLGN2QzJMZTtFdUMxTGYscUJ2QzBMZTtBWnVvTmpCO0FtQnI0TkU7RUFDRTtJZ0NzRUEsY0FMZ0Q7SUFNaEQseUJ2Q3NMYTtJdUNyTGIscUJ2Q3FMYTtFWjZvTmY7QUFDRjtBbURoME5FO0VBRUUsaURBQUE7QW5EaTBOSjtBbUQ5ek5FO0VBRUUsY3ZDMkthO0V1QzFLYiw2QkFBQTtBbkQrek5KO0FtRDV6TkU7RUFFRSxjQUFBO0VBQ0EseUJ2Q29LYTtFdUNuS2IscUJ2Q21LYTtBWjBwTmpCO0FtRDN6Tkk7RUFLSSxpREFBQTtBbkR5ek5SO0FtRHJ6Tlc7RUFDUCxjQUFBO0VBQ0EseUJ2Q3NKYTtFdUNySmIscUJ2Q3FKYTtBWmtxTmpCO0FtRHJ6Tkk7RUFLSSxpREFBQTtBbkRtek5SO0FrRGgxTkU7RUNoQkEsY3ZDMkxlO0V1QzFMZixxQnZDMExlO0FaMHFOakI7QW1CeDZORTtFQUNFO0lnQ3NFQSxXQUxnRDtJQU1oRCx5QnZDc0xhO0l1Q3JMYixxQnZDcUxhO0VaZ3JOZjtBQUNGO0FtRG4yTkU7RUFFRSwrQ0FBQTtBbkRvMk5KO0FtRGoyTkU7RUFFRSxjdkMyS2E7RXVDMUtiLDZCQUFBO0FuRGsyTko7QW1ELzFORTtFQUVFLFdBQUE7RUFDQSx5QnZDb0thO0V1Q25LYixxQnZDbUthO0FaNnJOakI7QW1EOTFOSTtFQUtJLCtDQUFBO0FuRDQxTlI7QW1EeDFOVztFQUNQLFdBQUE7RUFDQSx5QnZDc0phO0V1Q3JKYixxQnZDcUphO0FacXNOakI7QW1EeDFOSTtFQUtJLCtDQUFBO0FuRHMxTlI7QWtEbjNORTtFQ2hCQSxXdkMyTGU7RXVDMUxmLGtCdkMwTGU7QVo2c05qQjtBbUIzOE5FO0VBQ0U7SWdDc0VBLFdBTGdEO0lBTWhELHNCdkNzTGE7SXVDckxiLGtCdkNxTGE7RVptdE5mO0FBQ0Y7QW1EdDRORTtFQUVFLGdEQUFBO0FuRHU0Tko7QW1EcDRORTtFQUVFLFd2QzJLYTtFdUMxS2IsNkJBQUE7QW5EcTROSjtBbURsNE5FO0VBRUUsV0FBQTtFQUNBLHNCdkNvS2E7RXVDbktiLGtCdkNtS2E7QVpndU5qQjtBbURqNE5JO0VBS0ksZ0RBQUE7QW5EKzNOUjtBbUQzM05XO0VBQ1AsV0FBQTtFQUNBLHNCdkNzSmE7RXVDckpiLGtCdkNxSmE7QVp3dU5qQjtBbUQzM05JO0VBS0ksZ0RBQUE7QW5EeTNOUjtBa0R0NU5FO0VDaEJBLGN2QzJMZTtFdUMxTGYscUJ2QzBMZTtBWmd2TmpCO0FtQjkrTkU7RUFDRTtJZ0NzRUEsY0FMZ0Q7SUFNaEQseUJ2Q3NMYTtJdUNyTGIscUJ2Q3FMYTtFWnN2TmY7QUFDRjtBbUR6Nk5FO0VBRUUsZ0RBQUE7QW5EMDZOSjtBbUR2Nk5FO0VBRUUsY3ZDMkthO0V1QzFLYiw2QkFBQTtBbkR3Nk5KO0FtRHI2TkU7RUFFRSxjQUFBO0VBQ0EseUJ2Q29LYTtFdUNuS2IscUJ2Q21LYTtBWm13TmpCO0FtRHA2Tkk7RUFLSSxnREFBQTtBbkRrNk5SO0FtRDk1Tlc7RUFDUCxjQUFBO0VBQ0EseUJ2Q3NKYTtFdUNySmIscUJ2Q3FKYTtBWjJ3TmpCO0FtRDk1Tkk7RUFLSSxnREFBQTtBbkQ0NU5SO0FrRHo3TkU7RUNoQkEsY3ZDMkxlO0V1QzFMZixxQnZDMExlO0FabXhOakI7QW1CamhPRTtFQUNFO0lnQ3NFQSxXQUxnRDtJQU1oRCx5QnZDc0xhO0l1Q3JMYixxQnZDcUxhO0VaeXhOZjtBQUNGO0FtRDU4TkU7RUFFRSwrQ0FBQTtBbkQ2OE5KO0FtRDE4TkU7RUFFRSxjdkMyS2E7RXVDMUtiLDZCQUFBO0FuRDI4Tko7QW1EeDhORTtFQUVFLFdBQUE7RUFDQSx5QnZDb0thO0V1Q25LYixxQnZDbUthO0Fac3lOakI7QW1EdjhOSTtFQUtJLCtDQUFBO0FuRHE4TlI7QW1EajhOVztFQUNQLFdBQUE7RUFDQSx5QnZDc0phO0V1Q3JKYixxQnZDcUphO0FaOHlOakI7QW1EajhOSTtFQUtJLCtDQUFBO0FuRCs3TlI7QWtENTlORTtFQ2hCQSxjdkMyTGU7RXVDMUxmLHFCdkMwTGU7QVpzek5qQjtBbUJwak9FO0VBQ0U7SWdDc0VBLGNBTGdEO0lBTWhELHlCdkNzTGE7SXVDckxiLHFCdkNxTGE7RVo0ek5mO0FBQ0Y7QW1ELytORTtFQUVFLGlEQUFBO0FuRGcvTko7QW1ENytORTtFQUVFLGN2QzJLYTtFdUMxS2IsNkJBQUE7QW5EOCtOSjtBbUQzK05FO0VBRUUsY0FBQTtFQUNBLHlCdkNvS2E7RXVDbktiLHFCdkNtS2E7QVp5ME5qQjtBbUQxK05JO0VBS0ksaURBQUE7QW5EdytOUjtBbURwK05XO0VBQ1AsY0FBQTtFQUNBLHlCdkNzSmE7RXVDckpiLHFCdkNxSmE7QVppMU5qQjtBbURwK05JO0VBS0ksaURBQUE7QW5EaytOUjtBa0QvL05FO0VDaEJBLGN2QzJMZTtFdUMxTGYscUJ2QzBMZTtBWnkxTmpCO0FtQnZsT0U7RUFDRTtJZ0NzRUEsV0FMZ0Q7SUFNaEQseUJ2Q3NMYTtJdUNyTGIscUJ2Q3FMYTtFWisxTmY7QUFDRjtBbURsaE9FO0VBRUUsZ0RBQUE7QW5EbWhPSjtBbURoaE9FO0VBRUUsY3ZDMkthO0V1QzFLYiw2QkFBQTtBbkRpaE9KO0FtRDlnT0U7RUFFRSxXQUFBO0VBQ0EseUJ2Q29LYTtFdUNuS2IscUJ2Q21LYTtBWjQyTmpCO0FtRDdnT0k7RUFLSSxnREFBQTtBbkQyZ09SO0FtRHZnT1c7RUFDUCxXQUFBO0VBQ0EseUJ2Q3NKYTtFdUNySmIscUJ2Q3FKYTtBWm8zTmpCO0FtRHZnT0k7RUFLSSxnREFBQTtBbkRxZ09SO0FrRGxpT0U7RUNoQkEsY3ZDMkxlO0V1QzFMZixxQnZDMExlO0FaNDNOakI7QW1CMW5PRTtFQUNFO0lnQ3NFQSxXQUxnRDtJQU1oRCx5QnZDc0xhO0l1Q3JMYixxQnZDcUxhO0VaazROZjtBQUNGO0FtRHJqT0U7RUFFRSwrQ0FBQTtBbkRzak9KO0FtRG5qT0U7RUFFRSxjdkMyS2E7RXVDMUtiLDZCQUFBO0FuRG9qT0o7QW1EampPRTtFQUVFLFdBQUE7RUFDQSx5QnZDb0thO0V1Q25LYixxQnZDbUthO0FaKzROakI7QW1EaGpPSTtFQUtJLCtDQUFBO0FuRDhpT1I7QW1EMWlPVztFQUNQLFdBQUE7RUFDQSx5QnZDc0phO0V1Q3JKYixxQnZDcUphO0FadTVOakI7QW1EMWlPSTtFQUtJLCtDQUFBO0FuRHdpT1I7QWtEcmtPRTtFQ2hCQSxjdkMyTGU7RXVDMUxmLHFCdkMwTGU7QVorNU5qQjtBbUI3cE9FO0VBQ0U7SWdDc0VBLFdBTGdEO0lBTWhELHlCdkNzTGE7SXVDckxiLHFCdkNxTGE7RVpxNk5mO0FBQ0Y7QW1EeGxPRTtFQUVFLDhDQUFBO0FuRHlsT0o7QW1EdGxPRTtFQUVFLGN2QzJLYTtFdUMxS2IsNkJBQUE7QW5EdWxPSjtBbURwbE9FO0VBRUUsV0FBQTtFQUNBLHlCdkNvS2E7RXVDbktiLHFCdkNtS2E7QVprN05qQjtBbURubE9JO0VBS0ksOENBQUE7QW5EaWxPUjtBbUQ3a09XO0VBQ1AsV0FBQTtFQUNBLHlCdkNzSmE7RXVDckpiLHFCdkNxSmE7QVowN05qQjtBbUQ3a09JO0VBS0ksOENBQUE7QW5EMmtPUjtBa0R4bU9FO0VDaEJBLGN2QzJMZTtFdUMxTGYscUJ2QzBMZTtBWms4TmpCO0FtQmhzT0U7RUFDRTtJZ0NzRUEsV0FMZ0Q7SUFNaEQseUJ2Q3NMYTtJdUNyTGIscUJ2Q3FMYTtFWnc4TmY7QUFDRjtBbUQzbk9FO0VBRUUsZ0RBQUE7QW5ENG5PSjtBbUR6bk9FO0VBRUUsY3ZDMkthO0V1QzFLYiw2QkFBQTtBbkQwbk9KO0FtRHZuT0U7RUFFRSxXQUFBO0VBQ0EseUJ2Q29LYTtFdUNuS2IscUJ2Q21LYTtBWnE5TmpCO0FtRHRuT0k7RUFLSSxnREFBQTtBbkRvbk9SO0FtRGhuT1c7RUFDUCxXQUFBO0VBQ0EseUJ2Q3NKYTtFdUNySmIscUJ2Q3FKYTtBWjY5TmpCO0FtRGhuT0k7RUFLSSxnREFBQTtBbkQ4bU9SO0FrRDNvT0U7RUNoQkEsY3ZDMkxlO0V1QzFMZixxQnZDMExlO0FacStOakI7QW1CbnVPRTtFQUNFO0lnQ3NFQSxXQUxnRDtJQU1oRCx5QnZDc0xhO0l1Q3JMYixxQnZDcUxhO0VaMitOZjtBQUNGO0FtRDlwT0U7RUFFRSxnREFBQTtBbkQrcE9KO0FtRDVwT0U7RUFFRSxjdkMyS2E7RXVDMUtiLDZCQUFBO0FuRDZwT0o7QW1EMXBPRTtFQUVFLFdBQUE7RUFDQSx5QnZDb0thO0V1Q25LYixxQnZDbUthO0Fady9OakI7QW1EenBPSTtFQUtJLGdEQUFBO0FuRHVwT1I7QW1EbnBPVztFQUNQLFdBQUE7RUFDQSx5QnZDc0phO0V1Q3JKYixxQnZDcUphO0FaZ2dPakI7QW1EbnBPSTtFQUtJLGdEQUFBO0FuRGlwT1I7QWtEOXFPRTtFQ2hCQSxjdkMyTGU7RXVDMUxmLHFCdkMwTGU7QVp3Z09qQjtBbUJ0d09FO0VBQ0U7SWdDc0VBLGNBTGdEO0lBTWhELHlCdkNzTGE7SXVDckxiLHFCdkNxTGE7RVo4Z09mO0FBQ0Y7QW1EanNPRTtFQUVFLGdEQUFBO0FuRGtzT0o7QW1EL3JPRTtFQUVFLGN2QzJLYTtFdUMxS2IsNkJBQUE7QW5EZ3NPSjtBbUQ3ck9FO0VBRUUsY0FBQTtFQUNBLHlCdkNvS2E7RXVDbktiLHFCdkNtS2E7QVoyaE9qQjtBbUQ1ck9JO0VBS0ksZ0RBQUE7QW5EMHJPUjtBbUR0ck9XO0VBQ1AsY0FBQTtFQUNBLHlCdkNzSmE7RXVDckpiLHFCdkNxSmE7QVptaU9qQjtBbUR0ck9JO0VBS0ksZ0RBQUE7QW5Eb3JPUjtBa0RqdE9FO0VDaEJBLGN2QzJMZTtFdUMxTGYscUJ2QzBMZTtBWjJpT2pCO0FtQnp5T0U7RUFDRTtJZ0NzRUEsV0FMZ0Q7SUFNaEQseUJ2Q3NMYTtJdUNyTGIscUJ2Q3FMYTtFWmlqT2Y7QUFDRjtBbURwdU9FO0VBRUUsaURBQUE7QW5EcXVPSjtBbURsdU9FO0VBRUUsY3ZDMkthO0V1QzFLYiw2QkFBQTtBbkRtdU9KO0FtRGh1T0U7RUFFRSxXQUFBO0VBQ0EseUJ2Q29LYTtFdUNuS2IscUJ2Q21LYTtBWjhqT2pCO0FtRC90T0k7RUFLSSxpREFBQTtBbkQ2dE9SO0FtRHp0T1c7RUFDUCxXQUFBO0VBQ0EseUJ2Q3NKYTtFdUNySmIscUJ2Q3FKYTtBWnNrT2pCO0FtRHp0T0k7RUFLSSxpREFBQTtBbkR1dE9SO0FrRHB2T0U7RUNoQkEsY3ZDMkxlO0V1QzFMZixxQnZDMExlO0FaOGtPakI7QW1CNTBPRTtFQUNFO0lnQ3NFQSxXQUxnRDtJQU1oRCx5QnZDc0xhO0l1Q3JMYixxQnZDcUxhO0Vab2xPZjtBQUNGO0FtRHZ3T0U7RUFFRSxpREFBQTtBbkR3d09KO0FtRHJ3T0U7RUFFRSxjdkMyS2E7RXVDMUtiLDZCQUFBO0FuRHN3T0o7QW1EbndPRTtFQUVFLFdBQUE7RUFDQSx5QnZDb0thO0V1Q25LYixxQnZDbUthO0FaaW1PakI7QW1EbHdPSTtFQUtJLGlEQUFBO0FuRGd3T1I7QW1ENXZPVztFQUNQLFdBQUE7RUFDQSx5QnZDc0phO0V1Q3JKYixxQnZDcUphO0FaeW1PakI7QW1ENXZPSTtFQUtJLGlEQUFBO0FuRDB2T1I7QWtEdnhPRTtFQ2hCQSxjdkMyTGU7RXVDMUxmLHFCdkMwTGU7QVppbk9qQjtBbUIvMk9FO0VBQ0U7SWdDc0VBLFdBTGdEO0lBTWhELHlCdkNzTGE7SXVDckxiLHFCdkNxTGE7RVp1bk9mO0FBQ0Y7QW1EMXlPRTtFQUVFLDhDQUFBO0FuRDJ5T0o7QW1EeHlPRTtFQUVFLGN2QzJLYTtFdUMxS2IsNkJBQUE7QW5EeXlPSjtBbUR0eU9FO0VBRUUsV0FBQTtFQUNBLHlCdkNvS2E7RXVDbktiLHFCdkNtS2E7QVpvb09qQjtBbURyeU9JO0VBS0ksOENBQUE7QW5EbXlPUjtBbUQveE9XO0VBQ1AsV0FBQTtFQUNBLHlCdkNzSmE7RXVDckpiLHFCdkNxSmE7QVo0b09qQjtBbUQveE9JO0VBS0ksOENBQUE7QW5ENnhPUjtBa0Qxek9FO0VDaEJBLGN2QzJMZTtFdUMxTGYscUJ2QzBMZTtBWm9wT2pCO0FtQmw1T0U7RUFDRTtJZ0NzRUEsV0FMZ0Q7SUFNaEQseUJ2Q3NMYTtJdUNyTGIscUJ2Q3FMYTtFWjBwT2Y7QUFDRjtBbUQ3ME9FO0VBRUUsZ0RBQUE7QW5EODBPSjtBbUQzME9FO0VBRUUsY3ZDMkthO0V1QzFLYiw2QkFBQTtBbkQ0ME9KO0FtRHowT0U7RUFFRSxXQUFBO0VBQ0EseUJ2Q29LYTtFdUNuS2IscUJ2Q21LYTtBWnVxT2pCO0FtRHgwT0k7RUFLSSxnREFBQTtBbkRzME9SO0FtRGwwT1c7RUFDUCxXQUFBO0VBQ0EseUJ2Q3NKYTtFdUNySmIscUJ2Q3FKYTtBWitxT2pCO0FtRGwwT0k7RUFLSSxnREFBQTtBbkRnME9SO0FrRDcxT0U7RUNoQkEsY3ZDMkxlO0V1QzFMZixxQnZDMExlO0FadXJPakI7QW1CcjdPRTtFQUNFO0lnQ3NFQSxjQUxnRDtJQU1oRCx5QnZDc0xhO0l1Q3JMYixxQnZDcUxhO0VaNnJPZjtBQUNGO0FtRGgzT0U7RUFFRSxpREFBQTtBbkRpM09KO0FtRDkyT0U7RUFFRSxjdkMyS2E7RXVDMUtiLDZCQUFBO0FuRCsyT0o7QW1ENTJPRTtFQUVFLGNBQUE7RUFDQSx5QnZDb0thO0V1Q25LYixxQnZDbUthO0FaMHNPakI7QW1EMzJPSTtFQUtJLGlEQUFBO0FuRHkyT1I7QW1EcjJPVztFQUNQLGNBQUE7RUFDQSx5QnZDc0phO0V1Q3JKYixxQnZDcUphO0Faa3RPakI7QW1EcjJPSTtFQUtJLGlEQUFBO0FuRG0yT1I7QWtEaDRPRTtFQ2hCQSxjdkMyTGU7RXVDMUxmLHFCdkMwTGU7QVowdE9qQjtBbUJ4OU9FO0VBQ0U7SWdDc0VBLFdBTGdEO0lBTWhELHlCdkNzTGE7SXVDckxiLHFCdkNxTGE7RVpndU9mO0FBQ0Y7QW1EbjVPRTtFQUVFLGdEQUFBO0FuRG81T0o7QW1EajVPRTtFQUVFLGN2QzJLYTtFdUMxS2IsNkJBQUE7QW5EazVPSjtBbUQvNE9FO0VBRUUsV0FBQTtFQUNBLHlCdkNvS2E7RXVDbktiLHFCdkNtS2E7QVo2dU9qQjtBbUQ5NE9JO0VBS0ksZ0RBQUE7QW5ENDRPUjtBbUR4NE9XO0VBQ1AsV0FBQTtFQUNBLHlCdkNzSmE7RXVDckpiLHFCdkNxSmE7QVpxdk9qQjtBbUR4NE9JO0VBS0ksZ0RBQUE7QW5EczRPUjtBa0RuNk9FO0VDaEJBLGN2QzJMZTtFdUMxTGYscUJ2QzBMZTtBWjZ2T2pCO0FtQjMvT0U7RUFDRTtJZ0NzRUEsY0FMZ0Q7SUFNaEQseUJ2Q3NMYTtJdUNyTGIscUJ2Q3FMYTtFWm13T2Y7QUFDRjtBbUR0N09FO0VBRUUsZ0RBQUE7QW5EdTdPSjtBbURwN09FO0VBRUUsY3ZDMkthO0V1QzFLYiw2QkFBQTtBbkRxN09KO0FtRGw3T0U7RUFFRSxjQUFBO0VBQ0EseUJ2Q29LYTtFdUNuS2IscUJ2Q21LYTtBWmd4T2pCO0FtRGo3T0k7RUFLSSxnREFBQTtBbkQrNk9SO0FtRDM2T1c7RUFDUCxjQUFBO0VBQ0EseUJ2Q3NKYTtFdUNySmIscUJ2Q3FKYTtBWnd4T2pCO0FtRDM2T0k7RUFLSSxnREFBQTtBbkR5Nk9SO0FrRHQ4T0U7RUNoQkEsY3ZDMkxlO0V1QzFMZixxQnZDMExlO0FaZ3lPakI7QW1COWhQRTtFQUNFO0lnQ3NFQSxjQUxnRDtJQU1oRCx5QnZDc0xhO0l1Q3JMYixxQnZDcUxhO0Vac3lPZjtBQUNGO0FtRHo5T0U7RUFFRSwrQ0FBQTtBbkQwOU9KO0FtRHY5T0U7RUFFRSxjdkMyS2E7RXVDMUtiLDZCQUFBO0FuRHc5T0o7QW1EcjlPRTtFQUVFLGNBQUE7RUFDQSx5QnZDb0thO0V1Q25LYixxQnZDbUthO0FabXpPakI7QW1EcDlPSTtFQUtJLCtDQUFBO0FuRGs5T1I7QW1EOThPVztFQUNQLGNBQUE7RUFDQSx5QnZDc0phO0V1Q3JKYixxQnZDcUphO0FaMnpPakI7QW1EOThPSTtFQUtJLCtDQUFBO0FuRDQ4T1I7QWtEeitPRTtFQ2hCQSxjdkMyTGU7RXVDMUxmLHFCdkMwTGU7QVptME9qQjtBbUJqa1BFO0VBQ0U7SWdDc0VBLFdBTGdEO0lBTWhELHlCdkNzTGE7SXVDckxiLHFCdkNxTGE7RVp5ME9mO0FBQ0Y7QW1ENS9PRTtFQUVFLGlEQUFBO0FuRDYvT0o7QW1EMS9PRTtFQUVFLGN2QzJLYTtFdUMxS2IsNkJBQUE7QW5EMi9PSjtBbUR4L09FO0VBRUUsV0FBQTtFQUNBLHlCdkNvS2E7RXVDbktiLHFCdkNtS2E7QVpzMU9qQjtBbUR2L09JO0VBS0ksaURBQUE7QW5EcS9PUjtBbURqL09XO0VBQ1AsV0FBQTtFQUNBLHlCdkNzSmE7RXVDckpiLHFCdkNxSmE7QVo4MU9qQjtBbURqL09JO0VBS0ksaURBQUE7QW5EKytPUjtBa0Q1Z1BFO0VDaEJBLGN2QzJMZTtFdUMxTGYscUJ2QzBMZTtBWnMyT2pCO0FtQnBtUEU7RUFDRTtJZ0NzRUEsY0FMZ0Q7SUFNaEQseUJ2Q3NMYTtJdUNyTGIscUJ2Q3FMYTtFWjQyT2Y7QUFDRjtBbUQvaFBFO0VBRUUsaURBQUE7QW5EZ2lQSjtBbUQ3aFBFO0VBRUUsY3ZDMkthO0V1QzFLYiw2QkFBQTtBbkQ4aFBKO0FtRDNoUEU7RUFFRSxjQUFBO0VBQ0EseUJ2Q29LYTtFdUNuS2IscUJ2Q21LYTtBWnkzT2pCO0FtRDFoUEk7RUFLSSxpREFBQTtBbkR3aFBSO0FtRHBoUFc7RUFDUCxjQUFBO0VBQ0EseUJ2Q3NKYTtFdUNySmIscUJ2Q3FKYTtBWmk0T2pCO0FtRHBoUEk7RUFLSSxpREFBQTtBbkRraFBSO0FrRC9pUEU7RUNoQkEsY3ZDMkxlO0V1QzFMZixxQnZDMExlO0FaeTRPakI7QW1Cdm9QRTtFQUNFO0lnQ3NFQSxXQUxnRDtJQU1oRCx5QnZDc0xhO0l1Q3JMYixxQnZDcUxhO0VaKzRPZjtBQUNGO0FtRGxrUEU7RUFFRSw4Q0FBQTtBbkRta1BKO0FtRGhrUEU7RUFFRSxjdkMyS2E7RXVDMUtiLDZCQUFBO0FuRGlrUEo7QW1EOWpQRTtFQUVFLFdBQUE7RUFDQSx5QnZDb0thO0V1Q25LYixxQnZDbUthO0FaNDVPakI7QW1EN2pQSTtFQUtJLDhDQUFBO0FuRDJqUFI7QW1EdmpQVztFQUNQLFdBQUE7RUFDQSx5QnZDc0phO0V1Q3JKYixxQnZDcUphO0FabzZPakI7QW1EdmpQSTtFQUtJLDhDQUFBO0FuRHFqUFI7QWtEdmtQQTtFQUNFLGdCcEMzRnFCO0VvQzRGckIsY2hDakd5QztFZ0NrR3pDLHFCaEN6R3lDO0FsQm1yUDNDO0FtQjNxUEU7RUFDRTtJK0JtR0EsY2hDcEd1QztJZ0NxR3ZDLDBCaEM1R3VDO0VsQnVyUHpDO0FBQ0Y7QWtEemtQRTtFQUVFLDBCaENqSHVDO0FsQjJyUDNDO0FrRHZrUEU7RUFFRSxjN0I5R1M7RTZCK0dULG9CQUFBO0FsRHdrUEo7QWtEN2pQQTtFQ0hFLG9CQUFBO0VwQ0xJLHFCQXRDYTtFb0M2Q2pCLGdCckJoSWdCO0VEWWQscUJBQUE7QTdCeXJQSjtBbURqa1BFOzs7RUFFRSxpQnJDakljO0VxQ2tJZCxrQnJDbEljO0VxQ21JZCxzQkFBQTtBbkRva1BKO0FrRHZrUEE7RUNQRSx1QkFBQTtFcENMSSxzQkF0Q2E7RW9DNkNqQixnQnJCL0hnQjtFRFdkLHFCQUFBO0E3QnVzUEo7QW1EL2tQRTs7O0VBRUUsa0JyQ2hJYztFcUNpSWQsbUJyQ2pJYztFcUNrSWQsdUJBQUE7QW5Ea2xQSjtBa0Q1a1BBO0VBQ0UsY0FBQTtFQUNBLFdBQUE7QWxEK2tQRjtBa0Q1a1BFO0VBQ0Usa0I1QjVGa0I7QXRCMHFQdEI7QWtEdGtQRTs7O0VBQ0UsV0FBQTtBbEQya1BKO0FrRHZrUEE7RUFDRSxtQkFBQTtBbEQwa1BGO0FrRHZrUEE7RUFDRSxnQkFBQTtBbEQwa1BGO0FrRGxrUEU7RUMvQkEsY3ZDcUhlO0V1Q3BIZiw2QkFBQTtFQUNBLHNCQUFBO0VBQ0EseUJBQUE7QW5EcW1QRjtBbURubVBFO0VBQ0UsV0FQOEM7RUFROUMseUJ2QzhHYTtFdUM3R2IscUJ2QzZHYTtBWncvT2pCO0FtRGxtUEU7RUFFRSwrQ0FBQTtBbkRtbVBKO0FtRGhtUEU7RUFFRSxjdkNtR2E7RXVDbEdiLDZCQUFBO0VBQ0EseUJBQUE7QW5EaW1QSjtBbUQ5bFBFO0VBRUUsV0FBQTtFQUNBLHlCdkMyRmE7RXVDMUZiLHFCdkMwRmE7QVpxZ1BqQjtBbUQ3bFBJO0VBS0ksK0NBQUE7QW5EMmxQUjtBbUR2bFBXO0VBQ1AsV0FBQTtFQUNBLHlCdkM2RWE7RXVDNUViLHFCdkM0RWE7QVo2Z1BqQjtBbUR2bFBJO0VBS0ksK0NBQUE7QW5EcWxQUjtBa0R0bVBFO0VDL0JBLGN2Q3FIZTtFdUNwSGYsNkJBQUE7RUFDQSxzQkFBQTtFQUNBLHlCQUFBO0FuRHlvUEY7QW1Edm9QRTtFQUNFLGNBUDhDO0VBUTlDLHlCdkM4R2E7RXVDN0diLHFCdkM2R2E7QVo0aFBqQjtBbUR0b1BFO0VBRUUsaURBQUE7QW5EdW9QSjtBbURwb1BFO0VBRUUsY3ZDbUdhO0V1Q2xHYiw2QkFBQTtFQUNBLHlCQUFBO0FuRHFvUEo7QW1EbG9QRTtFQUVFLGNBQUE7RUFDQSx5QnZDMkZhO0V1QzFGYixxQnZDMEZhO0FaeWlQakI7QW1Eam9QSTtFQUtJLGlEQUFBO0FuRCtuUFI7QW1EM25QVztFQUNQLGNBQUE7RUFDQSx5QnZDNkVhO0V1QzVFYixxQnZDNEVhO0FaaWpQakI7QW1EM25QSTtFQUtJLGlEQUFBO0FuRHluUFI7QWtEMW9QRTtFQy9CQSxjdkNxSGU7RXVDcEhmLDZCQUFBO0VBQ0Esc0JBQUE7RUFDQSx5QkFBQTtBbkQ2cVBGO0FtRDNxUEU7RUFDRSxXQVA4QztFQVE5Qyx5QnZDOEdhO0V1QzdHYixxQnZDNkdhO0FaZ2tQakI7QW1EMXFQRTtFQUVFLCtDQUFBO0FuRDJxUEo7QW1EeHFQRTtFQUVFLGN2Q21HYTtFdUNsR2IsNkJBQUE7RUFDQSx5QkFBQTtBbkR5cVBKO0FtRHRxUEU7RUFFRSxXQUFBO0VBQ0EseUJ2QzJGYTtFdUMxRmIscUJ2QzBGYTtBWjZrUGpCO0FtRHJxUEk7RUFLSSwrQ0FBQTtBbkRtcVBSO0FtRC9wUFc7RUFDUCxXQUFBO0VBQ0EseUJ2QzZFYTtFdUM1RWIscUJ2QzRFYTtBWnFsUGpCO0FtRC9wUEk7RUFLSSwrQ0FBQTtBbkQ2cFBSO0FrRDlxUEU7RUMvQkEsV3ZDcUhlO0V1Q3BIZiw2QkFBQTtFQUNBLHNCQUFBO0VBQ0EseUJBQUE7QW5EaXRQRjtBbUQvc1BFO0VBQ0UsV0FQOEM7RUFROUMsc0J2QzhHYTtFdUM3R2Isa0J2QzZHYTtBWm9tUGpCO0FtRDlzUEU7RUFFRSxnREFBQTtBbkQrc1BKO0FtRDVzUEU7RUFFRSxXdkNtR2E7RXVDbEdiLDZCQUFBO0VBQ0EseUJBQUE7QW5ENnNQSjtBbUQxc1BFO0VBRUUsV0FBQTtFQUNBLHNCdkMyRmE7RXVDMUZiLGtCdkMwRmE7QVppblBqQjtBbUR6c1BJO0VBS0ksZ0RBQUE7QW5EdXNQUjtBbURuc1BXO0VBQ1AsV0FBQTtFQUNBLHNCdkM2RWE7RXVDNUViLGtCdkM0RWE7QVp5blBqQjtBbURuc1BJO0VBS0ksZ0RBQUE7QW5EaXNQUjtBa0RsdFBFO0VDL0JBLGN2Q3FIZTtFdUNwSGYsNkJBQUE7RUFDQSxzQkFBQTtFQUNBLHlCQUFBO0FuRHF2UEY7QW1EbnZQRTtFQUNFLGNBUDhDO0VBUTlDLHlCdkM4R2E7RXVDN0diLHFCdkM2R2E7QVp3b1BqQjtBbURsdlBFO0VBRUUsZ0RBQUE7QW5EbXZQSjtBbURodlBFO0VBRUUsY3ZDbUdhO0V1Q2xHYiw2QkFBQTtFQUNBLHlCQUFBO0FuRGl2UEo7QW1EOXVQRTtFQUVFLGNBQUE7RUFDQSx5QnZDMkZhO0V1QzFGYixxQnZDMEZhO0FacXBQakI7QW1EN3VQSTtFQUtJLGdEQUFBO0FuRDJ1UFI7QW1EdnVQVztFQUNQLGNBQUE7RUFDQSx5QnZDNkVhO0V1QzVFYixxQnZDNEVhO0FaNnBQakI7QW1EdnVQSTtFQUtJLGdEQUFBO0FuRHF1UFI7QWtEdHZQRTtFQy9CQSxjdkNxSGU7RXVDcEhmLDZCQUFBO0VBQ0Esc0JBQUE7RUFDQSx5QkFBQTtBbkR5eFBGO0FtRHZ4UEU7RUFDRSxXQVA4QztFQVE5Qyx5QnZDOEdhO0V1QzdHYixxQnZDNkdhO0FaNHFQakI7QW1EdHhQRTtFQUVFLCtDQUFBO0FuRHV4UEo7QW1EcHhQRTtFQUVFLGN2Q21HYTtFdUNsR2IsNkJBQUE7RUFDQSx5QkFBQTtBbkRxeFBKO0FtRGx4UEU7RUFFRSxXQUFBO0VBQ0EseUJ2QzJGYTtFdUMxRmIscUJ2QzBGYTtBWnlyUGpCO0FtRGp4UEk7RUFLSSwrQ0FBQTtBbkQrd1BSO0FtRDN3UFc7RUFDUCxXQUFBO0VBQ0EseUJ2QzZFYTtFdUM1RWIscUJ2QzRFYTtBWmlzUGpCO0FtRDN3UEk7RUFLSSwrQ0FBQTtBbkR5d1BSO0FrRDF4UEU7RUMvQkEsY3ZDcUhlO0V1Q3BIZiw2QkFBQTtFQUNBLHNCQUFBO0VBQ0EseUJBQUE7QW5ENnpQRjtBbUQzelBFO0VBQ0UsY0FQOEM7RUFROUMseUJ2QzhHYTtFdUM3R2IscUJ2QzZHYTtBWmd0UGpCO0FtRDF6UEU7RUFFRSxpREFBQTtBbkQyelBKO0FtRHh6UEU7RUFFRSxjdkNtR2E7RXVDbEdiLDZCQUFBO0VBQ0EseUJBQUE7QW5EeXpQSjtBbUR0elBFO0VBRUUsY0FBQTtFQUNBLHlCdkMyRmE7RXVDMUZiLHFCdkMwRmE7QVo2dFBqQjtBbURyelBJO0VBS0ksaURBQUE7QW5EbXpQUjtBbUQveVBXO0VBQ1AsY0FBQTtFQUNBLHlCdkM2RWE7RXVDNUViLHFCdkM0RWE7QVpxdVBqQjtBbUQveVBJO0VBS0ksaURBQUE7QW5ENnlQUjtBa0Q5elBFO0VDL0JBLGN2Q3FIZTtFdUNwSGYsNkJBQUE7RUFDQSxzQkFBQTtFQUNBLHlCQUFBO0FuRGkyUEY7QW1ELzFQRTtFQUNFLFdBUDhDO0VBUTlDLHlCdkM4R2E7RXVDN0diLHFCdkM2R2E7QVpvdlBqQjtBbUQ5MVBFO0VBRUUsZ0RBQUE7QW5EKzFQSjtBbUQ1MVBFO0VBRUUsY3ZDbUdhO0V1Q2xHYiw2QkFBQTtFQUNBLHlCQUFBO0FuRDYxUEo7QW1EMTFQRTtFQUVFLFdBQUE7RUFDQSx5QnZDMkZhO0V1QzFGYixxQnZDMEZhO0FaaXdQakI7QW1EejFQSTtFQUtJLGdEQUFBO0FuRHUxUFI7QW1EbjFQVztFQUNQLFdBQUE7RUFDQSx5QnZDNkVhO0V1QzVFYixxQnZDNEVhO0FaeXdQakI7QW1EbjFQSTtFQUtJLGdEQUFBO0FuRGkxUFI7QWtEbDJQRTtFQy9CQSxjdkNxSGU7RXVDcEhmLDZCQUFBO0VBQ0Esc0JBQUE7RUFDQSx5QkFBQTtBbkRxNFBGO0FtRG40UEU7RUFDRSxXQVA4QztFQVE5Qyx5QnZDOEdhO0V1QzdHYixxQnZDNkdhO0Fad3hQakI7QW1EbDRQRTtFQUVFLCtDQUFBO0FuRG00UEo7QW1EaDRQRTtFQUVFLGN2Q21HYTtFdUNsR2IsNkJBQUE7RUFDQSx5QkFBQTtBbkRpNFBKO0FtRDkzUEU7RUFFRSxXQUFBO0VBQ0EseUJ2QzJGYTtFdUMxRmIscUJ2QzBGYTtBWnF5UGpCO0FtRDczUEk7RUFLSSwrQ0FBQTtBbkQyM1BSO0FtRHYzUFc7RUFDUCxXQUFBO0VBQ0EseUJ2QzZFYTtFdUM1RWIscUJ2QzRFYTtBWjZ5UGpCO0FtRHYzUEk7RUFLSSwrQ0FBQTtBbkRxM1BSO0FrRHQ0UEU7RUMvQkEsY3ZDcUhlO0V1Q3BIZiw2QkFBQTtFQUNBLHNCQUFBO0VBQ0EseUJBQUE7QW5EeTZQRjtBbUR2NlBFO0VBQ0UsV0FQOEM7RUFROUMseUJ2QzhHYTtFdUM3R2IscUJ2QzZHYTtBWjR6UGpCO0FtRHQ2UEU7RUFFRSw4Q0FBQTtBbkR1NlBKO0FtRHA2UEU7RUFFRSxjdkNtR2E7RXVDbEdiLDZCQUFBO0VBQ0EseUJBQUE7QW5EcTZQSjtBbURsNlBFO0VBRUUsV0FBQTtFQUNBLHlCdkMyRmE7RXVDMUZiLHFCdkMwRmE7QVp5MFBqQjtBbURqNlBJO0VBS0ksOENBQUE7QW5EKzVQUjtBbUQzNVBXO0VBQ1AsV0FBQTtFQUNBLHlCdkM2RWE7RXVDNUViLHFCdkM0RWE7QVppMVBqQjtBbUQzNVBJO0VBS0ksOENBQUE7QW5EeTVQUjtBa0QxNlBFO0VDL0JBLGN2Q3FIZTtFdUNwSGYsNkJBQUE7RUFDQSxzQkFBQTtFQUNBLHlCQUFBO0FuRDY4UEY7QW1EMzhQRTtFQUNFLFdBUDhDO0VBUTlDLHlCdkM4R2E7RXVDN0diLHFCdkM2R2E7QVpnMlBqQjtBbUQxOFBFO0VBRUUsZ0RBQUE7QW5EMjhQSjtBbUR4OFBFO0VBRUUsY3ZDbUdhO0V1Q2xHYiw2QkFBQTtFQUNBLHlCQUFBO0FuRHk4UEo7QW1EdDhQRTtFQUVFLFdBQUE7RUFDQSx5QnZDMkZhO0V1QzFGYixxQnZDMEZhO0FaNjJQakI7QW1EcjhQSTtFQUtJLGdEQUFBO0FuRG04UFI7QW1ELzdQVztFQUNQLFdBQUE7RUFDQSx5QnZDNkVhO0V1QzVFYixxQnZDNEVhO0FacTNQakI7QW1ELzdQSTtFQUtJLGdEQUFBO0FuRDY3UFI7QWtEOThQRTtFQy9CQSxjdkNxSGU7RXVDcEhmLDZCQUFBO0VBQ0Esc0JBQUE7RUFDQSx5QkFBQTtBbkRpL1BGO0FtRC8rUEU7RUFDRSxXQVA4QztFQVE5Qyx5QnZDOEdhO0V1QzdHYixxQnZDNkdhO0FabzRQakI7QW1EOStQRTtFQUVFLGdEQUFBO0FuRCsrUEo7QW1ENStQRTtFQUVFLGN2Q21HYTtFdUNsR2IsNkJBQUE7RUFDQSx5QkFBQTtBbkQ2K1BKO0FtRDErUEU7RUFFRSxXQUFBO0VBQ0EseUJ2QzJGYTtFdUMxRmIscUJ2QzBGYTtBWmk1UGpCO0FtRHorUEk7RUFLSSxnREFBQTtBbkR1K1BSO0FtRG4rUFc7RUFDUCxXQUFBO0VBQ0EseUJ2QzZFYTtFdUM1RWIscUJ2QzRFYTtBWnk1UGpCO0FtRG4rUEk7RUFLSSxnREFBQTtBbkRpK1BSO0FrRGwvUEU7RUMvQkEsY3ZDcUhlO0V1Q3BIZiw2QkFBQTtFQUNBLHNCQUFBO0VBQ0EseUJBQUE7QW5EcWhRRjtBbURuaFFFO0VBQ0UsY0FQOEM7RUFROUMseUJ2QzhHYTtFdUM3R2IscUJ2QzZHYTtBWnc2UGpCO0FtRGxoUUU7RUFFRSxnREFBQTtBbkRtaFFKO0FtRGhoUUU7RUFFRSxjdkNtR2E7RXVDbEdiLDZCQUFBO0VBQ0EseUJBQUE7QW5EaWhRSjtBbUQ5Z1FFO0VBRUUsY0FBQTtFQUNBLHlCdkMyRmE7RXVDMUZiLHFCdkMwRmE7QVpxN1BqQjtBbUQ3Z1FJO0VBS0ksZ0RBQUE7QW5EMmdRUjtBbUR2Z1FXO0VBQ1AsY0FBQTtFQUNBLHlCdkM2RWE7RXVDNUViLHFCdkM0RWE7QVo2N1BqQjtBbUR2Z1FJO0VBS0ksZ0RBQUE7QW5EcWdRUjtBa0R0aFFFO0VDL0JBLGN2Q3FIZTtFdUNwSGYsNkJBQUE7RUFDQSxzQkFBQTtFQUNBLHlCQUFBO0FuRHlqUUY7QW1EdmpRRTtFQUNFLFdBUDhDO0VBUTlDLHlCdkM4R2E7RXVDN0diLHFCdkM2R2E7QVo0OFBqQjtBbUR0alFFO0VBRUUsaURBQUE7QW5EdWpRSjtBbURwalFFO0VBRUUsY3ZDbUdhO0V1Q2xHYiw2QkFBQTtFQUNBLHlCQUFBO0FuRHFqUUo7QW1EbGpRRTtFQUVFLFdBQUE7RUFDQSx5QnZDMkZhO0V1QzFGYixxQnZDMEZhO0FaeTlQakI7QW1EampRSTtFQUtJLGlEQUFBO0FuRCtpUVI7QW1EM2lRVztFQUNQLFdBQUE7RUFDQSx5QnZDNkVhO0V1QzVFYixxQnZDNEVhO0FaaStQakI7QW1EM2lRSTtFQUtJLGlEQUFBO0FuRHlpUVI7QWtEMWpRRTtFQy9CQSxjdkNxSGU7RXVDcEhmLDZCQUFBO0VBQ0Esc0JBQUE7RUFDQSx5QkFBQTtBbkQ2bFFGO0FtRDNsUUU7RUFDRSxXQVA4QztFQVE5Qyx5QnZDOEdhO0V1QzdHYixxQnZDNkdhO0FaZy9QakI7QW1EMWxRRTtFQUVFLGlEQUFBO0FuRDJsUUo7QW1EeGxRRTtFQUVFLGN2Q21HYTtFdUNsR2IsNkJBQUE7RUFDQSx5QkFBQTtBbkR5bFFKO0FtRHRsUUU7RUFFRSxXQUFBO0VBQ0EseUJ2QzJGYTtFdUMxRmIscUJ2QzBGYTtBWjYvUGpCO0FtRHJsUUk7RUFLSSxpREFBQTtBbkRtbFFSO0FtRC9rUVc7RUFDUCxXQUFBO0VBQ0EseUJ2QzZFYTtFdUM1RWIscUJ2QzRFYTtBWnFnUWpCO0FtRC9rUUk7RUFLSSxpREFBQTtBbkQ2a1FSO0FrRDlsUUU7RUMvQkEsY3ZDcUhlO0V1Q3BIZiw2QkFBQTtFQUNBLHNCQUFBO0VBQ0EseUJBQUE7QW5EaW9RRjtBbUQvblFFO0VBQ0UsV0FQOEM7RUFROUMseUJ2QzhHYTtFdUM3R2IscUJ2QzZHYTtBWm9oUWpCO0FtRDluUUU7RUFFRSw4Q0FBQTtBbkQrblFKO0FtRDVuUUU7RUFFRSxjdkNtR2E7RXVDbEdiLDZCQUFBO0VBQ0EseUJBQUE7QW5ENm5RSjtBbUQxblFFO0VBRUUsV0FBQTtFQUNBLHlCdkMyRmE7RXVDMUZiLHFCdkMwRmE7QVppaVFqQjtBbUR6blFJO0VBS0ksOENBQUE7QW5EdW5RUjtBbURublFXO0VBQ1AsV0FBQTtFQUNBLHlCdkM2RWE7RXVDNUViLHFCdkM0RWE7QVp5aVFqQjtBbURublFJO0VBS0ksOENBQUE7QW5EaW5RUjtBa0Rsb1FFO0VDL0JBLGN2Q3FIZTtFdUNwSGYsNkJBQUE7RUFDQSxzQkFBQTtFQUNBLHlCQUFBO0FuRHFxUUY7QW1EbnFRRTtFQUNFLFdBUDhDO0VBUTlDLHlCdkM4R2E7RXVDN0diLHFCdkM2R2E7QVp3alFqQjtBbURscVFFO0VBRUUsZ0RBQUE7QW5EbXFRSjtBbURocVFFO0VBRUUsY3ZDbUdhO0V1Q2xHYiw2QkFBQTtFQUNBLHlCQUFBO0FuRGlxUUo7QW1EOXBRRTtFQUVFLFdBQUE7RUFDQSx5QnZDMkZhO0V1QzFGYixxQnZDMEZhO0FacWtRakI7QW1EN3BRSTtFQUtJLGdEQUFBO0FuRDJwUVI7QW1EdnBRVztFQUNQLFdBQUE7RUFDQSx5QnZDNkVhO0V1QzVFYixxQnZDNEVhO0FaNmtRakI7QW1EdnBRSTtFQUtJLGdEQUFBO0FuRHFwUVI7QWtEdHFRRTtFQy9CQSxjdkNxSGU7RXVDcEhmLDZCQUFBO0VBQ0Esc0JBQUE7RUFDQSx5QkFBQTtBbkR5c1FGO0FtRHZzUUU7RUFDRSxjQVA4QztFQVE5Qyx5QnZDOEdhO0V1QzdHYixxQnZDNkdhO0FaNGxRakI7QW1EdHNRRTtFQUVFLGlEQUFBO0FuRHVzUUo7QW1EcHNRRTtFQUVFLGN2Q21HYTtFdUNsR2IsNkJBQUE7RUFDQSx5QkFBQTtBbkRxc1FKO0FtRGxzUUU7RUFFRSxjQUFBO0VBQ0EseUJ2QzJGYTtFdUMxRmIscUJ2QzBGYTtBWnltUWpCO0FtRGpzUUk7RUFLSSxpREFBQTtBbkQrclFSO0FtRDNyUVc7RUFDUCxjQUFBO0VBQ0EseUJ2QzZFYTtFdUM1RWIscUJ2QzRFYTtBWmluUWpCO0FtRDNyUUk7RUFLSSxpREFBQTtBbkR5clFSO0FrRDFzUUU7RUMvQkEsY3ZDcUhlO0V1Q3BIZiw2QkFBQTtFQUNBLHNCQUFBO0VBQ0EseUJBQUE7QW5ENnVRRjtBbUQzdVFFO0VBQ0UsV0FQOEM7RUFROUMseUJ2QzhHYTtFdUM3R2IscUJ2QzZHYTtBWmdvUWpCO0FtRDF1UUU7RUFFRSxnREFBQTtBbkQydVFKO0FtRHh1UUU7RUFFRSxjdkNtR2E7RXVDbEdiLDZCQUFBO0VBQ0EseUJBQUE7QW5EeXVRSjtBbUR0dVFFO0VBRUUsV0FBQTtFQUNBLHlCdkMyRmE7RXVDMUZiLHFCdkMwRmE7QVo2b1FqQjtBbURydVFJO0VBS0ksZ0RBQUE7QW5EbXVRUjtBbUQvdFFXO0VBQ1AsV0FBQTtFQUNBLHlCdkM2RWE7RXVDNUViLHFCdkM0RWE7QVpxcFFqQjtBbUQvdFFJO0VBS0ksZ0RBQUE7QW5ENnRRUjtBa0Q5dVFFO0VDL0JBLGN2Q3FIZTtFdUNwSGYsNkJBQUE7RUFDQSxzQkFBQTtFQUNBLHlCQUFBO0FuRGl4UUY7QW1EL3dRRTtFQUNFLGNBUDhDO0VBUTlDLHlCdkM4R2E7RXVDN0diLHFCdkM2R2E7QVpvcVFqQjtBbUQ5d1FFO0VBRUUsZ0RBQUE7QW5EK3dRSjtBbUQ1d1FFO0VBRUUsY3ZDbUdhO0V1Q2xHYiw2QkFBQTtFQUNBLHlCQUFBO0FuRDZ3UUo7QW1EMXdRRTtFQUVFLGNBQUE7RUFDQSx5QnZDMkZhO0V1QzFGYixxQnZDMEZhO0FaaXJRakI7QW1EendRSTtFQUtJLGdEQUFBO0FuRHV3UVI7QW1EbndRVztFQUNQLGNBQUE7RUFDQSx5QnZDNkVhO0V1QzVFYixxQnZDNEVhO0FaeXJRakI7QW1EbndRSTtFQUtJLGdEQUFBO0FuRGl3UVI7QWtEbHhRRTtFQy9CQSxjdkNxSGU7RXVDcEhmLDZCQUFBO0VBQ0Esc0JBQUE7RUFDQSx5QkFBQTtBbkRxelFGO0FtRG56UUU7RUFDRSxjQVA4QztFQVE5Qyx5QnZDOEdhO0V1QzdHYixxQnZDNkdhO0Fad3NRakI7QW1EbHpRRTtFQUVFLCtDQUFBO0FuRG16UUo7QW1EaHpRRTtFQUVFLGN2Q21HYTtFdUNsR2IsNkJBQUE7RUFDQSx5QkFBQTtBbkRpelFKO0FtRDl5UUU7RUFFRSxjQUFBO0VBQ0EseUJ2QzJGYTtFdUMxRmIscUJ2QzBGYTtBWnF0UWpCO0FtRDd5UUk7RUFLSSwrQ0FBQTtBbkQyeVFSO0FtRHZ5UVc7RUFDUCxjQUFBO0VBQ0EseUJ2QzZFYTtFdUM1RWIscUJ2QzRFYTtBWjZ0UWpCO0FtRHZ5UUk7RUFLSSwrQ0FBQTtBbkRxeVFSO0FrRHR6UUU7RUMvQkEsY3ZDcUhlO0V1Q3BIZiw2QkFBQTtFQUNBLHNCQUFBO0VBQ0EseUJBQUE7QW5EeTFRRjtBbUR2MVFFO0VBQ0UsV0FQOEM7RUFROUMseUJ2QzhHYTtFdUM3R2IscUJ2QzZHYTtBWjR1UWpCO0FtRHQxUUU7RUFFRSxpREFBQTtBbkR1MVFKO0FtRHAxUUU7RUFFRSxjdkNtR2E7RXVDbEdiLDZCQUFBO0VBQ0EseUJBQUE7QW5EcTFRSjtBbURsMVFFO0VBRUUsV0FBQTtFQUNBLHlCdkMyRmE7RXVDMUZiLHFCdkMwRmE7QVp5dlFqQjtBbURqMVFJO0VBS0ksaURBQUE7QW5EKzBRUjtBbUQzMFFXO0VBQ1AsV0FBQTtFQUNBLHlCdkM2RWE7RXVDNUViLHFCdkM0RWE7QVppd1FqQjtBbUQzMFFJO0VBS0ksaURBQUE7QW5EeTBRUjtBa0QxMVFFO0VDL0JBLGN2Q3FIZTtFdUNwSGYsNkJBQUE7RUFDQSxzQkFBQTtFQUNBLHlCQUFBO0FuRDYzUUY7QW1EMzNRRTtFQUNFLGNBUDhDO0VBUTlDLHlCdkM4R2E7RXVDN0diLHFCdkM2R2E7QVpneFFqQjtBbUQxM1FFO0VBRUUsaURBQUE7QW5EMjNRSjtBbUR4M1FFO0VBRUUsY3ZDbUdhO0V1Q2xHYiw2QkFBQTtFQUNBLHlCQUFBO0FuRHkzUUo7QW1EdDNRRTtFQUVFLGNBQUE7RUFDQSx5QnZDMkZhO0V1QzFGYixxQnZDMEZhO0FaNnhRakI7QW1EcjNRSTtFQUtJLGlEQUFBO0FuRG0zUVI7QW1ELzJRVztFQUNQLGNBQUE7RUFDQSx5QnZDNkVhO0V1QzVFYixxQnZDNEVhO0FacXlRakI7QW1ELzJRSTtFQUtJLGlEQUFBO0FuRDYyUVI7QWtEOTNRRTtFQy9CQSxjdkNxSGU7RXVDcEhmLDZCQUFBO0VBQ0Esc0JBQUE7RUFDQSx5QkFBQTtBbkRpNlFGO0FtRC81UUU7RUFDRSxXQVA4QztFQVE5Qyx5QnZDOEdhO0V1QzdHYixxQnZDNkdhO0Fab3pRakI7QW1EOTVRRTtFQUVFLDhDQUFBO0FuRCs1UUo7QW1ENTVRRTtFQUVFLGN2Q21HYTtFdUNsR2IsNkJBQUE7RUFDQSx5QkFBQTtBbkQ2NVFKO0FtRDE1UUU7RUFFRSxXQUFBO0VBQ0EseUJ2QzJGYTtFdUMxRmIscUJ2QzBGYTtBWmkwUWpCO0FtRHo1UUk7RUFLSSw4Q0FBQTtBbkR1NVFSO0FtRG41UVc7RUFDUCxXQUFBO0VBQ0EseUJ2QzZFYTtFdUM1RWIscUJ2QzRFYTtBWnkwUWpCO0FtRG41UUk7RUFLSSw4Q0FBQTtBbkRpNVFSO0FrRHg1UUU7RUN4TEEsV0FBQTtFZkFFLHlCZ0JpQlk7RURmZCxxQkNlYztBcERxa1JoQjtBbUJobFJFO0VBQ0U7SWdDREEsV0FBQTtJZk5BLHlCZUQyRDtJQVMzRCxxQkFUcUc7RW5ENmxSdkc7QUFDRjtBbURsbFJFO0VBRUUsV0FBQTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkcsZ0RBQUE7QW5EK2tSTjtBbUQxa1JFO0VBRUUsV0FBQTtFQUNBLHlCQ1hZO0VEWVoscUJDWlk7QXBEdWxSaEI7QW1EcmtSRTtFQUVFLFdBQUE7RUFDQSx5QkF2QytJO0VBMkMvSSxxQkEzQ3lMO0FuRDhtUjdMO0FtRGprUkk7RUFLSSxnREFBQTtBbkQralJSO0FtRDNqUlc7RUFDUCxXQUFBO0VBQ0EseUJBeEQrSTtFQTREL0kscUJBNUR5TDtBbkRzblI3TDtBbUR4alJJO0VBS0ksZ0RBQUE7QW5Ec2pSUjtBa0RoOFFFO0VDeExBLFdBQUE7RWZBRSx5QmdCaUJZO0VEZmQscUJDZWM7QXBENm1SaEI7QW1CeG5SRTtFQUNFO0lnQ0RBLFdBQUE7SWZOQSx5QmVEMkQ7SUFTM0QscUJBVHFHO0VuRHFvUnZHO0FBQ0Y7QW1EMW5SRTtFQUVFLFdBQUE7RWZiQSx5QmVEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HLGdEQUFBO0FuRHVuUk47QW1EbG5SRTtFQUVFLFdBQUE7RUFDQSx5QkNYWTtFRFlaLHFCQ1pZO0FwRCtuUmhCO0FtRDdtUkU7RUFFRSxXQUFBO0VBQ0EseUJBdkMrSTtFQTJDL0kscUJBM0N5TDtBbkRzcFI3TDtBbUR6bVJJO0VBS0ksZ0RBQUE7QW5EdW1SUjtBbURubVJXO0VBQ1AsV0FBQTtFQUNBLHlCQXhEK0k7RUE0RC9JLHFCQTVEeUw7QW5EOHBSN0w7QW1EaG1SSTtFQUtJLGdEQUFBO0FuRDhsUlI7QWtEeCtRRTtFQ3hMQSxXQUFBO0VmQUUseUJnQmlCWTtFRGZkLHFCQ2VjO0FwRHFwUmhCO0FtQmhxUkU7RUFDRTtJZ0NEQSxXQUFBO0lmTkEseUJlRDJEO0lBUzNELHFCQVRxRztFbkQ2cVJ2RztBQUNGO0FtRGxxUkU7RUFFRSxXQUFBO0VmYkEseUJlRDJEO0VBZ0IzRCxxQkFoQnFHO0VBcUJuRyxnREFBQTtBbkQrcFJOO0FtRDFwUkU7RUFFRSxXQUFBO0VBQ0EseUJDWFk7RURZWixxQkNaWTtBcER1cVJoQjtBbURycFJFO0VBRUUsV0FBQTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QW5EOHJSN0w7QW1EanBSSTtFQUtJLGdEQUFBO0FuRCtvUlI7QW1EM29SVztFQUNQLFdBQUE7RUFDQSx5QkF4RCtJO0VBNEQvSSxxQkE1RHlMO0FuRHNzUjdMO0FtRHhvUkk7RUFLSSxnREFBQTtBbkRzb1JSO0FrRGhoUkU7RUN4TEEsV0FBQTtFZkFFLHlCZ0JpQlk7RURmZCxxQkNlYztBcEQ2clJoQjtBbUJ4c1JFO0VBQ0U7SWdDREEsV0FBQTtJZk5BLHlCZUQyRDtJQVMzRCxxQkFUcUc7RW5EcXRSdkc7QUFDRjtBbUQxc1JFO0VBRUUsV0FBQTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkcsZ0RBQUE7QW5EdXNSTjtBbURsc1JFO0VBRUUsV0FBQTtFQUNBLHlCQ1hZO0VEWVoscUJDWlk7QXBEK3NSaEI7QW1EN3JSRTtFQUVFLFdBQUE7RUFDQSx5QkF2QytJO0VBMkMvSSxxQkEzQ3lMO0FuRHN1UjdMO0FtRHpyUkk7RUFLSSxnREFBQTtBbkR1clJSO0FtRG5yUlc7RUFDUCxXQUFBO0VBQ0EseUJBeEQrSTtFQTREL0kscUJBNUR5TDtBbkQ4dVI3TDtBbURoclJJO0VBS0ksZ0RBQUE7QW5EOHFSUjtBa0R4alJFO0VDeExBLFdBQUE7RWZBRSx5QmdCaUJZO0VEZmQscUJDZWM7QXBEcXVSaEI7QW1CaHZSRTtFQUNFO0lnQ0RBLFdBQUE7SWZOQSx5QmVEMkQ7SUFTM0QscUJBVHFHO0VuRDZ2UnZHO0FBQ0Y7QW1EbHZSRTtFQUVFLFdBQUE7RWZiQSx5QmVEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HLGdEQUFBO0FuRCt1Uk47QW1EMXVSRTtFQUVFLFdBQUE7RUFDQSx5QkNYWTtFRFlaLHFCQ1pZO0FwRHV2UmhCO0FtRHJ1UkU7RUFFRSxXQUFBO0VBQ0EseUJBdkMrSTtFQTJDL0kscUJBM0N5TDtBbkQ4d1I3TDtBbURqdVJJO0VBS0ksZ0RBQUE7QW5EK3RSUjtBbUQzdFJXO0VBQ1AsV0FBQTtFQUNBLHlCQXhEK0k7RUE0RC9JLHFCQTVEeUw7QW5Ec3hSN0w7QW1EeHRSSTtFQUtJLGdEQUFBO0FuRHN0UlI7QWtEaG1SRTtFQ3hMQSxXQUFBO0VmQUUseUJnQmlCWTtFRGZkLHFCQ2VjO0FwRDZ3UmhCO0FtQnh4UkU7RUFDRTtJZ0NEQSxXQUFBO0lmTkEseUJlRDJEO0lBUzNELHFCQVRxRztFbkRxeVJ2RztBQUNGO0FtRDF4UkU7RUFFRSxXQUFBO0VmYkEseUJlRDJEO0VBZ0IzRCxxQkFoQnFHO0VBcUJuRyxnREFBQTtBbkR1eFJOO0FtRGx4UkU7RUFFRSxXQUFBO0VBQ0EseUJDWFk7RURZWixxQkNaWTtBcEQreFJoQjtBbUQ3d1JFO0VBRUUsV0FBQTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QW5Ec3pSN0w7QW1EendSSTtFQUtJLGdEQUFBO0FuRHV3UlI7QW1EbndSVztFQUNQLFdBQUE7RUFDQSx5QkF4RCtJO0VBNEQvSSxxQkE1RHlMO0FuRDh6UjdMO0FtRGh3Ukk7RUFLSSxnREFBQTtBbkQ4dlJSO0FrRHhvUkU7RUN4TEEsV0FBQTtFZkFFLHlCZ0JpQlk7RURmZCxxQkNlYztBcERxelJoQjtBbUJoMFJFO0VBQ0U7SWdDREEsV0FBQTtJZk5BLHlCZUQyRDtJQVMzRCxxQkFUcUc7RW5ENjBSdkc7QUFDRjtBbURsMFJFO0VBRUUsV0FBQTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkcsZ0RBQUE7QW5EK3pSTjtBbUQxelJFO0VBRUUsV0FBQTtFQUNBLHlCQ1hZO0VEWVoscUJDWlk7QXBEdTBSaEI7QW1EcnpSRTtFQUVFLFdBQUE7RUFDQSx5QkF2QytJO0VBMkMvSSxxQkEzQ3lMO0FuRDgxUjdMO0FtRGp6Ukk7RUFLSSxnREFBQTtBbkQreVJSO0FtRDN5Ulc7RUFDUCxXQUFBO0VBQ0EseUJBeEQrSTtFQTREL0kscUJBNUR5TDtBbkRzMlI3TDtBbUR4eVJJO0VBS0ksZ0RBQUE7QW5Ec3lSUjtBa0RoclJFO0VDeExBLFdBQUE7RWZBRSx5QmdCaUJZO0VEZmQscUJDZWM7QXBENjFSaEI7QW1CeDJSRTtFQUNFO0lnQ0RBLFdBQUE7SWZOQSx5QmVEMkQ7SUFTM0QscUJBVHFHO0VuRHEzUnZHO0FBQ0Y7QW1EMTJSRTtFQUVFLFdBQUE7RWZiQSx5QmVEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HLGdEQUFBO0FuRHUyUk47QW1EbDJSRTtFQUVFLFdBQUE7RUFDQSx5QkNYWTtFRFlaLHFCQ1pZO0FwRCsyUmhCO0FtRDcxUkU7RUFFRSxXQUFBO0VBQ0EseUJBdkMrSTtFQTJDL0kscUJBM0N5TDtBbkRzNFI3TDtBbUR6MVJJO0VBS0ksZ0RBQUE7QW5EdTFSUjtBbURuMVJXO0VBQ1AsV0FBQTtFQUNBLHlCQXhEK0k7RUE0RC9JLHFCQTVEeUw7QW5EODRSN0w7QW1EaDFSSTtFQUtJLGdEQUFBO0FuRDgwUlI7QWtEeHRSRTtFQ3hMQSxXQUFBO0VmQUUsc0JnQmlCWTtFRGZkLGtCQ2VjO0FwRHE0UmhCO0FtQmg1UkU7RUFDRTtJZ0NEQSxXQUFBO0lmTkEseUJlRDJEO0lBUzNELHFCQVRxRztFbkQ2NVJ2RztBQUNGO0FtRGw1UkU7RUFFRSxXQUFBO0VmYkEseUJlRDJEO0VBZ0IzRCxxQkFoQnFHO0VBcUJuRywrQ0FBQTtBbkQrNFJOO0FtRDE0UkU7RUFFRSxXQUFBO0VBQ0Esc0JDWFk7RURZWixrQkNaWTtBcER1NVJoQjtBbURyNFJFO0VBRUUsV0FBQTtFQUNBLHlCQXZDK0k7RUEyQy9JLHFCQTNDeUw7QW5EODZSN0w7QW1EajRSSTtFQUtJLCtDQUFBO0FuRCszUlI7QW1EMzNSVztFQUNQLFdBQUE7RUFDQSx5QkF4RCtJO0VBNEQvSSxxQkE1RHlMO0FuRHM3UjdMO0FtRHgzUkk7RUFLSSwrQ0FBQTtBbkRzM1JSO0FrRGh3UkU7RUN4TEEsV0FBQTtFZkFFLHlCZ0JpQlk7RURmZCxxQkNlYztBcEQ2NlJoQjtBbUJ4N1JFO0VBQ0U7SWdDREEsV0FBQTtJZk5BLHlCZUQyRDtJQVMzRCxxQkFUcUc7RW5EcThSdkc7QUFDRjtBbUQxN1JFO0VBRUUsV0FBQTtFZmJBLHlCZUQyRDtFQWdCM0QscUJBaEJxRztFQXFCbkcsaURBQUE7QW5EdTdSTjtBbURsN1JFO0VBRUUsV0FBQTtFQUNBLHlCQ1hZO0VEWVoscUJDWlk7QXBEKzdSaEI7QW1ENzZSRTtFQUVFLFdBQUE7RUFDQSx5QkF2QytJO0VBMkMvSSxxQkEzQ3lMO0FuRHM5UjdMO0FtRHo2Ukk7RUFLSSxpREFBQTtBbkR1NlJSO0FtRG42Ulc7RUFDUCxXQUFBO0VBQ0EseUJBeEQrSTtFQTREL0kscUJBNUR5TDtBbkQ4OVI3TDtBbURoNlJJO0VBS0ksaURBQUE7QW5EODVSUjtBa0R4eVJFO0VDeExBLFdBQUE7RWZBRSx5QmdCaUJZO0VEZmQscUJDZWM7QXBEcTlSaEI7QW1CaCtSRTtFQUNFO0lnQ0RBLFdBQUE7SWZOQSx5QmVEMkQ7SUFTM0QscUJBVHFHO0VuRDYrUnZHO0FBQ0Y7QW1EbCtSRTtFQUVFLFdBQUE7RWZiQSx5QmVEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HLGlEQUFBO0FuRCs5Uk47QW1EMTlSRTtFQUVFLFdBQUE7RUFDQSx5QkNYWTtFRFlaLHFCQ1pZO0FwRHUrUmhCO0FtRHI5UkU7RUFFRSxXQUFBO0VBQ0EseUJBdkMrSTtFQTJDL0kscUJBM0N5TDtBbkQ4L1I3TDtBbURqOVJJO0VBS0ksaURBQUE7QW5EKzhSUjtBbUQzOFJXO0VBQ1AsV0FBQTtFQUNBLHlCQXhEK0k7RUE0RC9JLHFCQTVEeUw7QW5Ec2dTN0w7QW1EeDhSSTtFQUtJLGlEQUFBO0FuRHM4UlI7QWtEaDFSRTtFQ3hMQSxXQUFBO0VmQUUseUJnQmlCWTtFRGZkLHFCQ2VjO0FwRDYvUmhCO0FtQnhnU0U7RUFDRTtJ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U0k7RUFLSSwrQ0FBQTtBbkR1cFNSO0FtRG5wU1c7RUFDUCxXQUFBO0VBQ0EseUJBeEQrSTtFQTREL0kscUJBNUR5TDtBbkQ4c1M3TDtBbURocFNJO0VBS0ksK0NBQUE7QW5EOG9TUjtBa0R4aFNFO0VDeExBLGNBQUE7RWZBRSx5QmdCaUJZO0VEZmQscUJDZWM7QXBEcXNTaEI7QW1CaHRTRTtFQUNFO0lnQ0RBLGNBQUE7SWZOQSx5QmVEMkQ7SUFTM0QscUJBVHFHO0VuRDZ0U3ZHO0FBQ0Y7QW1EbHRTRTtFQUVFLGNBQUE7RWZiQSx5QmVEMkQ7RUFnQjNELHFCQWhCcUc7RUFxQm5HLGdEQUFBO0FuRCtzU047QW1EMXNTRTtFQUVFLGNBQUE7RUFDQSx5QkNYWTtFRFlaLHFCQ1pZO0FwRHV0U2hCO0FtRHJzU0U7RUFFRSxjQUFBO0VBQ0EseUJBdkMrSTtFQTJDL0kscUJBM0N5TDtBbkQ4dVM3TDtBbURqc1NJO0VBS0ksZ0RBQUE7QW5EK3JTUjtBbUQzclNXO0VBQ1AsY0FBQTtFQUNBLHlCQXhEK0k7RUE0RC9JLHFCQTVEeUw7QW5Ec3ZTN0w7QW1EeHJTSTtFQUtJLGdEQUFBO0FuRHNyU1I7QXFEMXZTQTtFQUNFLGtCQUFBO0VBQ0EsZUFBQTtFQUNBLGNBQUE7RUFVRSxzQnZCTWdCO0E5Qjh1U3BCO0FnQmp3U1E7RXFDTUosOEJBQUE7QXJEOHZTSjtBaUJwd1NRO0VvQ1NKLCtCQUFBO0FyRDh2U0o7QXFEdHZTQTtFQUNFLHlCQUFBO0VBQ0Esc0JBQUE7QXJEeXZTRjtBcUR2dlNBO0VBQ0Usc0J2QkhrQjtBOUI2dlNwQjtBcUR4dlNBO0VBQ0UsYUFBQTtFQUNBLHNCQUFBO0FyRDJ2U0Y7QXFEenZTQTtFQUNFLGdCQUFBO0FyRDR2U0Y7QXFEMXZTQTtFQUNFLG9CQUFBO0FyRDZ2U0Y7QWdCN3hTUTtFcUMwQ0YsMEJ6QzROVztBWjJoU2pCO0FpQmp5U1E7RW9DNkNGLDJCekN5Tlc7QVo4aFNqQjtBcURwdlNJO0VBQ0UsY3pDcU5XO0FaaWlTakI7QWdCdnlTUTtFcUMwQ0YsMEJ6QzROVztBWnFpU2pCO0FpQjN5U1E7RW9DNkNGLDJCekN5Tlc7QVp3aVNqQjtBcUQ5dlNJO0VBQ0UsY3pDcU5XO0FaMmlTakI7QWdCanpTUTtFcUMwQ0YsMEJ6QzROVztBWitpU2pCO0FpQnJ6U1E7RW9DNkNGLDJCekN5Tlc7QVpralNqQjtBcUR4d1NJO0VBQ0UsY3pDcU5XO0FacWpTakI7QWdCM3pTUTtFcUMwQ0YsdUJ6QzROVztBWnlqU2pCO0FpQi96U1E7RW9DNkNGLHdCekN5Tlc7QVo0alNqQjtBcURseFNJO0VBQ0UsV3pDcU5XO0FaK2pTakI7QWdCcjBTUTtFcUMwQ0YsMEJ6QzROVztBWm1rU2pCO0FpQnowU1E7RW9DNkNGLDJCekN5Tlc7QVpza1NqQjtBcUQ1eFNJO0VBQ0UsY3pDcU5XO0FaeWtTakI7QWdCLzBTUTtFcUMwQ0YsMEJ6QzROVztBWjZrU2pCO0FpQm4xU1E7RW9DNkNGLDJCekN5Tlc7QVpnbFNqQjtBcUR0eVNJO0VBQ0UsY3pDcU5XO0FabWxTakI7QWdCejFTUTtFcUMwQ0YsMEJ6QzROVztBWnVsU2pCO0FpQjcxU1E7RW9DNkNGLDJCekN5Tlc7QVowbFNqQjtBcURoelNJO0VBQ0UsY3pDcU5XO0FaNmxTakI7QWdCbjJTUTtFcUMwQ0YsMEJ6QzROVztBWmltU2pCO0FpQnYyU1E7RW9DNkNGLDJCekN5Tlc7QVpvbVNqQjtBcUQxelNJO0VBQ0UsY3pDcU5XO0FadW1TakI7QWdCNzJTUTtFcUMwQ0YsMEJ6QzROVztBWjJtU2pCO0FpQmozU1E7RW9DNkNGLDJCekN5Tlc7QVo4bVNqQjtBcURwMFNJO0VBQ0UsY3pDcU5XO0FaaW5TakI7QWdCdjNTUTtFcUMwQ0YsMEJ6QzROVztBWnFuU2pCO0FpQjMzU1E7RW9DNkNGLDJCekN5Tlc7QVp3blNqQjtBcUQ5MFNJO0VBQ0UsY3pDcU5XO0FaMm5TakI7QWdCajRTUTtFcUMwQ0YsMEJ6QzROVztBWituU2pCO0FpQnI0U1E7RW9DNkNGLDJCekN5Tlc7QVprb1NqQjtBcUR4MVNJO0VBQ0UsY3pDcU5XO0FacW9TakI7QWdCMzRTUTtFcUMwQ0YsMEJ6QzROVztBWnlvU2pCO0FpQi80U1E7RW9DNkNGLDJCekN5Tlc7QVo0b1NqQjtBcURsMlNJO0VBQ0UsY3pDcU5XO0FaK29TakI7QWdCcjVTUTtFcUMwQ0YsMEJ6QzROVztBWm1wU2pCO0FpQno1U1E7RW9DNkNGLDJCekN5Tlc7QVpzcFNqQjtBcUQ1MlNJO0VBQ0UsY3pDcU5XO0FaeXBTakI7QWdCLzVTUTtFcUMwQ0YsMEJ6QzROVztBWjZwU2pCO0FpQm42U1E7RW9DNkNGLDJCekN5Tlc7QVpncVNqQjtBcUR0M1NJO0VBQ0UsY3pDcU5XO0FabXFTakI7QWdCejZTUTtFcUMwQ0YsMEJ6QzROVztBWnVxU2pCO0FpQjc2U1E7RW9DNkNGLDJCekN5Tlc7QVowcVNqQjtBcURoNFNJO0VBQ0UsY3pDcU5XO0FaNnFTakI7QWdCbjdTUTtFcUMwQ0YsMEJ6QzROVztBWmlyU2pCO0FpQnY3U1E7RW9DNkNGLDJCekN5Tlc7QVpvclNqQjtBcUQxNFNJO0VBQ0UsY3pDcU5XO0FadXJTakI7QWdCNzdTUTtFcUMwQ0YsMEJ6QzROVztBWjJyU2pCO0FpQmo4U1E7RW9DNkNGLDJCekN5Tlc7QVo4clNqQjtBcURwNVNJO0VBQ0UsY3pDcU5XO0FaaXNTakI7QWdCdjhTUTtFcUMwQ0YsMEJ6QzROVztBWnFzU2pCO0FpQjM4U1E7RW9DNkNGLDJCekN5Tlc7QVp3c1NqQjtBcUQ5NVNJO0VBQ0UsY3pDcU5XO0FaMnNTakI7QWdCajlTUTtFcUMwQ0YsMEJ6QzROVztBWitzU2pCO0FpQnI5U1E7RW9DNkNGLDJCekN5Tlc7QVprdFNqQjtBcUR4NlNJO0VBQ0UsY3pDcU5XO0FacXRTakI7QWdCMzlTUTtFcUMwQ0YsMEJ6QzROVztBWnl0U2pCO0FpQi85U1E7RW9DNkNGLDJCekN5Tlc7QVo0dFNqQjtBcURsN1NJO0VBQ0UsY3pDcU5XO0FaK3RTakI7QWdCcitTUTtFcUMwQ0YsMEJ6QzROVztBWm11U2pCO0FpQnorU1E7RW9DNkNGLDJCekN5Tlc7QVpzdVNqQjtBcUQ1N1NJO0VBQ0UsY3pDcU5XO0FaeXVTakI7QWdCLytTUTtFcUMwQ0YsMEJ6QzROVztBWjZ1U2pCO0FpQm4v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RG4rU0E7RUFDRSxxQkFBQTtFQUNBLGdCQUFBO0VBQ0Esa0JBQUE7RUFDQSwwQ0FBQTtFQUNBLG9CQUFBO0VBQ0EsY2pDN1VXO0VpQzhVWCxrQkFBQTtFQUNBLHVCQ2hVaUI7RURpVWpCLHVCQUFBO0VBRUUscUJBQUE7QXREcStTSjtBWTVuVFE7RTBDdUpKLHFCQUFBO0F0RHcrU0o7QVkvblRRO0UwQ3VKSix3Q0FBQTtBdEQ0K1NKO0FzRHgrU0E7RUFDRSxxQkFBQTtBdEQyK1NGO0FnQnIwVFE7RXNDNlZKLFlBQUE7RUFDQSxzQkFBQTtBdEQyK1NKO0FpQnowVFE7RXFDaVdKLFdBQUE7RUFDQSxxQkFBQTtBdEQyK1NKO0FzRHYrU0E7RUFDRSxrQkFBQTtFQUNBLGNqQy9WVztBckJ5MFRiO0FzRHgrU0U7RUFDRSxjakN4V1M7RWlDeVdULHFCQUFBO0F0RDArU0o7QXNEbitTRTtFR3JYQSx3Q0FBQTtBekQ0MVRGO0FzRHYrU0U7RUdyWEEsd0NBQUE7QXpEZzJURjtBc0QzK1NFO0VHclhBLHdDQUFBO0F6RG8yVEY7QXNELytTRTtFR3JYQSxxQ0FBQTtBekR3MlRGO0FzRG4vU0U7RUdyWEEsd0NBQUE7QXpENDJURjtBc0R2L1NFO0VHclhBLHdDQUFBO0F6RGczVEY7QXNEMy9TRTtFR3JYQSx3Q0FBQTtBekRvM1RGO0FzRC8vU0U7RUdyWEEsd0NBQUE7QXpEdzNURjtBc0RuZ1RFO0VHclhBLHdDQUFBO0F6RDQzVEY7QXNEdmdURTtFR3JYQSx3Q0FBQTtBekRnNFRGO0FzRDNnVEU7RUdyWEEsd0NBQUE7QXpEbzRURjtBc0QvZ1RFO0VHclhBLHdDQUFBO0F6RHc0VEY7QXNEbmhURTtFR3JYQSx3Q0FBQTtBekQ0NFRGO0FzRHZoVEU7RUdyWEEsd0NBQUE7QXpEZzVURjtBc0QzaFRFO0VHclhBLHdDQUFBO0F6RG81VEY7QXNEL2hURTtFR3JYQSx3Q0FBQTtBekR3NVRGO0FzRG5pVEU7RUdyWEEsd0NBQUE7QXpENDVURjtBc0R2aVRFO0VHclhBLHdDQUFBO0F6RGc2VEY7QXNEM2lURTtFR3JYQSx3Q0FBQTtBekRv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QUFBO0ExRHM3VEY7QTZEOW5VQTtFQUNFLFdBQUE7QTdEaW9VRjtBNkQ5blVBO0VBQ0UsY0FBQTtBN0Rpb1VGO0E2RDluVUE7RUFDRSx5QkFBQTtLQUFBLHNCQUFBO01BQUEscUJBQUE7VUFBQSxpQkFBQTtBN0Rpb1VGO0E4RDFvVUE7RUFDRSxZQUFBO0UvQzhISSxvQkF0Q2E7RStDdEZqQixnQmhEY3FCO0VnRGJyQixjQUFBO0VBQ0EsWUFBQTtFQUVFLGNBQUE7RUFDQSx5QkFBQTtBOUQ0b1VKO0FZbDlUUTtFa0QzTEosV0FBQTtFQUNBLHlCQUFBO0E5RGdwVUo7QVl0OVRRO0VrRDNMSixXQUFBO0VBQ0EsNEJBQUE7QTlEcXBVSjtBbUJqcFVFO0VBQ0U7STJDQUEscUJBQUE7SUFFRSxjQUFBO0U5RG9wVUo7RVlqK1RNO0lrRG5MRixXQUFBO0U5RHVwVUo7O0VZcCtUTTtJa0RuTEYsV0FBQTtFOUQycFVKO0FBQ0Y7QW1CenBVRTtFMkNHSSxhQUFBO0E5RHlwVU47QThEOW9VQTtFQUNFLFVBQUE7RUFDQSw2QkFBQTtFQUNBLFNBQUE7QTlEaXBVRjtBOEQzb1VBO0VBQ0Usb0JBQUE7QTlEOG9VRjtBK0R2clVBO0VoRHVFSSxnQkFBQTtFZ0RyRUYsYzFDMEZNO0UwQ3pGTixxQkFBQTtBL0QwclVGO0ErRHZyVUU7RUFDRSxjQUFBO0EvRHlyVUo7QStEcHJVQTtFQUNFLHNCQUFBO0VoRDBERSxnQkFBQTtFZ0R4REYsVzFDWk87RTBDYVAseUIxQ0RXO0VRRVQscUJBQUE7QTdCdXJVSjtBK0RwclVFO0VBQ0UsVUFBQTtFaERrREEsZUFBQTtFZ0RoREEsZ0JqRFBtQjtBZDZyVXZCO0ErRGhyVUE7RUFDRSxjQUFBO0VoRHlDRSxnQkFBQTtFZ0R2Q0YsYzFDakJXO0FyQm9zVWI7QStEaHJVRTtFaERvQ0Usa0JBQUE7RWdEbENBLGNBQUE7RUFDQSxrQkFBQTtBL0RrclVKO0ErRDdxVUE7RUFDRSxpQkMvQjJCO0VEZ0MzQixrQkFBQTtBL0RnclVGO0FpRXJ0VUE7RUFDRSxrQkFBQTtFQUNBLGNBQUE7RUFDQSxxQkFBQTtBakV3dFVGO0FnQmh1VVE7RWlEVUosb0JBQUE7QWpFeXRVSjtBaUJudVVRO0VnRGFKLHFCQUFBO0FqRXl0VUo7QWlFcnRVQTtFQUNFLG9CQUFBO0VBQ0Esa0JDcEJ5QjtBbEU0dVUzQjtBaUVydFVBO0VBQ0Usa0JBQUE7RUFPQSxXQUFBO0VBQ0EsV0M3QitCO0VEOEIvQixrQkFBQTtFQUNBLFVBQUE7QWpFa3RVRjtBZ0JudlVRO0VpRHlCSixPQUFBO0FqRTZ0VUo7QWlCdHZVUTtFZ0Q0QkosUUFBQTtBakU2dFVKO0FpRXR0VUU7RUFHSSxXQUFBO0VBQ0EscUJBQUE7RTdCckNGLHlCNkJzQ3VCO0FqRXN0VTNCO0FZaGtVUTtFcUR4SkYsV0FBQTtFQUNBLHFCQUFBO0U3QnJDRix5QjZCc0N1QjtBakUydFUzQjtBWXJrVVE7RXFEeEpGLFdBQUE7RUFDQSxxQkFBQTtFN0JyQ0YseUI2QnNDdUI7QWpFaXVVM0I7QWlFN3RVRTtFQUtJLGdEM0N4Q3dCO0F0Qm93VTlCO0FpRXh0VUU7RUFFSSxxQkFBQTtBakV5dFVOO0FZbGxVUTtFcUR2SUYscUJBQUE7QWpFNHRVTjtBWXJsVVE7RXFEdklGLHNDQUFBO0FqRWd1VU47QWlFNXRVRTtFQUVJLFdBQUE7RUFDQSx5QkFBQTtFQUNBLHFCQUFBO0FqRTh0VU47QVkvbFVRO0VxRGpJRixXQUFBO0VBQ0EseUJBQUE7RUFDQSxxQkFBQTtBakVtdVVOO0FZcG1VUTtFcURqSUYsV0FBQTtFQUNBLHlCQUFBO0VBQ0EscUJBQUE7QWpFeXVVTjtBaUVqdVVJO0VBRUksY0FBQTtBakVtdVVSO0FZOW1VUTtFcURySEEsY0FBQTtBakVzdVVSO0FZam5VUTtFcURySEEsZ0NBQUE7QWpFMHVVUjtBaUV2dVVNO0VBRUkseUJBQUE7QWpFeXVVVjtBWXpuVVE7RXFEaEhFLHlCQUFBO0FqRTR1VVY7QVk1blVRO0VxRGhIRSwwQ0FBQTtBakVndlVWO0FpRXJ1VUE7RUFDRSxrQkFBQTtFQUNBLGdCQUFBO0VBQ0EsbUJBQUE7QWpFd3VVRjtBaUVqdVVFO0VBQ0Usa0JBQUE7RUFDQSxlQUFBO0VBT0EsY0FBQTtFQUNBLFdDM0c2QjtFRDRHN0IsWUM1RzZCO0VENkc3QixvQkFBQTtFQUNBLFdBQUE7RUFDQSxpQkFBQTtFQUdFLHNCQUFBO0VBQ0EscUJBQUE7QWpFMnRVTjtBZ0JoMVVRO0VpRHVHRixhQUFBO0FqRTR1VU47QWlCbjFVUTtFZ0QwR0YsY0FBQTtBakU0dVVOO0FZeHBVUTtFcUQxRUYsc0JBQUE7RUFDQSxxQkFBQTtBakVxdVVOO0FZNXBVUTtFcUQxRUYsMkNBQUE7RUFDQSxpQ0FBQTtBakUwdVVOO0FpRXJ1VUU7RUFDRSxrQkFBQTtFQUNBLGVBQUE7RUFPQSxjQUFBO0VBQ0EsV0NsSTZCO0VEbUk3QixZQ25JNkI7RURvSTdCLFdBQUE7RUFDQSxpQ0FBQTtBakVrdVVKO0FnQnoyVVE7RWlEOEhGLGFBQUE7QWpFOHVVTjtBaUI1MlVRO0VnRGlJRixjQUFBO0FqRTh1VU47QWlFOXRVRTtFcENuSUUsc0JBQUE7QTdCcTJVSjtBaUU3dFVJO0VBRUksa09BQUE7QWpFOHRVUjtBWXhyVVE7RXFEdENBLGtPQUFBO0FqRWl1VVI7QVkzclVRO0VxRHRDQSxrT0FBQTtBakVxdVVSO0FpRS90VUk7RUFFSSxxQkFBQTtFN0I5SkoseUJOK0JzQjtBOUJpMlUxQjtBWXBzVVE7RXFEOUJBLHFCQUFBO0FqRXF1VVI7QVl2c1VRO0VxRDlCQSxxQkFBQTtBakV5dVVSO0FpRXB1VUk7RUFDRSwrS0FBQTtBakV1dVVOO0FpRWx1VUk7RUFFSSx3Q0FBQTtBakVtdVVSO0FZbHRVUTtFcURqQkEseUNBQUE7QWpFc3VVUjtBWXJ0VVE7RXFEakJBLHdDQUFBO0FqRTB1VVI7QWlFdnVVSTtFQUVJLHdDQUFBO0FqRXl1VVI7QVk3dFVRO0VxRFpBLHlDQUFBO0FqRTR1VVI7QVlodVVRO0VxRFpBLHdDQUFBO0FqRWd2VVI7QWlFcnVVRTtFQUVFLGtCQzNLb0M7QWxFazVVeEM7QWlFbnVVSTtFQUVJLDhLQUFBO0FqRW91VVI7QVkzdVVRO0VxRE9BLDhLQUFBO0FqRXV1VVI7QVk5dVVRO0VxRE9BLDhLQUFBO0FqRTJ1VVI7QWlFcnVVSTtFQUVJLHdDQUFBO0FqRXV1VVI7QVl0dlVRO0VxRGVBLHlDQUFBO0FqRTB1VVI7QVl6dlVRO0VxRGVBLHdDQUFBO0FqRTh1VVI7QWdCMzdVUTtFaUQwTkoscUJBQUE7QWpFcXVVSjtBaUIvN1VRO0VnRDZOSixzQkFBQTtBakVxdVVKO0FpRWx1VUk7RUFPRSxjQ2pObUM7RURrTm5DLG1CQUFBO0VBRUEscUJDbk5tQztBbEVnN1V6QztBZ0J2OFVRO0VpRGtPQSxjQUFBO0FqRXd1VVI7QWlCMThVUTtFZ0RxT0EsZUFBQTtBakV3dVVSO0FpRWh1VUk7RUFDRSwyQkFBQTtFQU9BLHVCQzdObUM7RUQ4Tm5DLHdCQzlObUM7RUQrTm5DLHlCNUMvT087RTRDaVBQLHFCQ2xPbUM7RXpCWG5DLHlJd0I4T0E7RUFFRSx5QkFBQTtBakUwdFVSO0FnQnQ5VVE7RWlEZ1BBLDBCQUFBO0FqRXl1VVI7QWlCejlVUTtFZ0RtUEEsMkJBQUE7QWpFeXVVUjtBeUM1OFVNO0V3QjZORjtJeEI1TkksZ0JBQUE7RXpDKzhVTjtBQUNGO0FZbnlVUTtFcUQ4REEseUJBQUE7QWpFd3VVUjtBWXR5VVE7RXFEOERBLHFDQUFBO0FqRTR1VVI7QWlFdHVVSTtFQUVJLHNCQUFBO0VBRUYsOEJBQUE7QWpFdXVVTjtBWS95VVE7RXFEc0VBLHNCQUFBO0FqRTR1VVI7QVlselVRO0VxRHNFQSwyQ0FBQTtBakVndlVSO0FpRXp1VUk7RUFFSSx3Q0FBQTtBakUydVVSO0FZMXpVUTtFcUQrRUEseUNBQUE7QWpFOHVVUjtBWTd6VVE7RXFEK0VBLHdDQUFBO0FqRWt2VVI7QWlFcnVVQTtFQUNFLHFCQUFBO0VBQ0EsV0FBQTtFQUNBLG1DM0N4S2lCO0UyQ3lLakIsMENBQUE7RWxEbktJLG1CQXRDYTtFa0Q0TWpCLGdCbkRyUnFCO0VtRHNSckIsZ0JuRGpSa0I7RW1Ea1JsQixzQkFBQTtFQUNBLGlCQUFBO0VwQ3RSRSxzQkFBQTtFb0N5UkYsd0JBQUE7S0FBQSxxQkFBQTtVQUFBLGdCQUFBO0VBRUUsY0FBQTtFQUNBLHVPQUFBO0VBQ0EscUJBQUE7QWpFcXVVSjtBWWwxVVE7RXFEMkdKLGNBQUE7RUFDQSx1T0FBQTtFQUNBLHFCQUFBO0FqRTB1VUo7QVl2MVVRO0VxRDJHSixnQ0FBQTtFQUNBLDRQQUFBO0VBQ0EsaUNBQUE7QWpFZ3ZVSjtBaUU3dVVFO0VBRUkscUJBQUE7RUFFRixVQUFBO0VBS0UsZ0RDelE4QjtBbEVtL1VwQztBWW4yVVE7RXFEa0hGLHFCQUFBO0FqRW92VU47QVl0MlVRO0VxRGtIRixzQ0FBQTtBakV3dlVOO0FpRTl1VUk7RUFPSSxjQUFBO0VBQ0Esc0JBQUE7QWpFMnVVUjtBWS8yVVE7RXFEbUlBLGdDQUFBO0VBQ0EsMkNBQUE7QWpFK3VVUjtBaUUxdVVFO0VBRUUsWUFBQTtFQU9BLHNCQUFBO0FqRXN1VUo7QWdCdGpWUTtFaUQyVUYsc0IzQ3pVbUI7QXRCdWpWekI7QWlCempWUTtFZ0Q4VUYscUIzQzVVbUI7QXRCMGpWekI7QWlFenVVRTtFQUVJLGNBQUE7RUFDQSx5QkFBQTtBakUwdVVOO0FZbDRVUTtFcUR1SkYsY0FBQTtFQUNBLHlCQUFBO0FqRTh1VU47QVl0NFVRO0VxRHVKRixnQ0FBQTtFQUNBLDBDQUFBO0FqRW12VU47QWlFOXVVRTtFQUNFLGFBQUE7QWpFaXZVSjtBaUU3dVVFO0VBQ0Usa0JBQUE7RUFDQSwwQkFBQTtBakUrdVVKO0FpRTN1VUE7RUFDRSxrQzNDalBpQjtFMkNrUGpCLG9CM0M3VjBCO0UyQzhWMUIsdUIzQzlWMEI7RVBnSHRCLHNCQXRDYTtBZm1nVm5CO0FnQnhsVlE7RWlEMldKLG9CM0MvVndCO0F0QitrVjVCO0FpQjNsVlE7RWdEOFdKLHFCM0NsV3dCO0F0QmtsVjVCO0FpRTN1VUE7RUFDRSxnQzNDN1BpQjtFMkM4UGpCLG1CM0NyVzBCO0UyQ3NXMUIsc0IzQ3RXMEI7RVAyR3RCLHFCQXRDYTtBZmdoVm5CO0FnQnJtVlE7RWlEd1hKLGtCM0N2V3dCO0F0QnVsVjVCO0FpQnhtVlE7RWdEMlhKLG1CM0MxV3dCO0F0QjBsVjVCO0FpRXR1VUE7RUFDRSxrQkFBQTtFQUNBLHFCQUFBO0VBQ0EsV0FBQTtFQUNBLG1DM0NwUmlCO0UyQ3FSakIsZ0JBQUE7QWpFeXVVRjtBaUV0dVVBO0VBQ0Usa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLG1DM0M1UmlCO0UyQzZSakIsU0FBQTtFQUNBLFVBQUE7QWpFeXVVRjtBaUV2dVVFO0VBQ0UsZ0QzQzdZMEI7RTJDK1l4QixxQkFBQTtBakV3dVVOO0FZbDhVUTtFcUQwTkYscUJBQUE7QWpFMnVVTjtBWXI4VVE7RXFEME5GLHNDQUFBO0FqRSt1VU47QWlFMXVVRTtFQUdJLHlCQUFBO0FqRTJ1VU47QVk3OFVRO0VxRGtPRix5QkFBQTtBakU4dVVOO0FZaDlVUTtFcURrT0YsMENBQUE7QWpFa3ZVTjtBaUU3dVVJO0VBQ0UsaUJDaFZhO0FsRWdrVm5CO0FpRTV1VUU7RUFDRSwwQkFBQTtBakU4dVVKO0FpRTF1VUE7RUFDRSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxRQUFBO0VBQ0EsT0FBQTtFQUNBLFVBQUE7RUFDQSxtQzNDaFVpQjtFMkNpVWpCLHlCQUFBO0VBRUEsZ0JuRDVhcUI7RW1ENmFyQixnQm5EeGFrQjtFbUR5YWxCLGlCQUFBO0VwQzVhRSxzQkFBQTtFb0NnYkEsY0FBQTtFQUNBLHNCQUFBO0VBQ0EscUJBQUE7QWpFMHVVSjtBWTUrVVE7RXFEZ1FKLGNBQUE7RUFDQSxzQkFBQTtFQUNBLHFCQUFBO0FqRSt1VUo7QVlqL1VRO0VxRGdRSixnQ0FBQTtFQUNBLDJDQUFBO0VBQ0EsaUNBQUE7QWpFcXZVSjtBaUVsdlVFO0VBQ0Usa0JBQUE7RUFDQSxNQUFBO0VBT0EsU0FBQTtFQUNBLFVBQUE7RUFDQSxjQUFBO0VBQ0EsNkIzQzlWMEI7RTJDK1YxQix5QkFBQTtFQUNBLGdCbkRoY2dCO0VtRGljaEIsaUJBQUE7RUFDQSxvQkFBQTtFcENyY0Esa0NBQUE7RW9Dd2NFLGNBQUE7RTdCcGRGLHlCNkJxZHVCO0FqRTh1VTNCO0FnQnJzVlE7RWlEdWNGLFFBQUE7QWpFaXdVTjtBaUJ4c1ZRO0VnRDBjRixPQUFBO0FqRWl3VU47QVk3Z1ZRO0VxRHdSRixjQUFBO0U3QnBkRix5QjZCcWR1QjtBakV3dlUzQjtBWWpoVlE7RXFEd1JGLGdDQUFBO0U3QnBkRiwyQzZCcWR1QjtBakU2dlUzQjtBaUVsdlVBO0VBQ0UsV0FBQTtFQUNBLGNBQUE7RUFDQSxVQUFBO0VBQ0EsNkJBQUE7RUFDQSx3QkFBQTtLQUFBLHFCQUFBO1VBQUEsZ0JBQUE7QWpFcXZVRjtBaUVudlVFO0VBQ0UsYUFBQTtBakVxdlVKO0FpRWp2VUk7RUFBMEIsbUVDemFlO0FsRTZwVjdDO0FpRW52VUk7RUFBMEIsbUVDMWFlO0FsRWdxVjdDO0FpRXJ2VUk7RUFBMEIsbUVDM2FlO0FsRW1xVjdDO0FpRXJ2VUU7RUFDRSxTQUFBO0FqRXV2VUo7QWlFcHZVRTtFQUNFLFdDeGJ5QztFRHliekMsWUN6YnlDO0VEMGJ6QyxvQkFBQTtFN0J4ZkEseUI2QjBmdUI7RUFFdkIsU0M1YnlDO0VyQ3BEekMsbUJBQUE7RVlGRSxvSHdCcWZGO0V4QnJmRSw0R3dCcWZGO0VBQ0Esd0JBQUE7VUFBQSxnQkFBQTtBakVtdlVKO0FZdmpWUTtFd0I1TEoseUI2QjBmdUI7QWpFNHZVM0I7QVkxalZRO0V3QjVMSix5QjZCMGZ1QjtBakVnd1UzQjtBeUM1dVZNO0V3QnVlSjtJeEJ0ZU0sd0JBQUE7SUFBQSxnQkFBQTtFekNndlZOO0FBQ0Y7QWlFOXZVSTtFN0JsZ0JBLHlCNkJvZ0J5QjtBakUrdlU3QjtBWXZrVlE7RXdCNUxKLHlCNkJvZ0J5QjtBakVrd1U3QjtBWTFrVlE7RXdCNUxKLHlCNkJvZ0J5QjtBakVzd1U3QjtBaUVqd1VFO0VBQ0UsV0NsZGdDO0VEbWRoQyxjQ2xkZ0M7RURtZGhDLGtCQUFBO0VBQ0EsZUNuZGdDO0VEb2RoQyx5QkFBQTtFcENsZ0JBLG1CQUFBO0VvQ3NnQkUseUJBQUE7QWpFa3dVTjtBWXhsVlE7RXFEc1ZGLHlCQUFBO0FqRXF3VU47QVkzbFZRO0VxRHNWRix5QkFBQTtBakV5d1VOO0FpRXJ3VUU7RUFDRSxXQ3pkeUM7RUQwZHpDLFlDMWR5QztFOUI5RHpDLHlCNkIwaEJ1QjtFQUV2QixTQzVkeUM7RXJDcER6QyxtQkFBQTtFWUZFLGlId0JxaEJGO0V4QnJoQkUsNEd3QnFoQkY7RUFDQSxxQkFBQTtPQUFBLGdCQUFBO0FqRXF3VUo7QVl6bVZRO0V3QjVMSix5QjZCMGhCdUI7QWpFOHdVM0I7QVk1bVZRO0V3QjVMSix5QjZCMGhCdUI7QWpFa3hVM0I7QXlDOXhWTTtFd0J3Z0JKO0l4QnZnQk0scUJBQUE7SUFBQSxnQkFBQTtFekNreVZOO0FBQ0Y7QWlFaHhVSTtFN0JsaUJBLHlCNkJvaUJ5QjtBakVpeFU3QjtBWXpuVlE7RXdCNUxKLHlCNkJvaUJ5QjtBakVveFU3QjtBWTVuVlE7RXdCNUxKLHlCNkJvaUJ5QjtBakV3eFU3QjtBaUVueFVFO0VBQ0UsV0NsZmdDO0VEbWZoQyxjQ2xmZ0M7RURtZmhDLGtCQUFBO0VBQ0EsZUNuZmdDO0VEcWY5Qix5QkFBQTtFQUVGLHlCQUFBO0VwQ3JpQkEsbUJBQUE7QTdCMHpWSjtBWTFvVlE7RXFEbVhGLHlCQUFBO0FqRTB4VU47QVk3b1ZRO0VxRG1YRix5QkFBQTtBakU4eFVOO0FpRXZ4VUU7RUFDRSxXQ3pmeUM7RUQwZnpDLFlDMWZ5QztFRDJmekMsYUFBQTtFQUNBLG9CM0NyakIwQjtFMkNzakIxQixtQjNDdGpCMEI7RWNMMUIseUI2QjZqQnVCO0VBRXZCLFNDL2Z5QztFckNwRHpDLG1CQUFBO0VZRkUsZ0h3QndqQkY7RXhCeGpCRSw0R3dCd2pCRjtFQUNBLGdCQUFBO0FqRXV4VUo7QVk5cFZRO0V3QjVMSix5QjZCNmpCdUI7QWpFZ3lVM0I7QVlqcVZRO0V3QjVMSix5QjZCNmpCdUI7QWpFb3lVM0I7QXlDbjFWTTtFd0J3aUJKO0l4QnZpQk0sb0JBQUE7SUFBQSxnQkFBQTtFekN1MVZOO0FBQ0Y7QWlFbHlVSTtFN0Jya0JBLHlCNkJ1a0J5QjtBakVteVU3QjtBWTlxVlE7RXdCNUxKLHlCNkJ1a0J5QjtBakVzeVU3QjtBWWpyVlE7RXdCNUxKLHlCNkJ1a0J5QjtBakUweVU3QjtBaUVyeVVFO0VBQ0UsV0NyaEJnQztFRHNoQmhDLGNDcmhCZ0M7RURzaEJoQyxrQkFBQTtFQUNBLGVDdGhCZ0M7RUR1aEJoQyw2QkFBQTtFQUNBLHlCQUFBO0VBQ0Esb0JBQUE7QWpFd3lVSjtBaUVweVVFO0VBRUkseUJBQUE7RXBDN2tCRixtQkFBQTtBN0JtM1ZKO0FZbnNWUTtFcUQ2WkYseUJBQUE7QWpFeXlVTjtBWXRzVlE7RXFENlpGLHlCQUFBO0FqRTZ5VU47QWlFeHlVRTtFQUNFLGtCQUFBO0VBRUUseUJBQUE7RXBDcmxCRixtQkFBQTtBN0JnNFZKO0FZaHRWUTtFcURxYUYseUJBQUE7QWpFOHlVTjtBWW50VlE7RXFEcWFGLHlCQUFBO0FqRWt6VU47QWlFNXlVSTtFQUVJLHlCQUFBO0FqRTh5VVI7QVkzdFZRO0VxRDZhQSx5QkFBQTtBakVpelVSO0FZOXRWUTtFcUQ2YUEseUJBQUE7QWpFcXpVUjtBaUVqelVJO0VBQ0UsZUFBQTtBakVvelVOO0FpRWp6VUk7RUFFSSx5QkFBQTtBakVrelVSO0FZenVWUTtFcUR1YkEseUJBQUE7QWpFcXpVUjtBWTV1VlE7RXFEdWJBLHlCQUFBO0FqRXl6VVI7QWlFcnpVSTtFQUNFLGVBQUE7QWpFd3pVTjtBaUVyelVJO0VBRUkseUJBQUE7QWpFc3pVUjtBWXZ2VlE7RXFEaWNBLHlCQUFBO0FqRXl6VVI7QVkxdlZRO0VxRGljQSx5QkFBQTtBakU2elVSO0FpRXZ6VUE7OztFeEJ6bkJNLDRHd0I0bkJKO0FqRTB6VUY7QXlDbDdWTTtFd0JxbkJOOzs7SXhCcG5CUSxnQkFBQTtFekN1N1ZOO0FBQ0Y7QW1FNThWQTs7OztFQUlFLGtCQUFBO0FuRSs4VkY7QW1FNThWQTtFQUNFLG1CQUFBO0FuRSs4VkY7QW9FMzdWSTtFQUNFLHFCQUFBO0VBT0EsdUJ0Q0drQjtFc0NGbEIsV0FBQTtFQXJDSix1QkFBQTtFQUNBLHFDQUFBO0VBQ0EsZ0JBQUE7RUFDQSxvQ0FBQTtBcEU2OVZGO0FnQjc5VlE7RW9ENEJBLG9CdENTZ0I7QTlCMjdWeEI7QWlCaCtWUTtFbUQrQkEscUJ0Q01nQjtBOUI4N1Z4QjtBZ0JuK1ZRO0VvRDREQSxjQUFBO0FwRTA2VlI7QWlCdCtWUTtFbUQrREEs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QjtBckUwdFdoQztBaUI5dFdRO0VrRHNHRixXQUFBO0VBQ0EsVUFBQTtFQUNBLHNCRXBHMEI7QXJFK3RXaEM7QW9FMXNXSTtFQUNFLHFCQUFBO0VBT0EsdUJ0Q0drQjtFc0NGbEIsV0FBQTtFQXZCSixtQ0FBQTtFQUNBLGVBQUE7RUFDQSxzQ0FBQTtFQUNBLHdCQUFBO0FwRTh0V0Y7QWdCNXVXUTtFb0Q0QkEsb0J0Q1NnQjtBOUIwc1d4QjtBaUIvdVdRO0VtRCtCQSxxQnRDTWdCO0E5QjZzV3hCO0FnQmx2V1E7RW9ENERBLGNBQUE7QXBFeXJXUjtBaUJydldRO0VtRCtEQSxlQUFBO0FwRXlyV1I7QW1FMW9XSTtFQUNFLGlCQUFBO0FuRTRvV047QW1FdG9XRTtFQUNFLE1BQUE7RUFDQSxhQUFBO0FuRXlvV0o7QWdCaHdXUTtFbUQwSEYsV0FBQTtFQUNBLFVBQUE7RUFDQSxzQkV4SDBCO0FyRWl3V2hDO0FpQnJ3V1E7RWtEK0hGLFdBQUE7RUFDQSxVQUFBO0VBQ0EscUJFN0gwQjtBckVzd1doQztBb0VqdldJO0VBQ0UscUJBQUE7RUFPQSx1QnRDR2tCO0VzQ0ZsQixXQUFBO0FwRTZ1V047QWdCL3dXUTtFb0Q0QkEsb0J0Q1NnQjtBOUI2dVd4QjtBaUJseFdRO0VtRCtCQSxxQnRDTWdCO0E5Qmd2V3hCO0FvRXh1V007RUFDRSxhQUFBO0FwRTB1V1I7QW9FdnVXTTtFQUNFLHFCQUFBO0VBQ0EscUJ0Q2RnQjtFc0NlaEIsdUJ0Q2hCZ0I7RXNDaUJoQixXQUFBO0VBbkNOLG1DQUFBO0VBQ0EseUJBQUE7RUFDQSxzQ0FBQTtBcEU2d1dGO0FnQmp5V1E7RW9ENERBLGNBQUE7QXBFd3VXUjtBaUJweVdRO0VtRCtEQSxlQUFBO0FwRXd1V1I7QW1FaHFXSTtFQUNFLGlCQUFBO0FuRWtxV047QW1FNXBXQTtFRzdJRSxTQUFBO0VBQ0EsZ0JBQUE7RUFDQSxnQkFBQTtFQUNBLDZCQUFBO0F0RTZ5V0Y7QVlubldRO0UwRDdMTixTQUFBO0VBQ0EsZ0JBQUE7RUFDQSxnQkFBQTtFQUNBLDZCQUFBO0F0RW16V0Y7QVl6bldRO0UwRDdMTixTQUFBO0VBQ0EsZ0JBQUE7RUFDQSxnQkFBQTtFQUNBLGdEQUFBO0F0RTB6V0Y7QW1FdnFXQTtFQUNFLGFBQUE7RUFDQSxtQkFBQTtFQUNBLFdBQUE7RUFDQSx1QkFBQTtFQUNBLFdBQUE7RUFDQSxnQnJEakpxQjtFcURrSnJCLG1CQUFBO0VBRUEsbUJBQUE7RUFDQSw2QkFBQTtFQUNBLFNBQUE7RUFHRSxjQUFBO0FuRXVxV0o7QVk5b1dRO0V1RHpCSixjQUFBO0FuRTBxV0o7QVlqcFdRO0V1RHpCSixnQ0FBQTtBbkU4cVdKO0FtQnIwV0U7RWdEdUtFLHFCQUFBO0VBSUUsY0FBQTtFL0J2TEYseUIrQndMdUI7QW5FK3BXM0I7QVkzcFdRO0V1RExGLGNBQUE7RS9CdkxGLHlCK0J3THVCO0FuRW1xVzNCO0FZL3BXUTtFdURMRixnQ0FBQTtFL0J2TEYseUIrQndMdUI7QW5Fd3FXM0I7QW1FcHFXRTtFQUVFLHFCQUFBO0VBSUUsV0FBQTtFL0JsTUYseUIrQm1NdUI7QW5FbXFXM0I7QVkxcVdRO0V1RE1GLFdBQUE7RS9CbE1GLHlCK0JtTXVCO0FuRXVxVzNCO0FZOXFXUTtFdURNRixXQUFBO0UvQmxNRix5QitCbU11QjtBbkU0cVczQjtBbUV4cVdFO0VBRUUsb0JBQUE7RUFDQSw2QkFBQTtFQU9FLGNBQUE7QW5Fb3FXTjtBWXpyV1E7RXVEcUJGLGNBQUE7QW5FdXFXTjtBWTVyV1E7RXVEcUJGLCtCQUFBO0FuRTJxV047QW1FdHFXQTtFQUNFLGNBQUE7QW5FeXFXRjtBbUVycVdBO0VBQ0UsY0FBQTtFQUNBLHVCRWxOOEI7RUZtTjlCLGdCQUFBO0VwRHJHSSxzQkF0Q2E7RW9ENklqQixtQkFBQTtFQUVFLGNBQUE7QW5FdXFXSjtBWTdzV1E7RXVEc0NKLGNBQUE7QW5FMHFXSjtBWWh0V1E7RXVEc0NKLGdDQUFBO0FuRThxV0o7QW1FenFXQTtFQUNFLGNBQUE7RUFDQSx1QkFBQTtFQUdFLGNBQUE7QW5FMHFXSjtBWTF0V1E7RXVEZ0RKLGNBQUE7QW5FNnFXSjtBWTd0V1E7RXVEZ0RKLGdDQUFBO0Fu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RSxnQkFBQTtFQUNBLGVBQUE7QXpFbThXSjtBeUV2N1dBO0VBQ0Usa0NuRGhEaUI7RW1EaURqQix1QkFBQTtFMUQ1Q0ksc0JBdENhO0UwRG9GakIsZ0IzQ3RLZ0I7RURXZCxxQkFBQTtBN0JzbFhKO0F5RXY3V0E7RUFDRSxnQ25EdkRpQjtFbUR3RGpCLG9CQUFBO0UxRHBESSxxQkF0Q2E7RTBENEZqQixnQjNDL0tnQjtFRFlkLHFCQUFBO0E3QjhsWEo7QXlFcjdXRTtFQUVFLFlBQUE7QXpFdTdXSjtBeUVuN1dBO0VBQ0UsWUFBQTtBekVzN1dGO0F5RTk2V0E7RUFDRSxtQm5EbEUwQjtBdEJtL1c1QjtBeUU5NldBO0VBQ0UsY0FBQTtFQUNBLG1CbkRqRnNCO0F0QmtnWHhCO0F5RXo2V0E7RUFDRSxhQUFBO0VBQ0EsZUFBQTtFQUNBLGtCQUFBO0VBQ0EsaUJBQUE7QXpFNDZXRjtBeUUxNldFOztFQUVFLGtCQUFBO0VBQ0EsaUJBQUE7QXpFNDZXSjtBeUVuNldBO0VBQ0Usa0JBQUE7RUFDQSxjQUFBO0F6RXM2V0Y7QWdCOW9YUTtFeUQwT0oscUJuRDdHeUI7QXRCb2hYN0I7QWlCanBYUTtFd0Q2T0osc0JuRGhIeUI7QXRCdWhYN0I7QXlFbjZXQTtFQUNFLGtCQUFBO0VBQ0Esa0JuRHJIMkI7QXRCMmhYN0I7QWdCenBYUTtFeURxUEoscUJBQUE7QXpFdTZXSjtBaUI1cFhRO0V3RHdQSixzQkFBQTtBekV1NldKO0F5RW42V0U7RUFHSSxjQUFBO0F6RW02V047QVlwK1dRO0U2RGlFRiwrQkFBQTtBekVzNldOO0F5RWo2V0E7RUFDRSxnQkFBQTtBekVvNldGO0F5RWo2V0E7RUFDRSxvQkFBQTtFQUNBLG1CQUFBO0F6RW82V0Y7QWdCOXFYUTtFeUQ0UUosZUFBQTtFQUNBLHFCbkQ1SWdDO0F0QmlqWHBDO0FpQmxyWFE7RXdEZ1JKLGdCQUFBO0VBQ0Esb0JuRGhKZ0M7QXRCcWpYcEM7QXlFajZXRTtFQUNFLGdCQUFBO0VBQ0EsYUFBQTtBekVtNldKO0FnQjFyWFE7RXlEeVJGLHVCbkR2SjhCO0VtRHdKOUIsY0FBQTtBekVvNldOO0FpQjlyWFE7RXdENlJGLGVBQUE7RUFDQSxzQm5ENUo4QjtBdEJna1hwQztBMEV2cFhFO0VBQ0UsYUFBQTtFQUNBLFdBQUE7RUFDQSxtQnBENkVvQjtFUHZEcEIsY0FBQTtFMkRwQkEsY0Q0UHFDO0F6RTg1V3pDO0EwRXZwWEU7RUFDRSxrQkFBQTtFQUNBLFNBQUE7RUFDQSxVQUFBO0VBQ0EsYUFBQTtFQUNBLGVBQUE7RUFDQSx1QkFBQTtFQUNBLGtCQUFBO0UzRGlFRSxzQkF0Q2E7RTJEekJmLGdCNUQzQ2dCO0U0RDRDaEIsV0FBQTtFQUNBLHdDQUFBO0U3Q2hEQSxzQkFBQTtBN0Iyc1hKO0EwRXRwWEk7Ozs7RUFFRSxjQUFBO0ExRTJwWE47QTBFanNYSTtFQTRDRSxxQkRpT21DO0VDeE5qQyxpUkFBQTtFQUNBLDRCQUFBO0VBT0EsZ0VBQUE7QTFFMm9YUjtBZ0J2dVhRO0UwRCtFRSxvQ3BEa0NvQjtBdEJ5blg5QjtBaUIxdVhRO0V5RGtGRSxtQ3BEK0JvQjtBdEI0blg5QjtBZ0I3dVhRO0UwRHVGRSwyREFBQTtBMUV5cFhWO0FpQmh2WFE7RXlEMEZFLDBEQUFBO0ExRXlwWFY7QTBFcHBYTTtFQUNFLHFCRDRNaUM7RUMzTWpDLGdEQUFBO0ExRXNwWFI7QWdCdnZYUTtFMEQyR0Usb0NwRE1vQjtFb0RMcEIsa0ZBQUE7QTFFZ3BYVjtBaUI1dlhRO0V5RCtHRSxtQ3BERW9CO0VvRERwQixpRkFBQTtBMUVncFhWO0EwRWp1WEk7RUF5RkUscUJEb0xtQztFQzNLakMsdWpCQUFBO0ExRW9vWFI7QWdCcndYUTtFMEQ0SEUsdUNSdkZtQztBbEVtdVg3QztBaUJ4d1hRO0V5RCtIRSxzQ1IxRm1DO0FsRXN1WDdDO0EwRXZvWE07RUFDRSxxQkR1S2lDO0VDdEtqQyxnREFBQTtBMUV5b1hSO0EwRWxvWE07RUFDRSxjRDhKaUM7QXpFdStXekM7QTBFbG9YTTs7O0VBRUUsY0FBQTtBMUVxb1hSO0EwRTluWE07RUFDRSxjRGlKaUM7QXpFZy9XekM7QTBFL25YUTtFQUNFLHFCRDhJK0I7QXpFbS9XekM7QTBFNW5YUTtFQUNFLHFCQUFBO0V0Q2xLTix5QnNDbUsyQjtBMUU4blgvQjtBMEV6blhRO0VBQ0UsZ0RBQUE7QTFFMm5YVjtBMEV4blhRO0VBQ0UscUJBVnFCO0ExRW9vWC9CO0EwRWpuWE07RUFDRSxxQkFwQnVCO0ExRXdvWC9CO0EwRWhuWFE7RUFDRSxxQkF6QnFCO0VBMEJyQixnREFBQTtBMUVrblhWO0EwRXR3WEU7RUFDRSxhQUFBO0VBQ0EsV0FBQTtFQUNBLG1CcEQ2RW9CO0VQdkRwQixjQUFBO0UyRHBCQSxjRDRQcUM7QXpFNmdYekM7QTBFdHdYRTtFQUNFLGtCQUFBO0VBQ0EsU0FBQTtFQUNBLFVBQUE7RUFDQSxhQUFBO0VBQ0EsZUFBQTtFQUNBLHVCQUFBO0VBQ0Esa0JBQUE7RTNEaUVFLHNCQXRDYTtFMkR6QmYsZ0I1RDNDZ0I7RTRENENoQixXQUFBO0VBQ0Esd0NBQUE7RTdDaERBLHNCQUFBO0E3QjB6WEo7QTBFcndYSTs7OztFQUVFLGNBQUE7QTFFMHdYTjtBMEVoelhJO0VBNENFLHFCRGlPbUM7RUN4TmpDLDRVQUFBO0VBQ0EsNEJBQUE7RUFPQSxnRUFBQTtBMUUwdlhSO0FnQnQxWFE7RTBEK0VFLG9DcERrQ29CO0F0Qnd1WDlCO0FpQnoxWFE7RXlEa0ZFLG1DcEQrQm9CO0F0QjJ1WDlCO0FnQjUxWFE7RTBEdUZFLDJEQUFBO0ExRXd3WFY7QWlCLzFYUTtFeUQwRkUsMERBQUE7QTFFd3dYVjtBMEVud1hNO0VBQ0UscUJENE1pQztFQzNNakMsZ0RBQUE7QTFFcXdYUjtBZ0J0MlhRO0UwRDJHRSxvQ3BETW9CO0VvRExwQixrRkFBQTtBMUUrdlhWO0FpQjMyWFE7RXlEK0dFLG1DcERFb0I7RW9ERHBCLGlGQUFBO0ExRSt2WFY7QTBFaDFYSTtFQXlGRSxxQkRvTG1DO0VDM0tqQyxrbkJBQUE7QTFFbXZYUjtBZ0JwM1hRO0UwRDRIRSx1Q1J2Rm1DO0FsRWsxWDdDO0FpQnYzWFE7RXlEK0hFLHNDUjFGbUM7QWxFcTFYN0M7QTBFdHZYTTtFQUNFLHFCRHVLaUM7RUN0S2pDLGdEQUFBO0ExRXd2WFI7QTBFanZYTTtFQUNFLGNEOEppQztBekVzbFh6QztBMEVqdlhNOzs7RUFFRSxjQUFBO0ExRW92WFI7QTBFN3VYTTtFQUNFLGNEaUppQztBekUrbFh6QztBMEU5dVhRO0VBQ0UscUJEOEkrQjtBekVrbVh6QztBMEUzdVhRO0VBQ0UscUJBQUE7RXRDbEtOLHlCc0NtSzJCO0ExRTZ1WC9CO0EwRXh1WFE7RUFDRSxnREFBQTtBMUUwdVhWO0EwRXZ1WFE7RUFDRSxxQkFWcUI7QTFFbXZYL0I7QTBFaHVYTTtFQUNFLHFCQXBCdUI7QTFFdXZYL0I7QTBFL3RYUTtFQUNFLHFCQXpCcUI7RUEwQnJCLGdEQUFBO0ExRWl1WFY7QXlFeG1YQTtFQUNFLGFBQUE7RUFDQSxtQkFBQTtFQUNBLG1CQUFBO0F6RTJtWEY7QXlFdG1YRTtFQUNFLFdBQUE7QXpFd21YSjtBd0RwMlhJO0VpQmlRQTtJQUNFLGFBQUE7SUFDQSxtQkFBQTtJQUNBLHVCQUFBO0lBQ0EsZ0JBQUE7RXpFc21YSjtFeUVsbVhFO0lBQ0UsYUFBQTtJQUNBLGNBQUE7SUFDQSxtQkFBQTtJQUNBLG1CQUFBO0lBQ0EsZ0JBQUE7RXpFb21YSjtFeUVobVhFO0lBQ0UscUJBQUE7SUFDQSxXQUFBO0lBQ0Esc0JBQUE7RXpFa21YSjtFeUU5bFhFO0lBQ0UscUJBQUE7RXpFZ21YSjtFeUU3bFhFOztJQUVFLFdBQUE7RXpFK2xYSjtFeUUxbFhFO0lBQ0UsYUFBQTtJQUNBLG1CQUFBO0lBQ0EsdUJBQUE7SUFDQSxXQUFBO0V6RTRsWEo7RWdCejhYTTtJeUQrV0EsZUFBQTtFekU2bFhOO0VpQjU4WE07SXdEa1hBLGdCQUFBO0V6RTZsWE47RXlFMWxYRTtJQUNFLGtCQUFBO0lBQ0EsY0FBQTtJQUNBLGFBQUE7RXpFNGxYSjtFZ0JwOVhNO0l5RDBYQSxxQm5EM1BxQjtJbUQ0UHJCLGNBQUE7RXpFNmxYTjtFaUJ4OVhNO0l3RDhYQSxlQUFBO0lBQ0Esb0JuRGhRcUI7RXRCNjFYM0I7RXlFemxYRTtJQUNFLG1CQUFBO0lBQ0EsdUJBQUE7RXpFMmxYSjtFeUV6bFhFO0lBQ0UsZ0JBQUE7RXpFMmxYSjtBQUNGO0F5RXZsWEE7RUFDRSxlQUFBO0VBQ0EsaUJuRDlZdUI7QXRCdytYekI7QXlFdmxYQTtFNUNwWUksc0JBQUE7QTdCKzlYSjtBeUV2bFhBO0U1Q3hZSSxzQkFBQTtBN0JtK1hKO0EyRS8rWEU7RUNEQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxrQkFBQTtFQUNBLGtCQUFBO0VBQ0EsaUJBQUE7QTVFby9YRjtBd0RwN1hJO0VtQm5FRjtJQ1dJLGdCQ1VpQjtFN0VzK1hyQjtBQUNGO0F3RHo3WEk7RW1CbkVGO0lDV0ksZ0JDVWlCO0U3RTIrWHJCO0FBQ0Y7QXdEOTdYSTtFbUJuRUY7SUNXSSxnQkNVaUI7RTdFZy9YckI7QUFDRjtBd0RuOFhJO0VtQm5FRjtJQ1dJLGlCQ1VpQjtFN0VxL1hyQjtBQUNGO0F3RHg4WEk7RW1CbkVGO0lDV0ksaUJDVWlCO0U3RTAvWHJCO0FBQ0Y7QTJFMWdZRTtFQ1BBLFdBQUE7RUFDQSxtQkFBQTtFQUNBLGtCQUFBO0VBQ0Esa0JBQUE7RUFDQSxpQkFBQTtBNUVxaFlGO0F3RHI5WEk7RW1CbERFO0lBQ0UsZ0JFR2U7RTdFd2dZckI7QUFDRjtBd0QzOVhJO0VtQmxERTtJQUNFLGdCRUdlO0U3RTZnWXJCO0FBQ0Y7QXdEaCtYSTtFbUJsREU7SUFDRSxnQkVHZTtFN0VraFlyQjtBQUNGO0F3RHIrWEk7RW1CbERFO0lBQ0UsaUJFR2U7RTdFdWhZckI7QUFDRjtBd0QxK1hJO0VtQmxERTtJQUNFLGlCRUdlO0U3RTRoWXJCO0FBQ0Y7QTJFcGdZRTtFQzdCQSxhQUFBO0VBQ0EsZUFBQTtFQUNBLG1CQUFBO0VBQ0Esa0JBQUE7QTVFb2lZRjtBMkVwZ1lFO0VBQ0UsZUFBQTtFQUNBLGNBQUE7QTNFdWdZSjtBMkVyZ1lJOztFQUVFLGdCQUFBO0VBQ0EsZUFBQTtBM0V1Z1lOO0E4RWprWUU7Ozs7Ozs7RUFDRSxrQkFBQTtFQUNBLFdBQUE7RUFDQSxtQkFBQTtFQUNBLGtCQUFBO0E5RTBrWUo7QThFcGpZTTtFQUNFLGFBQUE7RUFDQSxZQUFBO0VBQ0EsWUFBQTtFQUNBLGVBQUE7QTlFdWpZUjtBNEU1aFlFO0VBQ0UsY0FBQTtFQUNBLGVBQUE7QTVFK2hZSjtBNEVqaVlFO0VBQ0UsYUFBQTtFQUNBLGNBQUE7QTVFb2lZSjtBNEV0aVlFO0VBQ0Usd0JBQUE7RUFDQSx5QkFBQTtBNUV5aVlKO0E0RTNpWUU7RUFDRSxhQUFBO0VBQ0EsY0FBQTtBNUU4aVlKO0E0RWhqWUU7RUFDRSxhQUFBO0VBQ0EsY0FBQTtBNUVtallKO0E0RXJqWUU7RUFDRSx3QkFBQTtFQUNBLHlCQUFBO0E1RXdqWUo7QThFMWtZTTtFRkFKLGNBQUE7RUFDQSxXQUFBO0VBQ0EsZUFBQTtBNUU4a1lGO0E4RTFrWVU7RUZkUix1QkFBQTtFQUlBLHdCQUFBO0E1RXlsWUY7QThFL2tZVTtFRmRSLHdCQUFBO0VBSUEseUJBQUE7QTVFOGxZRjtBOEVwbFlVO0VGZFIsYUFBQTtFQUlBLGNBQUE7QTVFbW1ZRjtBOEV6bFlVO0VGZFIsd0JBQUE7RUFJQSx5QkFBQTtBNUV3bVlGO0E4RTlsWVU7RUZkUix3QkFBQTtFQUlBLHlCQUFBO0E1RTZtWUY7QThFbm1ZVTtFRmRSLGFBQUE7RUFJQSxjQUFBO0E1RWtuWUY7QThFeG1ZVTtFRmRSLHdCQUFBO0VBSUEseUJBQUE7QTVFdW5ZRjtBOEU3bVlVO0VGZFIsd0JBQUE7RUFJQSx5QkFBQTtBNUU0bllGO0E4RWxuWVU7RUZkUixhQUFBO0VBSUEsY0FBQTtBNUVpb1lGO0E4RXZuWVU7RUZkUix3QkFBQTtFQUlBLHlCQUFBO0E1RXNvWUY7QThFNW5ZVTtFRmRSLHdCQUFBO0VBSUEseUJBQUE7QTVFMm9ZRjtBOEVqb1lVO0VGZFIsY0FBQTtFQUlBLGVBQUE7QTVFZ3BZRjtBOEVob1lNO0VBQXdCLFNBQUE7QTlFb29ZOUI7QThFbG9ZTTtFQUF1QixTQUFBO0E5RXNvWTdCO0E4RW5vWVE7RUFBd0IsUUFEYjtBOUV3b1luQjtBOEV2b1lRO0VBQXdCLFFBRGI7QTlFNG9ZbkI7QThFM29ZUTtFQUF3QixRQURiO0E5RWdwWW5CO0E4RS9vWVE7RUFBd0IsUUFEYjtBOUVvcFluQjtBOEVucFlRO0VBQXdCLFFBRGI7QTlFd3BZbkI7QThFdnBZUTtFQUF3QixRQURiO0E5RTRwWW5CO0E4RTNwWVE7RUFBd0IsUUFEYjtBOUVncVluQjtBOEUvcFlRO0VBQXdCLFFBRGI7QTlFb3FZbkI7QThFbnFZUTtFQUF3QixRQURiO0E5RXdxWW5CO0E4RXZxWVE7RUFBd0IsUUFEYjtBOUU0cVluQjtBOEUzcVlRO0VBQXdCLFNBRGI7QTlFZ3JZbkI7QThFL3FZUTtFQUF3QixTQURiO0E5RW9yWW5CO0E4RW5yWVE7RUFBd0IsU0FEYjtBOUV3clluQjtBOEVocllZO0VGakJWLDBCQUFBO0E1RXFzWUY7QThFcHJZWTtFRmpCViwyQkFBQTtBNUV5c1lGO0E4RXhyWVk7RUZqQlYsZ0JBQUE7QTVFNnNZRjtBOEU1cllZO0VGakJWLDJCQUFBO0E1RWl0WUY7QThFaHNZWTtFRmpCViwyQkFBQTtBNUVxdFlGO0E4RXBzWVk7RUZqQlYsZ0JBQUE7QTVFeXRZRjtBOEV4c1lZO0VGakJWLDJCQUFBO0E1RTZ0WUY7QThFNXNZWTtFRmpCViwyQkFBQTtBNUVpdVlGO0E4RWh0WVk7RUZqQlYsZ0JBQUE7QTVFcXVZRjtBOEVwdFlZO0VGakJWLDJCQUFBO0E1RXl1WUY7QThFeHRZWTtFRmpCViwyQkFBQTtBNUU2dVlGO0F3RDN0WUk7RXNCeENFO0lBQ0UsYUFBQTtJQUNBLFlBQUE7SUFDQSxZQUFBO0lBQ0EsZUFBQTtFOUV1d1lOOztFNEU1dVlBO0lBQ0UsY0FBQTtJQUNBLGVBQUE7RTVFK3VZRjs7RTRFanZZQTtJQUNFLGFBQUE7SUFDQSxjQUFBO0U1RW92WUY7O0U0RXR2WUE7SUFDRSx3QkFBQTtJQUNBLHlCQUFBO0U1RXl2WUY7O0U0RTN2WUE7SUFDRSxhQUFBO0lBQ0EsY0FBQTtFNUU4dllGOztFNEVod1lBO0lBQ0UsYUFBQTtJQUNBLGNBQUE7RTVFbXdZRjs7RTRFcndZQTtJQUNFLHdCQUFBO0lBQ0EseUJBQUE7RTVFd3dZRjs7RThFMXhZSTtJRkFKLGNBQUE7SUFDQSxXQUFBO0lBQ0EsZUFBQTtFNUU4eFlBOztFOEUxeFlRO0lGZFIsdUJBQUE7SUFJQSx3QkFBQTtFNUV5eVlBOztFOEUveFlRO0lGZFIsd0JBQUE7SUFJQSx5QkFBQTtFNUU4eVlBOztFOEVweVlRO0lGZFIsYUFBQTtJQUlBLGNBQUE7RTVFbXpZQTs7RThFenlZUTtJRmRSLHdCQUFBO0lBSUEseUJBQUE7RTVFd3pZQTs7RThFOXlZUTtJRmRSLHdCQUFBO0lBSUEseUJBQUE7RTVFNnpZQTs7RThFbnpZUTtJRmRSLGFBQUE7SUFJQSxjQUFBO0U1RWswWUE7O0U4RXh6WVE7SUZkUix3QkFBQTtJQUlBLHlCQUFBO0U1RXUwWUE7O0U4RTd6WVE7SUZkUix3QkFBQTtJQUlBLHlCQUFBO0U1RTQwWUE7O0U4RWwwWVE7SUZkUixhQUFBO0lBSUEsY0FBQTtFNUVpMVlBOztFOEV2MFlRO0lGZFIsd0JBQUE7SUFJQSx5QkFBQTtFNUVzMVlBOztFOEU1MFlRO0lGZFIsd0JBQUE7SUFJQSx5QkFBQTtFNUUyMVlBOztFOEVqMVlRO0lGZFIsY0FBQTtJQUlBLGVBQUE7RTVFZzJZQTs7RThFaDFZSTtJQUF3QixTQUFBO0U5RW8xWTVCOztFOEVsMVlJO0lBQXVCLFNBQUE7RTlFczFZM0I7O0U4RW4xWU07SUFBd0IsUUFEYjtFOUV3MVlqQjs7RThFdjFZTTtJQUF3QixRQURiO0U5RTQxWWpCOztFOEUzMVlNO0lBQXdCLFFBRGI7RTlFZzJZakI7O0U4RS8xWU07SUFBd0IsUUFEYjtFOUVvMllqQjs7RThFbjJZTTtJQUF3QixRQURiO0U5RXcyWWpCOztFOEV2MllNO0lBQXdCLFFBRGI7RTlFNDJZakI7O0U4RTMyWU07SUFBd0IsUUFEYjtFOUVnM1lqQjs7RThFLzJZTTtJQUF3QixRQURiO0U5RW8zWWpCOztFOEVuM1lNO0lBQXdCLFFBRGI7RTlFdzNZakI7O0U4RXYzWU07SUFBd0IsUUFEYjtFOUU0M1lqQjs7RThFMzNZTTtJQUF3QixTQURiO0U5RWc0WWpCOztFOEUvM1lNO0lBQXdCLFNBRGI7RTlFbzRZakI7O0U4RW40WU07SUFBd0IsU0FEYjtFOUV3NFlqQjs7RThFaDRZVTtJRmpCVixjQUFBO0U1RXE1WUE7O0U4RXA0WVU7SUZqQlYsMEJBQUE7RTVFeTVZQTs7RThFeDRZVTtJRmpCViwyQkFBQTtFNUU2NVlBOztFOEU1NFlVO0lGakJWLGdCQUFBO0U1RWk2WUE7O0U4RWg1WVU7SUZqQlYsMkJBQUE7RTVFcTZZQTs7RThFcDVZVTtJRmpCViwyQkFBQTtFNUV5NllBOztFOEV4NVlVO0lGakJWLGdCQUFBO0U1RTY2WUE7O0U4RTU1WVU7SUZqQlYsMkJBQUE7RTVFaTdZQTs7RThFaDZZVTtJRmpCViwyQkFBQTtFNUVxN1lBOztFOEVwNllVO0lGakJWLGdCQUFBO0U1RXk3WUE7O0U4RXg2WVU7SUZqQlYsMkJBQUE7RTVFNjdZQTs7RThFNTZZVTtJRmpCViwyQkFBQTtFNUVpOFlBO0FBQ0Y7QXdEaDdZSTtFc0J4Q0U7SUFDRSxhQUFBO0lBQ0EsWUFBQTtJQUNBLFlBQUE7SUFDQSxlQUFBO0U5RTI5WU47O0U0RWg4WUE7SUFDRSxjQUFBO0lBQ0EsZUFBQTtFNUVtOFlGOztFNEVyOFlBO0lBQ0UsYUFBQTtJQUNBLGNBQUE7RTVFdzhZRjs7RTRFMThZQTtJQUNFLHdCQUFBO0lBQ0EseUJBQUE7RTVFNjhZRjs7RTRFLzhZQTtJQUNFLGFBQUE7SUFDQSxjQUFBO0U1RWs5WUY7O0U0RXA5WUE7SUFDRSxhQUFBO0lBQ0EsY0FBQTtFNUV1OVlGOztFNEV6OVlBO0lBQ0Usd0JBQUE7SUFDQSx5QkFBQTtFNUU0OVlGOztFOEU5K1lJO0lGQUosY0FBQTtJQUNBLFdBQUE7SUFDQSxlQUFBO0U1RWsvWUE7O0U4RTkrWVE7SUZkUix1QkFBQTtJQUlBLHdCQUFBO0U1RTYvWUE7O0U4RW4vWVE7SUZkUix3QkFBQTtJQUlBLHlCQUFBO0U1RWtnWkE7O0U4RXgvWVE7SUZkUixhQUFBO0lBSUEsY0FBQTtFNUV1Z1pBOztFOEU3L1lRO0lGZFIsd0JBQUE7SUFJQSx5QkFBQTtFNUU0Z1pBOztFOEVsZ1pRO0lGZFIsd0JBQUE7SUFJQSx5QkFBQTtFNUVpaFpBOztFOEV2Z1pRO0lGZFIsYUFBQTtJQUlBLGNBQUE7RTVFc2haQTs7RThFNWdaUTtJRmRSLHdCQUFBO0lBSUEseUJBQUE7RTVFMmhaQTs7RThFamhaUTtJRmRSLHdCQUFBO0lBSUEseUJBQUE7RTVFZ2laQTs7RThFdGhaUTtJRmRSLGFBQUE7SUFJQSxjQUFBO0U1RXFpWkE7O0U4RTNoWlE7SUZkUix3QkFBQTtJQUlBLHlCQUFBO0U1RTBpWkE7O0U4RWhpWlE7SUZkUix3QkFBQTtJQUlBLHlCQUFBO0U1RStpWkE7O0U4RXJpWlE7SUZkUixjQUFBO0lBSUEsZUFBQTtFNUVvalpBOztFOEVwaVpJO0lBQXdCLFNBQUE7RTlFd2laNUI7O0U4RXRpWkk7SUFBdUIsU0FBQTtFOUUwaVozQjs7RThFdmlaTTtJQUF3QixRQURiO0U5RTRpWmpCOztFOEUzaVpNO0lBQXdCLFFBRGI7RTlFZ2paakI7O0U4RS9pWk07SUFBd0IsUUFEYjtFOUVvalpqQjs7RThFbmpaTTtJQUF3QixRQURiO0U5RXdqWmpCOztFOEV2alpNO0lBQXdCLFFBRGI7RTlFNGpaakI7O0U4RTNqWk07SUFBd0IsUUFEYjtFOUVna1pqQjs7RThFL2paTTtJQUF3QixRQURiO0U5RW9rWmpCOztFOEVua1pNO0lBQXdCLFFBRGI7RTlFd2taakI7O0U4RXZrWk07SUFBd0IsUUFEYjtFOUU0a1pqQjs7RThFM2taTTtJQUF3QixRQURiO0U5RWdsWmpCOztFOEUva1pNO0lBQXdCLFNBRGI7RTlFb2xaakI7O0U4RW5sWk07SUFBd0IsU0FEYjtFOUV3bFpqQjs7RThFdmxaTTtJQUF3QixTQURiO0U5RTRsWmpCOztFOEVwbFpVO0lGakJWLGNBQUE7RTVFeW1aQTs7RThFeGxaVTtJRmpCViwwQkFBQTtFNUU2bVpBOztFOEU1bFpVO0lGakJWLDJCQUFBO0U1RWluWkE7O0U4RWhtWlU7SUZqQlYsZ0JBQUE7RTVFcW5aQTs7RThFcG1aVTtJRmpCViwyQkFBQTtFNUV5blpBOztFOEV4bVpVO0lGakJWLDJCQUFBO0U1RTZuWkE7O0U4RTVtWlU7SUZqQlYsZ0JBQUE7RTVFaW9aQTs7RThFaG5aVTtJRmpCViwyQkFBQTtFNUVxb1pBOztFOEVwblpVO0lGakJWLDJCQUFBO0U1RXlvWkE7O0U4RXhuWlU7SUZqQlYsZ0JBQUE7RTVFNm9aQTs7RThFNW5aVTtJRmpCViwyQkFBQTtFNUVpcFpBOztFOEVob1pVO0lGakJWLDJCQUFBO0U1RXFwWkE7QUFDRjtBd0Rwb1pJO0VzQnhDRTtJQUNFLGFBQUE7SUFDQSxZQUFBO0lBQ0EsWUFBQTtJQUNBLGVBQUE7RTlFK3FaTjs7RTRFcHBaQTtJQUNFLGNBQUE7SUFDQSxlQUFBO0U1RXVwWkY7O0U0RXpwWkE7SUFDRSxhQUFBO0lBQ0EsY0FBQTtFNUU0cFpGOztFNEU5cFpBO0lBQ0Usd0JBQUE7SUFDQSx5QkFBQTtFNUVpcVpGOztFNEVucVpBO0lBQ0UsYUFBQTtJQUNBLGNBQUE7RTVFc3FaRjs7RTRFeHFaQTtJQUNFLGFBQUE7SUFDQSxjQUFBO0U1RTJxWkY7O0U0RTdxWkE7SUFDRSx3QkFBQTtJQUNBLHlCQUFBO0U1RWdyWkY7O0U4RWxzWkk7SUZBSixjQUFBO0lBQ0EsV0FBQTtJQUNBLGVBQUE7RTVFc3NaQTs7RThFbHNaUTtJRmRSLHVCQUFBO0lBSUEsd0JBQUE7RTVFaXRaQTs7RThFdnNaUTtJRmRSLHdCQUFBO0lBSUEseUJBQUE7RTVFc3RaQTs7RThFNXNaUTtJRmRSLGFBQUE7SUFJQSxjQUFBO0U1RTJ0WkE7O0U4RWp0WlE7SUZkUix3QkFBQTtJQUlBLHlCQUFBO0U1RWd1WkE7O0U4RXR0WlE7SUZkUix3QkFBQTtJQUlBLHlCQUFBO0U1RXF1WkE7O0U4RTN0WlE7SUZkUixhQUFBO0lBSUEsY0FBQTtFNUUwdVpBOztFOEVodVpRO0lGZFIsd0JBQUE7SUFJQSx5QkFBQTtFNUUrdVpBOztFOEVydVpRO0lGZFIsd0JBQUE7SUFJQSx5QkFBQTtFNUVvdlpBOztFOEUxdVpRO0lGZFIsYUFBQTtJQUlBLGNBQUE7RTVFeXZaQTs7RThFL3VaUTtJRmRSLHdCQUFBO0lBSUEseUJBQUE7RTVFOHZaQTs7RThFcHZaUTtJRmRSLHdCQUFBO0lBSUEseUJBQUE7RTVFbXdaQTs7RThFenZaUTtJRmRSLGNBQUE7SUFJQSxlQUFBO0U1RXd3WkE7O0U4RXh2Wkk7SUFBd0IsU0FBQTtFOUU0dlo1Qjs7RThFMXZaSTtJQUF1QixTQUFBO0U5RTh2WjNCOztFOEUzdlpNO0lBQXdCLFFBRGI7RTlFZ3daakI7O0U4RS92Wk07SUFBd0IsUUFEYjtFOUVvd1pqQjs7RThFbndaTTtJQUF3QixRQURiO0U5RXd3WmpCOztFOEV2d1pNO0lBQXdCLFFBRGI7RTlFNHdaakI7O0U4RTN3Wk07SUFBd0IsUUFEYjtFOUVneFpqQjs7RThFL3daTTtJQUF3QixRQURiO0U5RW94WmpCOztFOEVueFpNO0lBQXdCLFFBRGI7RTlFd3haakI7O0U4RXZ4Wk07SUFBd0IsUUFEYjtFOUU0eFpqQjs7RThFM3haTTtJQUF3QixRQURiO0U5RWd5WmpCOztFOEUveFpNO0lBQXdCLFFBRGI7RTlFb3laakI7O0U4RW55Wk07SUFBd0IsU0FEYjtFOUV3eVpqQjs7RThFdnlaTTtJQUF3QixTQURiO0U5RTR5WmpCOztFOEUzeVpNO0lBQXdCLFNBRGI7RTlFZ3paakI7O0U4RXh5WlU7SUZqQlYsY0FBQTtFNUU2elpBOztFOEU1eVpVO0lGakJWLDBCQUFBO0U1RWkwWkE7O0U4RWh6WlU7SUZqQlYsMkJBQUE7RTVFcTBaQTs7RThFcHpaVTtJRmpCVixnQkFBQTtFNUV5MFpBOztFOEV4elpVO0lGakJWLDJCQUFBO0U1RTYwWkE7O0U4RTV6WlU7SUZqQlYsMkJBQUE7RTVFaTFaQTs7RThFaDBaVTtJRmpCVixnQkFBQTtFNUVxMVpBOztFOEVwMFpVO0lGakJWLDJCQUFBO0U1RXkxWkE7O0U4RXgwWlU7SUZqQlYsMkJBQUE7RTVFNjFaQTs7RThFNTBaVTtJRmpCVixnQkFBQTtFNUVpMlpBOztFOEVoMVpVO0lGakJWLDJCQUFBO0U1RXEyWkE7O0U4RXAxWlU7SUZqQlYsMkJBQUE7RTVFeTJaQTtBQUNGO0F3RHgxWkk7RXNCeENFO0lBQ0UsYUFBQTtJQUNBLFlBQUE7SUFDQSxZQUFBO0lBQ0EsZUFBQTtFOUVtNFpOOztFNEV4MlpBO0lBQ0UsY0FBQTtJQUNBLGVBQUE7RTVFMjJaRjs7RTRFNzJaQTtJQUNFLGFBQUE7SUFDQSxjQUFBO0U1RWczWkY7O0U0RWwzWkE7SUFDRSx3QkFBQTtJQUNBLHlCQUFBO0U1RXEzWkY7O0U0RXYzWkE7SUFDRSxhQUFBO0lBQ0EsY0FBQTtFNUUwM1pGOztFNEU1M1pBO0lBQ0UsYUFBQTtJQUNBLGNBQUE7RTVFKzNaRjs7RTRFajRaQTtJQUNFLHdCQUFBO0lBQ0EseUJBQUE7RTVFbzRaRjs7RThFdDVaSTtJRkFKLGNBQUE7SUFDQSxXQUFBO0lBQ0EsZUFBQTtFNUUwNVpBOztFOEV0NVpRO0lGZFIsdUJBQUE7SUFJQSx3QkFBQTtFNUVxNlpBOztFOEUzNVpRO0lGZFIsd0JBQUE7SUFJQSx5QkFBQTtFNUUwNlpBOztFOEVoNlpRO0lGZFIsYUFBQTtJQUlBLGNBQUE7RTVFKzZaQTs7RThFcjZaUTtJRmRSLHdCQUFBO0lBSUEseUJBQUE7RTVFbzdaQTs7RThFMTZaUTtJRmRSLHdCQUFBO0lBSUEseUJBQUE7RTVFeTdaQTs7RThFLzZaUTtJRmRSLGFBQUE7SUFJQSxjQUFBO0U1RTg3WkE7O0U4RXA3WlE7SUZkUix3QkFBQTtJQUlBLHlCQUFBO0U1RW04WkE7O0U4RXo3WlE7SUZkUix3QkFBQTtJQUlBLHlCQUFBO0U1RXc4WkE7O0U4RTk3WlE7SUZkUixhQUFBO0lBSUEsY0FBQTtFNUU2OFpBOztFOEVuOFpRO0lGZFIsd0JBQUE7SUFJQSx5QkFBQTtFNUVrOVpBOztFOEV4OFpRO0lGZFIsd0JBQUE7SUFJQSx5QkFBQTtFNUV1OVpBOztFOEU3OFpRO0lGZFIsY0FBQTtJQUlBLGVBQUE7RTVFNDlaQTs7RThFNThaSTtJQUF3QixTQUFBO0U5RWc5WjVCOztFOEU5OFpJO0lBQXVCLFNBQUE7RTlFazlaM0I7O0U4RS84Wk07SUFBd0IsUUFEYjtFOUVvOVpqQjs7RThFbjlaTTtJQUF3QixRQURiO0U5RXc5WmpCOztFOEV2OVpNO0lBQXdCLFFBRGI7RTlFNDlaakI7O0U4RTM5Wk07SUFBd0IsUUFEYjtFOUVnK1pqQjs7RThFLzlaTTtJQUF3QixRQURiO0U5RW8rWmpCOztFOEVuK1pNO0lBQXdCLFFBRGI7RTlFdytaakI7O0U4RXYrWk07SUFBd0IsUUFEYjtFOUU0K1pqQjs7RThFMytaTTtJQUF3QixRQURiO0U5RWcvWmpCOztFOEUvK1pNO0lBQXdCLFFBRGI7RTlFby9aakI7O0U4RW4vWk07SUFBd0IsUUFEYjtFOUV3L1pqQjs7RThFdi9aTTtJQUF3QixTQURiO0U5RTQvWmpCOztFOEUzL1pNO0lBQXdCLFNBRGI7RTlFZ2dhakI7O0U4RS8vWk07SUFBd0IsU0FEYjtFOUVvZ2FqQjs7RThFNS9aVTtJRmpCVixjQUFBO0U1RWloYUE7O0U4RWhnYVU7SUZqQlYsMEJBQUE7RTVFcWhhQTs7RThFcGdhVTtJRmpCViwyQkFBQTtFNUV5aGFBOztFOEV4Z2FVO0lGakJWLGdCQUFBO0U1RTZoYUE7O0U4RTVnYVU7SUZqQlYsMkJBQUE7RTVFaWlhQTs7RThFaGhhVTtJRmpCViwyQkFBQTtFNUVxaWFBOztFOEVwaGFVO0lGakJWLGdCQUFBO0U1RXlpYUE7O0U4RXhoYVU7SUZqQlYsMkJBQUE7RTVFNmlhQTs7RThFNWhhVTtJRmpCViwyQkFBQTtFNUVpamFBOztFOEVoaWFVO0lGakJWLGdCQUFBO0U1RXFqYUE7O0U4RXBpYVU7SUZqQlYsMkJBQUE7RTVFeWphQTs7RThFeGlhVTtJRmpCViwyQkFBQTtFNUU2amFBO0FBQ0Y7QXdENWlhSTtFc0J4Q0U7SUFDRSxhQUFBO0lBQ0EsWUFBQTtJQUNBLFlBQUE7SUFDQSxlQUFBO0U5RXVsYU47O0U0RTVqYUE7SUFDRSxjQUFBO0lBQ0EsZUFBQTtFNUUramFGOztFNEVqa2FBO0lBQ0UsYUFBQTtJQUNBLGNBQUE7RTVFb2thRjs7RTRFdGthQTtJQUNFLHdCQUFBO0lBQ0EseUJBQUE7RTVFeWthRjs7RTRFM2thQTtJQUNFLGFBQUE7SUFDQSxjQUFBO0U1RThrYUY7O0U0RWhsYUE7SUFDRSxhQUFBO0lBQ0EsY0FBQTtFNUVtbGFGOztFNEVybGFBO0lBQ0Usd0JBQUE7SUFDQSx5QkFBQTtFNUV3bGFGOztFOEUxbWFJO0lGQUosY0FB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QTtBL0UrMWFKO0FnQi8zYVE7RStEbUNGLFNBQUE7QS9FKzFhTjtBaUJsNGFRO0U4RHNDRixVQUFBO0EvRSsxYU47QXdEbnphSTtFdUJ0Q0U7SUFDRSxrQkFBQTtJQUNBLFNDL0N3QjtJRGdEeEIsaUNBQUE7RS9FNDFhTjtFZ0IzNGFNO0krRGlERSxTQUFBO0UvRTYxYVI7RWlCOTRhTTtJOERvREUsVUFBQTtFL0U2MWFSO0FBQ0Y7QStFejFhTTtFQUNFLGtCQUFBO0VBQ0EsU0M1RHdCO0VENkR4QixpQ0FBQTtBL0UyMWFSO0FnQnY1YVE7RStEOERFLFNBQUE7QS9FNDFhVjtBaUIxNWFRO0U4RGlFRSxVQUFBO0EvRTQxYVY7QXdEMzBhSTtFdUJ0Q0U7SUFDRSxrQkFBQTtJQUNBLFNDL0N3QjtJRGdEeEIsaUNBQUE7RS9FbzNhTjtFZ0JuNmFNO0krRGlERSxTQUFBO0UvRXEzYVI7RWlCdDZhTTtJOERvREUsVUFBQTtFL0VxM2FSO0FBQ0Y7QXdEcjJhSTtFdUJaRTtJQUNFLGtCQUFBO0lBQ0EsU0M1RHdCO0lENkR4QixpQ0FBQTtFL0VvM2FOO0VnQmg3YU07SStEOERFLFNBQUE7RS9FcTNhUjtFaUJuN2FNO0k4RGlFRSxVQUFBO0UvRXEzYVI7QUFDRjtBd0RyMmFJO0V1QnRDRTtJQUNFLGtCQUFBO0lBQ0EsU0MvQ3dCO0lEZ0R4QixpQ0FBQTtFL0U4NGFOO0VnQjc3YU07SStEaURFLFNBQUE7RS9FKzRhUjtFaUJoOGFNO0k4RG9ERSxVQUFBO0UvRSs0YVI7QUFDRjtBd0QvM2FJO0V1QlpFO0lBQ0Usa0JBQUE7SUFDQSxTQzVEd0I7SUQ2RHhCLGlDQUFBO0UvRTg0YU47RWdCMThhTTtJK0Q4REUsU0FBQTtFL0UrNGFSO0VpQjc4YU07SThEaUVFLFVBQUE7RS9FKzRhUjtBQUNGO0F3RC8zYUk7RXVCdENFO0lBQ0Usa0JBQUE7SUFDQSxTQy9Dd0I7SURnRHhCLGlDQUFBO0UvRXc2YU47RWdCdjlhTTtJK0RpREUsU0FBQTtFL0V5NmFSO0VpQjE5YU07SThEb0RFLFVBQUE7RS9FeTZhUjtBQUNGO0F3RHo1YUk7RXVCWkU7SUFDRSxrQkFBQTtJQUNBLFNDNUR3QjtJRDZEeEIsaUNBQUE7RS9FdzZhTjtFZ0JwK2FNO0krRDhERSxTQUFBO0UvRXk2YVI7RWlCdithTTtJOERpRUUsVUFBQTtFL0V5NmFSO0FBQ0Y7QXdEejVhSTtFdUJ0Q0U7SUFDRSxrQkFBQTtJQUNBLFNDL0N3QjtJRGdEeEIsaUNBQUE7RS9FazhhTjtFZ0JqL2FNO0krRGlERSxTQUFBO0UvRW04YVI7RWlCcC9hTTtJOERvREUsVUFBQTtFL0VtOGFSO0FBQ0Y7QXdEbjdhSTtFdUJaRTtJQUNFLGtCQUFBO0lBQ0EsU0M1RHdCO0lENkR4QixpQ0FBQTtFL0VrOGFOO0VnQjkvYU07SStEOERFLFNBQUE7RS9FbThhUjtFaUJqZ2JNO0k4RGlFRSxVQUFBO0UvRW04YVI7QUFDRjtBK0V6OWFNO0VBQ0Usa0JBQUE7RUFDQSxTQy9Dd0I7RURnRHhCLGlDQUFBO0EvRTI5YVI7QWdCMWdiUTtFK0RpREUsU0FBQTtBL0U0OWFWO0FpQjdnYlE7RThEb0RFLFVBQUE7QS9FNDlhVjtBd0QzOGFJO0V1QlpFO0lBQ0Usa0JBQUE7SUFDQSxTQzVEd0I7SUQ2RHhCLGlDQUFBO0UvRTA5YU47RWdCdGhiTTtJK0Q4REUsU0FBQTtFL0UyOWFSO0VpQnpoYk07SThEaUVFLFVBQUE7RS9FMjlhUjtBQUNGO0ErRXI5YUE7RUFDRSxlQUFBO0VBQ0EscUJqRW5FZ0I7RWlFb0VoQiw2QkMxRDhCO0VEMkQ5QixTQUFBO0VsRDlERSxzQkFBQTtBN0J1aGJKO0FtQjdoYkU7RUFDRTtJNER3RUEsYzFEOUVTO0kwRCtFVCxxQkFBQTtFL0V3OWFGO0FBQ0Y7QStFdDlhRTtFQUVFLFVBQUE7QS9FdTlhSjtBK0VuOWFFO0VBQ0UsZUFBQTtBL0VxOWFKO0ErRWo5YUE7RUFDRSxjQUFBO0VBQ0Esb0JBQUE7RUFDQSw0QkFBQTtFQUNBLGtDQUFBO0VBQ0EsMEJBQUE7QS9FbzlhRjtBK0VqOWFBO0VBQ0UsYUFBQTtFQUNBLG1CQUFBO0VBQ0EsbUJBQUE7RUFDQSxnQkM3RzhCO0VEOEc5QixVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxnQkFBQTtBL0VvOWFGO0ErRWw5YUU7RUFDRSxrQkFBQTtBL0VvOWFKO0ErRWo5YUU7RUFDRSw2QkFBQTtFQUNBLDZCQUFBO0EvRW05YUo7QW1CbGtiRTtFQUNFO0k0RGlIRSxxQkFBQTtFL0VvOWFKO0FBQ0Y7QStFbDlhSTtFQUVFLFVBQUE7QS9FbTlhTjtBK0UvOGFFOztFQUVFLGFBQUE7RUFDQSxtQkFBQTtFQUNBLHFCQ2pJeUI7RURrSXpCLG9CQ2xJeUI7QWhGbWxiN0I7QStFLzhhSTs7RUFDRSxrQkFBQTtFQUNBLFFBQUE7RUFDQSxpQkFBQTtBL0VrOWFOO0FnQi9sYlE7O0UrRCtJQSxTQUFBO0VBQ0EsY0FBQTtBL0VvOWFSO0FpQnBtYlE7O0U4RG1KQSxVQUFBO0VBQ0EsZUFBQTtBL0VxOWFSO0ErRWo5YUk7O0VBQ0UscUJBQUE7QS9FbzlhTjtBK0VoOWFFO0VBQ0UsZ0JBQUE7QS9FazlhSjtBWTEvYVE7RW1FaUROLG1CQUFBO0VqQzVKSSxnQ0FBQTtBOUMwbWJOO0ErRTM4YUU7RUFDRSxnQkFBQTtFQUNBLDZCQUFBO0EvRTY4YUo7QStFMThhRTtFQUNFLFdBQUE7RUFDQSw2QkFBQTtBL0U0OGFKO0FtQi9tYkU7RTREdUtJLFdBQUE7QS9FMjhhTjtBK0V0OGFJOztFQUVFLGdDQUFBO0EvRXc4YU47QW1CdG5iRTs7O0U0RGlMTSwrQkFBQTtBL0UwOGFSO0ErRXY4YU07O0VBQ0UsZ0NBQUE7QS9FMDhhUjtBK0V0OGFJOzs7O0VBSUUsV0FBQTtBL0V3OGFOO0ErRXA4YUU7RUFDRSxnQ0FBQTtFQUNBLHNDQUFBO0EvRXM4YUo7QStFbjhhRTtFQUNFLCtRQUFBO0EvRXE4YUo7QStFbjhhSTtFQUNFLDhRQUFBO0EvRXE4YU47QStFajhhRTtFQUNFLGdDQUFBO0EvRW04YUo7QStFbDhhSTtFQUNFLFdBQUE7QS9FbzhhTjtBbUJycGJFO0U0RG9OTSxXQUFBO0EvRW84YVI7QVlwamJRO0VtRXFETixnQkFBQTtFakM1SkksZ0NBQUE7QTlDZ3FiTjtBK0VqZ2JFO0VBQ0UsZ0JBQUE7RUFDQSw2QkFBQTtBL0VtZ2JKO0ErRWhnYkU7RUFDRSxjQUFBO0VBQ0EsNkJBQUE7QS9Fa2diSjtBbUJycWJFO0U0RHVLSSxjQUFBO0EvRWlnYk47QStFNS9hSTs7RUFFRSwwQkFBQTtBL0U4L2FOO0FtQjVxYkU7OztFNERpTE0sMEJBQUE7QS9FZ2diUjtBK0U3L2FNOztFQUNFLDBCQUFBO0EvRWdnYlI7QStFNS9hSTs7OztFQUlFLDBCQUFBO0EvRTgvYU47QStFMS9hRTtFQUNFLDBCQUFBO0VBQ0EsaUNBQUE7QS9FNC9hSjtBK0V6L2FFO0VBQ0UseVFBQUE7QS9FMi9hSjtBK0V6L2FJO0VBQ0UseVFBQUE7QS9FMi9hTjtBK0V2L2FFO0VBQ0UsMEJBQUE7QS9FeS9hSjtBK0V4L2FJO0VBQ0UsMEJBQUE7QS9FMC9hTjtBbUIzc2JFO0U0RG9OTSwwQkFBQTtBL0UwL2FSO0FZM2tiVTtFbUVzQlIsbUJBQUE7RWpDNUpJLGdDQUFBO0E5Q3N0Yk47QStFdmpiRTtFQUNFLGdCQUFBO0VBQ0EsNkJBQUE7QS9FeWpiSjtBK0V0amJFO0VBQ0UsV0FBQTtFQUNBLDZCQUFBO0EvRXdqYko7QW1CM3RiRTtFNER1S0ksV0FBQTtBL0V1amJOO0ErRWxqYkk7O0VBRUUsZ0NBQUE7QS9Fb2piTjtBbUJsdWJFOzs7RTREaUxNLCtCQUFBO0EvRXNqYlI7QStFbmpiTTs7RUFDRSxnQ0FBQTtBL0VzamJSO0ErRWxqYkk7Ozs7RUFJRSxXQUFBO0EvRW9qYk47QStFaGpiRTtFQUNFLGdDQUFBO0VBQ0Esc0NBQUE7QS9Fa2piSjtBK0UvaWJFO0VBQ0UsK1FBQUE7QS9FaWpiSjtBK0UvaWJJO0VBQ0UsOFFBQUE7QS9FaWpiTjtBK0U3aWJFO0VBQ0UsZ0NBQUE7QS9FK2liSjtBK0U5aWJJO0VBQ0UsV0FBQTtBL0VnamJOO0FtQmp3YkU7RTREb05NLFdBQUE7QS9FZ2piUjtBWTdvYlU7RW1Fa0NSLGdCQUFBO0VqQzVKSSxnQ0FBQTtBOUM0d2JOO0ErRTdtYkU7RUFDRSxnQkFBQTtFQUNBLDZCQUFBO0EvRSttYko7QStFNW1iRTtFQUNFLGNBQUE7RUFDQSw2QkFBQTtBL0U4bWJKO0FtQmp4YkU7RTREdUtJLGNBQUE7QS9FNm1iTjtBK0V4bWJJOztFQUVFLDBCQUFBO0EvRTBtYk47QW1CeHhiRTs7O0U0RGlMTSwwQkFBQTtBL0U0bWJSO0ErRXptYk07O0VBQ0UsMEJBQUE7QS9FNG1iUjtBK0V4bWJJOzs7O0VBSUUsMEJBQUE7QS9FMG1iTjtBK0V0bWJFO0VBQ0UsMEJBQUE7RUFDQSxpQ0FBQTtBL0V3bWJKO0ErRXJtYkU7RUFDRSx5UUFBQTtBL0V1bWJKO0ErRXJtYkk7RUFDRSx5UUFBQTtBL0V1bWJOO0ErRW5tYkU7RUFDRSwwQkFBQTtBL0VxbWJKO0ErRXBtYkk7RUFDRSwwQkFBQTtBL0VzbWJOO0FtQnZ6YkU7RTREb05NLDBCQUFBO0EvRXNtYlI7QVluc2JVO0VtRWtDUixtQkFBQTtFakM1SkksZ0JBQUE7QTlDazBiTjtBK0VucWJFO0VBQ0UsZ0JBQUE7RUFDQSxnREFBQTtBL0VxcWJKO0ErRWxxYkU7RUFDRSxXQUFBO0VBQ0EsNkJBQUE7QS9Fb3FiSjtBbUJ2MGJFO0U0RHVLSSxXQUFBO0EvRW1xYk47QStFOXBiSTs7RUFFRSxnQ0FBQTtBL0VncWJOO0FtQjkwYkU7OztFNERpTE0sK0JBQUE7QS9Fa3FiUjtBK0UvcGJNOztFQUNFLGdDQUFBO0EvRWtxYlI7QStFOXBiSTs7OztFQUlFLFdBQUE7QS9FZ3FiTjtBK0U1cGJFO0VBQ0UsZ0NBQUE7RUFDQSxzQ0FBQTtBL0U4cGJKO0ErRTNwYkU7RUFDRSwrUUFBQTtBL0U2cGJKO0ErRTNwYkk7RUFDRSw4UUFBQTtBL0U2cGJOO0ErRXpwYkU7RUFDRSxnQ0FBQTtBL0UycGJKO0ErRTFwYkk7RUFDRSxXQUFBO0EvRTRwYk47QW1CNzJiRTtFNERvTk0sV0FBQTtBL0U0cGJSO0FpRmw0YkE7RUFDRSxxQkFBQTtFQUNBLGNBQUE7RUFDQSxrQkFBQTtFQUNBLGtCQUFBO0FqRnE0YkY7QWlGcDRiRTtFQ0hBLFdwRXFGZ0I7RW9FcEZoQixZcEVvRmdCO0VvRW5GaEIsZXBFbUZnQjtBZHV6YmxCO0FpRnA0Yk07RUNSSixXRFN5QjtFQ1J6QixZRFF5QjtFQ1B6QixlRE95QjtBakZ3NGIzQjtBaUZ6NGJNO0VDUkosV0RTeUI7RUNSekIsWURReUI7RUNQekIsZURPeUI7QWpGNjRiM0I7QWlGOTRiTTtFQ1JKLFdEU3lCO0VDUnpCLFlEUXlCO0VDUHpCLGVET3lCO0FqRms1YjNCO0FpRm41Yk07RUNSSixXRFN5QjtFQ1J6QixZRFF5QjtFQ1B6QixlRE95QjtBakZ1NWIzQjtBaUZ4NWJNO0VDUkosV0RTeUI7RUNSekIsWURReUI7RUNQekIsZURPeUI7QWpGNDViM0I7QWlGNzViTTtFQ1JKLFdEU3lCO0VDUnpCLFlEUXlCO0VDUHpCLGVET3lCO0FqRmk2YjNCO0FpRmw2Yk07RUNSSixXRFN5QjtFQ1J6QixZRFF5QjtFQ1B6QixlRE95QjtBakZzNmIzQjtBaUZ2NmJNO0VDUkosV0RTeUI7RUNSekIsWURReUI7RUNQekIsZURPeUI7QWpGMjZiM0I7QWlGdjZiSTtFQ2JGLGFwRXdGZ0I7RW9FdkZoQixjcEV1RmdCO0VvRXRGaEIsaUJwRXNGZ0I7QWRpMmJsQjtBaUZ4NmJJO0VDakJGLGNwRXVGZ0I7RW9FdEZoQixlcEVzRmdCO0VvRXJGaEIsa0JwRXFGZ0I7QWR1MmJsQjtBaUZ6NmJJO0VDckJGLGVwRXNGZ0I7RW9FckZoQixnQnBFcUZnQjtFb0VwRmhCLG1CcEVvRmdCO0FkNjJibEI7QW1GLzdiQTtFQUNFLGtCQUFBO0VBQ0EsYUFBQTtFQUNBLGVBQUE7RUFDQSxvQkFBQTtFQUNBLFdBQUE7QW5GazhiRjtBbUZoOGJFOzs7O0VBSUUsa0JBQUE7RUFDQSxjQUFBO0VBQ0EsU0FBQTtFQUNBLFlBQUE7RUFDQSxnQkFBQTtBbkZrOGJKO0FnQm45YlE7Ozs7Ozs7Ozs7OztFbUV1QkEsaUJBQUE7QW5GMDhiUjtBaUJqK2JROzs7Ozs7Ozs7Ozs7RWtFMEJBLGtCQUFBO0FuRnE5YlI7QW1GLzhiRTs7O0VBR0UsVUFBQTtBbkZpOWJKO0FtRjc4YkU7RUFDRSxVQUFBO0FuRis4Yko7QWdCdi9iUTs7RWE4QkosMEJBQUE7RUFDQSw2QkFBQTtBN0I2OWJKO0FpQjUvYlE7O0VZNENKLHlCQUFBO0VBQ0EsNEJBQUE7QTdCbzliSjtBZ0JqZ2NROztFYTRDSix5QkFBQTtFQUNBLDRCQUFBO0E3Qnk5Yko7QWlCdGdjUTs7RVk4QkosMEJBQUE7RUFDQSw2QkFBQTtBN0I0K2JKO0FtRjE4YkU7RUFDRSxhQUFBO0VBQ0EsbUJBQUE7QW5GNDhiSjtBZ0IvZ2NRO0VhOEJKLDBCQUFBO0VBQ0EsNkJBQUE7QTdCby9iSjtBaUJuaGNRO0VZNENKLHlCQUFBO0VBQ0EsNEJBQUE7QTdCMCtiSjtBZ0J2aGNRO0VhNENKLHlCQUFBO0VBQ0EsNEJBQUE7QTdCOCtiSjtBaUIzaGNRO0VZOEJKLDBCQUFBO0VBQ0EsNkJBQUE7QTdCZ2djSjtBbUYvN2JBOztFQUVFLGFBQUE7QW5GazhiRjtBbUY3N2JFOztFQUNFLGtCQUFBO0VBQ0EsVUFBQTtBbkZnOGJKO0FtRjk3Ykk7O0VBQ0UsVUFBQTtBbkZpOGJOO0FnQjdpY1E7Ozs7Ozs7O0VtRXFIRixpQkFBQTtBbkZrOGJOO0FpQnZqY1E7Ozs7Ozs7O0VrRXdIRixrQkFBQTtBbkZ5OGJOO0FtRnA4YkE7RUFPRSxtQkFBQTtFQUNBLHNCQUFBO0FuRmk4YkY7QWdCdGtjUTtFbUUrSEosa0JBQUE7QW5GMDhiSjtBaUJ6a2NRO0VrRWtJSixpQkFBQTtBbkYwOGJKO0FtRnI4YkE7RUFPRSxtQkFBQTtFQUNBLHNCQUFBO0FuRms4YkY7QWdCamxjUTtFbUV5SUosaUJBQUE7QW5GMjhiSjtBaUJwbGNRO0VrRTRJSixrQkFBQTtBbkYyOGJKO0FtRi83YkE7RUFDRSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSx5QkFBQTtFQUNBLGdCQUFBO0VwRWpDSSxtQkF0Q2E7RW9FeUVqQixnQnJFbEpxQjtFcUVtSnJCLGdCckU5SWtCO0VxRStJbEIsa0JBQUE7RUFDQSxtQkFBQTtFQUNBLGlCQUFBO0V0RHBKRSxzQkFBQTtFc0R3SkEsY0FBQTtFQUNBLHlCQUFBO0VBQ0EscUJBQUE7QW5GZzhiSjtBWTE2YlE7RXVFeEJKLGdDQUFBO0VBQ0EsMkNBQUE7RUFDQSx1Q0FBQTtBbkZxOGJKO0FtRmo4YkU7O0VBRUUsYUFBQTtBbkZvOGJKO0FtRjE3YkE7O0VBRUUsZ0M3RG5FaUI7QXRCZ2djbkI7QW1GMTdiQTs7Ozs7O0VBTUUsb0JBQUE7RXBFeEVJLHFCQXRDYTtFb0VnSGpCLGdCckRuTWdCO0VEWWQscUJBQUE7QTdCcW5jSjtBbUYxN2JBOztFQUVFLGtDN0RyRmlCO0F0QmtoY25CO0FtRjE3YkE7Ozs7OztFQU1FLHVCQUFBO0VwRXpGSSxzQkF0Q2E7RW9FaUlqQixnQnJEbk5nQjtFRFdkLHFCQUFBO0E3QnNvY0o7QWdCcHBjUTs7RW1FNk5KLHNCQUFBO0FuRjQ3Yko7QWlCenBjUTs7RWtFZ09KLHFCQUFBO0FuRjY3Yko7QWdCN3BjUTs7Ozs7O0VhOEJKLDBCQUFBO0VBQ0EsNkJBQUE7QTdCd29jSjtBaUJ2cWNROzs7Ozs7RVk0Q0oseUJBQUE7RUFDQSw0QkFBQTtBN0Jtb2NKO0FnQmhyY1E7Ozs7OztFYTRDSix5QkFBQTtFQUNBLDRCQUFBO0E3QjZvY0o7QWlCMXJjUTs7Ozs7O0VZOEJKLDBCQUFBO0VBQ0EsNkJBQUE7QTdCb3FjSjtBb0Zoc2NBO0VDSUUsZUFBQTtFQUdBLFlBQUE7QXJGOHJjRjtBb0YvcmNBO0VBQ0UsZ0JFWHlCO0VGWXpCLHlCL0RQVztFK0RRWCx5QkFBQTtFdkRFRSxzQkFBQTtFd0RQRixlQUFBO0VBR0EsWUFBQTtBckZ1c2NGO0FvRnpyY0E7RUFFRSxxQkFBQTtBcEYycmNGO0FvRnhyY0E7RUFDRSxxQkFBQTtFQUNBLGNBQUE7QXBGMnJjRjtBb0Z4cmNBO0VyRWtDSSxjQUFBO0VxRWhDRixjL0QzQlc7QXJCc3RjYjtBdUZudWNBO0VBQ0Usa0JBQUE7RUFDQSxtQkNFbUI7RTNEY2pCLHFCQUFBO0UwRFhBLHlCQUFBO0F2Rm11Y0o7QVl4aWNRO0UyRTNMSix5QkFBQTtBdkZzdWNKO0FZM2ljUTtFMkUzTEosMENBQUE7QXZGMHVjSjtBd0R4cWNJO0UrQnpFSjtJQVlJLGtCQUFBO0V2RjB1Y0Y7QUFDRjtBdUZ2dWNBO0VBQ0UsZ0JBQUE7RUFDQSxlQUFBO0UxREFFLGdCQUFBO0E3QjJ1Y0o7QXlGenZjQTtFQUNFLGFBQUE7RUFDQSxzQkFBQTtFQVNBLGdCQUFBO0U1REdFLHNCQUFBO0E3Qmt2Y0o7QWdCaHdjUTtFeUVNSixlQUFBO0F6RjZ2Y0o7QWlCbndjUTtFd0VTSixnQkFBQTtBekY2dmNKO0F5Rmp2Y0E7RUFDRSxXQUFBO0VBQ0EsbUJBQUE7RUFFRSxjQUFBO0F6Rm12Y0o7QVk5a2NRO0U2RXJLSixjQUFBO0F6RnN2Y0o7QVlqbGNRO0U2RXJLSixnQ0FBQTtBekYwdmNKO0FtQnJ3Y0U7RXNFZ0JFLFVBQUE7RUFDQSxxQkFBQTtFQUVFLGNBQUE7RUFDQSx5QkFBQTtBekZ3dmNOO0FZNWxjUTtFNkU3SkYsY0FBQTtFQUNBLHlCQUFBO0F6RjR2Y047QVlobWNRO0U2RTdKRixnQ0FBQTtFQUNBLDBDQUFBO0F6Rml3Y047QXlGN3ZjRTtFQUVJLGNBQUE7RUFDQSx5QkFBQTtBekYrdmNOO0FZMW1jUTtFNkV0SkYsY0FBQTtFQUNBLHlCQUFBO0F6Rm13Y047QVk5bWNRO0U2RXRKRixnQ0FBQTtFQUNBLHlCQUFBO0F6Rnd3Y047QXlGOXZjQTtFQUNFLGtCQUFBO0VBQ0EsY0FBQTtFQUNBLHdCQUFBO0VBRUEsaUJBQUE7RUFHRSx5QkFBQTtFQUNBLG1DQUFBO0F6Rjh2Y0o7QVk1bmNRO0U2RW5JSix5QkFBQTtFQUNBLGtDQUFBO0F6Rmt3Y0o7QVlob2NRO0U2RXBJSixnQ0FBQTtFQUNBLHlCQUFBO0VBQ0Esd0NBQUE7QXpGd3djSjtBeUZyd2NFO0U1RHhDRSwrQkFBQTtFQUNBLGdDQUFBO0E3Qml6Y0o7QXlGdHdjRTtFNUQ5QkUsbUNBQUE7RUFDQSxrQ0FBQTtBN0J1eWNKO0F5RnR3Y0U7RUFFRSxvQkFBQTtFQUVFLGNBQUE7RUFDQSx5QkFBQTtBekZzd2NOO0FZcHBjUTtFNkVuSEYsY0FBQTtFQUNBLHlCQUFBO0F6RjB3Y047QVl4cGNRO0U2RW5IRiwrQkFBQTtFQUNBLDBDQUFBO0F6Rit3Y047QXlGMXdjRTtFQUNFLFVBQUE7RUFFRSxXQUFBO0VBQ0EseUJBQUE7RUFDQSxxQkFBQTtBekY0d2NOO0FZcHFjUTtFNkUxR0YsV0FBQTtFQUNBLHlCQUFBO0VBQ0EscUJBQUE7QXpGaXhjTjtBWXpxY1E7RTZFMUdGLFdBQUE7RUFDQSx5QkFBQTtFQUNBLHFCQUFBO0F6RnV4Y047QXlGbnhjRTtFQUNFLG1CQUFBO0F6RnN4Y0o7QXlGcHhjSTtFQUNFLGdCQUFBO0VBQ0EscUIzRDFGVTtBOUJnM2NoQjtBeUZ4d2NJO0VBQ0UsbUJBQUE7QXpGMndjTjtBeUZ4d2NRO0U1RDVDSixrQ0FBQTtFQVpBLDBCQUFBO0E3Qm8wY0o7QXlGdndjUTtFNUQ3REosZ0NBQUE7RUFZQSw0QkFBQTtBN0I0emNKO0F5RnR3Y1E7RUFDRSxhQUFBO0F6Rnd3Y1Y7QXlGcndjUTtFQUNFLHFCM0QzSE07RTJENEhOLG9CQUFBO0F6RnV3Y1Y7QXlGcndjVTtFQUNFLGlCQUFBO0VBQ0Esc0IzRGhJSTtBOUJ1NGNoQjtBd0R2MGNJO0VpQ3dDQTtJQUNFLG1CQUFBO0V6Rm15Y0o7RXlGaHljTTtJNUQ1Q0osa0NBQUE7SUFaQSwwQkFBQTtFN0I0MWNGO0V5Ri94Y007STVEN0RKLGdDQUFBO0lBWUEsNEJBQUE7RTdCbzFjRjtFeUY5eGNNO0lBQ0UsYUFBQTtFekZneWNSO0V5Rjd4Y007SUFDRSxxQjNEM0hNO0kyRDRITixvQkFBQTtFekYreGNSO0V5Rjd4Y1E7SUFDRSxpQkFBQTtJQUNBLHNCM0RoSUk7RTlCKzVjZDtBQUNGO0F3RGgyY0k7RWlDd0NBO0lBQ0UsbUJBQUE7RXpGMnpjSjtFeUZ4emNNO0k1RDVDSixrQ0FBQTtJQVpBLDBCQUFBO0U3Qm8zY0Y7RXlGdnpjTTtJNUQ3REosZ0NBQUE7SUFZQSw0QkFBQTtFN0I0MmNGO0V5RnR6Y007SUFDRSxhQUFBO0V6Rnd6Y1I7RXlGcnpjTTtJQUNFLHFCM0QzSE07STJENEhOLG9CQUFBO0V6RnV6Y1I7RXlGcnpjUTtJQUNFLGlCQUFBO0lBQ0Esc0IzRGhJSTtFOUJ1N2NkO0FBQ0Y7QXdEeDNjSTtFaUN3Q0E7SUFDRSxtQkFBQTtFekZtMWNKO0V5RmgxY007STVENUNKLGtDQUFBO0lBWkEsMEJBQUE7RTdCNDRjRjtFeUYvMGNNO0k1RDdESixnQ0FBQTtJQVlBLDRCQUFBO0U3Qm80Y0Y7RXlGOTBjTTtJQUNFLGFBQUE7RXpGZzFjUjtFeUY3MGNNO0lBQ0UscUIzRDNITTtJMkQ0SE4sb0JBQUE7RXpGKzBjUjtFeUY3MGNRO0lBQ0UsaUJBQUE7SUFDQSxzQjNEaElJO0U5Qis4Y2Q7QUFDRjtBd0RoNWNJO0VpQ3dDQTtJQUNFLG1CQUFBO0V6RjIyY0o7RXlGeDJjTTtJNUQ1Q0osa0NBQUE7SUFaQSwwQkFBQTtFN0JvNmNGO0V5RnYyY007STVEN0RKLGdDQUFBO0lBWUEsNEJBQUE7RTdCNDVjRjtFeUZ0MmNNO0lBQ0UsYUFBQTtFekZ3MmNSO0V5RnIyY007SUFDRSxxQjNEM0hNO0kyRDRITixvQkFBQTtFekZ1MmNSO0V5RnIyY1E7SUFDRSxpQkFBQTtJQUNBLHNCM0RoSUk7RTlCdStjZDtBQUNGO0F3RHg2Y0k7RWlDd0NBO0lBQ0UsbUJBQUE7RXpGbTRjSjtFeUZoNGNNO0k1RDVDSixrQ0FBQTtJQVpBLDBCQUFBO0U3QjQ3Y0Y7RXlGLzNjTTtJNUQ3REosZ0NBQUE7SUFZQSw0QkFBQTtFN0JvN2NGO0V5RjkzY007SUFDRSxhQUFBO0V6Rmc0Y1I7RXlGNzNjTTtJQUNFLHFCM0QzSE07STJENEhOLG9CQUFBO0V6RiszY1I7RXlGNzNjUTtJQUNFLGlCQUFBO0lBQ0Esc0IzRGhJSTtFOUIrL2NkO0FBQ0Y7QXlGbDNjQTtFNURySUksZ0JBQUE7QTdCMC9jSjtBeUZsM2NFO0VBQ0UscUJBQUE7QXpGbzNjSjtBeUZsM2NJO0VBQ0Usc0JBQUE7QXpGbzNjTjtBMEYvZ2RFO0VBQ0UsY0RzS3dFO0VDckt4RSx5QkRxS3dDO0F6RjYyYzVDO0FtQnJnZEU7RXVFVE0sY0RpS29FO0VDaEtwRSx5QkFBQTtBMUZpaGRSO0EwRjlnZE07RUFDRSxXckVWQztFcUVXRCx5QkQySm9FO0VDMUpwRSxxQkQwSm9FO0F6RnMzYzVFO0EwRjdoZEU7RUFDRSxjRHNLd0U7RUNyS3hFLHlCRHFLd0M7QXpGMjNjNUM7QW1CbmhkRTtFdUVUTSxjRGlLb0U7RUNoS3BFLHlCQUFBO0ExRitoZFI7QTBGNWhkTTtFQUNFLFdyRVZDO0VxRVdELHlCRDJKb0U7RUMxSnBFLHFCRDBKb0U7QXpGbzRjNUU7QTBGM2lkRTtFQUNFLGNEc0t3RTtFQ3JLeEUseUJEcUt3QztBekZ5NGM1QztBbUJqaWRFO0V1RVRNLGNEaUtvRTtFQ2hLcEUseUJBQUE7QTFGNmlkUjtBMEYxaWRNO0VBQ0UsV3JFVkM7RXFFV0QseUJEMkpvRTtFQzFKcEUscUJEMEpvRTtBekZrNWM1RTtBMEZ6amRFO0VBQ0UsY0RzS3dFO0VDckt4RSx5QkRxS3dDO0F6RnU1YzVDO0FtQi9pZEU7RXVFVE0sY0RpS29FO0VDaEtwRSx5QkFBQTtBMUYyamRSO0EwRnhqZE07RUFDRSxXckVWQztFcUVXRCx5QkQySm9FO0VDMUpwRSxxQkQwSm9FO0F6Rmc2YzVFO0EwRnZrZEU7RUFDRSxjRHNLd0U7RUNyS3hFLHlCRHFLd0M7QXpGcTZjNUM7QW1CN2pkRTtFdUVUTSxjRGlLb0U7RUNoS3BFLHlCQUFBO0ExRnlrZFI7QTBGdGtkTTtFQUNFLFdyRVZDO0VxRVdELHlCRDJKb0U7RUMxSnBFLHFCRDBKb0U7QXpGODZjNUU7QTBGcmxkRTtFQUNFLGNEc0t3RTtFQ3JLeEUseUJEcUt3QztBekZtN2M1QztBbUIza2RFO0V1RVRNLGNEaUtvRTtFQ2hLcEUseUJBQUE7QTFGdWxkUjtBMEZwbGRNO0VBQ0UsV3JFVkM7RXFFV0QseUJEMkpvRTtFQzFKcEUscUJEMEpvRTtBekY0N2M1RTtBMEZubWRFO0VBQ0UsY0RzS3dFO0VDckt4RSx5QkRxS3dDO0F6Rmk4YzVDO0FtQnpsZEU7RXVFVE0sY0RpS29FO0VDaEtwRSx5QkFBQTtBMUZxbWRSO0EwRmxtZE07RUFDRSxXckVWQztFcUVXRCx5QkQySm9FO0VDMUpwRSxxQkQwSm9FO0F6RjA4YzVFO0EwRmpuZEU7RUFDRSxjRHNLd0U7RUNyS3hFLHlCRHFLd0M7QXpGKzhjNUM7QW1Cdm1kRTtFdUVUTSxjRGlLb0U7RUNoS3BFLHlCQUFBO0ExRm1uZFI7QTBGaG5kTTtFQUNFLFdyRVZDO0VxRVdELHlCRDJKb0U7RUMxSnBFLHFCRDBKb0U7QXpGdzljNUU7QTBGL25kRTtFQUNFLGNEc0t3RTtFQ3JLeEUseUJEcUt3QztBekY2OWM1QztBbUJybmRFO0V1RVRNLGNEaUtvRTtFQ2hLcEUseUJBQUE7QTFGaW9kUjtBMEY5bmRNO0VBQ0UsV3JFVkM7RXFFV0QseUJEMkpvRTtFQzFKcEUscUJEMEpvRTtBekZzK2M1RTtBMEY3b2RFO0VBQ0UsY0RzS3dFO0VDckt4RSx5QkRxS3dDO0F6RjIrYzVDO0FtQm5vZEU7RXVFVE0sY0RpS29FO0VDaEtwRSx5QkFBQTtBMUYrb2RSO0EwRjVvZE07RUFDRSxXckVWQztFcUVXRCx5QkQySm9FO0VDMUpwRSxxQkQwSm9FO0F6Rm8vYzVFO0EwRjNwZEU7RUFDRSxjRHNLd0U7RUNyS3hFLHlCRHFLd0M7QXpGeS9jNUM7QW1CanBkRTtFdUVUTSxjRGlLb0U7RUNoS3BFLHlCQUFBO0ExRjZwZFI7QTBGMXBkTTtFQUNFLFdyRVZDO0VxRVdELHlCRDJKb0U7RUMxSnBFLHFCRDBKb0U7QXpGa2dkNUU7QTBGenFkRTtFQUNFLGNEc0t3RTtFQ3JLeEUseUJEcUt3QztBekZ1Z2Q1QztBbUIvcGRFO0V1RVRNLGNEaUtvRTtFQ2hLcEUseUJBQUE7QTFGMnFkUjtBMEZ4cWRNO0VBQ0UsV3JFVkM7RXFFV0QseUJEMkpvRTtFQzFKcEUscUJEMEpvRTtBekZnaGQ1RTtBMEZ2cmRFO0VBQ0UsY0RzS3dFO0VDckt4RSx5QkRxS3dDO0F6RnFoZDVDO0FtQjdxZEU7RXVFVE0sY0RpS29FO0VDaEtwRSx5QkFBQTtBMUZ5cmRSO0EwRnRyZE07RUFDRSxXckVWQztFcUVXRCx5QkQySm9FO0VDMUpwRSxxQkQwSm9FO0F6RjhoZDVFO0EwRnJzZEU7RUFDRSxjRHNLd0U7RUNyS3hFLHlCRHFLd0M7QXpGbWlkNUM7QW1CM3JkRTtFdUVUTSxjRGlLb0U7RUNoS3BFLHlCQUFBO0ExRnVzZFI7QTBGcHNkTTtFQUNFLFdyRVZDO0VxRVdELHlCRDJKb0U7RUMxSnBFLHFCRDBKb0U7QXpGNGlkNUU7QTBGbnRkRTtFQUNFLGNEc0t3RTtFQ3JLeEUseUJEcUt3QztBekZpamQ1QztBbUJ6c2RFO0V1RVRNLGNEaUtvRTtFQ2hLcEUseUJBQUE7QTFGcXRkUjtBMEZsdGRNO0VBQ0UsV3JFVkM7RXFFV0QseUJEMkpvRTtFQzFKcEUscUJEMEpvRTtBekYwamQ1RTtBMEZqdWRFO0VBQ0UsY0RzS3dFO0VDckt4RSx5QkRxS3dDO0F6RitqZDVDO0FtQnZ0ZEU7RXVFVE0sY0RpS29FO0VDaEtwRSx5QkFBQTtBMUZtdWRSO0EwRmh1ZE07RUFDRSxXckVWQztFcUVXRCx5QkQySm9FO0VDMUpwRSxxQkQwSm9FO0F6RndrZDVFO0EwRi91ZEU7RUFDRSxjRHNLd0U7RUNyS3hFLHlCRHFLd0M7QXpGNmtkNUM7QW1CcnVkRTtFdUVUTSxjRGlLb0U7RUNoS3BFLHlCQUFBO0ExRml2ZFI7QTBGOXVkTTtFQUNFLFdyRVZDO0VxRVdELHlCRDJKb0U7RUMxSnBFLHFCRDBKb0U7QXpGc2xkNUU7QTBGN3ZkRTtFQUNFLGNEc0t3RTtFQ3JLeEUseUJEcUt3QztBekYybGQ1QztBbUJudmRFO0V1RVRNLGNEaUtvRTtFQ2hLcEUseUJBQUE7QTFGK3ZkUjtBMEY1dmRNO0VBQ0UsV3JFVkM7RXFFV0QseUJEMkpvRTtFQzFKcEUscUJEMEpvRTtBekZvbWQ1RTtBMEYzd2RFO0VBQ0UsY0RzS3dFO0VDckt4RSx5QkRxS3dDO0F6RnltZDVDO0FtQmp3ZEU7RXVFVE0sY0RpS29FO0VDaEtwRSx5QkFBQTtBMUY2d2RSO0EwRjF3ZE07RUFDRSxXckVWQztFcUVXRCx5QkQySm9FO0VDMUpwRSxxQkQwSm9FO0F6RmtuZDVFO0EwRnp4ZEU7RUFDRSxjRHNLd0U7RUNyS3hFLHlCRHFLd0M7QXpGdW5kNUM7QW1CL3dkRTtFdUVUTSxjRGlLb0U7RUNoS3BFLHlCQUFBO0ExRjJ4ZFI7QTBGeHhkTTtFQUNFLFdyRVZDO0VxRVdELHlCRDJKb0U7RUMxSnBFLHFCRDBKb0U7QXpGZ29kNUU7QTBGdnlkRTtFQUNFLGNEc0t3RTtFQ3JLeEUseUJEcUt3QztBekZxb2Q1QztBbUI3eGRFO0V1RVRNLGNEaUtvRTtFQ2hLcEUseUJBQUE7QTFGeXlkUjtBMEZ0eWRNO0VBQ0UsV3JFVkM7RXFFV0QseUJEMkpvRTtFQzFKcEUscUJEMEpvRTtBekY4b2Q1RTtBMEZyemRFO0VBQ0UsY0RzS3dFO0VDckt4RSx5QkRxS3dDO0F6Rm1wZDVDO0FtQjN5ZEU7RXVFVE0sY0RpS29FO0VDaEtwRSx5QkFBQTtBMUZ1emRSO0EwRnB6ZE07RUFDRSxXckVWQztFcUVXRCx5QkQySm9FO0VDMUpwRSxxQkQwSm9FO0F6RjRwZDVFO0EwRm4wZEU7RUFDRSxjRHNLd0U7RUNyS3hFLHlCRHFLd0M7QXpGaXFkNUM7QW1CenpkRTtFdUVUTSxjRGlLb0U7RUNoS3BFLHlCQUFBO0ExRnEwZFI7QTBGbDBkTTtFQUNFLFdyRVZDO0VxRVdELHlCRDJKb0U7RUMxSnBFLHFCRDBKb0U7QXpGMHFkNUU7QTBGajFkRTtFQUNFLGNEc0t3RTtFQ3JLeEUseUJEcUt3QztBekYrcWQ1QztBbUJ2MGRFO0V1RVRNLGNEaUtvRTtFQ2hLcEUseUJBQUE7QTFGbTFkUjtBMEZoMWRNO0VBQ0UsV3JFVkM7RXFFV0QseUJEMkpvRTtFQzFKcEUscUJEMEpvRTtBekZ3cmQ1RTtBeUZocmRFO0VBQ0Usa0JBQUE7RUFDQSxhQUFBO0VBQ0EsZUFBQTtFQUNBLGdCQUFBO0U1RHBLQSxnQkFBQTtBN0J3MWRKO0F5RmpyZEk7RUFDRSxrQkFBQTtBekZtcmROO0F5RmpyZE07RUFDRSxrQkFBQTtFQUNBLFlBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLFdBQUE7RUFTRSx1Q0FBQTtBekYycWRWO0FnQmozZFE7RXlFZ01FLFFBQUE7QXpGb3JkVjtBaUJwM2RRO0V3RW1NRSxTQUFBO0F6Rm9yZFY7QVl6cmRRO0U2RVFFLHNDQUFBO0F6Rm9yZFY7QVk1cmRRO0U2RVFFLDRDQUFBO0F6RndyZFY7QTBGMzJkRTtFQUNFLDhCQUFBO0ExRjgyZEo7QTBGLzJkRTtFQUNFLDhCQUFB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QUVFLGdCQzlOUTtFN0Y4cWVWO0FBQ0Y7QXdEbG9lSTtFb0NzTEY7SUFBWSxpQkNwT0Y7RTdGb3JlVjtBQUNGO0E0RjM4ZEk7RUFDRSxxQmhGSVc7QVp5OGRqQjtBNEYxOGRJO0VBQ0UsV3ZFdFFHO0V1RXVRSCx5QmhGRFc7QVo2OGRqQjtBNEZsOWRJO0VBQ0UscUJoRklXO0FaaTlkakI7QTRGbDlkSTtFQUNFLFd2RXRRRztFdUV1UUgseUJoRkRXO0FacTlkakI7QTRGMTlkSTtFQUNFLHFCaEZJVztBWnk5ZGpCO0E0RjE5ZEk7RUFDRSxXdkV0UUc7RXVFdVFILHlCaEZEVztBWjY5ZGpCO0E0RmwrZEk7RUFDRSxrQmhGSVc7QVppK2RqQjtBNEZsK2RJO0VBQ0UsV3ZFdFFHO0V1RXVRSCxzQmhGRFc7QVpxK2RqQjtBNEYxK2RJO0VBQ0UscUJoRklXO0FaeStkakI7QTRGMStkSTtFQUNFLFd2RXRRRztFdUV1UUgseUJoRkRXO0FaNitkakI7QTRGbC9kSTtFQUNFLHFCaEZJVztBWmkvZGpCO0E0RmwvZEk7RUFDRSxXdkV0UUc7RXVFdVFILHlCaEZEVztBWnEvZGpCO0E0RjEvZEk7RUFDRSxxQmhGSVc7QVp5L2RqQjtBNEYxL2RJO0VBQ0UsV3ZFdFFHO0V1RXVRSCx5QmhGRFc7QVo2L2RqQjtBNEZsZ2VJO0VBQ0UscUJoRklXO0FaaWdlakI7QTRGbGdlSTtFQUNFLFd2RXRRRztFdUV1UUgseUJoRkRXO0FacWdlakI7QTRGMWdlSTtFQUNFLHFCaEZJVztBWnlnZWpCO0E0RjFnZUk7RUFDRSxXdkV0UUc7RXVFdVFILHlCaEZEVztBWjZnZWpCO0E0RmxoZUk7RUFDRSxxQmhGSVc7QVppaGVqQjtBNEZsaGVJO0VBQ0UsV3ZFdFFHO0V1RXVRSCx5QmhGRFc7QVpxaGVqQjtBNEYxaGVJO0VBQ0UscUJoRklXO0FaeWhlakI7QTRGMWhlSTtFQUNFLFd2RXRRRztFdUV1UUgseUJoRkRXO0FaNmhlakI7QTRGbGllSTtFQUNFLHFCaEZJVztBWmlpZWpCO0E0RmxpZUk7RUFDRSxXdkV0UUc7RXVFdVFILHlCaEZEVztBWnFpZWpCO0E0RjFpZUk7RUFDRSxxQmhGSVc7QVp5aWVqQjtBNEYxaWVJO0VBQ0UsV3ZFdFFHO0V1RXVRSCx5QmhGRFc7QVo2aWVqQjtBNEZsamVJO0VBQ0UscUJoRklXO0FaaWplakI7QTRGbGplSTtFQUNFLFd2RXRRRztFdUV1UUgseUJoRkRXO0FacWplakI7QTRGMWplSTtFQUNFLHFCaEZJVztBWnlqZWpCO0E0RjFqZUk7RUFDRSxXdkV0UUc7RXVFdVFILHlCaEZEVztBWjZqZWpCO0E0RmxrZUk7RUFDRSxxQmhGSVc7QVppa2VqQjtBNEZsa2VJO0VBQ0UsV3ZFdFFHO0V1RXVRSCx5QmhGRFc7QVpxa2VqQjtBNEYxa2VJO0VBQ0UscUJoRklXO0FaeWtlakI7QTRGMWtlSTtFQUNFLFd2RXRRRztFdUV1UUgseUJoRkRXO0FaNmtlakI7QTRGbGxlSTtFQUNFLHFCaEZJVztBWmlsZWpCO0E0RmxsZUk7RUFDRSxXdkV0UUc7RXVFdVFILHlCaEZEVztBWnFsZWpCO0E0RjFsZUk7RUFDRSxxQmhGSVc7QVp5bGVqQjtBNEYxbGVJO0VBQ0UsV3ZFdFFHO0V1RXVRSCx5QmhGRFc7QVo2bGVqQjtBNEZsbWVJO0VBQ0UscUJoRklXO0FaaW1lakI7QTRGbG1lSTtFQUNFLFd2RXRRRztFdUV1UUgseUJoRkRXO0FacW1lakI7QTRGMW1lSTtFQUNFLHFCaEZJVztBWnltZWpCO0E0RjFtZUk7RUFDRSxXdkV0UUc7RXVFdVFILHlCaEZEVztBWjZtZWpCO0E0RmxuZUk7RUFDRSxxQmhGSVc7QVppbmVqQjtBNEZsbmVJO0VBQ0UsV3ZFdFFHO0V1RXVRSCx5QmhGRFc7QVpxbmVqQjtBNEYxbmVJO0VBQ0UscUJoRklXO0FaeW5lakI7QTRGMW5lSTtFQUNFLFd2RXRRRztFdUV1UUgseUJoRkRXO0FaNm5lakI7QTRGbG9lSTtFQUNFLHFCaEZJVztBWmlvZWpCO0E0RmxvZUk7RUFDRSxXdkV0UUc7RXVFdVFILHlCaEZEVztBWnFvZWpCO0E4RjE0ZUE7RUFDRSxhQUFBO0VBQ0EsZUFBQTtFQUNBLGdCQUFBO0VBQ0EsZ0JBQUE7QTlGNjRlRjtBZ0JsNWVRO0U4RVFKLGVBQUE7QTlGNjRlSjtBaUJyNWVRO0U2RVdKLGdCQUFBO0E5RjY0ZUo7QThGejRlQTtFQUNFLGNBQUE7RUFDQSxvQkFBQTtBOUY0NGVGO0FtQi80ZUU7RTJFT0UscUJBQUE7QTlGMjRlSjtBOEZ2NGVFO0VBQ0UsY3pFakJTO0V5RWtCVCxvQkFBQTtFQUNBLGVBQUE7RUFFRSxjQUFBO0E5Rnc0ZU47QVl4dWVRO0VrRmhLRixjQUFBO0E5RjI0ZU47QVkzdWVRO0VrRmhLRixnQ0FBQTtBOUYrNGVOO0E4RnQ0ZUE7RUFDRSx3QkFBQTtFQUVFLHFCQUFBO0E5Rnc0ZUo7QVlwdmVRO0VrRnBKSixxQkFBQTtBOUYyNGVKO0FZdnZlUTtFa0ZwSkosd0NBQUE7QTlGKzRlSjtBOEY1NGVFO0VBQ0UsbUJBQUE7QTlGKzRlSjtBOEY1NGVFO0VBQ0UsNkJBQUE7RWpFM0JBLCtCQUFBO0VBQ0EsZ0NBQUE7QTdCMDZlSjtBbUJwN2VFO0UyRXlDTSxxQ0FBQTtBOUY4NGVSO0FZdndlUTtFa0Z2SUEscUNBQUE7QTlGaTVlUjtBWTF3ZVE7RWtGdklBLDhGQUFBO0E5RnE1ZVI7QThGajVlSTtFQUNFLDZCQUFBO0VBQ0EseUJBQUE7RUFFRSxjQUFBO0E5Rm01ZVI7QVlweGVRO0VrRi9IQSxjQUFBO0E5RnM1ZVI7QVl2eGVRO0VrRi9IQSxnQ0FBQTtBOUYwNWVSO0E4RnI1ZUU7O0VBR0ksY0FBQTtFQUNBLHlCQUFBO0VBQ0EscUNBQUE7QTlGdTVlTjtBWWx5ZVE7O0VrRnZIRixjQUFBO0VBQ0EseUJBQUE7RUFDQSxxQ0FBQTtBOUY2NWVOO0FZeHllUTs7RWtGdkhGLGdDQUFBO0VBQ0EsNENBQUE7RUFDQSx5QkFBQTtBOUZvNmVOO0E4Rmg2ZUU7RUFFRSxnQkFBQTtFakV4REEseUJBQUE7RUFDQSwwQkFBQTtBN0IyOWVKO0E4Rm41ZUU7RUFDRSxTQUFBO0E5RnM1ZUo7QThGbjVlTTtFQUVJLHNCQUFBO0VBQ0EseUJBQUE7QTlGbzVlVjtBWTd6ZVE7RWtGeEZFLHNCQUFBO0VBQ0EseUJBQUE7QTlGdzVlVjtBWWowZVE7RWtGeEZFLHlCQUFBO0VBQ0EsNEJBQUE7QTlGNjVlVjtBOEZ4NWVFO0VBQ0Usd0JBQUE7RUFDQSxpQkFBQTtFakVoR0Esd0NBQUE7RWlFbUdFLGNBQUE7RUFDQSxzQkFBQTtFQUNBLHFCQUFBO0E5RjA1ZU47QVkvMGVRO0VrRjdFRixjQUFBO0VBQ0Esc0JBQUE7RUFDQSxxQkFBQTtBOUYrNWVOO0FZcDFlUTtFa0Y3RUYsZ0NBQUE7RUFDQSx5QkFBQTtFQUNBLHFCQUFBO0E5RnE2ZU47QThGaDZlSTtFQUNFLHlCQUFBO0E5Rm02ZU47QThGajZlSTtFakU3R0Esd0NBQUE7QTdCaWhmSjtBOEYvNWVFO0VBRUUsYUFBQTtBOUZnNmVKO0E4Rjk1ZUk7RUFDRSxVQUFBO0VBQ0EsWUFBQTtFQUNBLGdCQUFBO0E5Rmc2ZU47QWlCdmlmUTtFNkU2SUYsMkJBQUE7QTlGNjVlTjtBOEYxNWVJO0VBQ0Usa0JBQUE7QTlGNDVlTjtBOEZ6NWVJO0VqRXRJQSxrQ0FBQTtBN0JraWZKO0E4Rno1ZU07RUFFSSwwQ0FBQTtBOUYwNWVWO0FZcjNlUTtFa0ZyQ0UsMENBQUE7QTlGNjVlVjtBWXgzZVE7RWtGckNFLHdDQUFBO0E5Rmk2ZVY7QWdCMWpmUTtFOEVpS0YsMkJBQUE7QTlGNjVlTjtBaUI5amZRO0U2RW9LRixtQkFBQTtBOUY2NWVOO0FnQmprZlE7RThFeUtBLGlCQUFBO0E5RjI1ZVI7QWlCcGtmUTtFNkU0S0Esa0JBQUE7QTlGMjVlUjtBOEZ2NWVJO0VqRWxLQSxrQ0FBQTtBN0I0amZKO0E4RnY1ZU07RUFFSSwwQ0FBQTtBOUZ3NWVWO0FZLzRlUTtFa0ZURSwwQ0FBQTtBOUYyNWVWO0FZbDVlUTtFa0ZURSw2Q0FBQTtBOUYrNWVWO0E4RjE1ZUk7RWpFNUtBLHdDQUFBO0E3QjBrZko7QThGbDVlRTtFakV4TEUsc0JBQUE7QTdCOGtmSjtBOEZsNWVFOztFQUdJLFdBQUE7RUFDQSx5QkFBQTtBOUZtNWVOO0FZbjZlUTs7RWtGZUYsV0FBQTtFQUNBLHlCQUFBO0E5Rnc1ZU47QVl4NmVROztFa0ZlRixXQUFBO0VBQ0EseUJBQUE7QTlGODVlTjtBOEZyNWVBO0VBQ0Usd0JBQUE7RUFFRSxxQkFBQTtBOUZ1NWVKO0FZbjdlUTtFa0Y0QkoscUJBQUE7QTlGMDVlSjtBWXQ3ZVE7RWtGNEJKLHdDQUFBO0E5Rjg1ZUo7QThGMzVlRTtFQUNFLG1CQUFBO0E5Rjg1ZUo7QThGMzVlRTtFQUNFLFNBQUE7RUFDQSxvQ0FBQTtBOUY2NWVKO0E4RjE1ZUU7O0VBRUUsdUJBQUE7QTlGNDVlSjtBOEZ0NWVJOztFQUVFLGNsRnNCVztFa0ZyQlgscUJsRnFCVztBWm80ZWpCO0E4RjU1ZUk7O0VBRUUsY2xGc0JXO0VrRnJCWCxxQmxGcUJXO0FaMDRlakI7QThGbDZlSTs7RUFFRSxjbEZzQlc7RWtGckJYLHFCbEZxQlc7QVpnNWVqQjtBOEZ4NmVJOztFQUVFLFdsRnNCVztFa0ZyQlgsa0JsRnFCVztBWnM1ZWpCO0E4Rjk2ZUk7O0VBRUUsY2xGc0JXO0VrRnJCWCxxQmxGcUJXO0FaNDVlakI7QThGcDdlSTs7RUFFRSxjbEZzQlc7RWtGckJYLHFCbEZxQlc7QVprNmVqQjtBOEYxN2VJOztFQUVFLGNsRnNCVztFa0ZyQlgscUJsRnFCVztBWnc2ZWpCO0E4Rmg4ZUk7O0VBRUUsY2xGc0JXO0VrRnJCWCxxQmxGcUJXO0FaODZlakI7QThGdDhlSTs7RUFFRSxjbEZzQlc7RWtGckJYLHFCbEZxQlc7QVpvN2VqQjtBOEY1OGVJOztFQUVFLGNsRnNCVztFa0ZyQlgscUJsRnFCVztBWjA3ZWpCO0E4Rmw5ZUk7O0VBRUUsY2xGc0JXO0VrRnJCWCxxQmxGcUJXO0FaZzhlakI7QThGeDllSTs7RUFFRSxjbEZzQlc7RWtGckJYLHFCbEZxQlc7QVpzOGVqQjtBOEY5OWVJOztFQUVFLGNsRnNCVztFa0ZyQlgscUJsRnFCVztBWjQ4ZWpCO0E4RnArZUk7O0VBRUUsY2xGc0JXO0VrRnJCWCxxQmxGcUJXO0FaazllakI7QThGMStlSTs7RUFFRSxjbEZzQlc7RWtGckJYLHFCbEZxQlc7QVp3OWVqQjtBOEZoL2VJOztFQUVFLGNsRnNCVztFa0ZyQlgscUJsRnFCVztBWjg5ZWpCO0E4RnQvZUk7O0VBRUUsY2xGc0JXO0VrRnJCWCxxQmxGcUJXO0FabytlakI7QThGNS9lSTs7RUFFRSxjbEZzQlc7RWtGckJYLHFCbEZxQlc7QVowK2VqQjtBOEZsZ2ZJOztFQUVFLGNsRnNCVztFa0ZyQlgscUJsRnFCVztBWmcvZWpCO0E4RnhnZkk7O0VBRUUsY2xGc0JXO0VrRnJCWCxxQmxGcUJXO0Facy9lakI7QThGOWdmSTs7RUFFRSxjbEZzQlc7RWtGckJYLHFCbEZxQlc7QVo0L2VqQjtBOEZwaGZJOztFQUVFLGNsRnNCVztFa0ZyQlgscUJsRnFCVztBWmtnZmpCO0E4RjFoZkk7O0VBRUUsY2xGc0JXO0VrRnJCWCxxQmxGcUJXO0Fad2dmakI7QThGaGlmSTs7RUFFRSxjbEZzQlc7RWtGckJYLHFCbEZxQlc7QVo4Z2ZqQjtBOEZ4aGZFO0VBQ0UsY0FBQTtFQUNBLGtCQUFBO0E5RjJoZko7QThGdGhmRTtFQUNFLGFBQUE7RUFDQSxZQUFBO0VBQ0Esa0JBQUE7QTlGeWhmSjtBOEYvZ2ZFO0VBQ0UsYUFBQTtBOUZraGZKO0E4RmhoZkU7RUFDRSxjQUFBO0E5RmtoZko7QThGemdmSTs7RUFDRSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSxZQy9Qa0I7RURnUWxCLGNBQUE7RUFDQSxpQkFBQTtBOUY2Z2ZOO0FnR2x5ZkE7RUFDRSxrQkFBQTtFQUNBLGFBQUE7RUFDQSxlQUFBO0VBQ0EsbUJBQUE7RUFDQSw4QkFBQTtFQUNBLG9CQUFBO0FoR3F5ZkY7QWdHanlmRTs7Ozs7OztFQUNFLGFBQUE7RUFDQSxlQUFBO0VBQ0EsbUJBQUE7RUFDQSw4QkFBQTtBaEd5eWZKO0FnR3J4ZkE7RUFDRSxxQkFBQTtFQUNBLHlCQ3hDd0I7RUR5Q3hCLDRCQ3pDd0I7RUQwQ3hCLGtCRS9DUTtFbkZ1SEoscUJBdENhO0VpRmhDakIsb0JBQUE7RUFDQSxtQkFBQTtBaEd1eGZGO0FtQi96ZkU7RTZFMkNFLHFCQUFBO0FoR3V4Zko7QWdHOXdmQTtFQUNFLGFBQUE7RUFDQSxzQkFBQTtFQU9BLGdCQUFBO0VBQ0EsZ0JB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Q0Usa0JBQUE7RWhHODVmVjtFZ0czNWZRO0lBQ0UscUJDbExpQjtJRG1MakIsb0JDbkxpQjtFakdnbGdCM0I7RWdHeDVmTTs7Ozs7OztJQUNFLGlCQUFBO0VoR2c2ZlI7RWdHbDVmTTtJQUNFLHdCQUFBO0lBR0EsZ0JBQUE7RWhHazVmUjtFZ0cvNGZNO0lBQ0UsYUFBQTtFaEdpNWZSO0FBQ0Y7QWdHOThmSTtFQW9CSSxxQkFBQTtFQUNBLDJCQUFBO0FoRzY3ZlI7QWdHaDlmUTs7Ozs7OztFQUNFLGdCQUFBO0VBQ0EsZUFBQTtBaEd3OWZWO0FnR3I4ZlE7RUFDRSxtQkFBQTtBaEd1OGZWO0FnR3I4ZlU7RUFDRSxrQkFBQTtBaEd1OGZaO0FnR3A4ZlU7RUFDRSxxQkNsTGlCO0VEbUxqQixvQkNuTGlCO0FqR3luZ0I3QjtBZ0dqOGZROzs7Ozs7O0VBQ0UsaUJBQUE7QWhHeThmVjtBZ0czN2ZRO0VBQ0Usd0JBQUE7RUFHQSxnQkFBQTtBaEcyN2ZWO0FnR3g3ZlE7RUFDRSxhQUFBO0FoRzA3ZlY7QWdHbDdmRTtFQUNFLFdBQUE7QWhHcTdmSjtBbUJsb2dCRTtFNkVnTkksV0FBQTtBaEdxN2ZOO0FnR2g3Zkk7RUFDRSwrQkFBQTtBaEdrN2ZOO0FtQnhvZ0JFO0U2RXlOTSxnQ0FBQTtBaEdrN2ZSO0FnRy82Zk07RUFDRSxnQ0FBQTtBaEdpN2ZSO0FnRzc2Zkk7Ozs7RUFJRSxXQUFBO0FoRys2Zk47QWdHMzZmRTtFQUNFLCtCQUFBO0VBQ0Esc0NBQUE7QWhHNjZmSjtBZ0cxNmZFO0VBQ0UseVJBQUE7QWhHNDZmSjtBZ0d6NmZFO0VBQ0UsK0JBQUE7QWhHMjZmSjtBZ0cxNmZJO0VBQ0UsV0FBQTtBaEc0NmZOO0FtQmpxZ0JFO0U2RXdQTSxXQUFBO0FoRzQ2ZlI7QWdHeDlmRTtFQUNFLDBCQUFBO0FoRzI5Zko7QW1CeHFnQkU7RTZFZ05JLDBCQUFBO0FoRzI5Zk47QWdHdDlmSTtFQUNFLDBCQUFBO0FoR3c5Zk47QW1COXFnQkU7RTZFeU5NLDBCQUFBO0FoR3c5ZlI7QWdHcjlmTTtFQUNFLDBCQUFBO0FoR3U5ZlI7QWdHbjlmSTs7OztFQUlFLDBCQUFBO0FoR3E5Zk47QWdHajlmRTtFQUNFLDBCQUFBO0VBQ0EsaUNBQUE7QWhHbTlmSjtBZ0doOWZFO0VBQ0Usb1JBQUE7QWhHazlmSjtBZ0cvOGZFO0VBQ0UsMEJBQUE7QWhHaTlmSjtBZ0doOWZJO0VBQ0UsMEJBQUE7QWhHazlmTjtBbUJ2c2dCRTtFNkV3UE0sMEJBQUE7QWhHazlmUjtBZ0c5L2ZFO0VBQ0UsV0FBQTtBaEdpZ2dCSjtBbUI5c2dCRTtFNkVnTkksV0FBQTtBaEdpZ2dCTjtBZ0c1L2ZJO0VBQ0UsK0JBQUE7QWhHOC9mTjtBbUJwdGdCRTtFNkV5Tk0sZ0NBQUE7QWhHOC9mUjtBZ0czL2ZNO0VBQ0UsZ0NBQUE7QWhHNi9mUjtBZ0d6L2ZJOzs7O0VBSUUsV0FBQTtBaEcyL2ZOO0FnR3YvZkU7RUFDRSwrQkFBQTtFQUNBLHNDQUFBO0FoR3kvZko7QWdHdC9mRTtFQUNFLHlSQUFBO0FoR3cvZko7QWdHci9mRTtFQUNFLCtCQUFBO0FoR3UvZko7QWdHdC9mSTtFQUNFLFdBQUE7QWhHdy9mTjtBbUI3dWdCRTtFNkV3UE0sV0FBQTtBaEd3L2ZSO0FnR3BpZ0JFO0VBQ0UsMEJBQUE7QWhHdWlnQko7QW1CcHZnQkU7RTZFZ05JLDBCQUFBO0FoR3VpZ0JOO0FnR2xpZ0JJO0VBQ0UsMEJBQUE7QWhHb2lnQk47QW1CMXZnQkU7RTZFeU5NLDBCQUFBO0FoR29pZ0JSO0FnR2ppZ0JNO0VBQ0UsMEJBQUE7QWhHbWlnQlI7QWdHL2hnQkk7Ozs7RUFJRSwwQkFBQTtBaEdpaWdCTjtBZ0c3aGdCRTtFQUNFLDBCQUFBO0VBQ0EsaUNBQUE7QWhHK2hnQko7QWdHNWhnQkU7RUFDRSxvUkFBQTtBaEc4aGdCSjtBZ0czaGdCRTtFQUNFLDBCQUFBO0FoRzZoZ0JKO0FnRzVoZ0JJO0VBQ0UsMEJBQUE7QWhHOGhnQk47QW1CbnhnQkU7RTZFd1BNLDBCQUFBO0FoRzhoZ0JSO0FvR3h5Z0JBO0VBQ0UsYUFBQTtFQ1NBLGdCQUFBO0V4RVFFLHNCQUFBO0E3QjR4Z0JKO0FnQjF5Z0JRO0VxRkNK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QTtBeEd1OWdCSjtBWXJ5Z0JRO0U0Rm5MSixzQkFBQTtFQUNBLGdDQUFBO0F4RzI5Z0JKO0FZenlnQlE7RTRGbkxKLHlCQUFBO0VBQ0Esd0NBQUE7QXhHZytnQko7QXdHNzlnQkU7RUFDRSxrQkFBQTtFQUNBLGNBQUE7QXhHZytnQko7QXdHOTlnQkk7RUFFRSxrQkFBQTtFQUNBLGNBQUE7RUFDQSxXQUFBO0VBQ0EseUJBQUE7RUFDQSxtQkFBQTtBeEcrOWdCTjtBd0d4OWdCRTs7RUFDRSxhQUFBO0VBQ0EsYzdFcEJvQjtFNkVxQnBCLGlCQUFBO0F4RzQ5Z0JKO0F3R3Q5Z0JFOztFQUNFLGE3RTVCb0I7RTZFNkJwQixjQUFBO0VBQ0EsaUJBQUE7RUFDQSxTQUFBO0F4RzA5Z0JKO0F3R3Q5Z0JBO0VBRUUsZ0NBQUE7QXhHdzlnQkY7QXdHdDlnQkU7RUFDRSwyQkFBQTtBeEd3OWdCSjtBd0d0OWdCSTtFQUNFLFNBQUE7RUFDQSw2QkFBQTtFQUVFLHNDQUFBO0F4R3U5Z0JSO0FZcjFnQlE7RTRGbElBLHFDQUFBO0F4RzA5Z0JSO0FZeDFnQlE7RTRGbElBLDRDQUFBO0F4Rzg5Z0JSO0F3RzE5Z0JJO0VBQ0UsVzFFNURVO0UwRTZEViw2QkFBQTtFQUVFLHNCQUFBO0F4RzQ5Z0JSO0FZbDJnQlE7RTRGMUhBLHNCQUFBO0F4Rys5Z0JSO0FZcjJnQlE7RTRGMUhBLHlCQUFBO0F4R20rZ0JSO0F3Rzc5Z0JBO0VBRUUsOEJBQUE7QXhHKzlnQkY7QXdHNzlnQkU7RUFDRSx5QkFBQTtBeEcrOWdCSjtBd0c3OWdCSTtFQUNFLE9BQUE7RUFDQSxvQ0FBQTtFQUVFLHdDQUFBO0F4Rzg5Z0JSO0FZcjNnQlE7RTRGekdBLHVDQUFBO0F4R2krZ0JSO0FZeDNnQlE7RTRGekdBLDhDQUFBO0F4R3ErZ0JSO0F3R2orZ0JJO0VBQ0UsUzFFckZVO0UwRXNGVixvQ0FBQTtFQUVFLHdCQUFBO0F4R20rZ0JSO0FZbDRnQlE7RTRGakdBLHdCQUFBO0F4R3MrZ0JSO0FZcjRnQlE7RTRGakdBLDJCQUFBO0F4RzArZ0JSO0F3R3ArZ0JBO0VBRUUsNkJBQUE7QXhHcytnQkY7QXdHcCtnQkU7RUFDRSx3QkFBQTtBeEdzK2dCSjtBd0dwK2dCSTtFQUNFLE1BQUE7RUFDQSxvQ0FBQTtFQUVFLHlDQUFBO0F4R3ErZ0JSO0FZcjVnQlE7RTRGaEZBLHdDQUFBO0F4R3crZ0JSO0FZeDVnQlE7RTRGaEZBLCtDQUFBO0F4RzQrZ0JSO0F3R3grZ0JJO0VBQ0UsUTFFOUdVO0UwRStHVixvQ0FBQTtFQUVFLHlCQUFBO0F4RzArZ0JSO0FZbDZnQlE7RTRGeEVBLHlCQUFBO0F4RzYrZ0JSO0FZcjZnQlE7RTRGeEVBLDRCQUFBO0F4R2kvZ0JSO0F3RzMrZ0JFO0VBQ0Usa0JBQUE7RUFDQSxNQUFBO0VBQ0EsU0FBQTtFQUNBLGNBQUE7RUFDQSxXN0VwSG9CO0U2RXFIcEIsb0JBQUE7RUFDQSxXQUFBO0VBQ0Esd0JBQUE7RUFFRSw0QkFBQTtBeEc2K2dCTjtBWXI3Z0JRO0U0RnhERiw0QkFBQTtBeEdnL2dCTjtBWXg3Z0JRO0U0RnhERiw0QkFBQTtBeEdvL2dCTjtBd0cvK2dCQTtFQUVFLDhCQUFBO0F4R2kvZ0JGO0F3Ry8rZ0JFO0VBQ0UsMEJBQUE7QXhHaS9nQko7QXdHLytnQkk7RUFDRSxRQUFBO0VBQ0Esb0NBQUE7RUFFRSx1Q0FBQTtBeEdnL2dCUjtBWXg4Z0JRO0U0RnhDQSxzQ0FBQTtBeEdtL2dCUjtBWTM4Z0JRO0U0RnhDQSw2Q0FBQTtBeEd1L2dCUjtBd0duL2dCSTtFQUNFLFUxRXRKVTtFMEV1SlYsb0NBQUE7RUFFRSx1QkFBQTtBeEdxL2dCUjtBWXI5Z0JRO0U0RmhDQSx1QkFBQTtBeEd3L2dCUjtBWXg5Z0JRO0U0RmhDQSwwQkFBQTtBeEc0L2dCUjtBd0dwK2dCQTtFQUNFLHVCQUFBO0VBQ0EsZ0JBQUE7RXpGN0RJLG1CQXRDYTtFeUZxR2pCLHdCQUFBO0UzRW5LRSwwQ0FBQTtFQUNBLDJDQUFBO0UyRXNLQSx5QkFBQTtFQUNBLDRCQUFBO0F4R3MrZ0JKO0FZditnQlE7RTRGQUoseUJBQUE7RUFDQSw0QkFBQTtBeEcwK2dCSjtBWTMrZ0JRO0U0RkRKLGdDQUFBO0VBQ0EseUJBQUE7RUFDQSw0QkFBQTtBeEdnL2dCSjtBd0c3K2dCRTtFQUNFLGFBQUE7QXhHZy9nQko7QXdHNStnQkE7RUFDRSx1QkFBQTtFQUVFLGNBQUE7QXhHOCtnQko7QVkxL2dCUTtFNEZZSixjQUFBO0F4R2kvZ0JKO0FZNy9nQlE7RTRGWUosZ0NBQUE7QXhHcS9nQko7QXlHanNoQkU7RUFDRTtJQUFPLDJCQUFBO0V6R3FzaEJUO0V5R3BzaEJFO0lBQUssd0JBQUE7RXpHdXNoQlA7QUFDRjtBeUcxc2hCRTtFQUNFO0lBQU8sMkJBQUE7RXpHcXNoQlQ7RXlHcHNoQkU7SUFBSyx3QkFBQTtFekd1c2hCUDtBQUNGO0F5R3BzaEJBO0VBQ0UsYUFBQTtFQUNBLFlDUG9CO0VEUXBCLGdCQUFBO0VBQ0EsY0FBQTtFMUZtSEkscUJBdENhO0VjdkVmLHNCQUFBO0U0RUFBLHlCQUFBO0F6R21zaEJKO0FZbmhoQlE7RTZGaExKLHlCQUFBO0F6R3NzaEJKO0FZdGhoQlE7RTZGaExKLDBDQUFBO0F6RzBzaEJKO0F5R3RzaEJBO0VBQ0UsYUFBQTtFQUNBLHNCQUFBO0VBQ0EsdUJBQUE7RUFDQSxnQkFBQTtFQUNBLGtCQUFBO0VBQ0EsbUJBQUE7RWhFWkksMkJnRWFKO0VBR0UsV0FBQTtFQUNBLHlCQUFBO0F6R3VzaEJKO0F5Q3B0aEJNO0VnRUVOO0loRURRLGdCQUFBO0V6Q3V0aEJOO0FBQ0Y7QVkzaWhCUTtFNkZsS0osV0FBQTtFQUNBLHlCQUFBO0F6R2d0aEJKO0FZL2loQlE7RTZGbEtKLFdBQUE7RUFDQSx5QkFBQTtBekdxdGhCSjtBeUdqdGhCQTtFckVNRSxxTUFBQTtFcUVKQSwwQkFBQTtBekdvdGhCRjtBeUdodGhCRTtFQUNFLDBEQUFBO1VBQUEsa0RBQUE7QXpHbXRoQko7QXlHaHRoQk07RUFKSjtJQUtNLHVCQUFBO1lBQUEsZUFBQTtFekdtdGhCTjtBQUNGO0F5RzlzaEJBO0VBQ0UsV0FBQTtBekdpdGhCRjtBeUc5c2hCQTtFQUNFLFdBQUE7QXpHaXRoQkY7QXlHN3NoQkE7RUFDRSwwQ0FBQTtBekdndGhCRjtBeUcvc2hCRTtFQUNFLHNCcEY5REs7QXJCK3doQlQ7QTJHbHhoQkE7RUFDRSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQlRJUTtBbEdpeGhCVjtBMkdseGhCQTtFQUNFLGVBQUE7RUFDQSxrQkFBQTtBM0dxeGhCRjtBMkdseGhCQTtFQUNFLHFCN0ZGZ0I7QWR1eGhCbEI7QWdCOXhoQlE7RTJGWUosd0JBQUE7QTNHcXhoQko7QWlCanloQlE7RTBGZUosd0JBQUE7QTNHcXhoQko7QTJHanhoQkE7RUFDRSxzQjdGWmdCO0U2RmFoQixjdEZYVztBckIreGhCYjtBMkdqeGhCQTtFQUNFLGFBQUE7RUFDQSxnQkFBQTtFQUNBLHFCQUFBO0VBQ0Esc0JBQUE7QTNHb3hoQkY7QTJHanhoQkE7RUFDRSxZQUFBO0VBQ0Esa0JBQUE7QTNHb3hoQkY7QTJHbHhoQkU7RUFDRSxrQkFBQTtBM0dveGhCSjtBMkdoeGhCQTtFQUNFLGdCQUFBO0EzR214aEJGO0E0Rzl6aEJBO0VBQ0Usa0JBQUE7RUFDQSxhQUFBO0VBRUEsZUFBQTtFQUNBLHNCQUFBO0VBRUEsU0FBQTtFQUNBLFl4R1BjO0V3R1FkLFViRzBCO0VhRjFCLGdCQUFBO0E1Ryt6aEJGO0E0Rzd6aEJFO0VBQ0UsU0FBQTtBNUcremhCSjtBd0R4dmhCSTtFb0RwRko7SUFrQkksaUJBQUE7SUFDQSxlQUFBO0lBQ0EsTUFBQTtJQUNBLFNBQUE7SUFDQSxhQUFBO0U1Rzh6aEJGO0U0RzN6aEJJO0lBQ0UsT0FBQTtFNUc2emhCTjtFNEczemhCSTtJQUNFLFFBQUE7RTVHNnpoQk47RTRHenpoQkk7SUFDRSxRQUFBO0U1RzJ6aEJOO0U0R3p6aEJJO0lBQ0UsT0FBQTtFNUcyemhCTjtBQUNGO0E0R3R6aEJJO0VBQ0UsbUJBQUE7QTVHd3poQk47QTRHdHpoQkk7RUFDRSxvQkFBQTtBNUd3emhCTjtBNEduemhCSTtFQUNFLG9CQUFBO0E1R3F6aEJOO0E0R256aEJJO0VBQ0UsbUJBQUE7QTVHcXpoQk47QTRHanpoQkU7RUFDRSxpQ0FBQTtBNUdtemhCSjtBNEcveWhCSTtFQUNFLGVBQUE7RUFDQSxZYjdEVztBL0Y4MmhCakI7QTRHOXloQlE7RUFDRSxtQkFBQTtBNUdnemhCVjtBNEc5eWhCUTtFQUNFLG9CQUFBO0E1R2d6aEJWO0E0RzN5aEJRO0VBQ0Usb0JBQUE7QTVHNnloQlY7QTRHM3loQlE7RUFDRSxtQkFBQTtBNUc2eWhCVjtBNEcvemhCSTtFQUNFLGVBQUE7RUFDQSxZYjdEVztBL0Y4M2hCakI7QTRHOXpoQlE7RUFDRSxtQkFBQTtBNUdnMGhCVjtBNEc5emhCUTtFQUNFLG9CQUFBO0E1R2cwaEJWO0E0RzN6aEJRO0VBQ0Usb0JBQUE7QTVHNnpoQlY7QTRHM3poQlE7RUFDRSxtQkFBQTtBNUc2emhCVjtBNEcvMGhCSTtFQUNFLGVBQUE7RUFDQSxZYjdEVztBL0Y4NGhCakI7QTRHOTBoQlE7RUFDRSxtQkFBQTtBNUdnMWhCVjtBNEc5MGhCUTtFQUNFLG9CQUFBO0E1R2cxaEJWO0E0RzMwaEJRO0VBQ0Usb0JBQUE7QTVHNjBoQlY7QTRHMzBoQlE7RUFDRSxtQkFBQTtBNUc2MGhCVjtBd0R6MWhCSTtFb0RrQkY7SUFFSSxlQUFBO0lBQ0EsTUFBQTtJQUNBLFNBQUE7SUFDQSxhbEZ4Rm1CO0UxQmk2aEJ2QjtFNEd0MGhCTTtJQUNFLE9BQUE7RTVHdzBoQlI7RTRHcjBoQk07SUFDRSxRQUFBO0U1R3UwaEJSO0U0R2wwaEJNO0lBQ0UsUUFBQTtFNUdvMGhCUjtFNEdqMGhCTTtJQUNFLE9BQUE7RTVHbTBoQlI7QUFDRjtBNEc5emhCRTtFQUNFLGVBQUE7RUFDQSxNQUFBO0VBQ0EsU0FBQTtFQUNBLGFBQUE7QTVHZzBoQko7QTRHN3poQk07RUFDRSxPQUFBO0E1Ryt6aEJSO0E0RzV6aEJNO0VBQ0UsUUFBQTtBNUc4emhCUjtBNEd6emhCTTtFQUNFLFFBQUE7QTVHMnpoQlI7QTRHeHpoQk07RUFDRSxPQUFBO0E1RzB6aEJSO0E0R2h6aEJBO0VBQ0Usa0JBQUE7RUFDQSxXYnJIc0I7RWFzSHRCLFlidEhzQjtFYXVIdEIsdUJBQUE7RUFDQSxTQUFBO0E1R216aEJGO0FtQnA4aEJFO0VBQ0U7SXlGbUpBLHFCQUFBO0U1R296aEJGO0FBQ0Y7QTRHbHpoQkU7RUFFRSxVQUFBO0E1R216aEJKO0FnQnA5aEJRO0U0RnFLSixRQUFBO0E1R2t6aEJKO0FpQnY5aEJRO0UyRnlLSixPQUFBO0E1R2l6aEJKO0E0Rzd5aEJBO0VBQ0UsYUFBQTtFQUNBLGNBQUE7RUFDQSxtQkFBQTtFQUNBLHVCQUFBO0E1R2d6aEJGO0E0Rzl5aEJFO0VBQ0UsYUFBQTtBNUdnemhCSjtBNEc1eWhCQTtFQUNFLGNBQUE7RUFDQSxxQkFBQTtFQUNBLGtCQUFBO0VBQ0EsZ0JDeksyQztBN0d3OWhCN0M7QTRHMXloQkE7RUFDRSxrQkFBQTtFQUNBLGFBQUE7RUFDQSxPQUFBO0VBQ0Esc0JBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxrQkFBQTtFQUNBLGdCQUFBO0VBQ0EsZ0JBQUE7QTVHNnloQkY7QTRHM3loQkU7RUFFRSw4QkFBQTtFQUVBLHdCQUFBO0E1RzJ5aEJKO0E0R3p5aEJJO0VBQ0UsbUJBQUE7QTVHMnloQk47QTRHdHloQkE7RUFDRSxxQkFBQTtFQUNBLGdCYmhKOEI7RWFpSjlCLGNBQUE7RUFDQSxnQkFBQTtFQUNBLHlCQUFBO0VBQ0EsZ0JDM00yQztBN0dvL2hCN0M7QTRHdHloQkE7RUFDRSxZQUFBO0VBQ0EsdUJBQUE7QTVHeXloQkY7QTRHdHloQkE7RUFDRSxjQUFBO0E1R3l5aEJGO0E0R3R5aEJBO0VBQ0UsYUFBQTtFQUNBLE9BQUE7RUFDQSxtQkFBQTtFQUNBLHVCQUFBO0VBQ0EscUJBQUE7RUFDQSxtQkFBQTtFQUNBLHVDQUFBO0E1R3l5aEJGO0FnQjFoaUJRO0U0RndQRixpQkFBQTtBNUdxeWhCTjtBaUI3aGlCUTtFMkYyUEYsa0JBQUE7QTVHcXloQk47QTRHanloQkU7RUFDRSxlRXBNYztBOUd1K2hCbEI7QTRHanloQkU7RUFDRTtJQUNFLHFCQUFBO0U1R215aEJKO0FBQ0Y7QTRHL3hoQkE7RUFDRSxjQUFBO0VBQ0Esa0JBQUE7RUFDQSxxQkFBQTtFQUNBLGtCQUFBO0VBQ0EsZ0JDM1AyQztFRDRQM0Msa0JBQUE7QTVHa3loQkY7QWdCamppQlE7RTRGbVJGLGtCQUFBO0E1R2l5aEJOO0FpQnBqaUJRO0UyRnNSRixtQkFBQTtBNUdpeWhCTjtBNEc1eGhCQTtFQUNFLGtCQUFBO0VBQ0EsdUNBQUE7QTVHK3hoQkY7QTRHenhoQkk7RUFDRSxrQkFBQTtBNUcyeGhCTjtBZ0IvamlCUTtFNEZ5U0EseUJBQUE7QTVHeXhoQlI7QWlCbGtpQlE7RTJGNFNBLHlCQUFBO0E1R3l4aEJSO0E0R3J4aEJJO0VBQ0UsZUFBQTtBNUd1eGhCTjtBNEdseGhCQTtFQUVFLGVBQUE7QTVHb3hoQkY7QTRHbHhoQkU7RUFDRSxjQUFBO0VBQ0EsV0FBQTtFQUNBLFdBQUE7RUFDQSxXQUFBO0VBQ0EsNEJBQUE7RUFDQSwyQkFBQTtFQUNBLDBCQUFBO0E1R294aEJKO0FnQnJsaUJRO0U0Rm9VRixpQkFBQTtBNUdveGhCTjtBaUJ4bGlCUTtFMkZ1VUYsa0JBQUE7RUFDQSx5QkFBQTtBNUdveGhCTjtBZ0I1bGlCUTtFNEY4VUYsa0JibFEwQjtBL0ZtaGlCaEM7QWlCL2xpQlE7RTJGaVZGLGlCYnJRMEI7QS9Gc2hpQmhDO0E0RzV3aEJBO0VBQ0UsYUFBQTtFQUNBLFVBQUE7RUFDQSxrQkFBQTtFQUNBLGdCQUFBO0VBQ0EsdUNBQUE7QTVHK3doQkY7QWdCMW1pQlE7RTRGK1ZGLGtCYmxSMEI7QS9GZ2lpQmhDO0FpQjdtaUJRO0UyRmtXRixtQmJyUjBCO0EvRm1paUJoQztBZ0JobmlCUTtFNEZ1V0Esa0JBQUE7QTVHNHdoQlI7QWlCbm5pQlE7RTJGMFdBLG1CQUFBO0E1RzR3aEJSO0FnQnRuaUJRO0U0RnVYRSxrQkFBQTtBNUdtd2hCVjtBaUIxbmlCUTtFMkYwWEUsbUJBQUE7QTVHbXdoQlY7QWdCN25pQlE7RTRGOFhJLGtCQUFBO0E1R2t3aEJaO0FpQmhvaUJRO0UyRmlZSSxtQkFBQTtBNUdrd2hCWjtBZ0Jub2lCUTtFNEZ1WEUsa0JBQUE7QTVHK3doQlY7QWlCdG9pQlE7RTJGMFhFLG1CQUFBO0E1Ryt3aEJWO0FnQnpvaUJRO0U0RjhYSSxrQkFBQTtBNUc4d2hCWjtBaUI1b2lCUTtFMkZpWUksbUJBQUE7QTVHOHdoQlo7QWdCL29pQlE7RTRGdVhFLGtCQUFBO0E1RzJ4aEJWO0FpQmxwaUJRO0UyRjBYRSxtQkFBQTtBNUcyeGhCVjtBZ0JycGlCUTtFNEY4WEksa0JBQUE7QTVHMHhoQlo7QWlCeHBpQlE7RTJGaVlJLG1CQUFBO0E1RzB4aEJaO0FnQjNwaUJRO0U0RnVYRSxrQkFBQTtBNUd1eWhCVjtBaUI5cGlCUTtFMkYwWEUsbUJBQUE7QTVHdXloQlY7QWdCanFpQlE7RTRGOFhJLGtCQUFBO0E1R3N5aEJaO0FpQnBxaUJRO0UyRmlZSSxtQkFBQTtBNUdzeWhCWjtBZ0J2cWlCUTtFNEZ1WEUsa0JBQUE7QTVHbXpoQlY7QWlCMXFpQlE7RTJGMFhFLG1CQUFBO0E1R216aEJWO0FnQjdxaUJRO0U0RjhYSSxrQkFBQTtBNUdremhCWjtBaUJocmlCUTtFMkZpWUksbUJBQUE7QTVHa3poQlo7QTRHenloQkE7RUFDRSxhQUFBO0VBQ0EseUJBQUE7RUFDQSxnQkMxWDJDO0E3R3NxaUI3QztBNEcxeWhCRTtFQUNFLHFCQUFBO0E1RzR5aEJKO0E0R3p5aEJFO0VBQ0UsZUFBQTtBNUcyeWhCSjtBNEd2eWhCQTtFQUNFLGNBQUE7RUFDQSxxQkFBQTtFQUNBLGdCQ3hZMkM7QTdHa3JpQjdDO0E0R3Z5aEJBO0VBQ0UsYUFBQTtFQUNBLGNBQUE7RUFDQSx5QkFBQTtFQUNBLGNBQUE7RUFDQSxVQUFBO0VBQ0EsZUFBQTtFQUNBLFNBQUE7QTVHMHloQkY7QXdEN25pQkk7RW9ENFVKO0lBVUksYUFBQTtFNUcyeWhCRjtBQUNGO0E0R3p5aEJFO0VBQ0UsY0FBQTtFQUNBLFdicFA0QztFYXFQNUMsWWJyUDRDO0Vhc1A1QyxXQUFBO0VBQ0EsNEJBQUE7RUFDQSwyQkFBQTtFQUNBLHVCQUFBO0VBQ0EsZ0JDaGF5QztBN0cyc2lCN0M7QWlCOXRpQlE7RTJGc2JGLHlCQUFBO0E1RzJ5aEJOO0E0R3Z5aEJFO0VBRUUsVUFBQTtBNUd3eWhCSjtBNEdyeWhCRTtFQUNFLDJCQUFBO0E1R3V5aEJKO0FnQnZ1aUJRO0U0Rm1jQSwwQkFBQTtBNUd1eWhCUjtBaUIxdWlCUTtFMkZzY0EsdUJBQUE7QTVHdXloQlI7QXdEM3BpQkk7RW9EMlhKO0lBRUksZUFBQTtJQUNBLE1BQUE7SUFDQSxPQUFBO0lBQ0EsYWxGOWNxQjtJa0YrY3JCLFlBQUE7SUFDQSxhQUFBO0lBQ0EseUJ2RnBkSztJdUZxZEwsZ0JDbmN5QztFN0dzdWlCM0M7RTRHaHloQkU7SUFBVyxVQUFBO0U1R215aEJiO0U0R2x5aEJFO0lBQVcsWWIxY2E7RS9GK3VpQjFCO0FBQ0Y7QXdEM3JpQkk7RW9EMlpKO0lBRUksYUFBQTtJQUNBLGNBQUE7RTVHbXloQkY7RTRHanloQkU7SUFDRSxhQUFBO0lBQ0EsV2I1ZHNCO0UvRit2aUIxQjtFZ0Ixd2lCTTtJNEY0ZUEsa0JBQUE7RTVHaXloQk47RWlCN3dpQk07STJGK2VBLG1CQUFBO0U1R2l5aEJOO0VnQmh4aUJNO0k0Rm9mQSxtQkFBQTtFNUcreGhCTjtFZ0JueGlCTTtJNEZ1ZkEsa0JBQUE7RTVHK3hoQk47RTRHM3hoQkU7SUFDRSxhQUFBO0U1RzZ4aEJKO0U0RzF4aEJFO0lBQ0UsY0FBQTtFNUc0eGhCSjtFNEd6eGhCRTtJQUNFLG9CYjNVMEM7SWE0VTFDLGlCQUFBO0U1RzJ4aEJKO0U0R3h4aEJFOzs7Ozs7O0lBT0UsU0FBQTtJQUNBLFVBQUE7SUFDQSxTQUFBO0lBQ0Esa0JBQUE7SUFDQSxVQUFBO0U1RzB4aEJKO0U0R3J4aEJFO0lBQ0UsZUFBQTtJQUNBLFNBQUE7SUFDQSxjQUFBO0U1R3V4aEJKO0VnQmx6aUJNO0k0RitoQkUsMEJBQUE7RTVHc3hoQlI7RWlCcnppQk07STJGa2lCRSx1QkFBQTtFNUdzeGhCUjtFZ0J4emlCTTtJNEZ5aUJBLHVCQUFBO0U1R2t4aEJOO0VpQjN6aUJNO0kyRjRpQkEseUJBQUE7RTVHa3hoQk47RWdCOXppQk07O0k0Rm9qQkUsbUJBQUE7RTVHOHdoQlI7RWlCbDBpQk07O0kyRnVqQkUsb0JBQUE7RTVHK3doQlI7RTRHMXdoQkU7O0lBRUUsZ0JBQUE7SUFDQSxtQkFBQTtJQUNBLGNBQUE7RTVHNHdoQko7RTRHMXdoQkk7O0lBQ0UsWUFBQTtFNUc2d2hCTjtFNEd6d2hCRTtJQUNFLGFBQUE7RTVHMndoQko7RTRHdndoQkk7SUFDRSxZeEc5a0JRO0VKdTFpQmQ7RTRHcHdoQkU7SUFDRSxrQkFBQTtFNUdzd2hCSjtFNEdwd2hCSTtJQUNFLGFBQUE7RTVHc3doQk47RTRHcHdoQk07SUFDRSxhQUFBO0U1R3N3aEJSO0U0R253aEJJO0lBQ0Usa0JBQUE7RTVHcXdoQk47RTRHaHdoQkk7SUFDRSxZQUFBO0lBQ0EsaUJBQUE7RTVHa3doQk47RTRHaHdoQk07SUFDRSxrQkFBQTtJQUNBLGVBQUE7RTVHa3doQlI7RWdCMTJpQk07STRGMm1CSSxVYmhtQmdCO0UvRmsyaUIxQjtFaUI3MmlCTTtJMkY4bUJJLFdibm1CZ0I7RS9GcTJpQjFCO0VnQmgzaUJNO0k0RnNuQkEsT0FBQTtFNUc2dmhCTjtFaUJuM2lCTTtJMkZ5bkJBLFFBQUE7RTVHNnZoQk47QUFDRjtBd0RsemlCSTtFb0QwakJKO0lBRUksYUFBQTtJQUNBLGNBQUE7RTVHMnZoQkY7RTRHenZoQkU7SUFDRSxhQUFBO0lBQ0EsV2IzbkJzQjtFL0ZzM2lCMUI7RWdCajRpQk07STRGMm9CQSxrQkFBQTtFNUd5dmhCTjtFaUJwNGlCTTtJMkY4b0JBLG1CQUFBO0U1R3l2aEJOO0VnQnY0aUJNO0k0Rm1wQkEsbUJBQUE7RTVHdXZoQk47RWdCMTRpQk07STRGc3BCQSxrQkFBQTtFNUd1dmhCTjtFNEdudmhCRTtJQUNFLGFBQUE7RTVHcXZoQko7RTRHbHZoQkU7SUFDRSxjQUFBO0U1R292aEJKO0U0R2p2aEJFO0lBQ0Usb0JiMWUwQztJYTJlMUMsaUJBQUE7RTVHbXZoQko7RTRHaHZoQkU7Ozs7Ozs7SUFPRSxTQUFBO0lBQ0EsVUFBQTtJQUNBLFNBQUE7SUFDQSxrQkFBQTtJQUNBLFVBQUE7RTVHa3ZoQko7RTRHN3VoQkU7SUFDRSxlQUFBO0lBQ0EsU0FBQTtJQUNBLGNBQUE7RTVHK3VoQko7RWdCejZpQk07STRGOHJCRSwwQkFBQTtFNUc4dWhCUjtFaUI1NmlCTTtJMkZpc0JFLHVCQUFBO0U1Rzh1aEJSO0VnQi82aUJNO0k0RndzQkEsdUJBQUE7RTVHMHVoQk47RWlCbDdpQk07STJGMnNCQSx5QkFBQTtFNUcwdWhCTjtFZ0JyN2lCTTs7STRGbXRCRSxtQkFBQTtFNUdzdWhCUjtFaUJ6N2lCTTs7STJGc3RCRSxvQkFBQTtFNUd1dWhCUjtFNEdsdWhCRTs7SUFFRSxnQkFBQTtJQUNBLG1CQUFBO0lBQ0EsY0FBQTtFNUdvdWhCSjtFNEdsdWhCSTs7SUFDRSxZQUFBO0U1R3F1aEJOO0U0R2p1aEJFO0lBQ0UsYUFBQTtFNUdtdWhCSjtFNEcvdGhCSTtJQUNFLFl4Rzd1QlE7RUo4OGlCZDtFNEc1dGhCRTtJQUNFLGtCQUFBO0U1Rzh0aEJKO0U0RzV0aEJJO0lBQ0UsYUFBQTtFNUc4dGhCTjtFNEc1dGhCTTtJQUNFLGFBQUE7RTVHOHRoQlI7QUFDRjtBNEd4dGhCRTtFQUNFLDRCQUFBO0E1RzB0aEJKO0F3RHI1aUJJO0VvRDhyQko7SUFFSSx3QkFBQTtFNUcwdGhCRjtFNEd4dGhCSTtJQUNFLGtCQUFBO0U1RzB0aEJOO0VnQmwraUJNO0k0RjZ3QkUsMEJBQUE7RTVHd3RoQlI7RWlCcitpQk07STJGZ3hCRSx1QkFBQTtFNUd3dGhCUjtBQUNGO0F3RHY1aUJJO0VQL0NFOztJQXRDSixTQUFBO0lBSUEseUtBQUE7RWpEKytpQkE7QUFDRjtBaURuL2lCRTtFQXFDSTs7SUFwQ0YseUhBQUE7RWpEdS9pQkY7QUFDRjtBd0RsN2lCSTtFUGxDRTs7SUF0Q0osU0FBQTtJQUlBLHlLQUFBO0VqRDQvaUJBO0FBQ0Y7QWlEaGdqQkU7RUFxQ0k7O0lBcENGLHlIQUFBO0VqRG9nakJGO0FBQ0Y7QXdELzdpQkk7RVBsQ0U7O0lBdENKLFNBQUE7SUFJQSx5S0FBQTtFakR5Z2pCQTtBQUNGO0FpRDdnakJFO0VBcUNJOztJQXBDRix5SEFBQTtFakRpaGpCRjtBQUNGO0FpRDkraUJNOztFQXRDSixTQUFBO0VBSUEseUtBQUE7QWpEcWhqQkY7QWlEeGhqQkU7RUFxQ0k7O0lBcENGLHlIQUFBO0VqRDRoakJGO0FBQ0Y7QWdCNWhqQlE7O0U0Rml6QkUsY0FBQTtBNUcrdWhCVjtBaUJoaWpCUTs7RTJGb3pCRSxlQUFBO0E1R2d2aEJWO0F3RC85aUJJO0V4Q3JFSTs7STRGMHpCUSxrQnhHM3pCQTtFSjBpakJkO0VpQnppakJNOztJMkY2ekJRLG1CeEc5ekJBO0VKOGlqQmQ7RWdCN2lqQk07O0k0Rm8wQlksa0JiaDBCSDtFL0Y2aWpCZjtFaUJqampCTTs7STJGdTBCWSxtQmJuMEJIO0UvRmlqakJmO0VnQnJqakJNOztJNEZvMEJZLGtCYmgwQkg7RS9GcWpqQmY7RWlCempqQk07O0kyRnUwQlksbUJibjBCSDtFL0Z5ampCZjtFZ0I3ampCTTs7STRGbzBCWSxrQmJoMEJIO0UvRjZqakJmO0VpQmprakJNOztJMkZ1MEJZLG1CYm4wQkg7RS9GaWtqQmY7RWdCcmtqQk07OztJNEZnMUJVLGlCYnIwQlU7RS9GK2pqQjFCO0VpQjFrakJNOzs7STJGbTFCVSxrQmJ4MEJVO0UvRm9rakIxQjtBQUNGO0FnQmhsakJROztFNEY0MUJFLGVBQUE7QTVHd3ZoQlY7QWlCcGxqQlE7O0UyRisxQkUsY0FBQTtBNUd5dmhCVjtBd0RuaGpCSTtFeENyRUk7O0k0RnEyQlEsbUJ4R3QyQkE7RUo4bGpCZDtFaUI3bGpCTTs7STJGdzJCUSxrQnhHejJCQTtFSmttakJkO0VnQmptakJNOztJNEYrMkJZLG1CYjMyQkg7RS9GaW1qQmY7RWlCcm1qQk07O0kyRmszQlksa0JiOTJCSDtFL0ZxbWpCZjtFZ0J6bWpCTTs7STRGKzJCWSxtQmIzMkJIO0UvRnltakJmO0VpQjdtakJNOztJMkZrM0JZLGtCYjkyQkg7RS9GNm1qQmY7RWdCam5qQk07O0k0RisyQlksbUJiMzJCSDtFL0ZpbmpCZjtFaUJybmpCTTs7STJGazNCWSxrQmI5MkJIO0UvRnFuakJmO0VnQnpuakJNOzs7STRGMjNCVSxrQmJoM0JVO0UvRm1uakIxQjtFaUI5bmpCTTs7O0kyRjgzQlUsaUJibjNCVTtFL0Z3bmpCMUI7QUFDRjtBd0RsampCSTtFUC9DRTs7SUF0Q0osU0FBQTtJQUlBLHlLQUFBO0VqRDBvakJBO0FBQ0Y7QWlEOW9qQkU7RUFxQ0k7O0lBcENGLHlIQUFBO0VqRGtwakJGO0FBQ0Y7QXdEN2tqQkk7RVBsQ0U7O0lBdENKLFNBQUE7SUFJQSx5S0FBQTtFakR1cGpCQTtBQUNGO0FpRDNwakJFO0VBcUNJOztJQXBDRix5SEFBQTtFakQrcGpCRjtBQUNGO0F3RDFsakJJO0VQbENFOztJQXRDSixTQUFBO0lBSUEseUtBQUE7RWpEb3FqQkE7QUFDRjtBaUR4cWpCRTtFQXFDSTs7SUFwQ0YseUhBQUE7RWpENHFqQkY7QUFDRjtBd0R2bWpCSTtFUGxDRTs7SUF0Q0osU0FBQTtJQUlBLHlLQUFBO0VqRGlyakJBO0FBQ0Y7QWlEcnJqQkU7RUFxQ0k7O0lBcENGLHlIQUFBO0VqRHlyakJGO0FBQ0Y7QXdEcG5qQkk7RXhDckVJOztJNEZpekJFLGNBQUE7RTVHNjRoQlI7RWlCOXJqQk07O0kyRm96QkUsZUFBQTtFNUc4NGhCUjtBQUNGO0F3RDluakJJO0V4Q3JFSTs7STRGMHpCUSxrQnhHM3pCQTtFSnlzakJkO0VpQnhzakJNOztJMkY2ekJRLG1CeEc5ekJBO0VKNnNqQmQ7RWdCNXNqQk07O0k0Rm8wQlksa0JiaDBCSDtFL0Y0c2pCZjtFaUJodGpCTTs7STJGdTBCWSxtQmJuMEJIO0UvRmd0akJmO0VnQnB0akJNOztJNEZvMEJZLGtCYmgwQkg7RS9Gb3RqQmY7RWlCeHRqQk07O0kyRnUwQlksbUJibjBCSDtFL0Z3dGpCZjtFZ0I1dGpCTTs7STRGbzBCWSxrQmJoMEJIO0UvRjR0akJmO0VpQmh1akJNOztJMkZ1MEJZLG1CYm4wQkg7RS9GZ3VqQmY7RWdCcHVqQk07OztJNEZnMUJVLGlCYnIwQlU7RS9GOHRqQjFCO0VpQnp1akJNOzs7STJGbTFCVSxrQmJ4MEJVO0UvRm11akIxQjtBQUNGO0F3RDFxakJJO0V4Q3JFSTs7STRGNDFCRSxlQUFBO0U1R3c1aEJSO0VpQnB2akJNOztJMkYrMUJFLGNBQUE7RTVHeTVoQlI7QUFDRjtBd0RwcmpCSTtFeENyRUk7O0k0RnEyQlEsbUJ4R3QyQkE7RUordmpCZDtFaUI5dmpCTTs7STJGdzJCUSxrQnhHejJCQTtFSm13akJkO0VnQmx3akJNOztJNEYrMkJZLG1CYjMyQkg7RS9Ga3dqQmY7RWlCdHdqQk07O0kyRmszQlksa0JiOTJCSDtFL0Zzd2pCZjtFZ0Ixd2pCTTs7STRGKzJCWSxtQmIzMkJIO0UvRjB3akJmO0VpQjl3akJNOztJMkZrM0JZLGtCYjkyQkg7RS9GOHdqQmY7RWdCbHhqQk07O0k0RisyQlksbUJiMzJCSDtFL0ZreGpCZjtFaUJ0eGpCTTs7STJGazNCWSxrQmI5MkJIO0UvRnN4akJmO0VnQjF4akJNOzs7STRGMjNCVSxrQmJoM0JVO0UvRm94akIxQjtFaUIveGpCTTs7O0kyRjgzQlUsaUJibjNCVTtFL0Z5eGpCMUI7QUFDRjtBd0RudGpCSTtFUC9DRTs7SUF0Q0osU0FBQTtJQUlBLHlLQUFBO0VqRDB5akJBO0FBQ0Y7QWlEOXlqQkU7RUFxQ0k7O0lBcENGLHlIQUFBO0VqRGt6akJGO0FBQ0Y7QXdEN3VqQkk7RVBsQ0U7O0lBdENKLFNBQUE7SUFJQSx5S0FBQTtFakR1empCQTtBQUNGO0FpRDN6akJFO0VBcUNJOztJQXBDRix5SEFBQTtFakQrempCRjtBQUNGO0F3RDF2akJJO0VQbENFOztJQXRDSixTQUFBO0lBSUEseUtBQUE7RWpEbzBqQkE7QUFDRjtBaUR4MGpCRTtFQXFDSTs7SUFwQ0YseUhBQUE7RWpENDBqQkY7QUFDRjtBd0R2d2pCSTtFUGxDRTs7SUF0Q0osU0FBQTtJQUlBLHlLQUFBO0VqRGkxakJBO0FBQ0Y7QWlEcjFqQkU7RUFxQ0k7O0lBcENGLHlIQUFBO0VqRHkxakJGO0FBQ0Y7QXdEcHhqQkk7RXhDckVJOztJNEZpekJFLGNBQUE7RTVHNmlpQlI7RWlCOTFqQk07O0kyRm96QkUsZUFBQTtFNUc4aWlCUjtBQUNGO0F3RDl4akJJO0V4Q3JFSTs7STRGMHpCUSxrQnhHM3pCQTtFSnkyakJkO0VpQngyakJNOztJMkY2ekJRLG1CeEc5ekJBO0VKNjJqQmQ7RWdCNTJqQk07O0k0Rm8wQlksa0JiaDBCSDtFL0Y0MmpCZjtFaUJoM2pCTTs7STJGdTBCWSxtQmJuMEJIO0UvRmczakJmO0VnQnAzakJNOztJNEZvMEJZLGtCYmgwQkg7RS9GbzNqQmY7RWlCeDNqQk07O0kyRnUwQlksbUJibjBCSDtFL0Z3M2pCZjtFZ0I1M2pCTTs7STRGbzBCWSxrQmJoMEJIO0UvRjQzakJmO0VpQmg0akJNOztJMkZ1MEJZLG1CYm4wQkg7RS9GZzRqQmY7RWdCcDRqQk07OztJNEZnMUJVLGlCYnIwQlU7RS9GODNqQjFCO0VpQno0akJNOzs7STJGbTFCVSxrQmJ4MEJVO0UvRm00akIxQjtBQUNGO0F3RDEwakJJO0V4Q3JFSTs7STRGNDFCRSxlQUFBO0U1R3dqaUJSO0VpQnA1akJNOztJMkYrMUJFLGNBQUE7RTVHeWppQlI7QUFDRjtBd0RwMWpCSTtFeENyRUk7O0k0RnEyQlEsbUJ4R3QyQkE7RUorNWpCZDtFaUI5NWpCTTs7STJGdzJCUSxrQnhHejJCQTtFSm02akJkO0VnQmw2akJNOztJNEYrMkJZLG1CYjMyQkg7RS9GazZqQmY7RWlCdDZqQk07O0kyRmszQlksa0JiOTJCSDtFL0ZzNmpCZjtFZ0IxNmpCTTs7STRGKzJCWSxtQmIzMkJIO0UvRjA2akJmO0VpQjk2akJNOztJMkZrM0JZLGtCYjkyQkg7RS9GODZqQmY7RWdCbDdqQk07O0k0RisyQlksbUJiMzJCSDtFL0ZrN2pCZjtFaUJ0N2pCTTs7STJGazNCWSxrQmI5MkJIO0UvRnM3akJmO0VnQjE3akJNOzs7STRGMjNCVSxrQmJoM0JVO0UvRm83akIxQjtFaUIvN2pCTTs7O0kyRjgzQlUsaUJibjNCVTtFL0Z5N2pCMUI7QUFDRjtBd0RuM2pCSTtFUC9DRTs7SUF0Q0osU0FBQTtJQUlBLHlLQUFBO0VqRDA4akJBO0FBQ0Y7QWlEOThqQkU7RUFxQ0k7O0lBcENGLHlIQUFBO0VqRGs5akJGO0FBQ0Y7QXdENzRqQkk7RVBsQ0U7O0lBdENKLFNBQUE7SUFJQSx5S0FBQTtFakR1OWpCQTtBQUNGO0FpRDM5akJFO0VBcUNJOztJQXBDRix5SEFBQTtFakQrOWpCRjtBQUNGO0F3RDE1akJJO0VQbENFOztJQXRDSixTQUFBO0lBSUEseUtBQUE7RWpEbytqQkE7QUFDRjtBaUR4K2pCRTtFQXFDSTs7SUFwQ0YseUhBQUE7RWpENCtqQkY7QUFDRjtBd0R2NmpCSTtFUGxDRTs7SUF0Q0osU0FBQTtJQUlBLHlLQUFBO0VqRGkvakJBO0FBQ0Y7QWlEci9qQkU7RUFxQ0k7O0lBcENGLHlIQUFBO0VqRHkvakJGO0FBQ0Y7QXdEcDdqQkk7RXhDckVJOztJNEZpekJFLGNBQUE7RTVHNnNpQlI7RWlCOS9qQk07O0kyRm96QkUsZUFBQTtFNUc4c2lCUjtBQUNGO0F3RDk3akJJO0V4Q3JFSTs7STRGMHpCUSxrQnhHM3pCQTtFSnlna0JkO0VpQnhna0JNOztJMkY2ekJRLG1CeEc5ekJBO0VKNmdrQmQ7RWdCNWdrQk07O0k0Rm8wQlksa0JiaDBCSDtFL0Y0Z2tCZjtFaUJoaGtCTTs7STJGdTBCWSxtQmJuMEJIO0UvRmdoa0JmO0VnQnBoa0JNOztJNEZvMEJZLGtCYmgwQkg7RS9Gb2hrQmY7RWlCeGhrQk07O0kyRnUwQlksbUJibjBCSDtFL0Z3aGtCZjtFZ0I1aGtCTTs7STRGbzBCWSxrQmJoMEJIO0UvRjRoa0JmO0VpQmhpa0JNOztJMkZ1MEJZLG1CYm4wQkg7RS9GZ2lrQmY7RWdCcGlrQk07OztJNEZnMUJVLGlCYnIwQlU7RS9GOGhrQjFCO0VpQnppa0JNOzs7STJGbTFCVSxrQmJ4MEJVO0UvRm1pa0IxQjtBQUNGO0F3RDErakJJO0V4Q3JFSTs7STRGNDFCRSxlQUFBO0U1R3d0aUJSO0VpQnBqa0JNOztJMkYrMUJFLGNBQUE7RTVHeXRpQlI7QUFDRjtBd0RwL2pCSTtFeENyRUk7O0k0RnEyQlEsbUJ4R3QyQkE7RUoramtCZDtFaUI5amtCTTs7STJGdzJCUSxrQnhHejJCQTtFSm1ra0JkO0VnQmxra0JNOztJNEYrMkJZLG1CYjMyQkg7RS9Ga2trQmY7RWlCdGtrQk07O0kyRmszQlksa0JiOTJCSDtFL0Zza2tCZjtFZ0Ixa2tCTTs7STRGKzJCWSxtQmIzMkJIO0UvRjBra0JmO0VpQjlra0JNOztJMkZrM0JZLGtCYjkyQkg7RS9GOGtrQmY7RWdCbGxrQk07O0k0RisyQlksbUJiMzJCSDtFL0ZrbGtCZjtFaUJ0bGtCTTs7STJGazNCWSxrQmI5MkJIO0UvRnNsa0JmO0VnQjFsa0JNOzs7STRGMjNCVSxrQmJoM0JVO0UvRm9sa0IxQjtFaUIvbGtCTTs7O0kyRjgzQlUsaUJibjNCVTtFL0Z5bGtCMUI7QUFDRjtBd0RuaGtCSTtFUC9DRTs7SUF0Q0osU0FBQTtJQUlBLHlLQUFBO0VqRDBta0JBO0FBQ0Y7QWlEOW1rQkU7RUFxQ0k7O0lBcENGLHlIQUFBO0VqRGtua0JGO0FBQ0Y7QXdEN2lrQkk7RVBsQ0U7O0lBdENKLFNBQUE7SUFJQSx5S0FBQTtFakR1bmtCQTtBQUNGO0FpRDNua0JFO0VBcUNJOztJQXBDRix5SEFBQTtFakQrbmtCRjtBQUNGO0F3RDFqa0JJO0VQbENFOztJQXRDSixTQUFBO0lBSUEseUtBQUE7RWpEb29rQkE7QUFDRjtBaUR4b2tCRTtFQXFDSTs7SUFwQ0YseUhBQUE7RWpENG9rQkY7QUFDRjtBd0R2a2tCSTtFUGxDRTs7SUF0Q0osU0FBQTtJQUlBLHlLQUFBO0VqRGlwa0JBO0FBQ0Y7QWlEcnBrQkU7RUFxQ0k7O0lBcENGLHlIQUFBO0VqRHlwa0JGO0FBQ0Y7QXdEcGxrQkk7RXhDckVJOztJNEZpekJFLGNBQUE7RTVHNjJpQlI7RWlCOXBrQk07O0kyRm96QkUsZUFBQTtFNUc4MmlCUjtBQUNGO0F3RDlsa0JJO0V4Q3JFSTs7STRGMHpCUSxrQnhHM3pCQTtFSnlxa0JkO0VpQnhxa0JNOztJMkY2ekJRLG1CeEc5ekJBO0VKNnFrQmQ7RWdCNXFrQk07O0k0Rm8wQlksa0JiaDBCSDtFL0Y0cWtCZjtFaUJocmtCTTs7STJGdTBCWSxtQmJuMEJIO0UvRmdya0JmO0VnQnBya0JNOztJNEZvMEJZLGtCYmgwQkg7RS9Gb3JrQmY7RWlCeHJrQk07O0kyRnUwQlksbUJibjBCSDtFL0Z3cmtCZjtFZ0I1cmtCTTs7STRGbzBCWSxrQmJoMEJIO0UvRjRya0JmO0VpQmhza0JNOztJMkZ1MEJZLG1CYm4wQkg7RS9GZ3NrQmY7RWdCcHNrQk07OztJNEZnMUJVLGlCYnIwQlU7RS9GOHJrQjFCO0VpQnpza0JNOzs7STJGbTFCVSxrQmJ4MEJVO0UvRm1za0IxQjtBQUNGO0F3RDFva0JJO0V4Q3JFSTs7STRGNDFCRSxlQUFBO0U1R3czaUJSO0VpQnB0a0JNOztJMkYrMUJFLGNBQUE7RTVHeTNpQlI7QUFDRjtBd0RwcGtCSTtFeENyRUk7O0k0RnEyQlEsbUJ4R3QyQkE7RUordGtCZDtFaUI5dGtCTTs7STJGdzJCUSxrQnhHejJCQTtFSm11a0JkO0VnQmx1a0JNOztJNEYrMkJZLG1CYjMyQkg7RS9Ga3VrQmY7RWlCdHVrQk07O0kyRmszQlksa0JiOTJCSDtFL0ZzdWtCZjtFZ0IxdWtCTTs7STRGKzJCWSxtQmIzMkJIO0UvRjB1a0JmO0VpQjl1a0JNOztJMkZrM0JZLGtCYjkyQkg7RS9GOHVrQmY7RWdCbHZrQk07O0k0RisyQlksbUJiMzJCSDtFL0ZrdmtCZjtFaUJ0dmtCTTs7STJGazNCWSxrQmI5MkJIO0UvRnN2a0JmO0VnQjF2a0JNOzs7STRGMjNCVSxrQmJoM0JVO0UvRm92a0IxQjtFaUIvdmtCTTs7O0kyRjgzQlUsaUJibjNCVTtFL0Z5dmtCMUI7QUFDRjtBd0RucmtCSTtFUC9DRTs7SUF0Q0osU0FBQTtJQUlBLHlLQUFBO0VqRDB3a0JBO0FBQ0Y7QWlEOXdrQkU7RUFxQ0k7O0lBcENGLHlIQUFBO0VqRGt4a0JGO0FBQ0Y7QXdEN3NrQkk7RVBsQ0U7O0lBdENKLFNBQUE7SUFJQSx5S0FBQTtFakR1eGtCQTtBQUNGO0FpRDN4a0JFO0VBcUNJOztJQXBDRix5SEFBQTtFakQreGtCRjtBQUNGO0F3RDF0a0JJO0VQbENFOztJQXRDSixTQUFBO0lBSUEseUtBQUE7RWpEb3lrQkE7QUFDRjtBaUR4eWtCRTtFQXFDSTs7SUFwQ0YseUhBQUE7RWpENHlrQkY7QUFDRjtBd0R2dWtCSTtFUGxDRTs7SUF0Q0osU0FBQTtJQUlBLHlLQUFBO0VqRGl6a0JBO0FBQ0Y7QWlEcnprQkU7RUFxQ0k7O0lBcENGLHlIQUFBO0VqRHl6a0JGO0FBQ0Y7QXdEcHZrQkk7RXhDckVJOztJNEZpekJFLGNBQUE7RTVHNmdqQlI7RWlCOXprQk07O0kyRm96QkUsZUFBQTtFNUc4Z2pCUjtBQUNGO0F3RDl2a0JJO0V4Q3JFSTs7STRGMHpCUSxrQnhHM3pCQTtFSnkwa0JkO0VpQngwa0JNOztJMkY2ekJRLG1CeEc5ekJBO0VKNjBrQmQ7RWdCNTBrQk07O0k0Rm8wQlksa0JiaDBCSDtFL0Y0MGtCZjtFaUJoMWtCTTs7STJGdTBCWSxtQmJuMEJIO0UvRmcxa0JmO0VnQnAxa0JNOztJNEZvMEJZLGtCYmgwQkg7RS9GbzFrQmY7RWlCeDFrQk07O0kyRnUwQlksbUJibjBCSDtFL0Z3MWtCZjtFZ0I1MWtCTTs7STRGbzBCWSxrQmJoMEJIO0UvRjQxa0JmO0VpQmgya0JNOztJMkZ1MEJZLG1CYm4wQkg7RS9GZzJrQmY7RWdCcDJrQk07OztJNEZnMUJVLGlCYnIwQlU7RS9GODFrQjFCO0VpQnoya0JNOzs7STJGbTFCVSxrQmJ4MEJVO0UvRm0ya0IxQjtBQUNGO0F3RDF5a0JJO0V4Q3JFSTs7STRGNDFCRSxlQUFBO0U1R3doakJSO0VpQnAza0JNOztJMkYrMUJFLGNBQUE7RTVHeWhqQlI7QUFDRjtBd0RwemtCSTtFeENyRUk7O0k0RnEyQlEsbUJ4R3QyQkE7RUorM2tCZDtFaUI5M2tCTTs7STJGdzJCUSxrQnhHejJCQTtFSm00a0JkO0VnQmw0a0JNOztJNEYrMkJZLG1CYjMyQkg7RS9GazRrQmY7RWlCdDRrQk07O0kyRmszQlksa0JiOTJCSDtFL0ZzNGtCZjtFZ0IxNGtCTTs7STRGKzJCWSxtQmIzMkJIO0UvRjA0a0JmO0VpQjk0a0JNOztJMkZrM0JZLGtCYjkyQkg7RS9GODRrQmY7RWdCbDVrQk07O0k0RisyQlksbUJiMzJCSDtFL0ZrNWtCZjtFaUJ0NWtCTTs7STJGazNCWSxrQmI5MkJIO0UvRnM1a0JmO0VnQjE1a0JNOzs7STRGMjNCVSxrQmJoM0JVO0UvRm81a0IxQjtFaUIvNWtCTTs7O0kyRjgzQlUsaUJibjNCVTtF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RSwrQkFBQTtBNUd3eWpCUjtBNEdyeWpCTTtFQUNFLGNBQUE7QTVHdXlqQlI7QTRHcHlqQlE7RUFDRSwrQkFBQTtBNUdzeWpCVjtBNEdueWpCUTtFQUNFLGtiQUFBO0E1R3F5akJWO0E0R2h5akJFO0VBQ0Usa0JBQUE7QTVHa3lqQko7QTRHaHlqQkk7RUFDRSxvY0FBQTtBNUdreWpCTjtBNEc5eGpCRTtFQUNFLDhCQUFBO0E1R2d5akJKO0E0Rzd4akJJO0VBQ0UsV0FBQTtBNUcreGpCTjtBNEc3eGpCTTtFQUNFLGNBQUE7RUFDQSx1QkFBQTtBNUcreGpCUjtBNEc3eGpCUTtFQUNFLGNBQUE7QTVHK3hqQlY7QTRHN3hqQlU7RUFDRSwrQkFBQTtBNUcreGpCWjtBNEd4eGpCRTtFQUNFLCtCQUFBO0E1RzB4akJKO0E0R3h4akJJO0VBQ0UsV0FBQTtBNUcweGpCTjtBNEd2eGpCSTtFQUNFLCtCQUFBO0E1R3l4akJOO0E0R3B4akJJO0VBQ0Usb0NBQUE7QTVHc3hqQk47QTRHbHhqQkU7RUFDRSw4QkFBQTtBNUdveGpCSjtBNEdoeGpCRTtFQUNFLG9DQUFBO0E1R2t4akJKO0E0Ry93akJJO0VBQ0UscWJBQUE7QTVHaXhqQk47QTRHOXdqQkk7RUFFRSxVQUFBO0E1Ryt3akJOO0E0RzV3akJJO0VBQ0Usb0NBQUE7QTVHOHdqQk47QTRHN3dqQk07RUFDRSxrYkFBQTtBNUcrd2pCUjtBNEdyd2pCUTtFQUNFLG1CQUFBO0E1R3V3akJWO0E0R3J3akJVO0VBQ0UsV0FBQTtBNUd1d2pCWjtBNEdwd2pCVTtFQUNFLG1CQUFBO0E1R3N3akJaO0E0R3B3akJZO0VBQ0UsK0JBQUE7QTVHc3dqQmQ7QTRHN3ZqQlE7RUFDRSxtQkFBQTtBNUcrdmpCVjtBNEc1dmpCUTtFQUNFLG1CQUFBO0E1Rzh2akJWO0FZMXNsQlU7RWdHeXZCUixjQUFBO0VBQ0EsZ0JBQUE7RTlEbjRCTSxnREFBQTtBOUN5MWxCUjtBNEdqOWpCSTtFOUQzNEJJLGVBQUE7RUFDQSwrQ0FBQTtBOUMrMWxCUjtBaUJyMmxCUTtFNkJLQSxlQUFBO0VBQ0EsK0NBQUE7QTlDbTJsQlI7QTRHbDlqQkk7RUFDRSxTQUFBO0U5RGg1QkUsZ0RBQUE7QTlDcTJsQlI7QTRHaDlqQkU7RUFDRSxjQUFBO0E1R2s5akJKO0E0Ry84akJFO0VBQ0UsV0FBQTtFQUNBLG1CQUFBO0E1R2k5akJKO0E0Rzk4akJFO0VBQ0UsOEJBQUE7QTVHZzlqQko7QTRHNzhqQkU7RUFDRSxXQUFBO0VBQ0EsOEJBQUE7RUFDQSxTQUFBO0E1Rys4akJKO0E0Rzc4akJJO0VBQ0UsK0JBQUE7QTVHKzhqQk47QTRHaDlqQkk7RUFDRSwrQkFBQTtBNUcrOGpCTjtBNEdoOWpCSTtFQUNFLCtCQUFBO0E1Rys4akJOO0E0RzM4akJFO0VBQ0UseUJBQUE7QTVHNjhqQko7QTRHMThqQkU7RUFDRSx5QkFBQTtFQUNBLHVCQUFBO0E1RzQ4akJKO0E0R3o4akJJO0VBQ0UseUJBQUE7QTVHMjhqQk47QTRHeDhqQkk7RUFDRSx5QkFBQTtFQUNBLCtCQUFBO0E1RzA4akJOO0E0R3Y4akJNO0VBQ0UsY0FBQTtBNUd5OGpCUjtBNEdyOGpCSTtFQUNFLGFBQUE7QTVHdThqQk47QTRHcjhqQkk7RUFDRTtJQUNFLFdBQUE7SUFDQSxtQkFBQTtFNUd1OGpCTjtFNEdwOGpCTTtJQUNFLFdBQUE7RTVHczhqQlI7RTRHbjhqQk07SUFDRSxrYkFBQTtFNUdxOGpCUjtBQUNGO0E0R2o4akJJO0VBQ0UsY0FBQTtFQUNBLHVCQUFBO0E1R204akJOO0E0R2g4akJNO0VBQ0UseUJBQUE7QTVHazhqQlI7QTRHLzdqQk07RUFDRSxjQUFBO0E1R2k4akJSO0E0Rzk3akJRO0VBQ0UseUJBQUE7QTVHZzhqQlY7QTRHNzdqQlE7RUFDRSxrYkFBQTtBNUcrN2pCVjtBNEcxN2pCRTtFQUNFLGtCQUFBO0E1RzQ3akJKO0E0RzE3akJJO0VBQ0UsOGJBQUE7QTVHNDdqQk47QTRHeDdqQkU7RUFDRSwrQkFBQTtBNUcwN2pCSjtBNEd2N2pCSTtFQUNFLHlCQUFBO0E1R3k3akJOO0E0R3Y3akJNO0VBQ0UsY0FBQTtFQUNBLHVCQUFBO0E1R3k3akJSO0E0R3Y3akJRO0VBQ0UsY0FBQTtBNUd5N2pCVjtBNEd2N2pCVTtFQUNFLHlCQUFBO0E1R3k3akJaO0E0R2w3akJFO0VBQ0UseUJBQUE7QTVHbzdqQko7QTRHbDdqQkk7RUFDRSxjQUFBO0E1R283akJOO0E0R2o3akJJO0VBQ0UseUJBQUE7QTVHbTdqQk47QTRHejZqQkU7RUFDRSw4QkFBQTtBNUcyNmpCSjtBNEd2NmpCRTtFQUNFLHFDQUFBO0E1R3k2akJKO0E0R3Q2akJJO0VBQ0UscWJBQUE7QTVHdzZqQk47QTRHcjZqQkk7RUFFRSxVQUFBO0E1R3M2akJOO0E0R242akJJO0VBQ0Usb0NBQUE7QTVHcTZqQk47QTRHcDZqQk07RUFDRSxxYkFBQTtBNUdzNmpCUjtBNEc1NWpCUTtFQUNFLG1CQUFBO0E1Rzg1akJWO0E0RzU1akJVO0VBQ0UsV0FBQTtBNUc4NWpCWjtBNEczNWpCVTtFQUNFLGdCQUFBO0E1RzY1akJaO0E0RzM1akJZO0VBQ0UseUJBQUE7QTVHNjVqQmQ7QTRHcDVqQlE7RUFDRSxnQkFBQTtBNUdzNWpCVjtBNEduNWpCUTtFQUNFLG1CQUFBO0E1R3E1akJWO0FZNzJsQlU7RWdHcXdCUixnQ0FBQTtFQUNBLG1CQUFBO0U5RDM0QkksU0FBQTtBOUN3L2xCTjtBNEd4bWtCSTtFOURoNUJFLFNBQUE7QTlDMi9sQk47QWlCMy9sQlE7RTZCQUYsU0FBQTtBOUM4L2xCTjtBNEd2bWtCSTtFQUNFLFNBQUE7RTlEeDVCQSxTQUFBO0E5Q2tnbUJOO0E0R3Jta0JFO0VBQ0UsZ0NBQUE7QTVHdW1rQko7QTRHcG1rQkU7RUFFRSwrQkFBQTtBNUdxbWtCSjtBNEdsbWtCRTtFQUNFLCtCQUFBO0E1R29ta0JKO0E0R2pta0JFO0VBQ0UsV0FBQTtFQUNBLCtCQUFBO0VBQ0EsU0FBQTtBNUdtbWtCSjtBNEdqbWtCSTtFQUNFLCtCQUFBO0E1R21ta0JOO0E0R3Bta0JJO0VBQ0UsK0JBQUE7QTVHbW1rQk47QTRHcG1rQkk7RUFDRSwrQkFBQTtBNUdtbWtCTjtBNEcvbGtCRTtFQUNFLCtCQUFBO0E1R2lta0JKO0E0Rzlsa0JFO0VBQ0UsK0JBQUE7RUFDQSx1QkFBQTtBNUdnbWtCSjtBNEc3bGtCSTtFQUNFLCtCQUFBO0E1Rytsa0JOO0E0RzVsa0JJO0VBQ0UsV0FBQTtFQUNBLHFDQUFBO0E1Rzhsa0JOO0E0RzNsa0JNO0VBQ0UsV0FBQTtBNUc2bGtCUjtBNEd6bGtCSTtFQUNFLGFBQUE7QTVHMmxrQk47QTRHemxrQkk7RUFDRTtJQUNFLFdBQUE7SUFDQSxtQkFBQTtFNUcybGtCTjtFNEd4bGtCTTtJQUNFLFdBQUE7RTVHMGxrQlI7RTRHdmxrQk07SUFDRSxrYkFBQTtFNUd5bGtCUjtBQUNGO0E0R3Jsa0JJO0VBQ0UsY0FBQTtFQUNBLHVCQUFBO0E1R3Vsa0JOO0E0R3Bsa0JNO0VBQ0UsK0JBQUE7QTVHc2xrQlI7QTRHbmxrQk07RUFDRSxjQUFBO0E1R3Fsa0JSO0E0R2xsa0JRO0VBQ0UsK0JBQUE7QTVHb2xrQlY7QTRHamxrQlE7RUFDRSxrYkFBQTtBNUdtbGtCVjtBNEc5a2tCRTtFQUNFLGtCQUFBO0E1R2dsa0JKO0E0Rzlra0JJO0VBQ0Usb2NBQUE7QTVHZ2xrQk47QTRHNWtrQkU7RUFDRSw4QkFBQTtBNUc4a2tCSjtBNEcza2tCSTtFQUNFLFdBQUE7QTVHNmtrQk47QTRHM2trQk07RUFDRSxjQUFBO0VBQ0EsdUJBQUE7QTVHNmtrQlI7QTRHM2trQlE7RUFDRSxjQUFBO0E1RzZra0JWO0E0RzNra0JVO0VBQ0UsK0JBQUE7QTVHNmtrQlo7QTRHdGtrQkU7RUFDRSwrQkFBQTtBNUd3a2tCSjtBNEd0a2tCSTtFQUNFLGdDQUFBO0E1R3dra0JOO0E0R3Jra0JJO0VBQ0UsK0JBQUE7QTVHdWtrQk47QTRHbGtrQkk7RUFDRSxvQ0FBQTtBNUdva2tCTjtBNEdoa2tCRTtFQUNFLCtCQUFBO0E1R2tra0JKO0E0Rzlqa0JFO0VBQ0UscUNBQUE7QTVHZ2trQko7QTRHN2prQkk7RUFDRSxvY0FBQTtBNUcramtCTjtBNEc1amtCSTtFQUVFLFVBQUE7QTVHNmprQk47QTRHMWprQkk7RUFDRSxvQ0FBQTtBNUc0amtCTjtBNEczamtCTTtFQUNFLGtiQUFBO0E1RzZqa0JSO0E0R25qa0JRO0VBQ0UsbUJBQUE7QTVHcWprQlY7QTRHbmprQlU7RUFDRSxXQUFBO0E1R3Fqa0JaO0E0R2xqa0JVO0VBQ0UsbUJBQUE7QTVHb2prQlo7QTRHbGprQlk7RUFDRSwrQkFBQTtBNUdvamtCZDtBNEczaWtCUTtFQUNFLG1CQUFBO0E1RzZpa0JWO0E0RzFpa0JRO0VBQ0UsbUJBQUE7QTVHNGlrQlY7QTRHamlrQk07RUFDRSxtQmhHbjJCUztBWnU0bEJqQjtBNEduaWtCUTtFQUNFLCtCQUFBO0E1R3Fpa0JWO0E0R25pa0JRO0VBQ0UsbUJBQUE7QTVHcWlrQlY7QTRHcGlrQlU7RUFDRSxXdkZobkNIO0FyQnNwbUJUO0E0Rzlpa0JNO0VBQ0UsbUJoR24yQlM7QVptNWxCakI7QTRHL2lrQlE7RUFDRSwrQkFBQTtBNUdpamtCVjtBNEcvaWtCUTtFQUNFLG1CQUFBO0E1R2lqa0JWO0E0R2hqa0JVO0VBQ0UsV3ZGaG5DSDtBckJrcW1CVDtBNEcxamtCTTtFQUNFLG1CaEduMkJTO0FaKzVsQmpCO0E0RzNqa0JRO0VBQ0UsK0JBQUE7QTVHNmprQlY7QTRHM2prQlE7RUFDRSxtQkFBQTtBNUc2amtCVjtBNEc1amtCVTtFQUNFLFd2RmhuQ0g7QXJCOHFtQlQ7QTRHdGtrQk07RUFDRSxnQmhHbjJCUztBWjI2bEJqQjtBNEd2a2tCUTtFQUNFLCtCQUFBO0E1R3lra0JWO0E0R3Zra0JRO0VBQ0UsbUJBQUE7QTVHeWtrQlY7QTRHeGtrQlU7RUFDRSxXdkZobkNIO0FyQjBybUJUO0E0R2xsa0JNO0VBQ0UsbUJoR24yQlM7QVp1N2xCakI7QTRHbmxrQlE7RUFDRSwrQkFBQTtBNUdxbGtCVjtBNEdubGtCUTtFQUNFLG1CQUFBO0E1R3Fsa0JWO0E0R3Bsa0JVO0VBQ0UsV3ZGaG5DSDtBckJzc21CVDtBNEc5bGtCTTtFQUNFLG1CaEduMkJTO0FabThsQmpCO0E0Ry9sa0JRO0VBQ0UsK0JBQUE7QTVHaW1rQlY7QTRHL2xrQlE7RUFDRSxtQkFBQTtBNUdpbWtCVjtBNEdobWtCVTtFQUNFLFd2RmhuQ0g7QXJCa3RtQlQ7QTRHMW1rQk07RUFDRSxtQmhHbjJCUztBWis4bEJqQjtBNEczbWtCUTtFQUNFLCtCQUFBO0E1RzZta0JWO0E0RzNta0JRO0VBQ0UsbUJBQUE7QTVHNm1rQlY7QTRHNW1rQlU7RUFDRSxXdkZobkNIO0FyQjh0bUJUO0E0R3Rua0JNO0VBQ0UsbUJoR24yQlM7QVoyOWxCakI7QTRHdm5rQlE7RUFDRSwrQkFBQTtBNUd5bmtCVjtBNEd2bmtCUTtFQUNFLG1CQUFBO0E1R3lua0JWO0E0R3hua0JVO0VBQ0UsV3ZGaG5DSDtBckIwdW1CVDtBNEdsb2tCTTtFQUNFLG1CaEduMkJTO0FadStsQmpCO0E0R25va0JRO0VBQ0UsK0JBQUE7QTVHcW9rQlY7QTRHbm9rQlE7RUFDRSxtQkFBQTtBNUdxb2tCVjtBNEdwb2tCVTtFQUNFLFd2RmhuQ0g7QXJCc3ZtQlQ7QTRHOW9rQk07RUFDRSxtQmhHbjJCUztBWm8vbEJqQjtBNEdocGtCUTtFQUNFLCtCQUFBO0E1R2twa0JWO0E0R2hwa0JRO0VBQ0UsbUJBQUE7QTVHa3BrQlY7QTRHanBrQlU7RUFDRSxXdkZobkNIO0FyQm13bUJUO0E0RzNwa0JNO0VBQ0UsbUJoR24yQlM7QVppZ21CakI7QTRHN3BrQlE7RUFDRSwrQkFBQTtBNUcrcGtCVjtBNEc3cGtCUTtFQUNFLG1CQUFBO0E1Rytwa0JWO0E0Rzlwa0JVO0VBQ0UsV3ZGaG5DSDtBckJneG1CVDtBNEd4cWtCTTtFQUNFLG1CaEduMkJTO0FaOGdtQmpCO0E0RzFxa0JRO0VBQ0UsK0JBQUE7QTVHNHFrQlY7QTRHMXFrQlE7RUFDRSxtQkFBQTtBNUc0cWtCVjtBNEczcWtCVTtFQUNFLFd2RmhuQ0g7QXJCNnhtQlQ7QTRHcnJrQk07RUFDRSxtQmhHbjJCUztBWjJobUJqQjtBNEd2cmtCUTtFQUNFLCtCQUFBO0E1R3lya0JWO0E0R3Zya0JRO0VBQ0UsbUJBQUE7QTVHeXJrQlY7QTRHeHJrQlU7RUFDRSxXdkZobkNIO0FyQjB5bUJUO0E0R2xza0JNO0VBQ0UsbUJoR24yQlM7QVp3aW1CakI7QTRHcHNrQlE7RUFDRSwrQkFBQTtBNUdzc2tCVjtBNEdwc2tCUTtFQUNFLG1CQUFBO0E1R3Nza0JWO0E0R3Jza0JVO0VBQ0UsV3ZGaG5DSDtBckJ1em1CVDtBNEcvc2tCTTtFQUNFLG1CaEduMkJTO0FacWptQmpCO0E0R2p0a0JRO0VBQ0UsK0JBQUE7QTVHbXRrQlY7QTRHanRrQlE7RUFDRSxtQkFBQTtBNUdtdGtCVjtBNEdsdGtCVTtFQUNFLFd2RmhuQ0g7QXJCbzBtQlQ7QTRHNXRrQk07RUFDRSxtQmhHbjJCUztBWmtrbUJqQjtBNEc5dGtCUTtFQUNFLCtCQUFBO0E1R2d1a0JWO0E0Rzl0a0JRO0VBQ0UsbUJBQUE7QTVHZ3VrQlY7QTRHL3RrQlU7RUFDRSxXdkZobkNIO0FyQmkxbUJUO0E0R3p1a0JNO0VBQ0UsbUJoR24yQlM7QVora21CakI7QTRHM3VrQlE7RUFDRSwrQkFBQTtBNUc2dWtCVjtBNEczdWtCUTtFQUNFLG1CQUFBO0E1RzZ1a0JWO0E0RzV1a0JVO0VBQ0UsV3ZGaG5DSDtBckI4MW1CVDtBNEd0dmtCTTtFQUNFLG1CaEduMkJTO0FaNGxtQmpCO0E0R3h2a0JRO0VBQ0UsK0JBQUE7QTVHMHZrQlY7QTRHeHZrQlE7RUFDRSxtQkFBQTtBNUcwdmtCVjtBNEd6dmtCVTtFQUNFLFd2RmhuQ0g7QXJCMjJtQlQ7QTRHbndrQk07RUFDRSxtQmhHbjJCUztBWnltbUJqQjtBNEdyd2tCUTtFQUNFLCtCQUFBO0E1R3V3a0JWO0E0R3J3a0JRO0VBQ0UsbUJBQUE7QTVHdXdrQlY7QTRHdHdrQlU7RUFDRSxXdkZobkNIO0FyQnczbUJUO0E0R2h4a0JNO0VBQ0UsbUJoR24yQlM7QVpzbm1CakI7QTRHbHhrQlE7RUFDRSwrQkFBQTtBNUdveGtCVjtBNEdseGtCUTtFQUNFLG1CQUFBO0E1R294a0JWO0E0R254a0JVO0VBQ0UsV3ZGaG5DSDtBckJxNG1CVDtBNEc3eGtCTTtFQUNFLG1CaEduMkJTO0FabW9tQmpCO0E0Ry94a0JRO0VBQ0UsK0JBQUE7QTVHaXlrQlY7QTRHL3hrQlE7RUFDRSxtQkFBQTtBNUdpeWtCVjtB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QUFBO0FqSGcvbUJOO0FpSDUrbUJFO0VBQ0UsZ0NBQUE7QWpIOCttQko7QWlINyttQkk7RUFDRSxXQUFBO0FqSCsrbUJOO0FtQmhrbkJFO0U4Rm9GTSxXQUFBO0FqSCsrbUJSO0FZLzltQlE7RXFHL0NOLGdCQUFBO0VuRXhESSxnQ0FBQTtBOUMya25CTjtBaUgvZ25CSTs7RUFFRSwwQkFBQTtBakhpaG5CTjtBbUI1a25CRTs7O0U4RjhETSwwQkFBQTtBakhtaG5CUjtBaUhoaG5CTTs7RUFDRSwwQkFBQTtBakhtaG5CUjtBaUgvZ25CSTs7OztFQUlFLDBCQUFBO0FqSGlobkJOO0FpSDdnbkJFO0VBQ0UsMEJBQUE7QWpIK2duQko7QWlIOWduQkk7RUFDRSwwQkFBQTtBakhnaG5CTjtBbUJqbW5CRTtFOEZvRk0sMEJBQUE7QWpIZ2huQlI7QVlqK21CVTtFcUc5RVIsbUJBQUE7RW5FeERJLGdDQUFBO0E5QzRtbkJOO0FpSGhqbkJJOztFQUVFLGdDQUFBO0FqSGtqbkJOO0FtQjdtbkJFOzs7RThGOERNLCtCQUFBO0FqSG9qbkJSO0FpSGpqbkJNOztFQUNFLGdDQUFBO0FqSG9qbkJSO0FpSGhqbkJJOzs7O0VBSUUsV0FBQTtBakhram5CTjtBaUg5aW5CRTtFQUNFLGdDQUFBO0FqSGdqbkJKO0FpSC9pbkJJO0VBQ0UsV0FBQTtBakhpam5CTjtBbUJsb25CRTtFOEZvRk0sV0FBQTtBakhpam5CUjtBWTlnbkJVO0VxR2xFUixnQkFBQTtFbkV4REksZ0NBQUE7QTlDNm9uQk47QWlIamxuQkk7O0VBRUUseUJBQUE7QWpIbWxuQk47QW1COW9uQkU7OztFOEY4RE0seUJBQUE7QWpIcWxuQlI7QWlIbGxuQk07O0VBQ0UseUJBQUE7QWpIcWxuQlI7QWlIamxuQkk7Ozs7RUFJRSx5QkFBQTtBakhtbG5CTjtBaUgva25CRTtFQUNFLHlCQUFBO0FqSGlsbkJKO0FpSGhsbkJJO0VBQ0UseUJBQUE7QWpIa2xuQk47QW1CbnFuQkU7RThGb0ZNLHlCQUFBO0FqSGtsbkJSO0FZL2luQlU7RXFHbEVSLG1CQUFBO0VuRXhESSxnQkFBQTtBOUM4cW5CTjtBaUhsbm5CSTs7RUFFRSxnQ0FBQTtBakhvbm5CTjtBbUIvcW5CRTs7O0U4RjhETSwrQkFBQTtBakhzbm5CUjtBaUhubm5CTTs7RUFDRSxnQ0FBQTtBakhzbm5CUjtBaUhsbm5CSTs7OztFQUlFLFdBQUE7QWpIb25uQk47QWlIaG5uQkU7RUFDRSxnQ0FBQTtBakhrbm5CSjtBaUhqbm5CSTtFQUNFLFdBQUE7QWpIbW5uQk47QW1CcHNuQkU7RThGb0ZNLFdBQUE7QWpIbW5uQlI7QW1IcnRuQkE7RUFDRSxxQkFBQTtFQUNBLFdDSmtCO0VES2xCLFlDSmtCO0FwSDR0bkJwQjtBbUhydG5CQTtFQUNFLGtCQUFBO0VBQ0EsV0FBQTtFQUNBLFVBQUE7QW5Id3RuQkY7QW1IcnRuQkE7RUFDRSxrQkFBQTtFQUNBLGNBQUE7RUFDQSxlQUFBO0VBQ0EsZUFBQTtFQUNBLGlCQUFBO0VBQ0EsMEJBQUE7RXRGSkUsc0JBQUE7RXNGUUEsc0JBQUE7RUFDQSxxQkFBQTtBbkhzdG5CSjtBWS9pbkJRO0V1R3hLSiwyQ0FBQTtFQUNBLHVDQUFBO0FuSDB0bkJKO0FtSHZ0bkJFO0VBQ0Usa0JBQUE7RUFDQSxRQ2RvQjtFRGVwQixTQ2ZvQjtFRGdCcEIsc0JBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLFdBQUE7RUFDQSxzQjlGbENLO0U4Rm1DTCx5QkFBQTtFQUNBLDBCQUFBO0V0RnRCQSx1QkFBQTtBN0Jpdm5CSjtBbUhydG5CRTtFQUNFLDJCQUFBO0FuSHd0bkJKO0FtSHB0bkJBO0VBRUksY0FBQTtFQUNBLHNCQUFBO0VBQ0EscUJBQUE7RUFFRixVQUFBO0VBS0UsZ0Q3RmpEMEI7QXRCa3duQjlCO0FZN2tuQlE7RXVHN0lKLGdDQUFBO0VBQ0EsMkNBQUE7RUFDQSxzQ0FBQTtBbkg2dG5CSjtBbUhsdG5CQTtFQUNFLG1CQUFBO0VBQ0EsWUFBQTtBbkhxdG5CRjtBbUg5c25CQTtFRTFFRSxXREtxQjtFQ0pyQixZREtxQjtBcEh1eG5CdkI7QXFIMXhuQkU7RUFDRSxlREdtQjtBcEh5eG5CdkI7QXFIMXhuQkk7RUFDRSxXQUFBO0VBQ0EsWUFBQTtBckg0eG5CTjtBcUgxeG5CSTtFQUNFLGVESmlCO0FwSGd5bkJ2QjtBcUh2eG5CSTtFQUNFLDJCQUFBO0FySHl4bkJOO0FtSDV0bkJBO0VFOUVFLFdEU3FCO0VDUnJCLFlEU3FCO0FwSHF5bkJ2QjtBcUg1eW5CRTtFQUNFLGNET21CO0FwSHV5bkJ2QjtBcUg1eW5CSTtFQUNFLFdBQUE7RUFDQSxZQUFBO0FySDh5bkJOO0FxSDV5bkJJO0VBQ0UsY0FBQTtBckg4eW5CTjtBcUh6eW5CSTtFQUNFLDJCQUFBO0FySDJ5bkJOO0FtSHZ1bkJBO0VBQ0UsV0N6RXVCO0FwSG16bkJ6QjtBbUh2dW5CSTtFQUNFLFVBQUE7QW5IeXVuQk47QW1IdnVuQkk7RUFDRSxrQkFBQTtFQUNBLFFBQUE7RUFDQSxVQUFBO0VBQ0EsVUFBQTtFQUNBLGtCQUFBO0VBQ0EsZUMvRmM7RURnR2QsZ0JBQUE7RUFDQSxjQUFBO0VBQ0EsYzlGNUZPO0U4RjZGUCxrQkFBQTtFQUNBLHlCQUFBO0VBQ0EsNkJBQUE7RUFDQSxtQkFBQTtBbkh5dW5CTjtBZ0IvMG5CUTtFbUd5R0EsVUFBQTtBbkh5dW5CUjtBbUhudW5CSTtFQUNFLDJCQUFBO0FuSHF1bkJOO0FtSG51bkJJO0VBQ0UsU0FBQTtFQUNBLFc5RnBIRztFOEZxSEgsMkJBQUE7QW5IcXVuQk47QW1IaHVuQkU7RUU3SEEsV0RjdUI7RUNidkIsWURLcUI7QXBIMjFuQnZCO0FxSDkxbkJFO0VBQ0UsZURHbUI7QXBINjFuQnZCO0FxSDkxbkJJO0VBQ0UsV0FBQTtFQUNBLFlBQUE7QXJIZzJuQk47QXFIOTFuQkk7RUFDRSxlREppQjtBcEhvMm5CdkI7QXFIMzFuQkk7RUFDRSwyQkFBQTtBckg2MW5CTjtBbUg3dW5CRTtFRWpJQSxXRGV1QjtFQ2R2QixZRFNxQjtBcEh3Mm5CdkI7QXFILzJuQkU7RUFDRSxjRE9tQjtBcEgwMm5CdkI7QXFILzJuQkk7RUFDRSxXQUFBO0VBQ0EsWUFBQTtBckhpM25CTjtBcUgvMm5CSTtFQUNFLGNBQUE7QXJIaTNuQk47QXFINTJuQkk7RUFDRSwyQkFBQTtBckg4Mm5CTjtBbUhwdm5CRTtFQUNFLHlCOUZySVM7RThGc0lULG1CQUFBO0FuSHV2bkJKO0FtSHJ2bkJJO0VBQ0UsU0FBQTtFQUNBLFVBQUE7RUFDQSxXQ2hKYztFRGlKZCxZQ2pKYztFRGtKZCxTQUFBO0VBQ0EsbUJBQUE7RUFDQSx5Q0FBQTtBbkh1dm5CTjtBbUhsdm5CRTtFRXBJQSxXRGxCcUI7RUNtQnJCLFlEbEJxQjtBcEgyNG5CdkI7QXFIdjNuQkU7RUFDRSxXRHJCbUI7RUNzQm5CLFlEdEJtQjtBcEgrNG5CdkI7QXFIcjNuQkk7RUFDRSwyQkFBQTtBckh1M25CTjtBbUh6dm5CRTtFRXhJQSxXRGRxQjtFQ2VyQixZRGRxQjtBcEhrNW5CdkI7QXFIbDRuQkU7RUFDRSxXRGpCbUI7RUNrQm5CLFlEbEJtQjtBcEhzNW5CdkI7QXFIaDRuQkk7RUFDRSwyQkFBQTtBckhrNG5CTjtBcUh0M25CRTtFQUNFLHlCekcyTmE7RXlHMU5iLHFCQUFBO0FySHkzbkJKO0FxSHYzbkJJO0VBQ0UscUJBQUE7QXJIeTNuQk47QXFIcDRuQkU7RUFDRSx5QnpHaU9hO0Fac3FuQmpCO0FxSHYzbkJFO0VBQ0UseUJBQUE7RUFDQSxxQnpHK01hO0FaMnFuQmpCO0FxSHgzbkJJO0VBQ0UscUJ6RzRNVztBWjhxbkJqQjtBcUh4M25CSTtFQUNFLGN6R3lNVztBWmlybkJqQjtBcUhwM25CRTtFQUNFLHlCQUFBO0VBQ0EscUJ6R2lNYTtBWnNybkJqQjtBcUhyM25CSTtFQUNFLHlCekc4TFc7RXlHN0xYLHFCekc2TFc7QVowcm5CakI7QXFIcjNuQkk7RUFDRSxjekcwTFc7QVo2cm5CakI7QXFIejVuQkU7RUFDRSx5QnpHMk5hO0V5RzFOYixxQkFBQTtBckg0NW5CSjtBcUgxNW5CSTtFQUNFLHFCQUFBO0FySDQ1bkJOO0FxSHY2bkJFO0VBQ0UseUJ6R2lPYTtBWnlzbkJqQjtBcUgxNW5CRTtFQUNFLHlCQUFBO0VBQ0EscUJ6RytNYTtBWjhzbkJqQjtBcUgzNW5CSTtFQUNFLHFCekc0TVc7QVppdG5CakI7QXFIMzVuQkk7RUFDRSxjekd5TVc7QVpvdG5CakI7QXFIdjVuQkU7RUFDRSx5QkFBQTtFQUNBLHFCekdpTWE7QVp5dG5CakI7QXFIeDVuQkk7RUFDRSx5QnpHOExXO0V5RzdMWCxxQnpHNkxXO0FaNnRuQmpCO0FxSHg1bkJJO0VBQ0UsY3pHMExXO0FaZ3VuQmpCO0FxSDU3bkJFO0VBQ0UseUJ6RzJOYTtFeUcxTmIscUJBQUE7QXJIKzduQko7QXFINzduQkk7RUFDRSxxQkFBQTtBckgrN25CTjtBcUgxOG5CRTtFQUNFLHlCekdpT2E7QVo0dW5CakI7QXFINzduQkU7RUFDRSx5QkFBQTtFQUNBLHFCekcrTWE7QVppdm5CakI7QXFIOTduQkk7RUFDRSxxQnpHNE1XO0Fab3ZuQmpCO0FxSDk3bkJJO0VBQ0UsY3pHeU1XO0FadXZuQmpCO0FxSDE3bkJFO0VBQ0UseUJBQUE7RUFDQSxxQnpHaU1hO0FaNHZuQmpCO0FxSDM3bkJJO0VBQ0UseUJ6RzhMVztFeUc3TFgscUJ6RzZMVztBWmd3bkJqQjtBcUgzN25CSTtFQUNFLGN6RzBMVztBWm13bkJqQjtBcUgvOW5CRTtFQUNFLHNCekcyTmE7RXlHMU5iLHFCQUFBO0FySGsrbkJKO0FxSGgrbkJJO0VBQ0UscUJBQUE7QXJIaytuQk47QXFINytuQkU7RUFDRSxzQnpHaU9hO0FaK3duQmpCO0FxSGgrbkJFO0VBQ0UseUJBQUE7RUFDQSxrQnpHK01hO0Fab3huQmpCO0FxSGorbkJJO0VBQ0Usa0J6RzRNVztBWnV4bkJqQjtBcUhqK25CSTtFQUNFLFd6R3lNVztBWjB4bkJqQjtBcUg3OW5CRTtFQUNFLHlCQUFBO0VBQ0Esa0J6R2lNYTtBWit4bkJqQjtBcUg5OW5CSTtFQUNFLHNCekc4TFc7RXlHN0xYLGtCekc2TFc7QVpteW5CakI7QXFIOTluQkk7RUFDRSxXekcwTFc7QVpzeW5CakI7QXFIbGdvQkU7RUFDRSx5QnpHMk5hO0V5RzFOYixxQkFBQTtBckhxZ29CSjtBcUhuZ29CSTtFQUNFLHFCQUFBO0FySHFnb0JOO0FxSGhob0JFO0VBQ0UseUJ6R2lPYTtBWmt6bkJqQjtBcUhuZ29CRTtFQUNFLHlCQUFBO0VBQ0EscUJ6RytNYTtBWnV6bkJqQjtBcUhwZ29CSTtFQUNFLHFCekc0TVc7QVowem5CakI7QXFIcGdvQkk7RUFDRSxjekd5TVc7QVo2em5CakI7QXFIaGdvQkU7RUFDRSx5QkFBQTtFQUNBLHFCekdpTWE7QVprMG5CakI7QXFIamdvQkk7RUFDRSx5QnpHOExXO0V5RzdMWCxxQnpHNkxXO0FaczBuQmpCO0FxSGpnb0JJO0VBQ0UsY3pHMExXO0FaeTBuQmpCO0FxSHJpb0JFO0VBQ0UseUJ6RzJOYTtFeUcxTmIscUJBQUE7QXJId2lvQko7QXFIdGlvQkk7RUFDRSxxQkFBQTtBckh3aW9CTjtBcUhuam9CRTtFQUNFLHlCekdpT2E7QVpxMW5CakI7QXFIdGlvQkU7RUFDRSx5QkFBQTtFQUNBLHFCekcrTWE7QVowMW5CakI7QXFIdmlvQkk7RUFDRSxxQnpHNE1XO0FaNjFuQmpCO0FxSHZpb0JJO0VBQ0UsY3pHeU1XO0FaZzJuQmpCO0FxSG5pb0JFO0VBQ0UseUJBQUE7RUFDQSxxQnpHaU1hO0FacTJuQmpCO0FxSHBpb0JJO0VBQ0UseUJ6RzhMVztFeUc3TFgscUJ6RzZMVztBWnkybkJqQjtBcUhwaW9CSTtFQUNFLGN6RzBMVztBWjQybkJqQjtBcUh4a29CRTtFQUNFLHlCekcyTmE7RXlHMU5iLHFCQUFBO0FySDJrb0JKO0FxSHprb0JJO0VBQ0UscUJBQUE7QXJIMmtvQk47QXFIdGxvQkU7RUFDRSx5QnpHaU9hO0FadzNuQmpCO0FxSHprb0JFO0VBQ0UseUJBQUE7RUFDQSxxQnpHK01hO0FaNjNuQmpCO0FxSDFrb0JJO0VBQ0UscUJ6RzRNVztBWmc0bkJqQjtBcUgxa29CSTtFQUNFLGN6R3lNVztBWm00bkJqQjtBcUh0a29CRTtFQUNFLHlCQUFBO0VBQ0EscUJ6R2lNYTtBWnc0bkJqQjtBcUh2a29CSTtFQUNFLHlCekc4TFc7RXlHN0xYLHFCekc2TFc7QVo0NG5CakI7QXFIdmtvQkk7RUFDRSxjekcwTFc7QVorNG5CakI7QXFIM21vQkU7RUFDRSx5QnpHMk5hO0V5RzFOYixxQkFBQTtBckg4bW9CSjtBcUg1bW9CSTtFQUNFLHFCQUFBO0FySDhtb0JOO0FxSHpub0JFO0VBQ0UseUJ6R2lPYTtBWjI1bkJqQjtBcUg1bW9CRTtFQUNFLHlCQUFBO0VBQ0EscUJ6RytNYTtBWmc2bkJqQjtBcUg3bW9CSTtFQUNFLHFCekc0TVc7QVptNm5CakI7QXFIN21vQkk7RUFDRSxjekd5TVc7QVpzNm5CakI7QXFIem1vQkU7RUFDRSx5QkFBQTtFQUNBLHFCekdpTWE7QVoyNm5CakI7QXFIMW1vQkk7RUFDRSx5QnpHOExXO0V5RzdMWCxxQnpHNkxXO0FaKzZuQmpCO0FxSDFtb0JJO0VBQ0UsY3pHMExXO0FaazduQmpCO0FxSDlvb0JFO0VBQ0UseUJ6RzJOYTtFeUcxTmIscUJBQUE7QXJIaXBvQko7QXFIL29vQkk7RUFDRSxxQkFBQTtBckhpcG9CTjtBcUg1cG9CRTtFQUNFLHlCekdpT2E7QVo2N25CakI7QXFIOW9vQkU7RUFDRSx5QkFBQTtFQUNBLHFCekcrTWE7QVppOG5CakI7QXFIOW9vQkk7RUFDRSxxQnpHNE1XO0FabzhuQmpCO0FxSDlvb0JJO0VBQ0UsY3pHeU1XO0FadThuQmpCO0FxSDFvb0JFO0VBQ0UseUJBQUE7RUFDQSxxQnpHaU1hO0FaMjhuQmpCO0FxSDFvb0JJO0VBQ0UseUJ6RzhMVztFeUc3TFgscUJ6RzZMVztBWis4bkJqQjtBcUgxb29CSTtFQUNFLGN6RzBMVztBWms5bkJqQjtBcUg5cW9CRTtFQUNFLHlCekcyTmE7RXlHMU5iLHFCQUFBO0FySGlyb0JKO0FxSC9xb0JJO0VBQ0UscUJBQUE7QXJIaXJvQk47QXFINXJvQkU7RUFDRSx5QnpHaU9hO0FaNjluQmpCO0FxSDlxb0JFO0VBQ0UseUJBQUE7RUFDQSxxQnpHK01hO0FaaStuQmpCO0FxSDlxb0JJO0VBQ0UscUJ6RzRNVztBWm8rbkJqQjtBcUg5cW9CSTtFQUNFLGN6R3lNVztBWnUrbkJqQjtBcUgxcW9CRTtFQUNFLHlCQUFBO0VBQ0EscUJ6R2lNYTtBWjIrbkJqQjtBcUgxcW9CSTtFQUNFLHlCekc4TFc7RXlHN0xYLHFCekc2TFc7QVorK25CakI7QXFIMXFvQkk7RUFDRSxjekcwTFc7QVprL25CakI7QXFIOXNvQkU7RUFDRSx5QnpHMk5hO0V5RzFOYixxQkFBQTtBckhpdG9CSjtBcUgvc29CSTtFQUNFLHFCQUFBO0FySGl0b0JOO0FxSDV0b0JFO0VBQ0UseUJ6R2lPYTtBWjYvbkJqQjtBcUg5c29CRTtFQUNFLHlCQUFBO0VBQ0EscUJ6RytNYTtBWmlnb0JqQjtBcUg5c29CSTtFQUNFLHFCekc0TVc7QVpvZ29CakI7QXFIOXNvQkk7RUFDRSxjekd5TVc7QVp1Z29CakI7QXFIMXNvQkU7RUFDRSx5QkFBQTtFQUNBLHFCekdpTWE7QVoyZ29CakI7QXFIMXNvQkk7RUFDRSx5QnpHOExXO0V5RzdMWCxxQnpHNkxXO0FaK2dvQmpCO0FxSDFzb0JJO0VBQ0UsY3pHMExXO0Faa2hvQmpCO0FxSDl1b0JFO0VBQ0UseUJ6RzJOYTtFeUcxTmIscUJBQUE7QXJIaXZvQko7QXFIL3VvQkk7RUFDRSxxQkFBQTtBckhpdm9CTjtBcUg1dm9CRTtFQUNFLHlCekdpT2E7QVo2aG9CakI7QXFIOXVvQkU7RUFDRSx5QkFBQTtFQUNBLHFCekcrTWE7QVppaW9CakI7QXFIOXVvQkk7RUFDRSxxQnpHNE1XO0Fab2lvQmpCO0FxSDl1b0JJO0VBQ0UsY3pHeU1XO0FadWlvQmpCO0FxSDF1b0JFO0VBQ0UseUJBQUE7RUFDQSxxQnpHaU1hO0FaMmlvQmpCO0FxSDF1b0JJO0VBQ0UseUJ6RzhMVztFeUc3TFgscUJ6RzZMVztBWitpb0JqQjtBcUgxdW9CSTtFQUNFLGN6RzBMVztBWmtqb0JqQjtBcUg5d29CRTtFQUNFLHlCekcyTmE7RXlHMU5iLHFCQUFBO0FySGl4b0JKO0FxSC93b0JJO0VBQ0UscUJBQUE7QXJIaXhvQk47QXFINXhvQkU7RUFDRSx5QnpHaU9hO0FaNmpvQmpCO0FxSDl3b0JFO0VBQ0UseUJBQUE7RUFDQSxxQnpHK01hO0FaaWtvQmpCO0FxSDl3b0JJO0VBQ0UscUJ6RzRNVztBWm9rb0JqQjtBcUg5d29CSTtFQUNFLGN6R3lNVztBWnVrb0JqQjtBcUgxd29CRTtFQUNFLHlCQUFBO0VBQ0EscUJ6R2lNYTtBWjJrb0JqQjtBcUgxd29CSTtFQUNFLHlCekc4TFc7RXlHN0xYLHFCekc2TFc7QVora29CakI7QXFIMXdvQkk7RUFDRSxjekcwTFc7QVprbG9CakI7QXFIOXlvQkU7RUFDRSx5QnpHMk5hO0V5RzFOYixxQkFBQTtBckhpem9CSjtBcUgveW9CSTtFQUNFLHFCQUFBO0FySGl6b0JOO0FxSDV6b0JFO0VBQ0UseUJ6R2lPYTtBWjZsb0JqQjtBcUg5eW9CRTtFQUNFLHlCQUFBO0VBQ0EscUJ6RytNYTtBWmltb0JqQjtBcUg5eW9CSTtFQUNFLHFCekc0TVc7QVpvbW9CakI7QXFIOXlvQkk7RUFDRSxjekd5TVc7QVp1bW9CakI7QXFIMXlvQkU7RUFDRSx5QkFBQTtFQUNBLHFCekdpTWE7QVoybW9CakI7QXFIMXlvQkk7RUFDRSx5QnpHOExXO0V5RzdMWCxxQnpHNkxXO0FaK21vQmpCO0FxSDF5b0JJO0VBQ0UsY3pHMExXO0Faa25vQmpCO0FxSDkwb0JFO0VBQ0UseUJ6RzJOYTtFeUcxTmIscUJBQUE7QXJIaTFvQko7QXFILzBvQkk7RUFDRSxxQkFBQTtBckhpMW9CTjtBcUg1MW9CRTtFQUNFLHlCekdpT2E7QVo2bm9CakI7QXFIOTBvQkU7RUFDRSx5QkFBQTtFQUNBLHFCekcrTWE7QVppb29CakI7QXFIOTBvQkk7RUFDRSxxQnpHNE1XO0Fab29vQmpCO0FxSDkwb0JJO0VBQ0UsY3pHeU1XO0FadW9vQmpCO0FxSDEwb0JFO0VBQ0UseUJBQUE7RUFDQSxxQnpHaU1hO0FaMm9vQmpCO0FxSDEwb0JJO0VBQ0UseUJ6RzhMVztFeUc3TFgscUJ6RzZMVztBWitvb0JqQjtBcUgxMG9CSTtFQUNFLGN6RzBMVztBWmtwb0JqQjtBcUg5Mm9CRTtFQUNFLHlCekcyTmE7RXlHMU5iLG1CQUFBO0FySGkzb0JKO0FxSC8yb0JJO0VBQ0UsbUJBQUE7QXJIaTNvQk47QXFINTNvQkU7RUFDRSx5QnpHaU9hO0FaNnBvQmpCO0FxSDkyb0JFO0VBQ0UseUJBQUE7RUFDQSxxQnpHK01hO0FaaXFvQmpCO0FxSDkyb0JJO0VBQ0UscUJ6RzRNVztBWm9xb0JqQjtBcUg5Mm9CSTtFQUNFLGN6R3lNVztBWnVxb0JqQjtBcUgxMm9CRTtFQUNFLHlCQUFBO0VBQ0EscUJ6R2lNYTtBWjJxb0JqQjtBcUgxMm9CSTtFQUNFLHlCekc4TFc7RXlHN0xYLHFCekc2TFc7QVorcW9CakI7QXFIMTJvQkk7RUFDRSxjekcwTFc7QVprcm9CakI7QXFIOTRvQkU7RUFDRSx5QnpHMk5hO0V5RzFOYixxQkFBQTtBckhpNW9CSjtBcUgvNG9CSTtFQUNFLHFCQUFBO0FySGk1b0JOO0FxSDU1b0JFO0VBQ0UseUJ6R2lPYTtBWjZyb0JqQjtBcUg5NG9CRTtFQUNFLHlCQUFBO0VBQ0EscUJ6RytNYTtBWmlzb0JqQjtBcUg5NG9CSTtFQUNFLHFCekc0TVc7QVpvc29CakI7QXFIOTRvQkk7RUFDRSxjekd5TVc7QVp1c29CakI7QXFIMTRvQkU7RUFDRSx5QkFBQTtFQUNBLHFCekdpTWE7QVoyc29CakI7QXFIMTRvQkk7RUFDRSx5QnpHOExXO0V5RzdMWCxxQnpHNkxXO0FaK3NvQmpCO0FxSDE0b0JJO0VBQ0UsY3pHMExXO0Faa3RvQmpCO0FxSDk2b0JFO0VBQ0UseUJ6RzJOYTtFeUcxTmIscUJBQUE7QXJIaTdvQko7QXFILzZvQkk7RUFDRSxxQkFBQTtBckhpN29CTjtBcUg1N29CRTtFQUNFLHlCekdpT2E7QVo2dG9CakI7QXFIOTZvQkU7RUFDRSx5QkFBQTtFQUNBLHFCekcrTWE7QVppdW9CakI7QXFIOTZvQkk7RUFDRSxxQnpHNE1XO0Fab3VvQmpCO0FxSDk2b0JJO0VBQ0UsY3pHeU1XO0FadXVvQmpCO0FxSDE2b0JFO0VBQ0UseUJBQUE7RUFDQSxxQnpHaU1hO0FaMnVvQmpCO0FxSDE2b0JJO0VBQ0UseUJ6RzhMVztFeUc3TFgscUJ6RzZMVztBWit1b0JqQjtBcUgxNm9CSTtFQUNFLGN6RzBMVztBWmt2b0JqQjtBcUg5OG9CRTtFQUNFLHlCekcyTmE7RXlHMU5iLHFCQUFBO0FySGk5b0JKO0FxSC84b0JJO0VBQ0UscUJBQUE7QXJIaTlvQk47QXFINTlvQkU7RUFDRSx5QnpHaU9hO0FaNnZvQmpCO0FxSDk4b0JFO0VBQ0UseUJBQUE7RUFDQSxxQnpHK01hO0FaaXdvQmpCO0FxSDk4b0JJO0VBQ0UscUJ6RzRNVztBWm93b0JqQjtBcUg5OG9CSTtFQUNFLGN6R3lNVztBWnV3b0JqQjtBcUgxOG9CRTtFQUNFLHlCQUFBO0VBQ0EscUJ6R2lNYTtBWjJ3b0JqQjtBcUgxOG9CSTtFQUNFLHlCekc4TFc7RXlHN0xYLHFCekc2TFc7QVord29CakI7QXFIMThvQkk7RUFDRSxjekcwTFc7QVpreG9CakI7QXFIOStvQkU7RUFDRSx5QnpHMk5hO0V5RzFOYixxQkFBQTtBckhpL29CSjtBcUgvK29CSTtFQUNFLHFCQUFBO0FySGkvb0JOO0FxSDUvb0JFO0VBQ0UseUJ6R2lPYTtBWjZ4b0JqQjtBcUg5K29CRTtFQUNFLHlCQUFBO0VBQ0EscUJ6RytNYTtBWml5b0JqQjtBcUg5K29CSTtFQUNFLHFCekc0TVc7QVpveW9CakI7QXFIOStvQkk7RUFDRSxjekd5TVc7QVp1eW9CakI7QXFIMStvQkU7RUFDRSx5QkFBQTtFQUNBLHFCekdpTWE7QVoyeW9CakI7QXFIMStvQkk7RUFDRSx5QnpHOExXO0V5RzdMWCxxQnpHNkxXO0FaK3lvQmpCO0FxSDErb0JJO0VBQ0UsY3pHMExXO0Faa3pvQmpCO0FxSDlncEJFO0VBQ0UseUJ6RzJOYTtFeUcxTmIscUJBQUE7QXJIaWhwQko7QXFIL2dwQkk7RUFDRSxxQkFBQTtBckhpaHBCTjtBcUg1aHBCRTtFQUNFLHlCekdpT2E7QVo2em9CakI7QXFIOWdwQkU7RUFDRSx5QkFBQTtFQUNBLHFCekcrTWE7QVppMG9CakI7QXFIOWdwQkk7RUFDRSxxQnpHNE1XO0FabzBvQmpCO0FxSDlncEJJO0VBQ0UsY3pHeU1XO0FadTBvQmpCO0FxSDFncEJFO0VBQ0UseUJBQUE7RUFDQSxxQnpHaU1hO0FaMjBvQmpCO0FxSDFncEJJO0VBQ0UseUJ6RzhMVztFeUc3TFgscUJ6RzZMVztBWiswb0JqQjtBcUgxZ3BCSTtFQUNFLGN6RzBMVztBWmsxb0JqQjtBcUg5aXBCRTtFQUNFLHlCekcyTmE7RXlHMU5iLHFCQUFBO0FySGlqcEJKO0FxSC9pcEJJO0VBQ0UscUJBQUE7QXJIaWpwQk47QXFINWpwQkU7RUFDRSx5QnpHaU9hO0FaNjFvQmpCO0FxSDlpcEJFO0VBQ0UseUJBQUE7RUFDQSxxQnpHK01hO0FaaTJvQmpCO0FxSDlpcEJJO0VBQ0UscUJ6RzRNVztBWm8yb0JqQjtBcUg5aXBCSTtFQUNFLGN6R3lNVztBWnUyb0JqQjtBcUgxaXBCRTtFQUNFLHlCQUFBO0VBQ0EscUJ6R2lNYTtBWjIyb0JqQjtBcUgxaXBCSTtFQUNFLHlCekc4TFc7RXlHN0xYLHFCekc2TFc7QVorMm9CakI7QXFIMWlwQkk7RUFDRSxjekcwTFc7QVprM29CakI7QXFIOWtwQkU7RUFDRSx5QnpHMk5hO0V5RzFOYixxQkFBQTtBckhpbHBCSjtBcUgva3BCSTtFQUNFLHFCQUFBO0FySGlscEJOO0FxSDVscEJFO0VBQ0UseUJ6R2lPYTtBWjYzb0JqQjtBcUg5a3BCRTtFQUNFLHlCQUFBO0VBQ0EscUJ6RytNYTtBWmk0b0JqQjtBcUg5a3BCSTtFQUNFLHFCekc0TVc7QVpvNG9CakI7QXFIOWtwQkk7RUFDRSxjekd5TVc7QVp1NG9CakI7QXFIMWtwQkU7RUFDRSx5QkFBQTtFQUNBLHFCekdpTWE7QVoyNG9CakI7QXFIMWtwQkk7RUFDRSx5QnpHOExXO0V5RzdMWCxxQnpHNkxXO0FaKzRvQmpCO0FxSDFrcEJJO0VBQ0UsY3pHMExXO0FaazVvQmpCO0FxSDltcEJFO0VBQ0UseUJ6RzJOYTtFeUcxTmIscUJBQUE7QXJIaW5wQko7QXFIL21wQkk7RUFDRSxxQkFBQTtBckhpbnBCTjtBcUg1bnBCRTtFQUNFLHlCekdpT2E7QVo2NW9CakI7QXFIOW1wQkU7RUFDRSx5QkFBQTtFQUNBLHFCekcrTWE7QVppNm9CakI7QXFIOW1wQkk7RUFDRSxxQnpHNE1XO0FabzZvQmpCO0FxSDltcEJJO0VBQ0UsY3pHeU1XO0FadTZvQmpCO0FxSDFtcEJFO0VBQ0UseUJBQUE7RUFDQSxxQnpHaU1hO0FaMjZvQmpCO0FxSDFtcEJJO0VBQ0UseUJ6RzhMVztFeUc3TFgscUJ6RzZMVztBWis2b0JqQjtBcUgxbXBCSTtFQUNFLGN6RzBMVztBWms3b0JqQjtBbUgzL29CRTtFQUNFLG1CQUFBO0FuSDgvb0JKO0FtSDUvb0JJO0VBQ0UsbUJBQUE7QW5IOC9vQk47QW1IeC9vQkU7RUFDRSxnQkFBQTtBbkgyL29CSjtBbUh6L29CSTtFQUNFLGdCQUFBO0FuSDIvb0JOO0FzSHRzcEJBO0VBQ0UsV0FBQTtFQUNBLG1CcEJFUTtFb0JDTixjQUFBO0F0SHVzcEJKO0FZOWdwQlE7RTBHekxKLGNBQUE7QXRIMHNwQko7QVlqaHBCUTtFMEd6TEosZ0NBQUE7RUFDQSw2QkFBQTtBdEg4c3BCSjtBc0gzc3BCRTs7RUFFRSxnQmxHWHNCO0VrR1l0QixtQkFBQTtFQUNBLHFCQUFBO0VBR0UseUJBQUE7QXRINHNwQk47QVk5aHBCUTs7RTBHOUtGLHlCQUFBO0F0SGd0cEJOO0FZbGlwQlE7O0UwRzlLRiwwQ0FBQTtBdEhxdHBCTjtBc0hqdHBCRTtFQUNFLHNCQUFBO0VBQ0Esd0JBQUE7RUFHRSw0QkFBQTtBdEhrdHBCTjtBWTdpcEJRO0UwR3JLRiw0QkFBQTtBdEhxdHBCTjtBWWhqcEJRO0UwR3JLRiw2Q0FBQTtBdEh5dHBCTjtBc0hydHBCRTtFQUNFLHFCQUFBO0VBR0UseUJBQUE7QXRIc3RwQk47QVl6anBCUTtFMEc3SkYseUJBQUE7QXRIeXRwQk47QVk1anBCUTtFMEc3SkYsMENBQUE7QXRINnRwQk47QXNIbHRwQkU7O0VBRUUsZWxHN0NzQjtBcEJrd3BCMUI7QXNINXNwQkE7RUFDRSxpQkFBQTtFQUdFLHFCQUFBO0F0SDZzcEJKO0FZMWtwQlE7RTBHbklKLHFCQUFBO0F0SGd0cEJKO0FZN2twQlE7RTBHbklKLHNDQUFBO0F0SG90cEJKO0FzSGp0cEJFOztFQUVFLGlCQUFBO0VBR0UscUJBQUE7QXRIa3RwQk47QVl2bHBCUTs7RTBHM0hGLHFCQUFBO0F0SHN0cEJOO0FZM2xwQlE7O0UwRzNIRixzQ0FBQTtBdEgydHBCTjtBc0h0dHBCSTs7RUFFRSx3QkFBQTtBdEh5dHBCTjtBc0hudHBCRTs7OztFQUlFLFNBQUE7QXRIc3RwQko7QXNIN3NwQkU7RUFHSSxzQ0FBQTtBdEg4c3BCTjtBWWhucEJRO0UwRzlGRixxQ0FBQTtBdEhpdHBCTjtBWW5ucEJRO0UwRzlGRixzQ0FBQTtBdEhxdHBCTjtBbUI3eXBCRTtFQUNFO0ltR3FHSSxjQUFBO0lBQ0EsdUNBQUE7RXRINHNwQk47RVk3bnBCTTtJMEdoRkEsY0FBQTtJQUNBLHNDQUFBO0V0SGd0cEJOOztFWWpvcEJNO0kwR2hGQSxnQ0FBQTtJQUNBLDBDQUFBO0V0SHF0cEJOO0FBQ0Y7QXVIbjBwQkk7OztFQUlJLGNBQUE7RUFFRix5QkRvSGdDO0F0SGd0cEJ0QztBdUhoMHBCTTs7OztFQUlFLHFCRDRHMkU7QXRIc3RwQm5GO0FtQjEwcEJFO0VBQ0U7SW9HbUJJLHlCQUplO0V2SCt6cEJyQjtFdUh6enBCTTs7SUFFRSx5QkFSYTtFdkhtMHBCckI7QUFDRjtBdUgxMXBCSTs7O0VBSUksY0FBQTtFQUVGLHlCRG9IZ0M7QXRIdXVwQnRDO0F1SHYxcEJNOzs7O0VBSUUscUJENEcyRTtBdEg2dXBCbkY7QW1CajJwQkU7RUFDRTtJb0dtQkkseUJBSmU7RXZIczFwQnJCO0V1SGgxcEJNOztJQUVFLHlCQVJhO0V2SDAxcEJyQjtBQUNGO0F1SGozcEJJOzs7RUFJSSxjQUFBO0VBRUYseUJEb0hnQztBdEg4dnBCdEM7QXVIOTJwQk07Ozs7RUFJRSxxQkQ0RzJFO0F0SG93cEJuRjtBbUJ4M3BCRTtFQUNFO0lvR21CSSx5QkFKZTtFdkg2MnBCckI7RXVIdjJwQk07O0lBRUUseUJBUmE7RXZIaTNwQnJCO0FBQ0Y7QXVIeDRwQkk7OztFQUlJLGNBQUE7RUFFRix5QkRvSGdDO0F0SHF4cEJ0QztBdUhyNHBCTTs7OztFQUlFLHFCRDRHMkU7QXRIMnhwQm5GO0FtQi80cEJFO0VBQ0U7SW9HbUJJLHlCQUplO0V2SG80cEJyQjtFdUg5M3BCTTs7SUFFRSx5QkFSYTtFdkh3NHBCckI7QUFDRjtBdUgvNXBCSTs7O0VBSUksY0FBQTtFQUVGLHlCRG9IZ0M7QXRINHlwQnRDO0F1SDU1cEJNOzs7O0VBSUUscUJENEcyRTtBdEhrenBCbkY7QW1CdDZwQkU7RUFDRTtJb0dtQkkseUJBSmU7RXZIMjVwQnJCO0V1SHI1cEJNOztJQUVFLHlCQVJhO0V2SCs1cEJyQjtBQUNGO0F1SHQ3cEJJOzs7RUFJSSxjQUFBO0VBRUYseUJEb0hnQztBdEhtMHBCdEM7QXVIbjdwQk07Ozs7RUFJRSxxQkQ0RzJFO0F0SHkwcEJuRjtBbUI3N3BCRTtFQUNFO0lvR21CSSx5QkFKZTtFdkhrN3BCckI7RXVINTZwQk07O0lBRUUseUJBUmE7RXZIczdwQnJCO0FBQ0Y7QXVINzhwQkk7OztFQUlJLGNBQUE7RUFFRix5QkRvSGdDO0F0SDAxcEJ0QztBdUgxOHBCTTs7OztFQUlFLHFCRDRHMkU7QXRIZzJwQm5GO0FtQnA5cEJFO0VBQ0U7SW9HbUJJLHlCQUplO0V2SHk4cEJyQjtFdUhuOHBCTTs7SUFFRSx5QkFSYTtFdkg2OHBCckI7QUFDRjtBdUhwK3BCSTs7O0VBSUksY0FBQTtFQUVGLHlCRG9IZ0M7QXRIaTNwQnRDO0F1SGorcEJNOzs7O0VBSUUscUJENEcyRTtBdEh1M3BCbkY7QW1CMytwQkU7RUFDRTtJb0dtQkkseUJBSmU7RXZIZytwQnJCO0V1SDE5cEJNOztJQUVFLHlCQVJhO0V2SG8rcEJyQjtBQUNGO0F1SDMvcEJJOzs7RUFJSSxjQUFBO0VBRUYseUJEb0hnQztBdEh3NHBCdEM7QXVIeC9wQk07Ozs7RUFJRSxxQkQ0RzJFO0F0SDg0cEJuRjtBbUJsZ3FCRTtFQUNFO0lvR21CSSx5QkFKZTtFdkhzL3BCckI7RXVIaC9wQk07O0lBRUUseUJBUmE7RXZIMC9wQnJCO0FBQ0Y7QXVIamhxQkk7OztFQUlJLGNBQUE7RUFFRix5QkRvSGdDO0F0SDg1cEJ0QztBdUg5Z3FCTTs7OztFQUlFLHFCRDRHMkU7QXRIbzZwQm5GO0FtQnhocUJFO0VBQ0U7SW9HbUJJLHlCQUplO0V2SDRncUJyQjtFdUh0Z3FCTTs7SUFFRSx5QkFSYTtFdkhnaHFCckI7QUFDRjtBdUh2aXFCSTs7O0VBSUksY0FBQTtFQUVGLHlCRG9IZ0M7QXRIbzdwQnRDO0F1SHBpcUJNOzs7O0VBSUUscUJENEcyRTtBdEgwN3BCbkY7QW1COWlxQkU7RUFDRTtJb0dtQkkseUJBSmU7RXZIa2lxQnJCO0V1SDVocUJNOztJQUVFLHlCQVJhO0V2SHNpcUJyQjtBQUNGO0F1SDdqcUJJOzs7RUFJSSxjQUFBO0VBRUYseUJEb0hnQztBdEgwOHBCdEM7QXVIMWpxQk07Ozs7RUFJRSxxQkQ0RzJFO0F0SGc5cEJuRjtBbUJwa3FCRTtFQUNFO0lvR21CSSx5QkFKZTtFdkh3anFCckI7RXVIbGpxQk07O0lBRUUseUJBUmE7RXZINGpxQnJCO0FBQ0Y7QXVIbmxxQkk7OztFQUlJLGNBQUE7RUFFRix5QkRvSGdDO0F0SGcrcEJ0QztBdUhobHFCTTs7OztFQUlFLHFCRDRHMkU7QXRIcytwQm5GO0FtQjFscUJFO0VBQ0U7SW9HbUJJLHlCQUplO0V2SDhrcUJyQjtFdUh4a3FCTTs7SUFFRSx5QkFSYTtFdkhrbHFCckI7QUFDRjtBdUh6bXFCSTs7O0VBSUksY0FBQTtFQUVGLHlCRG9IZ0M7QXRIcy9wQnRDO0F1SHRtcUJNOzs7O0VBSUUscUJENEcyRTtBdEg0L3BCbkY7QW1CaG5xQkU7RUFDRTtJb0dtQkkseUJBSmU7RXZIb21xQnJCO0V1SDlscUJNOztJQUVFLHlCQVJhO0V2SHdtcUJyQjtBQUNGO0F1SC9ucUJJOzs7RUFJSSxjQUFBO0VBRUYseUJEb0hnQztBdEg0Z3FCdEM7QXVINW5xQk07Ozs7RUFJRSxxQkQ0RzJFO0F0SGtocUJuRjtBbUJ0b3FCRTtFQUNFO0lvR21CSSx5QkFKZTtFdkgwbnFCckI7RXVIcG5xQk07O0lBRUUseUJBUmE7RXZIOG5xQnJCO0FBQ0Y7QXVIcnBxQkk7OztFQUlJLGNBQUE7RUFFRix5QkRvSGdDO0F0SGtpcUJ0QztBdUhscHFCTTs7OztFQUlFLHFCRDRHMkU7QXRId2lxQm5GO0FtQjVwcUJFO0VBQ0U7SW9HbUJJLHlCQUplO0V2SGdwcUJyQjtFdUgxb3FCTTs7SUFFRSx5QkFSYTtFdkhvcHFCckI7QUFDRjtBdUgzcXFCSTs7O0VBSUksY0FBQTtFQUVGLHlCRG9IZ0M7QXRId2pxQnRDO0F1SHhxcUJNOzs7O0VBSUUscUJENEcyRTtBdEg4anFCbkY7QW1CbHJxQkU7RUFDRTtJb0dtQkkseUJBSmU7RXZIc3FxQnJCO0V1SGhxcUJNOztJQUVFLHlCQVJhO0V2SDBxcUJyQjtBQUNGO0F1SGpzcUJJOzs7RUFJSSxjQUFBO0VBRUYseUJEb0hnQztBdEg4a3FCdEM7QXVIOXJxQk07Ozs7RUFJRSxxQkQ0RzJFO0F0SG9scUJuRjtBbUJ4c3FCRTtFQUNFO0lvR21CSSx5QkFKZTtFdkg0cnFCckI7RXVIdHJxQk07O0lBRUUseUJBUmE7RXZIZ3NxQnJCO0FBQ0Y7QXVIdnRxQkk7OztFQUlJLGNBQUE7RUFFRix5QkRvSGdDO0F0SG9tcUJ0QztBdUhwdHFCTTs7OztFQUlFLHFCRDRHMkU7QXRIMG1xQm5GO0FtQjl0cUJFO0VBQ0U7SW9HbUJJLHlCQUplO0V2SGt0cUJyQjtFdUg1c3FCTTs7SUFFRSx5QkFSYTtFdkhzdHFCckI7QUFDRjtBdUg3dXFCSTs7O0VBSUksY0FBQTtFQUVGLHlCRG9IZ0M7QXRIMG5xQnRDO0F1SDF1cUJNOzs7O0VBSUUscUJENEcyRTtBdEhnb3FCbkY7QW1CcHZxQkU7RUFDRTtJb0dtQkkseUJBSmU7RXZId3VxQnJCO0V1SGx1cUJNOztJQUVFLHlCQVJhO0V2SDR1cUJyQjtBQUNGO0F1SG53cUJJOzs7RUFJSSxjQUFBO0VBRUYseUJEb0hnQztBdEhncHFCdEM7QXVIaHdxQk07Ozs7RUFJRSxxQkQ0RzJFO0F0SHNwcUJuRjtBbUIxd3FCRTtFQUNFO0lvR21CSSx5QkFKZTtFdkg4dnFCckI7RXVIeHZxQk07O0lBRUUseUJBUmE7RXZIa3dxQnJCO0FBQ0Y7QXVIenhxQkk7OztFQUlJLGNBQUE7RUFFRix5QkRvSGdDO0F0SHNxcUJ0QztBdUh0eHFCTTs7OztFQUlFLHFCRDRHMkU7QXRINHFxQm5GO0FtQmh5cUJFO0VBQ0U7SW9HbUJJLHlCQUplO0V2SG94cUJyQjtFdUg5d3FCTTs7SUFFRSx5QkFSYTtFdkh3eHFCckI7QUFDRjtBdUgveXFCSTs7O0VBSUksY0FBQTtFQUVGLHlCRG9IZ0M7QXRINHJxQnRDO0F1SDV5cUJNOzs7O0VBSUUscUJENEcyRTtBdEhrc3FCbkY7QW1CdHpxQkU7RUFDRTtJb0dtQkkseUJBSmU7RXZIMHlxQnJCO0V1SHB5cUJNOztJQUVFLHlCQVJhO0V2SDh5cUJyQjtBQUNGO0F1SHIwcUJJOzs7RUFJSSxjQUFBO0VBRUYseUJEb0hnQztBdEhrdHFCdEM7QXVIbDBxQk07Ozs7RUFJRSxxQkQ0RzJFO0F0SHd0cUJuRjtBbUI1MHFCRTtFQUNFO0lvR21CSSx5QkFKZTtFdkhnMHFCckI7RXVIMXpxQk07O0lBRUUseUJBUmE7RXZIbzBxQnJCO0FBQ0Y7QXVIMzFxQkk7OztFQUlJLGNBQUE7RUFFRix5QkR3SCtCO0F0SG91cUJyQztBbUI1MXFCRTtFQUNFO0lvR21CSSx5QkFKZTtFdkhpMXFCckI7RXVIMzBxQk07O0lBRUUseUJBUmE7RXZIcTFxQnJCO0FBQ0Y7QXVINTJxQkk7OztFQUlJLGNBQUE7RUFFRix5QkR5SGlDO0F0SG92cUJ2QztBdUh6MnFCTTs7OztFQUlFLHFCRGlIb0U7QXRIMHZxQjVFO0FtQm4zcUJFO0VBQ0U7SW9HbUJJLHlCQUplO0V2SHcycUJyQjtFdUhsMnFCTTs7SUFFRSx5QkFSYTtFdkg0MnFCckI7QUFDRjtBdUhuNHFCSTs7O0VBSUksY0FBQTtFQUVGLHlCRHdIK0I7QXRINHdxQnJDO0FtQnA0cUJFO0VBQ0U7SW9HbUJJLHlCQUplO0V2SHczcUJyQjtFdUhsM3FCTTs7SUFFRSx5QkFSYTtFdkg0M3FCckI7QUFDRjtBdUhuNXFCSTs7O0VBSUksY0FBQTtFQUVGLHlCRHlIaUM7QXRIMHhxQnZDO0F1SC80cUJNOzs7O0VBSUUscUJEaUhvRTtBdEhneXFCNUU7QW1CejVxQkU7RUFDRTtJb0dtQkkseUJBSmU7RXZINjRxQnJCO0V1SHY0cUJNOztJQUVFLHlCQVJhO0V2SGk1cUJyQjtBQUNGO0F1SHg2cUJJOzs7RUFJ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QUFBO0VBQ0EseUI5R3dRZTtFOEd2UWYscUJBQUE7QTFIMjByQkY7QTBIejByQkU7RUFDRSxjQUFBO0VBQ0EseUJBQUE7RUFDQSxxQkFBQTtBMUgyMHJCSjtBd0hsdHJCRTtFRWhJQSxXQUFBO0VBQ0EseUI5R3dRZTtFOEd2UWYscUJBQUE7QTFIczFyQkY7QTBIcDFyQkU7RUFDRSxXQUFBO0VBQ0EseUJBQUE7RUFDQSxxQkFBQTtBMUhzMXJCSjtBd0g3dHJCRTtFRWhJQSxXQUFBO0VBQ0EseUI5R3dRZTtFOEd2UWYscUJBQUE7QTFIaTJyQkY7QTBILzFyQkU7RUFDRSxXQUFBO0VBQ0EseUJBQUE7RUFDQSxxQkFBQTtBMUhpMnJCSjtBd0h4dXJCRTtFRWhJQSxXQUFBO0VBQ0EseUI5R3dRZTtFOEd2UWYscUJBQUE7QTFINDJyQkY7QTBIMTJyQkU7RUFDRSxXQUFBO0VBQ0EseUJBQUE7RUFDQSxxQkFBQTtBMUg0MnJCSjtBd0hudnJCRTtFRWhJQSxXQUFBO0VBQ0EseUI5R3dRZTtFOEd2UWYscUJBQUE7QTFIdTNyQkY7QTBIcjNyQkU7RUFDRSxXQUFBO0VBQ0EseUJBQUE7RUFDQSxxQkFBQTtBMUh1M3JCSjtBd0g5dnJCRTtFRWhJQSxXQUFBO0VBQ0EseUI5R3dRZTtFOEd2UWYscUJBQUE7QTFIazRyQkY7QTBIaDRyQkU7RUFDRSxXQUFBO0VBQ0EseUJBQUE7RUFDQSxxQkFBQTtBMUhrNHJCSjtBd0h6d3JCRTtFRWhJQSxjQUFBO0VBQ0EseUI5R3dRZTtFOEd2UWYscUJBQUE7QTFINjRyQkY7QTBIMzRyQkU7RUFDRSxjQUFBO0VBQ0EseUJBQUE7RUFDQSxxQkFBQTtBMUg2NHJCSjtBd0hweHJCRTtFRWhJQSxXQUFBO0VBQ0EseUI5R3dRZTtFOEd2UWYscUJBQUE7QTFIdzVyQkY7QTBIdDVyQkU7RUFDRSxXQUFBO0VBQ0EseUJBQUE7RUFDQSxxQkFBQTtBMUh3NXJCSjtBd0gveHJCRTtFRWhJQSxXQUFBO0VBQ0EseUI5R3dRZTtFOEd2UWYscUJBQUE7QTFIbTZyQkY7QTBIajZyQkU7RUFDRSxXQUFBO0VBQ0EseUJBQUE7RUFDQSxxQkFBQTtBMUhtNnJCSjtBd0gxeXJCRTtFRWhJQSxXQUFBO0VBQ0EseUI5R3dRZTtFOEd2UWYsbUJBQUE7QTFIODZyQkY7QTBINTZyQkU7RUFDRSxXQUFBO0VBQ0EseUJBQUE7RUFDQSxtQkFBQTtBMUg4NnJCSjtBd0hyenJCRTtFRWhJQSxXQUFBO0VBQ0EseUI5R3dRZTtFOEd2UWYscUJBQUE7QTFIeTdyQkY7QTBIdjdyQkU7RUFDRSxXQUFBO0VBQ0EseUJBQUE7RUFDQSxxQkFBQTtBMUh5N3JCSjtBd0hoMHJCRTtFRWhJQSxjQUFBO0VBQ0EseUI5R3dRZTtFOEd2UWYscUJBQUE7QTFIbzhyQkY7QTBIbDhyQkU7RUFDRSxjQUFBO0VBQ0EseUJBQUE7RUFDQSxxQkFBQTtBMUhvOHJCSjtBd0gzMHJCRTtFRWhJQSxXQUFBO0VBQ0EseUI5R3dRZTtFOEd2UWYscUJBQUE7QTFIKzhyQkY7QTBINzhyQkU7RUFDRSxXQUFBO0VBQ0EseUJBQUE7RUFDQSxxQkFBQTtBMUgrOHJCSjtBd0h0MXJCRTtFRWhJQSxjQUFBO0VBQ0EseUI5R3dRZTtFOEd2UWYscUJBQUE7QTFIMDlyQkY7QTBIeDlyQkU7RUFDRSxjQUFBO0VBQ0EseUJBQUE7RUFDQSxxQkFBQTtBMUgwOXJCSjtBd0hqMnJCRTtFRWhJQSxjQUFBO0VBQ0EseUI5R3dRZTtFOEd2UWYscUJBQUE7QTFIcStyQkY7QTBIbityQkU7RUFDRSxjQUFBO0VBQ0EseUJBQUE7RUFDQSxxQkFBQTtBMUhxK3JCSjtBd0g1MnJCRTtFRWhJQSxXQUFBO0VBQ0EseUI5R3dRZTtFOEd2UWYscUJBQUE7QTFIZy9yQkY7QTBIOStyQkU7RUFDRSxXQUFBO0VBQ0EseUJBQUE7RUFDQSxxQkFBQTtBMUhnL3JCSjtBd0h2M3JCRTtFRWhJQSxjQUFBO0VBQ0EseUI5R3dRZTtFOEd2UWYscUJBQUE7QTFIMi9yQkY7QTBIei9yQkU7RUFDRSxjQUFBO0VBQ0EseUJBQUE7RUFDQSxxQkFBQTtBMUgyL3JCSjtBd0hsNHJCRTtFRWhJQSxXQUFBO0VBQ0EseUI5R3dRZTtFOEd2UWYscUJBQUE7QTFIc2dzQkY7QTBIcGdzQkU7RUFDRSxXQUFBO0VBQ0EseUJBQUE7RUFDQSxxQkFBQTtBMUhzZ3NCSjtBMkg3Z3NCQTtFQUNFLGtCQUFBO0VBQ0EsYWpHU3VCO0VpR1J2QixjQUFBO0VBQ0EsUzNGS3VCO0VKVHZCLGtNZEl3QjtFY0Z4QixrQkFBQTtFQUNBLGdCZFlxQjtFY1hyQixnQmRnQmtCO0VjZmxCLGdCQUFBO0VBQ0EsaUJBQUE7RUFDQSxxQkFBQTtFQUNBLGlCQUFBO0VBQ0Esb0JBQUE7RUFDQSxzQkFBQTtFQUNBLGtCQUFBO0VBQ0Esb0JBQUE7RUFDQSxtQkFBQTtFQUNBLGdCQUFBO0ViZ0hJLHNCQXRDYTtFNEc5RWpCLHFCQUFBO0VBQ0EsVUFBQTtBM0gwaHNCRjtBMkh4aHNCRTtFQUFTLFkzRlBjO0FoQ2tpc0J6QjtBMkh6aHNCRTtFQUNFLGtCQUFBO0VBQ0EsY0FBQTtBM0gyaHNCSjtBMkh6aHNCSTtFQUNFLGtCQUFBO0VBQ0EsV0FBQTtFQUNBLHlCQUFBO0VBQ0EsbUJBQUE7QTNIMmhzQk47QTJIdGhzQkE7O0VBRUUsaUJBQUE7QTNIeWhzQkY7QTJIdmhzQkU7O0VBQ0UsYTNGdEJxQjtFMkZ1QnJCLGMzRnRCcUI7QWhDZ2pzQnpCO0EySHRoc0JBOztFQUVFLGlCQUFBO0EzSHloc0JGO0EySHZoc0JFOztFQUNFLGEzRi9CcUI7RTJGZ0NyQixjM0ZqQ3FCO0FoQzJqc0J6QjtBMkhyaHNCRTtFQUNFLFNBQUE7QTNId2hzQko7QTJIdGhzQkk7RUFDRSxNQUFBO0VBQ0EsNkJBQUE7RUFDQSx5QnRHbkRHO0FyQjJrc0JUO0EySGxoc0JFO0VBQ0UsT0FBQTtBM0hxaHNCSjtBMkhuaHNCSTtFQUNFLFFBQUE7RUFDQSxvQ0FBQTtFQUNBLDJCdEcvREc7QXJCb2xzQlQ7QTJIL2dzQkU7RUFDRSxNQUFBO0EzSGtoc0JKO0EySGhoc0JJO0VBQ0UsU0FBQTtFQUNBLDZCQUFBO0VBQ0EsNEJ0RzNFRztBckI2bHNCVDtBMkg1Z3NCRTtFQUNFLFFBQUE7QTNIK2dzQko7QTJIN2dzQkk7RUFDRSxPQUFBO0VBQ0Esb0NBQUE7RUFDQSwwQnRHdkZHO0FyQnNtc0JUO0EySHovckJBO0VBQ0UsZ0IzRmhIdUI7RTJGaUh2Qix1QkFBQTtFQUNBLFd0R2pITztFc0drSFAsa0JBQUE7RUFDQSx5QnRHbEhPO0VRYUwsc0JBQUE7QTdCa21zQko7QTRIcG5zQkE7RW5GZ0JNLGdDbUZmSjtBNUh1bnNCRjtBeUNwbXNCTTtFbUZwQk47SW5GcUJRLGdCQUFBO0V6Q3Vtc0JOO0FBQ0Y7QTRIMW5zQkU7RUFDRSxVQUFBO0E1SDRuc0JKO0E0SHZuc0JFO0VBQ0UsYUFBQTtBNUgwbnNCSjtBNEh0bnNCQTtFQUNFLGtCQUFBO0VBQ0EsU0FBQTtFQUNBLGdCQUFBO0VuRkRJLDZCbUZFSjtBNUh5bnNCRjtBeUN2bnNCTTtFbUZOTjtJbkZPUSxnQkFBQTtFekMwbnNCTjtBQUNGO0E0SDNuc0JBO0VBQ0U7SUFDRSxVQUFBO0U1SDhuc0JGO0U0SDNuc0JBO0lBQ0UsVUFBQTtFNUg2bnNCRjtBQUNGO0E0SHBvc0JBO0VBQ0U7SUFDRSxVQUFBO0U1SDhuc0JGO0U0SDNuc0JBO0lBQ0UsVUFBQTtFNUg2bnNCRjtBQUNGO0E0SDFuc0JBO0VBQ0UsOEJBQUE7VUFBQSxzQkFBQTtFQUNBLDhCQUFBO1VBQUEsc0JBQUE7QTVING5zQkY7QTRIcm5zQkE7RUFDRSx1QkFBQTtBNUh3bnNCRjtBNEhybnNCQTtFQUNFLHdIQUFBO0E1SHduc0JGO0E0SHZuc0JFO0VBQ0UsK0ZBQUE7QTVIeW5zQko7QTRIcG5zQkU7O0VBRUUsZ0JBQUE7QTVIdW5zQko7QTRIcm5zQkk7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQVlFLGdCQUFBO0E1SG1vc0JOO0E0SDluc0JBO0VBQ0UsZ0JBQUE7QTVIaW9zQkY7QTZIcnNzQkE7O0VBRUUscUIvR3NCd0I7RStHcEJ4QixnQi9Hc0J3QjtFK0dyQnhCLGdCL0dzQndCO0FkaXJzQjFCO0E2SG5zc0JBO0U5R2dITSxvQkF0Q2E7QWY2bnNCbkI7QTZIdHNzQkE7RTlHK0dNLGtCQXRDYTtBZmlvc0JuQjtBNkh6c3NCQTtFOUc4R00scUJBdENhO0FmcW9zQm5CO0E2SDVzc0JBO0U5RzZHTSxvQkF0Q2E7QWZ5b3NCbkI7QTZIL3NzQkE7RTlHNEdNLHFCQXRDYTtBZjZvc0JuQjtBNkhsdHNCQTtFOUcyR00sbUJBdENhO0FmaXBzQm5CO0E2SHB0c0JBO0U5R3lHTSxxQkF0Q2E7RThHakVqQixnQi9Hd0JrQjtBZCtyc0JwQjtBNkhudHNCQTtFOUdtR00sZUF0Q2E7RThHM0RqQixnQi9HV3FCO0UrR1ZyQixnQi9HRXdCO0Fkb3RzQjFCO0E2SHB0c0JBO0U5RzhGTSxpQkF0Q2E7RThHdERqQixnQi9HT3FCO0UrR05yQixnQi9HSHdCO0FkMHRzQjFCO0E2SHJ0c0JBO0U5R3lGTSxpQkF0Q2E7RThHakRqQixnQi9HR3FCO0UrR0ZyQixnQi9HUndCO0FkZ3VzQjFCO0E2SHR0c0JBO0U5R29GTSxpQkF0Q2E7RThHNUNqQixnQi9HRHFCO0UrR0VyQixnQi9HYndCO0Fkc3VzQjFCO0E2SGp0c0JBO0VBQ0UsZ0IzQi9DUTtFMkJnRFIsbUIzQmhEUTtFMkJpRFIsU0FBQTtFQUNBLHFCQUFBO0VBRUUsaUNBQUE7QTdIbXRzQko7QVk3a3NCUTtFaUh0SUosd0NBQUE7QTdIc3RzQko7QTZIOXNzQkE7RUFDRSxVL0Y1RGM7RStGOERaLHFDQUFBO0E3SGd0c0JKO0FZcmxzQlE7RWlIM0hKLDRDQUFBO0E3SG10c0JKO0E2SDNzc0JBOztFOUdQSSxjQUFBO0U4R1VGLGdCL0dsRXFCO0FkZ3hzQnZCO0E2SDNzc0JBOztFQUVFLGMvR3ZCYztFK0d3QmQseUIvR2ZRO0FkNnRzQlY7QTZIdHNzQkE7RXhCdEZFLGdCQUFBO0FyR2d5c0JGO0FnQnR5c0JRO0VxRkNKLGVBQUE7QXJHd3lzQko7QWlCenlzQlE7RW9GSUosZ0JBQUE7QXJHd3lzQko7QTZIM3NzQkE7RXhCM0ZFLGdCQUFBO0FyRzB5c0JGO0FnQmh6c0JRO0VxRkNKLGVBQUE7QXJHa3pzQko7QWlCbnpzQlE7RW9GSUosZ0JBQUE7QXJHa3pzQko7QTZIbHRzQkE7RUFDRSxxQkFBQTtBN0hxdHNCRjtBNkhudHNCRTtFQUNFLG9CL0dyQ21CO0FkMHZzQnZCO0E2SDNzc0JBO0U5RzlDSSxjQUFBO0U4R2dERix5QkFBQTtBN0g4c3NCRjtBNkgxc3NCQTtFQUNFLG1CM0JySFE7RW5GdUhKLHFCQXRDYTtBZmt2c0JuQjtBNkgxc3NCQTtFQUNFLGNBQUE7RTlHMURFLGNBQUE7RThHNERGLGN4R3ZIVztBckJvMHNCYjtBNkgzc3NCRTtFQUNFLGFBQUE7QTdINnNzQko7QThIaDFzQkE7RUFDRSxrQkFBQTtFQUNBLGdCQUFBO0E5SG0xc0JGO0E4SGgxc0JBO0VBQ0Usa0JBQUE7RUFDQSxNQUFBO0VBQ0EsT0FBQTtFQUNBLFNBQUE7RUFDQSxZQUFBO0E5SG0xc0JGO0E4SGgxc0JBO0VBQ0Usa0I1QlZRO0U0QldSLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLGtEQUFBO0E5SG0xc0JGO0E4SDkwc0JFO0VBQ0UsV0FBQTtFQUNBLGNBQUE7RUFDQSxVQUFBO0E5SGkxc0JKO0ErSGwyc0JBO0VBQ0Usa0JBQUE7RUFDQSxxQkFBQTtFQUNBLFdBQUE7RUFDQSx1Q3pHeUdpQjtFeUd4R2pCLDBDQUFBO0VBRUEsbUJqSFRnQjtFaUhVaEIsZ0JqSEpxQjtFaUhLckIsZ0JBQUE7RUFDQSxzQkFBQTtFQUNBLGlCQUFBO0VsR0xFLHNCQUFBO0VrR1FGLHdCQUFBO0tBQUEscUJBQUE7VUFBQSxnQkFBQTtFQUVFLGNBQUE7RUFDQSx1T0FBQTtFQUNBLHFCQUFBO0EvSGsyc0JKO0FZOXJzQlE7RW1IdEtKLGdDQUFBO0VBQ0EsNFBBQUE7RUFDQSx1Q0FBQTtBL0h1MnNCSjtBK0hwMnNCRTtFQUdJLGNBQUE7RUFDQSx5QkFBQTtBL0hxMnNCTjtBWXhzc0JRO0VtSDlKRixnQ0FBQTtFQUNBLDBDQUFBO0EvSHkyc0JOO0ErSHAyc0JBO0VBQ0UsNEJBQUE7QS9IdTJzQkY7QStIcDJzQkk7RUFDRSxZQUFBO0VBQ0Esb0J6RzFDbUI7QXRCZzVzQnpCO0ErSHAyc0JNO0VBQ0UsWUNoQzRCO0FoSXM0c0JwQztBK0hoMnNCQTtFQUNFLGVBQUE7RUFDQSxVQUFBO0EvSG0yc0JGO0ErSGgyc0JBO0VBQ0Usa0JBQUE7RUFDQSxRQUFBO0VBQ0EsYUFBQTtFQUNBLG9CQUFBO0VBQ0EsbUJBQUE7RUFDQSx1QkFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsaUJBQUE7RUFDQSxnQkFBQTtFQUNBLGVBQUE7RUFDQSxZQUFBO0VBQ0EsMkJBQUE7RUFHRSxjQUFBO0VBQ0EseUJBQUE7QS9IaTJzQko7QVk5dXNCUTtFbUhwSEosV0FBQTtFQUNBLHlCQUFBO0EvSHEyc0JKO0FZbHZzQlE7RW1IcEhKLFdBQUE7RUFDQSw0QkFBQTtBL0gwMnNCSjtBbUI3NnNCRTtFQUNFO0k0R3VFQSxxQkFBQTtJQUVFLGNBQUE7RS9IeTJzQko7RVk3dnNCTTtJbUg1R0YsV0FBQTtFL0g0MnNCSjs7RVlod3NCTTtJbUg1R0YsV0FBQTtFL0hnM3NCSjtBQUNGO0FtQnI3c0JFO0U0RzBFSSxhQUFBO0EvSDgyc0JOO0ErSHoyc0JBO0VBQ0UsZUFBQTtFQUNBLFVBQUE7RUFDQSxvQkFBQTtFQUNBLGtCQUFBO0VBQ0Esb0JBQUE7RUFDQSxvQkFBQTtFQUNBLFNBQUE7RUFDQSx3QkFBQTtLQUFBLHFCQUFBO1VBQUEsZ0JBQUE7RWxHdkZFLHNCQUFBO0VrRzRGQSxjQUFBO0VBQ0Esc0JBQUE7QS9IeTJzQko7QVl0eHNCUTtFbUhwRkosZ0NBQUE7RUFDQSw2QkFBQTtBL0g2MnNCSjtBK0gxMnNCRTtFQUNFLFVBQUE7QS9INjJzQko7QStIMTJzQkU7RUFDRSxhQUFBO0VBQ0Esb0J6R2xIcUI7QXRCODlzQnpCO0ErSHgyc0JBO0VBQ0Usa0JBQUE7RUFDQSxTQUFBO0VBQ0EsT0FBQTtFQUNBLGFBQUE7RUFDQSxXQUFBO0VBQ0EsV0FBQTtFQUNBLHVCQUFBO0VBQ0Esb0JDckdzQztFRHNHdEMsbUJqSDNIZ0I7RWlINEhoQixnQkFBQTtFQUNBLDRCQUFBO0VBQ0EsaUJBQUE7RWxHdEhFLHNCQUFBO0VrRzJIQSxjQUFBO0VBQ0Esc0JBQUE7RUFDQSxxQkFBQTtBL0h3MnNCSjtBWXJ6c0JRO0VtSHJESixnQ0FBQTtFQUNBLHlCQUFBO0VBQ0Esd0NBQUE7QS9INjJzQko7QWlEcjlzQk07RUF0Q0osU0FBQTtFQUlBLDBLQUFBO0FqRDQvc0JGO0FpRC8vc0JFO0VBcUNJO0lBcENGLDBIQUFBO0VqRGtndEJGO0FBQ0Y7QStIbDNzQkE7RUFDRSxrQkFBQTtFQUNBLHNDQUFBO0VBRUEsa0JBQUE7RUFDQSxtQkFBQTtFQUNBLGVBQUE7RWxHeElFLHNCQUFBO0E3QjYvc0JKO0FtQjcvc0JFO0U0RzZJRSxxQkFBQTtFQUlFLGNBQUE7RTNGN0pGLHlCMkY4SnVCO0EvSGczc0IzQjtBWWwxc0JRO0VtSC9CRixnQ0FBQTtFM0Y3SkYsMkMyRjhKdUI7QS9IbzNzQjNCO0ErSGgzc0JFO0VBRUUsb0JBQUE7RUFDQSw2QkFBQTtFQU9FLGNBQUE7QS9INDJzQk47QVk1MXNCUTtFbUhoQkYsY0FBQTtBL0grMnNCTjtBK0gzMnNCRTtFQUNFLGtCQUFBO0VBQ0EsV0FBQTtFQU9BLGNBQUE7RUFDQSxXQzFKcUM7RUQySnJDLFlDM0pxQztFRDRKckMsb0JBQUE7RUFDQSxXQUFBO0VBQ0EsaUJBQUE7RUFHRSxzQkFBQTtFQUNBLHFCQUFBO0VsR3RMRixzQkFBQTtBN0I2aHRCSjtBZ0IzaXRCUTtFK0dzTEYsY0FBQTtBL0h3M3NCTjtBaUI5aXRCUTtFOEd5TEYsZUFBQTtBL0h3M3NCTjtBWW4zc0JRO0VtSEtGLDJDQUFBO0VBQ0EscUJBQUE7QS9IaTNzQk47QStINTJzQkU7RUFDRSxrQkFBQTtFQUNBLFdBQUE7RUFPQSxjQUFBO0VBQ0EsV0NqTHFDO0VEa0xyQyxZQ2xMcUM7RURtTHJDLFdBQUE7RUFDQSxpQ0FBQTtBL0h5MnNCSjtBZ0IvanRCUTtFK0c2TUYsY0FBQTtBL0hxM3NCTjtBaUJsa3RCUTtFOEdnTkYsZUFBQTtBL0hxM3NCTjtBK0g1MnNCRTtFQUVJLHlCQUFBO0EvSDYyc0JOO0FZMTRzQlE7RW1INkJGLDJDQUFBO0EvSGczc0JOO0ErSDkyc0JJO0VBRUksV0FBQTtFQUNBLHFCQUFBO0UzRjlOSix5QjJGK055QjtBL0hnM3NCN0I7QVluNXNCUTtFbUhpQ0EsV0FBQTtFQUNBLHFCQUFBO0UzRjlOSix5QjJGK055QjtBL0hxM3NCN0I7QStIbDNzQkk7RUFFSSxrT0FBQTtBL0hvM3NCUjtBWTU1c0JRO0VtSHdDQSxrT0FBQTtBL0h1M3NCUjtBK0hqM3NCQTtFQUNFLHdCQUFBO0VBQ0EsZ0JqSGpPcUI7QWRxbHRCdkI7QStIajNzQkE7RUFDRSx1QkFBQTtBL0hvM3NCRjtBK0hoM3NCQTtFQUNFLHFCQUFBO0VBQ0EsWUN6T2tDO0VEME9sQyxpQkFBQTtFQUNBLFdDdE9rQztFRHVPbEMsaUJBQUE7RUFDQSxzQmpHek9rQjtFaUc0T2hCLHlCQUFBO0VBQ0EscUJBQUE7QS9IaTNzQko7QVluN3NCUTtFbUhpRUosMENBQUE7RUFDQSx3Q0FBQTtBL0hxM3NCSjtBK0hqM3NCQTtFQUNFLGdCQUFBO0VBQ0EsZUFBQTtBL0hvM3NCRjtBK0hqM3NCQTtFQUdJLGNBQUE7RUFDQSxzQkFBQTtFQUNBLHFCQUFBO0VBT0EsZ0RDeFErQjtBaElvbnRCbkM7QVluOHNCUTtFbUg4RUosZ0NBQUE7RUFDQSwyQ0FBQTtFQUNBLHNDQUFBO0EvSHczc0JKO0ErSDkyc0JFO0VBQ0UsZUFBQTtBL0hpM3NCSjtBK0g5MnNCRTtFQUNFLGFyRzNScUI7RXFHNFJyQixnQkFBQTtBL0hnM3NCSjtBK0gzMnNCQTtFQUNFLGlCekduU3VCO0V5R3FTckIsZ0JBQUE7QS9INjJzQko7QVlyOXNCUTtFbUh3R0oscUNBQUE7QS9IZzNzQko7QStINzJzQkU7RUFDRSxjQUFBO0VBQ0EsdUJ6RzFTcUI7QXRCMHB0QnpCO0ErSDUyc0JJO0VBQ0UsaUJ6Ry9TbUI7QXRCNnB0QnpCO0ErSDEyc0JFO0VBQ0UsV0FBQTtFQUNBLHlCQUFBO0VBQ0EsaUJBQUE7RUFFRSxxQkFBQTtBL0gyMnNCTjtBWXQrc0JRO0VtSDJIRix1Q0FBQTtBL0g4MnNCTjtBK0gzMnNCRTtFQUNFLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLGNBQUE7RUFDQSxVQUFBO0VBQ0EsNkJBQUE7RUFDQSxTQUFBO0EvSDgyc0JKO0FpRDdvdEJNO0VBdENKLFNBQUE7RUFJQSxnQkFBQTtBakRtcnRCRjtBaUR0cnRCRTtFQXFDSTtJQXBDRixnQkFBQTtFakR5cnRCRjtBQUNGO0FpSXpydEJBO0VBQ0UsYUFBQTtFQUNBLG1CQUFBO0VBQ0EsaUJBQUE7QWpJNHJ0QkY7QWlJeHJ0QkE7RUFDRTtJQUNFLGFBQUE7SUFDQSxzQkFBQTtFakkycnRCRjtBQUNGO0FpSXhydEJBO0VBQ0UsYUFBQTtFQUNBLE9BQUE7RUFDQSxzQkFBQTtFQUNBLFlBQUE7RUFDQSxpQkFBQTtBakkwcnRCRjtBaUl0cnRCSTtFQUNFLGtCQUFBO0FqSXdydEJOO0FpSXJydEJJO0VBQ0Usd0JBQUE7RUFBQSxnQkFBQTtFQUNBLE1BQUE7QWpJdXJ0Qk47QWlJcnJ0Qk07RUFKRjtJQUtJLGVBQUE7SUFDQSxlQUFBO0VqSXdydEJOO0VpSXRydEJNO0lBQ0UsaUJBQUE7RWpJd3J0QlI7QUFDRjtBaUlwcnRCSTtFQUNFLHdCQUFBO0VBQUEsZ0JBQUE7RUFDQSxTQUFBO0FqSXNydEJOO0FpSXBydEJNO0VBSkY7SUFLSSxlQUFBO0lBQ0EsZUFBQTtFakl1cnRCTjtFaUlycnRCTTtJQUNFLG1CQUFBO0VqSXVydEJSO0FBQ0Y7QWlJbnJ0Qkk7RUFHRSxhQUFBO0VBQ0Esc0JBQUE7RUFHQSxZQUFBO0FqSWlydEJOO0FpSTVxdEJFO0VBQ0UsaUJBQUE7QWpJOHF0Qko7QWlJNXF0Qkk7RUFDRSxlQUFBO0FqSThxdEJOO0FpSXpxdEJBO0VBQ0UsZ0JBQUE7RUFDQSxjQUFBO0VBQ0EsWUFBQTtFQUNBLFlBQUE7RUFDQSxpQkFBQTtBakk0cXRCRjtBd0R4cnRCSTtFeUVjRjtJQUVJLG1CcEQ3Q2U7SW9EOENmLGtCcEQ5Q2U7RTdFMHR0Qm5CO0FBQ0Y7QWtJcnd0QkE7RUFBcUIsbUNBQUE7QWxJeXd0QnJCO0FrSXh3dEJBO0VBQXFCLDhCQUFBO0FsSTR3dEJyQjtBa0kzd3RCQTtFQUFxQixpQ0FBQTtBbEkrd3RCckI7QWtJOXd0QkE7RUFBcUIsaUNBQUE7QWxJa3h0QnJCO0FrSWp4dEJBO0VBQXFCLHNDQUFBO0FsSXF4dEJyQjtBa0lweHRCQTtFQUFxQixtQ0FBQTtBbEl3eHRCckI7QW1JMXh0QkU7RUFDRSxvQ0FBQTtBbkk2eHRCSjtBbUJqeHRCRTs7O0VnSFBJLG9DQUFBO0FuSTh4dEJOO0FtSXB5dEJFO0VBQ0Usb0NBQUE7QW5JdXl0Qko7QW1CM3h0QkU7OztFZ0hQSSxvQ0FBQTtBbkl3eXRCTjtBbUk5eXRCRTtFQUNFLG9DQUFBO0FuSWl6dEJKO0FtQnJ5dEJFOzs7RWdIUEksb0NBQUE7QW5Ja3p0Qk47QW1JeHp0QkU7RUFDRSxpQ0FBQTtBbkkyenRCSjtBbUIveXRCRTs7O0VnSFBJLG9DQUFBO0FuSTR6dEJOO0FtSWwwdEJFO0VBQ0Usb0NBQUE7QW5JcTB0Qko7QW1Cenp0QkU7OztFZ0hQSSxvQ0FBQTtBbklzMHRCTjtBbUk1MHRCRTtFQUNFLG9DQUFBO0FuSSswdEJKO0FtQm4wdEJFOzs7RWdIUEksb0NBQUE7QW5JZzF0Qk47QW1JdDF0QkU7RUFDRSxvQ0FBQTtBbkl5MXRCSjtBbUI3MHRCRTs7O0VnSFBJLG9DQUFBO0FuSTAxdEJOO0FtSWgydEJFO0VBQ0Usb0NBQUE7QW5JbTJ0Qko7QW1CdjF0QkU7OztFZ0hQSSxvQ0FBQTtBbklvMnRCTjtBbUkxMnRCRTtFQUNFLG9DQUFBO0FuSTYydEJKO0FtQmoydEJFOzs7RWdIUEksb0NBQUE7QW5JNjJ0Qk47QW1JbjN0QkU7RUFDRSxvQ0FBQTtBbklzM3RCSjtBbUIxMnRCRTs7O0VnSFBJLG9DQUFBO0FuSXMzdEJOO0FtSTUzdEJFO0VBQ0Usb0NBQUE7QW5JKzN0Qko7QW1CbjN0QkU7OztFZ0hQSSxvQ0FBQTtBbkkrM3RCTjtBbUlyNHRCRTtFQUNFLG9DQUFBO0FuSXc0dEJKO0FtQjUzdEJFOzs7RWdIUEksb0NBQUE7QW5JdzR0Qk47QW1JOTR0QkU7RUFDRSxvQ0FBQTtBbklpNXRCSjtBbUJyNHRCRTs7O0VnSFBJLG9DQUFBO0FuSWk1dEJOO0FtSXY1dEJFO0VBQ0Usb0NBQUE7QW5JMDV0Qko7QW1COTR0QkU7OztFZ0hQSSxvQ0FBQTtBbkkwNXRCTjtBbUloNnRCRTtFQUNFLG9DQUFBO0FuSW02dEJKO0FtQnY1dEJFOzs7RWdIUEksb0NBQUE7QW5JbTZ0Qk47QW1JejZ0QkU7RUFDRSxvQ0FBQTtBbkk0NnRCSjtBbUJoNnRCRTs7O0VnSFBJLGtDQUFBO0FuSTQ2dEJOO0FtSWw3dEJFO0VBQ0Usb0NBQUE7QW5JcTd0Qko7QW1CejZ0QkU7OztFZ0hQSSxvQ0FBQTtBbklxN3RCTjtBbUkzN3RCRTtFQUNFLG9DQUFBO0FuSTg3dEJKO0FtQmw3dEJFOzs7RWdIUEksb0NBQUE7QW5JODd0Qk47QW1JcDh0QkU7RUFDRSxvQ0FBQTtBbkl1OHRCSjtBbUIzN3RCRTs7O0VnSFBJLG9DQUFBO0FuSXU4dEJOO0FtSTc4dEJFO0VBQ0Usb0NBQUE7QW5JZzl0Qko7QW1CcDh0QkU7OztFZ0hQSSxvQ0FBQTtBbklnOXRCTjtBbUl0OXRCRTtFQUNFLG9DQUFBO0FuSXk5dEJKO0FtQjc4dEJFOzs7RWdIUEksb0NBQUE7QW5JeTl0Qk47QW1JLzl0QkU7RUFDRSxvQ0FBQTtBbklrK3RCSjtBbUJ0OXRCRTs7O0VnSFBJLG9DQUFBO0FuSWsrdEJOO0FtSXgrdEJFO0VBQ0Usb0NBQUE7QW5JMit0Qko7QW1CLzl0QkU7OztFZ0hQSSxvQ0FBQTtBbkkyK3RCTjtBbUlqL3RCRTtFQUNFLG9DQUFBO0FuSW8vdEJKO0FtQngrdEJFOzs7RWdIUEksb0NBQUE7QW5Jby90Qk47QW1JdCt0QkU7RUFDRSw4QkFBQTtFQUNBLHVFQUFBO0VBQ0EsZ0NBQUE7QW5JeSt0Qko7QW1JNSt0QkU7RUFDRSwyQkFBQTtFQUNBLG9FQUFBO0VBQ0EsNkJBQUE7QW5JKyt0Qko7QW1JbC90QkU7RUFDRSw4QkFBQTtFQUNBLHVFQUFBO0VBQ0EsZ0NBQUE7QW5JcS90Qko7QW1JeC90QkU7RUFDRSw4QkFBQTtFQUNBLG9FQUFBO0VBQ0EsZ0NBQUE7QW5JMi90Qko7QW1JOS90QkU7RUFDRSw4QkFBQTtFQUNBLHVFQUFBO0VBQ0EsZ0NBQUE7QW5JaWd1Qko7QW1JcGd1QkU7RUFDRSw4QkFBQTtFQUNBLHVFQUFBO0VBQ0EsZ0NBQUE7QW5JdWd1Qko7QW1JMWd1QkU7RUFDRSwyQkFBQTtFQUNBLG9FQUFBO0VBQ0EsNkJBQUE7QW5JNmd1Qko7QW1JaGh1QkU7RUFDRSw4QkFBQTtFQUNBLHVFQUFBO0VBQ0EsZ0NBQUE7QW5JbWh1Qko7QW1JdGh1QkU7RUFDRSw4QkFBQTtFQUNBLHVFQUFBO0VBQ0EsZ0NBQUE7QW5JeWh1Qko7QW1JNWh1QkU7RUFDRSw0QkFBQTtFQUNBLHFFQUFBO0VBQ0EsOEJBQUE7QW5JK2h1Qko7QW1JbGl1QkU7RUFDRSw4QkFBQTtFQUNBLHVFQUFBO0VBQ0EsZ0NBQUE7QW5JcWl1Qko7QW1JeGl1QkU7RUFDRSw4QkFBQTtFQUNBLHVFQUFBO0VBQ0EsZ0NBQUE7QW5JMml1Qko7QW1JOWl1QkU7RUFDRSw4QkFBQTtFQUNBLHVFQUFBO0VBQ0EsZ0NBQUE7QW5JaWp1Qko7QW1JcGp1QkU7RUFDRSw4QkFBQTtFQUNBLHVFQUFBO0VBQ0EsZ0NBQUE7QW5JdWp1Qko7QW1JMWp1QkU7RUFDRSw0QkFBQTtFQUNBLHFFQUFBO0VBQ0EsOEJBQUE7QW5JNmp1Qko7QW1JaGt1QkU7RUFDRSw4QkFBQTtFQUNBLHVFQUFBO0VBQ0EsZ0NBQUE7QW5JbWt1Qko7QW1JdGt1QkU7RUFDRSw4QkFBQTtFQUNBLHVFQUFBO0VBQ0EsZ0NBQUE7QW5JeWt1Qko7QW1JNWt1QkU7RUFDRSw4QkFBQTtFQUNBLHVFQUFBO0VBQ0EsZ0NBQUE7QW5JK2t1Qko7QW1JbGx1QkU7RUFDRSw4QkFBQTtFQUNBLHVFQUFBO0VBQ0EsZ0NBQUE7QW5JcWx1Qko7QW1JeGx1QkU7RUFDRSw4QkFBQTtFQUNBLHVFQUFBO0VBQ0EsZ0NBQUE7QW5JMmx1Qko7QW1JOWx1QkU7RUFDRSw4QkFBQTtFQUNBLHVFQUFBO0VBQ0EsZ0NBQUE7QW5JaW11Qko7QW1JcG11QkU7RUFDRSw4QkFBQTtFQUNBLHVFQUFBO0VBQ0EsZ0NBQUE7QW5JdW11Qko7QW1JMW11QkU7RUFDRSw4QkFBQTtFQUNBLHFFQUFBO0VBQ0EsZ0NBQUE7QW5JNm11Qko7QW1JaG51QkU7RUFDRSw4QkFBQTtFQUNBLHVFQUFBO0VBQ0EsZ0NBQUE7QW5JbW51Qko7QW9JaG91QkE7RUFDRSxpQ0FBQTtBcEltb3VCRjtBb0lob3VCQTtFQUNFLHdDQUFBO0FwSW1vdUJGO0FvSWhvdUJBO0VBQ0UsVy9HcEJPO0FyQnVwdUJUO0FtSXRwdUJFO0VBQ0Usb0NBQUE7QW5JeXB1Qko7QW1CN291QkU7OztFZ0hQSSxvQ0FBQTtBbkkwcHVCTjtBbUlocXVCRTtFQUNFLG9DQUFBO0FuSW1xdUJKO0FtQnZwdUJFOzs7RWdIUEksb0NBQUE7QW5Jb3F1Qk47QW1JMXF1QkU7RUFDRSxvQ0FBQTtBbkk2cXVCSjtBbUJqcXVCRTs7O0VnSFBJLG9DQUFBO0FuSThxdUJOO0FtSXBydUJFO0VBQ0Usb0NBQUE7QW5JdXJ1Qko7QW1CM3F1QkU7OztFZ0hQSSxvQ0FBQTtBbkl3cnVCTjtBbUk5cnVCRTtFQUNFLG9DQUFBO0FuSWlzdUJKO0FtQnJydUJFOzs7RWdIUEksb0NBQUE7QW5Ja3N1Qk47QW1JeHN1QkU7RUFDRSxvQ0FBQTtBbkkyc3VCSjtBbUIvcnVCRTs7O0VnSFBJLG9DQUFBO0FuSTRzdUJOO0FtSWx0dUJFO0VBQ0Usb0NBQUE7QW5JcXR1Qko7QW1CenN1QkU7OztFZ0hQSSxvQ0FBQTtBbklzdHVCTjtBbUk1dHVCRTtFQUNFLG9DQUFBO0FuSSt0dUJKO0FtQm50dUJFOzs7RWdIUEksb0NBQUE7QW5JZ3V1Qk47QW1JdHV1QkU7RUFDRSxpQ0FBQTtBbkl5dXVCSjtBbUI3dHVCRTs7O0VnSFBJLG9DQUFBO0FuSTB1dUJOO0FtSWh2dUJFO0VBQ0Usb0NBQUE7QW5JbXZ1Qko7QW1CdnV1QkU7OztFZ0hQSSxvQ0FBQTtBbklvdnVCTjtBbUkxdnVCRTtFQUNFLG9DQUFBO0FuSTZ2dUJKO0FtQmp2dUJFOzs7RWdIUEksb0NBQUE7QW5JOHZ1Qk47QW1JcHd1QkU7RUFDRSxvQ0FBQTtBbkl1d3VCSjtBbUIzdnVCRTs7O0VnSFBJLG9DQUFBO0FuSXd3dUJOO0FtSTl3dUJFO0VBQ0Usb0NBQUE7QW5JaXh1Qko7QW1Ccnd1QkU7OztFZ0hQSSxvQ0FBQTtBbklreHVCTjtBbUl4eHVCRTtFQUNFLG9DQUFBO0FuSTJ4dUJKO0FtQi93dUJFOzs7RWdIUEksb0NBQUE7QW5JNHh1Qk47QW1JbHl1QkU7RUFDRSxvQ0FBQTtBbklxeXVCSjtBbUJ6eHVCRTs7O0VnSFBJLG9DQUFBO0FuSXN5dUJOO0FtSTV5dUJFO0VBQ0Usb0NBQUE7QW5JK3l1Qko7QW1Cbnl1QkU7OztFZ0hQSSxvQ0FBQTtBbklnenVCTjtBbUl0enVCRTtFQUNFLG9DQUFBO0FuSXl6dUJKO0FtQjd5dUJFOzs7RWdIUEksb0NBQUE7QW5JMHp1Qk47QW1JaDB1QkU7RUFDRSxvQ0FBQTtBbkltMHVCSjtBbUJ2enVCRTs7O0VnSFBJLG9DQUFBO0FuSW8wdUJOO0FtSTEwdUJFO0VBQ0Usb0NBQUE7QW5JNjB1Qko7QW1CajB1QkU7OztFZ0hQSSxvQ0FBQTtBbkk4MHVCTjtBbUlwMXVCRTtFQUNFLG9DQUFBO0FuSXUxdUJKO0FtQjMwdUJFOzs7RWdIUEksb0NBQUE7QW5JdzF1Qk47QW1JOTF1QkU7RUFDRSxvQ0FBQTtBbklpMnVCSjtBbUJyMXVCRTs7O0VnSFBJLG9DQUFBO0FuSWsydUJOO0FtSXgydUJFO0VBQ0Usb0NBQUE7QW5JMjJ1Qko7QW1CLzF1QkU7OztFZ0hQSSxvQ0FBQTtBbkk0MnVCTjtBbUlsM3VCRTtFQUNFLG9DQUFBO0FuSXEzdUJKO0FtQnoydUJFOzs7RWdIUEksb0NBQUE7QW5JczN1Qk47QW1JNTN1QkU7RUFDRSxvQ0FBQTtBbkkrM3VCSjtBbUJuM3VCRTs7O0VnSFBJLG9DQUFBO0FuSWc0dUJOO0FtSXQ0dUJFO0VBQ0Usb0NBQUE7QW5JeTR1Qko7QW1CNzN1QkU7OztFZ0hQSSxvQ0FBQTtBbkkwNHVCTjtBbUloNXVCRTtFQUNFLG9DQUFBO0FuSW01dUJKO0FtQnY0dUJFOzs7RWdIUEksb0NBQUE7QW5JbzV1Qk47QW9JNTN1QkE7RUFDRSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSx1QkFBQTtFQUNBLGFBQUE7RUFDQSxjQUFBO0FwSSszdUJGO0FxSWg2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d0IsNkJBQUE7QXZJZ3Z2QjlCO0F1SWh2dkJNO0VBQXdCLDhCQUFBO0F2SW92dkI5QjtBdUlwdnZCTTtFQUF3Qix3QkFBQTtBdkl3dnZCOUI7QXVJeHZ2Qk07RUFBd0IsK0JBQUE7QXZJNHZ2QjlCO0F3RDdydkJJO0UrRS9ERTtJQUF3Qix3QkFBQTtFdklpd3ZCNUI7O0V1SWp3dkJJO0lBQXdCLDBCQUFBO0V2SXF3dkI1Qjs7RXVJcnd2Qkk7SUFBd0IsZ0NBQUE7RXZJeXd2QjVCOztFdUl6d3ZCSTtJQUF3Qix5QkFBQTtFdkk2d3ZCNUI7O0V1STd3dkJJO0lBQXdCLHlCQUFBO0V2SWl4dkI1Qjs7RXVJanh2Qkk7SUFBd0IsNkJBQUE7RXZJcXh2QjVCOztFdUlyeHZCSTtJQUF3Qiw4QkFBQTtFdkl5eHZCNUI7O0V1SXp4dkJJO0lBQXdCLHdCQUFBO0V2STZ4dkI1Qjs7RXVJN3h2Qkk7SUFBd0IsK0JBQUE7RXZJaXl2QjVCO0FBQ0Y7QXdEbnV2Qkk7RStFL0RFO0lBQXdCLHdCQUFBO0V2SXN5dkI1Qjs7RXVJdHl2Qkk7SUFBd0IsMEJBQUE7RXZJMHl2QjVCOztFdUkxeXZCSTtJQUF3QixnQ0FBQTtFdkk4eXZCNUI7O0V1STl5dkJJO0lBQXdCLHlCQUFBO0V2SWt6dkI1Qjs7RXVJbHp2Qkk7SUFBd0IseUJBQUE7RXZJc3p2QjVCOztFdUl0enZCSTtJQUF3Qiw2QkFBQTtFdkkwenZCNUI7O0V1STF6dkJJO0lBQXdCLDhCQUFBO0V2STh6dkI1Qjs7RXVJOXp2Qkk7SUFBd0Isd0JBQUE7RXZJazB2QjVCOztFdUlsMHZCSTtJQUF3QiwrQkFBQTtFdklzMHZCNUI7QUFDRjtBd0R4d3ZCSTtFK0UvREU7SUFBd0Isd0JBQUE7RXZJMjB2QjVCOztFdUkzMHZCSTtJQUF3QiwwQkFBQTtFdkkrMHZCNUI7O0V1SS8wdkJJO0lBQXdCLGdDQUFBO0V2SW0xdkI1Qjs7RXVJbjF2Qkk7SUFBd0IseUJBQUE7RXZJdTF2QjVCOztFdUl2MXZCSTtJQUF3Qix5QkFBQTtFdkkyMXZCNUI7O0V1STMxdkJJO0lBQXdCLDZCQUFBO0V2SSsxdkI1Qjs7RXVJLzF2Qkk7SUFBd0IsOEJBQUE7RXZJbTJ2QjVCOztFdUluMnZCSTtJQUF3Qix3QkFBQTtFdkl1MnZCNUI7O0V1SXYydkJJO0lBQXdCLCtCQUFBO0V2STIydkI1QjtBQUNGO0F3RDd5dkJJO0UrRS9ERTtJQUF3Qix3QkFBQTtFdklnM3ZCNUI7O0V1SWgzdkJJO0lBQXdCLDBCQUFBO0V2SW8zdkI1Qjs7RXVJcDN2Qkk7SUFBd0IsZ0NBQUE7RXZJdzN2QjVCOztFdUl4M3ZCSTtJQUF3Qix5QkFBQTtFdkk0M3ZCNUI7O0V1STUzdkJJO0lBQXdCLHlCQUFBO0V2SWc0dkI1Qjs7RXVJaDR2Qkk7SUFBd0IsNkJBQUE7RXZJbzR2QjVCOztFdUlwNHZCSTtJQUF3Qiw4QkFBQTtFdkl3NHZCNUI7O0V1SXg0dkJJO0lBQXdCLHdCQUFBO0V2STQ0dkI1Qjs7RXVJNTR2Qkk7SUFBd0IsK0JBQUE7RXZJZzV2QjVCO0FBQ0Y7QXdEbDF2Qkk7RStFL0RFO0lBQXdCLHdCQUFBO0V2SXE1dkI1Qjs7RXVJcjV2Qkk7SUFBd0IsMEJBQUE7RXZJeTV2QjVCOztFdUl6NXZCSTtJQUF3QixnQ0FBQTtFdkk2NXZCNUI7O0V1STc1dkJJO0lBQXdCLHlCQUFBO0V2SWk2dkI1Qjs7RXVJajZ2Qkk7SUFBd0IseUJBQUE7RXZJcTZ2QjVCOztFdUlyNnZCSTtJQUF3Qiw2QkFBQTtFdkl5NnZCNUI7O0V1SXo2dkJJO0lBQXdCLDhCQUFBO0V2STY2dkI1Qjs7RXVJNzZ2Qkk7SUFBd0Isd0JBQUE7RXZJaTd2QjVCOztFdUlqN3ZCSTtJQUF3QiwrQkFBQTtFdklxN3ZCNUI7QUFDRjtBd0QxMnZCSTtFK0VyRUE7SUFBd0Isd0JBQUE7RXZJbTd2QjFCO0FBQ0Y7QXdELzJ2Qkk7RStFckVBO0lBQXdCLHdCQUFBO0V2SXc3dkIxQjtBQUNGO0F3RHAzdkJJO0UrRXJFQTtJQUF3Qix3QkFBQTtFdkk2N3ZCMUI7QUFDRjtBd0R6M3ZCSTtFK0VyRUE7SUFBd0Isd0JBQUE7RXZJazh2QjFCO0FBQ0Y7QXdEOTN2Qkk7RStFckVBO0lBQXdC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O0EwSWxxd0JJO0VBQW9DLHlDQUFBO0ExSXNxd0J4QztBMElycXdCSTtFQUFvQyx3Q0FBQTtBMUl5cXdCeEM7QTBJdnF3Qkk7RUFBaUMsa0NBQUE7QTFJMnF3QnJDO0EwSTFxd0JJO0VBQWlDLGdDQUFBO0ExSThxd0JyQztBMEk3cXdCSTtFQUFpQyw4QkFBQTtBMUlpcndCckM7QTBJaHJ3Qkk7RUFBaUMsZ0NBQUE7QTFJb3J3QnJDO0EwSW5yd0JJO0VBQWlDLCtCQUFBO0ExSXVyd0JyQztBMElycndCSTtFQUFrQyxvQ0FBQTtBMUl5cndCdEM7QTBJeHJ3Qkk7RUFBa0Msa0NBQUE7QTFJNHJ3QnRDO0EwSTNyd0JJO0VBQWtDLGdDQUFBO0ExSStyd0J0QztBMEk5cndCSTtFQUFrQyx1Q0FBQTtBMUlrc3dCdEM7QTBJanN3Qkk7RUFBa0Msc0NBQUE7QTFJcXN3QnRDO0EwSXBzd0JJO0VBQWtDLGlDQUFBO0ExSXdzd0J0QztBMEl0c3dCSTtFQUFnQywyQkFBQTtBMUkwc3dCcEM7QTBJenN3Qkk7RUFBZ0MsaUNBQUE7QTFJNnN3QnBDO0EwSTVzd0JJO0VBQWdDLCtCQUFBO0ExSWd0d0JwQztBMEkvc3dCSTtFQUFnQyw2QkFBQTtBMUltdHdCcEM7QTBJbHR3Qkk7RUFBZ0MsK0JBQUE7QTFJc3R3QnBDO0EwSXJ0d0JJO0VBQWdDLDhCQUFBO0ExSXl0d0JwQztBd0Roc3dCSTtFa0YvREE7SUFBZ0MsOEJBQUE7RTFJb3d3QmxDOztFMElud3dCRTtJQUFnQyxpQ0FBQTtFMUl1d3dCbEM7O0UwSXR3d0JFO0lBQWdDLHNDQUFBO0UxSTB3d0JsQzs7RTBJend3QkU7SUFBZ0MseUNBQUE7RTFJNnd3QmxDOztFMEkzd3dCRTtJQUE4QiwwQkFBQTtFMUkrd3dCaEM7O0UwSTl3d0JFO0lBQThCLDRCQUFBO0UxSWt4d0JoQzs7RTBJanh3QkU7SUFBOEIsa0NBQUE7RTFJcXh3QmhDOztFMElweHdCRTtJQUE4Qix5QkFBQTtFMUl3eHdCaEM7O0UwSXZ4d0JFO0lBQThCLHVCQUFBO0UxSTJ4d0JoQzs7RTBJMXh3QkU7SUFBOEIsdUJBQUE7RTFJOHh3QmhDOztFMEk3eHdCRTtJQUE4Qix5QkFBQTtFMUlpeXdCaEM7O0UwSWh5d0JFO0lBQThCLHlCQUFBO0UxSW95d0JoQzs7RTBJbHl3QkU7SUFBb0Msc0NBQUE7RTFJc3l3QnRDOztFMElyeXdCRTtJQUFvQyxvQ0FBQTtFMUl5eXdCdEM7O0UwSXh5d0JFO0lBQW9DLGtDQUFBO0UxSTR5d0J0Qzs7RTBJM3l3QkU7SUFBb0MseUNBQUE7RTFJK3l3QnRDOztFMEk5eXdCRTtJQUFvQyx3Q0FBQTtFMUlrendCdEM7O0UwSWh6d0JFO0lBQWlDLGtDQUFBO0UxSW96d0JuQzs7RTBJbnp3QkU7SUFBaUMsZ0NBQUE7RTFJdXp3Qm5DOztFMEl0endCRTtJQUFpQyw4QkFBQTtFMUkwendCbkM7O0UwSXp6d0JFO0lBQWlDLGdDQUFBO0UxSTZ6d0JuQzs7RTBJNXp3QkU7SUFBaUMsK0JBQUE7RTFJZzB3Qm5DOztFMEk5endCRTtJQUFrQyxvQ0FBQTtFMUlrMHdCcEM7O0UwSWowd0JFO0lBQWtDLGtDQUFBO0UxSXEwd0JwQzs7RTBJcDB3QkU7SUFBa0MsZ0NBQUE7RTFJdzB3QnBDOztFMEl2MHdCRTtJQUFrQyx1Q0FBQTtFMUkyMHdCcEM7O0UwSTEwd0JFO0lBQWtDLHNDQUFBO0UxSTgwd0JwQzs7RTBJNzB3QkU7SUFBa0MsaUNBQUE7RTFJaTF3QnBDOztFMEkvMHdCRTtJQUFnQywyQkFBQTtFMUltMXdCbEM7O0UwSWwxd0JFO0lBQWdDLGlDQUFBO0UxSXMxd0JsQzs7RTBJcjF3QkU7SUFBZ0MsK0JBQUE7RTFJeTF3QmxDOztFMEl4MXdCRTtJQUFnQyw2QkFBQTtFMUk0MXdCbEM7O0UwSTMxd0JFO0lBQWdDLCtCQUFBO0UxSSsxd0JsQzs7RTBJOTF3QkU7SUFBZ0MsOEJBQUE7RTFJazJ3QmxDO0FBQ0Y7QXdEMTB3Qkk7RWtGL0RBO0lBQWdDLDhCQUFBO0UxSTY0d0JsQzs7RTBJNTR3QkU7SUFBZ0MsaUNBQUE7RTFJZzV3QmxDOztFMEkvNHdCRTtJQUFnQyxzQ0FBQTtFMUltNXdCbEM7O0UwSWw1d0JFO0lBQWdDLHlDQUFBO0UxSXM1d0JsQzs7RTBJcDV3QkU7SUFBOEIsMEJBQUE7RTFJdzV3QmhDOztFMEl2NXdCRTtJQUE4Qiw0QkFBQTtFMUkyNXdCaEM7O0UwSTE1d0JFO0lBQThCLGtDQUFBO0UxSTg1d0JoQzs7RTBJNzV3QkU7SUFBOEIseUJBQUE7RTFJaTZ3QmhDOztFMEloNndCRTtJQUE4Qix1QkFBQTtFMUlvNndCaEM7O0UwSW42d0JFO0lBQThCLHVCQUFBO0UxSXU2d0JoQzs7RTBJdDZ3QkU7SUFBOEIseUJBQUE7RTFJMDZ3QmhDOztFMEl6NndCRTtJQUE4Qix5QkFBQTtFMUk2NndCaEM7O0UwSTM2d0JFO0lBQW9DLHNDQUFBO0UxSSs2d0J0Qzs7RTBJOTZ3QkU7SUFBb0Msb0NBQUE7RTFJazd3QnRDOztFMElqN3dCRTtJQUFvQyxrQ0FBQTtFMUlxN3dCdEM7O0UwSXA3d0JFO0lBQW9DLHlDQUFBO0UxSXc3d0J0Qzs7RTBJdjd3QkU7SUFBb0Msd0NBQUE7RTFJMjd3QnRDOztFMEl6N3dCRTtJQUFpQyxrQ0FBQTtFMUk2N3dCbkM7O0UwSTU3d0JFO0lBQWlDLGdDQUFBO0UxSWc4d0JuQzs7RTBJLzd3QkU7SUFBaUMsOEJBQUE7RTFJbTh3Qm5DOztFMElsOHdCRTtJQUFpQyxnQ0FBQTtFMUlzOHdCbkM7O0UwSXI4d0JFO0lBQWlDLCtCQUFBO0UxSXk4d0JuQzs7RTBJdjh3QkU7SUFBa0Msb0NBQUE7RTFJMjh3QnBDOztFMEkxOHdCRTtJQUFrQyxrQ0FBQTtFMUk4OHdCcEM7O0UwSTc4d0JFO0lBQWtDLGdDQUFBO0UxSWk5d0JwQzs7RTBJaDl3QkU7SUFBa0MsdUNBQUE7RTFJbzl3QnBDOztFMEluOXdCRTtJQUFrQyxzQ0FBQTtFMUl1OXdCcEM7O0UwSXQ5d0JFO0lBQWtDLGlDQUFBO0UxSTA5d0JwQzs7RTBJeDl3QkU7SUFBZ0MsMkJBQUE7RTFJNDl3QmxDOztFMEkzOXdCRTtJQUFnQyxpQ0FBQTtFMUkrOXdCbEM7O0UwSTk5d0JFO0lBQWdDLCtCQUFBO0UxSWsrd0JsQzs7RTBJait3QkU7SUFBZ0MsNkJBQUE7RTFJcSt3QmxDOztFMElwK3dCRTtJQUFnQywrQkFBQTtFMUl3K3dCbEM7O0UwSXYrd0JFO0lBQWdDLDhCQUFBO0UxSTIrd0JsQztBQUNGO0F3RG45d0JJO0VrRi9EQTtJQUFnQyw4QkFBQTtFMUlzaHhCbEM7O0UwSXJoeEJFO0lBQWdDLGlDQUFBO0UxSXloeEJsQzs7RTBJeGh4QkU7SUFBZ0Msc0NBQUE7RTFJNGh4QmxDOztFMEkzaHhCRTtJQUFnQyx5Q0FBQTtFMUkraHhCbEM7O0UwSTdoeEJFO0lBQThCLDBCQUFBO0UxSWlpeEJoQzs7RTBJaGl4QkU7SUFBOEIsNEJBQUE7RTFJb2l4QmhDOztFMEluaXhCRTtJQUE4QixrQ0FBQTtFMUl1aXhCaEM7O0UwSXRpeEJFO0lBQThCLHlCQUFBO0UxSTBpeEJoQzs7RTBJeml4QkU7SUFBOEIsdUJBQUE7RTFJNml4QmhDOztFMEk1aXhCRTtJQUE4Qix1QkFBQTtFMUlnanhCaEM7O0UwSS9peEJFO0lBQThCLHlCQUFBO0UxSW1qeEJoQzs7RTBJbGp4QkU7SUFBOEIseUJBQUE7RTFJc2p4QmhDOztFMElwanhCRTtJQUFvQyxzQ0FBQTtFMUl3anhCdEM7O0UwSXZqeEJFO0lBQW9DLG9DQUFBO0UxSTJqeEJ0Qzs7RTBJMWp4QkU7SUFBb0Msa0NBQUE7RTFJOGp4QnRDOztFMEk3anhCRTtJQUFvQyx5Q0FBQTtFMUlpa3hCdEM7O0UwSWhreEJFO0lBQW9DLHdDQUFBO0UxSW9reEJ0Qzs7RTBJbGt4QkU7SUFBaUMsa0NBQUE7RTFJc2t4Qm5DOztFMElya3hCRTtJQUFpQyxnQ0FBQTtFMUl5a3hCbkM7O0UwSXhreEJFO0lBQWlDLDhCQUFBO0UxSTRreEJuQzs7RTBJM2t4QkU7SUFBaUMsZ0NBQUE7RTFJK2t4Qm5DOztFMEk5a3hCRTtJQUFpQywrQkFBQTtFMUlrbHhCbkM7O0UwSWhseEJFO0lBQWtDLG9DQUFBO0UxSW9seEJwQzs7RTBJbmx4QkU7SUFBa0Msa0NBQUE7RTFJdWx4QnBDOztFMEl0bHhCRTtJQUFrQyxnQ0FBQTtFMUkwbHhCcEM7O0UwSXpseEJFO0lBQWtDLHVDQUFBO0UxSTZseEJwQzs7RTBJNWx4QkU7SUFBa0Msc0NBQUE7RTFJZ214QnBDOztFMEkvbHhCRTtJQUFrQyxpQ0FBQTtFMUltbXhCcEM7O0UwSWpteEJFO0lBQWdDLDJCQUFBO0UxSXFteEJsQzs7RTBJcG14QkU7SUFBZ0MsaUNBQUE7RTFJd214QmxDOztFMEl2bXhCRTtJQUFnQywrQkFBQTtFMUkybXhCbEM7O0UwSTFteEJFO0lBQWdDLDZCQUFBO0UxSThteEJsQzs7RTBJN214QkU7SUFBZ0MsK0JBQUE7RTFJaW54QmxDOztFMElobnhCRTtJQUFnQyw4QkFBQTtFMUlvbnhCbEM7QUFDRjtBd0Q1bHhCSTtFa0YvREE7SUFBZ0MsOEJBQUE7RTFJK3B4QmxDOztFMEk5cHhCRTtJQUFnQyxpQ0FBQTtFMUlrcXhCbEM7O0UwSWpxeEJFO0lBQWdDLHNDQUFBO0UxSXFxeEJsQzs7RTBJcHF4QkU7SUFBZ0MseUNBQUE7RTFJd3F4QmxDOztFMEl0cXhCRTtJQUE4QiwwQkFBQTtFMUkwcXhCaEM7O0UwSXpxeEJFO0lBQThCLDRCQUFBO0UxSTZxeEJoQzs7RTBJNXF4QkU7SUFBOEIsa0NBQUE7RTFJZ3J4QmhDOztFMEkvcXhCRTtJQUE4Qix5QkFBQTtFMUltcnhCaEM7O0UwSWxyeEJFO0lBQThCLHVCQUFBO0UxSXNyeEJoQzs7RTBJcnJ4QkU7SUFBOEIsdUJBQUE7RTFJeXJ4QmhDOztFMEl4cnhCRTtJQUE4Qix5QkFBQTtFMUk0cnhCaEM7O0UwSTNyeEJFO0lBQThCLHlCQUFBO0UxSStyeEJoQzs7RTBJN3J4QkU7SUFBb0Msc0NBQUE7RTFJaXN4QnRDOztFMEloc3hCRTtJQUFvQyxvQ0FBQTtFMUlvc3hCdEM7O0UwSW5zeEJFO0lBQW9DLGtDQUFBO0UxSXVzeEJ0Qzs7RTBJdHN4QkU7SUFBb0MseUNBQUE7RTFJMHN4QnRDOztFMEl6c3hCRTtJQUFvQyx3Q0FBQTtFMUk2c3hCdEM7O0UwSTNzeEJFO0lBQWlDLGtDQUFBO0UxSStzeEJuQzs7RTBJOXN4QkU7SUFBaUMsZ0NBQUE7RTFJa3R4Qm5DOztFMElqdHhCRTtJQUFpQyw4QkFBQTtFMUlxdHhCbkM7O0UwSXB0eEJFO0lBQWlDLGdDQUFBO0UxSXd0eEJuQzs7RTBJdnR4QkU7SUFBaUMsK0JBQUE7RTFJMnR4Qm5DOztFMEl6dHhCRTtJQUFrQyxvQ0FBQTtFMUk2dHhCcEM7O0UwSTV0eEJFO0lBQWtDLGtDQUFBO0UxSWd1eEJwQzs7RTBJL3R4QkU7SUFBa0MsZ0NBQUE7RTFJbXV4QnBDOztFMElsdXhCRTtJQUFrQyx1Q0FBQTtFMUlzdXhCcEM7O0UwSXJ1eEJFO0lBQWtDLHNDQUFBO0UxSXl1eEJwQzs7RTBJeHV4QkU7SUFBa0MsaUNBQUE7RTFJNHV4QnBDOztFMEkxdXhCRTtJQUFnQywyQkFBQTtFMUk4dXhCbEM7O0UwSTd1eEJFO0lBQWdDLGlDQUFBO0UxSWl2eEJsQzs7RTBJaHZ4QkU7SUFBZ0MsK0JBQUE7RTFJb3Z4QmxDOztFMEludnhCRTtJQUFnQyw2QkFBQTtFMUl1dnhCbEM7O0UwSXR2eEJFO0lBQWdDLCtCQUFBO0UxSTB2eEJsQzs7RTBJenZ4QkU7SUFBZ0MsOEJBQUE7RTFJNnZ4QmxDO0FBQ0Y7QXdEcnV4Qkk7RWtGL0RBO0lBQWdDLDhCQUFBO0UxSXd5eEJsQzs7RTBJdnl4QkU7SUFBZ0MsaUNBQUE7RTFJMnl4QmxDOztFMEkxeXhCRTtJQUFnQyxzQ0FBQTtFMUk4eXhCbEM7O0UwSTd5eEJFO0lBQWdDLHlDQUFBO0UxSWl6eEJsQzs7RTBJL3l4QkU7SUFBOEIsMEJBQUE7RTFJbXp4QmhDOztFMElsenhCRTtJQUE4Qiw0QkFBQTtFMUlzenhCaEM7O0UwSXJ6eEJFO0lBQThCLGtDQUFBO0UxSXl6eEJoQzs7RTBJeHp4QkU7SUFBOEIseUJBQUE7RTFJNHp4QmhDOztFMEkzenhCRTtJQUE4Qix1QkFBQTtFMUkrenhCaEM7O0UwSTl6eEJFO0lBQThCLHVCQUFBO0UxSWsweEJoQzs7RTBJajB4QkU7SUFBOEIseUJBQUE7RTFJcTB4QmhDOztFMElwMHhCRTtJQUE4Qix5QkFBQTtFMUl3MHhCaEM7O0UwSXQweEJFO0lBQW9DLHNDQUFBO0UxSTAweEJ0Qzs7RTBJejB4QkU7SUFBb0Msb0NBQUE7RTFJNjB4QnRDOztFMEk1MHhCRTtJQUFvQyxrQ0FBQTtFMUlnMXhCdEM7O0UwSS8weEJFO0lBQW9DLHlDQUFBO0UxSW0xeEJ0Qzs7RTBJbDF4QkU7SUFBb0Msd0NBQUE7RTFJczF4QnRDOztFMElwMXhCRTtJQUFpQyxrQ0FBQTtFMUl3MXhCbkM7O0UwSXYxeEJFO0lBQWlDLGdDQUFBO0UxSTIxeEJuQzs7RTBJMTF4QkU7SUFBaUMsOEJBQUE7RTFJODF4Qm5DOztFMEk3MXhCRTtJQUFpQyxnQ0FBQTtFMUlpMnhCbkM7O0UwSWgyeEJFO0lBQWlDLCtCQUFBO0UxSW8yeEJuQzs7RTBJbDJ4QkU7SUFBa0Msb0NBQUE7RTFJczJ4QnBDOztFMElyMnhCRTtJQUFrQyxrQ0FBQTtFMUl5MnhCcEM7O0UwSXgyeEJFO0lBQWtDLGdDQUFBO0UxSTQyeEJwQzs7RTBJMzJ4QkU7SUFBa0MsdUNBQUE7RTFJKzJ4QnBDOztFMEk5MnhCRTtJQUFrQyxzQ0FBQTtFMUlrM3hCcEM7O0UwSWozeEJFO0lBQWtDLGlDQUFBO0UxSXEzeEJwQzs7RTBJbjN4QkU7SUFBZ0MsMkJBQUE7RTFJdTN4QmxDOztFMEl0M3hCRTtJQUFnQyxpQ0FBQTtFMUkwM3hCbEM7O0UwSXozeEJFO0lBQWdDLCtCQUFBO0UxSTYzeEJsQzs7RTBJNTN4QkU7SUFBZ0MsNkJBQUE7RTFJZzR4QmxDOztFMEkvM3hCRTtJQUFnQywrQkFBQTtFMUltNHhCbEM7O0UwSWw0eEJFO0lBQWdDLDhCQUFBO0UxSXM0eEJsQztBQUNGO0FnQm43eEJRO0UySElBLHNCQUFBO0EzSWs3eEJSO0FpQnQ3eEJRO0UwSE9BLHVCQUFBO0EzSWs3eEJSO0FnQno3eEJRO0UySFlBLHVCQUFBO0EzSWk3eEJSO0FpQjc3eEJRO0UwSGVBLHNCQUFBO0EzSWk3eEJSO0EySTk2eEJJO0VBQXdCLHNCQUFBO0EzSWs3eEI1QjtBd0QvM3hCSTtFeENyRUk7STJISUEsc0JBQUE7RTNJcTh4Qk47RWlCejh4Qk07STBIT0EsdUJBQUE7RTNJcTh4Qk47O0VnQjU4eEJNO0kySFlBLHVCQUFBO0UzSW84eEJOO0VpQmg5eEJNO0kwSGVBLHNCQUFBO0UzSW84eEJOOztFMklqOHhCRTtJQUF3QixzQkFBQTtFM0lxOHhCMUI7QUFDRjtBd0RuNXhCSTtFeENyRUk7STJISUEsc0JBQUE7RTNJdzl4Qk47RWlCNTl4Qk07STBIT0EsdUJBQUE7RTNJdzl4Qk47O0VnQi85eEJNO0kySFlBLHVCQUFBO0UzSXU5eEJOO0VpQm4reEJNO0kwSGVBLHNCQUFBO0UzSXU5eEJOOztFMklwOXhCRTtJQUF3QixzQkFBQTtFM0l3OXhCMUI7QUFDRjtBd0R0NnhCSTtFeENyRUk7STJISUEsc0JBQUE7RTNJMit4Qk47RWlCLyt4Qk07STBIT0EsdUJBQUE7RTNJMit4Qk47O0VnQmwveEJNO0kySFlBLHVCQUFBO0UzSTAreEJOO0VpQnQveEJNO0kwSGVBLHNCQUFBO0UzSTAreEJOOztFMkl2K3hCRTtJQUF3QixzQkFBQTtFM0kyK3hCMUI7QUFDRjtBd0R6N3hCSTtFeENyRUk7STJISUEsc0JBQUE7RTNJOC94Qk47RWlCbGd5Qk07STBIT0EsdUJBQUE7RTNJOC94Qk47O0VnQnJneUJNO0kySFlBLHVCQUFBO0UzSTYveEJOO0VpQnpneUJNO0kwSGVBLHNCQUFBO0UzSTYveEJOOztFMkkxL3hCRTtJQUF3QixzQkFBQTtFM0k4L3hCMUI7QUFDRjtBd0Q1OHhCSTtFeENyRUk7STJISUEsc0JBQUE7RTNJaWh5Qk47RWlCcmh5Qk07STBIT0EsdUJBQUE7RTNJaWh5Qk47O0VnQnhoeUJNO0kySFlBLHVCQUFBO0UzSWdoeUJOO0VpQjVoeUJNO0kwSGVBLHNCQUFBO0UzSWdoeUJOOztFMkk3Z3lCRTtJQUF3QixzQkFBQTtFM0lpaHlCMUI7QUFDRjtBNElyaXlCRTtFQUF5QixtQ0FBQTtLQUFBLGdDQUFBO1VBQUEsMkJBQUE7QTVJd2l5QjNCO0E0SXhpeUJFO0VBQXlCLG9DQUFBO0tBQUEsaUNBQUE7TUFBQSxnQ0FBQTtVQUFBLDRCQUFBO0E1STRpeUIzQjtBNEk1aXlCRTtFQUF5QixvQ0FBQTtLQUFBLGlDQUFBO01BQUEsZ0NBQUE7VUFBQSw0QkFBQTtBNUlnanlCM0I7QTZJaGp5QkU7RUFBc0IseUJBQUE7QTdJb2p5QnhCO0E2SXBqeUJFO0VBQXNCLDJCQUFBO0E3SXdqeUJ4QjtBOEl2anlCRTtFQUF5QiwyQkFBQTtBOUkyanlCM0I7QThJM2p5QkU7RUFBeUIsNkJBQUE7QTlJK2p5QjNCO0E4SS9qeUJFO0VBQXlCLDZCQUFBO0E5SW1reUIzQjtBOElua3lCRTtFQUF5QiwwQkFBQTtBOUl1a3lCM0I7QThJdmt5QkU7RUFBeUIsbUNBQUE7RUFBQSwyQkFBQTtBOUkya3lCM0I7QThJdGt5QkE7RUFDRSxlQUFBO0VBQ0EsTUFBQTtFQUNBLFFBQUE7RUFDQSxPQUFBO0VBQ0EsYXBITnVCO0ExQitreUJ6QjtBOEl0a3lCQTtFQUNFLGVBQUE7RUFDQSxRQUFBO0VBQ0EsU0FBQTtFQUNBLE9BQUE7RUFDQSxhcEhkdUI7QTFCdWx5QnpCO0E4SXJreUJFO0VBREY7SUFFSSx3QkFBQTtJQUFBLGdCQUFBO0lBQ0EsTUFBQTtJQUNBLGFwSHRCcUI7RTFCK2x5QnZCO0FBQ0Y7QStJbm15QkE7RUNFRSxrQkFBQTtFQUNBLFVBQUE7RUFDQSxXQUFBO0VBQ0EsVUFBQTtFQUNBLFlBQUE7RUFDQSxnQkFBQTtFQUNBLHNCQUFBO0VBQ0EsbUJBQUE7RUFDQSxTQUFBO0FoSnFteUJGO0FnSjNseUJFO0VBRUUsZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLGlCQUFBO0VBQ0EsVUFBQTtFQUNBLG1CQUFBO0FoSjZseUJKO0FpSjFueUJBO0VBQWEsK0RBQUE7QWpKOG55QmI7QWlKN255QkE7RUFBVSx5REFBQTtBakppb3lCVjtBaUpob3lCQTtFQUFhLHdEQUFBO0FqSm9veUJiO0FpSm5veUJBO0VBQWUsMkJBQUE7QWpKdW95QmY7QWtKdG95Qkk7RUFBdUIscUJBQUE7QWxKMG95QjNCO0FrSjFveUJJO0VBQXVCLHFCQUFBO0FsSjhveUIzQjtBa0o5b3lCSTtFQUF1QixxQkFBQTtBbEprcHlCM0I7QWtKbHB5Qkk7RUFBdUIsc0JBQUE7QWxKc3B5QjNCO0FrSnRweUJJO0VBQXVCLHNCQUFBO0FsSjBweUIzQjtBa0oxcHlCSTtFQUF1QixzQkFBQTtBbEo4cHlCM0I7QWtKOXB5Qkk7RUFBdUIsc0JBQUE7QWxKa3F5QjNCO0FrSmxxeUJJO0VBQXVCLHNCQUFBO0FsSnNxeUIzQjtBa0p0cXlCSTtFQUF1Qix1QkFBQTtBbEowcXlCM0I7QWtKMXF5Qkk7RUFBdUIsdUJBQUE7QWxKOHF5QjNCO0FrSjFxeUJBO0VBQVUsMEJBQUE7QWxKOHF5QlY7QWtKN3F5QkE7RUFBVSwyQkFBQTtBbEppcnlCVjtBa0o3cXlCQTtFQUFjLDJCQUFBO0FsSmlyeUJkO0FrSmhyeUJBO0VBQWMsNEJBQUE7QWxKb3J5QmQ7QWtKbHJ5QkE7RUFBVSx1QkFBQTtBbEpzcnlCVjtBa0pycnlCQTtFQUFVLHdCQUFBO0FsSnlyeUJWO0FtSmxzeUJRO0VBQWdDLG9CQUFBO0FuSnNzeUJ4QztBbUpyc3lCUTs7RUFFRSx3QkFBQTtBbkp3c3lCVjtBbUp0c3lCUTs7RUFFRSwwQkFBQTtBbkp5c3lCVjtBbUp2c3lCUTs7RUFFRSwyQkFBQTtBbkowc3lCVjtBbUp4c3lCUTs7RUFFRSx5QkFBQTtBbkoyc3lCVjtBZ0JodXlCUTtFbUkwQkkseUJBQUE7QW5KMHN5Qlo7QWlCcHV5QlE7RWtJNkJJLDBCQUFBO0FuSjBzeUJaO0FnQnZ1eUJRO0VtSWtDSSwwQkFBQTtBbkp5c3lCWjtBaUIzdXlCUTtFa0lxQ0kseUJBQUE7QW5KeXN5Qlo7QW1KeHV5QlE7RUFBZ0MsMEJBQUE7QW5KNHV5QnhDO0FtSjN1eUJROztFQUVFLDhCQUFBO0FuSjh1eUJWO0FtSjV1eUJROztFQUVFLGdDQUFBO0FuSit1eUJWO0FtSjd1eUJROztFQUVFLGlDQUFBO0FuSmd2eUJWO0FtSjl1eUJROztFQUVFLCtCQUFBO0FuSml2eUJWO0FnQnR3eUJRO0VtSTBCSSwrQkFBQTtBbkpndnlCWjtBaUIxd3lCUTtFa0k2QkksZ0NBQUE7QW5KZ3Z5Qlo7QWdCN3d5QlE7RW1Ja0NJLGdDQUFBO0FuSit1eUJaO0FpQmp4eUJRO0VrSXFDSSwrQkFBQTtBbkordXlCWjtBbUo5d3lCUTtFQUFnQyx5QkFBQTtBbkpreHlCeEM7QW1Kanh5QlE7O0VBRUUsNkJBQUE7QW5Kb3h5QlY7QW1KbHh5QlE7O0VBRUUsK0JBQUE7QW5KcXh5QlY7QW1Kbnh5QlE7O0VBRUUsZ0NBQUE7QW5Kc3h5QlY7QW1KcHh5QlE7O0VBRUUsOEJBQUE7QW5KdXh5QlY7QWdCNXl5QlE7RW1JMEJJLDhCQUFBO0FuSnN4eUJaO0FpQmh6eUJRO0VrSTZCSSwrQkFBQTtBbkpzeHlCWjtBZ0JuenlCUTtFbUlrQ0ksK0JBQUE7QW5KcXh5Qlo7QWlCdnp5QlE7RWtJcUNJLDhCQUFBO0FuSnF4eUJaO0FtSnB6eUJRO0VBQWdDLHVCQUFBO0FuSnd6eUJ4QztBbUp2enlCUTs7RUFFRSwyQkFBQTtBbkowenlCVjtBbUp4enlCUTs7RUFFRSw2QkFBQTtBbkoyenlCVjtBbUp6enlCUTs7RUFFRSw4QkFBQTtBbko0enlCVjtBbUoxenlCUTs7RUFFRSw0QkFBQTtBbko2enlCVjtBZ0JsMXlCUTtFbUkwQkksNEJBQUE7QW5KNHp5Qlo7QWlCdDF5QlE7RWtJNkJJLDZCQUFBO0FuSjR6eUJaO0FnQnoxeUJRO0VtSWtDSSw2QkFBQTtBbkoyenlCWjtBaUI3MXlCUTtFa0lxQ0ksNEJBQUE7QW5KMnp5Qlo7QW1KMTF5QlE7RUFBZ0MseUJBQUE7QW5KODF5QnhDO0FtSjcxeUJROztFQUVFLDZCQUFBO0FuSmcyeUJWO0FtSjkxeUJROztFQUVFLCtCQUFBO0FuSmkyeUJWO0FtSi8xeUJROztFQUVFLGdDQUFBO0FuSmsyeUJWO0FtSmgyeUJROztFQUVFLDhCQUFBO0FuSm0yeUJWO0FnQngzeUJRO0VtSTBCSSw4QkFBQTtBbkprMnlCWjtBaUI1M3lCUTtFa0k2QkksK0JBQUE7QW5KazJ5Qlo7QWdCLzN5QlE7RW1Ja0NJLCtCQUFBO0FuSmkyeUJaO0FpQm40eUJRO0VrSXFDSSw4QkFBQTtBbkppMnlCWjtBbUpoNHlCUTtFQUFnQyx1QkFBQTtBbkpvNHlCeEM7QW1KbjR5QlE7O0VBRUUsMkJBQUE7QW5KczR5QlY7QW1KcDR5QlE7O0VBRUUsNkJBQUE7QW5KdTR5QlY7QW1KcjR5QlE7O0VBRUUsOEJBQUE7QW5KdzR5QlY7QW1KdDR5QlE7O0VBRUUsNEJBQUE7QW5KeTR5QlY7QWdCOTV5QlE7RW1JMEJJLDRCQUFBO0FuSnc0eUJaO0FpQmw2eUJRO0VrSTZCSSw2QkFBQTtBbkp3NHlCWjtBZ0JyNnlCUTtFbUlrQ0ksNkJBQUE7QW5KdTR5Qlo7QWlCejZ5QlE7RWtJcUNJLDRCQUFBO0FuSnU0eUJaO0FtSnQ2eUJRO0VBQWdDLHFCQUFBO0FuSjA2eUJ4QztBbUp6NnlCUTs7RUFFRSx5QkFBQTtBbko0NnlCVjtBbUoxNnlCUTs7RUFFRSwyQkFBQTtBbko2NnlCVjtBbUozNnlCUTs7RUFFRSw0QkFBQTtBbko4NnlCVjtBbUo1NnlCUTs7RUFFRSwwQkFBQTtBbkorNnlCVjtBZ0JwOHlCUTtFbUkwQkksMEJBQUE7QW5KODZ5Qlo7QWlCeDh5QlE7RWtJNkJJLDJCQUFBO0FuSjg2eUJaO0FnQjM4eUJRO0VtSWtDSSwyQkFBQTtBbko2NnlCWjtBaUIvOHlCUTtFa0lxQ0ksMEJBQUE7QW5KNjZ5Qlo7QW1KNTh5QlE7RUFBZ0MsMkJBQUE7QW5KZzl5QnhDO0FtSi84eUJROztFQUVFLCtCQUFBO0FuSms5eUJWO0FtSmg5eUJROztFQUVFLGlDQUFBO0FuSm05eUJWO0FtSmo5eUJROztFQUVFLGtDQUFBO0FuSm85eUJWO0FtSmw5eUJROztFQUVFLGdDQUFBO0FuSnE5eUJWO0FnQjEreUJRO0VtSTBCSSxnQ0FBQTtBbkpvOXlCWjtBaUI5K3lCUTtFa0k2QkksaUNBQUE7QW5Kbzl5Qlo7QWdCai95QlE7RW1Ja0NJLGlDQUFBO0FuSm05eUJaO0FpQnIveUJRO0VrSXFDSSxnQ0FBQTtBbkptOXlCWjtBbUpsL3lCUTtFQUFnQywwQkFBQTtBbkpzL3lCeEM7QW1Kci95QlE7O0VBRUUsOEJBQUE7QW5Kdy95QlY7QW1KdC95QlE7O0VBRUUsZ0NBQUE7QW5KeS95QlY7QW1Kdi95QlE7O0VBRUUsaUNBQUE7QW5KMC95QlY7QW1KeC95QlE7O0VBRUUsK0JBQUE7QW5KMi95QlY7QWdCaGh6QlE7RW1JMEJJLCtCQUFBO0FuSjAveUJaO0FpQnBoekJRO0VrSTZCSSxnQ0FBQTtBbkowL3lCWjtBZ0J2aHpCUTtFbUlrQ0ksZ0NBQUE7QW5KeS95Qlo7QWlCM2h6QlE7RWtJcUNJLCtCQUFBO0FuSnkveUJaO0FtSnhoekJRO0VBQWdDLHdCQUFBO0FuSjRoekJ4QztBbUozaHpCUTs7RUFFRSw0QkFBQTtBbko4aHpCVjtBbUo1aHpCUTs7RUFFRSw4QkFBQTtBbkoraHpCVjtBbUo3aHpCUTs7RUFFRSwrQkFBQTtBbkpnaXpCVjtBbUo5aHpCUTs7RUFFRSw2QkFBQTtBbkppaXpCVjtBZ0J0anpCUTtFbUkwQkksNkJBQUE7QW5KZ2l6Qlo7QWlCMWp6QlE7RWtJNkJJLDhCQUFBO0FuSmdpekJaO0FnQjdqekJRO0VtSWtDSSw4QkFBQTtBbkoraHpCWjtBaUJqa3pCUTtFa0lxQ0ksNkJBQUE7QW5KK2h6Qlo7QW1KOWp6QlE7RUFBZ0MsMEJBQUE7QW5Ka2t6QnhDO0FtSmprekJROztFQUVFLDhCQUFBO0FuSm9rekJWO0FtSmxrekJROztFQUVFLGdDQUFBO0FuSnFrekJWO0FtSm5rekJROztFQUVFLGlDQUFBO0FuSnNrekJWO0FtSnBrekJROztFQUVFLCtCQUFBO0FuSnVrekJWO0FnQjVsekJRO0VtSTBCSSwrQkFBQTtBbkpza3pCWjtBaUJobXpCUTtFa0k2QkksZ0NBQUE7QW5Kc2t6Qlo7QWdCbm16QlE7RW1Ja0NJLGdDQUFBO0FuSnFrekJaO0FpQnZtekJRO0VrSXFDSSwrQkFBQTtBbkpxa3pCWjtBbUpwbXpCUTtFQUFnQyx3QkFBQTtBbkp3bXpCeEM7QW1Kdm16QlE7O0VBRUUsNEJBQUE7QW5KMG16QlY7QW1KeG16QlE7O0VBRUUsOEJBQUE7QW5KMm16QlY7QW1Kem16QlE7O0VBRUUsK0JBQUE7QW5KNG16QlY7QW1KMW16QlE7O0VBRUUsNkJBQUE7QW5KNm16QlY7QWdCbG96QlE7RW1JMEJJLDZCQUFBO0FuSjRtekJaO0FpQnRvekJRO0VrSTZCSSw4QkFBQTtBbko0bXpCWjtBZ0J6b3pCUTtFbUlrQ0ksOEJBQUE7QW5KMm16Qlo7QWlCN296QlE7RWtJcUNJLDZCQUFBO0FuSjJtekJaO0FtSmxtekJRO0VBQXdCLDJCQUFBO0FuSnNtekJoQztBbUpybXpCUTs7RUFFRSwrQkFBQTtBbkp3bXpCVjtBbUp0bXpCUTs7RUFFRSxpQ0FBQTtBbkp5bXpCVjtBbUp2bXpCUTs7RUFFRSxrQ0FBQTtBbkowbXpCVjtBbUp4bXpCUTs7RUFFRSxnQ0FBQTtBbkoybXpCVjtBZ0J4cXpCUTtFbUlrRUksZ0NBQUE7QW5KMG16Qlo7QWlCNXF6QlE7RWtJcUVJLGlDQUFBO0FuSjBtekJaO0FnQi9xekJRO0VtSTBFSSxpQ0FBQTtBbkp5bXpCWjtBaUJucnpCUTtFa0k2RUksZ0NBQUE7QW5KeW16Qlo7QW1KeG96QlE7RUFBd0IsMEJBQUE7QW5KNG96QmhDO0FtSjNvekJROztFQUVFLDhCQUFBO0FuSjhvekJWO0FtSjVvekJROztFQUVFLGdDQUFBO0FuSitvekJWO0FtSjdvekJROztFQUVFLGlDQUFBO0FuSmdwekJWO0FtSjlvekJROztFQUVFLCtCQUFBO0FuSmlwekJWO0FnQjlzekJRO0VtSWtFSSwrQkFBQTtBbkpncHpCWjtBaUJsdHpCUTtFa0lxRUksZ0NBQUE7QW5KZ3B6Qlo7QWdCcnR6QlE7RW1JMEVJLGdDQUFBO0FuSitvekJaO0FpQnp0ekJRO0VrSTZFSSwrQkFBQTtBbkorb3pCWjtBbUo5cXpCUTtFQUF3Qix3QkFBQTtBbkprcnpCaEM7QW1KanJ6QlE7O0VBRUUsNEJBQUE7QW5Kb3J6QlY7QW1KbHJ6QlE7O0VBRUUsOEJBQUE7QW5KcXJ6QlY7QW1KbnJ6QlE7O0VBRUUsK0JBQUE7QW5Kc3J6QlY7QW1KcHJ6QlE7O0VBRUUsNkJBQUE7QW5KdXJ6QlY7QWdCcHZ6QlE7RW1Ja0VJLDZCQUFBO0FuSnNyekJaO0FpQnh2ekJRO0VrSXFFSSw4QkFBQTtBbkpzcnpCWjtBZ0IzdnpCUTtFbUkwRUksOEJBQUE7QW5KcXJ6Qlo7QWlCL3Z6QlE7RWtJNkVJLDZCQUFBO0FuSnFyekJaO0FtSnB0ekJRO0VBQXdCLDBCQUFBO0FuSnd0ekJoQztBbUp2dHpCUTs7RUFFRSw4QkFBQTtBbkowdHpCVjtBbUp4dHpCUTs7RUFFRSxnQ0FBQTtBbkoydHpCVjtBbUp6dHpCUTs7RUFFRSxpQ0FBQTtBbko0dHpCVjtBbUoxdHpCUTs7RUFFRSwrQkFBQTtBbko2dHpCVjtBZ0IxeHpCUTtFbUlrRUksK0JBQUE7QW5KNHR6Qlo7QWlCOXh6QlE7RWtJcUVJLGdDQUFBO0FuSjR0ekJaO0FnQmp5ekJRO0VtSTBFSSxnQ0FBQTtBbkoydHpCWjtBaUJyeXpCUTtFa0k2RUksK0JBQUE7QW5KMnR6Qlo7QW1KMXZ6QlE7RUFBd0Isd0JBQUE7QW5KOHZ6QmhDO0FtSjd2ekJROztFQUVFLDRCQUFBO0FuSmd3ekJWO0FtSjl2ekJROztFQUVFLDhCQUFBO0FuSml3ekJWO0FtSi92ekJROztFQUVFLCtCQUFBO0FuSmt3ekJWO0FtSmh3ekJROztFQUVFLDZCQUFBO0FuSm13ekJWO0FnQmgwekJRO0VtSWtFSSw2QkFBQTtBbkprd3pCWjtBaUJwMHpCUTtFa0lxRUksOEJBQUE7QW5Ka3d6Qlo7QWdCdjB6QlE7RW1JMEVJLDhCQUFBO0FuSml3ekJaO0FpQjMwekJRO0VrSTZFSSw2QkFBQTtBbkppd3pCWjtBbUoxdnpCSTtFQUFtQix1QkFBQTtBbko4dnpCdkI7QW1KN3Z6Qkk7O0VBRUUsMkJBQUE7QW5KZ3d6Qk47QW1KOXZ6Qkk7O0VBRUUsNkJBQUE7QW5KaXd6Qk47QW1KL3Z6Qkk7O0VBRUUsOEJBQUE7QW5Ka3d6Qk47QW1KaHd6Qkk7O0VBRUUsNEJBQUE7QW5KbXd6Qk47QWdCdDJ6QlE7RW1JeUdBLDRCQUFBO0FuSml3ekJSO0FpQjEyekJRO0VrSTRHQSw2QkFBQTtBbkppd3pCUjtBZ0I3MnpCUTtFbUlpSEEsNkJBQUE7QW5KZ3d6QlI7QWlCajN6QlE7RWtJb0hBLDRCQUFBO0FuSmd3ekJSO0F3RC95ekJJO0UyRi9ESTtJQUFnQyxvQkFBQTtFbkptM3pCdEM7O0VtSmwzekJNOztJQUVFLHdCQUFBO0VuSnEzekJSOztFbUpuM3pCTTs7SUFFRSwwQkFBQTtFbkpzM3pCUjs7RW1KcDN6Qk07O0lBRUUsMkJBQUE7RW5KdTN6QlI7O0VtSnIzekJNOztJQUVFLHlCQUFBO0VuSnczekJSOztFZ0I3NHpCTTtJbUkwQkkseUJBQUE7RW5KdTN6QlY7RWlCajV6Qk07SWtJNkJJLDBCQUFBO0VuSnUzekJWOztFZ0JwNXpCTTtJbUlrQ0ksMEJBQUE7RW5KczN6QlY7RWlCeDV6Qk07SWtJcUNJLHlCQUFBO0VuSnMzekJWOztFbUpyNXpCTTtJQUFnQywwQkFBQTtFbkp5NXpCdEM7O0VtSng1ekJNOztJQUVFLDhCQUFBO0VuSjI1ekJSOztFbUp6NXpCTTs7SUFFRSxnQ0FBQTtFbko0NXpCUjs7RW1KMTV6Qk07O0lBRUUsaUNBQUE7RW5KNjV6QlI7O0VtSjM1ekJNOztJQUVFLCtCQUFBO0VuSjg1ekJSOztFZ0JuN3pCTTtJbUkwQkksK0JBQUE7RW5KNjV6QlY7RWlCdjd6Qk07SWtJNkJJLGdDQUFBO0VuSjY1ekJWOztFZ0IxN3pCTTtJbUlrQ0ksZ0NBQUE7RW5KNDV6QlY7RWlCOTd6Qk07SWtJcUNJLCtCQUFBO0VuSjQ1ekJWOztFbUozN3pCTTtJQUFnQyx5QkFBQTtFbkorN3pCdEM7O0VtSjk3ekJNOztJQUVFLDZCQUFBO0VuSmk4ekJSOztFbUovN3pCTTs7SUFFRSwrQkFBQTtFbkprOHpCUjs7RW1KaDh6Qk07O0lBRUUsZ0NBQUE7RW5KbTh6QlI7O0VtSmo4ekJNOztJQUVFLDhCQUFBO0VuSm84ekJSOztFZ0J6OXpCTTtJbUkwQkksOEJBQUE7RW5KbTh6QlY7RWlCNzl6Qk07SWtJNkJJLCtCQUFBO0VuSm04ekJWOztFZ0JoK3pCTTtJbUlrQ0ksK0JBQUE7RW5Kazh6QlY7RWlCcCt6Qk07SWtJcUNJLDhCQUFBO0VuSms4ekJWOztFbUpqK3pCTTtJQUFnQyx1QkFBQTtFbkpxK3pCdEM7O0VtSnArekJNOztJQUVFLDJCQUFBO0VuSnUrekJSOztFbUpyK3pCTTs7SUFFRSw2QkFBQTtFbkp3K3pCUjs7RW1KdCt6Qk07O0lBRUUsOEJBQUE7RW5KeSt6QlI7O0VtSnYrekJNOztJQUVFLDRCQUFBO0VuSjArekJSOztFZ0IvL3pCTTtJbUkwQkksNEJBQUE7RW5KeSt6QlY7RWlCbmcwQk07SWtJNkJJLDZCQUFBO0VuSnkrekJWOztFZ0J0ZzBCTTtJbUlrQ0ksNkJBQUE7RW5Kdyt6QlY7RWlCMWcwQk07SWtJcUNJLDRCQUFBO0VuSncrekJWOztFbUp2ZzBCTTtJQUFnQyx5QkFBQTtFbkoyZzBCdEM7O0VtSjFnMEJNOztJQUVFLDZCQUFBO0VuSjZnMEJSOztFbUozZzBCTTs7SUFFRSwrQkFBQTtFbko4ZzBCUjs7RW1KNWcwQk07O0lBRUUsZ0NBQUE7RW5KK2cwQlI7O0VtSjdnMEJNOztJQUVFLDhCQUFBO0VuSmdoMEJSOztFZ0JyaTBCTTtJbUkwQkksOEJBQUE7RW5KK2cwQlY7RWlCemkwQk07SWtJNkJJLCtCQUFBO0VuSitnMEJWOztFZ0I1aTBCTTtJbUlrQ0ksK0JBQUE7RW5KOGcwQlY7RWlCaGowQk07SWtJcUNJLDhCQUFBO0VuSjhnMEJWOztFbUo3aTBCTTtJQUFnQyx1QkFBQTtFbkppajBCdEM7O0VtSmhqMEJNOztJQUVFLDJCQUFBO0VuSm1qMEJSOztFbUpqajBCTTs7SUFFRSw2QkFBQTtFbkpvajBCUjs7RW1KbGowQk07O0lBRUUsOEJBQUE7RW5KcWowQlI7O0VtSm5qMEJNOztJQUVFLDRCQUFBO0VuSnNqMEJSOztFZ0IzazBCTTtJbUkwQkksNEJBQUE7RW5KcWowQlY7RWlCL2swQk07SWtJNkJJLDZCQUFBO0VuSnFqMEJWOztFZ0JsbDBCTTtJbUlrQ0ksNkJBQUE7RW5Kb2owQlY7RWlCdGwwQk07SWtJcUNJLDRCQUFBO0VuSm9qMEJWOztFbUpubDBCTTtJQUFnQyxxQkFBQTtFbkp1bDBCdEM7O0VtSnRsMEJNOztJQUVFLHlCQUFBO0VuSnlsMEJSOztFbUp2bDBCTTs7SUFFRSwyQkFBQTtFbkowbDBCUjs7RW1KeGwwQk07O0lBRUUsNEJBQUE7RW5KMmwwQlI7O0VtSnpsMEJNOztJQUVFLDBCQUFBO0VuSjRsMEJSOztFZ0JqbjBCTTtJbUkwQkksMEJBQUE7RW5KMmwwQlY7RWlCcm4wQk07SWtJNkJJLDJCQUFBO0VuSjJsMEJWOztFZ0J4bjBCTTtJbUlrQ0ksMkJBQUE7RW5KMGwwQlY7RWlCNW4wQk07SWtJcUNJLDBCQUFBO0VuSjBsMEJWOztFbUp6bjBCTTtJQUFnQywyQkFBQTtFbko2bjBCdEM7O0VtSjVuMEJNOztJQUVFLCtCQUFBO0VuSituMEJSOztFbUo3bjBCTTs7SUFFRSxpQ0FBQTtFbkpnbzBCUjs7RW1KOW4wQk07O0lBRUUsa0NBQUE7RW5KaW8wQlI7O0VtSi9uMEJNOztJQUVFLGdDQUFBO0VuSmtvMEJSOztFZ0J2cDBCTTtJbUkwQkksZ0NBQUE7RW5KaW8wQlY7RWlCM3AwQk07SWtJNkJJLGlDQUFBO0VuSmlvMEJWOztFZ0I5cDBCTTtJbUlrQ0ksaUNBQUE7RW5KZ28wQlY7RWlCbHEwQk07SWtJcUNJLGdDQUFBO0VuSmdvMEJWOztFbUovcDBCTTtJQUFnQywwQkFBQTtFbkptcTBCdEM7O0VtSmxxMEJNOztJQUVFLDhCQUFBO0VuSnFxMEJSOztFbUpucTBCTTs7SUFFRSxnQ0FBQTtFbkpzcTBCUjs7RW1KcHEwQk07O0lBRUUsaUNBQUE7RW5KdXEwQlI7O0VtSnJxMEJNOztJQUVFLCtCQUFBO0VuSndxMEJSOztFZ0I3cjBCTTtJbUkwQkksK0JBQUE7RW5KdXEwQlY7RWlCanMwQk07SWtJNkJJLGdDQUFBO0VuSnVxMEJWOztFZ0JwczBCTTtJbUlrQ0ksZ0NBQUE7RW5Kc3EwQlY7RWlCeHMwQk07SWtJcUNJLCtCQUFBO0VuSnNxMEJWOztFbUpyczBCTTtJQUFnQyx3QkFBQTtFbkp5czBCdEM7O0VtSnhzMEJNOztJQUVFLDRCQUFBO0VuSjJzMEJSOztFbUp6czBCTTs7SUFFRSw4QkFBQTtFbko0czBCUjs7RW1KMXMwQk07O0lBRUUsK0JBQUE7RW5KNnMwQlI7O0VtSjNzMEJNOztJQUVFLDZCQUFBO0VuSjhzMEJSOztFZ0JudTBCTTtJbUkwQkksNkJBQUE7RW5KNnMwQlY7RWlCdnUwQk07SWtJNkJJLDhCQUFBO0VuSjZzMEJWOztFZ0IxdTBCTTtJbUlrQ0ksOEJBQUE7RW5KNHMwQlY7RWlCOXUwQk07SWtJcUNJLDZCQUFBO0VuSjRzMEJWOztFbUozdTBCTTtJQUFnQywwQkFBQTtFbkordTBCdEM7O0VtSjl1MEJNOztJQUVFLDhCQUFBO0VuSml2MEJSOztFbUovdTBCTTs7SUFFRSxnQ0FBQTtFbkprdjBCUjs7RW1KaHYwQk07O0lBRUUsaUNBQUE7RW5KbXYwQlI7O0VtSmp2MEJNOztJQUVFLCtCQUFBO0VuSm92MEJSOztFZ0J6dzBCTTtJbUkwQkksK0JBQUE7RW5KbXYwQlY7RWlCN3cwQk07SWtJNkJJLGdDQUFBO0VuSm12MEJWOztFZ0JoeDBCTTtJbUlrQ0ksZ0NBQUE7RW5Ka3YwQlY7RWlCcHgwQk07SWtJcUNJLCtCQUFBO0VuSmt2MEJWOztFbUpqeDBCTTtJQUFnQyx3QkFBQTtFbkpxeDBCdEM7O0VtSnB4MEJNOztJQUVFLDRCQUFBO0VuSnV4MEJSOztFbUpyeDBCTTs7SUFFRSw4QkFBQTtFbkp3eDBCUjs7RW1KdHgwQk07O0lBRUUsK0JBQUE7RW5KeXgwQlI7O0VtSnZ4MEJNOztJQUVFLDZCQUFBO0VuSjB4MEJSOztFZ0IveTBCTTtJbUkwQkksNkJBQUE7RW5KeXgwQlY7RWlCbnowQk07SWtJNkJJLDhCQUFBO0VuSnl4MEJWOztFZ0J0ejBCTTtJbUlrQ0ksOEJBQUE7RW5Kd3gwQlY7RWlCMXowQk07SWtJcUNJLDZCQUFBO0VuSnd4MEJWOztFbUovdzBCTTtJQUF3QiwyQkFBQTtFbkpteDBCOUI7O0VtSmx4MEJNOztJQUVFLCtCQUFBO0VuSnF4MEJSOztFbUpueDBCTTs7SUFFRSxpQ0FBQTtFbkpzeDBCUjs7RW1KcHgwQk07O0lBRUUsa0NBQUE7RW5KdXgwQlI7O0VtSnJ4MEJNOztJQUVFLGdDQUFBO0VuSnd4MEJSOztFZ0JyMTBCTTtJbUlrRUksZ0NBQUE7RW5KdXgwQlY7RWlCejEwQk07SWtJcUVJLGlDQUFBO0VuSnV4MEJWOztFZ0I1MTBCTTtJbUkwRUksaUNBQUE7RW5Kc3gwQlY7RWlCaDIwQk07SWtJNkVJLGdDQUFBO0VuSnN4MEJWOztFbUpyejBCTTtJQUF3QiwwQkFBQTtFbkp5ejBCOUI7O0VtSnh6MEJNOztJQUVFLDhCQUFBO0VuSjJ6MEJSOztFbUp6ejBCTTs7SUFFRSxnQ0FBQTtFbko0ejBCUjs7RW1KMXowQk07O0lBRUUsaUNBQUE7RW5KNnowQlI7O0VtSjN6MEJNOztJQUVFLCtCQUFBO0VuSjh6MEJSOztFZ0IzMzBCTTtJbUlrRUksK0JBQUE7RW5KNnowQlY7RWlCLzMwQk07SWtJcUVJLGdDQUFBO0VuSjZ6MEJWOztFZ0JsNDBCTTtJbUkwRUksZ0NBQUE7RW5KNHowQlY7RWlCdDQwQk07SWtJNkVJLCtCQUFBO0VuSjR6MEJWOztFbUozMTBCTTtJQUF3Qix3QkFBQTtFbkorMTBCOUI7O0VtSjkxMEJNOztJQUVFLDRCQUFBO0VuSmkyMEJSOztFbUovMTBCTTs7SUFFRSw4QkFBQTtFbkprMjBCUjs7RW1KaDIwQk07O0lBRUUsK0JBQUE7RW5KbTIwQlI7O0VtSmoyMEJNOztJQUVFLDZCQUFBO0VuSm8yMEJSOztFZ0JqNjBCTTtJbUlrRUksNkJBQUE7RW5KbTIwQlY7RWlCcjYwQk07SWtJcUVJLDhCQUFBO0VuSm0yMEJWOztFZ0J4NjBCTTtJbUkwRUksOEJBQUE7RW5KazIwQlY7RWlCNTYwQk07SWtJNkVJLDZCQUFBO0VuSmsyMEJWOztFbUpqNDBCTTtJQUF3QiwwQkFBQTtFbkpxNDBCOUI7O0VtSnA0MEJNOztJQUVFLDhCQUFBO0VuSnU0MEJSOztFbUpyNDBCTTs7SUFFRSxnQ0FBQTtFbkp3NDBCUjs7RW1KdDQwQk07O0lBRUUsaUNBQUE7RW5KeTQwQlI7O0VtSnY0MEJNOztJQUVFLCtCQUFBO0VuSjA0MEJSOztFZ0J2ODBCTTtJbUlrRUksK0JBQUE7RW5KeTQwQlY7RWlCMzgwQk07SWtJcUVJLGdDQUFBO0VuSnk0MEJWOztFZ0I5ODBCTTtJbUkwRUksZ0NBQUE7RW5KdzQwQlY7RWlCbDkwQk07SWtJNkVJLCtCQUFBO0VuSnc0MEJWOztFbUp2NjBCTTtJQUF3Qix3QkFBQTtFbkoyNjBCOUI7O0VtSjE2MEJNOztJQUVFLDRCQUFBO0VuSjY2MEJSOztFbUozNjBCTTs7SUFFRSw4QkFBQTtFbko4NjBCUjs7RW1KNTYwQk07O0lBRUUsK0JBQUE7RW5KKzYwQlI7O0VtSjc2MEJNOztJQUVFLDZCQUFBO0VuSmc3MEJSOztFZ0I3KzBCTTtJbUlrRUksNkJBQUE7RW5KKzYwQlY7RWlCai8wQk07SWtJcUVJLDhCQUFBO0VuSis2MEJWOztFZ0JwLzBCTTtJbUkwRUksOEJBQUE7RW5KODYwQlY7RWlCeC8wQk07SWtJNkVJLDZCQUFBO0VuSjg2MEJWOztFbUp2NjBCRTtJQUFtQix1QkFBQTtFbkoyNjBCckI7O0VtSjE2MEJFOztJQUVFLDJCQUFBO0VuSjY2MEJKOztFbUozNjBCRTs7SUFFRSw2QkFBQTtFbko4NjBCSjs7RW1KNTYwQkU7O0lBRUUsOEJBQUE7RW5KKzYwQko7O0VtSjc2MEJFOztJQUVFLDRCQUFBO0VuSmc3MEJKOztFZ0JuaDFCTTtJbUl5R0EsNEJBQUE7RW5KODYwQk47RWlCdmgxQk07SWtJNEdBLDZCQUFBO0VuSjg2MEJOOztFZ0IxaDFCTTtJbUlpSEEsNkJBQUE7RW5KNjYwQk47RWlCOWgxQk07SWtJb0hBLDRCQUFBO0VuSjY2MEJOO0FBQ0Y7QXdENzkwQkk7RTJGL0RJO0lBQWdDLG9CQUFBO0VuSmdpMUJ0Qzs7RW1KL2gxQk07O0lBRUUsd0JBQUE7RW5Ka2kxQlI7O0VtSmhpMUJNOztJQUVFLDBCQUFBO0VuSm1pMUJSOztFbUpqaTFCTTs7SUFFRSwyQkFBQTtFbkpvaTFCUjs7RW1KbGkxQk07O0lBRUUseUJBQUE7RW5KcWkxQlI7O0VnQjFqMUJNO0ltSTBCSSx5QkFBQTtFbkpvaTFCVjtFaUI5ajFCTTtJa0k2QkksMEJBQUE7RW5Kb2kxQlY7O0VnQmprMUJNO0ltSWtDSSwwQkFBQTtFbkptaTFCVjtFaUJyazFCTTtJa0lxQ0kseUJBQUE7RW5KbWkxQlY7O0VtSmxrMUJNO0lBQWdDLDBCQUFBO0VuSnNrMUJ0Qzs7RW1KcmsxQk07O0lBRUUsOEJBQUE7RW5Kd2sxQlI7O0VtSnRrMUJNOztJQUVFLGdDQUFBO0VuSnlrMUJSOztFbUp2azFCTTs7SUFFRSxpQ0FBQTtFbkowazFCUjs7RW1KeGsxQk07O0lBRUUsK0JBQUE7RW5KMmsxQlI7O0VnQmhtMUJNO0ltSTBCSSwrQkFBQTtFbkowazFCVjtFaUJwbTFCTTtJa0k2QkksZ0NBQUE7RW5KMGsxQlY7O0VnQnZtMUJNO0ltSWtDSSxnQ0FBQTtFbkp5azFCVjtFaUIzbTFCTTtJa0lxQ0ksK0JBQUE7RW5KeWsxQlY7O0VtSnhtMUJNO0lBQWdDLHlCQUFBO0VuSjRtMUJ0Qzs7RW1KM20xQk07O0lBRUUsNkJBQUE7RW5KOG0xQlI7O0VtSjVtMUJNOztJQUVFLCtCQUFBO0VuSittMUJSOztFbUo3bTFCTTs7SUFFRSxnQ0FBQTtFbkpnbjFCUjs7RW1KOW0xQk07O0lBRUUsOEJBQUE7RW5KaW4xQlI7O0VnQnRvMUJNO0ltSTBCSSw4QkFBQTtFbkpnbjFCVjtFaUIxbzFCTTtJa0k2QkksK0JBQUE7RW5KZ24xQlY7O0VnQjdvMUJNO0ltSWtDSSwrQkFBQTtFbkorbTFCVjtFaUJqcDFCTTtJa0lxQ0ksOEJBQUE7RW5KK20xQlY7O0VtSjlvMUJNO0lBQWdDLHVCQUFBO0VuSmtwMUJ0Qzs7RW1KanAxQk07O0lBRUUsMkJBQUE7RW5Kb3AxQlI7O0VtSmxwMUJNOztJQUVFLDZCQUFBO0VuSnFwMUJSOztFbUpucDFCTTs7SUFFRSw4QkFBQTtFbkpzcDFCUjs7RW1KcHAxQk07O0lBRUUsNEJBQUE7RW5KdXAxQlI7O0VnQjVxMUJNO0ltSTBCSSw0QkFBQTtFbkpzcDFCVjtFaUJocjFCTTtJa0k2QkksNkJBQUE7RW5Kc3AxQlY7O0VnQm5yMUJNO0ltSWtDSSw2QkFBQTtFbkpxcDFCVjtFaUJ2cjFCTTtJa0lxQ0ksNEJBQUE7RW5KcXAxQlY7O0VtSnByMUJNO0lBQWdDLHlCQUFBO0VuSndyMUJ0Qzs7RW1KdnIxQk07O0lBRUUsNkJBQUE7RW5KMHIxQlI7O0VtSnhyMUJNOztJQUVFLCtCQUFBO0VuSjJyMUJSOztFbUp6cjFCTTs7SUFFRSxnQ0FBQTtFbko0cjFCUjs7RW1KMXIxQk07O0lBRUUsOEJBQUE7RW5KNnIxQlI7O0VnQmx0MUJNO0ltSTBCSSw4QkFBQTtFbko0cjFCVjtFaUJ0dDFCTTtJa0k2QkksK0JBQUE7RW5KNHIxQlY7O0VnQnp0MUJNO0ltSWtDSSwrQkFBQTtFbkoycjFCVjtFaUI3dDFCTTtJa0lxQ0ksOEJBQUE7RW5KMnIxQlY7O0VtSjF0MUJNO0lBQWdDLHVCQUFBO0VuSjh0MUJ0Qzs7RW1KN3QxQk07O0lBRUUsMkJBQUE7RW5KZ3UxQlI7O0VtSjl0MUJNOztJQUVFLDZCQUFBO0VuSml1MUJSOztFbUovdDFCTTs7SUFFRSw4QkFBQTtFbkprdTFCUjs7RW1KaHUxQk07O0lBRUUsNEJBQUE7RW5KbXUxQlI7O0VnQnh2MUJNO0ltSTBCSSw0QkFBQTtFbkprdTFCVjtFaUI1djFCTTtJa0k2QkksNkJBQUE7RW5Ka3UxQlY7O0VnQi92MUJNO0ltSWtDSSw2QkFBQTtFbkppdTFCVjtFaUJudzFCTTtJa0lxQ0ksNEJBQUE7RW5KaXUxQlY7O0VtSmh3MUJNO0lBQWdDLHFCQUFBO0VuSm93MUJ0Qzs7RW1KbncxQk07O0lBRUUseUJBQUE7RW5Kc3cxQlI7O0VtSnB3MUJNOztJQUVFLDJCQUFBO0VuSnV3MUJSOztFbUpydzFCTTs7SUFFRSw0QkFBQTtFbkp3dzFCUjs7RW1KdHcxQk07O0lBRUUsMEJBQUE7RW5KeXcxQlI7O0VnQjl4MUJNO0ltSTBCSSwwQkFBQTtFbkp3dzFCVjtFaUJseTFCTTtJa0k2QkksMkJBQUE7RW5Kd3cxQlY7O0VnQnJ5MUJNO0ltSWtDSSwyQkFBQTtFbkp1dzFCVjtFaUJ6eTFCTTtJa0lxQ0ksMEJBQUE7RW5KdXcxQlY7O0VtSnR5MUJNO0lBQWdDLDJCQUFBO0VuSjB5MUJ0Qzs7RW1KenkxQk07O0lBRUUsK0JBQUE7RW5KNHkxQlI7O0VtSjF5MUJNOztJQUVFLGlDQUFBO0VuSjZ5MUJSOztFbUozeTFCTTs7SUFFRSxrQ0FBQTtFbko4eTFCUjs7RW1KNXkxQk07O0lBRUUsZ0NBQUE7RW5KK3kxQlI7O0VnQnAwMUJNO0ltSTBCSSxnQ0FBQTtFbko4eTFCVjtFaUJ4MDFCTTtJa0k2QkksaUNBQUE7RW5KOHkxQlY7O0VnQjMwMUJNO0ltSWtDSSxpQ0FBQTtFbko2eTFCVjtFaUIvMDFCTTtJa0lxQ0ksZ0NBQUE7RW5KNnkxQlY7O0VtSjUwMUJNO0lBQWdDLDBCQUFBO0VuSmcxMUJ0Qzs7RW1KLzAxQk07O0lBRUUsOEJBQUE7RW5KazExQlI7O0VtSmgxMUJNOztJQUVFLGdDQUFBO0VuSm0xMUJSOztFbUpqMTFCTTs7SUFFRSxpQ0FBQTtFbkpvMTFCUjs7RW1KbDExQk07O0lBRUUsK0JBQUE7RW5KcTExQlI7O0VnQjEyMUJNO0ltSTBCSSwrQkFBQTtFbkpvMTFCVjtFaUI5MjFCTTtJa0k2QkksZ0NBQUE7RW5KbzExQlY7O0VnQmozMUJNO0ltSWtDSSxnQ0FBQTtFbkptMTFCVjtFaUJyMzFCTTtJa0lxQ0ksK0JBQUE7RW5KbTExQlY7O0VtSmwzMUJNO0lBQWdDLHdCQUFBO0VuSnMzMUJ0Qzs7RW1KcjMxQk07O0lBRUUsNEJBQUE7RW5KdzMxQlI7O0VtSnQzMUJNOztJQUVFLDhCQUFBO0VuSnkzMUJSOztFbUp2MzFCTTs7SUFFRSwrQkFBQTtFbkowMzFCUjs7RW1KeDMxQk07O0lBRUUsNkJBQUE7RW5KMjMxQlI7O0VnQmg1MUJNO0ltSTBCSSw2QkFBQTtFbkowMzFCVjtFaUJwNTFCTTtJa0k2QkksOEJBQUE7RW5KMDMxQlY7O0VnQnY1MUJNO0ltSWtDSSw4QkFBQTtFbkp5MzFCVjtFaUIzNTFCTTtJa0lxQ0ksNkJBQUE7RW5KeTMxQlY7O0VtSng1MUJNO0lBQWdDLDBCQUFBO0VuSjQ1MUJ0Qzs7RW1KMzUxQk07O0lBRUUsOEJBQUE7RW5KODUxQlI7O0VtSjU1MUJNOztJQUVFLGdDQUFBO0VuSis1MUJSOztFbUo3NTFCTTs7SUFFRSxpQ0FBQTtFbkpnNjFCUjs7RW1KOTUxQk07O0lBRUUsK0JBQUE7RW5KaTYxQlI7O0VnQnQ3MUJNO0ltSTBCSSwrQkFBQTtFbkpnNjFCVjtFaUIxNzFCTTtJa0k2QkksZ0NBQUE7RW5KZzYxQlY7O0VnQjc3MUJNO0ltSWtDSSxnQ0FBQTtFbkorNTFCVjtFaUJqODFCTTtJa0lxQ0ksK0JBQUE7RW5KKzUxQlY7O0VtSjk3MUJNO0lBQWdDLHdCQUFBO0VuSms4MUJ0Qzs7RW1KajgxQk07O0lBRUUsNEJBQUE7RW5KbzgxQlI7O0VtSmw4MUJNOztJQUVFLDhCQUFBO0VuSnE4MUJSOztFbUpuODFCTTs7SUFFRSwrQkFBQTtFbkpzODFCUjs7RW1KcDgxQk07O0lBRUUsNkJBQUE7RW5KdTgxQlI7O0VnQjU5MUJNO0ltSTBCSSw2QkFBQTtFbkpzODFCVjtFaUJoKzFCTTtJa0k2QkksOEJBQUE7RW5KczgxQlY7O0VnQm4rMUJNO0ltSWtDSSw4QkFBQTtFbkpxODFCVjtFaUJ2KzFCTTtJa0lxQ0ksNkJBQUE7RW5KcTgxQlY7O0VtSjU3MUJNO0lBQXdCLDJCQUFBO0VuSmc4MUI5Qjs7RW1KLzcxQk07O0lBRUUsK0JBQUE7RW5KazgxQlI7O0VtSmg4MUJNOztJQUVFLGlDQUFBO0VuSm04MUJSOztFbUpqODFCTTs7SUFFRSxrQ0FBQTtFbkpvODFCUjs7RW1KbDgxQk07O0lBRUUsZ0NBQUE7RW5KcTgxQlI7O0VnQmxnMkJNO0ltSWtFSSxnQ0FBQTtFbkpvODFCVjtFaUJ0ZzJCTTtJa0lxRUksaUNBQUE7RW5KbzgxQlY7O0VnQnpnMkJNO0ltSTBFSSxpQ0FBQTtFbkptODFCVjtFaUI3ZzJCTTtJa0k2RUksZ0NBQUE7RW5KbTgxQlY7O0VtSmwrMUJNO0lBQXdCLDBCQUFBO0VuSnMrMUI5Qjs7RW1KcisxQk07O0lBRUUsOEJBQUE7RW5KdysxQlI7O0VtSnQrMUJNOztJQUVFLGdDQUFBO0VuSnkrMUJSOztFbUp2KzFCTTs7SUFFRSxpQ0FBQTtFbkowKzFCUjs7RW1KeCsxQk07O0lBRUUsK0JBQUE7RW5KMisxQlI7O0VnQnhpMkJNO0ltSWtFSSwrQkFBQTtFbkowKzFCVjtFaUI1aTJCTTtJa0lxRUksZ0NBQUE7RW5KMCsxQlY7O0VnQi9pMkJNO0ltSTBFSSxnQ0FBQTtFbkp5KzFCVjtFaUJuajJCTTtJa0k2RUksK0JBQUE7RW5KeSsxQlY7O0VtSnhnMkJNO0lBQXdCLHdCQUFBO0VuSjRnMkI5Qjs7RW1KM2cyQk07O0lBRUUsNEJBQUE7RW5KOGcyQlI7O0VtSjVnMkJNOztJQUVFLDhCQUFBO0VuSitnMkJSOztFbUo3ZzJCTTs7SUFFRSwrQkFBQTtFbkpnaDJCUjs7RW1KOWcyQk07O0lBRUUsNkJBQUE7RW5KaWgyQlI7O0VnQjlrMkJNO0ltSWtFSSw2QkFBQTtFbkpnaDJCVjtFaUJsbDJCTTtJa0lxRUksOEJBQUE7RW5KZ2gyQlY7O0VnQnJsMkJNO0ltSTBFSSw4QkFBQTtFbkorZzJCVjtFaUJ6bDJCTTtJa0k2RUksNkJBQUE7RW5KK2cyQlY7O0VtSjlpMkJNO0lBQXdCLDBCQUFBO0VuSmtqMkI5Qjs7RW1KamoyQk07O0lBRUUsOEJBQUE7RW5Kb2oyQlI7O0VtSmxqMkJNOztJQUVFLGdDQUFBO0VuSnFqMkJSOztFbUpuajJCTTs7SUFFRSxpQ0FBQTtFbkpzajJCUjs7RW1KcGoyQk07O0lBRUUsK0JBQUE7RW5KdWoyQlI7O0VnQnBuMkJNO0ltSWtFSSwrQkFBQTtFbkpzajJCVjtFaUJ4bjJCTTtJa0lxRUksZ0NBQUE7RW5Kc2oyQlY7O0VnQjNuMkJNO0ltSTBFSSxnQ0FBQTtFbkpxajJCVjtFaUIvbjJCTTtJa0k2RUksK0JBQUE7RW5KcWoyQlY7O0VtSnBsMkJNO0lBQXdCLHdCQUFBO0VuSndsMkI5Qjs7RW1KdmwyQk07O0lBRUUsNEJBQUE7RW5KMGwyQlI7O0VtSnhsMkJNOztJQUVFLDhCQUFBO0VuSjJsMkJSOztFbUp6bDJCTTs7SUFFRSwrQkFBQTtFbko0bDJCUjs7RW1KMWwyQk07O0lBRUUsNkJBQUE7RW5KNmwyQlI7O0VnQjFwMkJNO0ltSWtFSSw2QkFBQTtFbko0bDJCVjtFaUI5cDJCTTtJa0lxRUksOEJBQUE7RW5KNGwyQlY7O0VnQmpxMkJNO0ltSTBFSSw4QkFBQTtFbkoybDJCVjtFaUJycTJCTTtJa0k2RUksNkJBQUE7RW5KMmwyQlY7O0VtSnBsMkJFO0lBQW1CLHVCQUFBO0VuSndsMkJyQjs7RW1KdmwyQkU7O0lBRUUsMkJBQUE7RW5KMGwyQko7O0VtSnhsMkJFOztJQUVFLDZCQUFBO0VuSjJsMkJKOztFbUp6bDJCRTs7SUFFRSw4QkFBQTtFbko0bDJCSjs7RW1KMWwyQkU7O0lBRUUsNEJBQUE7RW5KNmwyQko7O0VnQmhzMkJNO0ltSXlHQSw0QkFBQTtFbkoybDJCTjtFaUJwczJCTTtJa0k0R0EsNkJBQUE7RW5KMmwyQk47O0VnQnZzMkJNO0ltSWlIQSw2QkFBQTtFbkowbDJCTjtFaUIzczJCTTtJa0lvSEEsNEJBQUE7RW5KMGwyQk47QUFDRjtBd0QxbzJCSTtFMkYvREk7SUFBZ0Msb0JBQUE7RW5KNnMyQnRDOztFbUo1czJCTTs7SUFFRSx3QkFBQTtFbkorczJCUjs7RW1KN3MyQk07O0lBRUUsMEJBQUE7RW5KZ3QyQlI7O0VtSjlzMkJNOztJQUVFLDJCQUFBO0VuSml0MkJSOztFbUovczJCTTs7SUFFRSx5QkFBQTtFbkprdDJCUjs7RWdCdnUyQk07SW1JMEJJLHlCQUFBO0VuSml0MkJWO0VpQjN1MkJNO0lrSTZCSSwwQkFBQTtFbkppdDJCVjs7RWdCOXUyQk07SW1Ja0NJLDBCQUFBO0VuSmd0MkJWO0VpQmx2MkJNO0lrSXFDSSx5QkFBQTtFbkpndDJCVjs7RW1KL3UyQk07SUFBZ0MsMEJBQUE7RW5KbXYyQnRDOztFbUpsdjJCTTs7SUFFRSw4QkFBQTtFbkpxdjJCUjs7RW1KbnYyQk07O0lBRUUsZ0NBQUE7RW5Kc3YyQlI7O0VtSnB2MkJNOztJQUVFLGlDQUFBO0VuSnV2MkJSOztFbUpydjJCTTs7SUFFRSwrQkFBQTtFbkp3djJCUjs7RWdCN3cyQk07SW1JMEJJLCtCQUFBO0VuSnV2MkJWO0VpQmp4MkJNO0lrSTZCSSxnQ0FBQTtFbkp1djJCVjs7RWdCcHgyQk07SW1Ja0NJLGdDQUFBO0VuSnN2MkJWO0VpQnh4MkJNO0lrSXFDSSwrQkFBQTtFbkpzdjJCVjs7RW1KcngyQk07SUFBZ0MseUJBQUE7RW5KeXgyQnRDOztFbUp4eDJCTTs7SUFFRSw2QkFBQTtFbkoyeDJCUjs7RW1KengyQk07O0lBRUUsK0JBQUE7RW5KNHgyQlI7O0VtSjF4MkJNOztJQUVFLGdDQUFBO0VuSjZ4MkJSOztFbUozeDJCTTs7SUFFRSw4QkFBQTtFbko4eDJCUjs7RWdCbnoyQk07SW1JMEJJLDhCQUFBO0VuSjZ4MkJWO0VpQnZ6MkJNO0lrSTZCSSwrQkFBQTtFbko2eDJCVjs7RWdCMXoyQk07SW1Ja0NJLCtCQUFBO0VuSjR4MkJWO0VpQjl6MkJNO0lrSXFDSSw4QkFBQTtFbko0eDJCVjs7RW1KM3oyQk07SUFBZ0MsdUJBQUE7RW5KK3oyQnRDOztFbUo5ejJCTTs7SUFFRSwyQkFBQTtFbkppMDJCUjs7RW1KL3oyQk07O0lBRUUsNkJBQUE7RW5KazAyQlI7O0VtSmgwMkJNOztJQUVFLDhCQUFBO0VuSm0wMkJSOztFbUpqMDJCTTs7SUFFRSw0QkFBQTtFbkpvMDJCUjs7RWdCejEyQk07SW1JMEJJLDRCQUFBO0VuSm0wMkJWO0VpQjcxMkJNO0lrSTZCSSw2QkFBQTtFbkptMDJCVjs7RWdCaDIyQk07SW1Ja0NJLDZCQUFBO0VuSmswMkJWO0VpQnAyMkJNO0lrSXFDSSw0QkFBQTtFbkprMDJCVjs7RW1KajIyQk07SUFBZ0MseUJBQUE7RW5KcTIyQnRDOztFbUpwMjJCTTs7SUFFRSw2QkFBQTtFbkp1MjJCUjs7RW1KcjIyQk07O0lBRUUsK0JBQUE7RW5KdzIyQlI7O0VtSnQyMkJNOztJQUVFLGdDQUFBO0VuSnkyMkJSOztFbUp2MjJCTTs7SUFFRSw4QkFBQTtFbkowMjJCUjs7RWdCLzMyQk07SW1JMEJJLDhCQUFBO0VuSnkyMkJWO0VpQm40MkJNO0lrSTZCSSwrQkFBQTtFbkp5MjJCVjs7RWdCdDQyQk07SW1Ja0NJLCtCQUFBO0VuSncyMkJWO0VpQjE0MkJNO0lrSXFDSSw4QkFBQTtFbkp3MjJCVjs7RW1KdjQyQk07SUFBZ0MsdUJBQUE7RW5KMjQyQnRDOztFbUoxNDJCTTs7SUFFRSwyQkFBQTtFbko2NDJCUjs7RW1KMzQyQk07O0lBRUUsNkJBQUE7RW5KODQyQlI7O0VtSjU0MkJNOztJQUVFLDhCQUFBO0VuSis0MkJSOztFbUo3NDJCTTs7SUFFRSw0QkFBQTtFbkpnNTJCUjs7RWdCcjYyQk07SW1JMEJJLDRCQUFBO0VuSis0MkJWO0VpQno2MkJNO0lrSTZCSSw2QkFBQTtFbkorNDJCVjs7RWdCNTYyQk07SW1Ja0NJLDZCQUFBO0VuSjg0MkJWO0VpQmg3MkJNO0lrSXFDSSw0QkFBQTtFbko4NDJCVjs7RW1KNzYyQk07SUFBZ0MscUJBQUE7RW5KaTcyQnRDOztFbUpoNzJCTTs7SUFFRSx5QkFBQTtFbkptNzJCUjs7RW1KajcyQk07O0lBRUUsMkJBQUE7RW5KbzcyQlI7O0VtSmw3MkJNOztJQUVFLDRCQUFBO0VuSnE3MkJSOztFbUpuNzJCTTs7SUFFRSwwQkFBQTtFbkpzNzJCUjs7RWdCMzgyQk07SW1JMEJJLDBCQUFBO0VuSnE3MkJWO0VpQi84MkJNO0lrSTZCSSwyQkFBQTtFbkpxNzJCVjs7RWdCbDkyQk07SW1Ja0NJLDJCQUFBO0VuSm83MkJWO0VpQnQ5MkJNO0lrSXFDSSwwQkFBQTtFbkpvNzJCVjs7RW1KbjkyQk07SUFBZ0MsMkJBQUE7RW5KdTkyQnRDOztFbUp0OTJCTTs7SUFFRSwrQkFBQTtFbkp5OTJCUjs7RW1KdjkyQk07O0lBRUUsaUNBQUE7RW5KMDkyQlI7O0VtSng5MkJNOztJQUVFLGtDQUFBO0VuSjI5MkJSOztFbUp6OTJCTTs7SUFFRSxnQ0FBQTtFbko0OTJCUjs7RWdCai8yQk07SW1JMEJJLGdDQUFBO0VuSjI5MkJWO0VpQnIvMkJNO0lrSTZCSSxpQ0FBQTtFbkoyOTJCVjs7RWdCeC8yQk07SW1Ja0NJLGlDQUFBO0VuSjA5MkJWO0VpQjUvMkJNO0lrSXFDSSxnQ0FBQTtFbkowOTJCVjs7RW1Kei8yQk07SUFBZ0MsMEJBQUE7RW5KNi8yQnRDOztFbUo1LzJCTTs7SUFFRSw4QkFBQTtFbkorLzJCUjs7RW1KNy8yQk07O0lBRUUsZ0NBQUE7RW5KZ2czQlI7O0VtSjkvMkJNOztJQUVFLGlDQUFBO0VuSmlnM0JSOztFbUovLzJCTTs7SUFFRSwrQkFBQTtFbkprZzNCUjs7RWdCdmgzQk07SW1JMEJJLCtCQUFBO0VuSmlnM0JWO0VpQjNoM0JNO0lrSTZCSSxnQ0FBQTtFbkppZzNCVjs7RWdCOWgzQk07SW1Ja0NJLGdDQUFBO0VuSmdnM0JWO0VpQmxpM0JNO0lrSXFDSSwrQkFBQTtFbkpnZzNCVjs7RW1KL2gzQk07SUFBZ0Msd0JBQUE7RW5KbWkzQnRDOztFbUpsaTNCTTs7SUFFRSw0QkFBQTtFbkpxaTNCUjs7RW1KbmkzQk07O0lBRUUsOEJBQUE7RW5Kc2kzQlI7O0VtSnBpM0JNOztJQUVFLCtCQUFBO0VuSnVpM0JSOztFbUpyaTNCTTs7SUFFRSw2QkFBQTtFbkp3aTNCUjs7RWdCN2ozQk07SW1JMEJJLDZCQUFBO0VuSnVpM0JWO0VpQmprM0JNO0lrSTZCSSw4QkFBQTtFbkp1aTNCVjs7RWdCcGszQk07SW1Ja0NJLDhCQUFBO0VuSnNpM0JWO0VpQnhrM0JNO0lrSXFDSSw2QkFBQTtFbkpzaTNCVjs7RW1KcmszQk07SUFBZ0MsMEJBQUE7RW5KeWszQnRDOztFbUp4azNCTTs7SUFFRSw4QkFBQTtFbkoyazNCUjs7RW1KemszQk07O0lBRUUsZ0NBQUE7RW5KNGszQlI7O0VtSjFrM0JNOztJQUVFLGlDQUFBO0VuSjZrM0JSOztFbUozazNCTTs7SUFFRSwrQkFBQTtFbko4azNCUjs7RWdCbm0zQk07SW1JMEJJLCtCQUFBO0VuSjZrM0JWO0VpQnZtM0JNO0lrSTZCSSxnQ0FBQTtFbko2azNCVjs7RWdCMW0zQk07SW1Ja0NJLGdDQUFBO0VuSjRrM0JWO0VpQjltM0JNO0lrSXFDSSwrQkFBQTtFbko0azNCVjs7RW1KM20zQk07SUFBZ0Msd0JBQUE7RW5KK20zQnRDOztFbUo5bTNCTTs7SUFFRSw0QkFBQTtFbkppbjNCUjs7RW1KL20zQk07O0lBRUUsOEJBQUE7RW5Ka24zQlI7O0VtSmhuM0JNOztJQUVFLCtCQUFBO0VuSm1uM0JSOztFbUpqbjNCTTs7SUFFRSw2QkFBQTtFbkpvbjNCUjs7RWdCem8zQk07SW1JMEJJLDZCQUFBO0VuSm1uM0JWO0VpQjdvM0JNO0lrSTZCSSw4QkFBQTtFbkptbjNCVjs7RWdCaHAzQk07SW1Ja0NJLDhCQUFBO0VuSmtuM0JWO0VpQnBwM0JNO0lrSXFDSSw2QkFBQTtFbkprbjNCVjs7RW1Kem0zQk07SUFBd0IsMkJBQUE7RW5KNm0zQjlCOztFbUo1bTNCTTs7SUFFRSwrQkFBQTtFbkorbTNCUjs7RW1KN20zQk07O0lBRUUsaUNBQUE7RW5KZ24zQlI7O0VtSjltM0JNOztJQUVFLGtDQUFBO0VuSmluM0JSOztFbUovbTNCTTs7SUFFRSxnQ0FBQTtFbkprbjNCUjs7RWdCL3EzQk07SW1Ja0VJLGdDQUFBO0VuSmluM0JWO0VpQm5yM0JNO0lrSXFFSSxpQ0FBQTtFbkppbjNCVjs7RWdCdHIzQk07SW1JMEVJLGlDQUFBO0VuSmduM0JWO0VpQjFyM0JNO0lrSTZFSSxnQ0FBQTtFbkpnbjNCVjs7RW1KL28zQk07SUFBd0IsMEJBQUE7RW5KbXAzQjlCOztFbUpscDNCTTs7SUFFRSw4QkFBQTtFbkpxcDNCUjs7RW1KbnAzQk07O0lBRUUsZ0NBQUE7RW5Kc3AzQlI7O0VtSnBwM0JNOztJQUVFLGlDQUFBO0VuSnVwM0JSOztFbUpycDNCTTs7SUFFRSwrQkFBQTtFbkp3cDNCUjs7RWdCcnQzQk07SW1Ja0VJLCtCQUFBO0VuSnVwM0JWO0VpQnp0M0JNO0lrSXFFSSxnQ0FBQTtFbkp1cDNCVjs7RWdCNXQzQk07SW1JMEVJLGdDQUFBO0VuSnNwM0JWO0VpQmh1M0JNO0lrSTZFSSwrQkFBQTtFbkpzcDNCVjs7RW1KcnIzQk07SUFBd0Isd0JBQUE7RW5KeXIzQjlCOztFbUp4cjNCTTs7SUFFRSw0QkFBQTtFbkoycjNCUjs7RW1KenIzQk07O0lBRUUsOEJBQUE7RW5KNHIzQlI7O0VtSjFyM0JNOztJQUVFLCtCQUFBO0VuSjZyM0JSOztFbUozcjNCTTs7SUFFRSw2QkFBQTtFbko4cjNCUjs7RWdCM3YzQk07SW1Ja0VJLDZCQUFBO0VuSjZyM0JWO0VpQi92M0JNO0lrSXFFSSw4QkFBQTtFbko2cjNCVjs7RWdCbHczQk07SW1JMEVJLDhCQUFBO0VuSjRyM0JWO0VpQnR3M0JNO0lrSTZFSSw2QkFBQTtFbko0cjNCVjs7RW1KM3QzQk07SUFBd0IsMEJBQUE7RW5KK3QzQjlCOztFbUo5dDNCTTs7SUFFRSw4QkFBQTtFbkppdTNCUjs7RW1KL3QzQk07O0lBRUUsZ0NBQUE7RW5Ka3UzQlI7O0VtSmh1M0JNOztJQUVFLGlDQUFBO0VuSm11M0JSOztFbUpqdTNCTTs7SUFFRSwrQkFBQTtFbkpvdTNCUjs7RWdCankzQk07SW1Ja0VJLCtCQUFBO0VuSm11M0JWO0VpQnJ5M0JNO0lrSXFFSSxnQ0FBQTtFbkptdTNCVjs7RWdCeHkzQk07SW1JMEVJLGdDQUFBO0VuSmt1M0JWO0VpQjV5M0JNO0lrSTZFSSwrQkFBQTtFbkprdTNCVjs7RW1KanczQk07SUFBd0Isd0JBQUE7RW5KcXczQjlCOztFbUpwdzNCTTs7SUFFRSw0QkFBQTtFbkp1dzNCUjs7RW1KcnczQk07O0lBRUUsOEJBQUE7RW5Kd3czQlI7O0VtSnR3M0JNOztJQUVFLCtCQUFBO0VuSnl3M0JSOztFbUp2dzNCTTs7SUFFRSw2QkFBQTtFbkowdzNCUjs7RWdCdjAzQk07SW1Ja0VJLDZCQUFBO0VuSnl3M0JWO0VpQjMwM0JNO0lrSXFFSSw4QkFBQTtFbkp5dzNCVjs7RWdCOTAzQk07SW1JMEVJLDhCQUFBO0VuSnd3M0JWO0VpQmwxM0JNO0lrSTZFSSw2QkFBQTtFbkp3dzNCVjs7RW1KanczQkU7SUFBbUIsdUJBQUE7RW5KcXczQnJCOztFbUpwdzNCRTs7SUFFRSwyQkFBQTtFbkp1dzNCSjs7RW1KcnczQkU7O0lBRUUsNkJBQUE7RW5Kd3czQko7O0VtSnR3M0JFOztJQUVFLDhCQUFBO0VuSnl3M0JKOztFbUp2dzNCRTs7SUFFRSw0QkFBQTtFbkowdzNCSjs7RWdCNzIzQk07SW1JeUdBLDRCQUFBO0VuSnd3M0JOO0VpQmozM0JNO0lrSTRHQSw2QkFBQTtFbkp3dzNCTjs7RWdCcDMzQk07SW1JaUhBLDZCQUFBO0VuSnV3M0JOO0VpQngzM0JNO0lrSW9IQSw0QkFBQTtFbkp1dzNCTjtBQUNGO0F3RHZ6M0JJO0UyRi9ESTtJQUFnQyxvQkFBQTtFbkowMzNCdEM7O0VtSnozM0JNOztJQUVFLHdCQUFBO0VuSjQzM0JSOztFbUoxMzNCTTs7SUFFRSwwQkFBQTtFbko2MzNCUjs7RW1KMzMzQk07O0lBRUUsMkJBQUE7RW5KODMzQlI7O0VtSjUzM0JNOztJQUVFLHlCQUFBO0VuSiszM0JSOztFZ0JwNTNCTTtJbUkwQkkseUJBQUE7RW5KODMzQlY7RWlCeDUzQk07SWtJNkJJLDBCQUFBO0VuSjgzM0JWOztFZ0IzNTNCTTtJbUlrQ0ksMEJBQUE7RW5KNjMzQlY7RWlCLzUzQk07SWtJcUNJLHlCQUFBO0VuSjYzM0JWOztFbUo1NTNCTTtJQUFnQywwQkFBQTtFbkpnNjNCdEM7O0VtSi81M0JNOztJQUVFLDhCQUFBO0VuSms2M0JSOztFbUpoNjNCTTs7SUFFRSxnQ0FBQTtFbkptNjNCUjs7RW1KajYzQk07O0lBRUUsaUNBQUE7RW5KbzYzQlI7O0VtSmw2M0JNOztJQUVFLCtCQUFBO0VuSnE2M0JSOztFZ0IxNzNCTTtJbUkwQkksK0JBQUE7RW5KbzYzQlY7RWlCOTczQk07SWtJNkJJLGdDQUFBO0VuSm82M0JWOztFZ0JqODNCTTtJbUlrQ0ksZ0NBQUE7RW5KbTYzQlY7RWlCcjgzQk07SWtJcUNJLCtCQUFBO0VuSm02M0JWOztFbUpsODNCTTtJQUFnQyx5QkFBQTtFbkpzODNCdEM7O0VtSnI4M0JNOztJQUVFLDZCQUFBO0VuSnc4M0JSOztFbUp0ODNCTTs7SUFFRSwrQkFBQTtFbkp5ODNCUjs7RW1KdjgzQk07O0lBRUUsZ0NBQUE7RW5KMDgzQlI7O0VtSng4M0JNOztJQUVFLDhCQUFBO0VuSjI4M0JSOztFZ0JoKzNCTTtJbUkwQkksOEJBQUE7RW5KMDgzQlY7RWlCcCszQk07SWtJNkJJLCtCQUFBO0VuSjA4M0JWOztFZ0J2KzNCTTtJbUlrQ0ksK0JBQUE7RW5KeTgzQlY7RWlCMyszQk07SWtJcUNJLDhCQUFBO0VuSnk4M0JWOztFbUp4KzNCTTtJQUFnQyx1QkFBQTtFbko0KzNCdEM7O0VtSjMrM0JNOztJQUVFLDJCQUFBO0VuSjgrM0JSOztFbUo1KzNCTTs7SUFFRSw2QkFBQTtFbkorKzNCUjs7RW1KNyszQk07O0lBRUUsOEJBQUE7RW5KZy8zQlI7O0VtSjkrM0JNOztJQUVFLDRCQUFBO0VuSmkvM0JSOztFZ0J0ZzRCTTtJbUkwQkksNEJBQUE7RW5KZy8zQlY7RWlCMWc0Qk07SWtJNkJJLDZCQUFBO0VuSmcvM0JWOztFZ0I3ZzRCTTtJbUlrQ0ksNkJBQUE7RW5KKyszQlY7RWlCamg0Qk07SWtJcUNJLDRCQUFBO0VuSisrM0JWOztFbUo5ZzRCTTtJQUFnQyx5QkFBQTtFbkpraDRCdEM7O0VtSmpoNEJNOztJQUVFLDZCQUFBO0VuSm9oNEJSOztFbUpsaDRCTTs7SUFFRSwrQkFBQTtFbkpxaDRCUjs7RW1Kbmg0Qk07O0lBRUUsZ0NBQUE7RW5Kc2g0QlI7O0VtSnBoNEJNOztJQUVFLDhCQUFBO0VuSnVoNEJSOztFZ0I1aTRCTTtJbUkwQkksOEJBQUE7RW5Kc2g0QlY7RWlCaGo0Qk07SWtJNkJJLCtCQUFBO0VuSnNoNEJWOztFZ0JuajRCTTtJbUlrQ0ksK0JBQUE7RW5KcWg0QlY7RWlCdmo0Qk07SWtJcUNJLDhCQUFBO0VuSnFoNEJWOztFbUpwajRCTTtJQUFnQyx1QkFBQTtFbkp3ajRCdEM7O0VtSnZqNEJNOztJQUVFLDJCQUFBO0VuSjBqNEJSOztFbUp4ajRCTTs7SUFFRSw2QkFBQTtFbkoyajRCUjs7RW1Kemo0Qk07O0lBRUUsOEJBQUE7RW5KNGo0QlI7O0VtSjFqNEJNOztJQUVFLDRCQUFBO0VuSjZqNEJSOztFZ0JsbDRCTTtJbUkwQkksNEJBQUE7RW5KNGo0QlY7RWlCdGw0Qk07SWtJNkJJLDZCQUFBO0VuSjRqNEJWOztFZ0J6bDRCTTtJbUlrQ0ksNkJBQUE7RW5KMmo0QlY7RWlCN2w0Qk07SWtJcUNJLDRCQUFBO0VuSjJqNEJWOztFbUoxbDRCTTtJQUFnQyxxQkFBQTtFbko4bDRCdEM7O0VtSjdsNEJNOztJQUVFLHlCQUFBO0VuSmdtNEJSOztFbUo5bDRCTTs7SUFFRSwyQkFBQTtFbkppbTRCUjs7RW1KL2w0Qk07O0lBRUUsNEJBQUE7RW5Ka200QlI7O0VtSmhtNEJNOztJQUVFLDBCQUFBO0VuSm1tNEJSOztFZ0J4bjRCTTtJbUkwQkksMEJBQUE7RW5Ka200QlY7RWlCNW40Qk07SWtJNkJJLDJCQUFBO0VuSmttNEJWOztFZ0IvbjRCTTtJbUlrQ0ksMkJBQUE7RW5KaW00QlY7RWlCbm80Qk07SWtJcUNJLDBCQUFBO0VuSmltNEJWOztFbUpobzRCTTtJQUFnQywyQkFBQTtFbkpvbzRCdEM7O0VtSm5vNEJNOztJQUVFLCtCQUFBO0VuSnNvNEJSOztFbUpwbzRCTTs7SUFFRSxpQ0FBQTtFbkp1bzRCUjs7RW1Kcm80Qk07O0lBRUUsa0NBQUE7RW5Kd280QlI7O0VtSnRvNEJNOztJQUVFLGdDQUFBO0VuSnlvNEJSOztFZ0I5cDRCTTtJbUkwQkksZ0NBQUE7RW5Kd280QlY7RWlCbHE0Qk07SWtJNkJJLGlDQUFBO0VuSndvNEJWOztFZ0JycTRCTTtJbUlrQ0ksaUNBQUE7RW5KdW80QlY7RWlCenE0Qk07SWtJcUNJLGdDQUFBO0VuSnVvNEJWOztFbUp0cTRCTTtJQUFnQywwQkFBQTtFbkowcTRCdEM7O0VtSnpxNEJNOztJQUVFLDhCQUFBO0VuSjRxNEJSOztFbUoxcTRCTTs7SUFFRSxnQ0FBQTtFbko2cTRCUjs7RW1KM3E0Qk07O0lBRUUsaUNBQUE7RW5KOHE0QlI7O0VtSjVxNEJNOztJQUVFLCtCQUFBO0VuSitxNEJSOztFZ0JwczRCTTtJbUkwQkksK0JBQUE7RW5KOHE0QlY7RWlCeHM0Qk07SWtJNkJJLGdDQUFBO0VuSjhxNEJWOztFZ0IzczRCTTtJbUlrQ0ksZ0NBQUE7RW5KNnE0QlY7RWlCL3M0Qk07SWtJcUNJLCtCQUFBO0VuSjZxNEJWOztFbUo1czRCTTtJQUFnQyx3QkFBQTtFbkpndDRCdEM7O0VtSi9zNEJNOztJQUVFLDRCQUFBO0VuSmt0NEJSOztFbUpodDRCTTs7SUFFRSw4QkFBQTtFbkptdDRCUjs7RW1KanQ0Qk07O0lBRUUsK0JBQUE7RW5Kb3Q0QlI7O0VtSmx0NEJNOztJQUVFLDZCQUFBO0VuSnF0NEJSOztFZ0IxdTRCTTtJbUkwQkksNkJBQUE7RW5Kb3Q0QlY7RWlCOXU0Qk07SWtJNkJJLDhCQUFBO0VuSm90NEJWOztFZ0JqdjRCTTtJbUlrQ0ksOEJBQUE7RW5KbXQ0QlY7RWlCcnY0Qk07SWtJcUNJLDZCQUFBO0VuSm10NEJWOztFbUpsdjRCTTtJQUFnQywwQkFBQTtFbkpzdjRCdEM7O0VtSnJ2NEJNOztJQUVFLDhCQUFBO0VuSnd2NEJSOztFbUp0djRCTTs7SUFFRSxnQ0FBQTtFbkp5djRCUjs7RW1KdnY0Qk07O0lBRUUsaUNBQUE7RW5KMHY0QlI7O0VtSnh2NEJNOztJQUVFLCtCQUFBO0VuSjJ2NEJSOztFZ0JoeDRCTTtJbUkwQkksK0JBQUE7RW5KMHY0QlY7RWlCcHg0Qk07SWtJNkJJLGdDQUFBO0VuSjB2NEJWOztFZ0J2eDRCTTtJbUlrQ0ksZ0NBQUE7RW5KeXY0QlY7RWlCM3g0Qk07SWtJcUNJLCtCQUFBO0VuSnl2NEJWOztFbUp4eDRCTTtJQUFnQyx3QkFBQTtFbko0eDRCdEM7O0VtSjN4NEJNOztJQUVFLDRCQUFBO0VuSjh4NEJSOztFbUo1eDRCTTs7SUFFRSw4QkFBQTtFbkoreDRCUjs7RW1KN3g0Qk07O0lBRUUsK0JBQUE7RW5KZ3k0QlI7O0VtSjl4NEJNOztJQUVFLDZCQUFBO0VuSml5NEJSOztFZ0J0ejRCTTtJbUkwQkksNkJBQUE7RW5KZ3k0QlY7RWlCMXo0Qk07SWtJNkJJLDhCQUFBO0VuSmd5NEJWOztFZ0I3ejRCTTtJbUlrQ0ksOEJBQUE7RW5KK3g0QlY7RWlCajA0Qk07SWtJcUNJLDZCQUFBO0VuSit4NEJWOztFbUp0eDRCTTtJQUF3QiwyQkFBQTtFbkoweDRCOUI7O0VtSnp4NEJNOztJQUVFLCtCQUFBO0VuSjR4NEJSOztFbUoxeDRCTTs7SUFFRSxpQ0FBQTtFbko2eDRCUjs7RW1KM3g0Qk07O0lBRUUsa0NBQUE7RW5KOHg0QlI7O0VtSjV4NEJNOztJQUVFLGdDQUFBO0VuSit4NEJSOztFZ0I1MTRCTTtJbUlrRUksZ0NBQUE7RW5KOHg0QlY7RWlCaDI0Qk07SWtJcUVJLGlDQUFBO0VuSjh4NEJWOztFZ0JuMjRCTTtJbUkwRUksaUNBQUE7RW5KNng0QlY7RWlCdjI0Qk07SWtJNkVJLGdDQUFBO0VuSjZ4NEJWOztFbUo1ejRCTTtJQUF3QiwwQkFBQTtFbkpnMDRCOUI7O0VtSi96NEJNOztJQUVFLDhCQUFBO0VuSmswNEJSOztFbUpoMDRCTTs7SUFFRSxnQ0FBQTtFbkptMDRCUjs7RW1KajA0Qk07O0lBRUUsaUNBQUE7RW5KbzA0QlI7O0VtSmwwNEJNOztJQUVFLCtCQUFBO0VuSnEwNEJSOztFZ0JsNDRCTTtJbUlrRUksK0JBQUE7RW5KbzA0QlY7RWlCdDQ0Qk07SWtJcUVJLGdDQUFBO0VuSm8wNEJWOztFZ0J6NDRCTTtJbUkwRUksZ0NBQUE7RW5KbTA0QlY7RWlCNzQ0Qk07SWtJNkVJLCtCQUFBO0VuSm0wNEJWOztFbUpsMjRCTTtJQUF3Qix3QkFBQTtFbkpzMjRCOUI7O0VtSnIyNEJNOztJQUVFLDRCQUFBO0VuSncyNEJSOztFbUp0MjRCTTs7SUFFRSw4QkFBQTtFbkp5MjRCUjs7RW1KdjI0Qk07O0lBRUUsK0JBQUE7RW5KMDI0QlI7O0VtSngyNEJNOztJQUVFLDZCQUFBO0VuSjIyNEJSOztFZ0J4NjRCTTtJbUlrRUksNkJBQUE7RW5KMDI0QlY7RWlCNTY0Qk07SWtJcUVJLDhCQUFBO0VuSjAyNEJWOztFZ0IvNjRCTTtJbUkwRUksOEJBQUE7RW5KeTI0QlY7RWlCbjc0Qk07SWtJNkVJLDZCQUFBO0VuSnkyNEJWOztFbUp4NDRCTTtJQUF3QiwwQkFBQTtFbko0NDRCOUI7O0VtSjM0NEJNOztJQUVFLDhCQUFBO0VuSjg0NEJSOztFbUo1NDRCTTs7SUFFRSxnQ0FBQTtFbkorNDRCUjs7RW1KNzQ0Qk07O0lBRUUsaUNBQUE7RW5KZzU0QlI7O0VtSjk0NEJNOztJQUVFLCtCQUFBO0VuSmk1NEJSOztFZ0I5ODRCTTtJbUlrRUksK0JBQUE7RW5KZzU0QlY7RWlCbDk0Qk07SWtJcUVJLGdDQUFBO0VuSmc1NEJWOztFZ0JyOTRCTTtJbUkwRUksZ0NBQUE7RW5KKzQ0QlY7RWlCejk0Qk07SWtJNkVJLCtCQUFBO0VuSis0NEJWOztFbUo5NjRCTTtJQUF3Qix3QkFBQTtFbkprNzRCOUI7O0VtSmo3NEJNOztJQUVFLDRCQUFBO0VuSm83NEJSOztFbUpsNzRCTTs7SUFFRSw4QkFBQTtFbkpxNzRCUjs7RW1Kbjc0Qk07O0lBRUUsK0JBQUE7RW5Kczc0QlI7O0VtSnA3NEJNOztJQUVFLDZCQUFBO0VuSnU3NEJSOztFZ0JwLzRCTTtJbUlrRUksNkJBQUE7RW5Kczc0QlY7RWlCeC80Qk07SWtJcUVJLDhCQUFBO0VuSnM3NEJWOztFZ0IzLzRCTTtJbUkwRUksOEJBQUE7RW5KcTc0QlY7RWlCLy80Qk07SWtJNkVJLDZCQUFBO0VuSnE3NEJWOztFbUo5NjRCRTtJQUFtQix1QkFBQTtFbkprNzRCckI7O0VtSmo3NEJFOztJQUVFLDJCQUFBO0VuSm83NEJKOztFbUpsNzRCRTs7SUFFRSw2QkFBQTtFbkpxNzRCSjs7RW1Kbjc0QkU7O0lBRUUsOEJBQUE7RW5Kczc0Qko7O0VtSnA3NEJFOztJQUVFLDRCQUFBO0VuSnU3NEJKOztFZ0IxaDVCTTtJbUl5R0EsNEJBQUE7RW5KcTc0Qk47RWlCOWg1Qk07SWtJNEdBLDZCQUFBO0VuSnE3NEJOOztFZ0JqaTVCTTtJbUlpSEEsNkJBQUE7RW5Kbzc0Qk47RWlCcmk1Qk07SWtJb0hBLDRCQUFBO0VuSm83NEJOO0FBQ0Y7QXdEcCs0Qkk7RTJGL0RJO0lBQWdDLG9CQUFBO0VuSnVpNUJ0Qzs7RW1KdGk1Qk07O0lBRUUsd0JBQUE7RW5KeWk1QlI7O0VtSnZpNUJNOztJQUVFLDBCQUFBO0VuSjBpNUJSOztFbUp4aTVCTTs7SUFFRSwyQkFBQTtFbkoyaTVCUjs7RW1Kemk1Qk07O0lBRUUseUJBQUE7RW5KNGk1QlI7O0VnQmprNUJNO0ltSTBCSSx5QkFBQTtFbkoyaTVCVjtFaUJyazVCTTtJa0k2QkksMEJBQUE7RW5KMmk1QlY7O0VnQnhrNUJNO0ltSWtDSSwwQkFBQTtFbkowaTVCVjtFaUI1azVCTTtJa0lxQ0kseUJBQUE7RW5KMGk1QlY7O0VtSnprNUJNO0lBQWdDLDBCQUFBO0VuSjZrNUJ0Qzs7RW1KNWs1Qk07O0lBRUUsOEJBQUE7RW5KK2s1QlI7O0VtSjdrNUJNOztJQUVFLGdDQUFBO0VuSmdsNUJSOztFbUo5azVCTTs7SUFFRSxpQ0FBQTtFbkppbDVCUjs7RW1KL2s1Qk07O0lBRUUsK0JBQUE7RW5Ka2w1QlI7O0VnQnZtNUJNO0ltSTBCSSwrQkFBQTtFbkppbDVCVjtFaUIzbTVCTTtJa0k2QkksZ0NBQUE7RW5KaWw1QlY7O0VnQjltNUJNO0ltSWtDSSxnQ0FBQTtFbkpnbDVCVjtFaUJsbjVCTTtJa0lxQ0ksK0JBQUE7RW5KZ2w1QlY7O0VtSi9tNUJNO0lBQWdDLHlCQUFBO0VuSm1uNUJ0Qzs7RW1KbG41Qk07O0lBRUUsNkJBQUE7RW5KcW41QlI7O0VtSm5uNUJNOztJQUVFLCtCQUFBO0VuSnNuNUJSOztFbUpwbjVCTTs7SUFFRSxnQ0FBQTtFbkp1bjVCUjs7RW1Kcm41Qk07O0lBRUUsOEJBQUE7RW5Kd241QlI7O0VnQjdvNUJNO0ltSTBCSSw4QkFBQTtFbkp1bjVCVjtFaUJqcDVCTTtJa0k2QkksK0JBQUE7RW5KdW41QlY7O0VnQnBwNUJNO0ltSWtDSSwrQkFBQTtFbkpzbjVCVjtFaUJ4cDVCTTtJa0lxQ0ksOEJBQUE7RW5Kc241QlY7O0VtSnJwNUJNO0lBQWdDLHVCQUFBO0VuSnlwNUJ0Qzs7RW1KeHA1Qk07O0lBRUUsMkJBQUE7RW5KMnA1QlI7O0VtSnpwNUJNOztJQUVFLDZCQUFBO0VuSjRwNUJSOztFbUoxcDVCTTs7SUFFRSw4QkFBQTtFbko2cDVCUjs7RW1KM3A1Qk07O0lBRUUsNEJBQUE7RW5KOHA1QlI7O0VnQm5yNUJNO0ltSTBCSSw0QkFBQTtFbko2cDVCVjtFaUJ2cjVCTTtJa0k2QkksNkJBQUE7RW5KNnA1QlY7O0VnQjFyNUJNO0ltSWtDSSw2QkFBQTtFbko0cDVCVjtFaUI5cjVCTTtJa0lxQ0ksNEJBQUE7RW5KNHA1QlY7O0VtSjNyNUJNO0lBQWdDLHlCQUFBO0VuSityNUJ0Qzs7RW1KOXI1Qk07O0lBRUUsNkJBQUE7RW5KaXM1QlI7O0VtSi9yNUJNOztJQUVFLCtCQUFBO0VuSmtzNUJSOztFbUpoczVCTTs7SUFFRSxnQ0FBQTtFbkptczVCUjs7RW1KanM1Qk07O0lBRUUsOEJBQUE7RW5Kb3M1QlI7O0VnQnp0NUJNO0ltSTBCSSw4QkFBQTtFbkptczVCVjtFaUI3dDVCTTtJa0k2QkksK0JBQUE7RW5KbXM1QlY7O0VnQmh1NUJNO0ltSWtDSSwrQkFBQTtFbkprczVCVjtFaUJwdTVCTTtJa0lxQ0ksOEJBQUE7RW5Ka3M1QlY7O0VtSmp1NUJNO0lBQWdDLHVCQUFBO0VuSnF1NUJ0Qzs7RW1KcHU1Qk07O0lBRUUsMkJBQUE7RW5KdXU1QlI7O0VtSnJ1NUJNOztJQUVFLDZCQUFBO0VuSnd1NUJSOztFbUp0dTVCTTs7SUFFRSw4QkFBQTtFbkp5dTVCUjs7RW1KdnU1Qk07O0lBRUUsNEJBQUE7RW5KMHU1QlI7O0VnQi92NUJNO0ltSTBCSSw0QkFBQTtFbkp5dTVCVjtFaUJudzVCTTtJa0k2QkksNkJBQUE7RW5KeXU1QlY7O0VnQnR3NUJNO0ltSWtDSSw2QkFBQTtFbkp3dTVCVjtFaUIxdzVCTTtJa0lxQ0ksNEJBQUE7RW5Kd3U1QlY7O0VtSnZ3NUJNO0lBQWdDLHFCQUFBO0VuSjJ3NUJ0Qzs7RW1KMXc1Qk07O0lBRUUseUJBQUE7RW5KNnc1QlI7O0VtSjN3NUJNOztJQUVFLDJCQUFBO0VuSjh3NUJSOztFbUo1dzVCTTs7SUFFRSw0QkFBQTtFbkordzVCUjs7RW1KN3c1Qk07O0lBRUUsMEJBQUE7RW5KZ3g1QlI7O0VnQnJ5NUJNO0ltSTBCSSwwQkFBQTtFbkordzVCVjtFaUJ6eTVCTTtJa0k2QkksMkJBQUE7RW5KK3c1QlY7O0VnQjV5NUJNO0ltSWtDSSwyQkFBQTtFbko4dzVCVjtFaUJoejVCTTtJa0lxQ0ksMEJBQUE7RW5KOHc1QlY7O0VtSjd5NUJNO0lBQWdDLDJCQUFBO0VuSml6NUJ0Qzs7RW1KaHo1Qk07O0lBRUUsK0JBQUE7RW5KbXo1QlI7O0VtSmp6NUJNOztJQUVFLGlDQUFBO0VuSm96NUJSOztFbUpsejVCTTs7SUFFRSxrQ0FBQTtFbkpxejVCUjs7RW1Kbno1Qk07O0lBRUUsZ0NBQUE7RW5Kc3o1QlI7O0VnQjMwNUJNO0ltSTBCSSxnQ0FBQTtFbkpxejVCVjtFaUIvMDVCTTtJa0k2QkksaUNBQUE7RW5KcXo1QlY7O0VnQmwxNUJNO0ltSWtDSSxpQ0FBQTtFbkpvejVCVjtFaUJ0MTVCTTtJa0lxQ0ksZ0NBQUE7RW5Kb3o1QlY7O0VtSm4xNUJNO0lBQWdDLDBCQUFBO0VuSnUxNUJ0Qzs7RW1KdDE1Qk07O0lBRUUsOEJBQUE7RW5KeTE1QlI7O0VtSnYxNUJNOztJQUVFLGdDQUFBO0VuSjAxNUJSOztFbUp4MTVCTTs7SUFFRSxpQ0FBQTtFbkoyMTVCUjs7RW1KejE1Qk07O0lBRUUsK0JBQUE7RW5KNDE1QlI7O0VnQmozNUJNO0ltSTBCSSwrQkFBQTtFbkoyMTVCVjtFaUJyMzVCTTtJa0k2QkksZ0NBQUE7RW5KMjE1QlY7O0VnQngzNUJNO0ltSWtDSSxnQ0FBQTtFbkowMTVCVjtFaUI1MzVCTTtJa0lxQ0ksK0JBQUE7RW5KMDE1QlY7O0VtSnozNUJNO0lBQWdDLHdCQUFBO0VuSjYzNUJ0Qzs7RW1KNTM1Qk07O0lBRUUsNEJBQUE7RW5KKzM1QlI7O0VtSjczNUJNOztJQUVFLDhCQUFBO0VuSmc0NUJSOztFbUo5MzVCTTs7SUFFRSwrQkFBQTtFbkppNDVCUjs7RW1KLzM1Qk07O0lBRUUsNkJBQUE7RW5KazQ1QlI7O0VnQnY1NUJNO0ltSTBCSSw2QkFBQTtFbkppNDVCVjtFaUIzNTVCTTtJa0k2QkksOEJBQUE7RW5KaTQ1QlY7O0VnQjk1NUJNO0ltSWtDSSw4QkFBQTtFbkpnNDVCVjtFaUJsNjVCTTtJa0lxQ0ksNkJBQUE7RW5KZzQ1QlY7O0VtSi81NUJNO0lBQWdDLDBCQUFBO0VuSm02NUJ0Qzs7RW1KbDY1Qk07O0lBRUUsOEJBQUE7RW5KcTY1QlI7O0VtSm42NUJNOztJQUVFLGdDQUFBO0VuSnM2NUJSOztFbUpwNjVCTTs7SUFFRSxpQ0FBQTtFbkp1NjVCUjs7RW1KcjY1Qk07O0lBRUUsK0JBQUE7RW5KdzY1QlI7O0VnQjc3NUJNO0ltSTBCSSwrQkFBQTtFbkp1NjVCVjtFaUJqODVCTTtJa0k2QkksZ0NBQUE7RW5KdTY1QlY7O0VnQnA4NUJNO0ltSWtDSSxnQ0FBQTtFbkpzNjVCVjtFaUJ4ODVCTTtJa0lxQ0ksK0JBQUE7RW5KczY1QlY7O0VtSnI4NUJNO0lBQWdDLHdCQUFBO0VuSnk4NUJ0Qzs7RW1KeDg1Qk07O0lBRUUsNEJBQUE7RW5KMjg1QlI7O0VtSno4NUJNOztJQUVFLDhCQUFBO0VuSjQ4NUJSOztFbUoxODVCTTs7SUFFRSwrQkFBQTtFbko2ODVCUjs7RW1KMzg1Qk07O0lBRUUsNkJBQUE7RW5KODg1QlI7O0VnQm4rNUJNO0ltSTBCSSw2QkFBQTtFbko2ODVCVjtFaUJ2KzVCTTtJa0k2QkksOEJBQUE7RW5KNjg1QlY7O0VnQjErNUJNO0ltSWtDSSw4QkFBQTtFbko0ODVCVjtFaUI5KzVCTTtJa0lxQ0ksNkJBQUE7RW5KNDg1QlY7O0VtSm44NUJNO0lBQXdCLDJCQUFBO0VuSnU4NUI5Qjs7RW1KdDg1Qk07O0lBRUUsK0JBQUE7RW5KeTg1QlI7O0VtSnY4NUJNOztJQUVFLGlDQUFBO0VuSjA4NUJSOztFbUp4ODVCTTs7SUFFRSxrQ0FBQTtFbkoyODVCUjs7RW1Kejg1Qk07O0lBRUUsZ0NBQUE7RW5KNDg1QlI7O0VnQnpnNkJNO0ltSWtFSSxnQ0FBQTtFbkoyODVCVjtFaUI3ZzZCTTtJa0lxRUksaUNBQUE7RW5KMjg1QlY7O0VnQmhoNkJNO0ltSTBFSSxpQ0FBQTtFbkowODVCVjtFaUJwaDZCTTtJa0k2RUksZ0NBQUE7RW5KMDg1QlY7O0VtSnorNUJNO0lBQXdCLDBCQUFBO0VuSjYrNUI5Qjs7RW1KNSs1Qk07O0lBRUUsOEJBQUE7RW5KKys1QlI7O0VtSjcrNUJNOztJQUVFLGdDQUFBO0VuSmcvNUJSOztFbUo5KzVCTTs7SUFFRSxpQ0FBQTtFbkppLzVCUjs7RW1KLys1Qk07O0lBRUUsK0JBQUE7RW5Kay81QlI7O0VnQi9pNkJNO0ltSWtFSSwrQkFBQTtFbkppLzVCVjtFaUJuajZCTTtJa0lxRUksZ0NBQUE7RW5KaS81QlY7O0VnQnRqNkJNO0ltSTBFSSxnQ0FBQTtFbkpnLzVCVjtFaUIxajZCTTtJa0k2RUksK0JBQUE7RW5KZy81QlY7O0VtSi9nNkJNO0lBQXdCLHdCQUFBO0VuSm1oNkI5Qjs7RW1KbGg2Qk07O0lBRUUsNEJBQUE7RW5KcWg2QlI7O0VtSm5oNkJNOztJQUVFLDhCQUFBO0VuSnNoNkJSOztFbUpwaDZCTTs7SUFFRSwrQkFBQTtFbkp1aDZCUjs7RW1Kcmg2Qk07O0lBRUUsNkJBQUE7RW5Kd2g2QlI7O0VnQnJsNkJNO0ltSWtFSSw2QkFBQTtFbkp1aDZCVjtFaUJ6bDZCTTtJa0lxRUksOEJBQUE7RW5KdWg2QlY7O0VnQjVsNkJNO0ltSTBFSSw4QkFBQTtFbkpzaDZCVjtFaUJobTZCTTtJa0k2RUksNkJBQUE7RW5Kc2g2QlY7O0VtSnJqNkJNO0lBQXdCLDBCQUFBO0VuSnlqNkI5Qjs7RW1KeGo2Qk07O0lBRUUsOEJBQUE7RW5KMmo2QlI7O0VtSnpqNkJNOztJQUVFLGdDQUFBO0VuSjRqNkJSOztFbUoxajZCTTs7SUFFRSxpQ0FBQTtFbko2ajZCUjs7RW1KM2o2Qk07O0lBRUUsK0JBQUE7RW5KOGo2QlI7O0VnQjNuNkJNO0ltSWtFSSwrQkFBQTtFbko2ajZCVjtFaUIvbjZCTTtJa0lxRUksZ0NBQUE7RW5KNmo2QlY7O0VnQmxvNkJNO0ltSTBFSSxnQ0FBQTtFbko0ajZCVjtFaUJ0bzZCTTtJa0k2RUksK0JBQUE7RW5KNGo2QlY7O0VtSjNsNkJNO0lBQXdCLHdCQUFBO0VuSitsNkI5Qjs7RW1KOWw2Qk07O0lBRUUsNEJBQUE7RW5KaW02QlI7O0VtSi9sNkJNOztJQUVFLDhCQUFBO0VuSmttNkJSOztFbUpobTZCTTs7SUFFRSwrQkFBQTtFbkptbTZCUjs7RW1Kam02Qk07O0lBRUUsNkJBQUE7RW5Kb202QlI7O0VnQmpxNkJNO0ltSWtFSSw2QkFBQTtFbkptbTZCVjtFaUJycTZCTTtJa0lxRUksOEJBQUE7RW5KbW02QlY7O0VnQnhxNkJNO0ltSTBFSSw4QkFBQTtFbkprbTZCVjtFaUI1cTZCTTtJa0k2RUksNkJBQUE7RW5Ka202QlY7O0VtSjNsNkJFO0lBQW1CLHVCQUFBO0VuSitsNkJyQjs7RW1KOWw2QkU7O0lBRUUsMkJBQUE7RW5KaW02Qko7O0VtSi9sNkJFOztJQUVFLDZCQUFBO0VuSmttNkJKOztFbUpobTZCRTs7SUFFRSw4QkFBQTtFbkptbTZCSjs7RW1Kam02QkU7O0lBRUUsNEJBQUE7RW5Kb202Qko7O0VnQnZzNkJNO0ltSXlHQSw0QkFBQTtFbkprbTZCTjtFaUIzczZCTTtJa0k0R0EsNkJBQUE7RW5Ka202Qk47O0VnQjlzNkJNO0ltSWlIQSw2QkFBQTtFbkppbTZCTjtFaUJsdDZCTTtJa0lvSEEsNEJBQUE7RW5KaW02Qk47QUFDRjtBb0pydDZCRTtFQUNFLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLFFBQUE7RUFDQSxTQUFBO0VBQ0EsT0FBQTtFQUNBLFVBQUE7RUFFQSxvQkFBQTtFQUNBLFdBQUE7RUFFQSxtQ0FBQTtBcEpxdDZCSjtBcUovdDZCQTtFQUFrQiw0R0FBQTtBckptdTZCbEI7QXFKL3Q2QkE7RUFBaUIsOEJBQUE7QXJKbXU2QmpCO0FxSmx1NkJBO0VBQWlCLDhCQUFBO0FySnN1NkJqQjtBcUpydTZCQTtFQUFpQiw4QkFBQTtBckp5dTZCakI7QXFKeHU2QkE7RUNURSxnQkFBQTtFQUNBLHVCQUFBO0VBQ0EsbUJBQUE7QXRKcXY2QkY7QXFKdHU2Qkk7RUFBd0IsMkJBQUE7QXJKMHU2QjVCO0FxSnp1NkJJO0VBQXdCLDRCQUFBO0FySjZ1NkI1QjtBcUo1dTZCSTtFQUF3Qiw2QkFBQTtBckpndjZCNUI7QXdEOXI2Qkk7RTZGcERBO0lBQXdCLDJCQUFBO0VySnV2NkIxQjs7RXFKdHY2QkU7SUFBd0IsNEJBQUE7RXJKMHY2QjFCOztFcUp6djZCRTtJQUF3Qiw2QkFBQTtFcko2djZCMUI7QUFDRjtBd0Q1czZCSTtFNkZwREE7SUFBd0IsMkJBQUE7RXJKb3c2QjFCOztFcUpudzZCRTtJQUF3Qiw0QkFBQTtFckp1dzZCMUI7O0VxSnR3NkJFO0lBQXdCLDZCQUFBO0VySjB3NkIxQjtBQUNGO0F3RHp0NkJJO0U2RnBEQTtJQUF3QiwyQkFBQTtFckppeDZCMUI7O0VxSmh4NkJFO0lBQXdCLDRCQUFBO0VySm94NkIxQjs7RXFKbng2QkU7SUFBd0IsNkJBQUE7RXJKdXg2QjFCO0FBQ0Y7QXdEdHU2Qkk7RTZGcERBO0lBQXdCLDJCQUFBO0VySjh4NkIxQjs7RXFKN3g2QkU7SUFBd0IsNEJBQUE7RXJKaXk2QjFCOztFcUpoeTZCRTtJQUF3Qiw2QkFBQTtFckpveTZCMUI7QUFDRjtBd0RudjZCSTtFNkZwREE7SUFBd0IsMkJBQUE7RXJKMnk2QjFCOztFcUoxeTZCRTtJQUF3Qiw0QkFBQTtFcko4eTZCMUI7O0VxSjd5NkJFO0lBQXdCLDZCQUFBO0VySml6NkIxQjtBQUNGO0FxSjV5NkJBO0VBQW1CLG9DQUFBO0FySit5NkJuQjtBcUo5eTZCQTtFQUFtQixvQ0FBQTtBckprejZCbkI7QXFKano2QkE7RUFBbUIscUNBQUE7QXJKcXo2Qm5CO0FxSmp6NkJBO0VBQXVCLDJCQUFBO0FySnF6NkJ2QjtBcUpwejZCQTtFQUF1QiwrQkFBQTtBckp3ejZCdkI7QXFKdno2QkE7RUFBdUIsMkJBQUE7QXJKMno2QnZCO0FxSjF6NkJBO0VBQXVCLDJCQUFBO0FySjh6NkJ2QjtBcUo3ejZCQTtFQUF1Qiw4QkFBQTtBckppMDZCdkI7QXFKaDA2QkE7RUFBdUIsNkJBQUE7QXJKbzA2QnZCO0FxSmgwNkJBO0VBQWMsc0JBQUE7QXJKbzA2QmQ7QXVKMzI2QkU7RUFDRSx5QkFBQTtBdko4MjZCSjtBbUJsMjZCRTtFb0lQTSx5QkFBQTtBdko2MjZCUjtBdUpuMzZCRTtFQUNFLHlCQUFBO0F2SnMzNkJKO0FtQjEyNkJFO0VvSVBNLHlCQUFBO0F2SnEzNkJSO0F1SjMzNkJFO0VBQ0UseUJBQUE7QXZKODM2Qko7QW1CbDM2QkU7RW9JUE0seUJBQUE7QXZKNjM2QlI7QXVKbjQ2QkU7RUFDRSxzQkFBQTtBdkpzNDZCSjtBbUIxMzZCRTtFb0lQTSx5QkFBQTtBdkpxNDZCUjtBdUozNDZCRTtFQUNFLHlCQUFBO0F2Sjg0NkJKO0FtQmw0NkJFO0VvSVBNLHlCQUFBO0F2SjY0NkJSO0F1Sm41NkJFO0VBQ0UseUJBQUE7QXZKczU2Qko7QW1CMTQ2QkU7RW9JUE0seUJBQUE7QXZKcTU2QlI7QXVKMzU2QkU7RUFDRSx5QkFBQTtBdko4NTZCSjtBbUJsNTZCRTtFb0lQTSx5QkFBQTtBdko2NTZCUjtBdUpuNjZCRTtFQUNFLHlCQUFBO0F2SnM2NkJKO0FtQjE1NkJFO0VvSVBNLHlCQUFBO0F2SnE2NkJSO0F1SjM2NkJFO0VBQ0UseUJBQUE7QXZKODY2Qko7QW1CbDY2QkU7RW9JUE0seUJBQUE7QXZKNDY2QlI7QXVKbDc2QkU7RUFDRSx5QkFBQTtBdkpxNzZCSjtBbUJ6NjZCRTtFb0lQTSx5QkFBQTtBdkptNzZCUjtBdUp6NzZCRTtFQUNFLHlCQUFBO0F2SjQ3NkJKO0FtQmg3NkJFO0VvSVBNLHlCQUFBO0F2SjA3NkJSO0F1Smg4NkJFO0VBQ0UseUJBQUE7QXZKbTg2Qko7QW1Cdjc2QkU7RW9JUE0seUJBQUE7QXZKaTg2QlI7QXVKdjg2QkU7RUFDRSx5QkFBQTtBdkowODZCSjtBbUI5NzZCRTtFb0lQTSx5QkFBQTtBdkp3ODZCUjtBdUo5ODZCRTtFQUNFLHlCQUFBO0F2Smk5NkJKO0FtQnI4NkJFO0VvSVBNLHlCQUFBO0F2Sis4NkJSO0F1SnI5NkJFO0VBQ0UseUJBQUE7QXZKdzk2Qko7QW1CNTg2QkU7RW9JUE0seUJBQUE7QXZKczk2QlI7QXVKNTk2QkU7RUFDRSx5QkFBQTtBdkorOTZCSjtBbUJuOTZCRTtFb0lQTSx1QkFBQTtBdko2OTZCUjtBdUpuKzZCRTtFQUNFLHlCQUFBO0F2SnMrNkJKO0FtQjE5NkJFO0VvSVBNLHlCQUFBO0F2Sm8rNkJSO0F1SjErNkJFO0VBQ0UseUJBQUE7QXZKNis2Qko7QW1Cais2QkU7RW9JUE0seUJBQUE7QXZKMis2QlI7QXVKai82QkU7RUFDRSx5QkFBQTtBdkpvLzZCSjtBbUJ4KzZCRTtFb0lQTSx5QkFBQTtBdkprLzZCUjtBdUp4LzZCRTtFQUNFLHlCQUFBO0F2SjIvNkJKO0FtQi8rNkJFO0VvSVBNLHlCQUFBO0F2SnkvNkJSO0F1Si8vNkJFO0VBQ0UseUJBQUE7QXZKa2c3Qko7QW1CdC82QkU7RW9JUE0seUJBQUE7QXZKZ2c3QlI7QXVKdGc3QkU7RUFDRSx5QkFBQTtBdkp5ZzdCSjtBbUI3LzZCRTtFb0lQTSx5QkFBQTtBdkp1ZzdCUjtBdUo3ZzdCRTtFQUNFLHlCQUFBO0F2SmdoN0JKO0FtQnBnN0JFO0VvSVBNLHlCQUFBO0F2SjhnN0JSO0F1SnBoN0JFO0VBQ0UseUJBQUE7QXZKdWg3Qko7QW1CM2c3QkU7RW9JUE0seUJBQUE7QXZKcWg3QlI7QXFKOSs2QkE7RUFBYSx5QkFBQTtBckprLzZCYjtBcUpqLzZCQTtFQUVJLHlCQUFBO0FySm0vNkJKO0FZdDI2QlE7RXlJN0lKLDBDQUFBO0FySnMvNkJKO0FxSmwvNkJBO0VBQWlCLHFDQUFBO0FySnMvNkJqQjtBcUpyLzZCQTtFQUFpQiwwQ0FBQTtBckp5LzZCakI7QXFKci82QkE7RUczREUsV0FBQTtFQUNBLGtCQUFBO0VBQ0EsaUJBQUE7RUFDQSw2QkFBQTtFQUNBLFNBQUE7QXhKb2o3QkY7QXFKei82QkE7RUFBd0IsZ0NBQUE7QXJKNi82QnhCO0FxSjMvNkJBO0VBQ0UsaUNBQUE7RUFDQSxvQ0FBQTtBcko4LzZCRjtBcUp6LzZCQTtFQUFjLHlCQUFBO0FySjYvNkJkO0F5SnhrN0JBO0VBQ0Usa0NBQUE7RUFDQSxtQ0FBQTtBekoyazdCRjtBeUp2azdCQTtFQUNFLDZCQUFBO0F6SjBrN0JGO0F5SnZrN0JBO0VBQ0UsNkJBQUE7QXpKMGs3QkY7QXlKdms3QkE7RUFDRSwwQkFBQTtBekowazdCRjtBeUp2azdCQTtFQUNFLDZCQUFBO0F6SjBrN0JGO0F5SnZrN0JBO0VBQ0UsNEJBQUE7QXpKMGs3QkY7QXlKdms3QkE7RUFDRSw2QkFBQTtBekowazdCRjtBeUp2azdCQTtFQUNFLDBCQUFBO0F6SjBrN0JGO0F5SnZrN0JBO0VBQ0UsNEJBQUE7QXpKMGs3QkY7QXlKdms3QkE7RUFDRSxnQkFBQTtBekowazdCRjtBeUp2azdCQTtFQUNFLHFCQUFBO0F6SjBrN0JGO0F5SnZrN0JBO0VBQ0UscUJBQUE7QXpKMGs3QkY7QXlKdms3QkE7RUFDRSxtQjNJekNnQjtBZG1uN0JsQjtBeUp2azdCQTtFQUNFLG9CQUFBO0F6SjBrN0JGO0F5SnZrN0JBO0VBQ0UscUJBQUE7QXpKMGs3QkY7QXlKdms3QkE7RUFDRSwwQ0FBQTtBekowazdCRjtBMEpubzdCQTtFQUNFLDhCQUFBO0ExSnNvN0JGO0EwSm5vN0JBO0VBQ0UsNkJBQUE7QTFKc283QkY7QWlCdm83Qk07RTBJTkosY0FBQTtFQUNBLG1CQUFBO0EzSmlwN0JGO0EySi9vN0JFO0VBQ0UsaUJBQUE7QTNKaXA3Qko7QTRKenA3QkE7RUFFSSxzQkFBQTtBNUoycDdCSjtBWTM5NkJRO0VnSmhNSix5QkFBQTtBNUo4cDdCSjtBd0QxazdCSTtFb0dqRkE7SUFFRSx5QkFBQTtFNUo4cDdCSjtFNEo1cDdCRTtJQUNFLFNBQUE7RTVKOHA3Qko7QUFDRjtBNEo1cDdCRTtFQUNFLHdCQUFBO0VBRUUscUJBQUE7QTVKNnA3Qk47QVkzKzZCUTtFZ0psTEYsd0NBQUE7QTVKZ3E3Qk47QTRKdnA3QkU7RUFDRSxhQUFBO0VBQ0EsbUIxRG5CTTtFMERvQk4scUJBQUE7RUFFRSxjQUFBO0E1SnlwN0JOO0FZci82QlE7RWdKcEtGLGdDQUFBO0E1SjRwN0JOO0E0SnpwN0JJO0VBRUksY0FBQTtBNUoycDdCUjtBWTUvNkJRO0VnSi9KQSxnQ0FBQTtBNUo4cDdCUjtBNEoxcDdCSTtFQUNFLFNBQUE7QTVKNnA3Qk47QWdCanM3QlE7RTRJMENGLGtCMUR0Q0k7QWxHZ3M3QlY7QWlCcHM3QlE7RTJJNkNGLGlCMUR6Q0k7QWxHbXM3QlY7QTRKdHA3QkU7RUFDRSxlQUFBO0VBQ0Esb0IxRC9DTTtFMERnRE4sd0JBQUE7RUFFRSxxQkFBQTtBNUp1cDdCTjtBWS9nN0JRO0VnSnhJRix3Q0FBQTtBNUowcDdCTjtBNEp0cDdCRTtFQUNFLGFBQUE7RUFDQSxlQUFBO0VBQ0EsV0FBQTtBNUp5cDdCSjtBZ0J0dDdCUTtFNElzRUYsaUJBQUE7QTVKbXA3Qk47QWlCenQ3QlE7RTJJeUVGLGtCQUFBO0E1Sm1wN0JOO0E0Si9vN0JFO0VBQ0UsV0FBQTtFQUNBLHFCOUl4RWM7RThJeUVkLGdCQUFBO0E1SmlwN0JKO0E0SjlvN0JFO0VBQ0UsZ0NBQUE7QTVKZ3A3Qko7QTRKN283QkU7RUFDRSxhQUFBO0VBQ0EsbUJBQUE7QTVKK283Qko7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LDBDQUFBO0VBa2cvQkY7RUFoZy9CQTtJQUNFLDBDQUFBO0VBa2cvQkY7RUFoZy9CQTtJQUNFLDBDQUFBO0VBa2cvQkY7RUFoZy9CQTtJQUNFLDBDQUFBO0VBa2cvQkY7RUFoZy9CQTtJQUNFLDBDQUFBO0VBa2cvQkY7QUFDRjtBQTcvK0JBO0VBQ0U7SUFDRSxlQUFBO0VBKy8rQkY7O0VBNS8rQkE7SUFDRSxrQkFBQTtJQUNBLGNBQUE7SUFDQSxxQkFBQTtJQUNBLG1CQUFBO0lBQ0EsWUFBQTtJQUNBLGlCQUFBO0VBKy8rQkY7QUFDRiIsImZpbGUiOiJzdHlsZXMuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgXCJ2YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJjdXN0b21cIjtcbkBpbXBvcnQgXCJzdHlsZXNoZWV0XCI7XG5AaW1wb3J0IFwibWF0ZXJpYWxcIjtcbkBpbXBvcnQgXCJzY2FsaW5nXCI7XG5AaW1wb3J0ICdmb250JztcbkBpbXBvcnQgXCJjb2xvcnNcIjtcblxuLy8gSW1wb3J0IHN0eWxlcyB3aXRoIGhvbWUgbGF5b3V0LlxuQGltcG9ydCAnfkBjb3JldWkvY29yZXVpLXByby9zY3NzL2NvcmV1aSc7XG5cbi8vIFNwaW5raXRcbkBpbXBvcnQgJ35zcGlua2l0L3Njc3Mvc3BpbmtpdC5zY3NzJztcblxuLy8gU3dpcGVyXG5AaW1wb3J0ICd+c3dpcGVyL3N3aXBlci1idW5kbGUnO1xuXG4vLyBJbXBvcnQgdG9hc3Qgc3R5bGVcbkBpbXBvcnQgJ35uZ3gtdG9hc3RyL3RvYXN0cic7XG5cbmFwcC1kZWZhdWx0LWxheW91dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xufVxuXG4uYXBwLWJvZHkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1jb2xvcjtcbn1cblxuLmFwcC1ib2R5IC5tYWluIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLW1vei1ib3g7XG4gIGhlaWdodDogMTAwdmg7XG4gIHdpZHRoOiAxMDB2dztcbiAgb3ZlcmZsb3cteDogc2Nyb2xsO1xuICBvdmVyZmxvdy15OiBoaWRkZW47XG59XG5cbmJvZHkge1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgY29sb3I6ICRibGFjay1jb2xvcjtcbn1cblxuLnNjYWxpbmcge1xufVxuXG5ociB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1ncmF5LWNvbG9yO1xufVxuXG4ubm8tbWFyZ2luIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4uYXV0by1tYXJnaW4ge1xuICBtYXJnaW46IGF1dG87XG59XG5cbi5kaXZpZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0VBRUFFQTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsMCwwLDApICFpbXBvcnRhbnQ7XG59XG5cbi5rcC1idXR0b24ge1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBvdXRsaW5lOiB0cmFuc3BhcmVudCAwO1xuICBib3JkZXI6IDA7XG59XG5cbi5rcC1idXR0b246Zm9jdXMge1xuICBvdXRsaW5lOm5vbmU7XG4gIC8vIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi8vIFNsaWRlckpzXG4uc3dpcGVyLXBhZ2luYXRpb24ge1xuICBsZWZ0OiAwO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG59XG5cbi5zd2lwZXItY29udGFpbmVyIC5zd2lwZXItYnV0dG9uLXByZXYge1xuICBjb2xvcjogd2hpdGU7XG59XG5cbi5zd2lwZXItY29udGFpbmVyIC5zd2lwZXItYnV0dG9uLW5leHQge1xuICBjb2xvcjogd2hpdGU7XG59XG5cbi5zd2lwZXItYnV0dG9uLW5leHQ6aG92ZXIsIC5zd2lwZXItYnV0dG9uLW5leHQ6Zm9jdXMsIC5zd2lwZXItYnV0dG9uLW5leHQ6YWN0aXZlIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLy8gcGFkZGluZyBhbmQgbWFyZ2luc1xuLm5vLXBhZGRpbmcgeyBwYWRkaW5nOiAwOyB9XG4ucHQtOHB4IHsgcGFkZGluZy10b3A6IDAuNXJlbTsgfVxuLnBiLThweCB7IHBhZGRpbmctYm90dG9tOiAwLjVyZW07IH1cbi5tdC1ub25lIHsgbWFyZ2luLXRvcDogMC4wcmVtOyB9XG4ubXQtOHB4IHsgbWFyZ2luLXRvcDogMC41cmVtOyB9XG4ubXQtMTBweCB7IG1hcmdpbi10b3A6IDAuNjI1cmVtOyB9XG4ubXQtMTRweCB7IG1hcmdpbi10b3A6IDAuODc1cmVtOyB9XG4ubXQtMTZweCB7IG1hcmdpbi10b3A6IDFyZW07IH1cbi5tdC0yMHB4IHsgbWFyZ2luLXRvcDogMS4yNXJlbTsgfVxuLm10LTI0cHggeyBtYXJnaW4tdG9wOiAxLjVyZW07IH1cbi5tdC0yOHB4IHsgbWFyZ2luLXRvcDogMS43NXJlbTsgfVxuLm10LTQ4cHggeyBtYXJnaW4tdG9wOiAzcmVtOyB9XG4ubWItbm9uZSB7IG1hcmdpbi1ib3R0b206IDA7IH1cbi5tYi0xNnB4IHsgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuLm1iLTIwcHggeyBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9XG4ubWItMjRweCB7IG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuLm1iLTMycHggeyBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG4ubGgtODBwIHsgbGluZS1oZWlnaHQ6IDgwJTsgfVxuXG4vLyBGbGV4aW5nXG4uZmxleC1jb250YWluZXIgeyBkaXNwbGF5OiBmbGV4OyB9XG4uZmxleC1pbmxpbmUgeyBkaXNwbGF5OiBpbmxpbmUtZmxleDsgfVxuLmZsZXgtd3JhcC1jb250ZW50IHsgZmxleC13cmFwOiB3cmFwOyB9XG4uZmxleC1jb250ZW50LWVuZCB7IGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cbi5mbGV4LWFsaWduLWVuZCB7IGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgfVxuXG4vLyBBbGlnblxuLmFsaWduLXNlbGYtY2VudGVyIHsgYWxpZ24tc2VsZjogY2VudGVyOyB9XG5cbi8vIEZsb2F0XG4uZmxvYXQtbGVmdCB7IGZsb2F0OiBsZWZ0OyB9XG4uZmxvYXQtcmlnaHQgeyBmbG9hdDogcmlnaHQ7IH1cbi5uby1wYWRkaW5nIHsgcGFkZGluZzogMDsgfVxuLnB0LThweCB7IHBhZGRpbmctdG9wOiAwLjVyZW07IH1cbi5wdC0xNnB4IHsgcGFkZGluZy10b3A6IDFyZW07IH1cbi5wdC0yNHB4IHsgcGFkZGluZy10b3A6IDEuNXJlbTsgfVxuLnBiLThweCB7IHBhZGRpbmctYm90dG9tOiAwLjVyZW07IH1cbi5tdC1ub25lIHsgbWFyZ2luLXRvcDogMC4wcmVtOyB9XG4ubXQtMnB4IHsgbWFyZ2luLXRvcDogMC4xMjVyZW07IH1cbi5tdC00cHggeyBtYXJnaW4tdG9wOiAwLjI1cmVtOyB9XG4ubXQtNnB4IHsgbWFyZ2luLXRvcDogMC4zNzVyZW07IH1cbi5tdC04cHggeyBtYXJnaW4tdG9wOiAwLjVyZW07IH1cbi5tdC0xMHB4IHsgbWFyZ2luLXRvcDogMC42MjVyZW07IH1cbi5tdC0xMnB4IHsgbWFyZ2luLXRvcDogMC43NXJlbTsgfVxuLm10LTE0cHggeyBtYXJnaW4tdG9wOiAwLjg3NXJlbTsgfVxuLm10LTE2cHggeyBtYXJnaW4tdG9wOiAxcmVtOyB9XG4ubXQtMjBweCB7IG1hcmdpbi10b3A6IDEuMjVyZW07IH1cbi5tdC0yNHB4IHsgbWFyZ2luLXRvcDogMS41cmVtOyB9XG4ubXQtMjhweCB7IG1hcmdpbi10b3A6IDEuNzVyZW07IH1cbi5tdC0zMnB4IHsgbWFyZ2luLXRvcDogMnJlbTsgfVxuLm10LTQwcHggeyBtYXJnaW4tdG9wOiAyLjVyZW07IH1cbi5tdC00OHB4IHsgbWFyZ2luLXRvcDogM3JlbTsgfVxuLm1sLThweCB7IG1hcmdpbi1sZWZ0OiAwLjVyZW07IH1cbi5tbC0xMnB4IHsgbWFyZ2luLWxlZnQ6IDAuNzVyZW07IH1cbi5tbC0xNnB4IHsgbWFyZ2luLWxlZnQ6IDFyZW07IH1cbi5tbC0xNnB4LWZvcmNlIHsgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDsgfVxuLm1yLTZweCB7IG1hcmdpbi1yaWdodDogMC4zNzVyZW07IH1cbi5tci0xMHB4IHsgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTsgfVxuLm1iLTE2cHggeyBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4ubWItMjBweCB7IG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbi5tYi0yNHB4IHsgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9XG4ubWItMzJweCB7IG1hcmdpbi1ib3R0b206IDJyZW07IH1cbi5tYi02NHB4IHsgbWFyZ2luLWJvdHRvbTogNHJlbTsgfVxuLm1iLTk2cHggeyBtYXJnaW4tYm90dG9tOiA2cmVtOyB9XG4ubGgtODBwIHsgbGluZS1oZWlnaHQ6IDgwJTsgfVxuXG4vLyBGbGV4aW5nXG4uZmxleC1jb250YWluZXIgeyBkaXNwbGF5OiBmbGV4OyB9XG4uZmxleC1zcGFjZS1iZXR3ZWVuIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4uZmxleC1pbmxpbmUgeyBkaXNwbGF5OiBpbmxpbmUtZmxleDsgfVxuLmZsZXgtd3JhcC1jb250ZW50IHsgZmxleC13cmFwOiB3cmFwOyB9XG4uZmxleC1jb250ZW50LWVuZCB7IGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cbi5mbGV4LWFsaWduLWVuZCB7IGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgfVxuLmZsZXgtanVzdGlmeS1jZW50ZXIgeyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciB9XG4uZmxleC1hbGlnbi1jZW50ZXIgeyBhbGlnbi1pdGVtczogY2VudGVyIH1cbi5mbGV4LWZpbGwgeyBmbGV4OiAxOyB9XG4uZnVsbC1jZW50ZXJlZC10ZXh0IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLy8gQWxpZ25cbi5hbGlnbi1zZWxmLWZsZXgtZW5kIHsgYWxpZ24tc2VsZjogZmxleC1lbmQ7IH1cbi5hbGlnbi1zZWxmLWNlbnRlciB7IGFsaWduLXNlbGY6IGNlbnRlcjsgfVxuXG4vLyBGbG9hdFxuLmZsb2F0LWxlZnQgeyBmbG9hdDogbGVmdDsgfVxuLmZsb2F0LXJpZ2h0IHsgZmxvYXQ6IHJpZ2h0OyB9XG4uZmxvYXQtZG93biB7IGZsb2F0OiBib3R0b20gfVxuLmZsb2F0LXVwIHsgZmxvYXQ6IHRvcDsgfVxuXG4vLyBTaXppbmdcbi5oMTAwcCB7IGhlaWdodDogMTAwJTsgfVxuLncxMDBwIHsgd2lkdGg6IDEwMCU7IH1cbi5maWxsIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLy8gQmxvY2tcbi5pbmxpbmUtYmxvY2sgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLmJsb2NrIHsgZGlzcGxheTogYmxvY2s7IH1cblxuLm1vZGFsLWNvbnRlbnQge1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDEwcHggIWltcG9ydGFudDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAxMHB4ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHggIWltcG9ydGFudDtcbiAgYm9yZGVyOiB1bnNldDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmJsdXJyZWQtYmFja2dyb3VuZCB7XG4gIGJhY2tkcm9wLWZpbHRlcjogYmx1cigycHgpO1xufVxuXG4vLyBUb2FzdHJcblxuLmN1c3RvbS10b2FzdCB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLnRvYXN0LWNvbnRhaW5lciAuY3VzdG9tLXRvYXN0Lm5neC10b2FzdHIudG9hc3Qtc3VjY2VzcyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b2FzdHItc3VjY2Vzcy1jb2xvcjtcbn1cblxuLnRvYXN0LWNvbnRhaW5lciAuY3VzdG9tLXRvYXN0Lm5neC10b2FzdHIudG9hc3QtaW5mbyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b2FzdHItaW5mby1jb2xvcjtcbn1cblxuLnRvYXN0LWNvbnRhaW5lciAuY3VzdG9tLXRvYXN0Lm5neC10b2FzdHIudG9hc3Qtd2FybmluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b2FzdHItd2FybmluZy1jb2xvcjtcbn1cblxuLnRvYXN0LWNvbnRhaW5lciAuY3VzdG9tLXRvYXN0Lm5neC10b2FzdHIudG9hc3QtZXJyb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9hc3RyLWVycm9yLWNvbG9yO1xufVxuXG4vLyBUZXh0IHdyYXBwaW5nXG5cbi5lbGxpcHNpcy1ub3dyYXAtdGV4dCB7XG4gIHdpZHRoOiAxMDAlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xufVxuXG4ubGl2ZS12aWV3LW1vZGFsLWxhbmRzY2FwZSAubW9kYWwteGwge1xuICBtYXgtd2lkdGg6IDk1dnc7XG4gIG1heC1oZWlnaHQ6IDkwdmg7XG59XG5cbi5saXZlLXZpZXctbW9kYWwtcG9ydHJhaXQgLm1vZGFsLXhsIHtcbiAgbWF4LXdpZHRoOiA2NXZ3O1xuICBtYXgtaGVpZ2h0OiA5NXZoO1xufVxuXG4vLyB0b29sdGlwIHN0eWxpbmcgbmVlZHMgdG8gYmUgaW4gdGhlIGdsb2JhbCBzdHlsZXNoZWV0XG4udG9vbHRpcCB7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuICB6LWluZGV4OiAxMDUyICFpbXBvcnRhbnQ7XG59XG5cbi5zaG93LnRvb2x0aXAge1xuICBvcGFjaXR5OiAxO1xuICB6LWluZGV4OiAxMDUyICFpbXBvcnRhbnQ7XG59XG5cbi5jZGstb3ZlcmxheS1jb250YWluZXIge1xuICB6LWluZGV4OiAxMDUyO1xufVxuXG4udG9vbHRpcC50b29sdGlwLXRvcCxcbi50b29sdGlwLnRvb2x0aXAtYm90dG9tLFxuLnRvb2x0aXAudG9vbHRpcC1sZWZ0LFxuLnRvb2x0aXAudG9vbHRpcC1yaWdodCB7XG4gIHotaW5kZXg6IDEwMDAwMDtcbn1cblxuLy8gQW5pbWF0aW5nXG5cbi5hbmltYXRpbmcge1xuICBhbmltYXRpb246IDAuNzVzIGZsaWNrZXItd2hpdGUtY29sb3IgaW5maW5pdGUgYWx0ZXJuYXRlO1xufVxuXG4uZGFyay1hbmltYXRpb24uYW5pbWF0aW5nIHtcbiAgYW5pbWF0aW9uOiAwLjc1cyBmbGlja2VyLWRhcmstY29sb3IgaW5maW5pdGUgYWx0ZXJuYXRlO1xufVxuXG5Aa2V5ZnJhbWVzIGZsaWNrZXItd2hpdGUtY29sb3Ige1xuICAwJSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICB9XG4gIDEwJSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICB9XG4gIDIwJSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xuICB9XG4gIDMwJSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpO1xuICB9XG4gIDQwJSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuICB9XG4gIDUwJSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpO1xuICB9XG4gIDYwJSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuICB9XG4gIDcwJSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpO1xuICB9XG4gIDgwJSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xuICB9XG4gIDkwJSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICB9XG4gIDEwMCUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZsaWNrZXItZGFyay1jb2xvciB7XG4gIDAlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIwMCwgMjAwLCAyMDAsIDAuMSk7XG4gIH1cbiAgMTAlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIwMCwgMjAwLCAyMDAsIDAuMik7XG4gIH1cbiAgMjAlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIwMCwgMjAwLCAyMDAsIDAuMyk7XG4gIH1cbiAgMzAlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIwMCwgMjAwLCAyMDAsIDAuNCk7XG4gIH1cbiAgNDAlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIwMCwgMjAwLCAyMDAsIDAuNSk7XG4gIH1cbiAgNTAlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIwMCwgMjAwLCAyMDAsIDAuNik7XG4gIH1cbiAgNjAlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIwMCwgMjAwLCAyMDAsIDAuNSk7XG4gIH1cbiAgNzAlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIwMCwgMjAwLCAyMDAsIDAuNCk7XG4gIH1cbiAgODAlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIwMCwgMjAwLCAyMDAsIDAuMyk7XG4gIH1cbiAgOTAlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIwMCwgMjAwLCAyMDAsIDAuMik7XG4gIH1cbiAgMTAwJSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMDAsIDIwMCwgMjAwLCAwLjEpO1xuICB9XG59XG5cblxuLy8gTU9CSUxFXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRjb25zaWRlcmVkLW1vYmlsZSkge1xuICAuY3VzdG9tLXRvYXN0IHtcbiAgICBmb250LXNpemU6IDJyZW07XG4gIH1cblxuICAuY3VzdG9tLWJ1dHRvbiB7XG4gICAgcGFkZGluZzogMXJlbSAycmVtO1xuICAgIG1hcmdpbjogMCAxcmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDEuNXJlbTtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIGhlaWdodDogNnJlbTtcbiAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgfVxufVxuXG4iLCIvLyBSZXF1aXJlZCBmb3IgbG9hZGluZyBpbiBib2R5IGRpdlxuLm1haW4ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogMDtcbn1cblxuLnNlY29uZGFyeSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICB6LWluZGV4OiBhdXRvOyAvLyBJZiBub3QgYXV0bywgdGhlbiBkb2Vzbid0IGFsbCBmYWIgaW5kZXggdG8gd29yayBwcm9wZXJseVxuICAvLyBodHRwczovL3d3dy5mcmVlY29kZWNhbXAub3JnL25ld3Mvei1pbmRleC1leHBsYWluZWQtaG93LXRvLXN0YWNrLWVsZW1lbnRzLXVzaW5nLWNzcy03YzVhYTBmMTc5YjMvXG59XG5cbi56ZXJvLWxldHRlci1zcGFjaW5nIHtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG59XG4iLCIvLyBEZWZhdWx0IEZvbnRcblxuLmRlZmF1bHQtaXRhbGljIHtcbiAgLy9AZXh0ZW5kIC5mb250LWZhbWlseTtcbn1cblxuLmRlZmF1bHQtcmVndWxhciB7XG4gIC8vQGV4dGVuZCAuZm9udC1mYW1pbHk7XG59XG5cbi5kZWZhdWx0LW1lZGl1bSB7XG4gIC8vQGV4dGVuZCAuZm9udC1mYW1pbHk7XG59XG5cbi5kZWZhdWx0LWJvbGQtaXRhbGljIHtcbiAgLy9AZXh0ZW5kIC5mb250LWZhbWlseTtcbn1cblxuLmRlZmF1bHQtc2VtaS1ib2xkIHtcbiAgLy9AZXh0ZW5kIC5mb250LWZhbWlseTtcbn1cblxuLmRlZmF1bHQtc2VtaS1ib2xkLWl0YWxpYyB7XG4gIC8vQGV4dGVuZCAuZm9udC1mYW1pbHk7XG59XG5cbi5kZWZhdWx0LWJvbGQge1xuICAvL0BleHRlbmQgLmZvbnQtZmFtaWx5O1xufVxuXG4vKiBXb3JrIFNhbnMgU3RhcnQgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gICovXG4ud29yay1zYW5zLWxpZ2h0IHtcbiAgZm9udC1mYW1pbHk6IHdvcmstc2Fucywgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4ud29yay1zYW5zLXJlZ3VsYXIge1xuICBmb250LWZhbWlseTogd29yay1zYW5zLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi53b3JrLXNhbnMtbWVkaXVtIHtcbiAgZm9udC1mYW1pbHk6IHdvcmstc2Fucywgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4ud29yay1zYW5zLXNlbWktYm9sZCB7XG4gIGZvbnQtZmFtaWx5OiB3b3JrLXNhbnMsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLndvcmstc2Fucy1ib2xkIHtcbiAgZm9udC1mYW1pbHk6IHdvcmstc2Fucywgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4ud29yay1zYW5zLWV4dHJhLWJvbGQge1xuICBmb250LWZhbWlseTogd29yay1zYW5zLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogODAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFdvcmsgU2FucyBFbmQgKi9cblxuLyogUmFqZGhhbmkgU3RhcnQgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gICovXG4ucmFqZGhhbmktbGlnaHQge1xuICBmb250LWZhbWlseTogcmFqZGhhbmksIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLnJhamRoYW5pLXJlZ3VsYXIge1xuICBmb250LWZhbWlseTogcmFqZGhhbmksIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLnJhamRoYW5pLW1lZGl1bSB7XG4gIGZvbnQtZmFtaWx5OiByYWpkaGFuaSwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4ucmFqZGhhbmktc2VtaS1ib2xkIHtcbiAgZm9udC1mYW1pbHk6IHJhamRoYW5pLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi5yYWpkaGFuaS1ib2xkIHtcbiAgZm9udC1mYW1pbHk6IHJhamRoYW5pLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi5yYWpkaGFuaS1ib2xkIHtcbiAgZm9udC1mYW1pbHk6IHJhamRoYW5pLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogODAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFJhamRoYW5pIEVuZCAqL1xuXG5cbi8vIHNpemVzIC0gbWl4aW4gYWxsb3dzIHlvdSB0byBjaHVuayB0aGlzIGludG8gYW5vdGhlciBjbGFzcyB3aXRoIEBpbmNsdWRlXG5AbWl4aW4gZjEycHgge2ZvbnQtc2l6ZTogMC43NXJlbTt9XG5AbWl4aW4gZjE0cHgge2ZvbnQtc2l6ZTogMC44NzVyZW07fVxuQG1peGluIGYxNnB4IHtmb250LXNpemU6IDFyZW07fVxuQG1peGluIGYxOHB4IHtmb250LXNpemU6IDEuMTI1cmVtO31cbkBtaXhpbiBmMjBweCB7Zm9udC1zaXplOiAxLjI1cmVtO31cbkBtaXhpbiBmMjRweCB7Zm9udC1zaXplOiAxLjVyZW07fVxuQG1peGluIGYyOHB4IHtmb250LXNpemU6IDEuNzVyZW07fVxuQG1peGluIGYzMnB4IHtmb250LXNpemU6IDJyZW07fVxuQG1peGluIGY0MHB4IHtmb250LXNpemU6IDIuNXJlbTt9XG5AbWl4aW4gZjQ4cHgge2ZvbnQtc2l6ZTogM3JlbTt9XG4iLCJAaW1wb3J0IFwidmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiZm9udFwiO1xuQGltcG9ydCBcInNyYy9zY3NzL2N1c3RvbVwiO1xuXG4vLyBOYXYgQmFyXG5cbi5zaWRlYmFyIHtcbiAgd2lkdGg6ICRzaWRlYmFyLXdpZHRoICFpbXBvcnRhbnQ7XG59XG5cbi5hcHAtYm9keSAuc2lkZWJhci1zaG93IH4gLm1haW4ge1xuICBtYXJnaW4tbGVmdDogJHNpZGViYXItd2lkdGggIWltcG9ydGFudDtcbn1cblxuLmFwcC1ib2R5IC5zaWRlYmFyLWhpZGUgfiAubWFpbiB7XG4gIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG59XG5cbi5zdHlsZS1uYXYge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LWJhY2tncm91bmQtY29sb3I7XG4gIHBhZGRpbmc6IDJyZW07XG59XG5cbi5uYXYtdWwge1xuICBwYWRkaW5nOiAwO1xufVxuXG4ubmF2LWl0ZW0ge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gIGNvbG9yOiAkbmF2LWluYWN0aXZlLXRleHQtY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IDAuNjI1cmVtO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG1hcmdpbjogMC4yNXJlbSAwLjVyZW07XG59XG5cbi5uYXYtaXRlbS5hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LWFjdGl2ZS1iYWNrZ3JvdW5kLWNvbG9yO1xuICBjb2xvcjogJG5hdi1hY3RpdmUtdGV4dC1jb2xvcjtcbn1cblxuLm5hdi1pdGVtLnBhc3NpdmUtc2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICBjb2xvcjogJG5hdi1hY3RpdmUtdGV4dC1jb2xvcjtcbn1cblxuLm5hdi1pdGVtLnBhc3NpdmUtc2VsZWN0aW9uIC5uYXYtaXRlbS1sYWJlbCB7XG4gIGhlaWdodDogMi4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDIuMjVyZW07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuXG4ubmF2LWl0ZW0ucGFzc2l2ZS1zZWxlY3Rpb24gLm5hdi1pdGVtLWxhYmVsLm11bHRpLWxpbmUtbGFiZWwge1xuICBsaW5lLWhlaWdodDogMS4xMjVyZW07XG59XG5cbi5uYXYtaXRlbS1sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTI1cmVtO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgY29sb3I6ICRuYXYtaW5hY3RpdmUtdGV4dC1jb2xvcjtcbiAgQGV4dGVuZCAuZGVmYXVsdC1yZWd1bGFyO1xufVxuXG5saS5uYXYtaXRlbS5hY3RpdmUgLm5hdi1pdGVtLWxhYmVsIHtcbiAgY29sb3I6ICRuYXYtYWN0aXZlLXRleHQtY29sb3I7XG4gIEBleHRlbmQgLmRlZmF1bHQtYm9sZDtcbn1cblxubGkubmF2LWl0ZW0uYWN0aXZlIC5uYXYtYmFyLWljb24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5saS5uYXYtaXRlbS5hY3RpdmUgLm5hdi1iYXItaWNvbi1maWxsZWQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5uYXYtYmFyLWljb24sIC5uYXYtYmFyLWljb24tZmlsbGVkIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMS41cmVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG9wYWNpdHk6IDAuNztcbn1cblxuLm5hdi1iYXItaWNvbi1maWxsZWQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubmF2LWl0ZW06aG92ZXIgLm5hdi1iYXItaWNvbiB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5uYXYtaXRlbTpob3ZlciAubmF2LWl0ZW0tbGFiZWwge1xuICBjb2xvcjogJG5hdi1hY3RpdmUtdGV4dC1jb2xvcjtcbn1cblxuLm5hdi1pdGVtLW5vdGlmaWNhdGlvbi1waWxsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi1ub3RpZmljYXRpb24tcGlsbC1jb2xvcjtcbiAgY29sb3I6ICR3aGl0ZS1jb2xvcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAwLjYyNXJlbTtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuMzc1cmVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBib3JkZXItcmFkaXVzOiAxLjEyNXJlbTtcbiAgbWluLXdpZHRoOiAxLjVyZW07XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLXRvcDogMC4ycmVtO1xuICBAZXh0ZW5kIC5kZWZhdWx0LXNlbWktYm9sZDtcbn1cblxuLyogVGV4dF9GaWVsZF9TdGFydCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLy9ub2luc3BlY3Rpb24gQUxMXG4uY3VzdG9tLXRleHRmaWVsZCB7XG4gIGNvbG9yOiAkcHJpbWFyeS10ZXh0LWNvbG9yO1xuICBoZWlnaHQ6IDIuNXJlbTtcbiAgd2lkdGg6IC13ZWJraXQtZmlsbC1hdmFpbGFibGU7XG4gIGJvcmRlci1yYWRpdXM6IDAuNjI1cmVtO1xuICBib3JkZXI6IDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxcmVtO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGV4dGZpZWxkLWZpbGwtY29sb3I7XG4gIGJvcmRlcjogMXB4IHNvbGlkICR0ZXh0ZmllbGQtZmlsbC1jb2xvcjtcbiAgcGFkZGluZzogMC44MTI1cmVtIDAuNXJlbTtcbiAgQGV4dGVuZCAuZGVmYXVsdC1yZWd1bGFyO1xufVxuXG4uY3VzdG9tLXRleHRmaWVsZDpyZWFkLW9ubHkge1xuICBvdXRsaW5lOiBub25lO1xuICBib3JkZXI6IDA7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRlZmF1bHQtZ3JheS1jb2xvcjtcbn1cblxuLmN1c3RvbS10ZXh0ZmllbGQ6cmVhZC1vbmx5OmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRkZWZhdWx0LWdyYXktY29sb3I7XG59XG5cbi5jdXN0b20tdGV4dGZpZWxkOmZvY3VzIHtcbiAgY29sb3I6ICRwcmltYXJ5LXRleHQtY29sb3I7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICR0ZXh0ZmllbGQtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGV4dGZpZWxkLWZvY3VzLWZpbGwtY29sb3I7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggMXB4ICRleHRyYS1saWdodC1ncmV5LWNvbG9yO1xuICBAZXh0ZW5kIC5kZWZhdWx0LW1lZGl1bTtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBUZXh0X0ZpZWxkX0VuZCAqL1xuXG4vLyBJIG5hbWVkIHRoaW5ncyBhY2NvcmRpbmcgdG8gaG93IHRoZXkgd2VyZSBsYWJlbGxlZCBpbiB4ZC5hZG9iZSBieSBDb25vclxuLyogVGV4dF9TdGFydCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmN1c3RvbS1oZWFkbGluZSB7XG4gIEBleHRlbmQgLmRlZmF1bHQtYm9sZDtcbiAgQGV4dGVuZCAuemVyby1sZXR0ZXItc3BhY2luZztcbiAgZm9udC1zaXplOiAycmVtO1xuICBjb2xvcjogJGJsYWNrLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uY3VzdG9tLXNlY3Rpb24tdGl0bGUge1xuICBAZXh0ZW5kIC5kZWZhdWx0LWJvbGQ7XG4gIEBleHRlbmQgLnplcm8tbGV0dGVyLXNwYWNpbmc7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBjb2xvcjogJGJsYWNrLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uY3VzdG9tLXNlY3Rpb24tc3VidGl0bGUge1xuICBAZXh0ZW5kIC5kZWZhdWx0LWJvbGQ7XG4gIEBleHRlbmQgLnplcm8tbGV0dGVyLXNwYWNpbmc7XG4gIGNvbG9yOiAkYmxhY2stY29sb3I7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmN1c3RvbS1zZWN0aW9uLXN1YnRleHQge1xuICBAZXh0ZW5kIC5kZWZhdWx0LXJlZ3VsYXI7XG4gIEBleHRlbmQgLnplcm8tbGV0dGVyLXNwYWNpbmc7XG4gIGNvbG9yOiAkZXh0cmEtZGFyay1ncmF5LWNvbG9yO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjEyNXJlbTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmN1c3RvbS1tb2RhbC1zZWN0aW9uLWhlYWRlci10ZXh0IHtcbiAgQGV4dGVuZCAuZGVmYXVsdC1ib2xkO1xuICBAZXh0ZW5kIC56ZXJvLWxldHRlci1zcGFjaW5nO1xuICBjb2xvcjogJGJsYWNrLWNvbG9yO1xuICBmb250LXNpemU6IDFyZW07XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5jdXN0b20tZXJyb3ItdGV4dCB7XG4gIEBleHRlbmQgLmRlZmF1bHQtaXRhbGljO1xuICBAZXh0ZW5kIC56ZXJvLWxldHRlci1zcGFjaW5nO1xuICBjb2xvcjogJHJlZC1jb2xvcjtcbiAgZm9udC1zaXplOiAwLjYyNXJlbTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgb3BhY2l0eTogMTtcbn1cblxuaDMge1xuICBAZXh0ZW5kIC5kZWZhdWx0LWJvbGQ7XG4gIEBleHRlbmQgLnplcm8tbGV0dGVyLXNwYWNpbmc7XG4gIGNvbG9yOiAkYmxhY2stY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIG9wYWNpdHk6IDE7XG59XG5cbmJvZHkge1xuICBAZXh0ZW5kIC5kZWZhdWx0LXJlZ3VsYXI7XG4gIEBleHRlbmQgLnplcm8tbGV0dGVyLXNwYWNpbmc7XG4gIGNvbG9yOiAkYmxhY2stY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIG9wYWNpdHk6IDE7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gVGV4dF9FbmQgKi9cblxuLyogQnV0dG9uc19TdGFydCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmN1c3RvbS1idXR0b24ge1xuICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gIG1hcmdpbjogMCAwLjVyZW07XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMC42MjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjEyNXJlbTtcbiAgb3BhY2l0eTogMTtcbiAgaGVpZ2h0OiAyLjc1cmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC44cztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBAZXh0ZW5kIC56ZXJvLWxldHRlci1zcGFjaW5nO1xuICBAZXh0ZW5kIC5kZWZhdWx0LXNlbWktYm9sZDtcbiAgQGV4dGVuZCAucmlwcGxlXG59XG5cbi5jdXN0b20tYnV0dG9uIGltZyB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5jdXN0b20tYnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLmN1c3RvbS1idXR0b24gLnNob3ctb24taG92ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uY3VzdG9tLWJ1dHRvbjpob3ZlciAuaGlkZS1vbi1ob3ZlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jdXN0b20tYnV0dG9uOmhvdmVyIC5zaG93LW9uLWhvdmVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uY3VzdG9tLWJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JleS1jb2xvcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDBzO1xufVxuXG4ucHJlZmVycmVkLWJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUtY29sb3I7XG4gIGNvbG9yOiAkYnV0dG9uLXdoaXRlLXRleHQtY29sb3I7XG59XG5cbi5pY29uLWJ1dHRvbi1pY29uIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ucm91bmRlZC1pY29uLWJ1dHRvbiB7XG4gIGhlaWdodDogMnJlbTtcbiAgd2lkdGg6IDJyZW07XG4gIHBhZGRpbmc6IDAuNHJlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xufVxuXG4ucm91bmRlZC1pY29uLWJ1dHRvbiAuaWNvbi1idXR0b24taWNvbiB7XG4gIG1hcmdpbjogMDtcbn1cblxuLnByZWZlcnJlZC1idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLXByZWZlcnJlZC1ob3Zlci1jb2xvcjtcbn1cblxuLnByZWZlcnJlZC1idXR0b24uZGlzYWJsZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JleS1jb2xvcjtcbn1cblxuLm5ldXRyYWwtYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1uZXV0cmFsLWNvbG9yO1xuICBjb2xvcjogJGJ1dHRvbi1ibGFjay10ZXh0LWNvbG9yO1xufVxuXG4ubmV1dHJhbC1idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLW5ldXRyYWwtaG92ZXItY29sb3I7XG59XG5cbi5uZXV0cmFsLWJ1dHRvbi5kaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRkZWZhdWx0LWdyYXktY29sb3I7XG4gIG9wYWNpdHk6IDAuNTtcbn1cblxuLmRhcmstbmV1dHJhbC1idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWRhcmstbmV1dHJhbC1jb2xvcjtcbiAgY29sb3I6ICRidXR0b24td2hpdGUtdGV4dC1jb2xvcjtcbn1cblxuLmRhcmstbmV1dHJhbC1idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWRhcmstbmV1dHJhbC1ob3Zlci1jb2xvcjtcbn1cblxuLmRhcmstbmV1dHJhbC1idXR0b24uZGlzYWJsZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGVmYXVsdC1ncmF5LWNvbG9yO1xufVxuXG4ub3V0bGluZWQtYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLWNvbG9yO1xuICBjb2xvcjogJGJ1dHRvbi1ibGFjay10ZXh0LWNvbG9yO1xuICBAZXh0ZW5kIC5ib3JkZXJlZC1idXR0b25cbn1cblxuLm91dGxpbmVkLWJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tb3V0bGluZWQtaG92ZXItY29sb3I7XG59XG5cbi5vdXRsaW5lZC1idXR0b24uZGlzYWJsZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JleS1jb2xvcjtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4uZGVzdHJ1Y3RpdmUtYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLWNvbG9yO1xuICBjb2xvcjogJHJlZC1jb2xvcjtcbiAgYm9yZGVyOiAwLjEyNHJlbSBzb2xpZCAkcmVkLWNvbG9yO1xufVxuXG4uZGVzdHJ1Y3RpdmUtYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHJlZC1jb2xvcjtcbiAgY29sb3I6ICRidXR0b24td2hpdGUtdGV4dC1jb2xvcjtcbn1cblxuLmRlc3RydWN0aXZlLWJ1dHRvbi5kaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmV5LWNvbG9yO1xuICBjb2xvcjogJGJ1dHRvbi1ibGFjay10ZXh0LWNvbG9yO1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi50ZXh0LWJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tdGV4dC1jb2xvcjtcbiAgY29sb3I6ICRidXR0b24tYmxhY2stdGV4dC1jb2xvcjtcbn1cblxuLnRleHQtYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi10ZXh0LWhvdmVyLWNvbG9yO1xufVxuXG4uYmFjay1idXR0b24ge1xuICBwYWRkaW5nOiAwLjc1cmVtIDFyZW0gMC43NXJlbSAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLXRleHQtY29sb3I7XG4gIGNvbG9yOiAkYnV0dG9uLWJsYWNrLXRleHQtY29sb3I7XG4gIG9wYWNpdHk6IDAuNTtcbn1cblxuLmJhY2stYnV0dG9uIGltZyB7XG4gIG1hcmdpbi1yaWdodDogMC4yNXJlbTtcbn1cblxuLmJhY2stYnV0dG9uOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi10ZXh0LWNvbG9yO1xufVxuXG4udGV4dC1saW5rLWhlbHBlciB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjEyNXJlbTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY29sb3I6ICRwcmltYXJ5LWJsdWUtY29sb3I7XG4gIEBleHRlbmQgLmRlZmF1bHQtbWVkaXVtXG59XG5cbi5pbmxpbmUtdGV4dC1saW5rIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDAgMC41cmVtO1xufVxuXG4udGV4dC1saW5rIHtcbiAgY29sb3I6ICRwcmltYXJ5LWJsdWUtY29sb3I7XG59XG5cbi50ZXh0LWxpbmsuZGlzYWJsZWQge1xuICBjb2xvcjogJGxpZ2h0LWdyZXktY29sb3I7XG59XG5cbi50ZXh0LWxpbmsuZGlzYWJsZWQ6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGN1cnNvcjogbm9uZTtcbn1cblxuLnRleHQtbGluazpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi50ZXh0LWxpbmsuZGVzdHJ1Y3RpdmUtbGluayB7XG4gIGNvbG9yOiAkcmVkLWNvbG9yO1xufVxuXG4udGV4dC1saW5rLmRlc3RydWN0aXZlLWxpbmsuZGlzYWJsZWQge1xuICBjb2xvcjogJGxpZ2h0LXJlZC1jb2xvcjtcbn1cblxuLmJvcmRlcmVkLWJ1dHRvbiB7XG4gIGJvcmRlcjogMC4xMjRyZW0gc29saWQgJGJ1dHRvbi1ib3JkZXItY29sb3I7XG59XG5cbi5mdWxsLXdpZHRoLWJ1dHRvbiB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uaW4tYnV0dG9uLWxvYWRpbmcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IDEuNXJlbTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uaW4tYnV0dG9uLWxvYWRpbmcgYXBwLWxvYWRpbmcgLmxvYWRpbmctY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cblxuLnJpcHBsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgIzAwMCAxMCUsIHRyYW5zcGFyZW50IDEwLjAxJSk7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCU7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxMCwgMTApO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycywgb3BhY2l0eSAwLjVzO1xuICB9XG5cbiAgJjphY3RpdmU6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCwgMCk7XG4gICAgb3BhY2l0eTogLjI7XG4gICAgdHJhbnNpdGlvbjogMHM7XG4gIH1cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBCdXR0b25zX0VuZCAqL1xuXG5cbi8qIExhYmVsc19TdGFydCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmN1c3RvbS1sYWJlbCB7XG4gIHBhZGRpbmc6IDAuMTI1cmVtIDAuNHJlbTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwLjNyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjEyNXJlbTtcbiAgb3BhY2l0eTogMTtcbiAgaGVpZ2h0OiAxLjI1cmVtO1xuICBmb250LXNpemU6IDAuNjI1cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGxldHRlci1zcGFjaW5nOiAwLjZweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgQGV4dGVuZCAuZGVmYXVsdC1zZW1pLWJvbGQ7XG59XG5cbi5wcmVmZXJyZWQtbGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1ibHVlLWNvbG9yO1xuICBjb2xvcjogJHdoaXRlLWNvbG9yO1xufVxuXG4ucG9zaXRpdmUtbGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGFiZWwtcG9zaXRpdmUtY29sb3I7XG4gIGNvbG9yOiAkbGFiZWwtcG9zaXRpdmUtdGV4dC1jb2xvcjtcbn1cblxuLm5ldXRyYWwtbGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGFiZWwtbmV1dHJhbC1jb2xvcjtcbiAgY29sb3I6ICRsYWJlbC1uZXV0cmFsLXRleHQtY29sb3I7XG59XG5cbi5uZWdhdGl2ZS1sYWJlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRsYWJlbC1uZWdhdGl2ZS1jb2xvcjtcbiAgY29sb3I6ICRsYWJlbC1uZWdhdGl2ZS10ZXh0LWNvbG9yO1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIExhYmVsc19FbmQgKi9cblxuLyogVG9nZ2xlX1N3aXRjaF9TdGFydCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uY3VzdG9tLXN3aXRjaC1jb250YWluZXIge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS41cmVtO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjb2xvcjogJHByaW1hcnktdGV4dC1jb2xvcjtcbiAgQGV4dGVuZCAuZGVmYXVsdC1tZWRpdW07XG5cbiAgaW1nIHtcbiAgICBoZWlnaHQ6IDFyZW07XG4gICAgd2lkdGg6IDFyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbTtcbiAgICBvcGFjaXR5OiAwLjU7XG4gIH1cblxuICBsYWJlbCB7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gIH1cbn1cblxuLyogVGhlIHN3aXRjaCAtIHRoZSBib3ggYXJvdW5kIHRoZSBzbGlkZXIgKi9cbi5jdXN0b20tc3dpdGNoIHtcbiAgZmxleC1zaHJpbms6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMi44NzVyZW07XG4gIGhlaWdodDogMS41cmVtO1xuICBtYXJnaW4tbGVmdDogMS4xMjVyZW07XG59XG5cbi8qIEhpZGUgaG9tZSBIVE1MIGNoZWNrYm94ICovXG4uY3VzdG9tLXN3aXRjaCBpbnB1dCB7XG4gIG9wYWNpdHk6IDA7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG59XG5cbi8qIFRoZSBzbGlkZXIgKi9cbi5jdXN0b20tc2xpZGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHN3aXRjaC1iYXNlLWNvbG9yO1xuICAtd2Via2l0LXRyYW5zaXRpb246IC40cztcbiAgdHJhbnNpdGlvbjogLjRzO1xuICBib3JkZXItcmFkaXVzOiAzNHB4O1xufVxuXG4uY3VzdG9tLXNsaWRlcjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzd2l0Y2gtaG92ZXItY29sb3Jcbn1cblxuLmN1c3RvbS1zbGlkZXI6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiBcIlwiO1xuICBoZWlnaHQ6IDEuMjVyZW07XG4gIHdpZHRoOiAxLjI1cmVtO1xuICB0b3A6IDAuMXJlbTtcbiAgbGVmdDogMC4xNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLWNvbG9yO1xuICAtd2Via2l0LXRyYW5zaXRpb246IC40cztcbiAgdHJhbnNpdGlvbjogLjRzO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cbmlucHV0OmNoZWNrZWQgKyAuY3VzdG9tLXNsaWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzd2l0Y2gtYWN0aXZhdGVkLWNvbG9yO1xufVxuXG5pbnB1dDpmb2N1cyArIC5jdXN0b20tc2xpZGVyIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuaW5wdXQ6Y2hlY2tlZCArIC5jdXN0b20tc2xpZGVyOmJlZm9yZSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEuMzc1cmVtKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxLjM3NXJlbSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxLjM3NXJlbSk7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBUb2dnbGVfU3dpdGNoX0VuZCAqL1xuXG4vKiBSYWRpb19TdGFydCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5jdXN0b20tcmFkaW8tZm9ybSB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5jdXN0b20tcmFkaW8tbGFiZWwge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMXJlbTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbWFyZ2luLWxlZnQ6IDAuMzc1cmVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBAZXh0ZW5kIC5kZWZhdWx0LW1lZGl1bTtcbn1cblxuLmN1c3RvbS1yYWRpbyB7XG4gIGhlaWdodDogMS4yNXJlbTtcbiAgd2lkdGg6IDEuMjVyZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5jdXN0b20tcmFkaW8tb3B0aW9uIHtcbiAgcGFkZGluZzogMC41cmVtIDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5jdXN0b20tcmFkaW8tb3B0aW9uLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMCAxcmVtO1xufVxuXG4uY3VzdG9tLXJhZGlvLW9wdGlvbiBpbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgb3BhY2l0eTogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uY3VzdG9tLWN1c3RvbS1yYWRpbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiAxLjI1cmVtO1xuICB3aWR0aDogMS4yNXJlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHJhZGlvLWJhc2UtY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgZmxleC1zaHJpbms6IDA7XG59XG5cbi5jdXN0b20tcmFkaW8tb3B0aW9uLmRpc2FibGVkIGlucHV0IHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLmN1c3RvbS1yYWRpby1vcHRpb24uZGlzYWJsZWQ6aG92ZXIgLmN1c3RvbS1jdXN0b20tcmFkaW8ge1xuICBiYWNrZ3JvdW5kOiAkcmFkaW8tYmFzZS1jb2xvcjtcbn1cblxuLmN1c3RvbS1yYWRpby1vcHRpb246aG92ZXIgLmN1c3RvbS1jdXN0b20tcmFkaW8ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmFkaW8taG92ZXItY29sb3I7XG59XG5cbi5jdXN0b20tcmFkaW8tb3B0aW9uIGlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWN1c3RvbS1yYWRpbyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRyYWRpby1hY3RpdmF0ZWQtY29sb3I7XG59XG5cbi5jdXN0b20tY3VzdG9tLXJhZGlvOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uY3VzdG9tLXJhZGlvLW9wdGlvbiBpbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jdXN0b20tcmFkaW86YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmN1c3RvbS1yYWRpby1vcHRpb24gLmN1c3RvbS1jdXN0b20tcmFkaW86YWZ0ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMC42MjVyZW0gLSAoMC4zNzVyZW0gLyAyKTtcbiAgbGVmdDogMC42MjVyZW0gLSAoMC4zNzVyZW0gLyAyKTtcbiAgd2lkdGg6IDAuMzc1cmVtO1xuICBoZWlnaHQ6IDAuMzc1cmVtO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQ6ICR3aGl0ZS1jb2xvcjtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gUmFkaW9fRW5kICovXG5cbi8qIFRvZ2dsZV9TdGFydCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmN1c3RvbS10b2dnbGUge1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b2dnbGUtYmFzZS1jb2xvcjtcbiAgaGVpZ2h0OiAycmVtO1xuICB3aWR0aDogMnJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMXJlbTtcbiAgcGFkZGluZzogMC41NjI1cmVtIDA7XG4gIEBleHRlbmQgLmRlZmF1bHQtbWVkaXVtO1xufVxuXG4uY3VzdG9tLXRvZ2dsZTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b2dnbGUtaG92ZXItY29sb3I7XG59XG5cbi5jdXN0b20tdG9nZ2xlLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b2dnbGUtYWN0aXZhdGVkLWNvbG9yO1xuICBjb2xvcjogJHdoaXRlLWNvbG9yO1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFRvZ2dsZV9FbmQgKi9cblxuXG4vKiBDYXJkc19TdGFydCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmN1c3RvbS1jYXJkIHtcbiAgd2lkdGg6IDE0cmVtO1xuICBoZWlnaHQ6IDEwcmVtO1xuICBtaW4td2lkdGg6IDE0cmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG4gIG9wYWNpdHk6IDE7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHRvcDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBAZXh0ZW5kIC5jdXN0b20tY2FyZC1yYWRpdXMtdG9wO1xuICBAZXh0ZW5kIC5jdXN0b20tY2FyZC1yYWRpdXMtYm90dG9tO1xufVxuXG4uY2FyZC5jdXN0b20tY2FyZDpob3ZlciAuY3VzdG9tLWNhcmQtbGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItZ3JheS1jb2xvcjtcbiAgb3BhY2l0eTogMS4wO1xuICBoZWlnaHQ6IDVyZW07XG4gIHRyYW5zaXRpb246IDAuMjVzIGVhc2UtaW4tb3V0O1xufVxuXG4uY3VzdG9tLWNhcmQtbGFiZWwge1xuICBoZWlnaHQ6IDQuNXJlbTtcbiAgYmFja2dyb3VuZDogJGNhcmQtYmFubmVyLWNvbG9yIDAgMCBuby1yZXBlYXQgcGFkZGluZy1ib3g7XG4gIG9wYWNpdHk6IDAuOTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgbWFyZ2luLXRvcDogYXV0bztcbiAgQGV4dGVuZCAuY3VzdG9tLWNhcmQtcmFkaXVzLWJvdHRvbTtcbn1cblxuLmN1c3RvbS1jYXJkLXJhZGl1cy10b3Age1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjYyNXJlbTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuNjI1cmVtO1xufVxuXG4uY3VzdG9tLWNhcmQtcmFkaXVzLWJvdHRvbSB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuNjI1cmVtO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC42MjVyZW07XG59XG5cbi5jdXN0b20tY2FyZC1sYWJlbC10aXRsZSB7XG4gIEBleHRlbmQgLmRlZmF1bHQtbWVkaXVtO1xuICBAZXh0ZW5kIC56ZXJvLWxldHRlci1zcGFjaW5nO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBjb2xvcjogIzczNzY4MDtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmN1c3RvbS1jYXJkLWxhYmVsLXRleHQge1xuICBAZXh0ZW5kIC5kZWZhdWx0LWJvbGQ7XG4gIEBleHRlbmQgLnplcm8tbGV0dGVyLXNwYWNpbmc7XG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjb2xvcjogJGNhcmQtdGV4dC1jb2xvcjtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmNhcmQtZGVjayB7XG4gIG1hcmdpbjogMS41cmVtIDAgMCAwO1xufVxuXG4uY3VzdG9tLWNhcmQtZGVjayB7XG4gIG1hcmdpbjogMS41cmVtIDAgMCAwO1xuICBvdmVyZmxvdy15OiBoaWRkZW47XG4gIG1heC1oZWlnaHQ6IDIwcmVtO1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgcGFkZGluZy1ib3R0b206IDAuMjVyZW07XG59XG5cbi5jdXN0b20tY2FyZC1kZWNrIC5jYXJkIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXggIWltcG9ydGFudDtcbn1cblxuLmN1c3RvbS1jYXJkLXdpdGgtYm90dG9tLW1hcmdpbiB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbn1cblxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBDYXJkc19FbmQgKi9cblxuXG4vKiBNZWRpYV9VcGxvYWRfU3RhcnQgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5jdXN0b20tdXBsb2FkLWFyZWEge1xuICBib3JkZXI6IDFweCBkYXNoZWQgJG1lZGlhLXVwbG9hZC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6IDAuNjI1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWVkaWEtdXBsb2FkLWJhY2tncm91bmQ7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uY3VzdG9tLXVwbG9hZC1mb3JtIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uY3VzdG9tLXVwbG9hZC1pY29uIHtcbiAgaGVpZ2h0OiAxLjVyZW07XG4gIG1hcmdpbjogMS41cmVtIGF1dG8gYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jdXN0b20tdXBsb2FkLXRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxcmVtO1xuICBAZXh0ZW5kIC5kZWZhdWx0LW1lZGl1bTtcbn1cblxuLmN1c3RvbS11cGxvYWQtbGFiZWwge1xuICBjb2xvcjogJG1lZGlhLXVwbG9hZC1ibHVlLWNvbG9yO1xufVxuXG4uY3VzdG9tLXVwbG9hZC1sYWJlbDpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5zZWNvbmRhcnktdXBsb2FkLXRleHQge1xuICBwYWRkaW5nLXRvcDogMC41cmVtO1xuICBjb2xvcjogJG1lZGlhLXVwbG9hZC1ncmV5LWNvbG9yO1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG59XG5cbi5jdXN0b20tZmlsZS1pbnB1dCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jdXN0b20tdXBsb2FkLWxpc3QtY29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDEuMjVyZW0gMDtcbn1cblxuLmN1c3RvbS11cGxvYWQtbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5jdXN0b20tdXBsb2FkLWJ1dHRvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmN1c3RvbS11cGxvYWQtYnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLmN1c3RvbS11cGxvYWQtYnV0dG9uLWljb24ge1xuICBoZWlnaHQ6IDEuMjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBmaWx0ZXI6IGludmVydCg0OSUpIHNlcGlhKDglKSBzYXR1cmF0ZSg0MjglKSBodWUtcm90YXRlKDE4OWRlZykgYnJpZ2h0bmVzcyg5MiUpIGNvbnRyYXN0KDg2JSk7XG59XG5cbi5jdXN0b20tdXBsb2FkLXByZXZpZXcuZXJyb3IgLmN1c3RvbS1yZW1vdmUtdXBsb2FkLWJ1dHRvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jdXN0b20tdXBsb2FkLXByZXZpZXcuZXJyb3IgLmN1c3RvbS1yZWZyZXNoLXVwbG9hZC1idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5jdXN0b20tdXBsb2FkLXByZXZpZXcuc3VjY2VzcyAuY3VzdG9tLXJlbW92ZS11cGxvYWQtYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uY3VzdG9tLXVwbG9hZC1wcmV2aWV3LnN1Y2Nlc3MgLmN1c3RvbS1yZWZyZXNoLXVwbG9hZC1idXR0b24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIE1lZGlhX1VwbG9hZF9FbmQgKi9cblxuLyogTGlzdHNfU3RhcnQgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uY3VzdG9tLXNlYXJjaC1yZXN1bHRzIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDAuNjI1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1iYWNrZ3JvdW5kLWNvbG9yO1xuICBib3JkZXI6IDFweCBzb2xpZCAkbGlzdC1ib3JkZXItY29sb3I7XG4gIG1hcmdpbjogMC42MjVyZW07XG4gIG1heC1oZWlnaHQ6IDMzdmg7XG59XG5cbi5jdXN0b20tcmVzdWx0cy1jb250YWluZXIge1xuICBvdmVyZmxvdzogc2Nyb2xsO1xuICBtYXgtaGVpZ2h0OiAyNnZoO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmN1c3RvbS1zZWFyY2gtcmVzdWx0cy1oZWFkZXIge1xuICBwYWRkaW5nOiAxLjU2MjVyZW0gMCAxcmVtIDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjEyNXJlbTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRkZWZhdWx0LWdyYXktY29sb3I7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSA0cmVtKTtcbiAgbWFyZ2luOiAwIDJyZW07XG4gIEBleHRlbmQgLmRlZmF1bHQtbWVkaXVtO1xufVxuXG4uY3VzdG9tLWxpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwIDFyZW0gMC41cmVtIDFyZW07XG4gIG1hcmdpbjogMDtcbn1cblxuLmN1c3RvbS1saXN0LWl0ZW0taW1hZ2Uge1xuICBoZWlnaHQ6IDNyZW07XG4gIHdpZHRoOiAzcmVtO1xuICBtYXJnaW46IDAgMCAwIDAuNzVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG5cbi5jdXN0b20tbGlzdC1pdGVtLWltYWdlLWljb24ge1xuICBoZWlnaHQ6IDNyZW07XG4gIHdpZHRoOiAzcmVtO1xuICBtYXJnaW46IDAgMCAwIDAuNzVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICRkZWZhdWx0LWdyYXktY29sb3I7XG4gIHBhZGRpbmc6IDAuNzVyZW07XG59XG5cbi5jdXN0b20tbGlzdC1pdGVtLXRleHQtY29udGFpbmVyIHtcbiAgcGFkZGluZzogMCAxcmVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSA0cmVtKTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLmN1c3RvbS1saXN0LWl0ZW0tdGV4dCB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjEyNXJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAgQGV4dGVuZCAuZGVmYXVsdC1ib2xkO1xufVxuXG4uY3VzdG9tLWxpc3QtaXRlbS1zdWJ0ZXh0IHtcbiAgZm9udC1zaXplOiAwLjYyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDAuNzVyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIEBleHRlbmQgLmRlZmF1bHQtbWVkaXVtO1xufVxuXG4uY3VzdG9tLWxpc3QtaXRlbSB7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMDtcbn1cblxuLmN1c3RvbS1saXN0LWl0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ob3Zlci1jb2xvcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuXG4uY3VzdG9tLWxpc3QtaXRlbS5pbmFjdGl2ZTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWJhY2tncm91bmQtY29sb3I7XG59XG5cbi5jdXN0b20tbGlzdC1pdGVtLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWFjdGl2ZS1jb2xvcjtcbiAgY3Vyc29yOiB0ZXh0ICFpbXBvcnRhbnQ7XG59XG5cblxuLm1lbnUtbGlzdC1jb250YWluZXIge1xuICBtYXgtaGVpZ2h0OiAzMHJlbTtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZDogJHdoaXRlLWNvbG9yO1xufVxuXG4ubWVudS1saXN0LWl0ZW0ge1xuICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gIGNvbG9yOiAkcHJpbWFyeS10ZXh0LWNvbG9yO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQ6ICR3aGl0ZS1jb2xvcjtcbiAgei1pbmRleDogOTk7XG4gIGJveC1zaGFkb3c6IDAgMCAycHggMnB4IHJnYmEoMjE4LCAyMjAsIDIyMiwgMC43KTtcbiAgYm9yZGVyLXJhZGl1czogMC42MjVyZW07XG4gIG1hcmdpbjogMXJlbSAwO1xufVxuXG4ubWVudS1saXN0LWl0ZW0uZGlzYWJsZWQge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZXh0cmEtbGlnaHQtZ3JleS1jb2xvcjtcbn1cblxuLm1lbnUtYWRkZWQge1xuICBAZXh0ZW5kIC5kZWZhdWx0LXNlbWktYm9sZDtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gTGlzdHNfRW5kICovXG5cbi8qIEltYWdlX1N0YXJ0IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmN1c3RvbS1wcm9maWxlLWltYWdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGhlaWdodDogNS42MjVyZW07IC8vIDkwcHg7XG4gIHdpZHRoOiA1LjYyNXJlbTsgLy8gOTBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRlZmF1bHQtZ3JheS1jb2xvcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uY3VzdG9tLXByb2ZpbGUtaW1hZ2UtcGFkZGluZyB7XG4gIHBhZGRpbmc6IDEuNzVyZW07XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIEltYWdlX0VuZCAqL1xuXG4vKiBNb2RhbF9TdGFydCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnN0aWNreS1oZWFkZXItY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgcGFkZGluZzogMS41cmVtIDEuNXJlbSAwIDEuNXJlbTtcbn1cblxuLnN0aWNreS1ib2R5LWNvbnRhaW5lciB7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgcGFkZGluZzogMCAxLjVyZW07XG59XG5cbi5zdGlja3ktZm9vdGVyLWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNiksIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KSwgJHdoaXRlLWNvbG9yLCAkd2hpdGUtY29sb3IpO1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiAwIDEuNXJlbSAxLjVyZW0gMS41cmVtO1xuICB6LWluZGV4OiAxMDtcbn1cblxuLnN0aWNreS1mb290ZXItY29udGFpbmVyLm1vZGFsLWZvb3Rlci1mbGV4LWVuZCB7XG4gIHBhZGRpbmctdG9wOiAzcmVtO1xufVxuXG4ubW9kYWwtZm9ybS1uZWdhdGl2ZS1wYWRkaW5nIHtcbiAgbWFyZ2luOiAwIC0xLjVyZW07XG59XG5cbi5tb2RhbC1ib2R5IHtcbiAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDNyZW0pO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBwYWRkaW5nOiAxLjVyZW07XG59XG5cbi5tb2RhbC1ib2R5LnN0aWNreSB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5tb2RhbC1oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMCAwIDEuMjVyZW0gMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRob3Zlci1ncmF5LWNvbG9yO1xufVxuXG4ubW9kYWwtdGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGNvbG9yOiAkcHJpbWFyeS10ZXh0LWNvbG9yO1xufVxuXG4ubW9kYWwtc3VidGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDJyZW07XG4gIGNvbG9yOiAkcHJpbWFyeS10ZXh0LWNvbG9yO1xuICBAZXh0ZW5kIC5kZWZhdWx0LW1lZGl1bTtcbn1cblxuLm1vZGFsLXN1Yi1zdWJ0aXRsZSB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGNvbG9yOiAkcHJpbWFyeS10ZXh0LWNvbG9yO1xuICBAZXh0ZW5kIC5kZWZhdWx0LW1lZGl1bTtcbn1cblxuLm1vZGFsLXN1Yi1zdWJ0aXRsZS10ZXh0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogNTAlO1xuICBjb2xvcjogJGV4dHJhLWRhcmstZ3JheS1jb2xvcjtcbiAgQGV4dGVuZCAuZGVmYXVsdC1tZWRpdW07XG59XG5cbi5tb2RhbC1zdWItc3VidGl0bGUtdGV4dCBzcGFuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb2xvcjogJHByaW1hcnktdGV4dC1jb2xvcjtcbiAgQGV4dGVuZCAuZGVmYXVsdC1zZW1pLWJvbGQ7XG59XG5cbi5pbmxpbmUtc3VidGl0bGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1pbi13aWR0aDogNTAlO1xufVxuXG4ubW9kYWwtc3VidGl0bGUtYWN0aW9uIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICB0b3A6IC0wLjVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5mb290ZXItYnV0dG9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgbWFyZ2luOiAxcmVtIDAgMXJlbSAwO1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5tb2RhbC1mb290ZXItZmxleC1lbmQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuXG4ubW9kYWwtZGl2aWRlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGhvdmVyLWdyYXktY29sb3I7XG4gIG1hcmdpbjogMC41cmVtIDA7XG4gIHBhZGRpbmctdG9wOiAwLjVyZW07XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIE1vZGFsX0VuZCAqL1xuXG4vKiBEcm9wX0Rvd25fTWVudV9TdGFydCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5jdXN0b20tZHJvcGRvd24tbWVudSB7XG4gIGJvcmRlci1yYWRpdXM6IDAuNjI1cmVtO1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBib3JkZXItY29sb3I6ICRob3Zlci1ncmF5LWNvbG9yO1xufVxuXG4uY3VzdG9tLWRyb3Bkb3duLW1lbnUtaGVhZGVyIHtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmxhY2stY29sb3I7XG4gIHBhZGRpbmctYm90dG9tOiAzcHg7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgQGV4dGVuZCAuZGVmYXVsdC1ib2xkO1xuICBAZXh0ZW5kIC5jdXN0b20taXRlbS1zaXppbmc7XG59XG5cbi5jdXN0b20tZHJvcGRvd24tbWVudS1pdGVtIHtcbiAgYm9yZGVyOiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiAyMDBweDtcbiAgbWF4LXdpZHRoOiAzMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBib3JkZXItcmFkaXVzOiAwLjYyNXJlbTtcbiAgcGFkZGluZzogMC42MjVyZW0gMXJlbTtcbiAgQGV4dGVuZCAuZGVmYXVsdC1yZWd1bGFyO1xuICBAZXh0ZW5kIC5jdXN0b20taXRlbS1zaXppbmc7XG59XG5cbi5jdXN0b20taXRlbS1zaXppbmcge1xuICBtaW4td2lkdGg6IDIwMHB4O1xuICBtYXgtd2lkdGg6IDQwMHB4O1xufVxuXG4uY3VzdG9tLWRyb3Bkb3duLW1lbnUtaXRlbTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRvZmYtd2hpdGUtY29sb3I7XG59XG5cbi5jdXN0b20tZHJvcGRvd24tbWVudS1pdGVtOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWdyYXktY29sb3I7XG59XG5cbi5jdXN0b20tZHJvcGRvd24tbWVudS1yZW1vdmUge1xuICBjb2xvcjogJHJlZC1jb2xvcjtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gRHJvcF9Eb3duX01lbnVfRW5kICovXG5cbi8qIERyb3BfRG93bl9TdGFydCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmN1c3RvbS1kcm9wZG93biB7XG4gIHBhZGRpbmc6IDAgMC43NXJlbSAwIDAuODc1cmVtO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAyLjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuNjI1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tYmFzZS1jb2xvcjtcbiAgY29sb3I6ICRkcm9wZG93bi10ZXh0LWNvbG9yO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4xMjVyZW07XG4gIGJvcmRlcjogbm9uZTtcbiAgQGV4dGVuZCAuZGVmYXVsdC1yZWd1bGFyO1xuICAvLyBIaWRlIHRoZSBob21lIGNoZXZyb25cbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC8vIEFkZCB0aGUgY3VzdG9tIGNoZXZyb25cbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9zcmMvYXNzZXRzL2ljb25zL2xpZ2h0L3NvbGlkL2Ryb3AtZG93bi5zdmcpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6IGNhbGMoMTAwJSAtIDAuN3JlbSk7XG4gIGJhY2tncm91bmQtcG9zaXRpb24teTogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDEuNXJlbTtcbn1cblxuLmN1c3RvbS1kcm9wZG93bjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5jdXN0b20tZHJvcGRvd246ZW5hYmxlZDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1ob3Zlci1jb2xvcjtcbiAgYm9yZGVyOiAxcHggc29saWQgJGRyb3Bkb3duLWhvdmVyLWJvcmRlci1jb2xvcjtcbiAgY29sb3I6ICRkcm9wZG93bi1ob3Zlci10ZXh0LWNvbG9yO1xuICBAZXh0ZW5kIC5kZWZhdWx0LXJlZ3VsYXI7XG59XG5cbi5jdXN0b20tZHJvcGRvd246ZGlzYWJsZWQsIC5jdXN0b20tdGV4dGZpZWxkOmRpc2FibGVkLCAuY3VzdG9tLXN3aXRjaC1pbnB1dDpkaXNhYmxlZCwgLmN1c3RvbS1zbGlkZXIuZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjU7XG59XG5cbi5jdXN0b20tZHJvcGRvd246ZGlzYWJsZWQ6aG92ZXIsIC5jdXN0b20tdGV4dGZpZWxkOmRpc2FibGVkOmhvdmVyLCAuY3VzdG9tLXN3aXRjaC1pbnB1dDpkaXNhYmxlZDpob3ZlciwgLmN1c3RvbS1zbGlkZXIuZGlzYWJsZWQ6aG92ZXIge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4uY3VzdG9tLWRyb3Bkb3duLWxhYmVsIHtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGxpbmUtaGVpZ2h0OiAxcmVtO1xuICBjb2xvcjogJGJsYWNrLWNvbG9yO1xuICBAZXh0ZW5kIC5kZWZhdWx0LW1lZGl1bTtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBEcm9wX0Rvd25fRW5kICovXG5cblxuLyogTm9fUmVzdWx0c19TdGFydCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4ubm8tcmVzdWx0cy1jb250YWluZXIge1xuICBtYXJnaW46IDZyZW0gYXV0byBhdXRvIGF1dG87XG4gIHdpZHRoOiA0MCU7XG4gIGhlaWdodDogMThyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ubm8tcmVzdWx0cy10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogM3JlbTtcbiAgY29sb3I6ICRwcmltYXJ5LXRleHQtY29sb3I7XG4gIEBleHRlbmQgLmRlZmF1bHQtYm9sZDtcbn1cblxuLm5vLXJlc3VsdHMtYm9keSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTI1cmVtO1xuICBjb2xvcjogJGV4dHJhLWRhcmstZ3JheS1jb2xvcjtcbiAgQGV4dGVuZCAuZGVmYXVsdC1yZWd1bGFyO1xufVxuXG4ubm8tcmVzdWx0cy1idXR0b24ge1xuICBtYXJnaW46IDEuNXJlbSAwIDAgMDtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBOb19SZXN1bHRzX0VuZCAqL1xuXG5cbi8qIEVkaXRfU2VjdGlvbl9TdGFydCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uY3VzdG9tLWVkaXQtc2VjdGlvbi10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgY29sb3I6ICRwcmltYXJ5LXRleHQtY29sb3I7XG4gIEBleHRlbmQgLmRlZmF1bHQtc2VtaS1ib2xkO1xufVxuXG4uY3VzdG9tLWVkaXQtc2VjdGlvbi1kZXNjcmlwdGlvbiB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGNvbG9yOiAkZXh0cmEtZGFyay1ncmF5LWNvbG9yO1xuICBAZXh0ZW5kIC5kZWZhdWx0LXJlZ3VsYXI7XG59XG5cbi5jdXN0b20tZWRpdC1zZWN0aW9uLWJ1dHRvbi1jb250YWluZXIge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmN1c3RvbS1lZGl0LXNlY3Rpb24tYnV0dG9uLWNvbnRhaW5lciAuY3VzdG9tLWJ1dHRvbiB7XG4gIG1hcmdpbjogMCAwLjVyZW0gMCAwO1xufVxuXG4uY3VzdG9tLXNlY3Rpb24tY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG59XG5cbi5jdXN0b20tc2VjdGlvbi1oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5jdXN0b20tc2VjdGlvbi1ib2R5IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uY3VzdG9tLXNlY3Rpb24taGVhZGVyLWJ1dHRvbi1jb250YWluZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLmN1c3RvbS1zZWN0aW9uLWxpc3QtdGl0bGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgY29sb3I6ICRwcmltYXJ5LXRleHQtY29sb3I7XG4gIEBleHRlbmQgLmRlZmF1bHQtYm9sZDtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBFZGl0X1NlY3Rpb25fRW5kICovXG5cblxuLyogVG9vbHRpcF9TdGFydCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uaW5saW5lLXRvb2x0aXAge1xuICBoZWlnaHQ6IDAuNzVyZW07XG4gIHdpZHRoOiAwLjc1cmVtO1xufVxuXG4uaW5saW5lLXRvb2x0aXA6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4uZGF0YXRhYmxlLWFjdGlvbi1idXR0b24gaW1nIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgb3BhY2l0eTogMC41O1xufVxuXG4uaW5saW5lLXRvb2x0aXAgaW1nIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgb3BhY2l0eTogMC41O1xufVxuXG4uaW5saW5lLXRvb2x0aXAge1xuICBvdXRsaW5lOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgbWFyZ2luOiAwIDAuMjVyZW07XG59XG5cbi5pbmxpbmUtdG9vbHRpcDpob3ZlciBpbWcge1xuICBvcGFjaXR5OiAxO1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIFRvb2x0aXBfRW5kICovXG5cblxuLyogV2FybmluZ19TdGFydCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4ud2FybmluZy1tZXNzYWdlIHtcbiAgbWFyZ2luOiAwLjVyZW0gMS41cmVtO1xuICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3ctY29sb3ItODA7XG4gIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY29sb3I6ICRwcmltYXJ5LXRleHQtY29sb3I7XG4gIEBleHRlbmQgLmRlZmF1bHQtc2VtaS1ib2xkO1xufVxuXG4ud2FybmluZy1tZXNzYWdlIC50b29sdGlwLWNvbnRhaW5lciB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBXYXJuaW5nX0VuZCAqL1xuXG4vKiBQb3BwZXJfU3RhcnQgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbnBvcHBlci1jb250ZW50IGRpdi5jdXN0b20tcG9wcGVyLWNvbnRlbnQge1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDAuNjI1cmVtO1xuICBib3gtc2hhZG93OiAwIDRweCA4cHggMCByZ2JhKDAsMCwwLDAuMik7XG4gIHBhZGRpbmc6IDA7XG4gIHotaW5kZXg6IDEwMDtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gUG9wcGVyX0VuZCAqL1xuIiwiLy8gVmFyaWFibGUgb3ZlcnJpZGVzXG5cbi8vIEdsb2JhbCBDb25zdGFudHNcbiRzaWRlYmFyLXdpZHRoOiAyMjRweDtcblxuLy8gRGVmYXVsdCBDb2xvcnNcbiRiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuJHByaW1hcnktYmx1ZS1jb2xvcjogIzJjNDA1ODtcbiRob3Zlci1ibHVlLWNvbG9yOiAjMzg1MjcxO1xuJGxpZ2h0LWJsdWUtY29sb3I6ICM0ZDVlNzI7XG4kZGFyay1ibHVlLWNvbG9yOiAjMTcyOTNFO1xuJHdoaXRlLWNvbG9yOiAjRkZGRkZGO1xuJG9mZi13aGl0ZS1jb2xvcjogI0Y4RjhGODtcbiRleHRyYS1saWdodC1ncmV5LWNvbG9yOiAjZThlOGU4O1xuJGRlZmF1bHQtZ3JheS1jb2xvcjogI0YyRjJGMjtcbiRob3Zlci1ncmF5LWNvbG9yOiAjREFEQkRFO1xuJGxpZ2h0LWdyZXktY29sb3I6ICNDM0M5RDA7XG4kZGFyay1ncmF5LWNvbG9yOiAjYjliOWI5O1xuJGV4dHJhLWRhcmstZ3JheS1jb2xvcjogIzczNzY4MDtcbiRsaWdodC1yZWQtY29sb3I6ICNGQTU1NTUzMztcbiRyZWQtY29sb3I6ICNGQTU1NTU7XG4kb2ZmLXJlZC1jb2xvcjogIzk4NDU0NTtcbiRibGFjay1jb2xvcjogIzIyMjIyMjtcbiR0dXJxdW9pc2UtY29sb3I6ICNCMUU3RTI7XG4kb2NlYW4tY29sb3I6ICMwMDUwNEI7XG4kc2FsbW9uLWNvbG9yOiAjRjI4ODcyO1xuJGFjdGl2ZS1jb2xvcjogIzMxYmY1ZDtcbiRpbmFjdGl2ZS1jb2xvcjogIzczNzY4MDtcbiRncmVlbi1jb2xvcjogIzYzRDU4RjtcbiR5ZWxsb3ctY29sb3I6ICNGRkQ3NEI7XG4keWVsbG93LWNvbG9yLTgwOiAjRkZENzRCQ0M7XG5cbiRwcmltYXJ5LWNvbG9yOiAkcHJpbWFyeS1ibHVlLWNvbG9yO1xuJHNlY29uZGFyeS1jb2xvcjogJHdoaXRlLWNvbG9yO1xuJHByaW1hcnktdGV4dC1jb2xvcjogJGJsYWNrLWNvbG9yO1xuJGxpZ2h0LXRleHQtY29sb3I6ICR3aGl0ZS1jb2xvcjtcblxuLy8gTmF2IEl0ZW1zXG4kbmF2LWJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJsdWUtY29sb3I7XG4kbmF2LWhvdmVyLWNvbG9yOiAkbGlnaHQtYmx1ZS1jb2xvcjtcbiRuYXYtYWN0aXZlLXRleHQtY29sb3I6ICR3aGl0ZS1jb2xvcjtcbiRuYXYtYWN0aXZlLWJhY2tncm91bmQtY29sb3I6ICRkYXJrLWJsdWUtY29sb3I7XG4kbmF2LWluYWN0aXZlLXRleHQtY29sb3I6ICRsaWdodC1ncmV5LWNvbG9yO1xuJG5hdi1ub3RpZmljYXRpb24tcGlsbC1jb2xvcjogJHJlZC1jb2xvcjtcblxuLy8gQnV0dG9uIEl0ZW1zXG4kYnV0dG9uLXdoaXRlLXRleHQtY29sb3I6ICR3aGl0ZS1jb2xvcjtcbiRidXR0b24tYmxhY2stdGV4dC1jb2xvcjogJGJsYWNrLWNvbG9yO1xuJGJ1dHRvbi1wcmVmZXJyZWQtaG92ZXItY29sb3I6ICRob3Zlci1ibHVlLWNvbG9yO1xuJGJ1dHRvbi1uZXV0cmFsLWNvbG9yOiAkZGVmYXVsdC1ncmF5LWNvbG9yO1xuJGJ1dHRvbi1uZXV0cmFsLWhvdmVyLWNvbG9yOiAkaG92ZXItZ3JheS1jb2xvcjtcbiRidXR0b24tZGFyay1uZXV0cmFsLWNvbG9yOiAkZGFyay1ncmF5LWNvbG9yO1xuJGJ1dHRvbi1kYXJrLW5ldXRyYWwtaG92ZXItY29sb3I6ICRleHRyYS1kYXJrLWdyYXktY29sb3I7XG4kYnV0dG9uLW91dGxpbmVkLWhvdmVyLWNvbG9yOiAkZGVmYXVsdC1ncmF5LWNvbG9yO1xuJGJ1dHRvbi1ib3JkZXItY29sb3I6ICRob3Zlci1ncmF5LWNvbG9yO1xuJGJ1dHRvbi10ZXh0LWNvbG9yOiAkd2hpdGUtY29sb3I7XG4kYnV0dG9uLXRleHQtaG92ZXItY29sb3I6ICRvZmYtd2hpdGUtY29sb3I7XG5cbi8vIExhYmVsIEl0ZW1zXG4kbGFiZWwtcG9zaXRpdmUtY29sb3I6ICR0dXJxdW9pc2UtY29sb3I7XG4kbGFiZWwtcG9zaXRpdmUtdGV4dC1jb2xvcjogJG9jZWFuLWNvbG9yO1xuJGxhYmVsLW5ldXRyYWwtY29sb3I6ICRob3Zlci1ncmF5LWNvbG9yO1xuJGxhYmVsLW5ldXRyYWwtdGV4dC1jb2xvcjogJGJsYWNrLWNvbG9yO1xuJGxhYmVsLW5lZ2F0aXZlLWNvbG9yOiAkc2FsbW9uLWNvbG9yO1xuJGxhYmVsLW5lZ2F0aXZlLXRleHQtY29sb3I6ICR3aGl0ZS1jb2xvcjtcblxuLy8gVGFic1xuJG1hdGVyaWFsOiAoXG4gIDUwOiAjZTNmMmZkLFxuICAxMDA6ICNiYmRlZmIsXG4gIDIwMDogIzkwY2FmOSxcbiAgMzAwOiAjNjRiNWY2LFxuICA0MDA6ICM0MmE1ZjUsXG4gIDUwMDogJHByaW1hcnktY29sb3IsXG4gIDYwMDogIzFlODhlNSxcbiAgNzAwOiAjMTk3NmQyLFxuICA4MDA6ICMxNTY1YzAsXG4gIDkwMDogIzBkNDdhMSxcbiAgQTEwMDogIzgyYjFmZixcbiAgQTIwMDogIzQ0OGFmZixcbiAgQTQwMDogIzI5NzlmZixcbiAgQTcwMDogIzI5NjJmZixcbiAgY29udHJhc3Q6IChcbiAgICA1MDogJHByaW1hcnktdGV4dC1jb2xvcixcbiAgICAxMDA6ICRwcmltYXJ5LXRleHQtY29sb3IsXG4gICAgMjAwOiAkcHJpbWFyeS10ZXh0LWNvbG9yLFxuICAgIDMwMDogJHByaW1hcnktdGV4dC1jb2xvcixcbiAgICA0MDA6ICRwcmltYXJ5LXRleHQtY29sb3IsXG4gICAgNTAwOiAkbGlnaHQtdGV4dC1jb2xvcixcbiAgICA2MDA6ICRsaWdodC10ZXh0LWNvbG9yLFxuICAgIDcwMDogJGxpZ2h0LXRleHQtY29sb3IsXG4gICAgODAwOiAkbGlnaHQtdGV4dC1jb2xvcixcbiAgICA5MDA6ICRsaWdodC10ZXh0LWNvbG9yLFxuICAgIEExMDA6ICRwcmltYXJ5LXRleHQtY29sb3IsXG4gICAgQTIwMDogJGxpZ2h0LXRleHQtY29sb3IsXG4gICAgQTQwMDogJGxpZ2h0LXRleHQtY29sb3IsXG4gICAgQTcwMDogJGxpZ2h0LXRleHQtY29sb3IsXG4gIClcbik7XG5cbi8vIERyb3AgRG93blxuJGRyb3Bkb3duLWJhc2UtY29sb3I6ICRkZWZhdWx0LWdyYXktY29sb3I7XG4kZHJvcGRvd24taG92ZXItY29sb3I6ICR3aGl0ZS1jb2xvcjtcbiRkcm9wZG93bi10ZXh0LWNvbG9yOiAkYmxhY2stY29sb3I7XG4kZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAkYmxhY2stY29sb3I7XG4kZHJvcGRvd24taG92ZXItY29sb3I6ICR3aGl0ZS1jb2xvcjtcbiRkcm9wZG93bi1ob3Zlci1ib3JkZXItY29sb3I6ICRibGFjay1jb2xvcjtcbiRkcm9wZG93bi1ob3Zlci10ZXh0LWNvbG9yOiAkYmxhY2stY29sb3I7XG5cbi8vIFBpbGxzXG4kcGlsbC10ZXh0LWNvbG9yOiAkYmxhY2stY29sb3I7XG4kcGlsbC10ZXh0LWFjdGl2ZS1jb2xvcjogJHdoaXRlLWNvbG9yO1xuJHBpbGwtZGVmYXVsdC1jb2xvcjogJGRlZmF1bHQtZ3JheS1jb2xvcjtcbiRwaWxsLWhvdmVyLWNvbG9yOiAkaG92ZXItZ3JheS1jb2xvcjtcbiRwaWxsLWFjdGl2ZS1jb2xvcjogJHByaW1hcnktYmx1ZS1jb2xvcjtcblxuLy8gQ2hlY2tib3hlc1xuJGNoZWNrYm94LWJhc2UtY29sb3I6ICRkZWZhdWx0LWdyYXktY29sb3I7XG4kY2hlY2tib3gtaG92ZXItY29sb3I6ICRob3Zlci1ncmF5LWNvbG9yO1xuJGNoZWNrYm94LWNoZWNrbWFyay1jb2xvcjogJHdoaXRlLWNvbG9yO1xuJGNoZWNrYm94LWNoZWNrZWQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuXG4vLyBTd2l0Y2hlc1xuJHN3aXRjaC1iYXNlLWNvbG9yOiAkZXh0cmEtbGlnaHQtZ3JleS1jb2xvcjtcbiRzd2l0Y2gtaG92ZXItY29sb3I6ICRob3Zlci1ncmF5LWNvbG9yO1xuJHN3aXRjaC1hY3RpdmF0ZWQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuXG4vLyBSYWRpb1xuJHJhZGlvLWJhc2UtY29sb3I6ICRkZWZhdWx0LWdyYXktY29sb3I7XG4kcmFkaW8taG92ZXItY29sb3I6ICRob3Zlci1ncmF5LWNvbG9yO1xuJHJhZGlvLWFjdGl2YXRlZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG5cbi8vIFRvZ2dsZVxuJHRvZ2dsZS1iYXNlLWNvbG9yOiAkZGVmYXVsdC1ncmF5LWNvbG9yO1xuJHRvZ2dsZS1ob3Zlci1jb2xvcjogJGhvdmVyLWdyYXktY29sb3I7XG4kdG9nZ2xlLWFjdGl2YXRlZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG5cbi8vIE1lZGlhIFVwbG9hZFxuJG1lZGlhLXVwbG9hZC1ib3JkZXI6ICRob3Zlci1ncmF5LWNvbG9yO1xuJG1lZGlhLXVwbG9hZC1iYWNrZ3JvdW5kOiAkb2ZmLXdoaXRlLWNvbG9yO1xuJG1lZGlhLXVwbG9hZC1ibHVlLWNvbG9yOiAjMzg4RUZDO1xuJG1lZGlhLXVwbG9hZC1ncmV5LWNvbG9yOiAkZXh0cmEtZGFyay1ncmF5LWNvbG9yO1xuJG1lZGlhLW5hbWUtY29sb3I6ICNBMkEyQTI7XG4kbWVkaWEtc2l6ZS1jb2xvcjogI0EyQTJBMjtcbiRtZWRpYS1lcnJvci1jb2xvcjogJHJlZC1jb2xvcjtcblxuLy8gTGlzdHNcbiRsaXN0LWJhY2tncm91bmQtY29sb3I6ICNGREZERkQ7XG4kbGlzdC1ib3JkZXItY29sb3I6ICM3MDcwNzA7XG4kbGlzdC1ob3Zlci1jb2xvcjogJG9mZi13aGl0ZS1jb2xvcjtcbiRsaXN0LWFjdGl2ZS1jb2xvcjogI0RFRUNGRjtcblxuLy8gQ2FyZHNcbiRjYXJkLWJhc2UtY29sb3I6ICM5RkEyQUQ7XG4kY2FyZC1iYW5uZXItY29sb3I6ICRkZWZhdWx0LWdyYXktY29sb3I7XG4kY2FyZC1ob3Zlci1jb2xvcjogJGhvdmVyLWdyYXktY29sb3I7XG4kY2FyZC10aXRsZS1jb2xvcjogJGV4dHJhLWRhcmstZ3JheS1jb2xvcjtcbiRjYXJkLXRleHQtY29sb3I6ICRibGFjay1jb2xvcjtcblxuLy8gVG9hc3RyXG4kdG9hc3RyLXN1Y2Nlc3MtY29sb3I6ICRncmVlbi1jb2xvcjtcbiR0b2FzdHItaW5mby1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kdG9hc3RyLXdhcm5pbmctY29sb3I6ICR5ZWxsb3ctY29sb3I7XG4kdG9hc3RyLWVycm9yLWNvbG9yOiAkc2FsbW9uLWNvbG9yO1xuXG4vLyBMb2FkaW5nXG4kcHJvZ3Jlc3MtYmFyLWJhY2tncm91bmQtY29sb3I6ICRvZmYtd2hpdGUtY29sb3I7XG4kcHJvZ3Jlc3MtYmFyLXByb2dyZXNzLWNvbG9yOiAkcHJpbWFyeS1ibHVlLWNvbG9yO1xuJHByb2dyZXNzLWJhci1lcnJvci1jb2xvcjogJHJlZC1jb2xvcjtcbiRwcm9ncmVzcy1iYXItc3VjY2Vzcy1jb2xvcjogJGdyZWVuLWNvbG9yO1xuXG4vLyBUZXh0ZmllbGRcbiR0ZXh0ZmllbGQtZmlsbC1jb2xvcjogJGRlZmF1bHQtZ3JheS1jb2xvcjtcbiR0ZXh0ZmllbGQtZm9jdXMtYm9yZGVyLWNvbG9yOiAkYmxhY2stY29sb3I7XG4kdGV4dGZpZWxkLWZvY3VzLWZpbGwtY29sb3I6ICR3aGl0ZS1jb2xvcjtcbiR0ZXh0ZmllbGQtZXJyb3ItcmVkLWNvbG9yOiAkcmVkLWNvbG9yO1xuXG4vLyBEYXRhdGFibGVcbiRkYXRhdGFibGUtaG92ZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyZXktY29sb3I7XG4kZGF0YXRhYmxlLW5lc3RlZC1yb3ctYmFja2dyb3VuZDogJGV4dHJhLWxpZ2h0LWdyZXktY29sb3I7XG4kZGF0YXRhYmxlLW5lc3RlZC1yb3ctYm9yZGVyOiAkcHJpbWFyeS1ibHVlLWNvbG9yO1xuJGRhdGF0YWJsZS1mb290ZXItdGV4dDogJGV4dHJhLWRhcmstZ3JheS1jb2xvcjtcbiRkYXRhdGFibGUtcGFnaW5hdGlvbi1ncmV5OiAkZGVmYXVsdC1ncmF5LWNvbG9yO1xuJGRhdGF0YWJsZS1wYWdpbmF0aW9uLWhvdmVyOiAkaG92ZXItZ3JheS1jb2xvcjtcbiRkYXRhdGFibGUtcGFnaW5hdGlvbi1zZWxlY3RlZC1jb2xvcjogJHByaW1hcnktYmx1ZS1jb2xvcjtcbiRkYXRhdGFibGUtcGFnaW5hdGlvbi1hY3RpdmUtdGV4dDogJHdoaXRlLWNvbG9yO1xuJGRhdGF0YWJsZS1wYWdpbmF0aW9uLWRpc2FibGVkOiAkb2ZmLXdoaXRlLWNvbG9yO1xuXG4vLyBTY3JvbGxiYXJcbiRzY3JvbGxiYXItYmctY29sb3I6ICR3aGl0ZS1jb2xvcjtcbiRzY3JvbGxiYXItY29sb3I6ICRsaWdodC1ibHVlLWNvbG9yO1xuIiwiLy8gRmlsZSBmb3Igd2hpY2ggYWxsIGltcG9ydHMgYXJlIHJlc29sdmVkIGFuZCBidW5kbGVkLiBUaGlzIGlzIHRoZSBlbnRyeS1wb2ludCBmb3Jcbi8vIHRoZSBgQGFuZ3VsYXIvbWF0ZXJpYWxgIHRoZW1pbmcgU2FzcyBidW5kbGUuIFNlZSBgLy9zcmMvbWF0ZXJpYWw6dGhlbWluZ19idW5kbGVgLlxuXG4vLyBJbXBvcnQgYWxsIHRoZSB0aGVtaW5nIGZ1bmN0aW9uYWxpdHkuXG4vLyBXZSB3YW50IG92ZXJsYXlzIHRvIGFsd2F5cyBhcHBlYXIgb3ZlciB1c2VyIGNvbnRlbnQsIHNvIHNldCBhIGJhc2VsaW5lXG4vLyB2ZXJ5IGhpZ2ggei1pbmRleCBmb3IgdGhlIG92ZXJsYXkgY29udGFpbmVyLCB3aGljaCBpcyB3aGVyZSB3ZSBjcmVhdGUgdGhlIG5ld1xuLy8gc3RhY2tpbmcgY29udGV4dCBmb3IgYWxsIG92ZXJsYXlzLlxuJGNkay16LWluZGV4LW92ZXJsYXktY29udGFpbmVyOiAxMDAwICFkZWZhdWx0O1xuJGNkay16LWluZGV4LW92ZXJsYXk6IDEwMDAgIWRlZmF1bHQ7XG4kY2RrLXotaW5kZXgtb3ZlcmxheS1iYWNrZHJvcDogMTAwMCAhZGVmYXVsdDtcblxuLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgYWxsIG9mIHRoZSBiYWNrZHJvcHNcbiRjZGstb3ZlcmxheS1kYXJrLWJhY2tkcm9wLWJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4zMikgIWRlZmF1bHQ7XG5cbi8vIERlZmF1bHQgYmFja2Ryb3AgYW5pbWF0aW9uIGlzIGJhc2VkIG9uIHRoZSBNYXRlcmlhbCBEZXNpZ24gc3dpZnQtZWFzZS1vdXQuXG4kYmFja2Ryb3AtYW5pbWF0aW9uLWR1cmF0aW9uOiA0MDBtcyAhZGVmYXVsdDtcbiRiYWNrZHJvcC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yNSwgMC44LCAwLjI1LCAxKSAhZGVmYXVsdDtcblxuXG5AbWl4aW4gY2RrLW92ZXJsYXkoKSB7XG4gIC5jZGstb3ZlcmxheS1jb250YWluZXIsIC5jZGstZ2xvYmFsLW92ZXJsYXktd3JhcHBlciB7XG4gICAgLy8gRGlzYWJsZSBldmVudHMgZnJvbSBiZWluZyBjYXB0dXJlZCBvbiB0aGUgb3ZlcmxheSBjb250YWluZXIuXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgICAvLyBUaGUgY29udGFpbmVyIHNob3VsZCBiZSB0aGUgc2l6ZSBvZiB0aGUgdmlld3BvcnQuXG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLy8gVGhlIG92ZXJsYXktY29udGFpbmVyIGlzIGFuIGludmlzaWJsZSBlbGVtZW50IHdoaWNoIGNvbnRhaW5zIGFsbCBpbmRpdmlkdWFsIG92ZXJsYXlzLlxuICAuY2RrLW92ZXJsYXktY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogJGNkay16LWluZGV4LW92ZXJsYXktY29udGFpbmVyO1xuXG4gICAgJjplbXB0eSB7XG4gICAgICAvLyBIaWRlIHRoZSBlbGVtZW50IHdoZW4gaXQgZG9lc24ndCBoYXZlIGFueSBjaGlsZCBub2Rlcy4gVGhpcyBkb2Vzbid0XG4gICAgICAvLyBpbmNsdWRlIG92ZXJsYXlzIHRoYXQgaGF2ZSBiZWVuIGRldGFjaGVkLCByYXRoZXIgdGhhbiBkaXNwb3NlZC5cbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLy8gV2UgdXNlIGFuIGV4dHJhIHdyYXBwZXIgZWxlbWVudCBpbiBvcmRlciB0byB1c2UgbWFrZSB0aGUgb3ZlcmxheSBpdHNlbGYgYSBmbGV4IGl0ZW0uXG4gIC8vIFRoaXMgbWFrZXMgY2VudGVyaW5nIHRoZSBvdmVybGF5IGVhc3kgd2l0aG91dCBydW5uaW5nIGludG8gdGhlIHN1YnBpeGVsIHJlbmRlcmluZ1xuICAvLyBwcm9ibGVtcyB0aWVkIHRvIHVzaW5nIGB0cmFuc2Zvcm1gIGFuZCB3aXRob3V0IGludGVyZmVyaW5nIHdpdGggdGhlIG90aGVyIHBvc2l0aW9uXG4gIC8vIHN0cmF0ZWdpZXMuXG4gIC5jZGstZ2xvYmFsLW92ZXJsYXktd3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogJGNkay16LWluZGV4LW92ZXJsYXk7XG4gIH1cblxuICAvLyBBIHNpbmdsZSBvdmVybGF5IHBhbmUuXG4gIC5jZGstb3ZlcmxheS1wYW5lIHtcbiAgICAvLyBOb3RlOiBpdCdzIGltcG9ydGFudCBmb3IgdGhpcyBvbmUgdG8gc3RhcnQgb2ZmIGBhYnNvbHV0ZWAsXG4gICAgLy8gaW4gb3JkZXIgZm9yIHVzIHRvIGJlIGFibGUgdG8gbWVhc3VyZSBpdCBjb3JyZWN0bHkuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgei1pbmRleDogJGNkay16LWluZGV4LW92ZXJsYXk7XG5cbiAgICAvLyBGb3IgY29ubmVjdGVkLXBvc2l0aW9uIG92ZXJsYXlzLCB3ZSBzZXQgYGRpc3BsYXk6IGZsZXhgIGluXG4gICAgLy8gb3JkZXIgdG8gZm9yY2UgYG1heC13aWR0aGAgYW5kIGBtYXgtaGVpZ2h0YCB0byB0YWtlIGVmZmVjdC5cbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgLmNkay1vdmVybGF5LWJhY2tkcm9wIHtcbiAgICAvLyBUT0RPKGplbGJvdXJuKTogcmV1c2Ugc2lkZW5hdiBmdWxsc2NyZWVuIG1peGluLlxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG5cbiAgICB6LWluZGV4OiAkY2RrLXotaW5kZXgtb3ZlcmxheS1iYWNrZHJvcDtcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgJGJhY2tkcm9wLWFuaW1hdGlvbi1kdXJhdGlvbiAkYmFja2Ryb3AtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjtcbiAgICBvcGFjaXR5OiAwO1xuXG4gICAgJi5jZGstb3ZlcmxheS1iYWNrZHJvcC1zaG93aW5nIHtcbiAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgIC8vIEluIGhpZ2ggY29udHJhc3QgbW9kZSB0aGUgcmdiYSBiYWNrZ3JvdW5kIHdpbGwgYmVjb21lIHNvbGlkIHNvIHdlIG5lZWQgdG8gZmFsbCBiYWNrXG4gICAgICAvLyB0byBtYWtpbmcgaXQgb3BhcXVlIHVzaW5nIGBvcGFjaXR5YC4gTm90ZSB0aGF0IHdlIGNhbid0IHVzZSB0aGUgYGNkay1oaWdoLWNvbnRyYXN0YFxuICAgICAgLy8gbWl4aW4sIGJlY2F1c2Ugd2UgY2FuJ3Qgbm9ybWFsaXplIHRoZSBpbXBvcnQgcGF0aCB0byB0aGUgX2ExMXkuc2NzcyBib3RoIGZvciB0aGVcbiAgICAgIC8vIHNvdXJjZSBhbmQgd2hlbiB0aGlzIGZpbGUgaXMgZGlzdHJpYnV0ZWQuIFNlZSAjMTA5MDguXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuICAgICAgICBvcGFjaXR5OiAwLjY7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmNkay1vdmVybGF5LWRhcmstYmFja2Ryb3Age1xuICAgIGJhY2tncm91bmQ6ICRjZGstb3ZlcmxheS1kYXJrLWJhY2tkcm9wLWJhY2tncm91bmQ7XG4gIH1cblxuICAuY2RrLW92ZXJsYXktdHJhbnNwYXJlbnQtYmFja2Ryb3Age1xuICAgIC8vIE5vdGU6IGFzIG9mIEZpcmVmb3ggNTcsIGhhdmluZyB0aGUgYmFja2Ryb3AgYmUgYGJhY2tncm91bmQ6IG5vbmVgIHdpbGwgcHJldmVudCBpdCBmcm9tXG4gICAgLy8gY2FwdHVyaW5nIHRoZSB1c2VyJ3MgbW91c2Ugc2Nyb2xsIGV2ZW50cy4gU2luY2Ugd2UgYWxzbyBjYW4ndCB1c2Ugc29tZXRoaW5nIGxpa2VcbiAgICAvLyBgcmdiYSgwLCAwLCAwLCAwKWAsIHdlIHdvcmsgYXJvdW5kIHRoZSBpbmNvbnNpc3RlbmN5IGJ5IG5vdCBzZXR0aW5nIHRoZSBiYWNrZ3JvdW5kIGF0XG4gICAgLy8gYWxsIGFuZCB1c2luZyBgb3BhY2l0eWAgdG8gbWFrZSB0aGUgZWxlbWVudCB0cmFuc3BhcmVudC5cbiAgICAmLCAmLmNkay1vdmVybGF5LWJhY2tkcm9wLXNob3dpbmcge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG4gIH1cblxuICAvLyBPdmVybGF5IHBhcmVudCBlbGVtZW50IHVzZWQgd2l0aCB0aGUgY29ubmVjdGVkIHBvc2l0aW9uIHN0cmF0ZWd5LiBVc2VkIHRvIGNvbnN0cmFpbiB0aGVcbiAgLy8gb3ZlcmxheSBlbGVtZW50J3Mgc2l6ZSB0byBmaXQgd2l0aGluIHRoZSB2aWV3cG9ydC5cbiAgLmNkay1vdmVybGF5LWNvbm5lY3RlZC1wb3NpdGlvbi1ib3VuZGluZy1ib3gge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAkY2RrLXotaW5kZXgtb3ZlcmxheTtcblxuICAgIC8vIFdlIHVzZSBgZGlzcGxheTogZmxleGAgb24gdGhpcyBlbGVtZW50IGV4Y2x1c2l2ZWx5IGZvciBjZW50ZXJpbmcgY29ubmVjdGVkIG92ZXJsYXlzLlxuICAgIC8vIFdoZW4gKm5vdCogY2VudGVyaW5nLCBhIHRvcC9sZWZ0L2JvdHRvbS9yaWdodCB3aWxsIGJlIHNldCB3aGljaCBvdmVycmlkZXMgdGhlIG5vcm1hbFxuICAgIC8vIGZsZXggbGF5b3V0LlxuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAvLyBXZSB1c2UgdGhlIGBjb2x1bW5gIGRpcmVjdGlvbiBoZXJlIHRvIGF2b2lkIHNvbWUgZmxleGJveCBpc3N1ZXMgaW4gRWRnZVxuICAgIC8vIHdoZW4gdXNpbmcgdGhlIFwiZ3JvdyBhZnRlciBvcGVuXCIgb3B0aW9ucy5cbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgLy8gQWRkIHNvbWUgZGltZW5zaW9ucyBzbyB0aGUgZWxlbWVudCBoYXMgYW4gYGlubmVyVGV4dGAgd2hpY2ggc29tZSBwZW9wbGUgZGVwZW5kIG9uIGluIHRlc3RzLlxuICAgIG1pbi13aWR0aDogMXB4O1xuICAgIG1pbi1oZWlnaHQ6IDFweDtcbiAgfVxuXG4gIC8vIFVzZWQgd2hlbiBkaXNhYmxpbmcgZ2xvYmFsIHNjcm9sbGluZy5cbiAgLmNkay1nbG9iYWwtc2Nyb2xsYmxvY2sge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcblxuICAgIC8vIE5lY2Vzc2FyeSBmb3IgdGhlIGNvbnRlbnQgbm90IHRvIGxvc2UgaXRzIHdpZHRoLiBOb3RlIHRoYXQgd2UncmUgdXNpbmcgMTAwJSwgaW5zdGVhZCBvZlxuICAgIC8vIDEwMHZ3LCBiZWNhdXNlIDEwMHZ3IGluY2x1ZGVzIHRoZSB3aWR0aCBwbHVzIHRoZSBzY3JvbGxiYXIsIHdoZXJlYXMgMTAwJSBpcyB0aGUgd2lkdGhcbiAgICAvLyB0aGF0IHRoZSBlbGVtZW50IGhhZCBiZWZvcmUgd2UgbWFkZSBpdCBgZml4ZWRgLlxuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgLy8gTm90ZTogdGhpcyB3aWxsIGFsd2F5cyBhZGQgYSBzY3JvbGxiYXIgdG8gd2hhdGV2ZXIgZWxlbWVudCBpdCBpcyBvbiwgd2hpY2ggY2FuXG4gICAgLy8gcG90ZW50aWFsbHkgcmVzdWx0IGluIGRvdWJsZSBzY3JvbGxiYXJzLiBJdCBzaG91bGRuJ3QgYmUgYW4gaXNzdWUsIGJlY2F1c2Ugd2Ugd29uJ3RcbiAgICAvLyBibG9jayBzY3JvbGxpbmcgb24gYSBwYWdlIHRoYXQgZG9lc24ndCBoYXZlIGEgc2Nyb2xsYmFyIGluIHRoZSBmaXJzdCBwbGFjZS5cbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gIH1cbn1cblxuQG1peGluIGNkay1hMTF5IHtcbiAgLmNkay12aXN1YWxseS1oaWRkZW4ge1xuICAgIGJvcmRlcjogMDtcbiAgICBjbGlwOiByZWN0KDAgMCAwIDApO1xuICAgIGhlaWdodDogMXB4O1xuICAgIG1hcmdpbjogLTFweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxcHg7XG5cbiAgICAvLyBBdm9pZCBicm93c2VycyByZW5kZXJpbmcgdGhlIGZvY3VzIHJpbmcgaW4gc29tZSBjYXNlcy5cbiAgICBvdXRsaW5lOiAwO1xuXG4gICAgLy8gQXZvaWQgc29tZSBjYXNlcyB3aGVyZSB0aGUgYnJvd3NlciB3aWxsIHN0aWxsIHJlbmRlciB0aGUgbmF0aXZlIGNvbnRyb2xzIChzZWUgIzkwNDkpLlxuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cbn1cblxuLy8vIEVtaXRzIHRoZSBtaXhpbidzIGNvbnRlbnQgbmVzdGVkIHVuZGVyIGAkc2VsZWN0b3ItY29udGV4dGAgaWYgYCRzZWxlY3Rvci1jb250ZXh0YFxuLy8vIGlzIG5vbi1lbXB0eS5cbi8vLyBAcGFyYW0gc2VsZWN0b3ItY29udGV4dCBUaGUgc2VsZWN0b3IgdW5kZXIgd2hpY2ggdG8gbmVzdCB0aGUgbWl4aW4ncyBjb250ZW50LlxuQG1peGluIF9jZGstb3B0aW9uYWxseS1uZXN0LWNvbnRlbnQoJHNlbGVjdG9yLWNvbnRleHQpIHtcbiAgQGlmICgkc2VsZWN0b3ItY29udGV4dCA9PSAnJykge1xuICAgIEBjb250ZW50O1xuICB9XG4gIEBlbHNlIHtcbiAgICAjeyRzZWxlY3Rvci1jb250ZXh0fSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFwcGxpZXMgc3R5bGVzIGZvciB1c2VycyBpbiBoaWdoIGNvbnRyYXN0IG1vZGUuIE5vdGUgdGhhdCB0aGlzIG9ubHkgYXBwbGllc1xuLy8vIHRvIE1pY3Jvc29mdCBicm93c2Vycy4gQ2hyb21lIGNhbiBiZSBpbmNsdWRlZCBieSBjaGVja2luZyBmb3IgdGhlIGBodG1sW2hjXWBcbi8vLyBhdHRyaWJ1dGUsIGhvd2V2ZXIgQ2hyb21lIGhhbmRsZXMgaGlnaCBjb250cmFzdCBkaWZmZXJlbnRseS5cbi8vL1xuLy8vIEBwYXJhbSB0YXJnZXQgV2hpY2gga2luZCBvZiBoaWdoIGNvbnRyYXN0IHNldHRpbmcgdG8gdGFyZ2V0LiBEZWZhdWx0cyB0byBgYWN0aXZlYCwgY2FuIGJlXG4vLy8gICAgYHdoaXRlLW9uLWJsYWNrYCBvciBgYmxhY2stb24td2hpdGVgLlxuLy8vIEBwYXJhbSBlbmNhcHN1bGF0aW9uIFdoZXRoZXIgdG8gZW1pdCBzdHlsZXMgZm9yIHZpZXcgZW5jYXBzdWxhdGlvbi4gVmFsdWVzIGFyZTpcbi8vLyAgICAgKiBgb25gIC0gd29ya3MgZm9yIGBFbXVsYXRlZGAsIGBOYXRpdmVgLCBhbmQgYFNoYWRvd0RvbWBcbi8vLyAgICAgKiBgb2ZmYCAtIHdvcmtzIGZvciBgTm9uZWBcbi8vLyAgICAgKiBgYW55YCAtIHdvcmtzIGZvciBhbGwgZW5jYXBzdWxhdGlvbiBtb2RlcyBieSBlbWl0dGluZyB0aGUgQ1NTIHR3aWNlIChkZWZhdWx0KS5cbkBtaXhpbiBjZGstaGlnaC1jb250cmFzdCgkdGFyZ2V0OiBhY3RpdmUsICRlbmNhcHN1bGF0aW9uOiAnYW55Jykge1xuICBAaWYgKCR0YXJnZXQgIT0gJ2FjdGl2ZScgYW5kICR0YXJnZXQgIT0gJ2JsYWNrLW9uLXdoaXRlJyBhbmQgJHRhcmdldCAhPSAnd2hpdGUtb24tYmxhY2snKSB7XG4gICAgQGVycm9yICdVbmtub3duIGNkay1oaWdoLWNvbnRyYXN0IHZhbHVlIFwiI3skdGFyZ2V0fVwiIHByb3ZpZGVkLiAnICtcbiAgICAgICAgICAgJ0FsbG93ZWQgdmFsdWVzIGFyZSBcImFjdGl2ZVwiLCBcImJsYWNrLW9uLXdoaXRlXCIsIGFuZCBcIndoaXRlLW9uLWJsYWNrXCInO1xuICB9XG5cbiAgQGlmICgkZW5jYXBzdWxhdGlvbiAhPSAnb24nIGFuZCAkZW5jYXBzdWxhdGlvbiAhPSAnb2ZmJyBhbmQgJGVuY2Fwc3VsYXRpb24gIT0gJ2FueScpIHtcbiAgICBAZXJyb3IgJ1Vua25vd24gY2RrLWhpZ2gtY29udHJhc3QgZW5jYXBzdWxhdGlvbiBcIiN7JGVuY2Fwc3VsYXRpb259XCIgcHJvdmlkZWQuICcgK1xuICAgICAgICAgICAnQWxsb3dlZCB2YWx1ZXMgYXJlIFwib25cIiwgXCJvZmZcIiwgYW5kIFwiYW55XCInO1xuICB9XG5cbiAgLy8gSWYgdGhlIHNlbGVjdG9yIGNvbnRleHQgaGFzIG11bHRpcGxlIHBhcnRzLCBzdWNoIGFzIGAuc2VjdGlvbiwgLnJlZ2lvbmAsIGp1c3QgZG9pbmdcbiAgLy8gYC5jZGstaGlnaC1jb250cmFzdC14eHggI3smfWAgd2lsbCBvbmx5IGFwcGx5IHRoZSBwYXJlbnQgc2VsZWN0b3IgdG8gdGhlIGZpcnN0IHBhcnQgb2YgdGhlXG4gIC8vIGNvbnRleHQuIFdlIGFkZHJlc3MgdGhpcyBieSBuZXN0aW5nIHRoZSBzZWxlY3RvciBjb250ZXh0IHVuZGVyIC5jZGstaGlnaC1jb250cmFzdC5cbiAgQGF0LXJvb3Qge1xuICAgICRzZWxlY3Rvci1jb250ZXh0OiAjeyZ9O1xuXG4gICAgQGlmICgkZW5jYXBzdWxhdGlvbiAhPSAnb24nKSB7XG4gICAgICAuY2RrLWhpZ2gtY29udHJhc3QtI3skdGFyZ2V0fSB7XG4gICAgICAgIEBpbmNsdWRlIF9jZGstb3B0aW9uYWxseS1uZXN0LWNvbnRlbnQoJHNlbGVjdG9yLWNvbnRleHQpIHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAoJGVuY2Fwc3VsYXRpb24gIT0gJ29mZicpIHtcbiAgICAgIC5jZGstaGlnaC1jb250cmFzdC0jeyR0YXJnZXR9IDpob3N0IHtcbiAgICAgICAgQGluY2x1ZGUgX2Nkay1vcHRpb25hbGx5LW5lc3QtY29udGVudCgkc2VsZWN0b3ItY29udGV4dCkge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIENvcmUgc3R5bGVzIHRoYXQgZW5hYmxlIG1vbml0b3JpbmcgYXV0b2ZpbGwgc3RhdGUgb2YgdGV4dCBmaWVsZHMuXG5AbWl4aW4gY2RrLXRleHQtZmllbGQge1xuICAvLyBLZXlmcmFtZXMgdGhhdCBhcHBseSBubyBzdHlsZXMsIGJ1dCBhbGxvdyB1cyB0byBtb25pdG9yIHdoZW4gYW4gdGV4dCBmaWVsZCBiZWNvbWVzIGF1dG9maWxsZWRcbiAgLy8gYnkgd2F0Y2hpbmcgZm9yIHRoZSBhbmltYXRpb24gZXZlbnRzIHRoYXQgYXJlIGZpcmVkIHdoZW4gdGhleSBzdGFydC4gTm90ZTogdGhlIC8qISovIGNvbW1lbnQgaXNcbiAgLy8gbmVlZGVkIHRvIHByZXZlbnQgTGliU2FzcyBmcm9tIHN0cmlwcGluZyB0aGUga2V5ZnJhbWVzIG91dC5cbiAgLy8gQmFzZWQgb246IGh0dHBzOi8vbWVkaXVtLmNvbS9AYnJ1bm4vZGV0ZWN0aW5nLWF1dG9maWxsZWQtZmllbGRzLWluLWphdmFzY3JpcHQtYWVkNTk4ZDI1ZGE3XG4gIEBrZXlmcmFtZXMgY2RrLXRleHQtZmllbGQtYXV0b2ZpbGwtc3RhcnQgey8qISovfVxuICBAa2V5ZnJhbWVzIGNkay10ZXh0LWZpZWxkLWF1dG9maWxsLWVuZCB7LyohKi99XG5cbiAgLmNkay10ZXh0LWZpZWxkLWF1dG9maWxsLW1vbml0b3JlZDotd2Via2l0LWF1dG9maWxsIHtcbiAgICAvLyBTaW5jZSBDaHJvbWUgODAgd2UgbmVlZCBhIDFtcyBkZWxheSwgb3IgdGhlIGFuaW1hdGlvbnN0YXJ0IGV2ZW50IHdvbid0IGZpcmUuXG4gICAgYW5pbWF0aW9uOiBjZGstdGV4dC1maWVsZC1hdXRvZmlsbC1zdGFydCAwcyAxbXM7XG4gIH1cblxuICAuY2RrLXRleHQtZmllbGQtYXV0b2ZpbGwtbW9uaXRvcmVkOm5vdCg6LXdlYmtpdC1hdXRvZmlsbCkge1xuICAgIC8vIFNpbmNlIENocm9tZSA4MCB3ZSBuZWVkIGEgMW1zIGRlbGF5LCBvciB0aGUgYW5pbWF0aW9uc3RhcnQgZXZlbnQgd29uJ3QgZmlyZS5cbiAgICBhbmltYXRpb246IGNkay10ZXh0LWZpZWxkLWF1dG9maWxsLWVuZCAwcyAxbXM7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIHJlc2l6ZSBoYW5kbGUgb24gYXV0b3NpemluZyB0ZXh0YXJlYXMsIGJlY2F1c2Ugd2hhdGV2ZXIgaGVpZ2h0XG4gIC8vIHRoZSB1c2VyIHJlc2l6ZWQgdG8gd2lsbCBiZSBvdmVyd3JpdHRlbiBvbmNlIHRoZXkgc3RhcnQgdHlwaW5nIGFnYWluLlxuICB0ZXh0YXJlYS5jZGstdGV4dGFyZWEtYXV0b3NpemUge1xuICAgIHJlc2l6ZTogbm9uZTtcbiAgfVxuXG4gIC8vIFRoaXMgY2xhc3MgaXMgdGVtcG9yYXJpbHkgYXBwbGllZCB0byB0aGUgdGV4dGFyZWEgd2hlbiBpdCBpcyBiZWluZyBtZWFzdXJlZC4gSXQgaXMgaW1tZWRpYXRlbHlcbiAgLy8gcmVtb3ZlZCB3aGVuIG1lYXN1cmluZyBpcyBjb21wbGV0ZS4gV2UgdXNlIGAhaW1wb3J0YW50YCBydWxlcyBoZXJlIHRvIG1ha2Ugc3VyZSB1c2VyLXNwZWNpZmllZFxuICAvLyBydWxlcyBkbyBub3QgaW50ZXJmZXJlIHdpdGggdGhlIG1lYXN1cmVtZW50LlxuICB0ZXh0YXJlYS5jZGstdGV4dGFyZWEtYXV0b3NpemUtbWVhc3VyaW5nIHtcbiAgICBAaW5jbHVkZSBfY2RrLXRleHRhcmVhLWF1dG9zaXplLW1lYXN1cmluZy1iYXNlO1xuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgfVxuXG4gIC8vIFNpbWlsYXIgdG8gdGhlIGBjZGstdGV4dGFyZWEtYXV0b3NpemUtbWVhc3VyaW5nYCBjbGFzcywgYnV0IG9ubHkgYXBwbGllZCBvbiBGaXJlZm94LiBXZSBuZWVkXG4gIC8vIHRvIHVzZSB0aGlzIGNsYXNzLCBiZWNhdXNlIEZpcmVmb3ggaGFzIGEgYnVnIHdoZXJlIGNoYW5naW5nIHRoZSBgb3ZlcmZsb3dgIGJyZWFrcyB0aGUgdXNlcidzXG4gIC8vIGFiaWxpdHkgdG8gdW5kby9yZWRvIHdoYXQgdGhleSB3ZXJlIHR5cGluZyAoc2VlICMxNjYyOSkuIFRoaXMgY2xhc3MgaXMgb25seSBzY29wZWQgdG8gRmlyZWZveCxcbiAgLy8gYmVjYXVzZSB0aGUgbWVhc3VyZW1lbnRzIHRoZXJlIGRvbid0IHNlZW0gdG8gYmUgYWZmZWN0ZWQgYnkgdGhlIGBoZWlnaHQ6IDBgLCB3aGVyZWFzIG9uIG90aGVyXG4gIC8vIGJyb3dzZXJzIHRoZXkgYXJlLCBlLmcuIENocm9tZSBkZXRlY3RzIGxvbmdlciB0ZXh0IGFuZCBJRSBkb2VzJ3QgcmVzaXplIGJhY2sgdG8gbm9ybWFsLlxuICAvLyBJZGVudGljYWwgaXNzdWUgcmVwb3J0OiBodHRwczovL2J1Z3ppbGxhLm1vemlsbGEub3JnL3Nob3dfYnVnLmNnaT9pZD00NDg3ODRcbiAgdGV4dGFyZWEuY2RrLXRleHRhcmVhLWF1dG9zaXplLW1lYXN1cmluZy1maXJlZm94IHtcbiAgICBAaW5jbHVkZSBfY2RrLXRleHRhcmVhLWF1dG9zaXplLW1lYXN1cmluZy1iYXNlO1xuICAgIGhlaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtaXhpbiBfY2RrLXRleHRhcmVhLWF1dG9zaXplLW1lYXN1cmluZy1iYXNlIHtcbiAgLy8gSGF2aW5nIDJweCB0b3AgYW5kIGJvdHRvbSBwYWRkaW5nIHNlZW1zIHRvIGZpeCBhIGJ1ZyB3aGVyZSBDaHJvbWUgZ2V0cyBhbiBpbmNvcnJlY3RcbiAgLy8gbWVhc3VyZW1lbnQuIFdlIGp1c3QgaGF2ZSB0byBhY2NvdW50IGZvciBpdCBsYXRlciBhbmQgc3VidHJhY3QgaXQgb2ZmIHRoZSBmaW5hbCByZXN1bHQuXG4gIHBhZGRpbmc6IDJweCAwICFpbXBvcnRhbnQ7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94ICFpbXBvcnRhbnQ7XG59XG5cbi8vIFVzZWQgdG8gZ2VuZXJhdGUgVUlEcyBmb3Iga2V5ZnJhbWVzIHVzZWQgdG8gY2hhbmdlIHRoZSB0ZXh0IGZpZWxkIGF1dG9maWxsIHN0eWxlcy5cbiRjZGstdGV4dC1maWVsZC1hdXRvZmlsbC1jb2xvci1mcmFtZS1jb3VudDogMDtcblxuLy8gTWl4aW4gdXNlZCB0byBhcHBseSBjdXN0b20gYmFja2dyb3VuZCBhbmQgZm9yZWdyb3VuZCBjb2xvcnMgdG8gYW4gYXV0b2ZpbGxlZCB0ZXh0IGZpZWxkLlxuLy8gQmFzZWQgb246IGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzI3ODE1NDkvXG4vLyByZW1vdmluZy1pbnB1dC1iYWNrZ3JvdW5kLWNvbG91ci1mb3ItY2hyb21lLWF1dG9jb21wbGV0ZSNhbnN3ZXItMzc0MzIyNjBcbkBtaXhpbiBjZGstdGV4dC1maWVsZC1hdXRvZmlsbC1jb2xvcigkYmFja2dyb3VuZCwgJGZvcmVncm91bmQ6JycpIHtcbiAgQGtleWZyYW1lcyBjZGstdGV4dC1maWVsZC1hdXRvZmlsbC1jb2xvci0jeyRjZGstdGV4dC1maWVsZC1hdXRvZmlsbC1jb2xvci1mcmFtZS1jb3VudH0ge1xuICAgIHRvIHtcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICAgICAgQGlmICRmb3JlZ3JvdW5kICE9ICcnIHsgY29sb3I6ICRmb3JlZ3JvdW5kOyB9XG4gICAgfVxuICB9XG5cbiAgJjotd2Via2l0LWF1dG9maWxsIHtcbiAgICBhbmltYXRpb246IGNkay10ZXh0LWZpZWxkLWF1dG9maWxsLWNvbG9yLSN7JGNkay10ZXh0LWZpZWxkLWF1dG9maWxsLWNvbG9yLWZyYW1lLWNvdW50fSBib3RoO1xuICB9XG5cbiAgJi5jZGstdGV4dC1maWVsZC1hdXRvZmlsbC1tb25pdG9yZWQ6LXdlYmtpdC1hdXRvZmlsbCB7XG4gICAgLy8gU2luY2UgQ2hyb21lIDgwIHdlIG5lZWQgYSAxbXMgZGVsYXkgZm9yIGNkay10ZXh0LWZpZWxkLWF1dG9maWxsLXN0YXJ0LCBvciB0aGUgYW5pbWF0aW9uc3RhcnRcbiAgICAvLyBldmVudCB3b24ndCBmaXJlLlxuICAgIGFuaW1hdGlvbjogY2RrLXRleHQtZmllbGQtYXV0b2ZpbGwtc3RhcnQgMHMgMW1zLFxuICAgICAgICAgICAgICAgY2RrLXRleHQtZmllbGQtYXV0b2ZpbGwtY29sb3ItI3skY2RrLXRleHQtZmllbGQtYXV0b2ZpbGwtY29sb3ItZnJhbWUtY291bnR9IGJvdGg7XG4gIH1cblxuICAkY2RrLXRleHQtZmllbGQtYXV0b2ZpbGwtY29sb3ItZnJhbWUtY291bnQ6XG4gICAgICAkY2RrLXRleHQtZmllbGQtYXV0b2ZpbGwtY29sb3ItZnJhbWUtY291bnQgKyAxICFnbG9iYWw7XG59XG5cblxuLy8gQ29yZSBzdHlsZXMgdGhhdCBjYW4gYmUgdXNlZCB0byBhcHBseSBtYXRlcmlhbCBkZXNpZ24gdHJlYXRtZW50cyB0byBhbnkgZWxlbWVudC5cbi8vIE1lZGlhIHF1ZXJpZXNcbi8vIFRPRE8oam9zZXBocGVycm90dCk6IENoYW5nZSAkbWF0LXhzbWFsbCBhbmQgJG1hdC1zbWFsbCB1c2FnZXMgdG8gcmVseSBvbiBCcmVha3BvaW50T2JzZXJ2ZXIsXG4kbWF0LXhzbWFsbDogJ21heC13aWR0aDogNTk5cHgnO1xuJG1hdC1zbWFsbDogJ21heC13aWR0aDogOTU5cHgnO1xuXG4vLyBUT0RPOiBSZXZpc2l0IGFsbCB6LWluZGljZXMgYmVmb3JlIGJldGFcbi8vIHotaW5kZXggbWFzdGVyIGxpc3RcblxuJHotaW5kZXgtZmFiOiAyMCAhZGVmYXVsdDtcbiR6LWluZGV4LWRyYXdlcjogMTAwICFkZWZhdWx0O1xuXG4vLyBHbG9iYWwgY29uc3RhbnRzXG4kcGk6IDMuMTQxNTkyNjU7XG5cbi8vIFBhZGRpbmcgYmV0d2VlbiBpbnB1dCB0b2dnbGVzIGFuZCB0aGVpciBsYWJlbHNcbiRtYXQtdG9nZ2xlLXBhZGRpbmc6IDhweCAhZGVmYXVsdDtcbi8vIFdpZHRoIGFuZCBoZWlnaHQgb2YgaW5wdXQgdG9nZ2xlc1xuJG1hdC10b2dnbGUtc2l6ZTogMjBweCAhZGVmYXVsdDtcblxuLy8gRWFzaW5nIEN1cnZlc1xuLy8gVE9ETyhqZWxib3Vybik6IGFsbCBvZiB0aGVzZSBuZWVkIHRvIGJlIHJldmlzaXRlZFxuXG4vLyBUaGUgZGVmYXVsdCBhbmltYXRpb24gY3VydmVzIHVzZWQgYnkgbWF0ZXJpYWwgZGVzaWduLlxuJG1hdC1saW5lYXItb3V0LXNsb3ctaW4tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAwLjEpICFkZWZhdWx0O1xuJG1hdC1mYXN0LW91dC1zbG93LWluLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKSAhZGVmYXVsdDtcbiRtYXQtZmFzdC1vdXQtbGluZWFyLWluLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNCwgMCwgMSwgMSkgIWRlZmF1bHQ7XG5cbiRlYXNlLWluLW91dC1jdXJ2ZS1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMzUsIDAsIDAuMjUsIDEpICFkZWZhdWx0O1xuXG4kc3dpZnQtZWFzZS1vdXQtZHVyYXRpb246IDQwMG1zICFkZWZhdWx0O1xuJHN3aWZ0LWVhc2Utb3V0LXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjUsIDAuOCwgMC4yNSwgMSkgIWRlZmF1bHQ7XG4kc3dpZnQtZWFzZS1vdXQ6IGFsbCAkc3dpZnQtZWFzZS1vdXQtZHVyYXRpb24gJHN3aWZ0LWVhc2Utb3V0LXRpbWluZy1mdW5jdGlvbiAhZGVmYXVsdDtcblxuJHN3aWZ0LWVhc2UtaW4tZHVyYXRpb246IDMwMG1zICFkZWZhdWx0O1xuJHN3aWZ0LWVhc2UtaW4tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMCwgMC41NSwgMC4yKSAhZGVmYXVsdDtcbiRzd2lmdC1lYXNlLWluOiBhbGwgJHN3aWZ0LWVhc2UtaW4tZHVyYXRpb24gJHN3aWZ0LWVhc2UtaW4tdGltaW5nLWZ1bmN0aW9uICFkZWZhdWx0O1xuXG4kc3dpZnQtZWFzZS1pbi1vdXQtZHVyYXRpb246IDUwMG1zICFkZWZhdWx0O1xuJHN3aWZ0LWVhc2UtaW4tb3V0LXRpbWluZy1mdW5jdGlvbjogJGVhc2UtaW4tb3V0LWN1cnZlLWZ1bmN0aW9uICFkZWZhdWx0O1xuJHN3aWZ0LWVhc2UtaW4tb3V0OiBhbGwgJHN3aWZ0LWVhc2UtaW4tb3V0LWR1cmF0aW9uICRzd2lmdC1lYXNlLWluLW91dC10aW1pbmctZnVuY3Rpb24gIWRlZmF1bHQ7XG5cbiRzd2lmdC1saW5lYXItZHVyYXRpb246IDgwbXMgIWRlZmF1bHQ7XG4kc3dpZnQtbGluZWFyLXRpbWluZy1mdW5jdGlvbjogbGluZWFyICFkZWZhdWx0O1xuJHN3aWZ0LWxpbmVhcjogYWxsICRzd2lmdC1saW5lYXItZHVyYXRpb24gJHN3aWZ0LWxpbmVhci10aW1pbmctZnVuY3Rpb24gIWRlZmF1bHQ7XG5cblxuXG4vLyBBIGNvbGxlY3Rpb24gb2YgbWl4aW5zIGFuZCBDU1MgY2xhc3NlcyB0aGF0IGNhbiBiZSB1c2VkIHRvIGFwcGx5IGVsZXZhdGlvbiB0byBhIG1hdGVyaWFsXG4vLyBlbGVtZW50LlxuLy8gU2VlOiBodHRwczovL21hdGVyaWFsLmlvL2Rlc2lnbi9lbnZpcm9ubWVudC9lbGV2YXRpb24uaHRtbFxuLy8gRXhhbXBsZXM6XG4vL1xuLy9cbi8vIC5tYXQtZm9vIHtcbi8vICAgQGluY2x1ZGUgJG1hdC1lbGV2YXRpb24oMik7XG4vL1xuLy8gICAmOmFjdGl2ZSB7XG4vLyAgICAgQGluY2x1ZGUgJG1hdC1lbGV2YXRpb24oOCk7XG4vLyAgIH1cbi8vIH1cbi8vXG4vLyA8ZGl2IGlkPVwiZXh0ZXJuYWwtY2FyZFwiIGNsYXNzPVwibWF0LWVsZXZhdGlvbi16MlwiPjxwPlNvbWUgY29udGVudDwvcD48L2Rpdj5cbi8vXG4vLyBGb3IgYW4gZXhwbGFuYXRpb24gb2YgdGhlIGRlc2lnbiBiZWhpbmQgaG93IGVsZXZhdGlvbiBpcyBpbXBsZW1lbnRlZCwgc2VlIHRoZSBkZXNpZ24gZG9jIGF0XG4vLyBodHRwczovL2dvby5nbC9LcTBrOVouXG5cbi8vIENvbG9ycyBmb3IgdW1icmEsIHBlbnVtYnJhLCBhbmQgYW1iaWVudCBzaGFkb3dzLiBBcyBkZXNjcmliZWQgaW4gdGhlIGRlc2lnbiBkb2MsIGVhY2ggZWxldmF0aW9uXG4vLyBsZXZlbCBpcyBjcmVhdGVkIHVzaW5nIGEgc2V0IG9mIDMgc2hhZG93IHZhbHVlcywgb25lIGZvciB1bWJyYSAodGhlIHNoYWRvdyByZXByZXNlbnRpbmcgdGhlXG4vLyBzcGFjZSBjb21wbGV0ZWx5IG9ic2N1cmVkIGJ5IGFuIG9iamVjdCByZWxhdGl2ZSB0byBpdHMgbGlnaHQgc291cmNlKSwgb25lIGZvciBwZW51bWJyYSAodGhlXG4vLyBzcGFjZSBwYXJ0aWFsbHkgb2JzY3VyZWQgYnkgYW4gb2JqZWN0KSwgYW5kIG9uZSBmb3IgYW1iaWVudCAodGhlIHNwYWNlIHdoaWNoIGNvbnRhaW5zIHRoZSBvYmplY3Rcbi8vIGl0c2VsZikuIEZvciBhIGZ1cnRoZXIgZXhwbGFuYXRpb24gb2YgdGhlc2UgdGVybXMgYW5kIHRoZWlyIG1lYW5pbmdzLCBzZWVcbi8vIGh0dHBzOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL1VtYnJhLF9wZW51bWJyYV9hbmRfYW50dW1icmEuXG5cbi8vIE1hcHMgZm9yIHRoZSBkaWZmZXJlbnQgc2hhZG93IHNldHMgYW5kIHRoZWlyIHZhbHVlcyB3aXRoaW4gZWFjaCB6LXNwYWNlLiBUaGVzZSB2YWx1ZXMgd2VyZVxuLy8gY3JlYXRlZCBieSB0YWtpbmcgYSBmZXcgcmVmZXJlbmNlIHNoYWRvdyBzZXRzIGNyZWF0ZWQgYnkgR29vZ2xlJ3MgRGVzaWduZXJzIGFuZCBpbnRlcnBvbGF0aW5nXG4vLyBhbGwgb2YgdGhlIHZhbHVlcyBiZXR3ZWVuIHRoZW0uXG5cbkBmdW5jdGlvbiBfZ2V0LXVtYnJhLW1hcCgkY29sb3IsICRvcGFjaXR5KSB7XG4gICRzaGFkb3ctY29sb3I6IGlmKHR5cGUtb2YoJGNvbG9yKSA9PSBjb2xvciwgcmdiYSgkY29sb3IsICRvcGFjaXR5ICogMC4yKSwgJGNvbG9yKTtcblxuICBAcmV0dXJuIChcbiAgICAwOiAnMHB4IDBweCAwcHggMHB4ICN7JHNoYWRvdy1jb2xvcn0nLFxuICAgIDE6ICcwcHggMnB4IDFweCAtMXB4ICN7JHNoYWRvdy1jb2xvcn0nLFxuICAgIDI6ICcwcHggM3B4IDFweCAtMnB4ICN7JHNoYWRvdy1jb2xvcn0nLFxuICAgIDM6ICcwcHggM3B4IDNweCAtMnB4ICN7JHNoYWRvdy1jb2xvcn0nLFxuICAgIDQ6ICcwcHggMnB4IDRweCAtMXB4ICN7JHNoYWRvdy1jb2xvcn0nLFxuICAgIDU6ICcwcHggM3B4IDVweCAtMXB4ICN7JHNoYWRvdy1jb2xvcn0nLFxuICAgIDY6ICcwcHggM3B4IDVweCAtMXB4ICN7JHNoYWRvdy1jb2xvcn0nLFxuICAgIDc6ICcwcHggNHB4IDVweCAtMnB4ICN7JHNoYWRvdy1jb2xvcn0nLFxuICAgIDg6ICcwcHggNXB4IDVweCAtM3B4ICN7JHNoYWRvdy1jb2xvcn0nLFxuICAgIDk6ICcwcHggNXB4IDZweCAtM3B4ICN7JHNoYWRvdy1jb2xvcn0nLFxuICAgIDEwOiAnMHB4IDZweCA2cHggLTNweCAjeyRzaGFkb3ctY29sb3J9JyxcbiAgICAxMTogJzBweCA2cHggN3B4IC00cHggI3skc2hhZG93LWNvbG9yfScsXG4gICAgMTI6ICcwcHggN3B4IDhweCAtNHB4ICN7JHNoYWRvdy1jb2xvcn0nLFxuICAgIDEzOiAnMHB4IDdweCA4cHggLTRweCAjeyRzaGFkb3ctY29sb3J9JyxcbiAgICAxNDogJzBweCA3cHggOXB4IC00cHggI3skc2hhZG93LWNvbG9yfScsXG4gICAgMTU6ICcwcHggOHB4IDlweCAtNXB4ICN7JHNoYWRvdy1jb2xvcn0nLFxuICAgIDE2OiAnMHB4IDhweCAxMHB4IC01cHggI3skc2hhZG93LWNvbG9yfScsXG4gICAgMTc6ICcwcHggOHB4IDExcHggLTVweCAjeyRzaGFkb3ctY29sb3J9JyxcbiAgICAxODogJzBweCA5cHggMTFweCAtNXB4ICN7JHNoYWRvdy1jb2xvcn0nLFxuICAgIDE5OiAnMHB4IDlweCAxMnB4IC02cHggI3skc2hhZG93LWNvbG9yfScsXG4gICAgMjA6ICcwcHggMTBweCAxM3B4IC02cHggI3skc2hhZG93LWNvbG9yfScsXG4gICAgMjE6ICcwcHggMTBweCAxM3B4IC02cHggI3skc2hhZG93LWNvbG9yfScsXG4gICAgMjI6ICcwcHggMTBweCAxNHB4IC02cHggI3skc2hhZG93LWNvbG9yfScsXG4gICAgMjM6ICcwcHggMTFweCAxNHB4IC03cHggI3skc2hhZG93LWNvbG9yfScsXG4gICAgMjQ6ICcwcHggMTFweCAxNXB4IC03cHggI3skc2hhZG93LWNvbG9yfSdcbiAgKTtcbn1cblxuQGZ1bmN0aW9uIF9nZXQtcGVudW1icmEtbWFwKCRjb2xvciwgJG9wYWNpdHkpIHtcbiAgJHNoYWRvdy1jb2xvcjogaWYodHlwZS1vZigkY29sb3IpID09IGNvbG9yLCByZ2JhKCRjb2xvciwgJG9wYWNpdHkgKiAwLjE0KSwgJGNvbG9yKTtcblxuICBAcmV0dXJuIChcbiAgICAwOiAnMHB4IDBweCAwcHggMHB4ICN7JHNoYWRvdy1jb2xvcn0nLFxuICAgIDE6ICcwcHggMXB4IDFweCAwcHggI3skc2hhZG93LWNvbG9yfScsXG4gICAgMjogJzBweCAycHggMnB4IDBweCAjeyRzaGFkb3ctY29sb3J9JyxcbiAgICAzOiAnMHB4IDNweCA0cHggMHB4ICN7JHNoYWRvdy1jb2xvcn0nLFxuICAgIDQ6ICcwcHggNHB4IDVweCAwcHggI3skc2hhZG93LWNvbG9yfScsXG4gICAgNTogJzBweCA1cHggOHB4IDBweCAjeyRzaGFkb3ctY29sb3J9JyxcbiAgICA2OiAnMHB4IDZweCAxMHB4IDBweCAjeyRzaGFkb3ctY29sb3J9JyxcbiAgICA3OiAnMHB4IDdweCAxMHB4IDFweCAjeyRzaGFkb3ctY29sb3J9JyxcbiAgICA4OiAnMHB4IDhweCAxMHB4IDFweCAjeyRzaGFkb3ctY29sb3J9JyxcbiAgICA5OiAnMHB4IDlweCAxMnB4IDFweCAjeyRzaGFkb3ctY29sb3J9JyxcbiAgICAxMDogJzBweCAxMHB4IDE0cHggMXB4ICN7JHNoYWRvdy1jb2xvcn0nLFxuICAgIDExOiAnMHB4IDExcHggMTVweCAxcHggI3skc2hhZG93LWNvbG9yfScsXG4gICAgMTI6ICcwcHggMTJweCAxN3B4IDJweCAjeyRzaGFkb3ctY29sb3J9JyxcbiAgICAxMzogJzBweCAxM3B4IDE5cHggMnB4ICN7JHNoYWRvdy1jb2xvcn0nLFxuICAgIDE0OiAnMHB4IDE0cHggMjFweCAycHggI3skc2hhZG93LWNvbG9yfScsXG4gICAgMTU6ICcwcHggMTVweCAyMnB4IDJweCAjeyRzaGFkb3ctY29sb3J9JyxcbiAgICAxNjogJzBweCAxNnB4IDI0cHggMnB4ICN7JHNoYWRvdy1jb2xvcn0nLFxuICAgIDE3OiAnMHB4IDE3cHggMjZweCAycHggI3skc2hhZG93LWNvbG9yfScsXG4gICAgMTg6ICcwcHggMThweCAyOHB4IDJweCAjeyRzaGFkb3ctY29sb3J9JyxcbiAgICAxOTogJzBweCAxOXB4IDI5cHggMnB4ICN7JHNoYWRvdy1jb2xvcn0nLFxuICAgIDIwOiAnMHB4IDIwcHggMzFweCAzcHggI3skc2hhZG93LWNvbG9yfScsXG4gICAgMjE6ICcwcHggMjFweCAzM3B4IDNweCAjeyRzaGFkb3ctY29sb3J9JyxcbiAgICAyMjogJzBweCAyMnB4IDM1cHggM3B4ICN7JHNoYWRvdy1jb2xvcn0nLFxuICAgIDIzOiAnMHB4IDIzcHggMzZweCAzcHggI3skc2hhZG93LWNvbG9yfScsXG4gICAgMjQ6ICcwcHggMjRweCAzOHB4IDNweCAjeyRzaGFkb3ctY29sb3J9J1xuICApO1xufVxuXG5AZnVuY3Rpb24gX2dldC1hbWJpZW50LW1hcCgkY29sb3IsICRvcGFjaXR5KSB7XG4gICRzaGFkb3ctY29sb3I6IGlmKHR5cGUtb2YoJGNvbG9yKSA9PSBjb2xvciwgcmdiYSgkY29sb3IsICRvcGFjaXR5ICogMC4xMiksICRjb2xvcik7XG5cbiAgQHJldHVybiAoXG4gICAgMDogJzBweCAwcHggMHB4IDBweCAjeyRzaGFkb3ctY29sb3J9JyxcbiAgICAxOiAnMHB4IDFweCAzcHggMHB4ICN7JHNoYWRvdy1jb2xvcn0nLFxuICAgIDI6ICcwcHggMXB4IDVweCAwcHggI3skc2hhZG93LWNvbG9yfScsXG4gICAgMzogJzBweCAxcHggOHB4IDBweCAjeyRzaGFkb3ctY29sb3J9JyxcbiAgICA0OiAnMHB4IDFweCAxMHB4IDBweCAjeyRzaGFkb3ctY29sb3J9JyxcbiAgICA1OiAnMHB4IDFweCAxNHB4IDBweCAjeyRzaGFkb3ctY29sb3J9JyxcbiAgICA2OiAnMHB4IDFweCAxOHB4IDBweCAjeyRzaGFkb3ctY29sb3J9JyxcbiAgICA3OiAnMHB4IDJweCAxNnB4IDFweCAjeyRzaGFkb3ctY29sb3J9JyxcbiAgICA4OiAnMHB4IDNweCAxNHB4IDJweCAjeyRzaGFkb3ctY29sb3J9JyxcbiAgICA5OiAnMHB4IDNweCAxNnB4IDJweCAjeyRzaGFkb3ctY29sb3J9JyxcbiAgICAxMDogJzBweCA0cHggMThweCAzcHggI3skc2hhZG93LWNvbG9yfScsXG4gICAgMTE6ICcwcHggNHB4IDIwcHggM3B4ICN7JHNoYWRvdy1jb2xvcn0nLFxuICAgIDEyOiAnMHB4IDVweCAyMnB4IDRweCAjeyRzaGFkb3ctY29sb3J9JyxcbiAgICAxMzogJzBweCA1cHggMjRweCA0cHggI3skc2hhZG93LWNvbG9yfScsXG4gICAgMTQ6ICcwcHggNXB4IDI2cHggNHB4ICN7JHNoYWRvdy1jb2xvcn0nLFxuICAgIDE1OiAnMHB4IDZweCAyOHB4IDVweCAjeyRzaGFkb3ctY29sb3J9JyxcbiAgICAxNjogJzBweCA2cHggMzBweCA1cHggI3skc2hhZG93LWNvbG9yfScsXG4gICAgMTc6ICcwcHggNnB4IDMycHggNXB4ICN7JHNoYWRvdy1jb2xvcn0nLFxuICAgIDE4OiAnMHB4IDdweCAzNHB4IDZweCAjeyRzaGFkb3ctY29sb3J9JyxcbiAgICAxOTogJzBweCA3cHggMzZweCA2cHggI3skc2hhZG93LWNvbG9yfScsXG4gICAgMjA6ICcwcHggOHB4IDM4cHggN3B4ICN7JHNoYWRvdy1jb2xvcn0nLFxuICAgIDIxOiAnMHB4IDhweCA0MHB4IDdweCAjeyRzaGFkb3ctY29sb3J9JyxcbiAgICAyMjogJzBweCA4cHggNDJweCA3cHggI3skc2hhZG93LWNvbG9yfScsXG4gICAgMjM6ICcwcHggOXB4IDQ0cHggOHB4ICN7JHNoYWRvdy1jb2xvcn0nLFxuICAgIDI0OiAnMHB4IDlweCA0NnB4IDhweCAjeyRzaGFkb3ctY29sb3J9J1xuICApO1xufVxuXG4vLyBUaGUgZGVmYXVsdCBkdXJhdGlvbiB2YWx1ZSBmb3IgZWxldmF0aW9uIHRyYW5zaXRpb25zLlxuJG1hdC1lbGV2YXRpb24tdHJhbnNpdGlvbi1kdXJhdGlvbjogMjgwbXMgIWRlZmF1bHQ7XG5cbi8vIFRoZSBkZWZhdWx0IGVhc2luZyB2YWx1ZSBmb3IgZWxldmF0aW9uIHRyYW5zaXRpb25zLlxuJG1hdC1lbGV2YXRpb24tdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICRtYXQtZmFzdC1vdXQtc2xvdy1pbi10aW1pbmctZnVuY3Rpb247XG5cbi8vIFRoZSBkZWZhdWx0IGNvbG9yIGZvciBlbGV2YXRpb24gc2hhZG93cy5cbiRtYXQtZWxldmF0aW9uLWNvbG9yOiBibGFjayAhZGVmYXVsdDtcblxuLy8gVGhlIGRlZmF1bHQgb3BhY2l0eSBzY2FsaW5nIHZhbHVlIGZvciBlbGV2YXRpb24gc2hhZG93cy5cbiRtYXQtZWxldmF0aW9uLW9wYWNpdHk6IDEgIWRlZmF1bHQ7XG5cbi8vIFByZWZpeCBmb3IgZWxldmF0aW9uLXJlbGF0ZWQgc2VsZWN0b3JzLlxuJG1hdC1lbGV2YXRpb24tcHJlZml4OiAnbWF0LWVsZXZhdGlvbi16JztcblxuLy8gQXBwbGllcyB0aGUgY29ycmVjdCBjc3MgcnVsZXMgdG8gYW4gZWxlbWVudCB0byBnaXZlIGl0IHRoZSBlbGV2YXRpb24gc3BlY2lmaWVkIGJ5ICR6VmFsdWUuXG4vLyBUaGUgJHpWYWx1ZSBtdXN0IGJlIGJldHdlZW4gMCBhbmQgMjQuXG5AbWl4aW4gbWF0LWVsZXZhdGlvbigkelZhbHVlLCAkY29sb3I6ICRtYXQtZWxldmF0aW9uLWNvbG9yLCAkb3BhY2l0eTogJG1hdC1lbGV2YXRpb24tb3BhY2l0eSkge1xuICBAaWYgdHlwZS1vZigkelZhbHVlKSAhPSBudW1iZXIgb3Igbm90IHVuaXRsZXNzKCR6VmFsdWUpIHtcbiAgICBAZXJyb3IgJyR6VmFsdWUgbXVzdCBiZSBhIHVuaXRsZXNzIG51bWJlcic7XG4gIH1cbiAgQGlmICR6VmFsdWUgPCAwIG9yICR6VmFsdWUgPiAyNCB7XG4gICAgQGVycm9yICckelZhbHVlIG11c3QgYmUgYmV0d2VlbiAwIGFuZCAyNCc7XG4gIH1cblxuICBib3gtc2hhZG93OiAje21hcC1nZXQoX2dldC11bWJyYS1tYXAoJGNvbG9yLCAkb3BhY2l0eSksICR6VmFsdWUpfSxcbiAgICAgICAgICAgICAgI3ttYXAtZ2V0KF9nZXQtcGVudW1icmEtbWFwKCRjb2xvciwgJG9wYWNpdHkpLCAkelZhbHVlKX0sXG4gICAgICAgICAgICAgICN7bWFwLWdldChfZ2V0LWFtYmllbnQtbWFwKCRjb2xvciwgJG9wYWNpdHkpLCAkelZhbHVlKX07XG59XG5cbi8vIEFwcGxpZXMgdGhlIGVsZXZhdGlvbiB0byBhbiBlbGVtZW50IGluIGEgbWFubmVyIHRoYXQgYWxsb3dzXG4vLyBjb25zdW1lcnMgdG8gb3ZlcnJpZGUgaXQgdmlhIHRoZSBNYXRlcmlhbCBlbGV2YXRpb24gY2xhc3Nlcy5cbkBtaXhpbiBtYXQtb3ZlcnJpZGFibGUtZWxldmF0aW9uKFxuICAgICR6VmFsdWUsXG4gICAgJGNvbG9yOiAkbWF0LWVsZXZhdGlvbi1jb2xvcixcbiAgICAkb3BhY2l0eTogJG1hdC1lbGV2YXRpb24tb3BhY2l0eSkge1xuICAmOm5vdChbY2xhc3MqPScjeyRtYXQtZWxldmF0aW9uLXByZWZpeH0nXSkge1xuICAgIEBpbmNsdWRlIG1hdC1lbGV2YXRpb24oJHpWYWx1ZSwgJGNvbG9yLCAkb3BhY2l0eSk7XG4gIH1cbn1cblxuLy8gUmV0dXJucyBhIHN0cmluZyB0aGF0IGNhbiBiZSB1c2VkIGFzIHRoZSB2YWx1ZSBmb3IgYSB0cmFuc2l0aW9uIHByb3BlcnR5IGZvciBlbGV2YXRpb24uXG4vLyBDYWxsaW5nIHRoaXMgZnVuY3Rpb24gZGlyZWN0bHkgaXMgdXNlZnVsIGluIHNpdHVhdGlvbnMgd2hlcmUgYSBjb21wb25lbnQgbmVlZHMgdG8gdHJhbnNpdGlvblxuLy8gbW9yZSB0aGFuIG9uZSBwcm9wZXJ0eS5cbi8vXG4vLyAuZm9vIHtcbi8vICAgdHJhbnNpdGlvbjogbWF0LWVsZXZhdGlvbi10cmFuc2l0aW9uLXByb3BlcnR5LXZhbHVlKCksIG9wYWNpdHkgMTAwbXMgZWFzZTtcbi8vIH1cbkBmdW5jdGlvbiBtYXQtZWxldmF0aW9uLXRyYW5zaXRpb24tcHJvcGVydHktdmFsdWUoXG4gICAgJGR1cmF0aW9uOiAkbWF0LWVsZXZhdGlvbi10cmFuc2l0aW9uLWR1cmF0aW9uLFxuICAgICRlYXNpbmc6ICRtYXQtZWxldmF0aW9uLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uKSB7XG4gIEByZXR1cm4gYm94LXNoYWRvdyAjeyRkdXJhdGlvbn0gI3skZWFzaW5nfTtcbn1cblxuLy8gQXBwbGllcyB0aGUgY29ycmVjdCBjc3MgcnVsZXMgbmVlZGVkIHRvIGhhdmUgYW4gZWxlbWVudCB0cmFuc2l0aW9uIGJldHdlZW4gZWxldmF0aW9ucy5cbi8vIFRoaXMgbWl4aW4gc2hvdWxkIGJlIGFwcGxpZWQgdG8gZWxlbWVudHMgd2hvc2UgZWxldmF0aW9uIHZhbHVlcyB3aWxsIGNoYW5nZSBkZXBlbmRpbmcgb24gdGhlaXJcbi8vIGNvbnRleHQgKGUuZy4gd2hlbiBhY3RpdmUgb3IgZGlzYWJsZWQpLlxuLy9cbi8vIE5PVEUodHJhdmlza2F1Zm1hbik6IEJvdGggdGhpcyBtaXhpbiBhbmQgdGhlIGFib3ZlIGZ1bmN0aW9uIHVzZSBkZWZhdWx0IHBhcmFtZXRlcnMgc28gdGhleSBjYW5cbi8vIGJlIHVzZWQgaW4gdGhlIHNhbWUgd2F5IGJ5IGNsaWVudHMuXG5AbWl4aW4gbWF0LWVsZXZhdGlvbi10cmFuc2l0aW9uKFxuICAgICRkdXJhdGlvbjogJG1hdC1lbGV2YXRpb24tdHJhbnNpdGlvbi1kdXJhdGlvbixcbiAgICAkZWFzaW5nOiAkbWF0LWVsZXZhdGlvbi10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbikge1xuICB0cmFuc2l0aW9uOiBtYXQtZWxldmF0aW9uLXRyYW5zaXRpb24tcHJvcGVydHktdmFsdWUoJGR1cmF0aW9uLCAkZWFzaW5nKTtcbn1cblxuXG5AbWl4aW4gbWF0LXByaXZhdGUtdGhlbWUtZWxldmF0aW9uKCR6VmFsdWUsICRjb25maWcsICRvcGFjaXR5OiAkbWF0LWVsZXZhdGlvbi1vcGFjaXR5KSB7XG4gICRmb3JlZ3JvdW5kOiBtYXAtZ2V0KCRjb25maWcsIGZvcmVncm91bmQpO1xuICAkZWxldmF0aW9uLWNvbG9yOiBtYXAtZ2V0KCRmb3JlZ3JvdW5kLCBlbGV2YXRpb24pO1xuICAkZWxldmF0aW9uLWNvbG9yLW9yLWRlZmF1bHQ6IGlmKCRlbGV2YXRpb24tY29sb3IgPT0gbnVsbCwgJG1hdC1lbGV2YXRpb24tY29sb3IsICRlbGV2YXRpb24tY29sb3IpO1xuXG4gIEBpbmNsdWRlIG1hdC1lbGV2YXRpb24oJHpWYWx1ZSwgJGVsZXZhdGlvbi1jb2xvci1vci1kZWZhdWx0LCAkb3BhY2l0eSk7XG59XG5cbkBtaXhpbiBtYXQtcHJpdmF0ZS10aGVtZS1vdmVycmlkYWJsZS1lbGV2YXRpb24oJHpWYWx1ZSwgJGNvbmZpZywgJG9wYWNpdHk6ICRtYXQtZWxldmF0aW9uLW9wYWNpdHkpIHtcbiAgJGZvcmVncm91bmQ6IG1hcC1nZXQoJGNvbmZpZywgZm9yZWdyb3VuZCk7XG4gICRlbGV2YXRpb24tY29sb3I6IG1hcC1nZXQoJGZvcmVncm91bmQsIGVsZXZhdGlvbik7XG4gICRlbGV2YXRpb24tY29sb3Itb3ItZGVmYXVsdDogaWYoJGVsZXZhdGlvbi1jb2xvciA9PSBudWxsLCAkbWF0LWVsZXZhdGlvbi1jb2xvciwgJGVsZXZhdGlvbi1jb2xvcik7XG5cbiAgQGluY2x1ZGUgbWF0LW92ZXJyaWRhYmxlLWVsZXZhdGlvbigkelZhbHVlLCAkZWxldmF0aW9uLWNvbG9yLW9yLWRlZmF1bHQsICRvcGFjaXR5KTtcbn1cblxuLy8gSWYgdGhlIG1hdC1hbmltYXRpb24tbm9vcCBjbGFzcyBpcyBwcmVzZW50IG9uIHRoZSBjb21wb25lbnRzIHJvb3QgZWxlbWVudCxcbi8vIHByZXZlbnQgbm9uIGNzcyBhbmltYXRpb25zIGZyb20gcnVubmluZy5cbi8vIE5PVEU6IEN1cnJlbnRseSB0aGlzIG1peGluIHNob3VsZCBvbmx5IGJlIHVzZWQgd2l0aCBjb21wb25lbnRzIHRoYXQgZG8gbm90XG4vLyBoYXZlIGFueSBwcm9qZWN0ZWQgY29udGVudC5cbkBtaXhpbiBtYXQtcHJpdmF0ZS1hbmltYXRpb24tbm9vcCgpIHtcbiAgLy8gQGF0LXJvb3QgaXMgdXNlZCB0byBzdGVwcyBvdXRzaWRlIG9mIHRoZSBoaWVyYXJjaHkgb2YgdGhlIHNjc3MgcnVsZXMuIFRoaXMgaXNcbiAgLy8gZG9uZSB0byBhbGxvdyBhIGNsYXNzIHRvIGJlIGFkZGVkIHRvIGJlIGFkZGVkIHRvIGJhc2Ugb2YgdGhlIHNjc3MgbmVzdGluZ1xuICAvLyBjb250ZXh0LlxuICAvLyBGb3IgZXhhbXBsZTpcbiAgLy8gLm15LXJvb3Qge1xuICAvLyAgIC5teS1zdWJjbGFzcyB7XG4gIC8vICAgICAgQGluY2x1ZGUgbWF0LXByaXZhdGUtYW5pbWF0aW9uLW5vb3AoKTtcbiAgLy8gICAgfVxuICAvLyB9XG4gIC8vIHJlc3VsdHMgaW46XG4gIC8vIC5fbWF0LWFuaW1hdGlvbi1ub29wYWJsZS5teS1yb290IC5teS1zdWJjbGFzcyB7IC4uLiB9XG4gIEBhdC1yb290IC5fbWF0LWFuaW1hdGlvbi1ub29wYWJsZSN7Jn0ge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgYW5pbWF0aW9uOiBub25lO1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIENvbG9yIHBhbGV0dGVzIGZyb20gdGhlIE1hdGVyaWFsIERlc2lnbiBzcGVjLlxuLy8gU2VlIGh0dHBzOi8vbWF0ZXJpYWwuaW8vZGVzaWduL2NvbG9yL1xuLy9cbi8vIENvbnRyYXN0IGNvbG9ycyBhcmUgaGFyZC1jb2RlZCBiZWNhdXNlIGl0IGlzIHRvbyBkaWZmaWN1bHQgKHByb2JhYmx5IGltcG9zc2libGUpIHRvXG4vLyBjYWxjdWxhdGUgdGhlbS4gVGhlc2UgY29udHJhc3QgY29sb3JzIGFyZSBwdWxsZWQgZnJvbSB0aGUgcHVibGljIE1hdGVyaWFsIERlc2lnbiBzcGVjIHN3YXRjaGVzLlxuLy8gV2hpbGUgdGhlIGNvbnRyYXN0IGNvbG9ycyBpbiB0aGUgc3BlYyBhcmUgbm90IHByZXNjcmlwdGl2ZSwgd2UgdXNlIHRoZW0gZm9yIGNvbnZlbmllbmNlLlxuXG5cbi8vIEBkZXByZWNhdGVkIHJlbmFtZWQgdG8gJGRhcmstcHJpbWFyeS10ZXh0LlxuLy8gQGJyZWFraW5nLWNoYW5nZSA4LjAuMFxuJGJsYWNrLTg3LW9wYWNpdHk6IHJnYmEoYmxhY2ssIDAuODcpO1xuLy8gQGRlcHJlY2F0ZWQgcmVuYW1lZCB0byAkbGlnaHQtcHJpbWFyeS10ZXh0LlxuLy8gQGJyZWFraW5nLWNoYW5nZSA4LjAuMFxuJHdoaXRlLTg3LW9wYWNpdHk6IHJnYmEod2hpdGUsIDAuODcpO1xuLy8gQGRlcHJlY2F0ZWQgdXNlICRkYXJrLVtzZWNvbmRhcnktdGV4dCxkaXNhYmxlZC10ZXh0LGRpdmlkZXJzLGZvY3VzZWRdIGluc3RlYWQuXG4vLyBAYnJlYWtpbmctY2hhbmdlIDguMC4wXG4kYmxhY2stMTItb3BhY2l0eTogcmdiYShibGFjaywgMC4xMik7XG4vLyBAZGVwcmVjYXRlZCB1c2UgJGxpZ2h0LVtzZWNvbmRhcnktdGV4dCxkaXNhYmxlZC10ZXh0LGRpdmlkZXJzLGZvY3VzZWRdIGluc3RlYWQuXG4vLyBAYnJlYWtpbmctY2hhbmdlIDguMC4wXG4kd2hpdGUtMTItb3BhY2l0eTogcmdiYSh3aGl0ZSwgMC4xMik7XG4vLyBAZGVwcmVjYXRlZCB1c2UgJGRhcmstW3NlY29uZGFyeS10ZXh0LGRpc2FibGVkLXRleHQsZGl2aWRlcnMsZm9jdXNlZF0gaW5zdGVhZC5cbi8vIEBicmVha2luZy1jaGFuZ2UgOC4wLjBcbiRibGFjay02LW9wYWNpdHk6IHJnYmEoYmxhY2ssIDAuMDYpO1xuLy8gQGRlcHJlY2F0ZWQgdXNlICRsaWdodC1bc2Vjb25kYXJ5LXRleHQsZGlzYWJsZWQtdGV4dCxkaXZpZGVycyxmb2N1c2VkXSBpbnN0ZWFkLlxuLy8gQGJyZWFraW5nLWNoYW5nZSA4LjAuMFxuJHdoaXRlLTYtb3BhY2l0eTogcmdiYSh3aGl0ZSwgMC4wNik7XG5cbiRkYXJrLXByaW1hcnktdGV4dDogcmdiYShibGFjaywgMC44Nyk7XG4kZGFyay1zZWNvbmRhcnktdGV4dDogcmdiYShibGFjaywgMC41NCk7XG4kZGFyay1kaXNhYmxlZC10ZXh0OiByZ2JhKGJsYWNrLCAwLjM4KTtcbiRkYXJrLWRpdmlkZXJzOiByZ2JhKGJsYWNrLCAwLjEyKTtcbiRkYXJrLWZvY3VzZWQ6IHJnYmEoYmxhY2ssIDAuMTIpO1xuJGxpZ2h0LXByaW1hcnktdGV4dDogd2hpdGU7XG4kbGlnaHQtc2Vjb25kYXJ5LXRleHQ6IHJnYmEod2hpdGUsIDAuNyk7XG4kbGlnaHQtZGlzYWJsZWQtdGV4dDogcmdiYSh3aGl0ZSwgMC41KTtcbiRsaWdodC1kaXZpZGVyczogcmdiYSh3aGl0ZSwgMC4xMik7XG4kbGlnaHQtZm9jdXNlZDogcmdiYSh3aGl0ZSwgMC4xMik7XG5cbiRtYXQtcmVkOiAoXG4gIDUwOiAjZmZlYmVlLFxuICAxMDA6ICNmZmNkZDIsXG4gIDIwMDogI2VmOWE5YSxcbiAgMzAwOiAjZTU3MzczLFxuICA0MDA6ICNlZjUzNTAsXG4gIDUwMDogI2Y0NDMzNixcbiAgNjAwOiAjZTUzOTM1LFxuICA3MDA6ICNkMzJmMmYsXG4gIDgwMDogI2M2MjgyOCxcbiAgOTAwOiAjYjcxYzFjLFxuICBBMTAwOiAjZmY4YTgwLFxuICBBMjAwOiAjZmY1MjUyLFxuICBBNDAwOiAjZmYxNzQ0LFxuICBBNzAwOiAjZDUwMDAwLFxuICBjb250cmFzdDogKFxuICAgIDUwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgMTAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgMjAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgMzAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgNDAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgNTAwOiAkbGlnaHQtcHJpbWFyeS10ZXh0LFxuICAgIDYwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICA3MDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gICAgODAwOiAkbGlnaHQtcHJpbWFyeS10ZXh0LFxuICAgIDkwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICBBMTAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgQTIwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICBBNDAwOiAkbGlnaHQtcHJpbWFyeS10ZXh0LFxuICAgIEE3MDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gIClcbik7XG5cbiRtYXQtcGluazogKFxuICA1MDogI2ZjZTRlYyxcbiAgMTAwOiAjZjhiYmQwLFxuICAyMDA6ICNmNDhmYjEsXG4gIDMwMDogI2YwNjI5MixcbiAgNDAwOiAjZWM0MDdhLFxuICA1MDA6ICNlOTFlNjMsXG4gIDYwMDogI2Q4MWI2MCxcbiAgNzAwOiAjYzIxODViLFxuICA4MDA6ICNhZDE0NTcsXG4gIDkwMDogIzg4MGU0ZixcbiAgQTEwMDogI2ZmODBhYixcbiAgQTIwMDogI2ZmNDA4MSxcbiAgQTQwMDogI2Y1MDA1NyxcbiAgQTcwMDogI2M1MTE2MixcbiAgY29udHJhc3Q6IChcbiAgICA1MDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDEwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDIwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDMwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDQwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDUwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICA2MDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gICAgNzAwOiAkbGlnaHQtcHJpbWFyeS10ZXh0LFxuICAgIDgwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICA5MDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gICAgQTEwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIEEyMDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gICAgQTQwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICBBNzAwOiAkbGlnaHQtcHJpbWFyeS10ZXh0LFxuICApXG4pO1xuXG4kbWF0LXB1cnBsZTogKFxuICA1MDogI2YzZTVmNSxcbiAgMTAwOiAjZTFiZWU3LFxuICAyMDA6ICNjZTkzZDgsXG4gIDMwMDogI2JhNjhjOCxcbiAgNDAwOiAjYWI0N2JjLFxuICA1MDA6ICM5YzI3YjAsXG4gIDYwMDogIzhlMjRhYSxcbiAgNzAwOiAjN2IxZmEyLFxuICA4MDA6ICM2YTFiOWEsXG4gIDkwMDogIzRhMTQ4YyxcbiAgQTEwMDogI2VhODBmYyxcbiAgQTIwMDogI2UwNDBmYixcbiAgQTQwMDogI2Q1MDBmOSxcbiAgQTcwMDogI2FhMDBmZixcbiAgY29udHJhc3Q6IChcbiAgICA1MDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDEwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDIwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDMwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICA0MDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gICAgNTAwOiAkbGlnaHQtcHJpbWFyeS10ZXh0LFxuICAgIDYwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICA3MDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gICAgODAwOiAkbGlnaHQtcHJpbWFyeS10ZXh0LFxuICAgIDkwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICBBMTAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgQTIwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICBBNDAwOiAkbGlnaHQtcHJpbWFyeS10ZXh0LFxuICAgIEE3MDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gIClcbik7XG5cbiRtYXQtZGVlcC1wdXJwbGU6IChcbiAgNTA6ICNlZGU3ZjYsXG4gIDEwMDogI2QxYzRlOSxcbiAgMjAwOiAjYjM5ZGRiLFxuICAzMDA6ICM5NTc1Y2QsXG4gIDQwMDogIzdlNTdjMixcbiAgNTAwOiAjNjczYWI3LFxuICA2MDA6ICM1ZTM1YjEsXG4gIDcwMDogIzUxMmRhOCxcbiAgODAwOiAjNDUyN2EwLFxuICA5MDA6ICMzMTFiOTIsXG4gIEExMDA6ICNiMzg4ZmYsXG4gIEEyMDA6ICM3YzRkZmYsXG4gIEE0MDA6ICM2NTFmZmYsXG4gIEE3MDA6ICM2MjAwZWEsXG4gIGNvbnRyYXN0OiAoXG4gICAgNTA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICAxMDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICAyMDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICAzMDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gICAgNDAwOiAkbGlnaHQtcHJpbWFyeS10ZXh0LFxuICAgIDUwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICA2MDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gICAgNzAwOiAkbGlnaHQtcHJpbWFyeS10ZXh0LFxuICAgIDgwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICA5MDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gICAgQTEwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIEEyMDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gICAgQTQwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICBBNzAwOiAkbGlnaHQtcHJpbWFyeS10ZXh0LFxuICApXG4pO1xuXG4kbWF0LWluZGlnbzogKFxuICA1MDogI2U4ZWFmNixcbiAgMTAwOiAjYzVjYWU5LFxuICAyMDA6ICM5ZmE4ZGEsXG4gIDMwMDogIzc5ODZjYixcbiAgNDAwOiAjNWM2YmMwLFxuICA1MDA6ICMzZjUxYjUsXG4gIDYwMDogIzM5NDlhYixcbiAgNzAwOiAjMzAzZjlmLFxuICA4MDA6ICMyODM1OTMsXG4gIDkwMDogIzFhMjM3ZSxcbiAgQTEwMDogIzhjOWVmZixcbiAgQTIwMDogIzUzNmRmZSxcbiAgQTQwMDogIzNkNWFmZSxcbiAgQTcwMDogIzMwNGZmZSxcbiAgY29udHJhc3Q6IChcbiAgICA1MDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDEwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDIwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDMwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICA0MDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gICAgNTAwOiAkbGlnaHQtcHJpbWFyeS10ZXh0LFxuICAgIDYwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICA3MDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gICAgODAwOiAkbGlnaHQtcHJpbWFyeS10ZXh0LFxuICAgIDkwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICBBMTAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgQTIwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICBBNDAwOiAkbGlnaHQtcHJpbWFyeS10ZXh0LFxuICAgIEE3MDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gIClcbik7XG5cbiRtYXQtYmx1ZTogKFxuICA1MDogI2UzZjJmZCxcbiAgMTAwOiAjYmJkZWZiLFxuICAyMDA6ICM5MGNhZjksXG4gIDMwMDogIzY0YjVmNixcbiAgNDAwOiAjNDJhNWY1LFxuICA1MDA6ICMyMTk2ZjMsXG4gIDYwMDogIzFlODhlNSxcbiAgNzAwOiAjMTk3NmQyLFxuICA4MDA6ICMxNTY1YzAsXG4gIDkwMDogIzBkNDdhMSxcbiAgQTEwMDogIzgyYjFmZixcbiAgQTIwMDogIzQ0OGFmZixcbiAgQTQwMDogIzI5NzlmZixcbiAgQTcwMDogIzI5NjJmZixcbiAgY29udHJhc3Q6IChcbiAgICA1MDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDEwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDIwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDMwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDQwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDUwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICA2MDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gICAgNzAwOiAkbGlnaHQtcHJpbWFyeS10ZXh0LFxuICAgIDgwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICA5MDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gICAgQTEwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIEEyMDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gICAgQTQwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICBBNzAwOiAkbGlnaHQtcHJpbWFyeS10ZXh0LFxuICApXG4pO1xuXG4kbWF0LWxpZ2h0LWJsdWU6IChcbiAgNTA6ICNlMWY1ZmUsXG4gIDEwMDogI2IzZTVmYyxcbiAgMjAwOiAjODFkNGZhLFxuICAzMDA6ICM0ZmMzZjcsXG4gIDQwMDogIzI5YjZmNixcbiAgNTAwOiAjMDNhOWY0LFxuICA2MDA6ICMwMzliZTUsXG4gIDcwMDogIzAyODhkMSxcbiAgODAwOiAjMDI3N2JkLFxuICA5MDA6ICMwMTU3OWIsXG4gIEExMDA6ICM4MGQ4ZmYsXG4gIEEyMDA6ICM0MGM0ZmYsXG4gIEE0MDA6ICMwMGIwZmYsXG4gIEE3MDA6ICMwMDkxZWEsXG4gIGNvbnRyYXN0OiAoXG4gICAgNTA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICAxMDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICAyMDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICAzMDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICA0MDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICA1MDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gICAgNjAwOiAkbGlnaHQtcHJpbWFyeS10ZXh0LFxuICAgIDcwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICA4MDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gICAgOTAwOiAkbGlnaHQtcHJpbWFyeS10ZXh0LFxuICAgIEExMDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICBBMjAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgQTQwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIEE3MDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gIClcbik7XG5cbiRtYXQtY3lhbjogKFxuICA1MDogI2UwZjdmYSxcbiAgMTAwOiAjYjJlYmYyLFxuICAyMDA6ICM4MGRlZWEsXG4gIDMwMDogIzRkZDBlMSxcbiAgNDAwOiAjMjZjNmRhLFxuICA1MDA6ICMwMGJjZDQsXG4gIDYwMDogIzAwYWNjMSxcbiAgNzAwOiAjMDA5N2E3LFxuICA4MDA6ICMwMDgzOGYsXG4gIDkwMDogIzAwNjA2NCxcbiAgQTEwMDogIzg0ZmZmZixcbiAgQTIwMDogIzE4ZmZmZixcbiAgQTQwMDogIzAwZTVmZixcbiAgQTcwMDogIzAwYjhkNCxcbiAgY29udHJhc3Q6IChcbiAgICA1MDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDEwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDIwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDMwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDQwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDUwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICA2MDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gICAgNzAwOiAkbGlnaHQtcHJpbWFyeS10ZXh0LFxuICAgIDgwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICA5MDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gICAgQTEwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIEEyMDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICBBNDAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgQTcwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICApXG4pO1xuXG4kbWF0LXRlYWw6IChcbiAgNTA6ICNlMGYyZjEsXG4gIDEwMDogI2IyZGZkYixcbiAgMjAwOiAjODBjYmM0LFxuICAzMDA6ICM0ZGI2YWMsXG4gIDQwMDogIzI2YTY5YSxcbiAgNTAwOiAjMDA5Njg4LFxuICA2MDA6ICMwMDg5N2IsXG4gIDcwMDogIzAwNzk2YixcbiAgODAwOiAjMDA2OTVjLFxuICA5MDA6ICMwMDRkNDAsXG4gIEExMDA6ICNhN2ZmZWIsXG4gIEEyMDA6ICM2NGZmZGEsXG4gIEE0MDA6ICMxZGU5YjYsXG4gIEE3MDA6ICMwMGJmYTUsXG4gIGNvbnRyYXN0OiAoXG4gICAgNTA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICAxMDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICAyMDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICAzMDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICA0MDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICA1MDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gICAgNjAwOiAkbGlnaHQtcHJpbWFyeS10ZXh0LFxuICAgIDcwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICA4MDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gICAgOTAwOiAkbGlnaHQtcHJpbWFyeS10ZXh0LFxuICAgIEExMDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICBBMjAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgQTQwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIEE3MDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgKVxuKTtcblxuJG1hdC1ncmVlbjogKFxuICA1MDogI2U4ZjVlOSxcbiAgMTAwOiAjYzhlNmM5LFxuICAyMDA6ICNhNWQ2YTcsXG4gIDMwMDogIzgxYzc4NCxcbiAgNDAwOiAjNjZiYjZhLFxuICA1MDA6ICM0Y2FmNTAsXG4gIDYwMDogIzQzYTA0NyxcbiAgNzAwOiAjMzg4ZTNjLFxuICA4MDA6ICMyZTdkMzIsXG4gIDkwMDogIzFiNWUyMCxcbiAgQTEwMDogI2I5ZjZjYSxcbiAgQTIwMDogIzY5ZjBhZSxcbiAgQTQwMDogIzAwZTY3NixcbiAgQTcwMDogIzAwYzg1MyxcbiAgY29udHJhc3Q6IChcbiAgICA1MDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDEwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDIwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDMwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDQwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDUwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDYwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICA3MDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gICAgODAwOiAkbGlnaHQtcHJpbWFyeS10ZXh0LFxuICAgIDkwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICBBMTAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgQTIwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIEE0MDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICBBNzAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gIClcbik7XG5cbiRtYXQtbGlnaHQtZ3JlZW46IChcbiAgNTA6ICNmMWY4ZTksXG4gIDEwMDogI2RjZWRjOCxcbiAgMjAwOiAjYzVlMWE1LFxuICAzMDA6ICNhZWQ1ODEsXG4gIDQwMDogIzljY2M2NSxcbiAgNTAwOiAjOGJjMzRhLFxuICA2MDA6ICM3Y2IzNDIsXG4gIDcwMDogIzY4OWYzOCxcbiAgODAwOiAjNTU4YjJmLFxuICA5MDA6ICMzMzY5MWUsXG4gIEExMDA6ICNjY2ZmOTAsXG4gIEEyMDA6ICNiMmZmNTksXG4gIEE0MDA6ICM3NmZmMDMsXG4gIEE3MDA6ICM2NGRkMTcsXG4gIGNvbnRyYXN0OiAoXG4gICAgNTA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICAxMDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICAyMDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICAzMDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICA0MDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICA1MDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICA2MDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICA3MDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gICAgODAwOiAkbGlnaHQtcHJpbWFyeS10ZXh0LFxuICAgIDkwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICBBMTAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgQTIwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIEE0MDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICBBNzAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gIClcbik7XG5cbiRtYXQtbGltZTogKFxuICA1MDogI2Y5ZmJlNyxcbiAgMTAwOiAjZjBmNGMzLFxuICAyMDA6ICNlNmVlOWMsXG4gIDMwMDogI2RjZTc3NSxcbiAgNDAwOiAjZDRlMTU3LFxuICA1MDA6ICNjZGRjMzksXG4gIDYwMDogI2MwY2EzMyxcbiAgNzAwOiAjYWZiNDJiLFxuICA4MDA6ICM5ZTlkMjQsXG4gIDkwMDogIzgyNzcxNyxcbiAgQTEwMDogI2Y0ZmY4MSxcbiAgQTIwMDogI2VlZmY0MSxcbiAgQTQwMDogI2M2ZmYwMCxcbiAgQTcwMDogI2FlZWEwMCxcbiAgY29udHJhc3Q6IChcbiAgICA1MDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDEwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDIwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDMwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDQwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDUwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDYwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDcwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDgwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDkwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICBBMTAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgQTIwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIEE0MDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICBBNzAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gIClcbik7XG5cbiRtYXQteWVsbG93OiAoXG4gIDUwOiAjZmZmZGU3LFxuICAxMDA6ICNmZmY5YzQsXG4gIDIwMDogI2ZmZjU5ZCxcbiAgMzAwOiAjZmZmMTc2LFxuICA0MDA6ICNmZmVlNTgsXG4gIDUwMDogI2ZmZWIzYixcbiAgNjAwOiAjZmRkODM1LFxuICA3MDA6ICNmYmMwMmQsXG4gIDgwMDogI2Y5YTgyNSxcbiAgOTAwOiAjZjU3ZjE3LFxuICBBMTAwOiAjZmZmZjhkLFxuICBBMjAwOiAjZmZmZjAwLFxuICBBNDAwOiAjZmZlYTAwLFxuICBBNzAwOiAjZmZkNjAwLFxuICBjb250cmFzdDogKFxuICAgIDUwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgMTAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgMjAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgMzAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgNDAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgNTAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgNjAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgNzAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgODAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgOTAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgQTEwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIEEyMDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICBBNDAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgQTcwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICApXG4pO1xuXG4kbWF0LWFtYmVyOiAoXG4gIDUwOiAjZmZmOGUxLFxuICAxMDA6ICNmZmVjYjMsXG4gIDIwMDogI2ZmZTA4MixcbiAgMzAwOiAjZmZkNTRmLFxuICA0MDA6ICNmZmNhMjgsXG4gIDUwMDogI2ZmYzEwNyxcbiAgNjAwOiAjZmZiMzAwLFxuICA3MDA6ICNmZmEwMDAsXG4gIDgwMDogI2ZmOGYwMCxcbiAgOTAwOiAjZmY2ZjAwLFxuICBBMTAwOiAjZmZlNTdmLFxuICBBMjAwOiAjZmZkNzQwLFxuICBBNDAwOiAjZmZjNDAwLFxuICBBNzAwOiAjZmZhYjAwLFxuICBjb250cmFzdDogKFxuICAgIDUwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgMTAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgMjAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgMzAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgNDAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgNTAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgNjAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgNzAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgODAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgOTAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgQTEwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIEEyMDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICBBNDAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgQTcwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICApXG4pO1xuXG4kbWF0LW9yYW5nZTogKFxuICA1MDogI2ZmZjNlMCxcbiAgMTAwOiAjZmZlMGIyLFxuICAyMDA6ICNmZmNjODAsXG4gIDMwMDogI2ZmYjc0ZCxcbiAgNDAwOiAjZmZhNzI2LFxuICA1MDA6ICNmZjk4MDAsXG4gIDYwMDogI2ZiOGMwMCxcbiAgNzAwOiAjZjU3YzAwLFxuICA4MDA6ICNlZjZjMDAsXG4gIDkwMDogI2U2NTEwMCxcbiAgQTEwMDogI2ZmZDE4MCxcbiAgQTIwMDogI2ZmYWI0MCxcbiAgQTQwMDogI2ZmOTEwMCxcbiAgQTcwMDogI2ZmNmQwMCxcbiAgY29udHJhc3Q6IChcbiAgICA1MDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDEwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDIwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDMwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDQwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDUwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDYwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDcwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDgwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICA5MDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gICAgQTEwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIEEyMDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICBBNDAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgQTcwMDogYmxhY2ssXG4gIClcbik7XG5cbiRtYXQtZGVlcC1vcmFuZ2U6IChcbiAgNTA6ICNmYmU5ZTcsXG4gIDEwMDogI2ZmY2NiYyxcbiAgMjAwOiAjZmZhYjkxLFxuICAzMDA6ICNmZjhhNjUsXG4gIDQwMDogI2ZmNzA0MyxcbiAgNTAwOiAjZmY1NzIyLFxuICA2MDA6ICNmNDUxMWUsXG4gIDcwMDogI2U2NGExOSxcbiAgODAwOiAjZDg0MzE1LFxuICA5MDA6ICNiZjM2MGMsXG4gIEExMDA6ICNmZjllODAsXG4gIEEyMDA6ICNmZjZlNDAsXG4gIEE0MDA6ICNmZjNkMDAsXG4gIEE3MDA6ICNkZDJjMDAsXG4gIGNvbnRyYXN0OiAoXG4gICAgNTA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICAxMDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICAyMDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICAzMDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICA0MDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICA1MDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gICAgNjAwOiAkbGlnaHQtcHJpbWFyeS10ZXh0LFxuICAgIDcwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICA4MDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gICAgOTAwOiAkbGlnaHQtcHJpbWFyeS10ZXh0LFxuICAgIEExMDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICBBMjAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgQTQwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICBBNzAwOiAkbGlnaHQtcHJpbWFyeS10ZXh0LFxuICApXG4pO1xuXG4kbWF0LWJyb3duOiAoXG4gIDUwOiAjZWZlYmU5LFxuICAxMDA6ICNkN2NjYzgsXG4gIDIwMDogI2JjYWFhNCxcbiAgMzAwOiAjYTE4ODdmLFxuICA0MDA6ICM4ZDZlNjMsXG4gIDUwMDogIzc5NTU0OCxcbiAgNjAwOiAjNmQ0YzQxLFxuICA3MDA6ICM1ZDQwMzcsXG4gIDgwMDogIzRlMzQyZSxcbiAgOTAwOiAjM2UyNzIzLFxuICBBMTAwOiAjZDdjY2M4LFxuICBBMjAwOiAjYmNhYWE0LFxuICBBNDAwOiAjOGQ2ZTYzLFxuICBBNzAwOiAjNWQ0MDM3LFxuICBjb250cmFzdDogKFxuICAgIDUwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgMTAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgMjAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgMzAwOiAkbGlnaHQtcHJpbWFyeS10ZXh0LFxuICAgIDQwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICA1MDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gICAgNjAwOiAkbGlnaHQtcHJpbWFyeS10ZXh0LFxuICAgIDcwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICA4MDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gICAgOTAwOiAkbGlnaHQtcHJpbWFyeS10ZXh0LFxuICAgIEExMDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICBBMjAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgQTQwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICBBNzAwOiAkbGlnaHQtcHJpbWFyeS10ZXh0LFxuICApXG4pO1xuXG4kbWF0LWdyZXk6IChcbiAgNTA6ICNmYWZhZmEsXG4gIDEwMDogI2Y1ZjVmNSxcbiAgMjAwOiAjZWVlZWVlLFxuICAzMDA6ICNlMGUwZTAsXG4gIDQwMDogI2JkYmRiZCxcbiAgNTAwOiAjOWU5ZTllLFxuICA2MDA6ICM3NTc1NzUsXG4gIDcwMDogIzYxNjE2MSxcbiAgODAwOiAjNDI0MjQyLFxuICA5MDA6ICMyMTIxMjEsXG4gIEExMDA6ICNmZmZmZmYsXG4gIEEyMDA6ICNlZWVlZWUsXG4gIEE0MDA6ICNiZGJkYmQsXG4gIEE3MDA6ICM2MTYxNjEsXG4gIGNvbnRyYXN0OiAoXG4gICAgNTA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICAxMDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICAyMDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICAzMDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICA0MDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICA1MDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICA2MDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gICAgNzAwOiAkbGlnaHQtcHJpbWFyeS10ZXh0LFxuICAgIDgwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICA5MDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gICAgQTEwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIEEyMDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICBBNDAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgQTcwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgKVxuKTtcblxuLy8gQWxpYXMgZm9yIGFsdGVybmF0ZSBzcGVsbGluZy5cbiRtYXQtZ3JheTogJG1hdC1ncmV5O1xuXG4kbWF0LWJsdWUtZ3JleTogKFxuICA1MDogI2VjZWZmMSxcbiAgMTAwOiAjY2ZkOGRjLFxuICAyMDA6ICNiMGJlYzUsXG4gIDMwMDogIzkwYTRhZSxcbiAgNDAwOiAjNzg5MDljLFxuICA1MDA6ICM2MDdkOGIsXG4gIDYwMDogIzU0NmU3YSxcbiAgNzAwOiAjNDU1YTY0LFxuICA4MDA6ICMzNzQ3NGYsXG4gIDkwMDogIzI2MzIzOCxcbiAgQTEwMDogI2NmZDhkYyxcbiAgQTIwMDogI2IwYmVjNSxcbiAgQTQwMDogIzc4OTA5YyxcbiAgQTcwMDogIzQ1NWE2NCxcbiAgY29udHJhc3Q6IChcbiAgICA1MDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDEwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDIwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDMwMDogJGRhcmstcHJpbWFyeS10ZXh0LFxuICAgIDQwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICA1MDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gICAgNjAwOiAkbGlnaHQtcHJpbWFyeS10ZXh0LFxuICAgIDcwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICA4MDA6ICRsaWdodC1wcmltYXJ5LXRleHQsXG4gICAgOTAwOiAkbGlnaHQtcHJpbWFyeS10ZXh0LFxuICAgIEExMDA6ICRkYXJrLXByaW1hcnktdGV4dCxcbiAgICBBMjAwOiAkZGFyay1wcmltYXJ5LXRleHQsXG4gICAgQTQwMDogJGxpZ2h0LXByaW1hcnktdGV4dCxcbiAgICBBNzAwOiAkbGlnaHQtcHJpbWFyeS10ZXh0LFxuICApXG4pO1xuXG4vLyBBbGlhcyBmb3IgYWx0ZXJuYXRlIHNwZWxsaW5nLlxuJG1hdC1ibHVlLWdyYXk6ICRtYXQtYmx1ZS1ncmV5O1xuXG5cbi8vIEJhY2tncm91bmQgcGFsZXR0ZSBmb3IgbGlnaHQgdGhlbWVzLlxuJG1hdC1saWdodC10aGVtZS1iYWNrZ3JvdW5kOiAoXG4gIHN0YXR1cy1iYXI6IG1hcC1nZXQoJG1hdC1ncmV5LCAzMDApLFxuICBhcHAtYmFyOiAgICBtYXAtZ2V0KCRtYXQtZ3JleSwgMTAwKSxcbiAgYmFja2dyb3VuZDogbWFwLWdldCgkbWF0LWdyZXksIDUwKSxcbiAgaG92ZXI6ICAgICAgcmdiYShibGFjaywgMC4wNCksIC8vIFRPRE8oa2FyYSk6IGNoZWNrIHN0eWxlIHdpdGggTWF0ZXJpYWwgRGVzaWduIFVYXG4gIGNhcmQ6ICAgICAgIHdoaXRlLFxuICBkaWFsb2c6ICAgICB3aGl0ZSxcbiAgZGlzYWJsZWQtYnV0dG9uOiByZ2JhKGJsYWNrLCAwLjEyKSxcbiAgcmFpc2VkLWJ1dHRvbjogd2hpdGUsXG4gIGZvY3VzZWQtYnV0dG9uOiAkZGFyay1mb2N1c2VkLFxuICBzZWxlY3RlZC1idXR0b246IG1hcC1nZXQoJG1hdC1ncmV5LCAzMDApLFxuICBzZWxlY3RlZC1kaXNhYmxlZC1idXR0b246IG1hcC1nZXQoJG1hdC1ncmV5LCA0MDApLFxuICBkaXNhYmxlZC1idXR0b24tdG9nZ2xlOiBtYXAtZ2V0KCRtYXQtZ3JleSwgMjAwKSxcbiAgdW5zZWxlY3RlZC1jaGlwOiBtYXAtZ2V0KCRtYXQtZ3JleSwgMzAwKSxcbiAgZGlzYWJsZWQtbGlzdC1vcHRpb246IG1hcC1nZXQoJG1hdC1ncmV5LCAyMDApLFxuICB0b29sdGlwOiBtYXAtZ2V0KCRtYXQtZ3JleSwgNzAwKSxcbik7XG5cbi8vIEJhY2tncm91bmQgcGFsZXR0ZSBmb3IgZGFyayB0aGVtZXMuXG4kbWF0LWRhcmstdGhlbWUtYmFja2dyb3VuZDogKFxuICBzdGF0dXMtYmFyOiBibGFjayxcbiAgYXBwLWJhcjogICAgbWFwLWdldCgkbWF0LWdyZXksIDkwMCksXG4gIGJhY2tncm91bmQ6ICMzMDMwMzAsXG4gIGhvdmVyOiAgICAgIHJnYmEod2hpdGUsIDAuMDQpLCAvLyBUT0RPKGthcmEpOiBjaGVjayBzdHlsZSB3aXRoIE1hdGVyaWFsIERlc2lnbiBVWFxuICBjYXJkOiAgICAgICBtYXAtZ2V0KCRtYXQtZ3JleSwgODAwKSxcbiAgZGlhbG9nOiAgICAgbWFwLWdldCgkbWF0LWdyZXksIDgwMCksXG4gIGRpc2FibGVkLWJ1dHRvbjogcmdiYSh3aGl0ZSwgMC4xMiksXG4gIHJhaXNlZC1idXR0b246IG1hcC1nZXQoJG1hdC1ncmV5LCA4MDApLFxuICBmb2N1c2VkLWJ1dHRvbjogJGxpZ2h0LWZvY3VzZWQsXG4gIHNlbGVjdGVkLWJ1dHRvbjogbWFwLWdldCgkbWF0LWdyZXksIDkwMCksXG4gIHNlbGVjdGVkLWRpc2FibGVkLWJ1dHRvbjogbWFwLWdldCgkbWF0LWdyZXksIDgwMCksXG4gIGRpc2FibGVkLWJ1dHRvbi10b2dnbGU6IGJsYWNrLFxuICB1bnNlbGVjdGVkLWNoaXA6IG1hcC1nZXQoJG1hdC1ncmV5LCA3MDApLFxuICBkaXNhYmxlZC1saXN0LW9wdGlvbjogYmxhY2ssXG4gIHRvb2x0aXA6IG1hcC1nZXQoJG1hdC1ncmV5LCA3MDApLFxuKTtcblxuLy8gRm9yZWdyb3VuZCBwYWxldHRlIGZvciBsaWdodCB0aGVtZXMuXG4kbWF0LWxpZ2h0LXRoZW1lLWZvcmVncm91bmQ6IChcbiAgYmFzZTogICAgICAgICAgICAgIGJsYWNrLFxuICBkaXZpZGVyOiAgICAgICAgICAgJGRhcmstZGl2aWRlcnMsXG4gIGRpdmlkZXJzOiAgICAgICAgICAkZGFyay1kaXZpZGVycyxcbiAgZGlzYWJsZWQ6ICAgICAgICAgICRkYXJrLWRpc2FibGVkLXRleHQsXG4gIGRpc2FibGVkLWJ1dHRvbjogICByZ2JhKGJsYWNrLCAwLjI2KSxcbiAgZGlzYWJsZWQtdGV4dDogICAgICRkYXJrLWRpc2FibGVkLXRleHQsXG4gIGVsZXZhdGlvbjogICAgICAgICBibGFjayxcbiAgaGludC10ZXh0OiAgICAgICAgICRkYXJrLWRpc2FibGVkLXRleHQsXG4gIHNlY29uZGFyeS10ZXh0OiAgICAkZGFyay1zZWNvbmRhcnktdGV4dCxcbiAgaWNvbjogICAgICAgICAgICAgIHJnYmEoYmxhY2ssIDAuNTQpLFxuICBpY29uczogICAgICAgICAgICAgcmdiYShibGFjaywgMC41NCksXG4gIHRleHQ6ICAgICAgICAgICAgICByZ2JhKGJsYWNrLCAwLjg3KSxcbiAgc2xpZGVyLW1pbjogICAgICAgIHJnYmEoYmxhY2ssIDAuODcpLFxuICBzbGlkZXItb2ZmOiAgICAgICAgcmdiYShibGFjaywgMC4yNiksXG4gIHNsaWRlci1vZmYtYWN0aXZlOiByZ2JhKGJsYWNrLCAwLjM4KSxcbik7XG5cbi8vIEZvcmVncm91bmQgcGFsZXR0ZSBmb3IgZGFyayB0aGVtZXMuXG4kbWF0LWRhcmstdGhlbWUtZm9yZWdyb3VuZDogKFxuICBiYXNlOiAgICAgICAgICAgICAgd2hpdGUsXG4gIGRpdmlkZXI6ICAgICAgICAgICAkbGlnaHQtZGl2aWRlcnMsXG4gIGRpdmlkZXJzOiAgICAgICAgICAkbGlnaHQtZGl2aWRlcnMsXG4gIGRpc2FibGVkOiAgICAgICAgICAkbGlnaHQtZGlzYWJsZWQtdGV4dCxcbiAgZGlzYWJsZWQtYnV0dG9uOiAgIHJnYmEod2hpdGUsIDAuMyksXG4gIGRpc2FibGVkLXRleHQ6ICAgICAkbGlnaHQtZGlzYWJsZWQtdGV4dCxcbiAgZWxldmF0aW9uOiAgICAgICAgIGJsYWNrLFxuICBoaW50LXRleHQ6ICAgICAgICAgJGxpZ2h0LWRpc2FibGVkLXRleHQsXG4gIHNlY29uZGFyeS10ZXh0OiAgICAkbGlnaHQtc2Vjb25kYXJ5LXRleHQsXG4gIGljb246ICAgICAgICAgICAgICB3aGl0ZSxcbiAgaWNvbnM6ICAgICAgICAgICAgIHdoaXRlLFxuICB0ZXh0OiAgICAgICAgICAgICAgd2hpdGUsXG4gIHNsaWRlci1taW46ICAgICAgICB3aGl0ZSxcbiAgc2xpZGVyLW9mZjogICAgICAgIHJnYmEod2hpdGUsIDAuMyksXG4gIHNsaWRlci1vZmYtYWN0aXZlOiByZ2JhKHdoaXRlLCAwLjMpLFxuKTtcblxuXG4vLyBXaGV0aGVyIGR1cGxpY2F0aW9uIHdhcm5pbmdzIHNob3VsZCBiZSBkaXNhYmxlZC4gV2FybmluZ3MgZW5hYmxlZCBieSBkZWZhdWx0LlxuJG1hdC10aGVtZS1pZ25vcmUtZHVwbGljYXRpb24td2FybmluZ3M6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBXaGV0aGVyIGRlbnNpdHkgc2hvdWxkIGJlIGdlbmVyYXRlZCBieSBkZWZhdWx0LlxuJF9tYXQtdGhlbWUtZ2VuZXJhdGUtZGVmYXVsdC1kZW5zaXR5OiB0cnVlICFkZWZhdWx0O1xuXG4vLyBXYXJuaW5nIHRoYXQgd2lsbCBiZSBwcmludGVkIGlmIGR1cGxpY2F0ZWQgc3R5bGVzIGFyZSBnZW5lcmF0ZWQgYnkgYSB0aGVtZS5cbiRfbWF0LXRoZW1lLWR1cGxpY2F0ZS13YXJuaW5nOiAnUmVhZCBtb3JlIGFib3V0IGhvdyBzdHlsZSBkdXBsaWNhdGlvbiBjYW4gYmUgYXZvaWRlZCBpbiBhICcgK1xuICAnZGVkaWNhdGVkIGd1aWRlLiBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9jb21wb25lbnRzL2Jsb2IvbWFzdGVyL2d1aWRlcy9kdXBsaWNhdGUtdGhlbWluZy1zdHlsZXMubWQnO1xuXG4vLyBUaGVzZSB2YXJpYWJsZSBhcmUgbm90IGludGVuZGVkIHRvIGJlIG92ZXJyaWRkZW4gZXh0ZXJuYWxseS4gVGhleSB1c2UgYCFkZWZhdWx0YCB0b1xuLy8gYXZvaWQgYmVpbmcgcmVzZXQgZXZlcnkgdGltZSB0aGlzIGZpbGUgaXMgaW1wb3J0ZWQuXG4kX21hdC10aGVtZS1lbWl0dGVkLWNvbG9yOiAoKSAhZGVmYXVsdDtcbiRfbWF0LXRoZW1lLWVtaXR0ZWQtdHlwb2dyYXBoeTogKCkgIWRlZmF1bHQ7XG4kX21hdC10aGVtZS1lbWl0dGVkLWRlbnNpdHk6ICgpICFkZWZhdWx0O1xuXG4vLyBGb3IgYSBnaXZlbiBodWUgaW4gYSBwYWxldHRlLCByZXR1cm4gdGhlIGNvbnRyYXN0IGNvbG9yIGZyb20gdGhlIG1hcCBvZiBjb250cmFzdCBwYWxldHRlcy5cbi8vIEBwYXJhbSAkY29sb3ItbWFwXG4vLyBAcGFyYW0gJGh1ZVxuQGZ1bmN0aW9uIG1hdC1jb250cmFzdCgkcGFsZXR0ZSwgJGh1ZSkge1xuICBAcmV0dXJuIG1hcC1nZXQobWFwLWdldCgkcGFsZXR0ZSwgY29udHJhc3QpLCAkaHVlKTtcbn1cblxuXG4vLyBDcmVhdGVzIGEgbWFwIG9mIGh1ZXMgdG8gY29sb3JzIGZvciBhIHRoZW1lLiBUaGlzIGlzIHVzZWQgdG8gZGVmaW5lIGEgdGhlbWUgcGFsZXR0ZSBpbiB0ZXJtc1xuLy8gb2YgdGhlIE1hdGVyaWFsIERlc2lnbiBodWVzLlxuLy8gQHBhcmFtICRjb2xvci1tYXBcbi8vIEBwYXJhbSAkcHJpbWFyeVxuLy8gQHBhcmFtICRsaWdodGVyXG5AZnVuY3Rpb24gbWF0LXBhbGV0dGUoJGJhc2UtcGFsZXR0ZSwgJGRlZmF1bHQ6IDUwMCwgJGxpZ2h0ZXI6IDEwMCwgJGRhcmtlcjogNzAwLCAkdGV4dDogJGRlZmF1bHQpIHtcbiAgJHJlc3VsdDogbWFwLW1lcmdlKCRiYXNlLXBhbGV0dGUsIChcbiAgICBkZWZhdWx0OiBtYXAtZ2V0KCRiYXNlLXBhbGV0dGUsICRkZWZhdWx0KSxcbiAgICBsaWdodGVyOiBtYXAtZ2V0KCRiYXNlLXBhbGV0dGUsICRsaWdodGVyKSxcbiAgICBkYXJrZXI6IG1hcC1nZXQoJGJhc2UtcGFsZXR0ZSwgJGRhcmtlciksXG4gICAgdGV4dDogbWFwLWdldCgkYmFzZS1wYWxldHRlLCAkdGV4dCksXG5cbiAgICBkZWZhdWx0LWNvbnRyYXN0OiBtYXQtY29udHJhc3QoJGJhc2UtcGFsZXR0ZSwgJGRlZmF1bHQpLFxuICAgIGxpZ2h0ZXItY29udHJhc3Q6IG1hdC1jb250cmFzdCgkYmFzZS1wYWxldHRlLCAkbGlnaHRlciksXG4gICAgZGFya2VyLWNvbnRyYXN0OiBtYXQtY29udHJhc3QoJGJhc2UtcGFsZXR0ZSwgJGRhcmtlcilcbiAgKSk7XG5cbiAgLy8gRm9yIGVhY2ggaHVlIGluIHRoZSBwYWxldHRlLCBhZGQgYSBcIi1jb250cmFzdFwiIGNvbG9yIHRvIHRoZSBtYXAuXG4gIEBlYWNoICRodWUsICRjb2xvciBpbiAkYmFzZS1wYWxldHRlIHtcbiAgICAkcmVzdWx0OiBtYXAtbWVyZ2UoJHJlc3VsdCwgKFxuICAgICAgJyN7JGh1ZX0tY29udHJhc3QnOiBtYXQtY29udHJhc3QoJGJhc2UtcGFsZXR0ZSwgJGh1ZSlcbiAgICApKTtcbiAgfVxuXG4gIEByZXR1cm4gJHJlc3VsdDtcbn1cblxuXG4vLyBHZXRzIGEgY29sb3IgZnJvbSBhIHRoZW1lIHBhbGV0dGUgKHRoZSBvdXRwdXQgb2YgbWF0LXBhbGV0dGUpLlxuLy8gVGhlIGh1ZSBjYW4gYmUgb25lIG9mIHRoZSBzdGFuZGFyZCB2YWx1ZXMgKDUwMCwgQTQwMCwgZXRjLiksIG9uZSBvZiB0aGUgdGhyZWUgcHJlY29uZmlndXJlZFxuLy8gaHVlcyAoZGVmYXVsdCwgbGlnaHRlciwgZGFya2VyKSwgb3IgYW55IG9mIHRoZSBhZm9yZW1lbnRpb25lZCBwcmVmaXhlZCB3aXRoIFwiLWNvbnRyYXN0XCIuXG4vL1xuLy8gQHBhcmFtICRjb2xvci1tYXAgVGhlIHRoZW1lIHBhbGV0dGUgKG91dHB1dCBvZiBtYXQtcGFsZXR0ZSkuXG4vLyBAcGFyYW0gJGh1ZSBUaGUgaHVlIGZyb20gdGhlIHBhbGV0dGUgdG8gdXNlLiBJZiB0aGlzIGlzIGEgdmFsdWUgYmV0d2VlbiAwIGFuZCAxLCBpdCB3aWxsXG4vLyAgICAgYmUgdHJlYXRlZCBhcyBvcGFjaXR5LlxuLy8gQHBhcmFtICRvcGFjaXR5IFRoZSBhbHBoYSBjaGFubmVsIHZhbHVlIGZvciB0aGUgY29sb3IuXG5AZnVuY3Rpb24gbWF0LWNvbG9yKCRwYWxldHRlLCAkaHVlOiBkZWZhdWx0LCAkb3BhY2l0eTogbnVsbCkge1xuICAvLyBJZiBodWVLZXkgaXMgYSBudW1iZXIgYmV0d2VlbiB6ZXJvIGFuZCBvbmUsIHRoZW4gaXQgYWN0dWFsbHkgY29udGFpbnMgYW5cbiAgLy8gb3BhY2l0eSB2YWx1ZSwgc28gcmVjYWxsIHRoaXMgZnVuY3Rpb24gd2l0aCB0aGUgZGVmYXVsdCBodWUgYW5kIHRoYXQgZ2l2ZW4gb3BhY2l0eS5cbiAgQGlmIHR5cGUtb2YoJGh1ZSkgPT0gbnVtYmVyIGFuZCAkaHVlID49IDAgYW5kICRodWUgPD0gMSB7XG4gICAgQHJldHVybiBtYXQtY29sb3IoJHBhbGV0dGUsIGRlZmF1bHQsICRodWUpO1xuICB9XG5cbiAgJGNvbG9yOiBtYXAtZ2V0KCRwYWxldHRlLCAkaHVlKTtcblxuICBAaWYgKHR5cGUtb2YoJGNvbG9yKSAhPSBjb2xvcikge1xuICAgIC8vIElmIHRoZSAkY29sb3IgcmVzb2x2ZWQgdG8gc29tZXRoaW5nIGRpZmZlcmVudCBmcm9tIGEgY29sb3IgKGUuZy4gYSBDU1MgdmFyaWFibGUpLFxuICAgIC8vIHdlIGNhbid0IGFwcGx5IHRoZSBvcGFjaXR5IGFueXdheSBzbyB3ZSByZXR1cm4gdGhlIHZhbHVlIGFzIGlzLCBvdGhlcndpc2UgU2FzcyBjYW5cbiAgICAvLyB0aHJvdyBhbiBlcnJvciBvciBvdXRwdXQgc29tZXRoaW5nIGludmFsaWQuXG4gICAgQHJldHVybiAkY29sb3I7XG4gIH1cblxuICBAcmV0dXJuIHJnYmEoJGNvbG9yLCBpZigkb3BhY2l0eSA9PSBudWxsLCBvcGFjaXR5KCRjb2xvciksICRvcGFjaXR5KSk7XG59XG5cbi8vIFZhbGlkYXRlcyB0aGUgc3BlY2lmaWVkIHRoZW1lIGJ5IGVuc3VyaW5nIHRoYXQgdGhlIG9wdGlvbmFsIGNvbG9yIGNvbmZpZyBkZWZpbmVzXG4vLyBhIHByaW1hcnksIGFjY2VudCBhbmQgd2FybiBwYWxldHRlLiBSZXR1cm5zIHRoZSB0aGVtZSBpZiBubyBmYWlsdXJlcyB3ZXJlIGZvdW5kLlxuQGZ1bmN0aW9uIF9tYXQtdmFsaWRhdGUtdGhlbWUoJHRoZW1lKSB7XG4gIEBpZiBtYXAtZ2V0KCR0aGVtZSwgY29sb3IpIHtcbiAgICAkY29sb3I6IG1hcC1nZXQoJHRoZW1lLCBjb2xvcik7XG4gICAgQGlmIG5vdCBtYXAtZ2V0KCRjb2xvciwgcHJpbWFyeSkge1xuICAgICAgQGVycm9yICdUaGVtZSBkb2VzIG5vdCBkZWZpbmUgYSB2YWxpZCBcInByaW1hcnlcIiBwYWxldHRlLic7XG4gICAgfVxuICAgIEBlbHNlIGlmIG5vdCBtYXAtZ2V0KCRjb2xvciwgYWNjZW50KSB7XG4gICAgICBAZXJyb3IgJ1RoZW1lIGRvZXMgbm90IGRlZmluZSBhIHZhbGlkIFwiYWNjZW50XCIgcGFsZXR0ZS4nO1xuICAgIH1cbiAgICBAZWxzZSBpZiBub3QgbWFwLWdldCgkY29sb3IsIHdhcm4pIHtcbiAgICAgIEBlcnJvciAnVGhlbWUgZG9lcyBub3QgZGVmaW5lIGEgdmFsaWQgXCJ3YXJuXCIgcGFsZXR0ZS4nO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICR0aGVtZTtcbn1cblxuLy8gQ3JlYXRlcyBhIGxpZ2h0LXRoZW1lZCBjb2xvciBjb25maWd1cmF0aW9uIGZyb20gdGhlIHNwZWNpZmllZFxuLy8gcHJpbWFyeSwgYWNjZW50IGFuZCB3YXJuIHBhbGV0dGVzLlxuQGZ1bmN0aW9uIF9tYXQtY3JlYXRlLWxpZ2h0LWNvbG9yLWNvbmZpZygkcHJpbWFyeSwgJGFjY2VudCwgJHdhcm46IG51bGwpIHtcbiAgQHJldHVybiAoXG4gICAgcHJpbWFyeTogJHByaW1hcnksXG4gICAgYWNjZW50OiAkYWNjZW50LFxuICAgIHdhcm46IGlmKCR3YXJuICE9IG51bGwsICR3YXJuLCBtYXQtcGFsZXR0ZSgkbWF0LXJlZCkpLFxuICAgIGlzLWRhcms6IGZhbHNlLFxuICAgIGZvcmVncm91bmQ6ICRtYXQtbGlnaHQtdGhlbWUtZm9yZWdyb3VuZCxcbiAgICBiYWNrZ3JvdW5kOiAkbWF0LWxpZ2h0LXRoZW1lLWJhY2tncm91bmQsXG4gICk7XG59XG5cbi8vIENyZWF0ZXMgYSBkYXJrLXRoZW1lZCBjb2xvciBjb25maWd1cmF0aW9uIGZyb20gdGhlIHNwZWNpZmllZFxuLy8gcHJpbWFyeSwgYWNjZW50IGFuZCB3YXJuIHBhbGV0dGVzLlxuQGZ1bmN0aW9uIF9tYXQtY3JlYXRlLWRhcmstY29sb3ItY29uZmlnKCRwcmltYXJ5LCAkYWNjZW50LCAkd2FybjogbnVsbCkge1xuICBAcmV0dXJuIChcbiAgICBwcmltYXJ5OiAkcHJpbWFyeSxcbiAgICBhY2NlbnQ6ICRhY2NlbnQsXG4gICAgd2FybjogaWYoJHdhcm4gIT0gbnVsbCwgJHdhcm4sIG1hdC1wYWxldHRlKCRtYXQtcmVkKSksXG4gICAgaXMtZGFyazogdHJ1ZSxcbiAgICBmb3JlZ3JvdW5kOiAkbWF0LWRhcmstdGhlbWUtZm9yZWdyb3VuZCxcbiAgICBiYWNrZ3JvdW5kOiAkbWF0LWRhcmstdGhlbWUtYmFja2dyb3VuZCxcbiAgKTtcbn1cblxuLy8gQ3JlYXRlcyBhIGNvbnRhaW5lciBvYmplY3QgZm9yIGEgbGlnaHQgdGhlbWUgdG8gYmUgZ2l2ZW4gdG8gaW5kaXZpZHVhbCBjb21wb25lbnQgdGhlbWUgbWl4aW5zLlxuLy8gVE9ETzogUmVtb3ZlIGxlZ2FjeSBBUEkgYW5kIHJlbmFtZSBgJHByaW1hcnlgIHRvIGAkY29uZmlnYC4gQ3VycmVudGx5IGl0IGNhbm5vdCBiZSByZW5hbWVkXG4vLyBhcyBpdCB3b3VsZCBicmVhayBleGlzdGluZyBhcHBzIHRoYXQgc2V0IHRoZSBwYXJhbWV0ZXIgYnkgbmFtZS5cbkBmdW5jdGlvbiBtYXQtbGlnaHQtdGhlbWUoJHByaW1hcnksICRhY2NlbnQ6IG51bGwsICR3YXJuOiBtYXQtcGFsZXR0ZSgkbWF0LXJlZCkpIHtcbiAgLy8gVGhpcyBmdW5jdGlvbiBjcmVhdGVzIGEgY29udGFpbmVyIG9iamVjdCBmb3IgdGhlIGluZGl2aWR1YWwgY29tcG9uZW50IHRoZW1lIG1peGlucy4gQ29uc3VtZXJzXG4gIC8vIGNhbiBjb25zdHJ1Y3Qgc3VjaCBhbiBvYmplY3QgYnkgY2FsbGluZyB0aGlzIGZ1bmN0aW9uLCBvciBieSBidWlsZGluZyB0aGUgb2JqZWN0IG1hbnVhbGx5LlxuICAvLyBUaGVyZSBhcmUgdHdvIHBvc3NpYmxlIHdheXMgdG8gaW52b2tlIHRoaXMgZnVuY3Rpb24gaW4gb3JkZXIgdG8gY3JlYXRlIHN1Y2ggYW4gb2JqZWN0OlxuICAvL1xuICAvLyAgICAoMSkgUGFzc2luZyBpbiBhIG1hcCB0aGF0IGhvbGRzIG9wdGlvbmFsIGNvbmZpZ3VyYXRpb25zIGZvciBpbmRpdmlkdWFsIHBhcnRzIG9mIHRoZVxuICAvLyAgICAgICAgdGhlbWluZyBzeXN0ZW0uIEZvciBgY29sb3JgIGNvbmZpZ3VyYXRpb25zLCB0aGUgZnVuY3Rpb24gb25seSBleHBlY3RzIHRoZSBwYWxldHRlc1xuICAvLyAgICAgICAgZm9yIGBwcmltYXJ5YCBhbmQgYGFjY2VudGAgKGFuZCBvcHRpb25hbGx5IGB3YXJuYCkuIFRoZSBmdW5jdGlvbiB3aWxsIGV4cGFuZCB0aGVcbiAgLy8gICAgICAgIHNob3J0aGFuZCBpbnRvIGFuIGFjdHVhbCBjb25maWd1cmF0aW9uIHRoYXQgY2FuIGJlIGNvbnN1bWVkIGluIGAtY29sb3JgIG1peGlucy5cbiAgLy8gICAgKDIpIExlZ2FjeSBwYXR0ZXJuOiBQYXNzaW5nIGluIHRoZSBwYWxldHRlcyBhcyBwYXJhbWV0ZXJzLiBUaGlzIGlzIG5vdCBhcyBmbGV4aWJsZVxuICAvLyAgICAgICAgYXMgcGFzc2luZyBpbiBhIGNvbmZpZ3VyYXRpb24gbWFwIGJlY2F1c2Ugb25seSB0aGUgYGNvbG9yYCBzeXN0ZW0gY2FuIGJlIGNvbmZpZ3VyZWQuXG4gIC8vXG4gIC8vIElmIHRoZSBsZWdhY3kgcGF0dGVybiBpcyB1c2VkLCB3ZSBnZW5lcmF0ZSBhIGNvbnRhaW5lciBvYmplY3Qgb25seSB3aXRoIGEgbGlnaHQtdGhlbWVkXG4gIC8vIGNvbmZpZ3VyYXRpb24gZm9yIHRoZSBgY29sb3JgIHRoZW1pbmcgcGFydC5cbiAgQGlmICRhY2NlbnQgIT0gbnVsbCB7XG4gICAgQHJldHVybiBtYXQtcHJpdmF0ZS1jcmVhdGUtYmFja3dhcmRzLWNvbXBhdGliaWxpdHktdGhlbWUoX21hdC12YWxpZGF0ZS10aGVtZSgoXG4gICAgICBfaXMtbGVnYWN5LXRoZW1lOiB0cnVlLFxuICAgICAgY29sb3I6IF9tYXQtY3JlYXRlLWxpZ2h0LWNvbG9yLWNvbmZpZygkcHJpbWFyeSwgJGFjY2VudCwgJHdhcm4pLFxuICAgICkpKTtcbiAgfVxuICAvLyBJZiB0aGUgbWFwIHBhdHRlcm4gaXMgdXNlZCAoMSksIHdlIGp1c3QgcGFzcy10aHJvdWdoIHRoZSBjb25maWd1cmF0aW9ucyBmb3IgaW5kaXZpZHVhbFxuICAvLyBwYXJ0cyBvZiB0aGUgdGhlbWluZyBzeXN0ZW0sIGJ1dCB1cGRhdGUgdGhlIGBjb2xvcmAgY29uZmlndXJhdGlvbiBpZiBzZXQuIEFzIGV4cGxhaW5lZFxuICAvLyBhYm92ZSwgdGhlIGNvbG9yIHNob3J0aGFuZCB3aWxsIGJlIGV4cGFuZGVkIHRvIGFuIGFjdHVhbCBsaWdodC10aGVtZWQgY29sb3IgY29uZmlndXJhdGlvbi5cbiAgJHJlc3VsdDogJHByaW1hcnk7XG4gIEBpZiBtYXAtZ2V0KCRwcmltYXJ5LCBjb2xvcikge1xuICAgICRjb2xvci1zZXR0aW5nczogbWFwLWdldCgkcHJpbWFyeSwgY29sb3IpO1xuICAgICRwcmltYXJ5OiBtYXAtZ2V0KCRjb2xvci1zZXR0aW5ncywgcHJpbWFyeSk7XG4gICAgJGFjY2VudDogbWFwLWdldCgkY29sb3Itc2V0dGluZ3MsIGFjY2VudCk7XG4gICAgJHdhcm46IG1hcC1nZXQoJGNvbG9yLXNldHRpbmdzLCB3YXJuKTtcbiAgICAkcmVzdWx0OiBtYXAtbWVyZ2UoJHJlc3VsdCwgKGNvbG9yOiBfbWF0LWNyZWF0ZS1saWdodC1jb2xvci1jb25maWcoJHByaW1hcnksICRhY2NlbnQsICR3YXJuKSkpO1xuICB9XG4gIEByZXR1cm4gbWF0LXByaXZhdGUtY3JlYXRlLWJhY2t3YXJkcy1jb21wYXRpYmlsaXR5LXRoZW1lKF9tYXQtdmFsaWRhdGUtdGhlbWUoJHJlc3VsdCkpO1xufVxuXG4vLyBDcmVhdGVzIGEgY29udGFpbmVyIG9iamVjdCBmb3IgYSBkYXJrIHRoZW1lIHRvIGJlIGdpdmVuIHRvIGluZGl2aWR1YWwgY29tcG9uZW50IHRoZW1lIG1peGlucy5cbi8vIFRPRE86IFJlbW92ZSBsZWdhY3kgQVBJIGFuZCByZW5hbWUgYCRwcmltYXJ5YCB0byBgJGNvbmZpZ2AuIEN1cnJlbnRseSBpdCBjYW5ub3QgYmUgcmVuYW1lZFxuLy8gYXMgaXQgd291bGQgYnJlYWsgZXhpc3RpbmcgYXBwcyB0aGF0IHNldCB0aGUgcGFyYW1ldGVyIGJ5IG5hbWUuXG5AZnVuY3Rpb24gbWF0LWRhcmstdGhlbWUoJHByaW1hcnksICRhY2NlbnQ6IG51bGwsICR3YXJuOiBtYXQtcGFsZXR0ZSgkbWF0LXJlZCkpIHtcbiAgLy8gVGhpcyBmdW5jdGlvbiBjcmVhdGVzIGEgY29udGFpbmVyIG9iamVjdCBmb3IgdGhlIGluZGl2aWR1YWwgY29tcG9uZW50IHRoZW1lIG1peGlucy4gQ29uc3VtZXJzXG4gIC8vIGNhbiBjb25zdHJ1Y3Qgc3VjaCBhbiBvYmplY3QgYnkgY2FsbGluZyB0aGlzIGZ1bmN0aW9uLCBvciBieSBidWlsZGluZyB0aGUgb2JqZWN0IG1hbnVhbGx5LlxuICAvLyBUaGVyZSBhcmUgdHdvIHBvc3NpYmxlIHdheXMgdG8gaW52b2tlIHRoaXMgZnVuY3Rpb24gaW4gb3JkZXIgdG8gY3JlYXRlIHN1Y2ggYW4gb2JqZWN0OlxuICAvL1xuICAvLyAgICAoMSkgUGFzc2luZyBpbiBhIG1hcCB0aGF0IGhvbGRzIG9wdGlvbmFsIGNvbmZpZ3VyYXRpb25zIGZvciBpbmRpdmlkdWFsIHBhcnRzIG9mIHRoZVxuICAvLyAgICAgICAgdGhlbWluZyBzeXN0ZW0uIEZvciBgY29sb3JgIGNvbmZpZ3VyYXRpb25zLCB0aGUgZnVuY3Rpb24gb25seSBleHBlY3RzIHRoZSBwYWxldHRlc1xuICAvLyAgICAgICAgZm9yIGBwcmltYXJ5YCBhbmQgYGFjY2VudGAgKGFuZCBvcHRpb25hbGx5IGB3YXJuYCkuIFRoZSBmdW5jdGlvbiB3aWxsIGV4cGFuZCB0aGVcbiAgLy8gICAgICAgIHNob3J0aGFuZCBpbnRvIGFuIGFjdHVhbCBjb25maWd1cmF0aW9uIHRoYXQgY2FuIGJlIGNvbnN1bWVkIGluIGAtY29sb3JgIG1peGlucy5cbiAgLy8gICAgKDIpIExlZ2FjeSBwYXR0ZXJuOiBQYXNzaW5nIGluIHRoZSBwYWxldHRlcyBhcyBwYXJhbWV0ZXJzLiBUaGlzIGlzIG5vdCBhcyBmbGV4aWJsZVxuICAvLyAgICAgICAgYXMgcGFzc2luZyBpbiBhIGNvbmZpZ3VyYXRpb24gbWFwIGJlY2F1c2Ugb25seSB0aGUgYGNvbG9yYCBzeXN0ZW0gY2FuIGJlIGNvbmZpZ3VyZWQuXG4gIC8vXG4gIC8vIElmIHRoZSBsZWdhY3kgcGF0dGVybiBpcyB1c2VkLCB3ZSBnZW5lcmF0ZSBhIGNvbnRhaW5lciBvYmplY3Qgb25seSB3aXRoIGEgZGFyay10aGVtZWRcbiAgLy8gY29uZmlndXJhdGlvbiBmb3IgdGhlIGBjb2xvcmAgdGhlbWluZyBwYXJ0LlxuICBAaWYgJGFjY2VudCAhPSBudWxsIHtcbiAgICBAcmV0dXJuIG1hdC1wcml2YXRlLWNyZWF0ZS1iYWNrd2FyZHMtY29tcGF0aWJpbGl0eS10aGVtZShfbWF0LXZhbGlkYXRlLXRoZW1lKChcbiAgICAgIF9pcy1sZWdhY3ktdGhlbWU6IHRydWUsXG4gICAgICBjb2xvcjogX21hdC1jcmVhdGUtZGFyay1jb2xvci1jb25maWcoJHByaW1hcnksICRhY2NlbnQsICR3YXJuKSxcbiAgICApKSk7XG4gIH1cbiAgLy8gSWYgdGhlIG1hcCBwYXR0ZXJuIGlzIHVzZWQgKDEpLCB3ZSBqdXN0IHBhc3MtdGhyb3VnaCB0aGUgY29uZmlndXJhdGlvbnMgZm9yIGluZGl2aWR1YWxcbiAgLy8gcGFydHMgb2YgdGhlIHRoZW1pbmcgc3lzdGVtLCBidXQgdXBkYXRlIHRoZSBgY29sb3JgIGNvbmZpZ3VyYXRpb24gaWYgc2V0LiBBcyBleHBsYWluZWRcbiAgLy8gYWJvdmUsIHRoZSBjb2xvciBzaG9ydGhhbmQgd2lsbCBiZSBleHBhbmRlZCB0byBhbiBhY3R1YWwgZGFyay10aGVtZWQgY29sb3IgY29uZmlndXJhdGlvbi5cbiAgJHJlc3VsdDogJHByaW1hcnk7XG4gIEBpZiBtYXAtZ2V0KCRwcmltYXJ5LCBjb2xvcikge1xuICAgICRjb2xvci1zZXR0aW5nczogbWFwLWdldCgkcHJpbWFyeSwgY29sb3IpO1xuICAgICRwcmltYXJ5OiBtYXAtZ2V0KCRjb2xvci1zZXR0aW5ncywgcHJpbWFyeSk7XG4gICAgJGFjY2VudDogbWFwLWdldCgkY29sb3Itc2V0dGluZ3MsIGFjY2VudCk7XG4gICAgJHdhcm46IG1hcC1nZXQoJGNvbG9yLXNldHRpbmdzLCB3YXJuKTtcbiAgICAkcmVzdWx0OiBtYXAtbWVyZ2UoJHJlc3VsdCwgKGNvbG9yOiBfbWF0LWNyZWF0ZS1kYXJrLWNvbG9yLWNvbmZpZygkcHJpbWFyeSwgJGFjY2VudCwgJHdhcm4pKSk7XG4gIH1cbiAgQHJldHVybiBtYXQtcHJpdmF0ZS1jcmVhdGUtYmFja3dhcmRzLWNvbXBhdGliaWxpdHktdGhlbWUoX21hdC12YWxpZGF0ZS10aGVtZSgkcmVzdWx0KSk7XG59XG5cbi8vLyBHZXRzIHRoZSBjb2xvciBjb25maWd1cmF0aW9uIGZyb20gdGhlIGdpdmVuIHRoZW1lIG9yIGNvbmZpZ3VyYXRpb24uXG5AZnVuY3Rpb24gbWF0LWdldC1jb2xvci1jb25maWcoJHRoZW1lLCAkZGVmYXVsdDogbnVsbCkge1xuICAvLyBJZiBhIGNvbmZpZ3VyYXRpb24gaGFzIGJlZW4gcGFzc2VkLCByZXR1cm4gdGhlIGNvbmZpZyBkaXJlY3RseS5cbiAgQGlmIG5vdCBtYXQtcHJpdmF0ZS1pcy10aGVtZS1vYmplY3QoJHRoZW1lKSB7XG4gICAgQHJldHVybiAkdGhlbWU7XG4gIH1cbiAgLy8gSWYgdGhlIHRoZW1lIGhhcyBiZWVuIGNvbnN0cnVjdGVkIHRocm91Z2ggdGhlIGxlZ2FjeSB0aGVtaW5nIEFQSSwgd2UgdXNlIHRoZSB0aGVtZSBvYmplY3RcbiAgLy8gYXMgY29sb3IgY29uZmlndXJhdGlvbiBpbnN0ZWFkIG9mIHRoZSBkZWRpY2F0ZWQgYGNvbG9yYCBwcm9wZXJ0eS4gV2UgZG8gdGhpcyBiZWNhdXNlIGZvclxuICAvLyBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSwgd2UgY29waWVkIHRoZSBjb2xvciBjb25maWd1cmF0aW9uIGZyb20gYCR0aGVtZS5jb2xvcmAgdG8gYCR0aGVtZWAuXG4gIC8vIEhlbmNlIGRldmVsb3BlcnMgY291bGQgY3VzdG9taXplIHRoZSBjb2xvcnMgYXQgdG9wLWxldmVsIGFuZCB3YW50IHRvIHJlc3BlY3QgdGhlc2UgY2hhbmdlc1xuICAvLyBUT0RPOiBSZW1vdmUgd2hlbiBsZWdhY3kgdGhlbWluZyBBUEkgaXMgcmVtb3ZlZC5cbiAgQGlmIG1hdC1wcml2YXRlLWlzLWxlZ2FjeS1jb25zdHJ1Y3RlZC10aGVtZSgkdGhlbWUpIHtcbiAgICBAcmV0dXJuICR0aGVtZTtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJHRoZW1lLCBjb2xvcikge1xuICAgIEByZXR1cm4gbWFwLWdldCgkdGhlbWUsIGNvbG9yKTtcbiAgfVxuICBAcmV0dXJuICRkZWZhdWx0O1xufVxuXG4vLy8gR2V0cyB0aGUgZGVuc2l0eSBjb25maWd1cmF0aW9uIGZyb20gdGhlIGdpdmVuIHRoZW1lIG9yIGNvbmZpZ3VyYXRpb24uXG5AZnVuY3Rpb24gbWF0LWdldC1kZW5zaXR5LWNvbmZpZygkdGhlbWUtb3ItY29uZmlnLCAkZGVmYXVsdDogMCkge1xuICAvLyBJZiBhIGNvbmZpZ3VyYXRpb24gaGFzIGJlZW4gcGFzc2VkLCByZXR1cm4gdGhlIGNvbmZpZyBkaXJlY3RseS5cbiAgQGlmIG5vdCBtYXQtcHJpdmF0ZS1pcy10aGVtZS1vYmplY3QoJHRoZW1lLW9yLWNvbmZpZykge1xuICAgIEByZXR1cm4gJHRoZW1lLW9yLWNvbmZpZztcbiAgfVxuICAvLyBJbiBjYXNlIGEgdGhlbWUgaGFzIGJlZW4gcGFzc2VkLCBleHRyYWN0IHRoZSBjb25maWd1cmF0aW9uIGlmIHByZXNlbnQsXG4gIC8vIG9yIGZhbGwgYmFjayB0byB0aGUgZGVmYXVsdCBkZW5zaXR5IGNvbmZpZy5cbiAgQGlmIG1hcC1oYXMta2V5KCR0aGVtZS1vci1jb25maWcsIGRlbnNpdHkpIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJHRoZW1lLW9yLWNvbmZpZywgZGVuc2l0eSk7XG4gIH1cbiAgQHJldHVybiAkZGVmYXVsdDtcbn1cblxuLy8vIEdldHMgdGhlIHR5cG9ncmFwaHkgY29uZmlndXJhdGlvbiBmcm9tIHRoZSBnaXZlbiB0aGVtZSBvciBjb25maWd1cmF0aW9uLlxuLy8vIEZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSwgdHlwb2dyYXBoeSBpcyBub3QgaW5jbHVkZWQgYnkgZGVmYXVsdC5cbkBmdW5jdGlvbiBtYXQtZ2V0LXR5cG9ncmFwaHktY29uZmlnKCR0aGVtZS1vci1jb25maWcsICRkZWZhdWx0OiBudWxsKSB7XG4gIC8vIElmIGEgY29uZmlndXJhdGlvbiBoYXMgYmVlbiBwYXNzZWQsIHJldHVybiB0aGUgY29uZmlnIGRpcmVjdGx5LlxuICBAaWYgbm90IG1hdC1wcml2YXRlLWlzLXRoZW1lLW9iamVjdCgkdGhlbWUtb3ItY29uZmlnKSB7XG4gICAgQHJldHVybiAkdGhlbWUtb3ItY29uZmlnO1xuICB9XG4gIC8vIEluIGNhc2UgYSB0aGVtZSBoYXMgYmVlbiBwYXNzZWQsIGV4dHJhY3QgdGhlIGNvbmZpZ3VyYXRpb24gaWYgcHJlc2VudCxcbiAgLy8gb3IgZmFsbCBiYWNrIHRvIHRoZSBkZWZhdWx0IHR5cG9ncmFwaHkgY29uZmlnLlxuICBAaWYgKG1hcC1oYXMta2V5KCR0aGVtZS1vci1jb25maWcsIHR5cG9ncmFwaHkpKSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCR0aGVtZS1vci1jb25maWcsIHR5cG9ncmFwaHkpO1xuICB9XG4gIEByZXR1cm4gJGRlZmF1bHQ7XG59XG5cblxuLy9cbi8vIFByaXZhdGUgQVBJc1xuLy9cblxuLy8gQ2hlY2tzIGlmIGNvbmZpZ3VyYXRpb25zIHRoYXQgaGF2ZSBiZWVuIGRlY2xhcmVkIGluIHRoZSBnaXZlbiB0aGVtZSBoYXZlIGJlZW4gZ2VuZXJhdGVkXG4vLyBiZWZvcmUuIElmIHNvLCB3YXJuaW5ncyB3aWxsIGJlIHJlcG9ydGVkLiBUaGlzIHNob3VsZCBub3RpZnkgZGV2ZWxvcGVycyBpbiBjYXNlIGR1cGxpY2F0ZVxuLy8gc3R5bGVzIGFyZSBhY2NpZGVudGFsbHkgZ2VuZXJhdGVkIGR1ZSB0byB3cm9uZyB1c2FnZSBvZiB0aGUgYWxsLXRoZW1lIG1peGlucy5cbi8vXG4vLyBBZGRpdGlvbmFsbHksIHRoaXMgbWl4aW4gY29udHJvbHMgdGhlIGRlZmF1bHQgdmFsdWUgZm9yIHRoZSBkZW5zaXR5IGNvbmZpZ3VyYXRpb24uIEJ5XG4vLyBkZWZhdWx0LCBkZW5zaXR5IHN0eWxlcyBhcmUgZ2VuZXJhdGVkIGF0IHNjYWxlIHplcm8uIElmIHRoZSBzYW1lIGRlbnNpdHkgc3R5bGVzIHdvdWxkIGJlXG4vLyBnZW5lcmF0ZWQgYSBzZWNvbmQgdGltZSB0aG91Z2gsIHRoZSBkZWZhdWx0IHZhbHVlIHdpbGwgY2hhbmdlIHRvIGF2b2lkIGR1cGxpY2F0ZSBzdHlsZXMuXG4vL1xuLy8gVGhlIG1peGluIGtlZXBzIHRyYWNrIG9mIGFsbCBjb25maWd1cmF0aW9ucyBpbiBhIGxpc3QgdGhhdCBpcyBzY29wZWQgdG8gdGhlIHNwZWNpZmllZFxuLy8gaWQuIFRoaXMgaXMgbmVjZXNzYXJ5IGJlY2F1c2UgYSBnaXZlbiB0aGVtZSBjYW4gYmUgcGFzc2VkIHRvIG11bHRpcGxlIGRpc2pvaW50IHRoZW1lIG1peGluc1xuLy8gKGUuZy4gYGFuZ3VsYXItbWF0ZXJpYWwtdGhlbWVgIGFuZCBgYW5ndWxhci1tYXRlcmlhbC1tZGMtdGhlbWVgKSB3aXRob3V0IGNhdXNpbmcgYW55XG4vLyBzdHlsZSBkdXBsaWNhdGlvbi5cbkBtaXhpbiBtYXQtcHJpdmF0ZS1jaGVjay1kdXBsaWNhdGUtdGhlbWUtc3R5bGVzKCR0aGVtZS1vci1jb2xvci1jb25maWcsICRpZCkge1xuICAkdGhlbWU6IG1hdC1wcml2YXRlLWxlZ2FjeS1nZXQtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZyk7XG4gICRjb2xvci1jb25maWc6IG1hdC1nZXQtY29sb3ItY29uZmlnKCR0aGVtZSk7XG4gICRkZW5zaXR5LWNvbmZpZzogbWF0LWdldC1kZW5zaXR5LWNvbmZpZygkdGhlbWUpO1xuICAkdHlwb2dyYXBoeS1jb25maWc6IG1hdC1nZXQtdHlwb2dyYXBoeS1jb25maWcoJHRoZW1lKTtcbiAgLy8gTGlzdHMgb2YgcHJldmlvdXMgYGNvbG9yYCwgYGRlbnNpdHlgIGFuZCBgdHlwb2dyYXBoeWAgY29uZmlndXJhdGlvbnMuXG4gICRwcmV2aW91cy1jb2xvcjogbWFwLWdldCgkX21hdC10aGVtZS1lbWl0dGVkLWNvbG9yLCAkaWQpIG9yICgpO1xuICAkcHJldmlvdXMtdHlwb2dyYXBoeTogbWFwLWdldCgkX21hdC10aGVtZS1lbWl0dGVkLXR5cG9ncmFwaHksICRpZCkgb3IgKCk7XG4gICRwcmV2aW91cy1kZW5zaXR5OiBtYXAtZ2V0KCRfbWF0LXRoZW1lLWVtaXR0ZWQtZGVuc2l0eSwgJGlkKSBvciAoKTtcbiAgLy8gV2hldGhlciBkdXBsaWNhdGUgbGVnYWN5IGRlbnNpdHkgc3R5bGVzIHdvdWxkIGJlIGdlbmVyYXRlZC5cbiAgJGR1cGxpY2F0ZS1sZWdhY3ktZGVuc2l0eTogZmFsc2U7XG5cbiAgLy8gQ2hlY2sgaWYgdGhlIGNvbG9yIGNvbmZpZ3VyYXRpb24gaGFzIGJlZW4gZ2VuZXJhdGVkIGJlZm9yZS5cbiAgQGlmICRjb2xvci1jb25maWcgIT0gbnVsbCB7XG4gICAgQGlmIGluZGV4KCRwcmV2aW91cy1jb2xvciwgJGNvbG9yLWNvbmZpZykgIT0gbnVsbCBhbmRcbiAgICAgICAgbm90ICRtYXQtdGhlbWUtaWdub3JlLWR1cGxpY2F0aW9uLXdhcm5pbmdzIHtcbiAgICAgIEB3YXJuICdUaGUgc2FtZSBjb2xvciBzdHlsZXMgYXJlIGdlbmVyYXRlZCBtdWx0aXBsZSB0aW1lcy4gJyArXG4gICAgICAgICAgJF9tYXQtdGhlbWUtZHVwbGljYXRlLXdhcm5pbmc7XG4gICAgfVxuICAgICRwcmV2aW91cy1jb2xvcjogYXBwZW5kKCRwcmV2aW91cy1jb2xvciwgJGNvbG9yLWNvbmZpZyk7XG4gIH1cblxuICAvLyBDaGVjayBpZiB0aGUgdHlwb2dyYXBoeSBjb25maWd1cmF0aW9uIGhhcyBiZWVuIGdlbmVyYXRlZCBiZWZvcmUuXG4gIEBpZiAkdHlwb2dyYXBoeS1jb25maWcgIT0gbnVsbCB7XG4gICAgQGlmIGluZGV4KCRwcmV2aW91cy10eXBvZ3JhcGh5LCAkdHlwb2dyYXBoeS1jb25maWcpICE9IG51bGwgYW5kXG4gICAgICAgIG5vdCAkbWF0LXRoZW1lLWlnbm9yZS1kdXBsaWNhdGlvbi13YXJuaW5ncyB7XG4gICAgICBAd2FybiAnVGhlIHNhbWUgdHlwb2dyYXBoeSBzdHlsZXMgYXJlIGdlbmVyYXRlZCBtdWx0aXBsZSB0aW1lcy4gJyArXG4gICAgICAgICAgJF9tYXQtdGhlbWUtZHVwbGljYXRlLXdhcm5pbmc7XG4gICAgfVxuICAgICRwcmV2aW91cy10eXBvZ3JhcGh5OiBhcHBlbmQoJHByZXZpb3VzLXR5cG9ncmFwaHksICR0eXBvZ3JhcGh5LWNvbmZpZyk7XG4gIH1cblxuICAvLyBDaGVjayBpZiB0aGUgZGVuc2l0eSBjb25maWd1cmF0aW9uIGhhcyBiZWVuIGdlbmVyYXRlZCBiZWZvcmUuXG4gIEBpZiAkZGVuc2l0eS1jb25maWcgIT0gbnVsbCB7XG4gICAgQGlmIGluZGV4KCRwcmV2aW91cy1kZW5zaXR5LCAkZGVuc2l0eS1jb25maWcpICE9IG51bGwge1xuICAgICAgLy8gT25seSByZXBvcnQgYSB3YXJuaW5nIGlmIGRlbnNpdHkgc3R5bGVzIHdvdWxkIGJlIGR1cGxpY2F0ZWQgZm9yIG5vbi1sZWdhY3kgdGhlbWVcbiAgICAgIC8vIGRlZmluaXRpb25zLiBGb3IgbGVnYWN5IHRoZW1lcywgd2UgaGF2ZSBjb21wYXRpYmlsaXR5IGxvZ2ljIHRoYXQgYXZvaWRzIGR1cGxpY2F0aW9uXG4gICAgICAvLyBvZiBkZWZhdWx0IGRlbnNpdHkgc3R5bGVzLiBXZSBkb24ndCB3YW50IHRvIHJlcG9ydCBhIHdhcm5pbmcgaW4gdGhvc2UgY2FzZXMuXG4gICAgICBAaWYgbWF0LXByaXZhdGUtaXMtbGVnYWN5LWNvbnN0cnVjdGVkLXRoZW1lKCR0aGVtZSkge1xuICAgICAgICAkZHVwbGljYXRlLWxlZ2FjeS1kZW5zaXR5OiB0cnVlO1xuICAgICAgfVxuICAgICAgQGVsc2UgaWYgbm90ICRtYXQtdGhlbWUtaWdub3JlLWR1cGxpY2F0aW9uLXdhcm5pbmdzIHtcbiAgICAgICAgQHdhcm4gJ1RoZSBzYW1lIGRlbnNpdHkgc3R5bGVzIGFyZSBnZW5lcmF0ZWQgbXVsdGlwbGUgdGltZXMuICcgK1xuICAgICAgICAgICAkX21hdC10aGVtZS1kdXBsaWNhdGUtd2FybmluZztcbiAgICAgIH1cbiAgICB9XG4gICAgJHByZXZpb3VzLWRlbnNpdHk6IGFwcGVuZCgkcHJldmlvdXMtZGVuc2l0eSwgJGRlbnNpdHktY29uZmlnKTtcbiAgfVxuXG4gICRfbWF0LXRoZW1lLWVtaXR0ZWQtY29sb3I6IG1hcC1tZXJnZShcbiAgICAgICRfbWF0LXRoZW1lLWVtaXR0ZWQtY29sb3IsICgkaWQ6ICRwcmV2aW91cy1jb2xvcikpICFnbG9iYWw7XG4gICRfbWF0LXRoZW1lLWVtaXR0ZWQtZGVuc2l0eTogbWFwLW1lcmdlKFxuICAgICAgJF9tYXQtdGhlbWUtZW1pdHRlZC1kZW5zaXR5LCAoJGlkOiAkcHJldmlvdXMtZGVuc2l0eSkpICFnbG9iYWw7XG4gICRfbWF0LXRoZW1lLWVtaXR0ZWQtdHlwb2dyYXBoeTogbWFwLW1lcmdlKFxuICAgICAgJF9tYXQtdGhlbWUtZW1pdHRlZC10eXBvZ3JhcGh5LCAoJGlkOiAkcHJldmlvdXMtdHlwb2dyYXBoeSkpICFnbG9iYWw7XG5cbiAgLy8gT3B0aW9uYWxseSwgY29uc3VtZXJzIG9mIHRoaXMgbWl4aW4gY2FuIHdyYXAgY29udGVudHMgaW5zaWRlIHNvIHRoYXQgbmVzdGVkXG4gIC8vIGR1cGxpY2F0ZSBzdHlsZSBjaGVja3MgZG8gbm90IHJlcG9ydCBhbm90aGVyIHdhcm5pbmcuIGUuZy4gaWYgZGV2ZWxvcGVycyBpbmNsdWRlXG4gIC8vIHRoZSBgYW5ndWxhci1tYXRlcmlhbC10aGVtZWAgbWl4aW4gdHdpY2UsIG9ubHkgdGhlIHRvcC1sZXZlbCBkdXBsaWNhdGUgc3R5bGVzIGNoZWNrXG4gIC8vIHNob3VsZCByZXBvcnQgYSB3YXJuaW5nLiBOb3QgYWxsIGluZGl2aWR1YWwgY29tcG9uZW50cyBzaG91bGQgcmVwb3J0IGEgd2FybmluZyB0b28uXG4gICRvcmlnLW1hdC10aGVtZS1pZ25vcmUtZHVwbGljYXRpb24td2FybmluZ3M6ICRtYXQtdGhlbWUtaWdub3JlLWR1cGxpY2F0aW9uLXdhcm5pbmdzO1xuICAkbWF0LXRoZW1lLWlnbm9yZS1kdXBsaWNhdGlvbi13YXJuaW5nczogdHJ1ZSAhZ2xvYmFsO1xuXG4gIC8vIElmIGR1cGxpY2F0ZSBkZWZhdWx0IGRlbnNpdHkgc3R5bGVzIHdvdWxkIGJlIGdlbmVyYXRlZCBmb3IgYSBsZWdhY3kgY29uc3RydWN0ZWQgdGhlbWUsXG4gIC8vIHdlIGFkanVzdCB0aGUgZGVuc2l0eSBnZW5lcmF0aW9uIHNvIHRoYXQgbm8gZGVuc2l0eSBzdHlsZXMgYXJlIGdlbmVyYXRlZCBieSBkZWZhdWx0LlxuICAvLyBJZiBubyBkZWZhdWx0IGRlbnNpdHkgc3R5bGVzIGhhdmUgYmVlbiBnZW5lcmF0ZWQgeWV0LCB3ZSBlbnN1cmUgdGhhdCB0aGUgc3R5bGVzXG4gIC8vIGFyZSBnZW5lcmF0ZWQgYXQgcm9vdC4gRm9yIGxlZ2FjeSB0aGVtZXMgb3VyIGdvYWwgaXMgdG8gZ2VuZXJhdGUgZGVmYXVsdCBkZW5zaXR5XG4gIC8vIHN0eWxlcyAqKm9uY2UqKiBhbmQgYXQgcm9vdC4gVGhpcyBtYXRjaGVzIHRoZSBvbGQgYmVoYXZpb3Igd2hlcmUgZGVuc2l0eSBzdHlsZXMgd2VyZVxuICAvLyBwYXJ0IG9mIHRoZSBiYXNlIGNvbXBvbmVudCBzdHlsZXMgKHRoYXQgZGlkIG5vdCB1c2UgdmlldyBlbmNhcHN1bGF0aW9uKS5cbiAgLy8gVE9ETzogUmVtb3ZlIHRoaXMgY29tcGF0aWJpbGl0eSBsb2dpYyB3aGVuIHRoZSBsZWdhY3kgdGhlbWluZyBBUEkgaXMgcmVtb3ZlZC5cbiAgJG1hdC1wcml2YXRlLWRlbnNpdHktZ2VuZXJhdGUtYXQtcm9vdDogbWF0LXByaXZhdGUtaXMtbGVnYWN5LWNvbnN0cnVjdGVkLXRoZW1lKCR0aGVtZSkgIWdsb2JhbDtcbiAgJG1hdC1wcml2YXRlLWRlbnNpdHktZ2VuZXJhdGUtc3R5bGVzOiBub3QgJGR1cGxpY2F0ZS1sZWdhY3ktZGVuc2l0eSAhZ2xvYmFsO1xuXG4gIEBjb250ZW50O1xuICAkbWF0LXRoZW1lLWlnbm9yZS1kdXBsaWNhdGlvbi13YXJuaW5nczogJG9yaWctbWF0LXRoZW1lLWlnbm9yZS1kdXBsaWNhdGlvbi13YXJuaW5ncyAhZ2xvYmFsO1xuXG4gICRtYXQtcHJpdmF0ZS1kZW5zaXR5LWdlbmVyYXRlLWF0LXJvb3Q6IGZhbHNlICFnbG9iYWw7XG4gICRtYXQtcHJpdmF0ZS1kZW5zaXR5LWdlbmVyYXRlLXN0eWxlczogdHJ1ZSAhZ2xvYmFsO1xufVxuXG4vLyBDaGVja3Mgd2hldGhlciB0aGUgZ2l2ZW4gdmFsdWUgcmVzb2x2ZXMgdG8gYSB0aGVtZSBvYmplY3QuIFRoZW1lIG9iamVjdHMgYXJlIGFsd2F5c1xuLy8gb2YgdHlwZSBgbWFwYCBhbmQgY2FuIG9wdGlvbmFsbHkgb25seSBzcGVjaWZ5IGBjb2xvcmAsIGBkZW5zaXR5YCBvciBgdHlwb2dyYXBoeWAuXG5AZnVuY3Rpb24gbWF0LXByaXZhdGUtaXMtdGhlbWUtb2JqZWN0KCR2YWx1ZSkge1xuICBAcmV0dXJuIHR5cGUtb2YoJHZhbHVlKSA9PSAnbWFwJyBhbmQgKFxuICAgIG1hcC1oYXMta2V5KCR2YWx1ZSwgY29sb3IpIG9yXG4gICAgbWFwLWhhcy1rZXkoJHZhbHVlLCBkZW5zaXR5KSBvclxuICAgIG1hcC1oYXMta2V5KCR2YWx1ZSwgdHlwb2dyYXBoeSkgb3JcbiAgICBsZW5ndGgoJHZhbHVlKSA9PSAwXG4gICk7XG59XG5cbi8vIENoZWNrcyB3aGV0aGVyIGEgZ2l2ZW4gdmFsdWUgY29ycmVzcG9uZHMgdG8gYSBsZWdhY3kgY29uc3RydWN0ZWQgdGhlbWUuXG5AZnVuY3Rpb24gbWF0LXByaXZhdGUtaXMtbGVnYWN5LWNvbnN0cnVjdGVkLXRoZW1lKCR2YWx1ZSkge1xuICBAcmV0dXJuIHR5cGUtb2YoJHZhbHVlKSA9PSAnbWFwJyBhbmQgbWFwLWdldCgkdmFsdWUsICdfaXMtbGVnYWN5LXRoZW1lJyk7XG59XG5cbi8vIENyZWF0ZXMgYSBiYWNrd2FyZHMgY29tcGF0aWJsZSB0aGVtZS4gUHJldmlvdXNseSBpbiBBbmd1bGFyIE1hdGVyaWFsLCB0aGVtZSBvYmplY3RzXG4vLyBjb250YWluZWQgdGhlIGNvbG9yIGNvbmZpZ3VyYXRpb24gZGlyZWN0bHkuIFdpdGggdGhlIHJlY2VudCByZWZhY3RvcmluZyBvZiB0aGUgdGhlbWluZ1xuLy8gc3lzdGVtIHRvIGFsbG93IGZvciBkZW5zaXR5IGFuZCB0eXBvZ3JhcGh5IGNvbmZpZ3VyYXRpb25zLCB0aGlzIGlzIG5vIGxvbmdlciB0aGUgY2FzZS5cbi8vIFRvIGVuc3VyZSB0aGF0IGNvbnN0cnVjdGVkIHRoZW1lcyB3aGljaCB3aWxsIGJlIHBhc3NlZCB0byBjdXN0b20gdGhlbWUgbWl4aW5zIGRvIG5vdCBicmVhayxcbi8vIHdlIGNvcHkgdGhlIGNvbG9yIGNvbmZpZ3VyYXRpb24gYW5kIHB1dCBpdHMgcHJvcGVydGllcyBhdCB0aGUgdG9wLWxldmVsIG9mIHRoZSB0aGVtZSBvYmplY3QuXG4vLyBIZXJlIGlzIGFuIGV4YW1wbGUgb2YgYSBwYXR0ZXJuIHRoYXQgc2hvdWxkIHN0aWxsIHdvcmsgdW50aWwgaXQncyBvZmZpY2lhbGx5IG1hcmtlZCBhcyBhXG4vLyBicmVha2luZyBjaGFuZ2U6XG4vL1xuLy8gICAgQG1peGluIG15LWN1c3RvbS1jb21wb25lbnQtdGhlbWUoJHRoZW1lKSB7XG4vLyAgICAgIC5teS1jb21wIHtcbi8vICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXQtY29sb3IobWFwLWdldCgkdGhlbWUsIHByaW1hcnkpKTtcbi8vICAgICAgfVxuLy8gICAgfVxuLy9cbi8vIE5vdGUgdGhhdCB0aGUgYCR0aGVtZS5wcmltYXJ5YCBrZXkgZG9lcyB1c3VhbGx5IG5vdCBleGlzdCBzaW5jZSB0aGUgY29sb3IgY29uZmlndXJhdGlvblxuLy8gaXMgc3RvcmVkIGluIGAkdGhlbWUuY29sb3JgIHdoaWNoIGNvbnRhaW5zIGEgcHJvcGVydHkgZm9yIGBwcmltYXJ5YC4gVGhpcyBtZXRob2QgY29waWVzXG4vLyB0aGUgbWFwIGZyb20gYCR0aGVtZS5jb2xvcmAgdG8gYCR0aGVtZWAgZm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5LlxuQGZ1bmN0aW9uIG1hdC1wcml2YXRlLWNyZWF0ZS1iYWNrd2FyZHMtY29tcGF0aWJpbGl0eS10aGVtZSgkdGhlbWUpIHtcbiAgQGlmIG5vdCBtYXAtZ2V0KCR0aGVtZSwgY29sb3IpIHtcbiAgICBAcmV0dXJuICR0aGVtZTtcbiAgfVxuICAkY29sb3I6IG1hcC1nZXQoJHRoZW1lLCBjb2xvcik7XG4gIEByZXR1cm4gbWFwLW1lcmdlKCR0aGVtZSwgJGNvbG9yKTtcbn1cblxuLy8gR2V0cyB0aGUgdGhlbWUgZnJvbSB0aGUgZ2l2ZW4gdmFsdWUgdGhhdCBpcyBlaXRoZXIgYWxyZWFkeSBhIHRoZW1lLCBvciBhIGNvbG9yIGNvbmZpZ3VyYXRpb24uXG4vLyBUaGlzIGhhbmRsZXMgdGhlIGxlZ2FjeSBjYXNlIHdoZXJlIGRldmVsb3BlcnMgcGFzcyBhIGNvbG9yIGNvbmZpZ3VyYXRpb24gZGlyZWN0bHkgdG8gdGhlXG4vLyB0aGVtZSBtaXhpbi4gQmVmb3JlIHdlIGludHJvZHVjZWQgdGhlIG5ldyBwYXR0ZXJuIGZvciBjb25zdHJ1Y3RpbmcgYSB0aGVtZSwgZGV2ZWxvcGVycyBwYXNzZWRcbi8vIHRoZSBjb2xvciBjb25maWd1cmF0aW9uIGRpcmVjdGx5IHRvIHRoZSB0aGVtZSBtaXhpbnMuIFRoaXMgY2FuIGJlIHN0aWxsIHRoZSBjYXNlIGlmIGRldmVsb3BlcnNcbi8vIGNvbnN0cnVjdCBhIHRoZW1lIG1hbnVhbGx5IGFuZCBwYXNzIGl0IHRvIGEgdGhlbWUuIFdlIHN1cHBvcnQgdGhpcyBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHkuXG4vLyBUT0RPKGRldnZlcnNpb24pOiByZW1vdmUgdGhpcyBpbiB0aGUgZnV0dXJlLiBDb25zdHJ1Y3RpbmcgdGhlbWVzIG1hbnVhbGx5IGlzIHJhcmUsXG4vLyBhbmQgdGhlIGNvZGUgY2FuIGJlIGVhc2lseSB1cGRhdGVkIHRvIHRoZSBuZXcgQVBJLlxuQGZ1bmN0aW9uIG1hdC1wcml2YXRlLWxlZ2FjeS1nZXQtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZykge1xuICBAaWYgbWF0LXByaXZhdGUtaXMtdGhlbWUtb2JqZWN0KCR0aGVtZS1vci1jb2xvci1jb25maWcpIHtcbiAgICBAcmV0dXJuICR0aGVtZS1vci1jb2xvci1jb25maWc7XG4gIH1cbiAgQHJldHVybiBtYXQtcHJpdmF0ZS1jcmVhdGUtYmFja3dhcmRzLWNvbXBhdGliaWxpdHktdGhlbWUoKFxuICAgIF9pcy1sZWdhY3ktdGhlbWU6IHRydWUsXG4gICAgY29sb3I6ICR0aGVtZS1vci1jb2xvci1jb25maWdcbiAgKSk7XG59XG5cblxuXG4kbWF0LXJpcHBsZS1jb2xvci1vcGFjaXR5OiAwLjE7XG5cbkBtaXhpbiBtYXQtcmlwcGxlKCkge1xuXG4gIC8vIFRoZSBob3N0IGVsZW1lbnQgb2YgYW4gbWF0LXJpcHBsZSBkaXJlY3RpdmUgc2hvdWxkIGFsd2F5cyBoYXZlIGEgcG9zaXRpb24gb2YgXCJhYnNvbHV0ZVwiIG9yXG4gIC8vIFwicmVsYXRpdmVcIiBzbyB0aGF0IHRoZSByaXBwbGVzIGluc2lkZSBhcmUgY29ycmVjdGx5IHBvc2l0aW9uZWQgcmVsYXRpdmVseSB0byB0aGUgY29udGFpbmVyLlxuICAubWF0LXJpcHBsZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIC8vIEJ5IGRlZmF1bHQsIGV2ZXJ5IHJpcHBsZSBjb250YWluZXIgc2hvdWxkIGhhdmUgcG9zaXRpb246IHJlbGF0aXZlIGluIGZhdm9yIG9mIGNyZWF0aW5nIGFuXG4gICAgLy8gZWFzeSBBUEkgZm9yIGRldmVsb3BlcnMgdXNpbmcgdGhlIE1hdFJpcHBsZSBkaXJlY3RpdmUuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLy8gUHJvbW90ZSBjb250YWluZXJzIHRoYXQgaGF2ZSByaXBwbGVzIHRvIGEgbmV3IGxheWVyLiBXZSB3YW50IHRvIHRhcmdldCBgOm5vdCg6ZW1wdHkpYCxcbiAgICAvLyBiZWNhdXNlIHdlIGRvbid0IHdhbnQgYWxsIHJpcHBsZSBjb250YWluZXJzIHRvIGhhdmUgdGhlaXIgb3duIGxheWVyIHNpbmNlIHRoZXkncmUgdXNlZCBpbiBhXG4gICAgLy8gbG90IG9mIHBsYWNlcyBhbmQgdGhlIGxheWVyIGlzIG9ubHkgcmVsZXZhbnQgd2hpbGUgYW5pbWF0aW5nLiBOb3RlIHRoYXQgaWRlYWxseSB3ZSdkIHVzZVxuICAgIC8vIHRoZSBgY29udGFpbmAgcHJvcGVydHkgaGVyZSAoc2VlICMxMzE3NSksIGJlY2F1c2UgYDplbXB0eWAgY2FuIGJlIGJyb2tlbiBieSBoYXZpbmcgZXh0cmFcbiAgICAvLyB0ZXh0IGluc2lkZSB0aGUgZWxlbWVudCwgYnV0IGl0IGlzbid0IHZlcnkgd2VsbCBzdXBwb3J0ZWQgeWV0LlxuICAgICY6bm90KDplbXB0eSkge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIH1cbiAgfVxuXG4gIC5tYXQtcmlwcGxlLm1hdC1yaXBwbGUtdW5ib3VuZGVkIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuXG4gIC5tYXQtcmlwcGxlLWVsZW1lbnQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5LCB0cmFuc2Zvcm0gMG1zIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG5cbiAgICAvLyBJbiBoaWdoIGNvbnRyYXN0IG1vZGUgdGhlIHJpcHBsZSBpcyBvcGFxdWUsIGNhdXNpbmcgaXQgdG8gb2JzdHJ1Y3QgdGhlIGNvbnRlbnQuXG4gICAgQGluY2x1ZGUgY2RrLWhpZ2gtY29udHJhc3QoYWN0aXZlLCBvZmYpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi8qIENvbG9ycyBmb3IgdGhlIHJpcHBsZSBlbGVtZW50cy4qL1xuQG1peGluIG1hdC1yaXBwbGUtY29sb3IoJGNvbmZpZy1vci10aGVtZSkge1xuICAkY29uZmlnOiBtYXQtZ2V0LWNvbG9yLWNvbmZpZygkY29uZmlnLW9yLXRoZW1lKTtcbiAgJGZvcmVncm91bmQ6IG1hcC1nZXQoJGNvbmZpZywgZm9yZWdyb3VuZCk7XG4gICRmb3JlZ3JvdW5kLWJhc2U6IG1hcC1nZXQoJGZvcmVncm91bmQsIGJhc2UpO1xuXG4gIC5tYXQtcmlwcGxlLWVsZW1lbnQge1xuICAgIC8vIElmIHRoZSByaXBwbGUgY29sb3IgaXMgcmVzb2x2ZXMgdG8gYSBjb2xvciAqdHlwZSosIHdlIGNhbiB1c2UgaXQgZGlyZWN0bHksIG90aGVyd2lzZVxuICAgIC8vIChlLmcuIGl0IHJlc29sdmVzIHRvIGEgQ1NTIHZhcmlhYmxlKSB3ZSBmYWxsIGJhY2sgdG8gdXNpbmcgdGhlIGNvbG9yIGFuZCBzZXR0aW5nIGFuIG9wYWNpdHkuXG4gICAgQGlmICh0eXBlLW9mKCRmb3JlZ3JvdW5kLWJhc2UpID09IGNvbG9yKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRmb3JlZ3JvdW5kLWJhc2UsICRtYXQtcmlwcGxlLWNvbG9yLW9wYWNpdHkpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9yZWdyb3VuZC1iYXNlO1xuICAgICAgb3BhY2l0eTogJG1hdC1yaXBwbGUtY29sb3Itb3BhY2l0eTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1hdC1yaXBwbGUtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZykge1xuICAkdGhlbWU6IG1hdC1wcml2YXRlLWxlZ2FjeS1nZXQtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1wcml2YXRlLWNoZWNrLWR1cGxpY2F0ZS10aGVtZS1zdHlsZXMoJHRoZW1lLCAnbWF0LXJpcHBsZScpIHtcbiAgICAkY29sb3I6IG1hdC1nZXQtY29sb3ItY29uZmlnKCR0aGVtZSk7XG4gICAgQGlmICRjb2xvciAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIG1hdC1yaXBwbGUtY29sb3IoJGNvbG9yKTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBUaGlzIG1peGluIGVuc3VyZXMgYW4gZWxlbWVudCBzcGFucyB0byBmaWxsIHRoZSBuZWFyZXN0IGFuY2VzdG9yIHdpdGggZGVmaW5lZCBwb3NpdGlvbmluZy5cbkBtaXhpbiBtYXQtZmlsbCB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG5cbi8vLyBNaXhpbiB0aGF0IHR1cm5zIG9uIHN0cm9uZyBmb2N1cyBpbmRpY2F0b3JzLlxuLy8vXG4vLy8gQGV4YW1wbGVcbi8vLyAgIC5teS1hcHAge1xuLy8vICAgICBAaW5jbHVkZSBtYXQtc3Ryb25nLWZvY3VzLWluZGljYXRvcnMoJGNvbmZpZyk7XG4vLy8gICB9XG5AbWl4aW4gbWF0LXN0cm9uZy1mb2N1cy1pbmRpY2F0b3JzKCRjb25maWc6ICgpKSB7XG4gIC8vIERlZmF1bHQgZm9jdXMgaW5kaWNhdG9yIGNvbmZpZy5cbiAgJGRlZmF1bHQtY29uZmlnOiAoXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZCxcbiAgICBib3JkZXItd2lkdGg6IDNweCxcbiAgICBib3JkZXItcmFkaXVzOiA0cHgsXG4gICk7XG5cbiAgLy8gTWVyZ2UgZGVmYXVsdCBjb25maWcgd2l0aCB1c2VyIGNvbmZpZy5cbiAgJGNvbmZpZzogbWFwLW1lcmdlKCRkZWZhdWx0LWNvbmZpZywgJGNvbmZpZyk7XG4gICRib3JkZXItc3R5bGU6IG1hcC1nZXQoJGNvbmZpZywgYm9yZGVyLXN0eWxlKTtcbiAgJGJvcmRlci13aWR0aDogbWFwLWdldCgkY29uZmlnLCBib3JkZXItd2lkdGgpO1xuICAkYm9yZGVyLXJhZGl1czogbWFwLWdldCgkY29uZmlnLCBib3JkZXItcmFkaXVzKTtcblxuICAvLyBCYXNlIHN0eWxlcyBmb3IgZm9jdXMgaW5kaWNhdG9ycy5cbiAgLm1hdC1mb2N1cy1pbmRpY2F0b3I6OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgbWF0LWZpbGwoKTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCAkYm9yZGVyLXN0eWxlIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICB9XG5cbiAgLy8gQnkgZGVmYXVsdCwgYWxsIGZvY3VzIGluZGljYXRvcnMgYXJlIGZsdXNoIHdpdGggdGhlIGJvdW5kaW5nIGJveCBvZiB0aGVpclxuICAvLyBob3N0IGVsZW1lbnQuIEZvciBwYXJ0aWN1bGFyIGVsZW1lbnRzIChsaXN0ZWQgYmVsb3cpLCBkZWZhdWx0IGluc2V0L29mZnNldFxuICAvLyB2YWx1ZXMgYXJlIG5lY2Vzc2FyeSB0byBlbnN1cmUgdGhhdCB0aGUgZm9jdXMgaW5kaWNhdG9yIGlzIHN1ZmZpY2llbnRseVxuICAvLyBjb250cmFzdGl2ZSBhbmQgcmVuZGVycyBhcHByb3ByaWF0ZWx5LlxuXG4gIC5tYXQtZm9jdXMtaW5kaWNhdG9yLm1hdC1mbGF0LWJ1dHRvbjo6YmVmb3JlLFxuICAubWF0LWZvY3VzLWluZGljYXRvci5tYXQtcmFpc2VkLWJ1dHRvbjo6YmVmb3JlLFxuICAubWF0LWZvY3VzLWluZGljYXRvci5tYXQtZmFiOjpiZWZvcmUsXG4gIC5tYXQtZm9jdXMtaW5kaWNhdG9yLm1hdC1taW5pLWZhYjo6YmVmb3JlLFxuICAubWF0LWZvY3VzLWluZGljYXRvci5tYXQtY2hpcDo6YmVmb3JlLFxuICAubWF0LWZvY3VzLWluZGljYXRvci5tYXQtc29ydC1oZWFkZXItY29udGFpbmVyOjpiZWZvcmUge1xuICAgIG1hcmdpbjogLSgkYm9yZGVyLXdpZHRoICsgMnB4KTtcbiAgfVxuXG4gIC5tYXQtZm9jdXMtaW5kaWNhdG9yLm1hdC1zdHJva2VkLWJ1dHRvbjo6YmVmb3JlLFxuICAubWF0LWZvY3VzLWluZGljYXRvci5tYXQtY2FsZW5kYXItYm9keS1jZWxsLWNvbnRlbnQ6OmJlZm9yZSB7XG4gICAgbWFyZ2luOiAtKCRib3JkZXItd2lkdGggKyAzcHgpO1xuICB9XG5cbiAgLm1hdC1mb2N1cy1pbmRpY2F0b3IubWF0LXRhYi1saW5rOjpiZWZvcmUsXG4gIC5tYXQtZm9jdXMtaW5kaWNhdG9yLm1hdC10YWItbGFiZWw6OmJlZm9yZSB7XG4gICAgbWFyZ2luOiA1cHg7XG4gIH1cblxuICAvLyBSZW5kZXIgdGhlIGZvY3VzIGluZGljYXRvciBvbiBmb2N1cy4gRGVmaW5pbmcgYSBwc2V1ZG8gZWxlbWVudCdzXG4gIC8vIGNvbnRlbnQgd2lsbCBjYXVzZSBpdCB0byByZW5kZXIuXG5cbiAgLy8gQ2hlY2tib3hlcywgcmFkaW9zLCBhbmQgc2xpZGUgdG9nZ2xlcyByZW5kZXIgZm9jdXMgaW5kaWNhdG9ycyB3aGVuIHRoZVxuICAvLyBhc3NvY2lhdGVkIHZpc3VhbGx5LWhpZGRlbiBpbnB1dCBpcyBmb2N1c2VkLlxuICAubWF0LWNoZWNrYm94LWlucHV0OmZvY3VzIH4gLm1hdC1mb2N1cy1pbmRpY2F0b3I6OmJlZm9yZSxcbiAgLm1hdC1yYWRpby1pbnB1dDpmb2N1cyB+IC5tYXQtZm9jdXMtaW5kaWNhdG9yOjpiZWZvcmUsXG4gIC5tYXQtc2xpZGUtdG9nZ2xlLWlucHV0OmZvY3VzIH4gLm1hdC1zbGlkZS10b2dnbGUtdGh1bWItY29udGFpbmVyIC5tYXQtZm9jdXMtaW5kaWNhdG9yOjpiZWZvcmUsXG5cbiAgLy8gRm9yIG9wdGlvbnMsIHJlbmRlciB0aGUgZm9jdXMgaW5kaWNhdG9yIHdoZW4gdGhlIGNsYXNzIC5tYXQtYWN0aXZlXG4gIC8vIGlzIHByZXNlbnQuXG4gIC5tYXQtZm9jdXMtaW5kaWNhdG9yLm1hdC1vcHRpb24ubWF0LWFjdGl2ZTo6YmVmb3JlLFxuXG4gIC8vIEZvciBjYWxlbmRhciBjZWxscywgcmVuZGVyIHRoZSBmb2N1cyBpbmRpY2F0b3Igd2hlbiB0aGUgcGFyZW50IGNlbGwgaXNcbiAgLy8gZm9jdXNlZC5cbiAgLm1hdC1jYWxlbmRhci1ib2R5LWNlbGw6Zm9jdXMgLm1hdC1mb2N1cy1pbmRpY2F0b3I6OmJlZm9yZSxcblxuICAvLyBGb3IgYWxsIG90aGVyIGNvbXBvbmVudHMsIHJlbmRlciB0aGUgZm9jdXMgaW5kaWNhdG9yIG9uIGZvY3VzLlxuICAubWF0LWZvY3VzLWluZGljYXRvcjpmb2N1czo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgfVxufVxuXG4vLyBNaXhpbiB0aGF0IGFwcGxpZXMgdGhlIGJvcmRlciBjb2xvciBmb3IgdGhlIGZvY3VzIGluZGljYXRvcnMuXG5AbWl4aW4gX21hdC1zdHJvbmctZm9jdXMtaW5kaWNhdG9ycy1ib3JkZXItY29sb3IoJGNvbG9yKSB7XG4gIC5tYXQtZm9jdXMtaW5kaWNhdG9yOjpiZWZvcmUge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbkBtaXhpbiBtYXQtc3Ryb25nLWZvY3VzLWluZGljYXRvcnMtY29sb3IoJGNvbmZpZy1vci10aGVtZSkge1xuICAkY29uZmlnOiBtYXQtZ2V0LWNvbG9yLWNvbmZpZygkY29uZmlnLW9yLXRoZW1lKTtcbiAgQGluY2x1ZGUgX21hdC1zdHJvbmctZm9jdXMtaW5kaWNhdG9ycy1ib3JkZXItY29sb3IobWF0LWNvbG9yKG1hcC1nZXQoJGNvbmZpZywgcHJpbWFyeSkpKTtcbn1cblxuLy8vIE1peGluIHRoYXQgc2V0cyB0aGUgY29sb3Igb2YgdGhlIGZvY3VzIGluZGljYXRvcnMuXG4vLy9cbi8vLyBAcGFyYW0ge2NvbG9yfG1hcH0gJHRoZW1lLW9yLWNvbG9yXG4vLy8gICBJZiB0aGVtZSwgZm9jdXMgaW5kaWNhdG9ycyBhcmUgc2V0IHRvIHRoZSBwcmltYXJ5IGNvbG9yIG9mIHRoZSB0aGVtZS4gSWZcbi8vLyAgIGNvbG9yLCBmb2N1cyBpbmRpY2F0b3JzIGFyZSBzZXQgdG8gdGhhdCBjb2xvci5cbi8vL1xuLy8vIEBleGFtcGxlXG4vLy8gICAuZGVtby1kYXJrLXRoZW1lIHtcbi8vLyAgICAgQGluY2x1ZGUgbWF0LXN0cm9uZy1mb2N1cy1pbmRpY2F0b3JzLXRoZW1lKCRkYXJrLXRoZW1lLW1hcCk7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZVxuLy8vICAgLmRlbW8tcmVkLXRoZW1lIHtcbi8vLyAgICAgQGluY2x1ZGUgbWF0LXN0cm9uZy1mb2N1cy1pbmRpY2F0b3JzLXRoZW1lKCNmMDApO1xuLy8vICAgfVxuLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG1hdGVyaWFsL3RoZW1lLW1peGluLWFwaSAqL1xuQG1peGluIG1hdC1zdHJvbmctZm9jdXMtaW5kaWNhdG9ycy10aGVtZSgkdGhlbWUtb3ItY29sb3IpIHtcbiAgQGlmIHR5cGUtb2YoJHRoZW1lLW9yLWNvbG9yKSAhPSAnbWFwJyB7XG4gICAgQGluY2x1ZGUgX21hdC1zdHJvbmctZm9jdXMtaW5kaWNhdG9ycy1ib3JkZXItY29sb3IoJHRoZW1lLW9yLWNvbG9yKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgJHRoZW1lOiBtYXQtcHJpdmF0ZS1sZWdhY3ktZ2V0LXRoZW1lKCR0aGVtZS1vci1jb2xvcik7XG4gICAgQGluY2x1ZGUgbWF0LXByaXZhdGUtY2hlY2stZHVwbGljYXRlLXRoZW1lLXN0eWxlcygkdGhlbWUsICdtYXQtc3Ryb25nLWZvY3VzLWluZGljYXRvcnMnKSB7XG4gICAgICAkY29sb3I6IG1hdC1nZXQtY29sb3ItY29uZmlnKCR0aGVtZSk7XG4gICAgICBAaWYgJGNvbG9yICE9IG51bGwge1xuICAgICAgICBAaW5jbHVkZSBtYXQtc3Ryb25nLWZvY3VzLWluZGljYXRvcnMtY29sb3IoJGNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gTWl4aW4gdGhhdCBlbnN1cmVzIGZvY3VzIGluZGljYXRvciBob3N0IGVsZW1lbnRzIGFyZSBwb3NpdGlvbmVkIHNvIHRoYXQgdGhlIGZvY3VzIGluZGljYXRvclxuLy8gcHNldWRvIGVsZW1lbnQgd2l0aGluIGlzIHBvc2l0aW9uZWQgcmVsYXRpdmUgdG8gdGhlIGhvc3QuIFByaXZhdGUgbWl4aW4gaW5jbHVkZWQgd2l0aGluXG4vLyBgbWF0LWNvcmVgLlxuQG1peGluIG1hdC1wcml2YXRlLXN0cm9uZy1mb2N1cy1pbmRpY2F0b3JzLXBvc2l0aW9uaW5nKCkge1xuICAubWF0LWZvY3VzLWluZGljYXRvciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG59XG5cblxuXG4vLyBVdGlsaXR5IGZvciBmZXRjaGluZyBhIG5lc3RlZCB2YWx1ZSBmcm9tIGEgdHlwb2dyYXBoeSBjb25maWcuXG5AZnVuY3Rpb24gX21hdC1nZXQtdHlwZS12YWx1ZSgkY29uZmlnLCAkbGV2ZWwsICRuYW1lKSB7XG4gIEByZXR1cm4gbWFwLWdldChtYXAtZ2V0KCRjb25maWcsICRsZXZlbCksICRuYW1lKTtcbn1cblxuLy8gR2V0cyB0aGUgZm9udCBzaXplIGZvciBhIGxldmVsIGluc2lkZSBhIHR5cG9ncmFwaHkgY29uZmlnLlxuQGZ1bmN0aW9uIG1hdC1mb250LXNpemUoJGNvbmZpZywgJGxldmVsKSB7XG4gIEByZXR1cm4gX21hdC1nZXQtdHlwZS12YWx1ZSgkY29uZmlnLCAkbGV2ZWwsIGZvbnQtc2l6ZSk7XG59XG5cbi8vIEdldHMgdGhlIGxpbmUgaGVpZ2h0IGZvciBhIGxldmVsIGluc2lkZSBhIHR5cG9ncmFwaHkgY29uZmlnLlxuQGZ1bmN0aW9uIG1hdC1saW5lLWhlaWdodCgkY29uZmlnLCAkbGV2ZWwpIHtcbiAgQHJldHVybiBfbWF0LWdldC10eXBlLXZhbHVlKCRjb25maWcsICRsZXZlbCwgbGluZS1oZWlnaHQpO1xufVxuXG4vLyBHZXRzIHRoZSBmb250IHdlaWdodCBmb3IgYSBsZXZlbCBpbnNpZGUgYSB0eXBvZ3JhcGh5IGNvbmZpZy5cbkBmdW5jdGlvbiBtYXQtZm9udC13ZWlnaHQoJGNvbmZpZywgJGxldmVsKSB7XG4gIEByZXR1cm4gX21hdC1nZXQtdHlwZS12YWx1ZSgkY29uZmlnLCAkbGV2ZWwsIGZvbnQtd2VpZ2h0KTtcbn1cblxuLy8gR2V0cyB0aGUgbGV0dGVyIHNwYWNpbmcgZm9yIGEgbGV2ZWwgaW5zaWRlIGEgdHlwb2dyYXBoeSBjb25maWcuXG5AZnVuY3Rpb24gbWF0LWxldHRlci1zcGFjaW5nKCRjb25maWcsICRsZXZlbCkge1xuICBAcmV0dXJuIF9tYXQtZ2V0LXR5cGUtdmFsdWUoJGNvbmZpZywgJGxldmVsLCBsZXR0ZXItc3BhY2luZyk7XG59XG5cbi8vIEdldHMgdGhlIGZvbnQtZmFtaWx5IGZyb20gYSB0eXBvZ3JhcGh5IGNvbmZpZyBhbmQgcmVtb3ZlcyB0aGUgcXVvdGVzIGFyb3VuZCBpdC5cbkBmdW5jdGlvbiBtYXQtZm9udC1mYW1pbHkoJGNvbmZpZywgJGxldmVsOiBudWxsKSB7XG4gICRmb250LWZhbWlseTogbWFwLWdldCgkY29uZmlnLCBmb250LWZhbWlseSk7XG5cbiAgQGlmICRsZXZlbCAhPSBudWxsIHtcbiAgICAkZm9udC1mYW1pbHk6IF9tYXQtZ2V0LXR5cGUtdmFsdWUoJGNvbmZpZywgJGxldmVsLCBmb250LWZhbWlseSk7XG4gIH1cblxuICAvLyBHdWFyZCBhZ2FpbnN0IHVucXVvdGluZyBub24tc3RyaW5nIHZhbHVlcywgYmVjYXVzZSBpdCdzIGRlcHJlY2F0ZWQuXG4gIEByZXR1cm4gaWYodHlwZS1vZigkZm9udC1mYW1pbHkpID09IHN0cmluZywgdW5xdW90ZSgkZm9udC1mYW1pbHkpLCAkZm9udC1mYW1pbHkpO1xufVxuXG4vLyBPdXRwdXRzIHRoZSBzaG9ydGhhbmQgYGZvbnRgIENTUyBwcm9wZXJ0eSwgYmFzZWQgb24gYSBzZXQgb2YgdHlwb2dyYXBoeSB2YWx1ZXMuIEZhbGxzIGJhY2sgdG9cbi8vIHRoZSBpbmRpdmlkdWFsIHByb3BlcnRpZXMgaWYgYSB2YWx1ZSB0aGF0IGlzbid0IGFsbG93ZWQgaW4gdGhlIHNob3J0aGFuZCBpcyBwYXNzZWQgaW4uXG5AbWl4aW4gbWF0LXR5cG9ncmFwaHktZm9udC1zaG9ydGhhbmQoJGZvbnQtc2l6ZSwgJGZvbnQtd2VpZ2h0LCAkbGluZS1oZWlnaHQsICRmb250LWZhbWlseSkge1xuICAvLyBJZiBhbnkgb2YgdGhlIHZhbHVlcyBhcmUgc2V0IHRvIGBpbmhlcml0YCwgd2UgY2FuJ3QgdXNlIHRoZSBzaG9ydGhhbmRcbiAgLy8gc28gd2UgZmFsbCBiYWNrIHRvIHBhc3NpbmcgaW4gdGhlIGluZGl2aWR1YWwgcHJvcGVydGllcy5cbiAgQGlmICgkZm9udC1zaXplID09IGluaGVyaXQgb3JcbiAgICAgICAkZm9udC13ZWlnaHQgPT0gaW5oZXJpdCBvclxuICAgICAgICRsaW5lLWhlaWdodCA9PSBpbmhlcml0IG9yXG4gICAgICAgJGZvbnQtZmFtaWx5ID09IGluaGVyaXQgb3JcbiAgICAgICAkZm9udC1zaXplID09IG51bGwgb3JcbiAgICAgICAkZm9udC13ZWlnaHQgPT0gbnVsbCBvclxuICAgICAgICRsaW5lLWhlaWdodCA9PSBudWxsIG9yXG4gICAgICAgJGZvbnQtZmFtaWx5ID09IG51bGwpIHtcblxuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseTtcbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gT3RoZXJ3aXNlIHVzZSB0aGUgc2hvcnRoYW5kIGBmb250YCwgYmVjYXVzZSBpdCdzIHRoZSBsZWFzdCBhbW91bnQgb2YgYnl0ZXMuIE5vdGVcbiAgICAvLyB0aGF0IHdlIG5lZWQgdG8gdXNlIGludGVycG9sYXRpb24gZm9yIGBmb250LXNpemUvbGluZS1oZWlnaHRgIGluIG9yZGVyIHRvIHByZXZlbnRcbiAgICAvLyBTYXNzIGZyb20gZGl2aWRpbmcgdGhlIHR3byB2YWx1ZXMuXG4gICAgZm9udDogJGZvbnQtd2VpZ2h0ICN7JGZvbnQtc2l6ZX0vI3skbGluZS1oZWlnaHR9ICRmb250LWZhbWlseTtcbiAgfVxufVxuXG4vLyBDb252ZXJ0cyBhIHR5cG9ncmFwaHkgbGV2ZWwgaW50byBDU1Mgc3R5bGVzLlxuQG1peGluIG1hdC10eXBvZ3JhcGh5LWxldmVsLXRvLXN0eWxlcygkY29uZmlnLCAkbGV2ZWwpIHtcbiAgJGZvbnQtc2l6ZTogbWF0LWZvbnQtc2l6ZSgkY29uZmlnLCAkbGV2ZWwpO1xuICAkZm9udC13ZWlnaHQ6IG1hdC1mb250LXdlaWdodCgkY29uZmlnLCAkbGV2ZWwpO1xuICAkbGluZS1oZWlnaHQ6IG1hdC1saW5lLWhlaWdodCgkY29uZmlnLCAkbGV2ZWwpO1xuICAkZm9udC1mYW1pbHk6IG1hdC1mb250LWZhbWlseSgkY29uZmlnLCAkbGV2ZWwpO1xuXG4gIEBpbmNsdWRlIG1hdC10eXBvZ3JhcGh5LWZvbnQtc2hvcnRoYW5kKCRmb250LXNpemUsICRmb250LXdlaWdodCwgJGxpbmUtaGVpZ2h0LCAkZm9udC1mYW1pbHkpO1xuICBsZXR0ZXItc3BhY2luZzogbWF0LWxldHRlci1zcGFjaW5nKCRjb25maWcsICRsZXZlbCk7XG59XG5cblxuQG1peGluIG1hdC1vcHRpb24tY29sb3IoJGNvbmZpZy1vci10aGVtZSkge1xuICAkY29uZmlnOiBtYXQtZ2V0LWNvbG9yLWNvbmZpZygkY29uZmlnLW9yLXRoZW1lKTtcbiAgJGZvcmVncm91bmQ6IG1hcC1nZXQoJGNvbmZpZywgZm9yZWdyb3VuZCk7XG4gICRiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRjb25maWcsIGJhY2tncm91bmQpO1xuICAkcHJpbWFyeTogbWFwLWdldCgkY29uZmlnLCBwcmltYXJ5KTtcbiAgJGFjY2VudDogbWFwLWdldCgkY29uZmlnLCBhY2NlbnQpO1xuICAkd2FybjogbWFwLWdldCgkY29uZmlnLCB3YXJuKTtcblxuICAubWF0LW9wdGlvbiB7XG4gICAgY29sb3I6IG1hdC1jb2xvcigkZm9yZWdyb3VuZCwgdGV4dCk7XG5cbiAgICAmOmhvdmVyOm5vdCgubWF0LW9wdGlvbi1kaXNhYmxlZCksXG4gICAgJjpmb2N1czpub3QoLm1hdC1vcHRpb24tZGlzYWJsZWQpIHtcbiAgICAgIGJhY2tncm91bmQ6IG1hdC1jb2xvcigkYmFja2dyb3VuZCwgaG92ZXIpO1xuICAgIH1cblxuICAgIC8vIEluIG11bHRpcGxlIG1vZGUgdGhlcmUgaXMgYSBjaGVja2JveCB0byBzaG93IHRoYXQgdGhlIG9wdGlvbiBpcyBzZWxlY3RlZC5cbiAgICAmLm1hdC1zZWxlY3RlZDpub3QoLm1hdC1vcHRpb24tbXVsdGlwbGUpOm5vdCgubWF0LW9wdGlvbi1kaXNhYmxlZCkge1xuICAgICAgYmFja2dyb3VuZDogbWF0LWNvbG9yKCRiYWNrZ3JvdW5kLCBob3Zlcik7XG4gICAgfVxuXG4gICAgJi5tYXQtYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQ6IG1hdC1jb2xvcigkYmFja2dyb3VuZCwgaG92ZXIpO1xuICAgICAgY29sb3I6IG1hdC1jb2xvcigkZm9yZWdyb3VuZCwgdGV4dCk7XG4gICAgfVxuXG4gICAgJi5tYXQtb3B0aW9uLWRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiBtYXQtY29sb3IoJGZvcmVncm91bmQsIGhpbnQtdGV4dCk7XG4gICAgfVxuICB9XG5cbiAgLm1hdC1wcmltYXJ5IC5tYXQtb3B0aW9uLm1hdC1zZWxlY3RlZDpub3QoLm1hdC1vcHRpb24tZGlzYWJsZWQpIHtcbiAgICBjb2xvcjogbWF0LWNvbG9yKCRwcmltYXJ5LCB0ZXh0KTtcbiAgfVxuXG4gIC5tYXQtYWNjZW50IC5tYXQtb3B0aW9uLm1hdC1zZWxlY3RlZDpub3QoLm1hdC1vcHRpb24tZGlzYWJsZWQpIHtcbiAgICBjb2xvcjogbWF0LWNvbG9yKCRhY2NlbnQsIHRleHQpO1xuICB9XG5cbiAgLm1hdC13YXJuIC5tYXQtb3B0aW9uLm1hdC1zZWxlY3RlZDpub3QoLm1hdC1vcHRpb24tZGlzYWJsZWQpIHtcbiAgICBjb2xvcjogbWF0LWNvbG9yKCR3YXJuLCB0ZXh0KTtcbiAgfVxufVxuXG5AbWl4aW4gbWF0LW9wdGlvbi10eXBvZ3JhcGh5KCRjb25maWctb3ItdGhlbWUpIHtcbiAgJGNvbmZpZzogbWF0LWdldC10eXBvZ3JhcGh5LWNvbmZpZygkY29uZmlnLW9yLXRoZW1lKTtcbiAgLm1hdC1vcHRpb24ge1xuICAgIGZvbnQ6IHtcbiAgICAgIGZhbWlseTogbWF0LWZvbnQtZmFtaWx5KCRjb25maWcpO1xuICAgICAgc2l6ZTogbWF0LWZvbnQtc2l6ZSgkY29uZmlnLCBzdWJoZWFkaW5nLTIpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gX21hdC1vcHRpb24tZGVuc2l0eSgkY29uZmlnLW9yLXRoZW1lKSB7fVxuXG5AbWl4aW4gbWF0LW9wdGlvbi10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKSB7XG4gICR0aGVtZTogbWF0LXByaXZhdGUtbGVnYWN5LWdldC10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKTtcbiAgQGluY2x1ZGUgbWF0LXByaXZhdGUtY2hlY2stZHVwbGljYXRlLXRoZW1lLXN0eWxlcygkdGhlbWUsICdtYXQtb3B0aW9uJykge1xuICAgICRjb2xvcjogbWF0LWdldC1jb2xvci1jb25maWcoJHRoZW1lKTtcbiAgICAkZGVuc2l0eTogbWF0LWdldC1kZW5zaXR5LWNvbmZpZygkdGhlbWUpO1xuICAgICR0eXBvZ3JhcGh5OiBtYXQtZ2V0LXR5cG9ncmFwaHktY29uZmlnKCR0aGVtZSk7XG5cbiAgICBAaWYgJGNvbG9yICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LW9wdGlvbi1jb2xvcigkY29sb3IpO1xuICAgIH1cbiAgICBAaWYgJGRlbnNpdHkgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBfbWF0LW9wdGlvbi1kZW5zaXR5KCRkZW5zaXR5KTtcbiAgICB9XG4gICAgQGlmICR0eXBvZ3JhcGh5ICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LW9wdGlvbi10eXBvZ3JhcGh5KCR0eXBvZ3JhcGh5KTtcbiAgICB9XG4gIH1cbn1cblxuXG5cblxuXG5AbWl4aW4gbWF0LW9wdGdyb3VwLWNvbG9yKCRjb25maWctb3ItdGhlbWUpIHtcbiAgJGNvbmZpZzogbWF0LWdldC1jb2xvci1jb25maWcoJGNvbmZpZy1vci10aGVtZSk7XG4gICRmb3JlZ3JvdW5kOiBtYXAtZ2V0KCRjb25maWcsIGZvcmVncm91bmQpO1xuXG4gIC5tYXQtb3B0Z3JvdXAtbGFiZWwge1xuICAgIGNvbG9yOiBtYXQtY29sb3IoJGZvcmVncm91bmQsIHNlY29uZGFyeS10ZXh0KTtcbiAgfVxuXG4gIC5tYXQtb3B0Z3JvdXAtZGlzYWJsZWQgLm1hdC1vcHRncm91cC1sYWJlbCB7XG4gICAgY29sb3I6IG1hdC1jb2xvcigkZm9yZWdyb3VuZCwgaGludC10ZXh0KTtcbiAgfVxufVxuXG5AbWl4aW4gbWF0LW9wdGdyb3VwLXR5cG9ncmFwaHkoJGNvbmZpZy1vci10aGVtZSkge1xuICAkY29uZmlnOiBtYXQtZ2V0LXR5cG9ncmFwaHktY29uZmlnKCRjb25maWctb3ItdGhlbWUpO1xuICAubWF0LW9wdGdyb3VwLWxhYmVsIHtcbiAgICBAaW5jbHVkZSBtYXQtdHlwb2dyYXBoeS1sZXZlbC10by1zdHlsZXMoJGNvbmZpZywgYm9keS0yKTtcbiAgfVxufVxuXG5AbWl4aW4gX21hdC1vcHRncm91cC1kZW5zaXR5KCRjb25maWctb3ItdGhlbWUpIHt9XG5cbkBtaXhpbiBtYXQtb3B0Z3JvdXAtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZykge1xuICAkdGhlbWU6IG1hdC1wcml2YXRlLWxlZ2FjeS1nZXQtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1wcml2YXRlLWNoZWNrLWR1cGxpY2F0ZS10aGVtZS1zdHlsZXMoJHRoZW1lLCAnbWF0LW9wdGdyb3VwJykge1xuICAgICRjb2xvcjogbWF0LWdldC1jb2xvci1jb25maWcoJHRoZW1lKTtcbiAgICAkZGVuc2l0eTogbWF0LWdldC1kZW5zaXR5LWNvbmZpZygkdGhlbWUpO1xuICAgICR0eXBvZ3JhcGh5OiBtYXQtZ2V0LXR5cG9ncmFwaHktY29uZmlnKCR0aGVtZSk7XG5cbiAgICBAaWYgJGNvbG9yICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LW9wdGdyb3VwLWNvbG9yKCRjb2xvcik7XG4gICAgfVxuICAgIEBpZiAkZGVuc2l0eSAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIF9tYXQtb3B0Z3JvdXAtZGVuc2l0eSgkZGVuc2l0eSk7XG4gICAgfVxuICAgIEBpZiAkdHlwb2dyYXBoeSAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIG1hdC1vcHRncm91cC10eXBvZ3JhcGh5KCR0eXBvZ3JhcGh5KTtcbiAgICB9XG4gIH1cbn1cblxuXG5cbkBtaXhpbiBtYXQtcHNldWRvLWNoZWNrYm94LWNvbG9yKCRjb25maWctb3ItdGhlbWUpIHtcbiAgJGNvbmZpZzogbWF0LWdldC1jb2xvci1jb25maWcoJGNvbmZpZy1vci10aGVtZSk7XG4gICRpcy1kYXJrLXRoZW1lOiBtYXAtZ2V0KCRjb25maWcsIGlzLWRhcmspO1xuICAkcHJpbWFyeTogbWFwLWdldCgkY29uZmlnLCBwcmltYXJ5KTtcbiAgJGFjY2VudDogbWFwLWdldCgkY29uZmlnLCBhY2NlbnQpO1xuICAkd2FybjogbWFwLWdldCgkY29uZmlnLCB3YXJuKTtcbiAgJGJhY2tncm91bmQ6IG1hcC1nZXQoJGNvbmZpZywgYmFja2dyb3VuZCk7XG5cbiAgLy8gTk9URSh0cmF2aXNrYXVmbWFuKTogV2hpbGUgdGhlIHNwZWMgY2FsbHMgZm9yIHRyYW5zbHVjZW50IGJsYWNrcy93aGl0ZXMgZm9yIGRpc2FibGVkIGNvbG9ycyxcbiAgLy8gdGhpcyBkb2VzIG5vdCB3b3JrIHdlbGwgd2l0aCBlbGVtZW50cyBsYXllcmVkIG9uIHRvcCBvZiBvbmUgYW5vdGhlci4gVG8gZ2V0IGFyb3VuZCB0aGlzIHdlXG4gIC8vIGJsZW5kIHRoZSBjb2xvcnMgdG9nZXRoZXIgYmFzZWQgb24gdGhlIGJhc2UgY29sb3IgYW5kIHRoZSB0aGVtZSBiYWNrZ3JvdW5kLlxuICAkd2hpdGUtMzBwY3Qtb3BhY2l0eS1vbi1kYXJrOiAjNjg2ODY4O1xuICAkYmxhY2stMjZwY3Qtb3BhY2l0eS1vbi1saWdodDogI2IwYjBiMDtcbiAgJGRpc2FibGVkLWNvbG9yOiBpZigkaXMtZGFyay10aGVtZSwgJHdoaXRlLTMwcGN0LW9wYWNpdHktb24tZGFyaywgJGJsYWNrLTI2cGN0LW9wYWNpdHktb24tbGlnaHQpO1xuICAkY29sb3JlZC1ib3gtc2VsZWN0b3I6ICcubWF0LXBzZXVkby1jaGVja2JveC1jaGVja2VkLCAubWF0LXBzZXVkby1jaGVja2JveC1pbmRldGVybWluYXRlJztcblxuICAubWF0LXBzZXVkby1jaGVja2JveCB7XG4gICAgY29sb3I6IG1hdC1jb2xvcihtYXAtZ2V0KCRjb25maWcsIGZvcmVncm91bmQpLCBzZWNvbmRhcnktdGV4dCk7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBjb2xvcjogbWF0LWNvbG9yKCRiYWNrZ3JvdW5kLCBiYWNrZ3JvdW5kKTtcbiAgICB9XG4gIH1cblxuICAubWF0LXBzZXVkby1jaGVja2JveC1kaXNhYmxlZCB7XG4gICAgY29sb3I6ICRkaXNhYmxlZC1jb2xvcjtcbiAgfVxuXG4gIC5tYXQtcHJpbWFyeSAubWF0LXBzZXVkby1jaGVja2JveC1jaGVja2VkLFxuICAubWF0LXByaW1hcnkgLm1hdC1wc2V1ZG8tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZSB7XG4gICAgYmFja2dyb3VuZDogbWF0LWNvbG9yKG1hcC1nZXQoJGNvbmZpZywgcHJpbWFyeSkpO1xuICB9XG5cbiAgLy8gRGVmYXVsdCB0byB0aGUgYWNjZW50IGNvbG9yLiBOb3RlIHRoYXQgdGhlIHBzZXVkbyBjaGVja2JveGVzIGFyZSBtZWFudCB0byBpbmhlcml0IHRoZVxuICAvLyB0aGVtZSBmcm9tIHRoZWlyIHBhcmVudCwgcmF0aGVyIHRoYW4gaW1wbGVtZW50aW5nIHRoZWlyIG93biB0aGVtaW5nLCB3aGljaCBpcyB3aHkgd2VcbiAgLy8gZG9uJ3QgYXR0YWNoIHRvIHRoZSBgbWF0LSpgIGNsYXNzZXMuIEFsc28gbm90ZSB0aGF0IHRoaXMgbmVlZHMgdG8gYmUgYmVsb3cgYC5tYXQtcHJpbWFyeWBcbiAgLy8gaW4gb3JkZXIgdG8gYWxsb3cgZm9yIHRoZSBjb2xvciB0byBiZSBvdmVyd3JpdHRlbiBpZiB0aGUgY2hlY2tib3ggaXMgaW5zaWRlIGEgcGFyZW50IHRoYXRcbiAgLy8gaGFzIGBtYXQtYWNjZW50YCBhbmQgaXMgcGxhY2VkIGluc2lkZSBhbm90aGVyIHBhcmVudCB0aGF0IGhhcyBgbWF0LXByaW1hcnlgLlxuICAubWF0LXBzZXVkby1jaGVja2JveC1jaGVja2VkLFxuICAubWF0LXBzZXVkby1jaGVja2JveC1pbmRldGVybWluYXRlLFxuICAubWF0LWFjY2VudCAubWF0LXBzZXVkby1jaGVja2JveC1jaGVja2VkLFxuICAubWF0LWFjY2VudCAubWF0LXBzZXVkby1jaGVja2JveC1pbmRldGVybWluYXRlIHtcbiAgICBiYWNrZ3JvdW5kOiBtYXQtY29sb3IobWFwLWdldCgkY29uZmlnLCBhY2NlbnQpKTtcbiAgfVxuXG4gIC5tYXQtd2FybiAubWF0LXBzZXVkby1jaGVja2JveC1jaGVja2VkLFxuICAubWF0LXdhcm4gLm1hdC1wc2V1ZG8tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZSB7XG4gICAgYmFja2dyb3VuZDogbWF0LWNvbG9yKG1hcC1nZXQoJGNvbmZpZywgd2FybikpO1xuICB9XG5cbiAgLm1hdC1wc2V1ZG8tY2hlY2tib3gtY2hlY2tlZCxcbiAgLm1hdC1wc2V1ZG8tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZSB7XG4gICAgJi5tYXQtcHNldWRvLWNoZWNrYm94LWRpc2FibGVkIHtcbiAgICAgIGJhY2tncm91bmQ6ICRkaXNhYmxlZC1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1hdC1wc2V1ZG8tY2hlY2tib3gtdHlwb2dyYXBoeSgkY29uZmlnLW9yLXRoZW1lKSB7fVxuXG5AbWl4aW4gX21hdC1wc2V1ZG8tY2hlY2tib3gtZGVuc2l0eSgkY29uZmlnLW9yLXRoZW1lKSB7fVxuXG5AbWl4aW4gbWF0LXBzZXVkby1jaGVja2JveC10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKSB7XG4gICR0aGVtZTogbWF0LXByaXZhdGUtbGVnYWN5LWdldC10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKTtcbiAgQGluY2x1ZGUgbWF0LXByaXZhdGUtY2hlY2stZHVwbGljYXRlLXRoZW1lLXN0eWxlcygkdGhlbWUsICdtYXQtcHNldWRvLWNoZWNrYm94Jykge1xuICAgICRjb2xvcjogbWF0LWdldC1jb2xvci1jb25maWcoJHRoZW1lKTtcbiAgICAkZGVuc2l0eTogbWF0LWdldC1kZW5zaXR5LWNvbmZpZygkdGhlbWUpO1xuICAgICR0eXBvZ3JhcGh5OiBtYXQtZ2V0LXR5cG9ncmFwaHktY29uZmlnKCR0aGVtZSk7XG5cbiAgICBAaWYgJGNvbG9yICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LXBzZXVkby1jaGVja2JveC1jb2xvcigkY29sb3IpO1xuICAgIH1cbiAgICBAaWYgJGRlbnNpdHkgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBfbWF0LXBzZXVkby1jaGVja2JveC1kZW5zaXR5KCRkZW5zaXR5KTtcbiAgICB9XG4gICAgQGlmICR0eXBvZ3JhcGh5ICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LXBzZXVkby1jaGVja2JveC10eXBvZ3JhcGh5KCR0eXBvZ3JhcGh5KTtcbiAgICB9XG4gIH1cbn1cblxuXG5cbi8vIFJlcHJlc2VudHMgYSB0eXBvZ3JhcGh5IGxldmVsIGZyb20gdGhlIE1hdGVyaWFsIGRlc2lnbiBzcGVjLlxuQGZ1bmN0aW9uIG1hdC10eXBvZ3JhcGh5LWxldmVsKFxuICAkZm9udC1zaXplLFxuICAkbGluZS1oZWlnaHQ6ICRmb250LXNpemUsXG4gICRmb250LXdlaWdodDogNDAwLFxuICAkZm9udC1mYW1pbHk6IG51bGwsXG4gICRsZXR0ZXItc3BhY2luZzogbm9ybWFsKSB7XG5cbiAgQHJldHVybiAoXG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLFxuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQsXG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodCxcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LFxuICAgIGxldHRlci1zcGFjaW5nOiAkbGV0dGVyLXNwYWNpbmdcbiAgKTtcbn1cblxuLy8gUmVwcmVzZW50cyBhIGNvbGxlY3Rpb24gb2YgdHlwb2dyYXBoeSBsZXZlbHMuXG4vLyBEZWZhdWx0cyBjb21lIGZyb20gaHR0cHM6Ly9tYXRlcmlhbC5pby9ndWlkZWxpbmVzL3N0eWxlL3R5cG9ncmFwaHkuaHRtbFxuLy8gTm90ZTogVGhlIHNwZWMgZG9lc24ndCBtZW50aW9uIGxldHRlciBzcGFjaW5nLiBUaGUgdmFsdWVzIGhlcmUgY29tZSBmcm9tXG4vLyBleWViYWxsaW5nIGl0IHVudGlsIGl0IGxvb2tlZCBleGFjdGx5IGxpa2UgdGhlIHNwZWMgZXhhbXBsZXMuXG5AZnVuY3Rpb24gbWF0LXR5cG9ncmFwaHktY29uZmlnKFxuICAkZm9udC1mYW1pbHk6ICAgJ1JvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmJyxcbiAgJGRpc3BsYXktNDogICAgIG1hdC10eXBvZ3JhcGh5LWxldmVsKDExMnB4LCAxMTJweCwgMzAwLCAkbGV0dGVyLXNwYWNpbmc6IC0wLjA1ZW0pLFxuICAkZGlzcGxheS0zOiAgICAgbWF0LXR5cG9ncmFwaHktbGV2ZWwoNTZweCwgNTZweCwgNDAwLCAkbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW0pLFxuICAkZGlzcGxheS0yOiAgICAgbWF0LXR5cG9ncmFwaHktbGV2ZWwoNDVweCwgNDhweCwgNDAwLCAkbGV0dGVyLXNwYWNpbmc6IC0wLjAwNWVtKSxcbiAgJGRpc3BsYXktMTogICAgIG1hdC10eXBvZ3JhcGh5LWxldmVsKDM0cHgsIDQwcHgsIDQwMCksXG4gICRoZWFkbGluZTogICAgICBtYXQtdHlwb2dyYXBoeS1sZXZlbCgyNHB4LCAzMnB4LCA0MDApLFxuICAkdGl0bGU6ICAgICAgICAgbWF0LXR5cG9ncmFwaHktbGV2ZWwoMjBweCwgMzJweCwgNTAwKSxcbiAgJHN1YmhlYWRpbmctMjogIG1hdC10eXBvZ3JhcGh5LWxldmVsKDE2cHgsIDI4cHgsIDQwMCksXG4gICRzdWJoZWFkaW5nLTE6ICBtYXQtdHlwb2dyYXBoeS1sZXZlbCgxNXB4LCAyNHB4LCA0MDApLFxuICAkYm9keS0yOiAgICAgICAgbWF0LXR5cG9ncmFwaHktbGV2ZWwoMTRweCwgMjRweCwgNTAwKSxcbiAgJGJvZHktMTogICAgICAgIG1hdC10eXBvZ3JhcGh5LWxldmVsKDE0cHgsIDIwcHgsIDQwMCksXG4gICRjYXB0aW9uOiAgICAgICBtYXQtdHlwb2dyYXBoeS1sZXZlbCgxMnB4LCAyMHB4LCA0MDApLFxuICAkYnV0dG9uOiAgICAgICAgbWF0LXR5cG9ncmFwaHktbGV2ZWwoMTRweCwgMTRweCwgNTAwKSxcbiAgLy8gTGluZS1oZWlnaHQgbXVzdCBiZSB1bml0LWxlc3MgZnJhY3Rpb24gb2YgdGhlIGZvbnQtc2l6ZS5cbiAgJGlucHV0OiAgICAgICAgIG1hdC10eXBvZ3JhcGh5LWxldmVsKGluaGVyaXQsIDEuMTI1LCA0MDApXG4pIHtcblxuICAvLyBEZWNsYXJlIGFuIGluaXRpYWwgbWFwIHdpdGggYWxsIG9mIHRoZSBsZXZlbHMuXG4gICRjb25maWc6IChcbiAgICBkaXNwbGF5LTQ6ICAgICAgJGRpc3BsYXktNCxcbiAgICBkaXNwbGF5LTM6ICAgICAgJGRpc3BsYXktMyxcbiAgICBkaXNwbGF5LTI6ICAgICAgJGRpc3BsYXktMixcbiAgICBkaXNwbGF5LTE6ICAgICAgJGRpc3BsYXktMSxcbiAgICBoZWFkbGluZTogICAgICAgJGhlYWRsaW5lLFxuICAgIHRpdGxlOiAgICAgICAgICAkdGl0bGUsXG4gICAgc3ViaGVhZGluZy0yOiAgICRzdWJoZWFkaW5nLTIsXG4gICAgc3ViaGVhZGluZy0xOiAgICRzdWJoZWFkaW5nLTEsXG4gICAgYm9keS0yOiAgICAgICAgICRib2R5LTIsXG4gICAgYm9keS0xOiAgICAgICAgICRib2R5LTEsXG4gICAgY2FwdGlvbjogICAgICAgICRjYXB0aW9uLFxuICAgIGJ1dHRvbjogICAgICAgICAkYnV0dG9uLFxuICAgIGlucHV0OiAgICAgICAgICAkaW5wdXQsXG4gICk7XG5cbiAgLy8gTG9vcCB0aHJvdWdoIHRoZSBsZXZlbHMgYW5kIHNldCB0aGUgYGZvbnQtZmFtaWx5YCBvZiB0aGUgb25lcyB0aGF0IGRvbid0IGhhdmUgb25lIHRvIHRoZSBiYXNlLlxuICAvLyBOb3RlIHRoYXQgU2FzcyBjYW4ndCBtb2RpZnkgbWFwcyBpbiBwbGFjZSwgd2hpY2ggbWVhbnMgdGhhdCB3ZSBuZWVkIHRvIG1lcmdlIGFuZCByZS1hc3NpZ24uXG4gIEBlYWNoICRrZXksICRsZXZlbCBpbiAkY29uZmlnIHtcbiAgICBAaWYgbWFwLWdldCgkbGV2ZWwsIGZvbnQtZmFtaWx5KSA9PSBudWxsIHtcbiAgICAgICRuZXctbGV2ZWw6IG1hcC1tZXJnZSgkbGV2ZWwsIChmb250LWZhbWlseTogJGZvbnQtZmFtaWx5KSk7XG4gICAgICAkY29uZmlnOiBtYXAtbWVyZ2UoJGNvbmZpZywgKCRrZXk6ICRuZXctbGV2ZWwpKTtcbiAgICB9XG4gIH1cblxuICAvLyBBZGQgdGhlIGJhc2UgZm9udCBmYW1pbHkgdG8gdGhlIGNvbmZpZy5cbiAgQHJldHVybiBtYXAtbWVyZ2UoJGNvbmZpZywgKGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHkpKTtcbn1cblxuLy8gV2hldGhlciBhIGNvbmZpZyBpcyBmb3IgdGhlIE1hdGVyaWFsIERlc2lnbiAyMDE4IHR5cG9ncmFwaHkgc3lzdGVtLlxuQGZ1bmN0aW9uIG1hdC1wcml2YXRlLXR5cG9ncmFwaHktaXMtMjAxOC1jb25maWcoJGNvbmZpZykge1xuICBAcmV0dXJuIG1hcC1nZXQoJGNvbmZpZywgaGVhZGxpbmUtMSkgIT0gbnVsbDtcbn1cblxuLy8gV2hldGhlciBhIGNvbmZpZyBpcyBmb3IgdGhlIE1hdGVyaWFsIERlc2lnbiAyMDE0IHR5cG9ncmFwaHkgc3lzdGVtLlxuQGZ1bmN0aW9uIG1hdC1wcml2YXRlLXR5cG9ncmFwaHktaXMtMjAxNC1jb25maWcoJGNvbmZpZykge1xuICBAcmV0dXJuIG1hcC1nZXQoJGNvbmZpZywgaGVhZGxpbmUpICE9IG51bGw7XG59XG5cbi8vIEdpdmVuIGEgY29uZmlnIGZvciBlaXRoZXIgdGhlIDIwMTQgb3IgMjAxOCBNYXRlcmlhbCBEZXNpZ24gdHlwb2dyYXBoeSBzeXN0ZW0sXG4vLyBwcm9kdWNlcyBhIG5vcm1hbGl6ZWQgdHlwb2dyYXBoeSBjb25maWcgZm9yIHRoZSAyMDE0IE1hdGVyaWFsIERlc2lnbiB0eXBvZ3JhcGh5IHN5c3RlbS5cbi8vIDIwMTQgLSBodHRwczovL21hdGVyaWFsLmlvL2FyY2hpdmUvZ3VpZGVsaW5lcy9zdHlsZS90eXBvZ3JhcGh5Lmh0bWwjdHlwb2dyYXBoeS1zdHlsZXNcbi8vIDIwMTggLSBodHRwczovL21hdGVyaWFsLmlvL2Rlc2lnbi90eXBvZ3JhcGh5L3RoZS10eXBlLXN5c3RlbS5odG1sI3R5cGUtc2NhbGVcbkBmdW5jdGlvbiBtYXQtcHJpdmF0ZS10eXBvZ3JhcGh5LXRvLTIwMTQtY29uZmlnKCRjb25maWcpIHtcbiAgQGlmIG1hdC1wcml2YXRlLXR5cG9ncmFwaHktaXMtMjAxOC1jb25maWcoJGNvbmZpZykge1xuICAgIEByZXR1cm4gbWF0LXR5cG9ncmFwaHktY29uZmlnKFxuICAgICAgICAkZGlzcGxheS00OiBtYXAtZ2V0KCRjb25maWcsIGhlYWRsaW5lLTEpLFxuICAgICAgICAkZGlzcGxheS0zOiBtYXAtZ2V0KCRjb25maWcsIGhlYWRsaW5lLTIpLFxuICAgICAgICAkZGlzcGxheS0yOiBtYXAtZ2V0KCRjb25maWcsIGhlYWRsaW5lLTMpLFxuICAgICAgICAkZGlzcGxheS0xOiBtYXAtZ2V0KCRjb25maWcsIGhlYWRsaW5lLTQpLFxuICAgICAgICAkaGVhZGxpbmU6IG1hcC1nZXQoJGNvbmZpZywgaGVhZGxpbmUtNSksXG4gICAgICAgICR0aXRsZTogbWFwLWdldCgkY29uZmlnLCBoZWFkbGluZS02KSxcbiAgICAgICAgJHN1YmhlYWRpbmctMjogbWFwLWdldCgkY29uZmlnLCBzdWJ0aXRsZS0xKSxcbiAgICAgICAgJHN1YmhlYWRpbmctMTogbWFwLWdldCgkY29uZmlnLCBzdWJ0aXRsZS0yKSxcbiAgICAgICAgJGJvZHktMjogbWFwLWdldCgkY29uZmlnLCBib2R5LTEpLFxuICAgICAgICAkYm9keS0xOiBtYXAtZ2V0KCRjb25maWcsIGJvZHktMiksXG4gICAgICAgICRidXR0b246IG1hcC1nZXQoJGNvbmZpZywgYnV0dG9uKSxcbiAgICAgICAgJGNhcHRpb246IG1hcC1nZXQoJGNvbmZpZywgY2FwdGlvbiksXG4gICAgKTtcbiAgfVxuICBAcmV0dXJuICRjb25maWc7XG59XG5cbi8vIEdpdmVuIGEgY29uZmlnIGZvciBlaXRoZXIgdGhlIDIwMTQgb3IgMjAxOCBNYXRlcmlhbCBEZXNpZ24gdHlwb2dyYXBoeSBzeXN0ZW0sXG4vLyBwcm9kdWNlcyBhIG5vcm1hbGl6ZWQgdHlwb2dyYXBoeSBjb25maWcgZm9yIHRoZSAyMDE4IE1hdGVyaWFsIERlc2lnbiB0eXBvZ3JhcGh5IHN5c3RlbS5cbi8vIDIwMTQgLSBodHRwczovL21hdGVyaWFsLmlvL2FyY2hpdmUvZ3VpZGVsaW5lcy9zdHlsZS90eXBvZ3JhcGh5Lmh0bWwjdHlwb2dyYXBoeS1zdHlsZXNcbi8vIDIwMTggLSBodHRwczovL21hdGVyaWFsLmlvL2Rlc2lnbi90eXBvZ3JhcGh5L3RoZS10eXBlLXN5c3RlbS5odG1sI3R5cGUtc2NhbGVcbkBmdW5jdGlvbiBtYXQtcHJpdmF0ZS10eXBvZ3JhcGh5LXRvLTIwMTgtY29uZmlnKCRjb25maWcpIHtcbiAgQGlmIG1hdC1wcml2YXRlLXR5cG9ncmFwaHktaXMtMjAxNC1jb25maWcoJGNvbmZpZykge1xuICAgIEByZXR1cm4gKFxuICAgICAgICBoZWFkbGluZS0xOiBtYXAtZ2V0KCRjb25maWcsIGRpc3BsYXktNCksXG4gICAgICAgIGhlYWRsaW5lLTI6IG1hcC1nZXQoJGNvbmZpZywgZGlzcGxheS0zKSxcbiAgICAgICAgaGVhZGxpbmUtMzogbWFwLWdldCgkY29uZmlnLCBkaXNwbGF5LTIpLFxuICAgICAgICBoZWFkbGluZS00OiBtYXAtZ2V0KCRjb25maWcsIGRpc3BsYXktMSksXG4gICAgICAgIGhlYWRsaW5lLTU6IG1hcC1nZXQoJGNvbmZpZywgaGVhZGxpbmUpLFxuICAgICAgICBoZWFkbGluZS02OiBtYXAtZ2V0KCRjb25maWcsIHRpdGxlKSxcbiAgICAgICAgc3VidGl0bGUtMTogbWFwLWdldCgkY29uZmlnLCBzdWJoZWFkaW5nLTIpLFxuICAgICAgICBzdWJ0aXRsZS0yOiBtYXAtZ2V0KCRjb25maWcsIHN1YmhlYWRpbmctMSksXG4gICAgICAgIGJvZHktMTogbWFwLWdldCgkY29uZmlnLCBib2R5LTIpLFxuICAgICAgICBib2R5LTI6IG1hcC1nZXQoJGNvbmZpZywgYm9keS0xKSxcbiAgICAgICAgYnV0dG9uOiBtYXAtZ2V0KCRjb25maWcsIGJ1dHRvbiksXG4gICAgICAgIGNhcHRpb246IG1hcC1nZXQoJGNvbmZpZywgY2FwdGlvbiksXG4gICAgKTtcbiAgfVxuICBAcmV0dXJuICRjb25maWc7XG59XG5cbi8vIEFkZHMgdGhlIGJhc2UgdHlwb2dyYXBoeSBzdHlsZXMsIGJhc2VkIG9uIGEgY29uZmlnLlxuLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG1hdGVyaWFsL3RoZW1lLW1peGluLWFwaSAqL1xuQG1peGluIG1hdC1iYXNlLXR5cG9ncmFwaHkoJGNvbmZpZywgJHNlbGVjdG9yOiAnLm1hdC10eXBvZ3JhcGh5Jykge1xuICAubWF0LWgxLCAubWF0LWhlYWRsaW5lLCAjeyRzZWxlY3Rvcn0gaDEge1xuICAgIEBpbmNsdWRlIG1hdC10eXBvZ3JhcGh5LWxldmVsLXRvLXN0eWxlcygkY29uZmlnLCBoZWFkbGluZSk7XG4gICAgbWFyZ2luOiAwIDAgMTZweDtcbiAgfVxuXG4gIC5tYXQtaDIsIC5tYXQtdGl0bGUsICN7JHNlbGVjdG9yfSBoMiB7XG4gICAgQGluY2x1ZGUgbWF0LXR5cG9ncmFwaHktbGV2ZWwtdG8tc3R5bGVzKCRjb25maWcsIHRpdGxlKTtcbiAgICBtYXJnaW46IDAgMCAxNnB4O1xuICB9XG5cbiAgLm1hdC1oMywgLm1hdC1zdWJoZWFkaW5nLTIsICN7JHNlbGVjdG9yfSBoMyB7XG4gICAgQGluY2x1ZGUgbWF0LXR5cG9ncmFwaHktbGV2ZWwtdG8tc3R5bGVzKCRjb25maWcsIHN1YmhlYWRpbmctMik7XG4gICAgbWFyZ2luOiAwIDAgMTZweDtcbiAgfVxuXG4gIC5tYXQtaDQsIC5tYXQtc3ViaGVhZGluZy0xLCAjeyRzZWxlY3Rvcn0gaDQge1xuICAgIEBpbmNsdWRlIG1hdC10eXBvZ3JhcGh5LWxldmVsLXRvLXN0eWxlcygkY29uZmlnLCBzdWJoZWFkaW5nLTEpO1xuICAgIG1hcmdpbjogMCAwIDE2cHg7XG4gIH1cblxuICAvLyBOb3RlOiB0aGUgc3BlYyBkb2Vzbid0IGhhdmUgYW55dGhpbmcgdGhhdCB3b3VsZCBjb3JyZXNwb25kIHRvIGg1IGFuZCBoNiwgYnV0IHdlIGFkZCB0aGVzZSBmb3JcbiAgLy8gY29uc2lzdGVuY3kuIFRoZSBmb250IHNpemVzIGNvbWUgZnJvbSB0aGUgQ2hyb21lIHVzZXIgYWdlbnQgc3R5bGVzIHdoaWNoIGhhdmUgaDUgYXQgMC44M2VtXG4gIC8vIGFuZCBoNiBhdCAwLjY3ZW0uXG4gIC5tYXQtaDUsICN7JHNlbGVjdG9yfSBoNSB7XG4gICAgQGluY2x1ZGUgbWF0LXR5cG9ncmFwaHktZm9udC1zaG9ydGhhbmQoXG4gICAgICAgLy8gY2FsYyBpcyB1c2VkIGhlcmUgdG8gc3VwcG9ydCBjc3MgdmFyaWFibGVzXG4gICAgICBjYWxjKCN7bWF0LWZvbnQtc2l6ZSgkY29uZmlnLCBib2R5LTEpfSAqIDAuODMpLFxuICAgICAgbWF0LWZvbnQtd2VpZ2h0KCRjb25maWcsIGJvZHktMSksXG4gICAgICBtYXQtbGluZS1oZWlnaHQoJGNvbmZpZywgYm9keS0xKSxcbiAgICAgIG1hdC1mb250LWZhbWlseSgkY29uZmlnLCBib2R5LTEpXG4gICAgKTtcblxuICAgIG1hcmdpbjogMCAwIDEycHg7XG4gIH1cblxuICAubWF0LWg2LCAjeyRzZWxlY3Rvcn0gaDYge1xuICAgIEBpbmNsdWRlIG1hdC10eXBvZ3JhcGh5LWZvbnQtc2hvcnRoYW5kKFxuICAgICAgIC8vIGNhbGMgaXMgdXNlZCBoZXJlIHRvIHN1cHBvcnQgY3NzIHZhcmlhYmxlc1xuICAgICAgY2FsYygje21hdC1mb250LXNpemUoJGNvbmZpZywgYm9keS0xKX0gKiAwLjY3KSxcbiAgICAgIG1hdC1mb250LXdlaWdodCgkY29uZmlnLCBib2R5LTEpLFxuICAgICAgbWF0LWxpbmUtaGVpZ2h0KCRjb25maWcsIGJvZHktMSksXG4gICAgICBtYXQtZm9udC1mYW1pbHkoJGNvbmZpZywgYm9keS0xKVxuICAgICk7XG5cbiAgICBtYXJnaW46IDAgMCAxMnB4O1xuICB9XG5cbiAgLm1hdC1ib2R5LXN0cm9uZywgLm1hdC1ib2R5LTIge1xuICAgIEBpbmNsdWRlIG1hdC10eXBvZ3JhcGh5LWxldmVsLXRvLXN0eWxlcygkY29uZmlnLCBib2R5LTIpO1xuICB9XG5cbiAgLm1hdC1ib2R5LCAubWF0LWJvZHktMSwgI3skc2VsZWN0b3J9IHtcbiAgICBAaW5jbHVkZSBtYXQtdHlwb2dyYXBoeS1sZXZlbC10by1zdHlsZXMoJGNvbmZpZywgYm9keS0xKTtcblxuICAgIHAge1xuICAgICAgbWFyZ2luOiAwIDAgMTJweDtcbiAgICB9XG4gIH1cblxuICAubWF0LXNtYWxsLCAubWF0LWNhcHRpb24ge1xuICAgIEBpbmNsdWRlIG1hdC10eXBvZ3JhcGh5LWxldmVsLXRvLXN0eWxlcygkY29uZmlnLCBjYXB0aW9uKTtcbiAgfVxuXG4gIC5tYXQtZGlzcGxheS00LCAjeyRzZWxlY3Rvcn0gLm1hdC1kaXNwbGF5LTQge1xuICAgIEBpbmNsdWRlIG1hdC10eXBvZ3JhcGh5LWxldmVsLXRvLXN0eWxlcygkY29uZmlnLCBkaXNwbGF5LTQpO1xuICAgIG1hcmdpbjogMCAwIDU2cHg7XG4gIH1cblxuICAubWF0LWRpc3BsYXktMywgI3skc2VsZWN0b3J9IC5tYXQtZGlzcGxheS0zIHtcbiAgICBAaW5jbHVkZSBtYXQtdHlwb2dyYXBoeS1sZXZlbC10by1zdHlsZXMoJGNvbmZpZywgZGlzcGxheS0zKTtcbiAgICBtYXJnaW46IDAgMCA2NHB4O1xuICB9XG5cbiAgLm1hdC1kaXNwbGF5LTIsICN7JHNlbGVjdG9yfSAubWF0LWRpc3BsYXktMiB7XG4gICAgQGluY2x1ZGUgbWF0LXR5cG9ncmFwaHktbGV2ZWwtdG8tc3R5bGVzKCRjb25maWcsIGRpc3BsYXktMik7XG4gICAgbWFyZ2luOiAwIDAgNjRweDtcbiAgfVxuXG4gIC5tYXQtZGlzcGxheS0xLCAjeyRzZWxlY3Rvcn0gLm1hdC1kaXNwbGF5LTEge1xuICAgIEBpbmNsdWRlIG1hdC10eXBvZ3JhcGh5LWxldmVsLXRvLXN0eWxlcygkY29uZmlnLCBkaXNwbGF5LTEpO1xuICAgIG1hcmdpbjogMCAwIDY0cHg7XG4gIH1cbn1cblxuXG5cblxuQG1peGluIG1hdC1hdXRvY29tcGxldGUtY29sb3IoJGNvbmZpZy1vci10aGVtZSkge1xuICAkY29uZmlnOiBtYXQtZ2V0LWNvbG9yLWNvbmZpZygkY29uZmlnLW9yLXRoZW1lKTtcbiAgJGZvcmVncm91bmQ6IG1hcC1nZXQoJGNvbmZpZywgZm9yZWdyb3VuZCk7XG4gICRiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRjb25maWcsIGJhY2tncm91bmQpO1xuXG4gIC5tYXQtYXV0b2NvbXBsZXRlLXBhbmVsIHtcbiAgICBAaW5jbHVkZSBtYXQtcHJpdmF0ZS10aGVtZS1vdmVycmlkYWJsZS1lbGV2YXRpb24oNCwgJGNvbmZpZyk7XG4gICAgYmFja2dyb3VuZDogbWF0LWNvbG9yKCRiYWNrZ3JvdW5kLCBjYXJkKTtcbiAgICBjb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCB0ZXh0KTtcblxuICAgIC8vIFNlbGVjdGVkIG9wdGlvbnMgaW4gYXV0b2NvbXBsZXRlcyBzaG91bGQgbm90IGJlIGdyYXksIGJ1dCB3ZVxuICAgIC8vIG9ubHkgd2FudCB0byBvdmVycmlkZSB0aGUgYmFja2dyb3VuZCBmb3Igc2VsZWN0ZWQgb3B0aW9ucyBpZlxuICAgIC8vIHRoZXkgYXJlICpub3QqIGluIGhvdmVyIG9yIGZvY3VzIHN0YXRlLiBUaGlzIGNoYW5nZSBoYXMgdG8gYmVcbiAgICAvLyBtYWRlIGhlcmUgYmVjYXVzZSBiYXNlIG9wdGlvbiBzdHlsZXMgYXJlIHNoYXJlZCBiZXR3ZWVuIHRoZVxuICAgIC8vIGF1dG9jb21wbGV0ZSBhbmQgdGhlIHNlbGVjdC5cbiAgICAubWF0LW9wdGlvbi5tYXQtc2VsZWN0ZWQ6bm90KC5tYXQtYWN0aXZlKTpub3QoOmhvdmVyKSB7XG4gICAgICBiYWNrZ3JvdW5kOiBtYXQtY29sb3IoJGJhY2tncm91bmQsIGNhcmQpO1xuXG4gICAgICAmOm5vdCgubWF0LW9wdGlvbi1kaXNhYmxlZCkge1xuICAgICAgICBjb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCB0ZXh0KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1hdC1hdXRvY29tcGxldGUtdHlwb2dyYXBoeSgkY29uZmlnLW9yLXRoZW1lKSB7fVxuXG5AbWl4aW4gX21hdC1hdXRvY29tcGxldGUtZGVuc2l0eSgkY29uZmlnLW9yLXRoZW1lKSB7fVxuXG5AbWl4aW4gbWF0LWF1dG9jb21wbGV0ZS10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKSB7XG4gICR0aGVtZTogbWF0LXByaXZhdGUtbGVnYWN5LWdldC10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKTtcbiAgQGluY2x1ZGUgbWF0LXByaXZhdGUtY2hlY2stZHVwbGljYXRlLXRoZW1lLXN0eWxlcygkdGhlbWUsICdtYXQtYXV0b2NvbXBsZXRlJykge1xuICAgICRjb2xvcjogbWF0LWdldC1jb2xvci1jb25maWcoJHRoZW1lKTtcbiAgICAkZGVuc2l0eTogbWF0LWdldC1kZW5zaXR5LWNvbmZpZygkdGhlbWUpO1xuICAgICR0eXBvZ3JhcGh5OiBtYXQtZ2V0LXR5cG9ncmFwaHktY29uZmlnKCR0aGVtZSk7XG5cbiAgICBAaWYgJGNvbG9yICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LWF1dG9jb21wbGV0ZS1jb2xvcigkY29sb3IpO1xuICAgIH1cbiAgICBAaWYgJGRlbnNpdHkgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBfbWF0LWF1dG9jb21wbGV0ZS1kZW5zaXR5KCRkZW5zaXR5KTtcbiAgICB9XG4gICAgQGlmICR0eXBvZ3JhcGh5ICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LWF1dG9jb21wbGV0ZS10eXBvZ3JhcGh5KCR0eXBvZ3JhcGh5KTtcbiAgICB9XG4gIH1cbn1cblxuLy8gVGhpcyBjb250YWlucyBhbGwgb2YgdGhlIHN0eWxlcyBmb3IgdGhlIGJhZGdlXG4vLyByYXRoZXIgdGhhbiBqdXN0IHRoZSBjb2xvci90aGVtZSBiZWNhdXNlIG9mXG4vLyBubyBzdHlsZSBzaGVldCBzdXBwb3J0IGZvciBkaXJlY3RpdmVzLlxuXG5cblxuXG5cbiRtYXQtYmFkZ2UtZm9udC1zaXplOiAxMnB4O1xuJG1hdC1iYWRnZS1mb250LXdlaWdodDogNjAwO1xuJG1hdC1iYWRnZS1kZWZhdWx0LXNpemU6IDIycHggIWRlZmF1bHQ7XG4kbWF0LWJhZGdlLXNtYWxsLXNpemU6ICRtYXQtYmFkZ2UtZGVmYXVsdC1zaXplIC0gNjtcbiRtYXQtYmFkZ2UtbGFyZ2Utc2l6ZTogJG1hdC1iYWRnZS1kZWZhdWx0LXNpemUgKyA2O1xuXG4vLyBNaXhpbiBmb3IgYnVpbGRpbmcgb2Zmc2V0IGdpdmVuIGRpZmZlcmVudCBzaXplc1xuQG1peGluIF9tYXQtYmFkZ2Utc2l6ZSgkc2l6ZSkge1xuICAubWF0LWJhZGdlLWNvbnRlbnQge1xuICAgIHdpZHRoOiAkc2l6ZTtcbiAgICBoZWlnaHQ6ICRzaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkc2l6ZTtcbiAgfVxuXG4gICYubWF0LWJhZGdlLWFib3ZlIHtcbiAgICAubWF0LWJhZGdlLWNvbnRlbnQge1xuICAgICAgdG9wOiAtJHNpemUgLyAyO1xuICAgIH1cbiAgfVxuXG4gICYubWF0LWJhZGdlLWJlbG93IHtcbiAgICAubWF0LWJhZGdlLWNvbnRlbnQge1xuICAgICAgYm90dG9tOiAtJHNpemUgLyAyO1xuICAgIH1cbiAgfVxuXG4gICYubWF0LWJhZGdlLWJlZm9yZSB7XG4gICAgLm1hdC1iYWRnZS1jb250ZW50IHtcbiAgICAgIGxlZnQ6IC0kc2l6ZTtcbiAgICB9XG4gIH1cblxuICBbZGlyPSdydGwnXSAmLm1hdC1iYWRnZS1iZWZvcmUge1xuICAgIC5tYXQtYmFkZ2UtY29udGVudCB7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgcmlnaHQ6IC0kc2l6ZTtcbiAgICB9XG4gIH1cblxuICAmLm1hdC1iYWRnZS1hZnRlciB7XG4gICAgLm1hdC1iYWRnZS1jb250ZW50IHtcbiAgICAgIHJpZ2h0OiAtJHNpemU7XG4gICAgfVxuICB9XG5cbiAgW2Rpcj0ncnRsJ10gJi5tYXQtYmFkZ2UtYWZ0ZXIge1xuICAgIC5tYXQtYmFkZ2UtY29udGVudCB7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGxlZnQ6IC0kc2l6ZTtcbiAgICB9XG4gIH1cblxuICAmLm1hdC1iYWRnZS1vdmVybGFwIHtcbiAgICAmLm1hdC1iYWRnZS1iZWZvcmUge1xuICAgICAgLm1hdC1iYWRnZS1jb250ZW50IHtcbiAgICAgICAgbGVmdDogLSRzaXplIC8gMjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBbZGlyPSdydGwnXSAmLm1hdC1iYWRnZS1iZWZvcmUge1xuICAgICAgLm1hdC1iYWRnZS1jb250ZW50IHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgcmlnaHQ6IC0kc2l6ZSAvIDI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5tYXQtYmFkZ2UtYWZ0ZXIge1xuICAgICAgLm1hdC1iYWRnZS1jb250ZW50IHtcbiAgICAgICAgcmlnaHQ6IC0kc2l6ZSAvIDI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgW2Rpcj0ncnRsJ10gJi5tYXQtYmFkZ2UtYWZ0ZXIge1xuICAgICAgLm1hdC1iYWRnZS1jb250ZW50IHtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IC0kc2l6ZSAvIDI7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYXQtYmFkZ2UtY29sb3IoJGNvbmZpZy1vci10aGVtZSkge1xuICAkY29uZmlnOiBtYXQtZ2V0LWNvbG9yLWNvbmZpZygkY29uZmlnLW9yLXRoZW1lKTtcbiAgJGFjY2VudDogbWFwLWdldCgkY29uZmlnLCBhY2NlbnQpO1xuICAkd2FybjogbWFwLWdldCgkY29uZmlnLCB3YXJuKTtcbiAgJHByaW1hcnk6IG1hcC1nZXQoJGNvbmZpZywgcHJpbWFyeSk7XG4gICRiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRjb25maWcsIGJhY2tncm91bmQpO1xuICAkZm9yZWdyb3VuZDogbWFwLWdldCgkY29uZmlnLCBmb3JlZ3JvdW5kKTtcblxuICAubWF0LWJhZGdlLWNvbnRlbnQge1xuICAgIGNvbG9yOiBtYXQtY29sb3IoJHByaW1hcnksIGRlZmF1bHQtY29udHJhc3QpO1xuICAgIGJhY2tncm91bmQ6IG1hdC1jb2xvcigkcHJpbWFyeSk7XG5cbiAgICBAaW5jbHVkZSBjZGstaGlnaC1jb250cmFzdChhY3RpdmUsIG9mZikge1xuICAgICAgb3V0bGluZTogc29saWQgMXB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICB9XG4gIH1cblxuICAubWF0LWJhZGdlLWFjY2VudCB7XG4gICAgLm1hdC1iYWRnZS1jb250ZW50IHtcbiAgICAgIGJhY2tncm91bmQ6IG1hdC1jb2xvcigkYWNjZW50KTtcbiAgICAgIGNvbG9yOiBtYXQtY29sb3IoJGFjY2VudCwgZGVmYXVsdC1jb250cmFzdCk7XG4gICAgfVxuICB9XG5cbiAgLm1hdC1iYWRnZS13YXJuIHtcbiAgICAubWF0LWJhZGdlLWNvbnRlbnQge1xuICAgICAgY29sb3I6IG1hdC1jb2xvcigkd2FybiwgZGVmYXVsdC1jb250cmFzdCk7XG4gICAgICBiYWNrZ3JvdW5kOiBtYXQtY29sb3IoJHdhcm4pO1xuICAgIH1cbiAgfVxuXG4gIC5tYXQtYmFkZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC5tYXQtYmFkZ2UtaGlkZGVuIHtcbiAgICAubWF0LWJhZGdlLWNvbnRlbnQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAubWF0LWJhZGdlLWRpc2FibGVkIHtcbiAgICAubWF0LWJhZGdlLWNvbnRlbnQge1xuICAgICAgJGFwcC1iYWNrZ3JvdW5kOiBtYXQtY29sb3IoJGJhY2tncm91bmQsICdiYWNrZ3JvdW5kJyk7XG4gICAgICAkYmFkZ2UtY29sb3I6IG1hdC1jb2xvcigkZm9yZWdyb3VuZCwgZGlzYWJsZWQtYnV0dG9uKTtcblxuICAgICAgLy8gVGhlIGRpc2FibGVkIGNvbG9yIHVzdWFsbHkgaGFzIHNvbWUga2luZCBvZiBvcGFjaXR5LCBidXQgYmVjYXVzZSB0aGUgYmFkZ2UgaXMgb3ZlcmxheWVkXG4gICAgICAvLyBvbiB0b3Agb2Ygc29tZXRoaW5nIGVsc2UsIGl0IHdvbid0IGxvb2sgZ29vZCBpZiBpdCdzIG9wYXF1ZS4gSWYgaXQgaXMgYSBjb2xvciAqdHlwZSosXG4gICAgICAvLyB3ZSBjb252ZXJ0IGl0IGludG8gYSBzb2xpZCBjb2xvciBieSB0YWtpbmcgdGhlIG9wYWNpdHkgZnJvbSB0aGUgcmdiYSB2YWx1ZSBhbmQgdXNpbmdcbiAgICAgIC8vIHRoZSB2YWx1ZSB0byBkZXRlcm1pbmUgdGhlIHBlcmNlbnRhZ2Ugb2YgdGhlIGJhY2tncm91bmQgdG8gcHV0IGludG8gZm9yZWdyb3VuZCB3aGVuXG4gICAgICAvLyBtaXhpbmcgdGhlIGNvbG9ycyB0b2dldGhlci5cbiAgICAgIEBpZiAodHlwZS1vZigkYmFkZ2UtY29sb3IpID09IGNvbG9yIGFuZCB0eXBlLW9mKCRhcHAtYmFja2dyb3VuZCkgPT0gY29sb3IpIHtcbiAgICAgICAgJGJhZGdlLW9wYWNpdHk6IG9wYWNpdHkoJGJhZGdlLWNvbG9yKTtcbiAgICAgICAgYmFja2dyb3VuZDogbWl4KCRhcHAtYmFja2dyb3VuZCwgcmdiYSgkYmFkZ2UtY29sb3IsIDEpLCAoMSAtICRiYWRnZS1vcGFjaXR5KSAqIDEwMCUpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYmFkZ2UtY29sb3I7XG4gICAgICB9XG5cbiAgICAgIGNvbG9yOiBtYXQtY29sb3IoJGZvcmVncm91bmQsIGRpc2FibGVkLXRleHQpO1xuICAgIH1cbiAgfVxuXG4gIC5tYXQtYmFkZ2UtY29udGVudCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAyMDBtcyBlYXNlLWluLW91dDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNik7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5cbiAgLm5nLWFuaW1hdGUtZGlzYWJsZWQgLm1hdC1iYWRnZS1jb250ZW50LFxuICAubWF0LWJhZGdlLWNvbnRlbnQuX21hdC1hbmltYXRpb24tbm9vcGFibGUge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cblxuICAvLyBUaGUgYWN0aXZlIGNsYXNzIGlzIGFkZGVkIGFmdGVyIHRoZSBlbGVtZW50IGlzIGFkZGVkXG4gIC8vIHNvIGl0IGNhbiBhbmltYXRlIHNjYWxlIHRvIGRlZmF1bHRcbiAgLm1hdC1iYWRnZS1jb250ZW50Lm1hdC1iYWRnZS1hY3RpdmUge1xuICAgIC8vIFNjYWxlIHRvIGBub25lYCBpbnN0ZWFkIG9mIGAxYCB0byBhdm9pZCBibHVycnkgdGV4dCBpbiBzb21lIGJyb3dzZXJzLlxuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIC5tYXQtYmFkZ2Utc21hbGwge1xuICAgIEBpbmNsdWRlIF9tYXQtYmFkZ2Utc2l6ZSgkbWF0LWJhZGdlLXNtYWxsLXNpemUpO1xuICB9XG4gIC5tYXQtYmFkZ2UtbWVkaXVtIHtcbiAgICBAaW5jbHVkZSBfbWF0LWJhZGdlLXNpemUoJG1hdC1iYWRnZS1kZWZhdWx0LXNpemUpO1xuICB9XG4gIC5tYXQtYmFkZ2UtbGFyZ2Uge1xuICAgIEBpbmNsdWRlIF9tYXQtYmFkZ2Utc2l6ZSgkbWF0LWJhZGdlLWxhcmdlLXNpemUpO1xuICB9XG59XG5cbkBtaXhpbiBtYXQtYmFkZ2UtdHlwb2dyYXBoeSgkY29uZmlnLW9yLXRoZW1lKSB7XG4gICRjb25maWc6IG1hdC1nZXQtdHlwb2dyYXBoeS1jb25maWcoJGNvbmZpZy1vci10aGVtZSk7XG4gIC5tYXQtYmFkZ2UtY29udGVudCB7XG4gICAgZm9udC13ZWlnaHQ6ICRtYXQtYmFkZ2UtZm9udC13ZWlnaHQ7XG4gICAgZm9udC1zaXplOiAkbWF0LWJhZGdlLWZvbnQtc2l6ZTtcbiAgICBmb250LWZhbWlseTogbWF0LWZvbnQtZmFtaWx5KCRjb25maWcpO1xuICB9XG5cbiAgLm1hdC1iYWRnZS1zbWFsbCAubWF0LWJhZGdlLWNvbnRlbnQge1xuICAgIC8vIFNldCB0aGUgZm9udCBzaXplIHRvIDc1JSBvZiB0aGUgb3JpZ2luYWwuXG4gICAgZm9udC1zaXplOiAkbWF0LWJhZGdlLWZvbnQtc2l6ZSAqIDAuNzU7XG4gIH1cblxuICAubWF0LWJhZGdlLWxhcmdlIC5tYXQtYmFkZ2UtY29udGVudCB7XG4gICAgZm9udC1zaXplOiAkbWF0LWJhZGdlLWZvbnQtc2l6ZSAqIDI7XG4gIH1cbn1cblxuQG1peGluIF9tYXQtYmFkZ2UtZGVuc2l0eSgkY29uZmlnLW9yLXRoZW1lKSB7fVxuXG5AbWl4aW4gbWF0LWJhZGdlLXRoZW1lKCR0aGVtZS1vci1jb2xvci1jb25maWcpIHtcbiAgJHRoZW1lOiBtYXQtcHJpdmF0ZS1sZWdhY3ktZ2V0LXRoZW1lKCR0aGVtZS1vci1jb2xvci1jb25maWcpO1xuICBAaW5jbHVkZSBtYXQtcHJpdmF0ZS1jaGVjay1kdXBsaWNhdGUtdGhlbWUtc3R5bGVzKCR0aGVtZSwgJ21hdC1iYWRnZScpIHtcbiAgICAkY29sb3I6IG1hdC1nZXQtY29sb3ItY29uZmlnKCR0aGVtZSk7XG4gICAgJGRlbnNpdHk6IG1hdC1nZXQtZGVuc2l0eS1jb25maWcoJHRoZW1lKTtcbiAgICAkdHlwb2dyYXBoeTogbWF0LWdldC10eXBvZ3JhcGh5LWNvbmZpZygkdGhlbWUpO1xuXG4gICAgQGlmICRjb2xvciAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIG1hdC1iYWRnZS1jb2xvcigkY29sb3IpO1xuICAgIH1cbiAgICBAaWYgJGRlbnNpdHkgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBfbWF0LWJhZGdlLWRlbnNpdHkoJGRlbnNpdHkpO1xuICAgIH1cbiAgICBAaWYgJHR5cG9ncmFwaHkgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBtYXQtYmFkZ2UtdHlwb2dyYXBoeSgkdHlwb2dyYXBoeSk7XG4gICAgfVxuICB9XG59XG5cblxuXG5cblxuXG5AbWl4aW4gbWF0LWJvdHRvbS1zaGVldC1jb2xvcigkY29uZmlnLW9yLXRoZW1lKSB7XG4gICRjb25maWc6IG1hdC1nZXQtY29sb3ItY29uZmlnKCRjb25maWctb3ItdGhlbWUpO1xuICAkYmFja2dyb3VuZDogbWFwLWdldCgkY29uZmlnLCBiYWNrZ3JvdW5kKTtcbiAgJGZvcmVncm91bmQ6IG1hcC1nZXQoJGNvbmZpZywgZm9yZWdyb3VuZCk7XG5cbiAgLm1hdC1ib3R0b20tc2hlZXQtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBtYXQtcHJpdmF0ZS10aGVtZS1lbGV2YXRpb24oMTYsICRjb25maWcpO1xuICAgIGJhY2tncm91bmQ6IG1hdC1jb2xvcigkYmFja2dyb3VuZCwgZGlhbG9nKTtcbiAgICBjb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCB0ZXh0KTtcbiAgfVxufVxuXG5AbWl4aW4gbWF0LWJvdHRvbS1zaGVldC10eXBvZ3JhcGh5KCRjb25maWctb3ItdGhlbWUpIHtcbiAgJGNvbmZpZzogbWF0LWdldC10eXBvZ3JhcGh5LWNvbmZpZygkY29uZmlnLW9yLXRoZW1lKTtcbiAgLm1hdC1ib3R0b20tc2hlZXQtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBtYXQtdHlwb2dyYXBoeS1sZXZlbC10by1zdHlsZXMoJGNvbmZpZywgYm9keS0xKTtcbiAgfVxufVxuXG5AbWl4aW4gX21hdC1ib3R0b20tc2hlZXQtZGVuc2l0eSgkY29uZmlnLW9yLXRoZW1lKSB7fVxuXG5AbWl4aW4gbWF0LWJvdHRvbS1zaGVldC10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKSB7XG4gICR0aGVtZTogbWF0LXByaXZhdGUtbGVnYWN5LWdldC10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKTtcbiAgQGluY2x1ZGUgbWF0LXByaXZhdGUtY2hlY2stZHVwbGljYXRlLXRoZW1lLXN0eWxlcygkdGhlbWUsICdtYXQtYm90dG9tLXNoZWV0Jykge1xuICAgICRjb2xvcjogbWF0LWdldC1jb2xvci1jb25maWcoJHRoZW1lKTtcbiAgICAkZGVuc2l0eTogbWF0LWdldC1kZW5zaXR5LWNvbmZpZygkdGhlbWUpO1xuICAgICR0eXBvZ3JhcGh5OiBtYXQtZ2V0LXR5cG9ncmFwaHktY29uZmlnKCR0aGVtZSk7XG5cbiAgICBAaWYgJGNvbG9yICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LWJvdHRvbS1zaGVldC1jb2xvcigkY29sb3IpO1xuICAgIH1cbiAgICBAaWYgJGRlbnNpdHkgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBfbWF0LWJvdHRvbS1zaGVldC1kZW5zaXR5KCRkZW5zaXR5KTtcbiAgICB9XG4gICAgQGlmICR0eXBvZ3JhcGh5ICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LWJvdHRvbS1zaGVldC10eXBvZ3JhcGh5KCR0eXBvZ3JhcGh5KTtcbiAgICB9XG4gIH1cbn1cblxuXG5cblxuXG4kX21hdC1idXR0b24tcmlwcGxlLW9wYWNpdHk6IDAuMTtcblxuLy8gQXBwbGllcyBhIGZvY3VzIHN0eWxlIHRvIGFuIG1hdC1idXR0b24gZWxlbWVudCBmb3IgZWFjaCBvZiB0aGUgc3VwcG9ydGVkIHBhbGV0dGVzLlxuQG1peGluIF9tYXQtYnV0dG9uLWZvY3VzLW92ZXJsYXktY29sb3IoJGNvbmZpZy1vci10aGVtZSkge1xuICAkY29uZmlnOiBtYXQtZ2V0LWNvbG9yLWNvbmZpZygkY29uZmlnLW9yLXRoZW1lKTtcbiAgJHByaW1hcnk6IG1hcC1nZXQoJGNvbmZpZywgcHJpbWFyeSk7XG4gICRhY2NlbnQ6IG1hcC1nZXQoJGNvbmZpZywgYWNjZW50KTtcbiAgJHdhcm46IG1hcC1nZXQoJGNvbmZpZywgd2Fybik7XG5cbiAgJi5tYXQtcHJpbWFyeSAubWF0LWJ1dHRvbi1mb2N1cy1vdmVybGF5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXQtY29sb3IoJHByaW1hcnkpO1xuICB9XG5cbiAgJi5tYXQtYWNjZW50IC5tYXQtYnV0dG9uLWZvY3VzLW92ZXJsYXkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1hdC1jb2xvcigkYWNjZW50KTtcbiAgfVxuXG4gICYubWF0LXdhcm4gLm1hdC1idXR0b24tZm9jdXMtb3ZlcmxheSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWF0LWNvbG9yKCR3YXJuKTtcbiAgfVxuXG4gICYubWF0LWJ1dHRvbi1kaXNhYmxlZCAubWF0LWJ1dHRvbi1mb2N1cy1vdmVybGF5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4vLyBBcHBsaWVzIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIGZvciBhIHJpcHBsZS4gSWYgdGhlIHZhbHVlIHByb3ZpZGVkIGlzIG5vdCBhIFNhc3MgY29sb3IsXG4vLyB3ZSBhc3N1bWUgdGhhdCB3ZSd2ZSBiZWVuIGdpdmVuIGEgQ1NTIHZhcmlhYmxlLiBTaW5jZSB3ZSBjYW4ndCBwZXJmb3JtIGFscGhhLWJsZW5kaW5nXG4vLyBvbiBhIENTUyB2YXJpYWJsZSwgd2UgaW5zdGVhZCBhZGQgdGhlIG9wYWNpdHkgZGlyZWN0bHkgdG8gdGhlIHJpcHBsZSBlbGVtZW50LlxuQG1peGluIF9tYXQtYnV0dG9uLXJpcHBsZS1iYWNrZ3JvdW5kKCRwYWxldHRlLCAkaHVlLCAkb3BhY2l0eSkge1xuICAkYmFja2dyb3VuZC1jb2xvcjogbWF0LWNvbG9yKCRwYWxldHRlLCAkaHVlLCAkb3BhY2l0eSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWNvbG9yO1xuICBAaWYgKHR5cGUtb2YoJGJhY2tncm91bmQtY29sb3IpICE9IGNvbG9yKSB7XG4gICAgb3BhY2l0eTogJG9wYWNpdHk7XG4gIH1cbn1cblxuQG1peGluIF9tYXQtYnV0dG9uLXJpcHBsZS1jb2xvcigkdGhlbWUsICRodWUsICRvcGFjaXR5OiAkX21hdC1idXR0b24tcmlwcGxlLW9wYWNpdHkpIHtcbiAgJHByaW1hcnk6IG1hcC1nZXQoJHRoZW1lLCBwcmltYXJ5KTtcbiAgJGFjY2VudDogbWFwLWdldCgkdGhlbWUsIGFjY2VudCk7XG4gICR3YXJuOiBtYXAtZ2V0KCR0aGVtZSwgd2Fybik7XG5cbiAgJi5tYXQtcHJpbWFyeSAubWF0LXJpcHBsZS1lbGVtZW50IHtcbiAgICBAaW5jbHVkZSBfbWF0LWJ1dHRvbi1yaXBwbGUtYmFja2dyb3VuZCgkcHJpbWFyeSwgJGh1ZSwgJG9wYWNpdHkpO1xuICB9XG5cbiAgJi5tYXQtYWNjZW50IC5tYXQtcmlwcGxlLWVsZW1lbnQge1xuICAgIEBpbmNsdWRlIF9tYXQtYnV0dG9uLXJpcHBsZS1iYWNrZ3JvdW5kKCRhY2NlbnQsICRodWUsICRvcGFjaXR5KTtcbiAgfVxuXG4gICYubWF0LXdhcm4gLm1hdC1yaXBwbGUtZWxlbWVudCB7XG4gICAgQGluY2x1ZGUgX21hdC1idXR0b24tcmlwcGxlLWJhY2tncm91bmQoJHdhcm4sICRodWUsICRvcGFjaXR5KTtcbiAgfVxufVxuXG4vLyBBcHBsaWVzIGEgcHJvcGVydHkgdG8gYW4gbWF0LWJ1dHRvbiBlbGVtZW50IGZvciBlYWNoIG9mIHRoZSBzdXBwb3J0ZWQgcGFsZXR0ZXMuXG5AbWl4aW4gX21hdC1idXR0b24tdGhlbWUtcHJvcGVydHkoJHRoZW1lLCAkcHJvcGVydHksICRodWUpIHtcbiAgJHByaW1hcnk6IG1hcC1nZXQoJHRoZW1lLCBwcmltYXJ5KTtcbiAgJGFjY2VudDogbWFwLWdldCgkdGhlbWUsIGFjY2VudCk7XG4gICR3YXJuOiBtYXAtZ2V0KCR0aGVtZSwgd2Fybik7XG4gICRiYWNrZ3JvdW5kOiBtYXAtZ2V0KCR0aGVtZSwgYmFja2dyb3VuZCk7XG4gICRmb3JlZ3JvdW5kOiBtYXAtZ2V0KCR0aGVtZSwgZm9yZWdyb3VuZCk7XG5cbiAgJi5tYXQtcHJpbWFyeSB7XG4gICAgI3skcHJvcGVydHl9OiBtYXQtY29sb3IoJHByaW1hcnksICRodWUpO1xuICB9XG4gICYubWF0LWFjY2VudCB7XG4gICAgI3skcHJvcGVydHl9OiBtYXQtY29sb3IoJGFjY2VudCwgJGh1ZSk7XG4gIH1cbiAgJi5tYXQtd2FybiB7XG4gICAgI3skcHJvcGVydHl9OiBtYXQtY29sb3IoJHdhcm4sICRodWUpO1xuICB9XG5cbiAgJi5tYXQtcHJpbWFyeSwgJi5tYXQtYWNjZW50LCAmLm1hdC13YXJuLCAmLm1hdC1idXR0b24tZGlzYWJsZWQge1xuICAgICYubWF0LWJ1dHRvbi1kaXNhYmxlZCB7XG4gICAgICAkcGFsZXR0ZTogaWYoJHByb3BlcnR5ID09ICdjb2xvcicsICRmb3JlZ3JvdW5kLCAkYmFja2dyb3VuZCk7XG4gICAgICAjeyRwcm9wZXJ0eX06IG1hdC1jb2xvcigkcGFsZXR0ZSwgZGlzYWJsZWQtYnV0dG9uKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1hdC1idXR0b24tY29sb3IoJGNvbmZpZy1vci10aGVtZSkge1xuICAkY29uZmlnOiBtYXQtZ2V0LWNvbG9yLWNvbmZpZygkY29uZmlnLW9yLXRoZW1lKTtcbiAgJHByaW1hcnk6IG1hcC1nZXQoJGNvbmZpZywgcHJpbWFyeSk7XG4gICRhY2NlbnQ6IG1hcC1nZXQoJGNvbmZpZywgYWNjZW50KTtcbiAgJHdhcm46IG1hcC1nZXQoJGNvbmZpZywgd2Fybik7XG4gICRiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRjb25maWcsIGJhY2tncm91bmQpO1xuICAkZm9yZWdyb3VuZDogbWFwLWdldCgkY29uZmlnLCBmb3JlZ3JvdW5kKTtcblxuICAubWF0LWJ1dHRvbiwgLm1hdC1pY29uLWJ1dHRvbiwgLm1hdC1zdHJva2VkLWJ1dHRvbiB7XG4gICAgLy8gQnV0dG9ucyB3aXRob3V0IGEgYmFja2dyb3VuZCBjb2xvciBzaG91bGQgaW5oZXJpdCB0aGUgZm9udCBjb2xvci4gVGhpcyBpcyBuZWNlc3NhcnkgdG9cbiAgICAvLyBlbnN1cmUgdGhhdCB0aGUgYnV0dG9uIGlzIHJlYWRhYmxlIG9uIGN1c3RvbSBiYWNrZ3JvdW5kIGNvbG9ycy4gSXQncyB3cm9uZyB0byBhbHdheXMgYXNzdW1lXG4gICAgLy8gdGhhdCB0aG9zZSBidXR0b25zIGFyZSBhbHdheXMgcGxhY2VkIGluc2lkZSBvZiBjb250YWluZXJzIHdpdGggdGhlIGRlZmF1bHQgYmFja2dyb3VuZFxuICAgIC8vIGNvbG9yIG9mIHRoZSB0aGVtZSAoZS5nLiB0aGVtZWQgdG9vbGJhcnMpLlxuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXG4gICAgQGluY2x1ZGUgX21hdC1idXR0b24tdGhlbWUtcHJvcGVydHkoJGNvbmZpZywgJ2NvbG9yJywgdGV4dCk7XG4gICAgQGluY2x1ZGUgX21hdC1idXR0b24tZm9jdXMtb3ZlcmxheS1jb2xvcigkY29uZmlnKTtcblxuICAgIC8vIFNldHVwIHRoZSByaXBwbGUgY29sb3IgdG8gYmUgYmFzZWQgb24gdGhlIHRleHQgY29sb3IuIFRoaXMgZW5zdXJlcyB0aGF0IHRoZSByaXBwbGVzXG4gICAgLy8gYXJlIG1hdGNoaW5nIHdpdGggdGhlIGN1cnJlbnQgdGhlbWUgcGFsZXR0ZSBhbmQgYXJlIGluIGNvbnRyYXN0IHRvIHRoZSBiYWNrZ3JvdW5kIGNvbG9yXG4gICAgLy8gKGUuZyBpbiB0aGVtZWQgdG9vbGJhcnMpLlxuICAgIC5tYXQtcmlwcGxlLWVsZW1lbnQge1xuICAgICAgb3BhY2l0eTogJF9tYXQtYnV0dG9uLXJpcHBsZS1vcGFjaXR5O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5tYXQtYnV0dG9uLWZvY3VzLW92ZXJsYXkge1xuICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJGZvcmVncm91bmQsIGJhc2UpO1xuICB9XG5cbiAgLy8gTm90ZTogdGhpcyBuZWVkcyBhIGJpdCBleHRyYSBzcGVjaWZpY2l0eSwgYmVjYXVzZSB3ZSdyZSBub3QgZ3VhcmFudGVlZCB0aGUgaW5jbHVzaW9uXG4gIC8vIG9yZGVyIG9mIHRoZSB0aGVtZSBzdHlsZXMgYW5kIHRoZSBidXR0b24gcmVzZXQgbWF5IGVuZCB1cCByZXNldHRpbmcgdGhpcyBhcyB3ZWxsLlxuICAubWF0LXN0cm9rZWQtYnV0dG9uOm5vdCgubWF0LWJ1dHRvbi1kaXNhYmxlZCkge1xuICAgIGJvcmRlci1jb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCBkaXZpZGVyKTtcbiAgfVxuXG4gIC5tYXQtZmxhdC1idXR0b24sIC5tYXQtcmFpc2VkLWJ1dHRvbiwgLm1hdC1mYWIsIC5tYXQtbWluaS1mYWIge1xuICAgIC8vIERlZmF1bHQgZm9udCBhbmQgYmFja2dyb3VuZCBjb2xvciB3aGVuIG5vdCB1c2luZyBhbnkgY29sb3IgcGFsZXR0ZS5cbiAgICBjb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCB0ZXh0KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXQtY29sb3IoJGJhY2tncm91bmQsIHJhaXNlZC1idXR0b24pO1xuXG4gICAgQGluY2x1ZGUgX21hdC1idXR0b24tdGhlbWUtcHJvcGVydHkoJGNvbmZpZywgJ2NvbG9yJywgZGVmYXVsdC1jb250cmFzdCk7XG4gICAgQGluY2x1ZGUgX21hdC1idXR0b24tdGhlbWUtcHJvcGVydHkoJGNvbmZpZywgJ2JhY2tncm91bmQtY29sb3InLCBkZWZhdWx0KTtcbiAgICBAaW5jbHVkZSBfbWF0LWJ1dHRvbi1yaXBwbGUtY29sb3IoJGNvbmZpZywgZGVmYXVsdC1jb250cmFzdCk7XG4gIH1cblxuICAubWF0LXN0cm9rZWQtYnV0dG9uLCAubWF0LWZsYXQtYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBtYXQtcHJpdmF0ZS10aGVtZS1vdmVycmlkYWJsZS1lbGV2YXRpb24oMCwgJGNvbmZpZyk7XG4gIH1cblxuICAubWF0LXJhaXNlZC1idXR0b24ge1xuICAgIEBpbmNsdWRlIG1hdC1wcml2YXRlLXRoZW1lLW92ZXJyaWRhYmxlLWVsZXZhdGlvbigyLCAkY29uZmlnKTtcblxuICAgICY6bm90KC5tYXQtYnV0dG9uLWRpc2FibGVkKTphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgbWF0LXByaXZhdGUtdGhlbWUtb3ZlcnJpZGFibGUtZWxldmF0aW9uKDgsICRjb25maWcpO1xuICAgIH1cblxuICAgICYubWF0LWJ1dHRvbi1kaXNhYmxlZCB7XG4gICAgICBAaW5jbHVkZSBtYXQtcHJpdmF0ZS10aGVtZS1vdmVycmlkYWJsZS1lbGV2YXRpb24oMCwgJGNvbmZpZyk7XG4gICAgfVxuICB9XG5cbiAgLm1hdC1mYWIsIC5tYXQtbWluaS1mYWIge1xuICAgIEBpbmNsdWRlIG1hdC1wcml2YXRlLXRoZW1lLW92ZXJyaWRhYmxlLWVsZXZhdGlvbig2LCAkY29uZmlnKTtcblxuICAgICY6bm90KC5tYXQtYnV0dG9uLWRpc2FibGVkKTphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgbWF0LXByaXZhdGUtdGhlbWUtb3ZlcnJpZGFibGUtZWxldmF0aW9uKDEyLCAkY29uZmlnKTtcbiAgICB9XG5cbiAgICAmLm1hdC1idXR0b24tZGlzYWJsZWQge1xuICAgICAgQGluY2x1ZGUgbWF0LXByaXZhdGUtdGhlbWUtb3ZlcnJpZGFibGUtZWxldmF0aW9uKDAsICRjb25maWcpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWF0LWJ1dHRvbi10eXBvZ3JhcGh5KCRjb25maWctb3ItdGhlbWUpIHtcbiAgJGNvbmZpZzogbWF0LWdldC10eXBvZ3JhcGh5LWNvbmZpZygkY29uZmlnLW9yLXRoZW1lKTtcbiAgLm1hdC1idXR0b24sIC5tYXQtcmFpc2VkLWJ1dHRvbiwgLm1hdC1pY29uLWJ1dHRvbiwgLm1hdC1zdHJva2VkLWJ1dHRvbixcbiAgLm1hdC1mbGF0LWJ1dHRvbiwgLm1hdC1mYWIsIC5tYXQtbWluaS1mYWIge1xuICAgIGZvbnQ6IHtcbiAgICAgIGZhbWlseTogbWF0LWZvbnQtZmFtaWx5KCRjb25maWcsIGJ1dHRvbik7XG4gICAgICBzaXplOiBtYXQtZm9udC1zaXplKCRjb25maWcsIGJ1dHRvbik7XG4gICAgICB3ZWlnaHQ6IG1hdC1mb250LXdlaWdodCgkY29uZmlnLCBidXR0b24pO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gX21hdC1idXR0b24tZGVuc2l0eSgkY29uZmlnLW9yLXRoZW1lKSB7fVxuXG5AbWl4aW4gbWF0LWJ1dHRvbi10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKSB7XG4gICR0aGVtZTogbWF0LXByaXZhdGUtbGVnYWN5LWdldC10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKTtcbiAgQGluY2x1ZGUgbWF0LXByaXZhdGUtY2hlY2stZHVwbGljYXRlLXRoZW1lLXN0eWxlcygkdGhlbWUsICdtYXQtYnV0dG9uJykge1xuICAgICRjb2xvcjogbWF0LWdldC1jb2xvci1jb25maWcoJHRoZW1lKTtcbiAgICAkZGVuc2l0eTogbWF0LWdldC1kZW5zaXR5LWNvbmZpZygkdGhlbWUpO1xuICAgICR0eXBvZ3JhcGh5OiBtYXQtZ2V0LXR5cG9ncmFwaHktY29uZmlnKCR0aGVtZSk7XG5cbiAgICBAaWYgJGNvbG9yICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LWJ1dHRvbi1jb2xvcigkY29sb3IpO1xuICAgIH1cbiAgICBAaWYgJGRlbnNpdHkgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBfbWF0LWJ1dHRvbi1kZW5zaXR5KCRkZW5zaXR5KTtcbiAgICB9XG4gICAgQGlmICR0eXBvZ3JhcGh5ICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LWJ1dHRvbi10eXBvZ3JhcGh5KCR0eXBvZ3JhcGh5KTtcbiAgICB9XG4gIH1cbn1cblxuXG5cblxuXG5cbi8vIE5vdGUgdGhhdCB0aGlzIGZpbGUgaXMgY2FsbGVkIGBwcml2YXRlYCwgYmVjYXVzZSB0aGUgQVBJcyBpbiBpdCBhcmVuJ3QgcHVibGljIHlldC5cbi8vIE9uY2UgdGhleSdyZSBtYWRlIGF2YWlsYWJsZSwgdGhlIGNvZGUgc2hvdWxkIGJlIG1vdmVkIG91dCBpbnRvIGFuIGBpbmRleC5zY3NzYC5cblxuLy8gVGFrZW4gZnJvbSBtYXQtZGVuc2l0eSB3aXRoIHNtYWxsIG1vZGlmaWNhdGlvbnMgdG8gbm90IHJlbHkgb24gdGhlIG5ldyBTYXNzIG1vZHVsZVxuLy8gc3lzdGVtLCBhbmQgdG8gc3VwcG9ydCBhcmJpdHJhcnkgcHJvcGVydGllcyBpbiBhIGRlbnNpdHkgY29uZmlndXJhdGlvbi5cbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9tYXRlcmlhbC1jb21wb25lbnRzL21hdGVyaWFsLWNvbXBvbmVudHMtd2ViL2Jsb2IvbWFzdGVyL3BhY2thZ2VzL21kYy1kZW5zaXR5XG5cbiRfbWF0LWRlbnNpdHktaW50ZXJ2YWw6IDRweCAhZGVmYXVsdDtcbiRfbWF0LWRlbnNpdHktbWluaW11bS1zY2FsZTogbWluaW11bSAhZGVmYXVsdDtcbiRfbWF0LWRlbnNpdHktbWF4aW11bS1zY2FsZTogbWF4aW11bSAhZGVmYXVsdDtcbiRfbWF0LWRlbnNpdHktc3VwcG9ydGVkLXNjYWxlczogKGRlZmF1bHQsIG1pbmltdW0sIG1heGltdW0pICFkZWZhdWx0O1xuJF9tYXQtZGVuc2l0eS1kZWZhdWx0LXNjYWxlOiAwICFkZWZhdWx0O1xuXG4vLyBXaGV0aGVyIGRlbnNpdHkgc2hvdWxkIGJlIGdlbmVyYXRlZCBhdCByb290LiBUaGlzIHdpbGwgYmUgdGVtcG9yYXJpbHkgc2V0IHRvIGB0cnVlYFxuLy8gd2hlbmV2ZXIgZGVuc2l0eSBzdHlsZXMgZm9yIGxlZ2FjeSB0aGVtZXMgYXJlIGdlbmVyYXRlZC5cbiRtYXQtcHJpdmF0ZS1kZW5zaXR5LWdlbmVyYXRlLWF0LXJvb3Q6IGZhbHNlO1xuLy8gV2hldGhlciBkZW5zaXR5IHN0eWxlcyBzaG91bGQgYmUgZ2VuZXJhdGVkLiBUaGlzIHdpbGwgYmUgdGVtcG9yYXJpbHkgc2V0IHRvIGBmYWxzZWAgaWZcbi8vIGR1cGxpY2F0ZSBkZW5zaXR5IHN0eWxlcyBmb3IgYSBsZWdhY3kgdGhlbWUgd291bGQgYmUgZ2VuZXJhdGVkLiBGb3IgbGVnYWN5IHRoZW1lcyxcbi8vIHdlIGFsd2F5cyBnZW5lcmF0ZSB0aGUgZGVmYXVsdCBkZW5zaXR5ICoqb25seSBvbmNlKiogYXQgcm9vdC5cbiRtYXQtcHJpdmF0ZS1kZW5zaXR5LWdlbmVyYXRlLXN0eWxlczogdHJ1ZTtcblxuLy8gTWl4aW4gdGhhdCBjYW4gYmUgdXNlZCB0byB3cmFwIGRlbnNpdHkgc3R5bGVzIG9mIGdpdmVuIGNvbXBvbmVudHMuIFRoZSBtaXhpbiB3aWxsXG4vLyBtb3ZlIHRoZSBkZW5zaXR5IHN0eWxlcyB0byByb290IGlmIHRoZSBgJG1hdC1wcml2YXRlLWRlbnNpdHktZ2VuZXJhdGUtYXQtcm9vdGAgZ2xvYmFsIHZhcmlhYmxlXG4vLyBpcyBzZXQuIElmIGAkbWF0LXByaXZhdGUtZGVuc2l0eS1nZW5lcmF0ZS1zdHlsZXNgIGlzIHNldCB0byBgZmFsc2VgLCBnZW5lcmF0aW9uIG9mIGRlbnNpdHlcbi8vIHN0eWxlcyB3cmFwcGVkIGluIHRoaXMgbWl4aW4gaXMgc2tpcHBlZC4gVGhpcyBtaXhpbiBleGlzdHMgdG8gaW1wcm92ZSBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eVxuLy8gb2YgdGhlIG5ldyB0aGVtaW5nIEFQSSB3aGVyZSBkZW5zaXR5IHN0eWxlcyBhcmUgaW5jbHVkZWQgYXMgcGFydCBvZiB0aGVtZXMuIFByZXZpb3VzbHksXG4vLyBkZW5zaXR5IHN0eWxlcyBvZiBjb21wb25lbnRzIHdlcmUgcGFydCBvZiB0aGVpciBiYXNlIHN0eWxlcy4gV2l0aCB0aGUgbmV3IEFQSSwgdGhleSBhcmVcbi8vIHBhcnQgb2YgdGhlIHRoZW1pbmcgc3lzdGVtLiBUaGUgYDwuLj4tdGhlbWVgIG1peGlucyBnZW5lcmF0ZSBkZW5zaXR5IGJ5IGRlZmF1bHQgdW5sZXNzXG4vLyB0aGUgZGVuc2l0eSBjb25maWd1cmF0aW9uIGlzIGV4cGxpY2l0bHkgc3BlY2lmaWVkIGFzIHBlciBuZXcgQVBJLiBUaGlzIG1lYW5zLCB0aGF0IHByb2plY3RzXG4vLyB1c2luZyBgPC4uPi10aGVtZWAgbWl4aW5zIGZvciBzZXBhcmF0ZSB0aGVtZXMgKGxpa2UgYC5kYXJrLXRoZW1lYCkgd2lsbCBjYXVzZSBkdXBsaWNhdGVcbi8vIGRlbnNpdHkgc3R5bGVzLiBUaGlzIGlzIGJyZWFraW5nIGFzIGl0IGluY3JlYXNlcyBzcGVjaWZpY2l0eSBvZiBkZW5zaXR5IHN0eWxlcy4gVGhpcyBtaXhpblxuLy8gcHJvdmlkZXMgYW4gQVBJIHRvIGNvbnRyb2wgZ2VuZXJhdGlvbiBvZiBkZW5zaXR5IHN0eWxlcyBzbyB0aGF0IHdlIGNhbiBlbnN1cmUgdGhleSBhcmUgb25seVxuLy8gY3JlYXRlZCAqb25jZSogYW5kIGF0IHJvb3QuXG5AbWl4aW4gbWF0LXByaXZhdGUtZGVuc2l0eS1sZWdhY3ktY29tcGF0aWJpbGl0eSgpIHtcbiAgQGlmICRtYXQtcHJpdmF0ZS1kZW5zaXR5LWdlbmVyYXRlLXN0eWxlcyBhbmQgJG1hdC1wcml2YXRlLWRlbnNpdHktZ2VuZXJhdGUtYXQtcm9vdCB7XG4gICAgQGF0LXJvb3Qge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRtYXQtcHJpdmF0ZS1kZW5zaXR5LWdlbmVyYXRlLXN0eWxlcyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQGZ1bmN0aW9uIG1hdC1wcml2YXRlLWRlbnNpdHktcHJvcC12YWx1ZSgkZGVuc2l0eS1jb25maWcsICRkZW5zaXR5LXNjYWxlLCAkcHJvcGVydHktbmFtZSkge1xuICBAaWYgKHR5cGUtb2YoJGRlbnNpdHktc2NhbGUpID09ICdzdHJpbmcnIGFuZFxuICAgICAgaW5kZXgoJGxpc3Q6ICRfbWF0LWRlbnNpdHktc3VwcG9ydGVkLXNjYWxlcywgJHZhbHVlOiAkZGVuc2l0eS1zY2FsZSkgPT0gbnVsbCkge1xuICAgIEBlcnJvciAnbWF0LWRlbnNpdHk6IFN1cHBvcnRlZCBkZW5zaXR5IHNjYWxlcyAjeyRfbWF0LWRlbnNpdHktc3VwcG9ydGVkLXNjYWxlc30sICcgICtcbiAgICAgICdidXQgcmVjZWl2ZWQgI3skZGVuc2l0eS1zY2FsZX0uJztcbiAgfVxuXG4gICR2YWx1ZTogbnVsbDtcbiAgJHByb3BlcnR5LXNjYWxlLW1hcDogbWFwLWdldCgkZGVuc2l0eS1jb25maWcsICRwcm9wZXJ0eS1uYW1lKTtcblxuICBAaWYgbWFwLWhhcy1rZXkoJHByb3BlcnR5LXNjYWxlLW1hcCwgJGRlbnNpdHktc2NhbGUpIHtcbiAgICAkdmFsdWU6IG1hcC1nZXQoJHByb3BlcnR5LXNjYWxlLW1hcCwgJGRlbnNpdHktc2NhbGUpO1xuICB9XG4gIEBlbHNlIHtcbiAgICAkdmFsdWU6IG1hcC1nZXQoJHByb3BlcnR5LXNjYWxlLW1hcCwgZGVmYXVsdCkgKyAkZGVuc2l0eS1zY2FsZSAqICRfbWF0LWRlbnNpdHktaW50ZXJ2YWw7XG4gIH1cblxuICAkbWluLXZhbHVlOiBtYXAtZ2V0KCRwcm9wZXJ0eS1zY2FsZS1tYXAsICRfbWF0LWRlbnNpdHktbWluaW11bS1zY2FsZSk7XG4gICRtYXgtdmFsdWU6IG1hcC1nZXQoJHByb3BlcnR5LXNjYWxlLW1hcCwgJF9tYXQtZGVuc2l0eS1tYXhpbXVtLXNjYWxlKTtcblxuICBAaWYgKCR2YWx1ZSA8ICRtaW4tdmFsdWUgb3IgJHZhbHVlID4gJG1heC12YWx1ZSkge1xuICAgIEBlcnJvciAnbWF0LWRlbnNpdHk6ICN7JHByb3BlcnR5LW5hbWV9IG11c3QgYmUgYmV0d2VlbiAjeyRtaW4tdmFsdWV9IGFuZCAnICtcbiAgICAgICcjeyRtYXgtdmFsdWV9IChpbmNsdXNpdmUpLCBidXQgcmVjZWl2ZWQgI3skdmFsdWV9Lic7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuJG1hdC1idXR0b24tdG9nZ2xlLXN0YW5kYXJkLWhlaWdodDogNDhweCAhZGVmYXVsdDtcbi8vIE1pbmltdW0gaGVpZ2h0IGZvciBoaWdoZXN0IGRlbnNpdHkgY2FuIHZhcnkgYmFzZWQgb24gdGhlIGNvbnRlbnQgdGhhdCBkZXZlbG9wZXJzXG4vLyBwcm9qZWN0IGludG8gYnV0dG9uLXRvZ2dsZSdzLiBXZSB1c2UgYSBtaW5pbXVtIG9mIGAyNHB4YCB0aG91Z2ggYmVjYXVzZSBjb21tb25seVxuLy8gaWNvbnMgb3IgdGV4dCBhcmUgZGlzcGxheWVkLiBJY29ucyBieSBkZWZhdWx0IGhhdmUgYSBzaXplIG9mIGAyNHB4YC5cbiRtYXQtYnV0dG9uLXRvZ2dsZS1zdGFuZGFyZC1taW5pbXVtLWhlaWdodDogMjRweCAhZGVmYXVsdDtcbiRtYXQtYnV0dG9uLXRvZ2dsZS1zdGFuZGFyZC1tYXhpbXVtLWhlaWdodDogJG1hdC1idXR0b24tdG9nZ2xlLXN0YW5kYXJkLWhlaWdodCAhZGVmYXVsdDtcblxuJG1hdC1idXR0b24tdG9nZ2xlLXN0YW5kYXJkLWRlbnNpdHktY29uZmlnOiAoXG4gIGhlaWdodDogKFxuICAgIGRlZmF1bHQ6ICRtYXQtYnV0dG9uLXRvZ2dsZS1zdGFuZGFyZC1oZWlnaHQsXG4gICAgbWF4aW11bTogJG1hdC1idXR0b24tdG9nZ2xlLXN0YW5kYXJkLW1heGltdW0taGVpZ2h0LFxuICAgIG1pbmltdW06ICRtYXQtYnV0dG9uLXRvZ2dsZS1zdGFuZGFyZC1taW5pbXVtLWhlaWdodCxcbiAgKVxuKSAhZGVmYXVsdDtcblxuXG5AbWl4aW4gbWF0LWJ1dHRvbi10b2dnbGUtY29sb3IoJGNvbmZpZy1vci10aGVtZSkge1xuICAkY29uZmlnOiBtYXQtZ2V0LWNvbG9yLWNvbmZpZygkY29uZmlnLW9yLXRoZW1lKTtcbiAgJGZvcmVncm91bmQ6IG1hcC1nZXQoJGNvbmZpZywgZm9yZWdyb3VuZCk7XG4gICRiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRjb25maWcsIGJhY2tncm91bmQpO1xuICAkZGl2aWRlci1jb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCBkaXZpZGVyKTtcblxuICAubWF0LWJ1dHRvbi10b2dnbGUtc3RhbmRhbG9uZSxcbiAgLm1hdC1idXR0b24tdG9nZ2xlLWdyb3VwIHtcbiAgICBAaW5jbHVkZSBtYXQtcHJpdmF0ZS10aGVtZS1lbGV2YXRpb24oMiwgJGNvbmZpZyk7XG4gIH1cblxuICAubWF0LWJ1dHRvbi10b2dnbGUtc3RhbmRhbG9uZS5tYXQtYnV0dG9uLXRvZ2dsZS1hcHBlYXJhbmNlLXN0YW5kYXJkLFxuICAubWF0LWJ1dHRvbi10b2dnbGUtZ3JvdXAtYXBwZWFyYW5jZS1zdGFuZGFyZCB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxuXG4gIC5tYXQtYnV0dG9uLXRvZ2dsZSB7XG4gICAgY29sb3I6IG1hdC1jb2xvcigkZm9yZWdyb3VuZCwgaGludC10ZXh0KTtcblxuICAgIC5tYXQtYnV0dG9uLXRvZ2dsZS1mb2N1cy1vdmVybGF5IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hdC1jb2xvcigkYmFja2dyb3VuZCwgZm9jdXNlZC1idXR0b24pO1xuICAgIH1cbiAgfVxuXG4gIC5tYXQtYnV0dG9uLXRvZ2dsZS1hcHBlYXJhbmNlLXN0YW5kYXJkIHtcbiAgICBjb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCB0ZXh0KTtcbiAgICBiYWNrZ3JvdW5kOiBtYXQtY29sb3IoJGJhY2tncm91bmQsIGNhcmQpO1xuXG4gICAgLm1hdC1idXR0b24tdG9nZ2xlLWZvY3VzLW92ZXJsYXkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWF0LWNvbG9yKCRiYWNrZ3JvdW5kLCBmb2N1c2VkLWJ1dHRvbiwgMSk7XG4gICAgfVxuICB9XG5cbiAgLm1hdC1idXR0b24tdG9nZ2xlLWdyb3VwLWFwcGVhcmFuY2Utc3RhbmRhcmQgLm1hdC1idXR0b24tdG9nZ2xlICsgLm1hdC1idXR0b24tdG9nZ2xlIHtcbiAgICBib3JkZXItbGVmdDogc29saWQgMXB4ICRkaXZpZGVyLWNvbG9yO1xuICB9XG5cbiAgW2Rpcj0ncnRsJ10gLm1hdC1idXR0b24tdG9nZ2xlLWdyb3VwLWFwcGVhcmFuY2Utc3RhbmRhcmQgLm1hdC1idXR0b24tdG9nZ2xlICsgLm1hdC1idXR0b24tdG9nZ2xlIHtcbiAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICBib3JkZXItcmlnaHQ6IHNvbGlkIDFweCAkZGl2aWRlci1jb2xvcjtcbiAgfVxuXG4gIC5tYXQtYnV0dG9uLXRvZ2dsZS1ncm91cC1hcHBlYXJhbmNlLXN0YW5kYXJkLm1hdC1idXR0b24tdG9nZ2xlLXZlcnRpY2FsIHtcbiAgICAubWF0LWJ1dHRvbi10b2dnbGUgKyAubWF0LWJ1dHRvbi10b2dnbGUge1xuICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICBib3JkZXItdG9wOiBzb2xpZCAxcHggJGRpdmlkZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm1hdC1idXR0b24tdG9nZ2xlLWNoZWNrZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1hdC1jb2xvcigkYmFja2dyb3VuZCwgc2VsZWN0ZWQtYnV0dG9uKTtcbiAgICBjb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCBzZWNvbmRhcnktdGV4dCk7XG5cbiAgICAmLm1hdC1idXR0b24tdG9nZ2xlLWFwcGVhcmFuY2Utc3RhbmRhcmQge1xuICAgICAgY29sb3I6IG1hdC1jb2xvcigkZm9yZWdyb3VuZCwgdGV4dCk7XG4gICAgfVxuICB9XG5cbiAgLm1hdC1idXR0b24tdG9nZ2xlLWRpc2FibGVkIHtcbiAgICBjb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCBkaXNhYmxlZC1idXR0b24pO1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1hdC1jb2xvcigkYmFja2dyb3VuZCwgZGlzYWJsZWQtYnV0dG9uLXRvZ2dsZSk7XG5cbiAgICAmLm1hdC1idXR0b24tdG9nZ2xlLWFwcGVhcmFuY2Utc3RhbmRhcmQge1xuICAgICAgYmFja2dyb3VuZDogbWF0LWNvbG9yKCRiYWNrZ3JvdW5kLCBjYXJkKTtcbiAgICB9XG5cbiAgICAmLm1hdC1idXR0b24tdG9nZ2xlLWNoZWNrZWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWF0LWNvbG9yKCRiYWNrZ3JvdW5kLCBzZWxlY3RlZC1kaXNhYmxlZC1idXR0b24pO1xuICAgIH1cbiAgfVxuXG4gIC5tYXQtYnV0dG9uLXRvZ2dsZS1zdGFuZGFsb25lLm1hdC1idXR0b24tdG9nZ2xlLWFwcGVhcmFuY2Utc3RhbmRhcmQsXG4gIC5tYXQtYnV0dG9uLXRvZ2dsZS1ncm91cC1hcHBlYXJhbmNlLXN0YW5kYXJkIHtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAkZGl2aWRlci1jb2xvcjtcbiAgfVxufVxuXG5AbWl4aW4gbWF0LWJ1dHRvbi10b2dnbGUtdHlwb2dyYXBoeSgkY29uZmlnLW9yLXRoZW1lKSB7XG4gICRjb25maWc6IG1hdC1nZXQtdHlwb2dyYXBoeS1jb25maWcoJGNvbmZpZy1vci10aGVtZSk7XG4gIC5tYXQtYnV0dG9uLXRvZ2dsZSB7XG4gICAgZm9udC1mYW1pbHk6IG1hdC1mb250LWZhbWlseSgkY29uZmlnKTtcbiAgfVxufVxuXG5AbWl4aW4gbWF0LWJ1dHRvbi10b2dnbGUtZGVuc2l0eSgkY29uZmlnLW9yLXRoZW1lKSB7XG4gICRkZW5zaXR5LXNjYWxlOiBtYXQtZ2V0LWRlbnNpdHktY29uZmlnKCRjb25maWctb3ItdGhlbWUpO1xuICAkc3RhbmRhcmQtaGVpZ2h0OiBtYXQtcHJpdmF0ZS1kZW5zaXR5LXByb3AtdmFsdWUoXG4gICAgICAkbWF0LWJ1dHRvbi10b2dnbGUtc3RhbmRhcmQtZGVuc2l0eS1jb25maWcsICRkZW5zaXR5LXNjYWxlLCBoZWlnaHQpO1xuXG4gIEBpbmNsdWRlIG1hdC1wcml2YXRlLWRlbnNpdHktbGVnYWN5LWNvbXBhdGliaWxpdHkoKSB7XG4gICAgLm1hdC1idXR0b24tdG9nZ2xlLWFwcGVhcmFuY2Utc3RhbmRhcmQgLm1hdC1idXR0b24tdG9nZ2xlLWxhYmVsLWNvbnRlbnQge1xuICAgICAgbGluZS1oZWlnaHQ6ICRzdGFuZGFyZC1oZWlnaHQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYXQtYnV0dG9uLXRvZ2dsZS10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKSB7XG4gICR0aGVtZTogbWF0LXByaXZhdGUtbGVnYWN5LWdldC10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKTtcbiAgQGluY2x1ZGUgbWF0LXByaXZhdGUtY2hlY2stZHVwbGljYXRlLXRoZW1lLXN0eWxlcygkdGhlbWUsICdtYXQtYnV0dG9uLXRvZ2dsZScpIHtcbiAgICAkY29sb3I6IG1hdC1nZXQtY29sb3ItY29uZmlnKCR0aGVtZSk7XG4gICAgJGRlbnNpdHk6IG1hdC1nZXQtZGVuc2l0eS1jb25maWcoJHRoZW1lKTtcbiAgICAkdHlwb2dyYXBoeTogbWF0LWdldC10eXBvZ3JhcGh5LWNvbmZpZygkdGhlbWUpO1xuXG4gICAgQGlmICRjb2xvciAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIG1hdC1idXR0b24tdG9nZ2xlLWNvbG9yKCRjb2xvcik7XG4gICAgfVxuICAgIEBpZiAkZGVuc2l0eSAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIG1hdC1idXR0b24tdG9nZ2xlLWRlbnNpdHkoJGRlbnNpdHkpO1xuICAgIH1cbiAgICBAaWYgJHR5cG9ncmFwaHkgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBtYXQtYnV0dG9uLXRvZ2dsZS10eXBvZ3JhcGh5KCR0eXBvZ3JhcGh5KTtcbiAgICB9XG4gIH1cbn1cblxuXG5cblxuXG5cblxuQG1peGluIG1hdC1jYXJkLWNvbG9yKCRjb25maWctb3ItdGhlbWUpIHtcbiAgJGNvbmZpZzogbWF0LWdldC1jb2xvci1jb25maWcoJGNvbmZpZy1vci10aGVtZSk7XG4gICRiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRjb25maWcsIGJhY2tncm91bmQpO1xuICAkZm9yZWdyb3VuZDogbWFwLWdldCgkY29uZmlnLCBmb3JlZ3JvdW5kKTtcblxuICAubWF0LWNhcmQge1xuICAgIEBpbmNsdWRlIG1hdC1wcml2YXRlLXRoZW1lLW92ZXJyaWRhYmxlLWVsZXZhdGlvbigxLCAkY29uZmlnKTtcbiAgICBiYWNrZ3JvdW5kOiBtYXQtY29sb3IoJGJhY2tncm91bmQsIGNhcmQpO1xuICAgIGNvbG9yOiBtYXQtY29sb3IoJGZvcmVncm91bmQsIHRleHQpO1xuXG4gICAgLy8gTmVlZHMgZXh0cmEgc3BlY2lmaWNpdHkgdG8gYmUgYWJsZSB0byBvdmVycmlkZSB0aGUgZWxldmF0aW9uIHNlbGVjdG9ycy5cbiAgICAmLm1hdC1jYXJkLWZsYXQge1xuICAgICAgQGluY2x1ZGUgbWF0LXByaXZhdGUtdGhlbWUtb3ZlcnJpZGFibGUtZWxldmF0aW9uKDAsICRjb25maWcpO1xuICAgIH1cbiAgfVxuXG4gIC5tYXQtY2FyZC1zdWJ0aXRsZSB7XG4gICAgY29sb3I6IG1hdC1jb2xvcigkZm9yZWdyb3VuZCwgc2Vjb25kYXJ5LXRleHQpO1xuICB9XG59XG5cbkBtaXhpbiBtYXQtY2FyZC10eXBvZ3JhcGh5KCRjb25maWctb3ItdGhlbWUpIHtcbiAgJGNvbmZpZzogbWF0LWdldC10eXBvZ3JhcGh5LWNvbmZpZygkY29uZmlnLW9yLXRoZW1lKTtcbiAgLm1hdC1jYXJkIHtcbiAgICBmb250LWZhbWlseTogbWF0LWZvbnQtZmFtaWx5KCRjb25maWcpO1xuICB9XG5cbiAgLm1hdC1jYXJkLXRpdGxlIHtcbiAgICBmb250OiB7XG4gICAgICBzaXplOiBtYXQtZm9udC1zaXplKCRjb25maWcsIGhlYWRsaW5lKTtcbiAgICAgIHdlaWdodDogbWF0LWZvbnQtd2VpZ2h0KCRjb25maWcsIHRpdGxlKTtcbiAgICB9XG4gIH1cblxuICAubWF0LWNhcmQtaGVhZGVyIC5tYXQtY2FyZC10aXRsZSB7XG4gICAgZm9udC1zaXplOiBtYXQtZm9udC1zaXplKCRjb25maWcsIHRpdGxlKTtcbiAgfVxuXG4gIC5tYXQtY2FyZC1zdWJ0aXRsZSxcbiAgLm1hdC1jYXJkLWNvbnRlbnQge1xuICAgIGZvbnQtc2l6ZTogbWF0LWZvbnQtc2l6ZSgkY29uZmlnLCBib2R5LTEpO1xuICB9XG59XG5cbkBtaXhpbiBfbWF0LWNhcmQtZGVuc2l0eSgkY29uZmlnLW9yLXRoZW1lKSB7fVxuXG5AbWl4aW4gbWF0LWNhcmQtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZykge1xuICAkdGhlbWU6IG1hdC1wcml2YXRlLWxlZ2FjeS1nZXQtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1wcml2YXRlLWNoZWNrLWR1cGxpY2F0ZS10aGVtZS1zdHlsZXMoJHRoZW1lLCAnbWF0LWNhcmQnKSB7XG4gICAgJGNvbG9yOiBtYXQtZ2V0LWNvbG9yLWNvbmZpZygkdGhlbWUpO1xuICAgICRkZW5zaXR5OiBtYXQtZ2V0LWRlbnNpdHktY29uZmlnKCR0aGVtZSk7XG4gICAgJHR5cG9ncmFwaHk6IG1hdC1nZXQtdHlwb2dyYXBoeS1jb25maWcoJHRoZW1lKTtcblxuICAgIEBpZiAkY29sb3IgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBtYXQtY2FyZC1jb2xvcigkY29sb3IpO1xuICAgIH1cbiAgICBAaWYgJGRlbnNpdHkgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBfbWF0LWNhcmQtZGVuc2l0eSgkZGVuc2l0eSk7XG4gICAgfVxuICAgIEBpZiAkdHlwb2dyYXBoeSAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIG1hdC1jYXJkLXR5cG9ncmFwaHkoJHR5cG9ncmFwaHkpO1xuICAgIH1cbiAgfVxufVxuXG5cblxuXG5cbkBtaXhpbiBtYXQtY2hlY2tib3gtY29sb3IoJGNvbmZpZy1vci10aGVtZSkge1xuICAkY29uZmlnOiBtYXQtZ2V0LWNvbG9yLWNvbmZpZygkY29uZmlnLW9yLXRoZW1lKTtcbiAgJGlzLWRhcmstdGhlbWU6IG1hcC1nZXQoJGNvbmZpZywgaXMtZGFyayk7XG4gICRwcmltYXJ5OiBtYXAtZ2V0KCRjb25maWcsIHByaW1hcnkpO1xuICAkYWNjZW50OiBtYXAtZ2V0KCRjb25maWcsIGFjY2VudCk7XG4gICR3YXJuOiBtYXAtZ2V0KCRjb25maWcsIHdhcm4pO1xuICAkYmFja2dyb3VuZDogbWFwLWdldCgkY29uZmlnLCBiYWNrZ3JvdW5kKTtcbiAgJGZvcmVncm91bmQ6IG1hcC1nZXQoJGNvbmZpZywgZm9yZWdyb3VuZCk7XG5cblxuICAvLyBUaGUgY29sb3Igb2YgdGhlIGNoZWNrYm94J3MgY2hlY2ttYXJrIC8gbWl4ZWRtYXJrLlxuICAkY2hlY2tib3gtbWFyay1jb2xvcjogbWF0LWNvbG9yKCRiYWNrZ3JvdW5kLCBiYWNrZ3JvdW5kKTtcblxuICAvLyBOT1RFKHRyYXZpc2thdWZtYW4pOiBXaGlsZSB0aGUgc3BlYyBjYWxscyBmb3IgdHJhbnNsdWNlbnQgYmxhY2tzL3doaXRlcyBmb3IgZGlzYWJsZWQgY29sb3JzLFxuICAvLyB0aGlzIGRvZXMgbm90IHdvcmsgd2VsbCB3aXRoIGVsZW1lbnRzIGxheWVyZWQgb24gdG9wIG9mIG9uZSBhbm90aGVyLiBUbyBnZXQgYXJvdW5kIHRoaXMgd2VcbiAgLy8gYmxlbmQgdGhlIGNvbG9ycyB0b2dldGhlciBiYXNlZCBvbiB0aGUgYmFzZSBjb2xvciBhbmQgdGhlIHRoZW1lIGJhY2tncm91bmQuXG4gICR3aGl0ZS0zMHBjdC1vcGFjaXR5LW9uLWRhcms6ICM2ODY4Njg7XG4gICRibGFjay0yNnBjdC1vcGFjaXR5LW9uLWxpZ2h0OiAjYjBiMGIwO1xuICAkZGlzYWJsZWQtY29sb3I6IGlmKCRpcy1kYXJrLXRoZW1lLCAkd2hpdGUtMzBwY3Qtb3BhY2l0eS1vbi1kYXJrLCAkYmxhY2stMjZwY3Qtb3BhY2l0eS1vbi1saWdodCk7XG5cbiAgLm1hdC1jaGVja2JveC1mcmFtZSB7XG4gICAgYm9yZGVyLWNvbG9yOiBtYXQtY29sb3IoJGZvcmVncm91bmQsIHNlY29uZGFyeS10ZXh0KTtcbiAgfVxuXG4gIC5tYXQtY2hlY2tib3gtY2hlY2ttYXJrIHtcbiAgICBmaWxsOiAkY2hlY2tib3gtbWFyay1jb2xvcjtcbiAgfVxuXG4gIC5tYXQtY2hlY2tib3gtY2hlY2ttYXJrLXBhdGgge1xuICAgIC8vICFpbXBvcnRhbnQgaXMgbmVlZGVkIGhlcmUgYmVjYXVzZSBhIHN0cm9rZSBtdXN0IGJlIHNldCBhcyBhblxuICAgIC8vIGF0dHJpYnV0ZSBvbiB0aGUgU1ZHIGluIG9yZGVyIGZvciBsaW5lIGFuaW1hdGlvbiB0byB3b3JrIHByb3Blcmx5LlxuICAgIHN0cm9rZTogJGNoZWNrYm94LW1hcmstY29sb3IgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tYXQtY2hlY2tib3gtbWl4ZWRtYXJrIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2hlY2tib3gtbWFyay1jb2xvcjtcbiAgfVxuXG4gIC5tYXQtY2hlY2tib3gtaW5kZXRlcm1pbmF0ZSwgLm1hdC1jaGVja2JveC1jaGVja2VkIHtcbiAgICAmLm1hdC1wcmltYXJ5IC5tYXQtY2hlY2tib3gtYmFja2dyb3VuZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXQtY29sb3IoJHByaW1hcnkpO1xuICAgIH1cblxuICAgICYubWF0LWFjY2VudCAubWF0LWNoZWNrYm94LWJhY2tncm91bmQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWF0LWNvbG9yKCRhY2NlbnQpO1xuICAgIH1cblxuICAgICYubWF0LXdhcm4gLm1hdC1jaGVja2JveC1iYWNrZ3JvdW5kIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hdC1jb2xvcigkd2Fybik7XG4gICAgfVxuICB9XG5cbiAgLm1hdC1jaGVja2JveC1kaXNhYmxlZCB7XG4gICAgJi5tYXQtY2hlY2tib3gtY2hlY2tlZCxcbiAgICAmLm1hdC1jaGVja2JveC1pbmRldGVybWluYXRlIHtcbiAgICAgIC5tYXQtY2hlY2tib3gtYmFja2dyb3VuZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkaXNhYmxlZC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOm5vdCgubWF0LWNoZWNrYm94LWNoZWNrZWQpIHtcbiAgICAgIC5tYXQtY2hlY2tib3gtZnJhbWUge1xuICAgICAgICBib3JkZXItY29sb3I6ICRkaXNhYmxlZC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubWF0LWNoZWNrYm94LWxhYmVsIHtcbiAgICAgIGNvbG9yOiBtYXQtY29sb3IoJGZvcmVncm91bmQsIHNlY29uZGFyeS10ZXh0KTtcbiAgICB9XG4gIH1cblxuICAvLyBTd2l0Y2ggdGhpcyB0byBhIHNvbGlkIGNvbG9yIHNpbmNlIHdlJ3JlIHVzaW5nIGBvcGFjaXR5YFxuICAvLyB0byBjb250cm9sIGhvdyBvcGFxdWUgdGhlIHJpcHBsZSBzaG91bGQgYmUuXG4gIC5tYXQtY2hlY2tib3ggLm1hdC1yaXBwbGUtZWxlbWVudCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldChtYXAtZ2V0KCRjb25maWcsIGZvcmVncm91bmQpLCBiYXNlKTtcbiAgfVxuXG4gIC5tYXQtY2hlY2tib3gtY2hlY2tlZDpub3QoLm1hdC1jaGVja2JveC1kaXNhYmxlZCksXG4gIC5tYXQtY2hlY2tib3g6YWN0aXZlOm5vdCgubWF0LWNoZWNrYm94LWRpc2FibGVkKSB7XG4gICAgJi5tYXQtcHJpbWFyeSAubWF0LXJpcHBsZS1lbGVtZW50IHtcbiAgICAgIGJhY2tncm91bmQ6IG1hdC1jb2xvcigkcHJpbWFyeSk7XG4gICAgfVxuXG4gICAgJi5tYXQtYWNjZW50IC5tYXQtcmlwcGxlLWVsZW1lbnQge1xuICAgICAgYmFja2dyb3VuZDogbWF0LWNvbG9yKCRhY2NlbnQpO1xuICAgIH1cblxuICAgICYubWF0LXdhcm4gLm1hdC1yaXBwbGUtZWxlbWVudCB7XG4gICAgICBiYWNrZ3JvdW5kOiBtYXQtY29sb3IoJHdhcm4pO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWF0LWNoZWNrYm94LXR5cG9ncmFwaHkoJGNvbmZpZy1vci10aGVtZSkge1xuICAkY29uZmlnOiBtYXQtZ2V0LXR5cG9ncmFwaHktY29uZmlnKCRjb25maWctb3ItdGhlbWUpO1xuICAubWF0LWNoZWNrYm94IHtcbiAgICBmb250LWZhbWlseTogbWF0LWZvbnQtZmFtaWx5KCRjb25maWcpO1xuICB9XG5cbiAgLy8gVE9ETyhrYXJhKTogUmVtb3ZlIHRoaXMgc3R5bGUgd2hlbiBmaXhpbmcgdmVydGljYWwgYmFzZWxpbmVcbiAgLm1hdC1jaGVja2JveC1sYXlvdXQgLm1hdC1jaGVja2JveC1sYWJlbCB7XG4gICAgbGluZS1oZWlnaHQ6IG1hdC1saW5lLWhlaWdodCgkY29uZmlnLCBib2R5LTIpO1xuICB9XG59XG5cbkBtaXhpbiBfbWF0LWNoZWNrYm94LWRlbnNpdHkoJGNvbmZpZy1vci10aGVtZSkge31cblxuQG1peGluIG1hdC1jaGVja2JveC10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKSB7XG4gICR0aGVtZTogbWF0LXByaXZhdGUtbGVnYWN5LWdldC10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKTtcbiAgQGluY2x1ZGUgbWF0LXByaXZhdGUtY2hlY2stZHVwbGljYXRlLXRoZW1lLXN0eWxlcygkdGhlbWUsICdtYXQtY2hlY2tib3gnKSB7XG4gICAgJGNvbG9yOiBtYXQtZ2V0LWNvbG9yLWNvbmZpZygkdGhlbWUpO1xuICAgICRkZW5zaXR5OiBtYXQtZ2V0LWRlbnNpdHktY29uZmlnKCR0aGVtZSk7XG4gICAgJHR5cG9ncmFwaHk6IG1hdC1nZXQtdHlwb2dyYXBoeS1jb25maWcoJHRoZW1lKTtcblxuICAgIEBpZiAkY29sb3IgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBtYXQtY2hlY2tib3gtY29sb3IoJGNvbG9yKTtcbiAgICB9XG4gICAgQGlmICRkZW5zaXR5ICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgX21hdC1jaGVja2JveC1kZW5zaXR5KCRkZW5zaXR5KTtcbiAgICB9XG4gICAgQGlmICR0eXBvZ3JhcGh5ICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LWNoZWNrYm94LXR5cG9ncmFwaHkoJHR5cG9ncmFwaHkpO1xuICAgIH1cbiAgfVxufVxuXG5cblxuXG5cblxuJG1hdC1jaGlwLXJlbW92ZS1mb250LXNpemU6IDE4cHg7XG5cbkBtaXhpbiBfbWF0LWNoaXAtZWxlbWVudC1jb2xvcigkZm9yZWdyb3VuZCwgJGJhY2tncm91bmQpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIGNvbG9yOiAkZm9yZWdyb3VuZDtcblxuICAubWF0LWNoaXAtcmVtb3ZlIHtcbiAgICBjb2xvcjogJGZvcmVncm91bmQ7XG4gICAgb3BhY2l0eTogMC40O1xuICB9XG59XG5cblxuLy8gQXBwbGllcyB0aGUgYmFja2dyb3VuZCBjb2xvciBmb3IgYSByaXBwbGUgZWxlbWVudC5cbi8vIElmIHRoZSBjb2xvciB2YWx1ZSBwcm92aWRlZCBpcyBub3QgYSBTYXNzIGNvbG9yLFxuLy8gd2UgYXNzdW1lIHRoYXQgd2UndmUgYmVlbiBnaXZlbiBhIENTUyB2YXJpYWJsZS5cbi8vIFNpbmNlIHdlIGNhbid0IHBlcmZvcm0gYWxwaGEtYmxlbmRpbmcgb24gYSBDU1MgdmFyaWFibGUsXG4vLyB3ZSBpbnN0ZWFkIGFkZCB0aGUgb3BhY2l0eSBkaXJlY3RseSB0byB0aGUgcmlwcGxlIGVsZW1lbnQuXG5AbWl4aW4gX21hdC1jaGlwcy1yaXBwbGUtYmFja2dyb3VuZCgkcGFsZXR0ZSwgJGRlZmF1bHQtY29udHJhc3QsICRvcGFjaXR5KSB7XG4gICRiYWNrZ3JvdW5kLWNvbG9yOiBtYXQtY29sb3IoJHBhbGV0dGUsICRkZWZhdWx0LWNvbnRyYXN0LCAkb3BhY2l0eSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWNvbG9yO1xuICBAaWYgKHR5cGUtb2YoJGJhY2tncm91bmQtY29sb3IpICE9IGNvbG9yKSB7XG4gICAgb3BhY2l0eTogJG9wYWNpdHk7XG4gIH1cbn1cblxuQG1peGluIF9tYXQtY2hpcC10aGVtZS1jb2xvcigkcGFsZXR0ZSkge1xuICBAaW5jbHVkZSBfbWF0LWNoaXAtZWxlbWVudC1jb2xvcihtYXQtY29sb3IoJHBhbGV0dGUsIGRlZmF1bHQtY29udHJhc3QpLCBtYXQtY29sb3IoJHBhbGV0dGUpKTtcblxuICAubWF0LXJpcHBsZS1lbGVtZW50IHtcbiAgICBAaW5jbHVkZSBfbWF0LWNoaXBzLXJpcHBsZS1iYWNrZ3JvdW5kKCRwYWxldHRlLCBkZWZhdWx0LWNvbnRyYXN0LCAwLjEpO1xuICB9XG59XG5cbkBtaXhpbiBtYXQtY2hpcHMtY29sb3IoJGNvbmZpZy1vci10aGVtZSkge1xuICAkY29uZmlnOiBtYXQtZ2V0LWNvbG9yLWNvbmZpZygkY29uZmlnLW9yLXRoZW1lKTtcbiAgJGlzLWRhcmstdGhlbWU6IG1hcC1nZXQoJGNvbmZpZywgaXMtZGFyayk7XG4gICRwcmltYXJ5OiBtYXAtZ2V0KCRjb25maWcsIHByaW1hcnkpO1xuICAkYWNjZW50OiBtYXAtZ2V0KCRjb25maWcsIGFjY2VudCk7XG4gICR3YXJuOiBtYXAtZ2V0KCRjb25maWcsIHdhcm4pO1xuICAkYmFja2dyb3VuZDogbWFwLWdldCgkY29uZmlnLCBiYWNrZ3JvdW5kKTtcbiAgJGZvcmVncm91bmQ6IG1hcC1nZXQoJGNvbmZpZywgZm9yZWdyb3VuZCk7XG5cbiAgJHVuc2VsZWN0ZWQtYmFja2dyb3VuZDogbWF0LWNvbG9yKCRiYWNrZ3JvdW5kLCB1bnNlbGVjdGVkLWNoaXApO1xuICAkdW5zZWxlY3RlZC1mb3JlZ3JvdW5kOiBtYXQtY29sb3IoJGZvcmVncm91bmQsIHRleHQpO1xuXG4gIC5tYXQtY2hpcC5tYXQtc3RhbmRhcmQtY2hpcCB7XG4gICAgQGluY2x1ZGUgX21hdC1jaGlwLWVsZW1lbnQtY29sb3IoJHVuc2VsZWN0ZWQtZm9yZWdyb3VuZCwgJHVuc2VsZWN0ZWQtYmFja2dyb3VuZCk7XG5cbiAgICAmOm5vdCgubWF0LWNoaXAtZGlzYWJsZWQpIHtcbiAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgQGluY2x1ZGUgbWF0LXByaXZhdGUtdGhlbWUtZWxldmF0aW9uKDMsICRjb25maWcpO1xuICAgICAgfVxuXG4gICAgICAubWF0LWNoaXAtcmVtb3ZlOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogMC41NDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLm1hdC1jaGlwLWRpc2FibGVkIHtcbiAgICAgIG9wYWNpdHk6IDAuNDtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRmb3JlZ3JvdW5kLCBiYXNlKTtcbiAgICB9XG4gIH1cblxuICAubWF0LWNoaXAubWF0LXN0YW5kYXJkLWNoaXAubWF0LWNoaXAtc2VsZWN0ZWQge1xuICAgICYubWF0LXByaW1hcnkge1xuICAgICAgQGluY2x1ZGUgX21hdC1jaGlwLXRoZW1lLWNvbG9yKCRwcmltYXJ5KTtcbiAgICB9XG5cbiAgICAmLm1hdC13YXJuIHtcbiAgICAgIEBpbmNsdWRlIF9tYXQtY2hpcC10aGVtZS1jb2xvcigkd2Fybik7XG4gICAgfVxuXG4gICAgJi5tYXQtYWNjZW50IHtcbiAgICAgIEBpbmNsdWRlIF9tYXQtY2hpcC10aGVtZS1jb2xvcigkYWNjZW50KTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1hdC1jaGlwcy10eXBvZ3JhcGh5KCRjb25maWctb3ItdGhlbWUpIHtcbiAgJGNvbmZpZzogbWF0LWdldC10eXBvZ3JhcGh5LWNvbmZpZygkY29uZmlnLW9yLXRoZW1lKTtcbiAgLm1hdC1jaGlwIHtcbiAgICBmb250LXNpemU6IG1hdC1mb250LXNpemUoJGNvbmZpZywgYm9keS0yKTtcbiAgICBmb250LXdlaWdodDogbWF0LWZvbnQtd2VpZ2h0KCRjb25maWcsIGJvZHktMik7XG5cbiAgICAubWF0LWNoaXAtdHJhaWxpbmctaWNvbi5tYXQtaWNvbixcbiAgICAubWF0LWNoaXAtcmVtb3ZlLm1hdC1pY29uIHtcbiAgICAgIGZvbnQtc2l6ZTogJG1hdC1jaGlwLXJlbW92ZS1mb250LXNpemU7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBfbWF0LWNoaXBzLWRlbnNpdHkoJGNvbmZpZy1vci10aGVtZSkge31cblxuQG1peGluIG1hdC1jaGlwcy10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKSB7XG4gICR0aGVtZTogbWF0LXByaXZhdGUtbGVnYWN5LWdldC10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKTtcbiAgQGluY2x1ZGUgbWF0LXByaXZhdGUtY2hlY2stZHVwbGljYXRlLXRoZW1lLXN0eWxlcygkdGhlbWUsICdtYXQtY2hpcHMnKSB7XG4gICAgJGNvbG9yOiBtYXQtZ2V0LWNvbG9yLWNvbmZpZygkdGhlbWUpO1xuICAgICRkZW5zaXR5OiBtYXQtZ2V0LWRlbnNpdHktY29uZmlnKCR0aGVtZSk7XG4gICAgJHR5cG9ncmFwaHk6IG1hdC1nZXQtdHlwb2dyYXBoeS1jb25maWcoJHRoZW1lKTtcblxuICAgIEBpZiAkY29sb3IgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBtYXQtY2hpcHMtY29sb3IoJGNvbG9yKTtcbiAgICB9XG4gICAgQGlmICRkZW5zaXR5ICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgX21hdC1jaGlwcy1kZW5zaXR5KCRkZW5zaXR5KTtcbiAgICB9XG4gICAgQGlmICR0eXBvZ3JhcGh5ICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LWNoaXBzLXR5cG9ncmFwaHkoJHR5cG9ncmFwaHkpO1xuICAgIH1cbiAgfVxufVxuXG5cblxuXG5cblxuQG1peGluIG1hdC1kaXZpZGVyLWNvbG9yKCRjb25maWctb3ItdGhlbWUpIHtcbiAgJGNvbmZpZzogbWF0LWdldC1jb2xvci1jb25maWcoJGNvbmZpZy1vci10aGVtZSk7XG4gICRmb3JlZ3JvdW5kOiBtYXAtZ2V0KCRjb25maWcsIGZvcmVncm91bmQpO1xuXG4gIC5tYXQtZGl2aWRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCBkaXZpZGVyKTtcbiAgfVxuXG4gIC5tYXQtZGl2aWRlci12ZXJ0aWNhbCB7XG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiBtYXQtY29sb3IoJGZvcmVncm91bmQsIGRpdmlkZXIpO1xuICB9XG59XG5cbkBtaXhpbiBtYXQtZGl2aWRlci10eXBvZ3JhcGh5KCRjb25maWctb3ItdGhlbWUpIHt9XG5cbkBtaXhpbiBfbWF0LWRpdmlkZXItZGVuc2l0eSgkY29uZmlnLW9yLXRoZW1lKSB7fVxuXG5AbWl4aW4gbWF0LWRpdmlkZXItdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZykge1xuICAkdGhlbWU6IG1hdC1wcml2YXRlLWxlZ2FjeS1nZXQtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1wcml2YXRlLWNoZWNrLWR1cGxpY2F0ZS10aGVtZS1zdHlsZXMoJHRoZW1lLCAnbWF0LWRpdmlkZXInKSB7XG4gICAgJGNvbG9yOiBtYXQtZ2V0LWNvbG9yLWNvbmZpZygkdGhlbWUpO1xuICAgICRkZW5zaXR5OiBtYXQtZ2V0LWRlbnNpdHktY29uZmlnKCR0aGVtZSk7XG4gICAgJHR5cG9ncmFwaHk6IG1hdC1nZXQtdHlwb2dyYXBoeS1jb25maWcoJHRoZW1lKTtcblxuICAgIEBpZiAkY29sb3IgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBtYXQtZGl2aWRlci1jb2xvcigkY29sb3IpO1xuICAgIH1cbiAgICBAaWYgJGRlbnNpdHkgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBfbWF0LWRpdmlkZXItZGVuc2l0eSgkZGVuc2l0eSk7XG4gICAgfVxuICAgIEBpZiAkdHlwb2dyYXBoeSAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIG1hdC1kaXZpZGVyLXR5cG9ncmFwaHkoJHR5cG9ncmFwaHkpO1xuICAgIH1cbiAgfVxufVxuXG5cblxuXG5cbkBtaXhpbiBtYXQtdGFibGUtY29sb3IoJGNvbmZpZy1vci10aGVtZSkge1xuICAkY29uZmlnOiBtYXQtZ2V0LWNvbG9yLWNvbmZpZygkY29uZmlnLW9yLXRoZW1lKTtcbiAgJGJhY2tncm91bmQ6IG1hcC1nZXQoJGNvbmZpZywgYmFja2dyb3VuZCk7XG4gICRmb3JlZ3JvdW5kOiBtYXAtZ2V0KCRjb25maWcsIGZvcmVncm91bmQpO1xuXG4gIC5tYXQtdGFibGUge1xuICAgIGJhY2tncm91bmQ6IG1hdC1jb2xvcigkYmFja2dyb3VuZCwgJ2NhcmQnKTtcbiAgfVxuXG4gIC5tYXQtdGFibGUgdGhlYWQsIC5tYXQtdGFibGUgdGJvZHksIC5tYXQtdGFibGUgdGZvb3QsXG4gIG1hdC1oZWFkZXItcm93LCBtYXQtcm93LCBtYXQtZm9vdGVyLXJvdyxcbiAgW21hdC1oZWFkZXItcm93XSwgW21hdC1yb3ddLCBbbWF0LWZvb3Rlci1yb3ddLFxuICAubWF0LXRhYmxlLXN0aWNreSB7XG4gICAgYmFja2dyb3VuZDogaW5oZXJpdDtcbiAgfVxuXG4gIG1hdC1yb3csIG1hdC1oZWFkZXItcm93LCBtYXQtZm9vdGVyLXJvdyxcbiAgdGgubWF0LWhlYWRlci1jZWxsLCB0ZC5tYXQtY2VsbCwgdGQubWF0LWZvb3Rlci1jZWxsIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiBtYXQtY29sb3IoJGZvcmVncm91bmQsIGRpdmlkZXIpO1xuICB9XG5cbiAgLm1hdC1oZWFkZXItY2VsbCB7XG4gICAgY29sb3I6IG1hdC1jb2xvcigkZm9yZWdyb3VuZCwgc2Vjb25kYXJ5LXRleHQpO1xuICB9XG5cbiAgLm1hdC1jZWxsLCAubWF0LWZvb3Rlci1jZWxsIHtcbiAgICBjb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCB0ZXh0KTtcbiAgfVxufVxuXG5AbWl4aW4gbWF0LXRhYmxlLXR5cG9ncmFwaHkoJGNvbmZpZy1vci10aGVtZSkge1xuICAkY29uZmlnOiBtYXQtZ2V0LXR5cG9ncmFwaHktY29uZmlnKCRjb25maWctb3ItdGhlbWUpO1xuICAubWF0LXRhYmxlIHtcbiAgICBmb250LWZhbWlseTogbWF0LWZvbnQtZmFtaWx5KCRjb25maWcpO1xuICB9XG5cbiAgLm1hdC1oZWFkZXItY2VsbCB7XG4gICAgZm9udC1zaXplOiBtYXQtZm9udC1zaXplKCRjb25maWcsIGNhcHRpb24pO1xuICAgIGZvbnQtd2VpZ2h0OiBtYXQtZm9udC13ZWlnaHQoJGNvbmZpZywgYm9keS0yKTtcbiAgfVxuXG4gIC5tYXQtY2VsbCwgLm1hdC1mb290ZXItY2VsbCB7XG4gICAgZm9udC1zaXplOiBtYXQtZm9udC1zaXplKCRjb25maWcsIGJvZHktMSk7XG4gIH1cbn1cblxuQG1peGluIF9tYXQtdGFibGUtZGVuc2l0eSgkY29uZmlnLW9yLXRoZW1lKSB7fVxuXG5AbWl4aW4gbWF0LXRhYmxlLXRoZW1lKCR0aGVtZS1vci1jb2xvci1jb25maWcpIHtcbiAgJHRoZW1lOiBtYXQtcHJpdmF0ZS1sZWdhY3ktZ2V0LXRoZW1lKCR0aGVtZS1vci1jb2xvci1jb25maWcpO1xuICBAaW5jbHVkZSBtYXQtcHJpdmF0ZS1jaGVjay1kdXBsaWNhdGUtdGhlbWUtc3R5bGVzKCR0aGVtZSwgJ21hdC10YWJsZScpIHtcbiAgICAkY29sb3I6IG1hdC1nZXQtY29sb3ItY29uZmlnKCR0aGVtZSk7XG4gICAgJGRlbnNpdHk6IG1hdC1nZXQtZGVuc2l0eS1jb25maWcoJHRoZW1lKTtcbiAgICAkdHlwb2dyYXBoeTogbWF0LWdldC10eXBvZ3JhcGh5LWNvbmZpZygkdGhlbWUpO1xuXG4gICAgQGlmICRjb2xvciAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIG1hdC10YWJsZS1jb2xvcigkY29sb3IpO1xuICAgIH1cbiAgICBAaWYgJGRlbnNpdHkgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBfbWF0LXRhYmxlLWRlbnNpdHkoJGRlbnNpdHkpO1xuICAgIH1cbiAgICBAaWYgJHR5cG9ncmFwaHkgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBtYXQtdGFibGUtdHlwb2dyYXBoeSgkdHlwb2dyYXBoeSk7XG4gICAgfVxuICB9XG59XG5cblxuXG5cblxuXG5cbiRtYXQtZGF0ZXBpY2tlci1zZWxlY3RlZC10b2RheS1ib3gtc2hhZG93LXdpZHRoOiAxcHg7XG4kbWF0LWRhdGVwaWNrZXItc2VsZWN0ZWQtZmFkZS1hbW91bnQ6IDAuNjtcbiRtYXQtZGF0ZXBpY2tlci1yYW5nZS1mYWRlLWFtb3VudDogMC4yO1xuJG1hdC1kYXRlcGlja2VyLXRvZGF5LWZhZGUtYW1vdW50OiAwLjI7XG4kbWF0LWNhbGVuZGFyLWJvZHktZm9udC1zaXplOiAxM3B4ICFkZWZhdWx0O1xuJG1hdC1jYWxlbmRhci13ZWVrZGF5LXRhYmxlLWZvbnQtc2l6ZTogMTFweCAhZGVmYXVsdDtcblxuQG1peGluIF9tYXQtZGF0ZXBpY2tlci1jb2xvcigkcGFsZXR0ZSkge1xuICBAaW5jbHVkZSBtYXQtZGF0ZS1yYW5nZS1jb2xvcnMoXG4gICAgbWF0LWNvbG9yKCRwYWxldHRlLCBkZWZhdWx0LCAkbWF0LWRhdGVwaWNrZXItcmFuZ2UtZmFkZS1hbW91bnQpKTtcblxuICAubWF0LWNhbGVuZGFyLWJvZHktc2VsZWN0ZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1hdC1jb2xvcigkcGFsZXR0ZSk7XG4gICAgY29sb3I6IG1hdC1jb2xvcigkcGFsZXR0ZSwgZGVmYXVsdC1jb250cmFzdCk7XG4gIH1cblxuICAubWF0LWNhbGVuZGFyLWJvZHktZGlzYWJsZWQgPiAubWF0LWNhbGVuZGFyLWJvZHktc2VsZWN0ZWQge1xuICAgICRiYWNrZ3JvdW5kOiBtYXQtY29sb3IoJHBhbGV0dGUpO1xuXG4gICAgQGlmICh0eXBlLW9mKCRiYWNrZ3JvdW5kKSA9PSBjb2xvcikge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZmFkZS1vdXQoJGJhY2tncm91bmQsICRtYXQtZGF0ZXBpY2tlci1zZWxlY3RlZC1mYWRlLWFtb3VudCk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIElmIHdlIGNvdWxkbid0IHJlc29sdmUgdG8gYmFja2dyb3VuZCB0byBhIGNvbG9yIChlLmcuIGl0J3MgYSBDU1MgdmFyaWFibGUpLFxuICAgICAgLy8gZmFsbCBiYWNrIHRvIGZhZGluZyB0aGUgY29udGVudCBvdXQgdmlhIGBvcGFjaXR5YC5cbiAgICAgIG9wYWNpdHk6ICRtYXQtZGF0ZXBpY2tlci10b2RheS1mYWRlLWFtb3VudDtcbiAgICB9XG4gIH1cblxuICAubWF0LWNhbGVuZGFyLWJvZHktdG9kYXkubWF0LWNhbGVuZGFyLWJvZHktc2VsZWN0ZWQge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwICRtYXQtZGF0ZXBpY2tlci1zZWxlY3RlZC10b2RheS1ib3gtc2hhZG93LXdpZHRoXG4gICAgICAgICAgICAgICAgbWF0LWNvbG9yKCRwYWxldHRlLCBkZWZhdWx0LWNvbnRyYXN0KTtcbiAgfVxuXG4gIC5tYXQtY2FsZW5kYXItYm9keS1jZWxsOm5vdCgubWF0LWNhbGVuZGFyLWJvZHktZGlzYWJsZWQpOmhvdmVyLFxuICAuY2RrLWtleWJvYXJkLWZvY3VzZWQgLm1hdC1jYWxlbmRhci1ib2R5LWFjdGl2ZSxcbiAgLmNkay1wcm9ncmFtLWZvY3VzZWQgLm1hdC1jYWxlbmRhci1ib2R5LWFjdGl2ZSB7XG4gICAgJiA+IC5tYXQtY2FsZW5kYXItYm9keS1jZWxsLWNvbnRlbnQge1xuICAgICAgQGluY2x1ZGUgX21hdC1kYXRlcGlja2VyLXVuc2VsZWN0ZWQtY2VsbCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hdC1jb2xvcigkcGFsZXR0ZSwgMC4zKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gVXRpbGl0eSBtaXhpbiB0byB0YXJnZXQgY2VsbHMgdGhhdCBhcmVuJ3Qgc2VsZWN0ZWQuIFVzZWQgdG8gbWFrZSBzZWxlY3RvciBlYXNpZXIgdG8gZm9sbG93LlxuQG1peGluIF9tYXQtZGF0ZXBpY2tlci11bnNlbGVjdGVkLWNlbGwge1xuICAmOm5vdCgubWF0LWNhbGVuZGFyLWJvZHktc2VsZWN0ZWQpOm5vdCgubWF0LWNhbGVuZGFyLWJvZHktY29tcGFyaXNvbi1pZGVudGljYWwpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gbWF0LWRhdGVwaWNrZXItY29sb3IoJGNvbmZpZy1vci10aGVtZSkge1xuICAkY29uZmlnOiBtYXQtZ2V0LWNvbG9yLWNvbmZpZygkY29uZmlnLW9yLXRoZW1lKTtcbiAgJGZvcmVncm91bmQ6IG1hcC1nZXQoJGNvbmZpZywgZm9yZWdyb3VuZCk7XG4gICRiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRjb25maWcsIGJhY2tncm91bmQpO1xuICAkZGlzYWJsZWQtY29sb3I6IG1hdC1jb2xvcigkZm9yZWdyb3VuZCwgZGlzYWJsZWQtdGV4dCk7XG5cbiAgLm1hdC1jYWxlbmRhci1hcnJvdyB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCBpY29uKTtcbiAgfVxuXG4gIC8vIFRoZSBwcmV2L25leHQgYnV0dG9ucyBuZWVkIGEgYml0IG1vcmUgc3BlY2lmaWNpdHkgdG9cbiAgLy8gYXZvaWQgYmVpbmcgb3ZlcndyaXR0ZW4gYnkgdGhlIC5tYXQtaWNvbi1idXR0b24uXG4gIC5tYXQtZGF0ZXBpY2tlci10b2dnbGUsXG4gIC5tYXQtZGF0ZXBpY2tlci1jb250ZW50IC5tYXQtY2FsZW5kYXItbmV4dC1idXR0b24sXG4gIC5tYXQtZGF0ZXBpY2tlci1jb250ZW50IC5tYXQtY2FsZW5kYXItcHJldmlvdXMtYnV0dG9uIHtcbiAgICBjb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCBpY29uKTtcbiAgfVxuXG4gIC5tYXQtY2FsZW5kYXItdGFibGUtaGVhZGVyIHtcbiAgICBjb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCBoaW50LXRleHQpO1xuICB9XG5cbiAgLm1hdC1jYWxlbmRhci10YWJsZS1oZWFkZXItZGl2aWRlcjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IG1hdC1jb2xvcigkZm9yZWdyb3VuZCwgZGl2aWRlcik7XG4gIH1cblxuICAubWF0LWNhbGVuZGFyLWJvZHktbGFiZWwge1xuICAgIGNvbG9yOiBtYXQtY29sb3IoJGZvcmVncm91bmQsIHNlY29uZGFyeS10ZXh0KTtcbiAgfVxuXG4gIC5tYXQtY2FsZW5kYXItYm9keS1jZWxsLWNvbnRlbnQsXG4gIC5tYXQtZGF0ZS1yYW5nZS1pbnB1dC1zZXBhcmF0b3Ige1xuICAgIGNvbG9yOiBtYXQtY29sb3IoJGZvcmVncm91bmQsIHRleHQpO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAubWF0LWNhbGVuZGFyLWJvZHktZGlzYWJsZWQgPiAubWF0LWNhbGVuZGFyLWJvZHktY2VsbC1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBfbWF0LWRhdGVwaWNrZXItdW5zZWxlY3RlZC1jZWxsIHtcbiAgICAgIGNvbG9yOiAkZGlzYWJsZWQtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm1hdC1mb3JtLWZpZWxkLWRpc2FibGVkIC5tYXQtZGF0ZS1yYW5nZS1pbnB1dC1zZXBhcmF0b3Ige1xuICAgIGNvbG9yOiAkZGlzYWJsZWQtY29sb3I7XG4gIH1cblxuICAubWF0LWNhbGVuZGFyLWJvZHktaW4tcHJldmlldyB7XG4gICAgJGRpdmlkZXItY29sb3I6IG1hdC1jb2xvcigkZm9yZWdyb3VuZCwgZGl2aWRlcik7XG5cbiAgICBAaWYgdHlwZS1vZigkZGl2aWRlci1jb2xvcikgPT0gY29sb3Ige1xuICAgICAgLy8gVGhlIGRpdmlkZXIgY29sb3IgaXMgc2V0IHVuZGVyIHRoZSBhc3N1bXB0aW9uIHRoYXQgaXQnbGwgYmUgdXNlZFxuICAgICAgLy8gZm9yIGEgc29saWQgYm9yZGVyLCBidXQgYmVjYXVzZSB3ZSdyZSB1c2luZyBhIGRhc2hlZCBib3JkZXIgZm9yIHRoZVxuICAgICAgLy8gcHJldmlldyByYW5nZSwgd2UgbmVlZCB0byBidW1wIGl0cyBvcGFjaXR5IHRvIGVuc3VyZSB0aGF0IGl0J3MgdmlzaWJsZS5cbiAgICAgIGNvbG9yOiByZ2JhKCRkaXZpZGVyLWNvbG9yLCBtaW4ob3BhY2l0eSgkZGl2aWRlci1jb2xvcikgKiAyLCAxKSk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGNvbG9yOiAkZGl2aWRlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubWF0LWNhbGVuZGFyLWJvZHktdG9kYXkge1xuICAgIEBpbmNsdWRlIF9tYXQtZGF0ZXBpY2tlci11bnNlbGVjdGVkLWNlbGwge1xuICAgICAgLy8gTm90ZTogdGhvdWdoIGl0J3Mgbm90IHRleHQsIHRoZSBib3JkZXIgaXMgYSBoaW50IGFib3V0IHRoZSBmYWN0IHRoYXQgdGhpcyBpcyB0b2RheSdzIGRhdGUsXG4gICAgICAvLyBzbyB3ZSB1c2UgdGhlIGhpbnQgY29sb3IuXG4gICAgICBib3JkZXItY29sb3I6IG1hdC1jb2xvcigkZm9yZWdyb3VuZCwgaGludC10ZXh0KTtcbiAgICB9XG4gIH1cblxuICAubWF0LWNhbGVuZGFyLWJvZHktZGlzYWJsZWQgPiAubWF0LWNhbGVuZGFyLWJvZHktdG9kYXkge1xuICAgIEBpbmNsdWRlIF9tYXQtZGF0ZXBpY2tlci11bnNlbGVjdGVkLWNlbGwge1xuICAgICAgJGNvbG9yOiBtYXQtY29sb3IoJGZvcmVncm91bmQsIGhpbnQtdGV4dCk7XG5cbiAgICAgIEBpZiAodHlwZS1vZigkY29sb3IpID09IGNvbG9yKSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogZmFkZS1vdXQoJGNvbG9yLCAkbWF0LWRhdGVwaWNrZXItdG9kYXktZmFkZS1hbW91bnQpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAvLyBJZiB0aGUgY29sb3IgZGlkbid0IHJlc29sdmUgdG8gYSBjb2xvciB2YWx1ZSwgYnV0IHNvbWV0aGluZyBsaWtlIGEgQ1NTIHZhcmlhYmxlLCB3ZSBjYW4ndFxuICAgICAgICAvLyBmYWRlIGl0IG91dCBzbyB3ZSBmYWxsIGJhY2sgdG8gcmVkdWNpbmcgdGhlIGVsZW1lbnQgb3BhY2l0eS4gTm90ZSB0aGF0IHdlIGRvbid0IHVzZSB0aGVcbiAgICAgICAgLy8gJG1hdC1kYXRlcGlja2VyLXRvZGF5LWZhZGUtYW1vdW50LCBiZWNhdXNlIGhpbnQgdGV4dCB1c3VhbGx5IGhhcyBzb21lIG9wYWNpdHkgYXBwbGllZFxuICAgICAgICAvLyB0byBpdCBhbHJlYWR5IGFuZCB3ZSBkb24ndCB3YW50IHRoZW0gdG8gc3RhY2sgb24gdG9wIG9mIGVhY2ggb3RoZXIuXG4gICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBfbWF0LWRhdGVwaWNrZXItY29sb3IobWFwLWdldCgkY29uZmlnLCBwcmltYXJ5KSk7XG5cbiAgLm1hdC1kYXRlcGlja2VyLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIG1hdC1wcml2YXRlLXRoZW1lLWVsZXZhdGlvbig0LCAkY29uZmlnKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXQtY29sb3IoJGJhY2tncm91bmQsIGNhcmQpO1xuICAgIGNvbG9yOiBtYXQtY29sb3IoJGZvcmVncm91bmQsIHRleHQpO1xuXG4gICAgJi5tYXQtYWNjZW50IHtcbiAgICAgIEBpbmNsdWRlIF9tYXQtZGF0ZXBpY2tlci1jb2xvcihtYXAtZ2V0KCRjb25maWcsIGFjY2VudCkpO1xuICAgIH1cblxuICAgICYubWF0LXdhcm4ge1xuICAgICAgQGluY2x1ZGUgX21hdC1kYXRlcGlja2VyLWNvbG9yKG1hcC1nZXQoJGNvbmZpZywgd2FybikpO1xuICAgIH1cbiAgfVxuXG4gIC5tYXQtZGF0ZXBpY2tlci1jb250ZW50LXRvdWNoIHtcbiAgICBAaW5jbHVkZSBtYXQtcHJpdmF0ZS10aGVtZS1lbGV2YXRpb24oMCwgJGNvbmZpZyk7XG4gIH1cblxuICAubWF0LWRhdGVwaWNrZXItdG9nZ2xlLWFjdGl2ZSB7XG4gICAgY29sb3I6IG1hdC1jb2xvcihtYXAtZ2V0KCRjb25maWcsIHByaW1hcnkpLCB0ZXh0KTtcblxuICAgICYubWF0LWFjY2VudCB7XG4gICAgICBjb2xvcjogbWF0LWNvbG9yKG1hcC1nZXQoJGNvbmZpZywgYWNjZW50KSwgdGV4dCk7XG4gICAgfVxuXG4gICAgJi5tYXQtd2FybiB7XG4gICAgICBjb2xvcjogbWF0LWNvbG9yKG1hcC1nZXQoJGNvbmZpZywgd2FybiksIHRleHQpO1xuICAgIH1cbiAgfVxuXG4gIC5tYXQtZGF0ZS1yYW5nZS1pbnB1dC1pbm5lcltkaXNhYmxlZF0ge1xuICAgIGNvbG9yOiBtYXQtY29sb3IoJGZvcmVncm91bmQsIGRpc2FibGVkLXRleHQpO1xuICB9XG59XG5cbkBtaXhpbiBtYXQtZGF0ZXBpY2tlci10eXBvZ3JhcGh5KCRjb25maWctb3ItdGhlbWUpIHtcbiAgJGNvbmZpZzogbWF0LWdldC10eXBvZ3JhcGh5LWNvbmZpZygkY29uZmlnLW9yLXRoZW1lKTtcbiAgLm1hdC1jYWxlbmRhciB7XG4gICAgZm9udC1mYW1pbHk6IG1hdC1mb250LWZhbWlseSgkY29uZmlnKTtcbiAgfVxuXG4gIC5tYXQtY2FsZW5kYXItYm9keSB7XG4gICAgZm9udC1zaXplOiAkbWF0LWNhbGVuZGFyLWJvZHktZm9udC1zaXplO1xuICB9XG5cbiAgLm1hdC1jYWxlbmRhci1ib2R5LWxhYmVsLFxuICAubWF0LWNhbGVuZGFyLXBlcmlvZC1idXR0b24ge1xuICAgIGZvbnQ6IHtcbiAgICAgIHNpemU6IG1hdC1mb250LXNpemUoJGNvbmZpZywgYnV0dG9uKTtcbiAgICAgIHdlaWdodDogbWF0LWZvbnQtd2VpZ2h0KCRjb25maWcsIGJ1dHRvbik7XG4gICAgfVxuICB9XG5cbiAgLm1hdC1jYWxlbmRhci10YWJsZS1oZWFkZXIgdGgge1xuICAgIGZvbnQ6IHtcbiAgICAgIHNpemU6ICRtYXQtY2FsZW5kYXItd2Vla2RheS10YWJsZS1mb250LXNpemU7XG4gICAgICB3ZWlnaHQ6IG1hdC1mb250LXdlaWdodCgkY29uZmlnLCBib2R5LTEpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWF0LWRhdGUtcmFuZ2UtY29sb3JzKFxuICAkcmFuZ2UtY29sb3IsXG4gICRjb21wYXJpc29uLWNvbG9yOiByZ2JhKCNmOWFiMDAsICRtYXQtZGF0ZXBpY2tlci1yYW5nZS1mYWRlLWFtb3VudCksXG4gICRvdmVybGFwLWNvbG9yOiAjYThkYWI1LFxuICAkb3ZlcmxhcC1zZWxlY3RlZC1jb2xvcjogZGFya2VuKCRvdmVybGFwLWNvbG9yLCAzMCUpKSB7XG5cbiAgLm1hdC1jYWxlbmRhci1ib2R5LWluLXJhbmdlOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6ICRyYW5nZS1jb2xvcjtcbiAgfVxuXG4gIC5tYXQtY2FsZW5kYXItYm9keS1jb21wYXJpc29uLWlkZW50aWNhbCxcbiAgLm1hdC1jYWxlbmRhci1ib2R5LWluLWNvbXBhcmlzb24tcmFuZ2U6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogJGNvbXBhcmlzb24tY29sb3I7XG4gIH1cblxuICAubWF0LWNhbGVuZGFyLWJvZHktY29tcGFyaXNvbi1icmlkZ2Utc3RhcnQ6OmJlZm9yZSxcbiAgW2Rpcj0ncnRsJ10gLm1hdC1jYWxlbmRhci1ib2R5LWNvbXBhcmlzb24tYnJpZGdlLWVuZDo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRyYW5nZS1jb2xvciA1MCUsICRjb21wYXJpc29uLWNvbG9yIDUwJSk7XG4gIH1cblxuICAubWF0LWNhbGVuZGFyLWJvZHktY29tcGFyaXNvbi1icmlkZ2UtZW5kOjpiZWZvcmUsXG4gIFtkaXI9J3J0bCddIC5tYXQtY2FsZW5kYXItYm9keS1jb21wYXJpc29uLWJyaWRnZS1zdGFydDo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgJHJhbmdlLWNvbG9yIDUwJSwgJGNvbXBhcmlzb24tY29sb3IgNTAlKTtcbiAgfVxuXG4gIC5tYXQtY2FsZW5kYXItYm9keS1pbi1yYW5nZSA+IC5tYXQtY2FsZW5kYXItYm9keS1jb21wYXJpc29uLWlkZW50aWNhbCxcbiAgLm1hdC1jYWxlbmRhci1ib2R5LWluLWNvbXBhcmlzb24tcmFuZ2UubWF0LWNhbGVuZGFyLWJvZHktaW4tcmFuZ2U6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkb3ZlcmxhcC1jb2xvcjtcbiAgfVxuXG4gIC5tYXQtY2FsZW5kYXItYm9keS1jb21wYXJpc29uLWlkZW50aWNhbC5tYXQtY2FsZW5kYXItYm9keS1zZWxlY3RlZCxcbiAgLm1hdC1jYWxlbmRhci1ib2R5LWluLWNvbXBhcmlzb24tcmFuZ2UgPiAubWF0LWNhbGVuZGFyLWJvZHktc2VsZWN0ZWQge1xuICAgIGJhY2tncm91bmQ6ICRvdmVybGFwLXNlbGVjdGVkLWNvbG9yO1xuICB9XG59XG5cbkBtaXhpbiBfbWF0LWRhdGVwaWNrZXItZGVuc2l0eSgkY29uZmlnLW9yLXRoZW1lKSB7fVxuXG5AbWl4aW4gbWF0LWRhdGVwaWNrZXItdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZykge1xuICAkdGhlbWU6IG1hdC1wcml2YXRlLWxlZ2FjeS1nZXQtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1wcml2YXRlLWNoZWNrLWR1cGxpY2F0ZS10aGVtZS1zdHlsZXMoJHRoZW1lLCAnbWF0LWRhdGVwaWNrZXInKSB7XG4gICAgJGNvbG9yOiBtYXQtZ2V0LWNvbG9yLWNvbmZpZygkdGhlbWUpO1xuICAgICRkZW5zaXR5OiBtYXQtZ2V0LWRlbnNpdHktY29uZmlnKCR0aGVtZSk7XG4gICAgJHR5cG9ncmFwaHk6IG1hdC1nZXQtdHlwb2dyYXBoeS1jb25maWcoJHRoZW1lKTtcblxuICAgIEBpZiAkY29sb3IgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBtYXQtZGF0ZXBpY2tlci1jb2xvcigkY29sb3IpO1xuICAgIH1cbiAgICBAaWYgJGRlbnNpdHkgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBfbWF0LWRhdGVwaWNrZXItZGVuc2l0eSgkZGVuc2l0eSk7XG4gICAgfVxuICAgIEBpZiAkdHlwb2dyYXBoeSAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIG1hdC1kYXRlcGlja2VyLXR5cG9ncmFwaHkoJHR5cG9ncmFwaHkpO1xuICAgIH1cbiAgfVxufVxuXG5cblxuXG5cblxuXG5AbWl4aW4gbWF0LWRpYWxvZy1jb2xvcigkY29uZmlnLW9yLXRoZW1lKSB7XG4gICRjb25maWc6IG1hdC1nZXQtY29sb3ItY29uZmlnKCRjb25maWctb3ItdGhlbWUpO1xuICAkYmFja2dyb3VuZDogbWFwLWdldCgkY29uZmlnLCBiYWNrZ3JvdW5kKTtcbiAgJGZvcmVncm91bmQ6IG1hcC1nZXQoJGNvbmZpZywgZm9yZWdyb3VuZCk7XG5cbiAgLm1hdC1kaWFsb2ctY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBtYXQtcHJpdmF0ZS10aGVtZS1lbGV2YXRpb24oMjQsICRjb25maWcpO1xuICAgIGJhY2tncm91bmQ6IG1hdC1jb2xvcigkYmFja2dyb3VuZCwgZGlhbG9nKTtcbiAgICBjb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCB0ZXh0KTtcbiAgfVxufVxuXG5AbWl4aW4gbWF0LWRpYWxvZy10eXBvZ3JhcGh5KCRjb25maWctb3ItdGhlbWUpIHtcbiAgJGNvbmZpZzogbWF0LWdldC10eXBvZ3JhcGh5LWNvbmZpZygkY29uZmlnLW9yLXRoZW1lKTtcbiAgLm1hdC1kaWFsb2ctdGl0bGUge1xuICAgIEBpbmNsdWRlIG1hdC10eXBvZ3JhcGh5LWxldmVsLXRvLXN0eWxlcygkY29uZmlnLCB0aXRsZSk7XG4gIH1cbn1cblxuQG1peGluIF9tYXQtZGlhbG9nLWRlbnNpdHkoJGNvbmZpZy1vci10aGVtZSkge31cblxuQG1peGluIG1hdC1kaWFsb2ctdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZykge1xuICAkdGhlbWU6IG1hdC1wcml2YXRlLWxlZ2FjeS1nZXQtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1wcml2YXRlLWNoZWNrLWR1cGxpY2F0ZS10aGVtZS1zdHlsZXMoJHRoZW1lLCAnbWF0LWRpYWxvZycpIHtcbiAgICAkY29sb3I6IG1hdC1nZXQtY29sb3ItY29uZmlnKCR0aGVtZSk7XG4gICAgJGRlbnNpdHk6IG1hdC1nZXQtZGVuc2l0eS1jb25maWcoJHRoZW1lKTtcbiAgICAkdHlwb2dyYXBoeTogbWF0LWdldC10eXBvZ3JhcGh5LWNvbmZpZygkdGhlbWUpO1xuXG4gICAgQGlmICRjb2xvciAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIG1hdC1kaWFsb2ctY29sb3IoJGNvbG9yKTtcbiAgICB9XG4gICAgQGlmICRkZW5zaXR5ICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgX21hdC1kaWFsb2ctZGVuc2l0eSgkZGVuc2l0eSk7XG4gICAgfVxuICAgIEBpZiAkdHlwb2dyYXBoeSAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIG1hdC1kaWFsb2ctdHlwb2dyYXBoeSgkdHlwb2dyYXBoeSk7XG4gICAgfVxuICB9XG59XG5cblxuXG5cblxuXG4vLyBEZWZhdWx0IG1pbmltdW0gYW5kIG1heGltdW0gaGVpZ2h0IGZvciBjb2xsYXBzZWQgcGFuZWwgaGVhZGVycy5cbiRtYXQtZXhwYW5zaW9uLXBhbmVsLWhlYWRlci1jb2xsYXBzZWQtaGVpZ2h0OiA0OHB4ICFkZWZhdWx0O1xuJG1hdC1leHBhbnNpb24tcGFuZWwtaGVhZGVyLWNvbGxhcHNlZC1taW5pbXVtLWhlaWdodDogMzZweCAhZGVmYXVsdDtcbiRtYXQtZXhwYW5zaW9uLXBhbmVsLWhlYWRlci1jb2xsYXBzZWQtbWF4aW11bS1oZWlnaHQ6XG4gICAgJG1hdC1leHBhbnNpb24tcGFuZWwtaGVhZGVyLWNvbGxhcHNlZC1oZWlnaHQgIWRlZmF1bHQ7XG5cbi8vIERlZmF1bHQgbWluaW11bSBhbmQgbWF4aW11bSBoZWlnaHQgZm9yIGV4cGFuZGVkIHBhbmVsIGhlYWRlcnMuXG4kbWF0LWV4cGFuc2lvbi1wYW5lbC1oZWFkZXItZXhwYW5kZWQtaGVpZ2h0OiA2NHB4ICFkZWZhdWx0O1xuJG1hdC1leHBhbnNpb24tcGFuZWwtaGVhZGVyLWV4cGFuZGVkLW1pbmltdW0taGVpZ2h0OiA0OHB4ICFkZWZhdWx0O1xuJG1hdC1leHBhbnNpb24tcGFuZWwtaGVhZGVyLWV4cGFuZGVkLW1heGltdW0taGVpZ2h0OlxuICAgICRtYXQtZXhwYW5zaW9uLXBhbmVsLWhlYWRlci1leHBhbmRlZC1oZWlnaHQgIWRlZmF1bHQ7XG5cbi8vIERlbnNpdHkgY29uZmlndXJhdGlvbiBmb3IgdGhlIGV4cGFuc2lvbiBwYW5lbC4gQ2FwdHVyZXMgdGhlXG4vLyBoZWlnaHQgZm9yIGJvdGggZXhwYW5kZWQgYW5kIGNvbGxhcHNlZCBwYW5lbCBoZWFkZXJzLlxuJG1hdC1leHBhbnNpb24tcGFuZWwtaGVhZGVyLWRlbnNpdHktY29uZmlnOiAoXG4gIGNvbGxhcHNlZC1oZWlnaHQ6IChcbiAgICBkZWZhdWx0OiAkbWF0LWV4cGFuc2lvbi1wYW5lbC1oZWFkZXItY29sbGFwc2VkLWhlaWdodCxcbiAgICBtYXhpbXVtOiAkbWF0LWV4cGFuc2lvbi1wYW5lbC1oZWFkZXItY29sbGFwc2VkLW1heGltdW0taGVpZ2h0LFxuICAgIG1pbmltdW06ICRtYXQtZXhwYW5zaW9uLXBhbmVsLWhlYWRlci1jb2xsYXBzZWQtbWluaW11bS1oZWlnaHQsXG4gICksXG4gIGV4cGFuZGVkLWhlaWdodDogKFxuICAgIGRlZmF1bHQ6ICRtYXQtZXhwYW5zaW9uLXBhbmVsLWhlYWRlci1leHBhbmRlZC1oZWlnaHQsXG4gICAgbWF4aW11bTogJG1hdC1leHBhbnNpb24tcGFuZWwtaGVhZGVyLWV4cGFuZGVkLW1heGltdW0taGVpZ2h0LFxuICAgIG1pbmltdW06ICRtYXQtZXhwYW5zaW9uLXBhbmVsLWhlYWRlci1leHBhbmRlZC1taW5pbXVtLWhlaWdodCxcbiAgKVxuKSAhZGVmYXVsdDtcblxuLy8gTm90ZTogS2VlcCB0aGlzIGluIHN5bmMgd2l0aCB0aGUgYW5pbWF0aW9uIHRpbWluZyBmb3IgdGhlIHRvZ2dsZSBpbmRpY2F0b3Jcbi8vIGFuZCBib2R5IGV4cGFuc2lvbi4gVGhlc2UgYXJlIGFuaW1hdGVkIHVzaW5nIEFuZ3VsYXIgYW5pbWF0aW9ucy5cbiRtYXQtZXhwYW5zaW9uLXBhbmVsLWhlYWRlci10cmFuc2l0aW9uOiAyMjVtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuXG5AbWl4aW4gbWF0LXByaXZhdGUtZXhwYW5zaW9uLWZvY3VzIHtcbiAgLm1hdC1leHBhbnNpb24tcGFuZWwge1xuICAgICYgLm1hdC1leHBhbnNpb24tcGFuZWwtaGVhZGVyLmNkay1rZXlib2FyZC1mb2N1c2VkLFxuICAgICYgLm1hdC1leHBhbnNpb24tcGFuZWwtaGVhZGVyLmNkay1wcm9ncmFtLWZvY3VzZWQsXG4gICAgJjpub3QoLm1hdC1leHBhbmRlZCkgLm1hdC1leHBhbnNpb24tcGFuZWwtaGVhZGVyOmhvdmVyIHtcbiAgICAgICY6bm90KFthcmlhLWRpc2FibGVkPSd0cnVlJ10pIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuQG1peGluIG1hdC1leHBhbnNpb24tcGFuZWwtY29sb3IoJGNvbmZpZy1vci10aGVtZSkge1xuICAkY29uZmlnOiBtYXQtZ2V0LWNvbG9yLWNvbmZpZygkY29uZmlnLW9yLXRoZW1lKTtcbiAgJGJhY2tncm91bmQ6IG1hcC1nZXQoJGNvbmZpZywgYmFja2dyb3VuZCk7XG4gICRmb3JlZ3JvdW5kOiBtYXAtZ2V0KCRjb25maWcsIGZvcmVncm91bmQpO1xuXG4gIC5tYXQtZXhwYW5zaW9uLXBhbmVsIHtcbiAgICBAaW5jbHVkZSBtYXQtcHJpdmF0ZS10aGVtZS1vdmVycmlkYWJsZS1lbGV2YXRpb24oMiwgJGNvbmZpZyk7XG4gICAgYmFja2dyb3VuZDogbWF0LWNvbG9yKCRiYWNrZ3JvdW5kLCBjYXJkKTtcbiAgICBjb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCB0ZXh0KTtcbiAgfVxuXG4gIC5tYXQtYWN0aW9uLXJvdyB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCBkaXZpZGVyKTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1hdC1wcml2YXRlLWV4cGFuc2lvbi1mb2N1cyB7XG4gICAgYmFja2dyb3VuZDogbWF0LWNvbG9yKCRiYWNrZ3JvdW5kLCBob3Zlcik7XG4gIH1cblxuICAvLyBEaXNhYmxlIHRoZSBob3ZlciBvbiB0b3VjaCBkZXZpY2VzIHNpbmNlIGl0IGNhbiBhcHBlYXIgbGlrZSBpdCBpcyBzdHVjay4gV2UgY2FuJ3QgdXNlXG4gIC8vIGBAbWVkaWEgKGhvdmVyKWAgYWJvdmUsIGJlY2F1c2UgdGhlIGRlc2t0b3Agc3VwcG9ydCBicm93c2VyIHN1cHBvcnQgaXNuJ3QgZ3JlYXQuXG4gIEBtZWRpYSAoaG92ZXI6IG5vbmUpIHtcbiAgICAubWF0LWV4cGFuc2lvbi1wYW5lbDpub3QoLm1hdC1leHBhbmRlZCk6bm90KFthcmlhLWRpc2FibGVkPSd0cnVlJ10pXG4gICAgICAubWF0LWV4cGFuc2lvbi1wYW5lbC1oZWFkZXI6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogbWF0LWNvbG9yKCRiYWNrZ3JvdW5kLCBjYXJkKTtcbiAgICB9XG4gIH1cblxuICAubWF0LWV4cGFuc2lvbi1wYW5lbC1oZWFkZXItdGl0bGUge1xuICAgIGNvbG9yOiBtYXQtY29sb3IoJGZvcmVncm91bmQsIHRleHQpO1xuICB9XG5cbiAgLm1hdC1leHBhbnNpb24tcGFuZWwtaGVhZGVyLWRlc2NyaXB0aW9uLFxuICAubWF0LWV4cGFuc2lvbi1pbmRpY2F0b3I6OmFmdGVyIHtcbiAgICBjb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCBzZWNvbmRhcnktdGV4dCk7XG4gIH1cblxuICAubWF0LWV4cGFuc2lvbi1wYW5lbC1oZWFkZXJbYXJpYS1kaXNhYmxlZD0ndHJ1ZSddIHtcbiAgICBjb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCBkaXNhYmxlZC1idXR0b24pO1xuXG4gICAgLm1hdC1leHBhbnNpb24tcGFuZWwtaGVhZGVyLXRpdGxlLFxuICAgIC5tYXQtZXhwYW5zaW9uLXBhbmVsLWhlYWRlci1kZXNjcmlwdGlvbiB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1hdC1leHBhbnNpb24tcGFuZWwtdHlwb2dyYXBoeSgkY29uZmlnLW9yLXRoZW1lKSB7XG4gICRjb25maWc6IG1hdC1nZXQtdHlwb2dyYXBoeS1jb25maWcoJGNvbmZpZy1vci10aGVtZSk7XG4gIC5tYXQtZXhwYW5zaW9uLXBhbmVsLWhlYWRlciB7XG4gICAgZm9udDoge1xuICAgICAgZmFtaWx5OiBtYXQtZm9udC1mYW1pbHkoJGNvbmZpZywgc3ViaGVhZGluZy0xKTtcbiAgICAgIHNpemU6IG1hdC1mb250LXNpemUoJGNvbmZpZywgc3ViaGVhZGluZy0xKTtcbiAgICAgIHdlaWdodDogbWF0LWZvbnQtd2VpZ2h0KCRjb25maWcsIHN1YmhlYWRpbmctMSk7XG4gICAgfVxuICB9XG5cbiAgLm1hdC1leHBhbnNpb24tcGFuZWwtY29udGVudCB7XG4gICAgQGluY2x1ZGUgbWF0LXR5cG9ncmFwaHktbGV2ZWwtdG8tc3R5bGVzKCRjb25maWcsIGJvZHktMSk7XG4gIH1cbn1cblxuQG1peGluIG1hdC1leHBhbnNpb24tcGFuZWwtZGVuc2l0eSgkY29uZmlnLW9yLXRoZW1lKSB7XG4gICRkZW5zaXR5LXNjYWxlOiBtYXQtZ2V0LWRlbnNpdHktY29uZmlnKCRjb25maWctb3ItdGhlbWUpO1xuICAkZXhwYW5kZWQtaGVpZ2h0OiBtYXQtcHJpdmF0ZS1kZW5zaXR5LXByb3AtdmFsdWUoXG4gICAgICAgICRtYXQtZXhwYW5zaW9uLXBhbmVsLWhlYWRlci1kZW5zaXR5LWNvbmZpZywgJGRlbnNpdHktc2NhbGUsIGV4cGFuZGVkLWhlaWdodCk7XG4gICRjb2xsYXBzZWQtaGVpZ2h0OiBtYXQtcHJpdmF0ZS1kZW5zaXR5LXByb3AtdmFsdWUoXG4gICAgICAkbWF0LWV4cGFuc2lvbi1wYW5lbC1oZWFkZXItZGVuc2l0eS1jb25maWcsICRkZW5zaXR5LXNjYWxlLCBjb2xsYXBzZWQtaGVpZ2h0KTtcblxuICBAaW5jbHVkZSBtYXQtcHJpdmF0ZS1kZW5zaXR5LWxlZ2FjeS1jb21wYXRpYmlsaXR5KCkge1xuICAgIC5tYXQtZXhwYW5zaW9uLXBhbmVsLWhlYWRlciB7XG4gICAgICBoZWlnaHQ6ICRjb2xsYXBzZWQtaGVpZ2h0O1xuXG4gICAgICAmLm1hdC1leHBhbmRlZCB7XG4gICAgICAgIGhlaWdodDogJGV4cGFuZGVkLWhlaWdodDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1hdC1leHBhbnNpb24tcGFuZWwtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZykge1xuICAkdGhlbWU6IG1hdC1wcml2YXRlLWxlZ2FjeS1nZXQtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1wcml2YXRlLWNoZWNrLWR1cGxpY2F0ZS10aGVtZS1zdHlsZXMoJHRoZW1lLCAnbWF0LWV4cGFuc2lvbi1wYW5lbCcpIHtcbiAgICAkY29sb3I6IG1hdC1nZXQtY29sb3ItY29uZmlnKCR0aGVtZSk7XG4gICAgJGRlbnNpdHk6IG1hdC1nZXQtZGVuc2l0eS1jb25maWcoJHRoZW1lKTtcbiAgICAkdHlwb2dyYXBoeTogbWF0LWdldC10eXBvZ3JhcGh5LWNvbmZpZygkdGhlbWUpO1xuXG4gICAgQGlmICRjb2xvciAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIG1hdC1leHBhbnNpb24tcGFuZWwtY29sb3IoJGNvbG9yKTtcbiAgICB9XG4gICAgQGlmICRkZW5zaXR5ICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LWV4cGFuc2lvbi1wYW5lbC1kZW5zaXR5KCRkZW5zaXR5KTtcbiAgICB9XG4gICAgQGlmICR0eXBvZ3JhcGh5ICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LWV4cGFuc2lvbi1wYW5lbC10eXBvZ3JhcGh5KCR0eXBvZ3JhcGh5KTtcbiAgICB9XG4gIH1cbn1cblxuXG5cblxuLy8gVGhpcyBtaXhpbiB3aWxsIGVuc3VyZSB0aGF0IGxpbmVzIHRoYXQgb3ZlcmZsb3cgdGhlIGNvbnRhaW5lciB3aWxsIGhpZGUgdGhlIG92ZXJmbG93IGFuZFxuLy8gdHJ1bmNhdGUgbmVhdGx5IHdpdGggYW4gZWxsaXBzaXMuXG5AbWl4aW4gbWF0LXRydW5jYXRlLWxpbmUoKSB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuXG4vLyBNaXhpbiB0byBwcm92aWRlIGFsbCBtYXQtbGluZSBzdHlsZXMsIGNoYW5naW5nIHNlY29uZGFyeSBmb250IHNpemUgYmFzZWQgb24gd2hldGhlciB0aGUgbGlzdFxuLy8gaXMgaW4gZGVuc2UgbW9kZS5cbkBtaXhpbiBtYXQtbGluZS1iYXNlKCRzZWNvbmRhcnktZm9udC1zaXplKSB7XG4gIC5tYXQtbGluZSB7XG4gICAgQGluY2x1ZGUgbWF0LXRydW5jYXRlLWxpbmUoKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gICAgLy8gYWxsIGxpbmVzIGJ1dCB0aGUgdG9wIGxpbmUgc2hvdWxkIGhhdmUgc21hbGxlciB0ZXh0XG4gICAgJjpudGgtY2hpbGQobisyKSB7XG4gICAgICBmb250LXNpemU6ICRzZWNvbmRhcnktZm9udC1zaXplO1xuICAgIH1cbiAgfVxufVxuXG4vLyBUaGlzIG1peGluIG5vcm1hbGl6ZXMgZGVmYXVsdCBlbGVtZW50IHN0eWxlcywgZS5nLiBmb250IHdlaWdodCBmb3IgaGVhZGluZyB0ZXh0LlxuQG1peGluIG1hdC1ub3JtYWxpemUtdGV4dCgpIHtcbiAgJiA+ICoge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICB9XG59XG5cbi8vIFRoaXMgbWl4aW4gcHJvdmlkZXMgYmFzZSBzdHlsZXMgZm9yIHRoZSB3cmFwcGVyIGFyb3VuZCBtYXQtbGluZSBlbGVtZW50cyBpbiBhIGxpc3QuXG5AbWl4aW4gbWF0LWxpbmUtd3JhcHBlci1iYXNlKCkge1xuICBAaW5jbHVkZSBtYXQtbm9ybWFsaXplLXRleHQoKTtcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4OiBhdXRvO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIC8vIE11c3QgcmVtb3ZlIHdyYXBwZXIgd2hlbiBsaW5lcyBhcmUgZW1wdHkgb3IgaXQgdGFrZXMgdXAgaG9yaXpvbnRhbFxuICAvLyBzcGFjZSBhbmQgcHVzaGVzIG90aGVyIGVsZW1lbnRzIHRvIHRoZSByaWdodC5cbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5cblxuLy8gSW5jbHVkZSB0aGlzIGVtcHR5IG1peGluIGZvciBjb25zaXN0ZW5jeSB3aXRoIHRoZSBvdGhlciBjb21wb25lbnRzLlxuQG1peGluIG1hdC1ncmlkLWxpc3QtY29sb3IoJGNvbmZpZy1vci10aGVtZSkge31cblxuQG1peGluIG1hdC1ncmlkLWxpc3QtdHlwb2dyYXBoeSgkY29uZmlnLW9yLXRoZW1lKSB7XG4gICRjb25maWc6IG1hdC1nZXQtdHlwb2dyYXBoeS1jb25maWcoJGNvbmZpZy1vci10aGVtZSk7XG4gIC5tYXQtZ3JpZC10aWxlLWhlYWRlcixcbiAgLm1hdC1ncmlkLXRpbGUtZm9vdGVyIHtcbiAgICBAaW5jbHVkZSBtYXQtbGluZS1iYXNlKG1hdC1mb250LXNpemUoJGNvbmZpZywgY2FwdGlvbikpO1xuICAgIGZvbnQtc2l6ZTogbWF0LWZvbnQtc2l6ZSgkY29uZmlnLCBib2R5LTEpO1xuICB9XG59XG5cbkBtaXhpbiBfbWF0LWdyaWQtbGlzdC1kZW5zaXR5KCRjb25maWctb3ItdGhlbWUpIHt9XG5cbkBtaXhpbiBtYXQtZ3JpZC1saXN0LXRoZW1lKCR0aGVtZS1vci1jb2xvci1jb25maWcpIHtcbiAgJHRoZW1lOiBtYXQtcHJpdmF0ZS1sZWdhY3ktZ2V0LXRoZW1lKCR0aGVtZS1vci1jb2xvci1jb25maWcpO1xuICBAaW5jbHVkZSBtYXQtcHJpdmF0ZS1jaGVjay1kdXBsaWNhdGUtdGhlbWUtc3R5bGVzKCR0aGVtZSwgJ21hdC1ncmlkLWxpc3QnKSB7XG4gICAgJGNvbG9yOiBtYXQtZ2V0LWNvbG9yLWNvbmZpZygkdGhlbWUpO1xuICAgICRkZW5zaXR5OiBtYXQtZ2V0LWRlbnNpdHktY29uZmlnKCR0aGVtZSk7XG4gICAgJHR5cG9ncmFwaHk6IG1hdC1nZXQtdHlwb2dyYXBoeS1jb25maWcoJHRoZW1lKTtcblxuICAgIEBpZiAkY29sb3IgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBtYXQtZ3JpZC1saXN0LWNvbG9yKCRjb2xvcik7XG4gICAgfVxuICAgIEBpZiAkZGVuc2l0eSAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIF9tYXQtZ3JpZC1saXN0LWRlbnNpdHkoJGRlbnNpdHkpO1xuICAgIH1cbiAgICBAaWYgJHR5cG9ncmFwaHkgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBtYXQtZ3JpZC1saXN0LXR5cG9ncmFwaHkoJHR5cG9ncmFwaHkpO1xuICAgIH1cbiAgfVxufVxuXG5cblxuQG1peGluIG1hdC1pY29uLWNvbG9yKCRjb25maWctb3ItdGhlbWUpIHtcbiAgJGNvbmZpZzogbWF0LWdldC1jb2xvci1jb25maWcoJGNvbmZpZy1vci10aGVtZSk7XG4gICRwcmltYXJ5OiBtYXAtZ2V0KCRjb25maWcsIHByaW1hcnkpO1xuICAkYWNjZW50OiBtYXAtZ2V0KCRjb25maWcsIGFjY2VudCk7XG4gICR3YXJuOiBtYXAtZ2V0KCRjb25maWcsIHdhcm4pO1xuICAkYmFja2dyb3VuZDogbWFwLWdldCgkY29uZmlnLCBiYWNrZ3JvdW5kKTtcbiAgJGZvcmVncm91bmQ6IG1hcC1nZXQoJGNvbmZpZywgZm9yZWdyb3VuZCk7XG5cbiAgLm1hdC1pY29uIHtcbiAgICAmLm1hdC1wcmltYXJ5IHtcbiAgICAgIGNvbG9yOiBtYXQtY29sb3IoJHByaW1hcnksIHRleHQpO1xuICAgIH1cblxuICAgICYubWF0LWFjY2VudCB7XG4gICAgICBjb2xvcjogbWF0LWNvbG9yKCRhY2NlbnQsIHRleHQpO1xuICAgIH1cblxuICAgICYubWF0LXdhcm4ge1xuICAgICAgY29sb3I6IG1hdC1jb2xvcigkd2FybiwgdGV4dCk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYXQtaWNvbi10eXBvZ3JhcGh5KCRjb25maWctb3ItdGhlbWUpIHt9XG5cbkBtaXhpbiBfbWF0LWljb24tZGVuc2l0eSgkY29uZmlnLW9yLXRoZW1lKSB7fVxuXG5AbWl4aW4gbWF0LWljb24tdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZykge1xuICAkdGhlbWU6IG1hdC1wcml2YXRlLWxlZ2FjeS1nZXQtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1wcml2YXRlLWNoZWNrLWR1cGxpY2F0ZS10aGVtZS1zdHlsZXMoJHRoZW1lLCAnbWF0LWljb24nKSB7XG4gICAgJGNvbG9yOiBtYXQtZ2V0LWNvbG9yLWNvbmZpZygkdGhlbWUpO1xuICAgICRkZW5zaXR5OiBtYXQtZ2V0LWRlbnNpdHktY29uZmlnKCR0aGVtZSk7XG4gICAgJHR5cG9ncmFwaHk6IG1hdC1nZXQtdHlwb2dyYXBoeS1jb25maWcoJHRoZW1lKTtcblxuICAgIEBpZiAkY29sb3IgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBtYXQtaWNvbi1jb2xvcigkY29sb3IpO1xuICAgIH1cbiAgICBAaWYgJGRlbnNpdHkgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBfbWF0LWljb24tZGVuc2l0eSgkZGVuc2l0eSk7XG4gICAgfVxuICAgIEBpZiAkdHlwb2dyYXBoeSAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIG1hdC1pY29uLXR5cG9ncmFwaHkoJHR5cG9ncmFwaHkpO1xuICAgIH1cbiAgfVxufVxuXG5cblxuXG5cblxuLy8gUmVuZGVycyBhIGdyYWRpZW50IGZvciBzaG93aW5nIHRoZSBkYXNoZWQgbGluZSB3aGVuIHRoZSBpbnB1dCBpcyBkaXNhYmxlZC5cbi8vIFVubGlrZSB1c2luZyBhIGJvcmRlciwgYSBncmFkaWVudCBhbGxvd3MgdXMgdG8gYWRqdXN0IHRoZSBzcGFjaW5nIG9mIHRoZSBkb3R0ZWQgbGluZVxuLy8gdG8gbWF0Y2ggdGhlIE1hdGVyaWFsIERlc2lnbiBzcGVjLlxuQG1peGluIG1hdC1wcml2YXRlLWNvbnRyb2wtZGlzYWJsZWQtdW5kZXJsaW5lKCRjb2xvcikge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRjb2xvciAwJSwgJGNvbG9yIDMzJSwgdHJhbnNwYXJlbnQgMCUpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDRweCAxMDAlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5cbi8vIEZpZ3VyZXMgb3V0IHRoZSBjb2xvciBvZiB0aGUgcGxhY2Vob2xkZXIgZm9yIGEgZm9ybSBjb250cm9sLlxuLy8gVXNlZCBwcmltYXJpbHkgdG8gcHJldmVudCB0aGUgdmFyaW91cyBmb3JtIGNvbnRyb2xzIGZyb21cbi8vIGJlY29taW5nIG91dCBvZiBzeW5jIHNpbmNlIHRoZXNlIGNvbG9ycyBhcmVuJ3QgaW4gYSBwYWxldHRlLlxuQGZ1bmN0aW9uIG1hdC1wcml2YXRlLWNvbnRyb2wtcGxhY2Vob2xkZXItY29sb3IoJGNvbmZpZykge1xuICAkZm9yZWdyb3VuZDogbWFwLWdldCgkY29uZmlnLCBmb3JlZ3JvdW5kKTtcbiAgJGlzLWRhcmstdGhlbWU6IG1hcC1nZXQoJGNvbmZpZywgaXMtZGFyayk7XG4gIEByZXR1cm4gbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCBzZWNvbmRhcnktdGV4dCwgaWYoJGlzLWRhcmstdGhlbWUsIDAuNSwgMC40MikpO1xufVxuXG5cbi8qIHN0eWxlbGludC1kaXNhYmxlIG1hdGVyaWFsL25vLXByZWZpeGVzICovXG5AbWl4aW4gdXNlci1zZWxlY3QoJHZhbHVlKSB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6ICR2YWx1ZTtcbiAgLW1vei11c2VyLXNlbGVjdDogJHZhbHVlO1xuICAtbXMtdXNlci1zZWxlY3Q6ICR2YWx1ZTtcbiAgdXNlci1zZWxlY3Q6ICR2YWx1ZTtcbn1cblxuQG1peGluIGlucHV0LXBsYWNlaG9sZGVyIHtcbiAgJjo6cGxhY2Vob2xkZXIge1xuICAgIEBjb250ZW50O1xuICB9XG5cbiAgJjo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cblxuICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICBAY29udGVudDtcbiAgfVxuXG4gICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gY3Vyc29yLWdyYWIge1xuICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcbiAgY3Vyc29yOiBncmFiO1xufVxuXG5AbWl4aW4gY3Vyc29yLWdyYWJiaW5nIHtcbiAgY3Vyc29yOiAtd2Via2l0LWdyYWJiaW5nO1xuICBjdXJzb3I6IGdyYWJiaW5nO1xufVxuXG5AbWl4aW4gYmFja2ZhY2UtdmlzaWJpbGl0eSgkdmFsdWUpIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiAkdmFsdWU7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6ICR2YWx1ZTtcbn1cblxuQG1peGluIHBvc2l0aW9uLXN0aWNreSgkaW1wb3J0YW50OiBmYWxzZSkge1xuICBwb3NpdGlvbjogLXdlYmtpdC1zdGlja3kgI3tpZigkaW1wb3J0YW50LCAnIWltcG9ydGFudCcsICcnKX07XG4gIHBvc2l0aW9uOiBzdGlja3kgI3tpZigkaW1wb3J0YW50LCAnIWltcG9ydGFudCcsICcnKX07XG59XG4vKiBzdHlsZWxpbnQtZW5hYmxlICovXG5cblxuXG5AbWl4aW4gbWF0LWlucHV0LWNvbG9yKCRjb25maWctb3ItdGhlbWUpIHtcbiAgJGNvbmZpZzogbWF0LWdldC1jb2xvci1jb25maWcoJGNvbmZpZy1vci10aGVtZSk7XG4gICRwcmltYXJ5OiBtYXAtZ2V0KCRjb25maWcsIHByaW1hcnkpO1xuICAkYWNjZW50OiBtYXAtZ2V0KCRjb25maWcsIGFjY2VudCk7XG4gICR3YXJuOiBtYXAtZ2V0KCRjb25maWcsIHdhcm4pO1xuICAkZm9yZWdyb3VuZDogbWFwLWdldCgkY29uZmlnLCBmb3JlZ3JvdW5kKTtcblxuICAubWF0LWZvcm0tZmllbGQtdHlwZS1tYXQtbmF0aXZlLXNlbGVjdCAubWF0LWZvcm0tZmllbGQtaW5maXg6OmFmdGVyIHtcbiAgICBjb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCBzZWNvbmRhcnktdGV4dCk7XG4gIH1cblxuICAubWF0LWlucHV0LWVsZW1lbnQ6ZGlzYWJsZWQsXG4gIC5tYXQtZm9ybS1maWVsZC10eXBlLW1hdC1uYXRpdmUtc2VsZWN0Lm1hdC1mb3JtLWZpZWxkLWRpc2FibGVkIC5tYXQtZm9ybS1maWVsZC1pbmZpeDo6YWZ0ZXIge1xuICAgIGNvbG9yOiBtYXQtY29sb3IoJGZvcmVncm91bmQsIGRpc2FibGVkLXRleHQpO1xuICB9XG5cbiAgLm1hdC1pbnB1dC1lbGVtZW50IHtcbiAgICBjYXJldC1jb2xvcjogbWF0LWNvbG9yKCRwcmltYXJ5LCB0ZXh0KTtcblxuICAgIEBpbmNsdWRlIGlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiBtYXQtcHJpdmF0ZS1jb250cm9sLXBsYWNlaG9sZGVyLWNvbG9yKCRjb25maWcpO1xuICAgIH1cblxuICAgIC8vIE9uIGRhcmsgdGhlbWVzIHdlIHNldCB0aGUgbmF0aXZlIGBzZWxlY3RgIGNvbG9yIHRvIHNvbWUgc2hhZGUgb2Ygd2hpdGUsXG4gICAgLy8gaG93ZXZlciB0aGUgY29sb3IgcHJvcGFnYXRlcyB0byBhbGwgb2YgdGhlIGBvcHRpb25gIGVsZW1lbnRzLCB3aGljaCBhcmVcbiAgICAvLyBhbHdheXMgb24gYSB3aGl0ZSBiYWNrZ3JvdW5kIGluc2lkZSB0aGUgZHJvcGRvd24sIGNhdXNpbmcgdGhlbSB0byBibGVuZCBpbi5cbiAgICAvLyBTaW5jZSB3ZSBjYW4ndCBjaGFuZ2UgYmFja2dyb3VuZCBvZiB0aGUgZHJvcGRvd24sIHdlIG5lZWQgdG8gZXhwbGljaXRseVxuICAgIC8vIHJlc2V0IHRoZSBjb2xvciBvZiB0aGUgb3B0aW9ucyB0byBzb21ldGhpbmcgZGFyay5cbiAgICBAaWYgKG1hcC1nZXQoJGNvbmZpZywgaXMtZGFyaykpIHtcbiAgICAgIG9wdGlvbiB7XG4gICAgICAgIGNvbG9yOiAkZGFyay1wcmltYXJ5LXRleHQ7XG4gICAgICB9XG5cbiAgICAgIG9wdGlvbjpkaXNhYmxlZCB7XG4gICAgICAgIGNvbG9yOiAkZGFyay1kaXNhYmxlZC10ZXh0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5tYXQtZm9ybS1maWVsZC5tYXQtYWNjZW50IC5tYXQtaW5wdXQtZWxlbWVudCB7XG4gICAgY2FyZXQtY29sb3I6IG1hdC1jb2xvcigkYWNjZW50LCB0ZXh0KTtcbiAgfVxuXG4gIC5tYXQtZm9ybS1maWVsZC5tYXQtd2FybiAubWF0LWlucHV0LWVsZW1lbnQsXG4gIC5tYXQtZm9ybS1maWVsZC1pbnZhbGlkIC5tYXQtaW5wdXQtZWxlbWVudCB7XG4gICAgY2FyZXQtY29sb3I6IG1hdC1jb2xvcigkd2FybiwgdGV4dCk7XG4gIH1cblxuICAubWF0LWZvcm0tZmllbGQtdHlwZS1tYXQtbmF0aXZlLXNlbGVjdC5tYXQtZm9ybS1maWVsZC1pbnZhbGlkIC5tYXQtZm9ybS1maWVsZC1pbmZpeDo6YWZ0ZXIge1xuICAgIGNvbG9yOiBtYXQtY29sb3IoJHdhcm4sIHRleHQpO1xuICB9XG59XG5cbkBtaXhpbiBtYXQtaW5wdXQtdHlwb2dyYXBoeSgkY29uZmlnLW9yLXRoZW1lKSB7XG4gICRjb25maWc6IG1hdC1nZXQtdHlwb2dyYXBoeS1jb25maWcoJGNvbmZpZy1vci10aGVtZSk7XG4gIC8vIFRoZSB1bml0LWxlc3MgbGluZS1oZWlnaHQgZnJvbSB0aGUgZm9udCBjb25maWcuXG4gICRsaW5lLWhlaWdodDogbWF0LWxpbmUtaGVpZ2h0KCRjb25maWcsIGlucHV0KTtcblxuICAvLyBUaGUgYW1vdW50IG9mIHNwYWNlIGJldHdlZW4gdGhlIHRvcCBvZiB0aGUgbGluZSBhbmQgdGhlIHRvcCBvZiB0aGUgYWN0dWFsIHRleHRcbiAgLy8gKGFzIGEgZnJhY3Rpb24gb2YgdGhlIGZvbnQtc2l6ZSkuXG4gICRsaW5lLXNwYWNpbmc6ICgkbGluZS1oZWlnaHQgLSAxKSAvIDI7XG5cbiAgLy8gPGlucHV0PiBlbGVtZW50cyBzZWVtIHRvIGhhdmUgdGhlaXIgaGVpZ2h0IHNldCBzbGlnaHRseSB0b28gbGFyZ2Ugb24gU2FmYXJpIGNhdXNpbmcgdGhlIHRleHQgdG9cbiAgLy8gYmUgbWlzYWxpZ25lZCB3LnIudC4gdGhlIHBsYWNlaG9sZGVyLiBBZGRpbmcgdGhpcyBtYXJnaW4gY29ycmVjdHMgaXQuXG4gIGlucHV0Lm1hdC1pbnB1dC1lbGVtZW50IHtcbiAgICBtYXJnaW4tdG9wOiAtJGxpbmUtc3BhY2luZyAqIDFlbTtcbiAgfVxufVxuXG5AbWl4aW4gX21hdC1pbnB1dC1kZW5zaXR5KCRjb25maWctb3ItdGhlbWUpIHt9XG5cbkBtaXhpbiBtYXQtaW5wdXQtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZykge1xuICAkdGhlbWU6IG1hdC1wcml2YXRlLWxlZ2FjeS1nZXQtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1wcml2YXRlLWNoZWNrLWR1cGxpY2F0ZS10aGVtZS1zdHlsZXMoJHRoZW1lLCAnbWF0LWlucHV0Jykge1xuICAgICRjb2xvcjogbWF0LWdldC1jb2xvci1jb25maWcoJHRoZW1lKTtcbiAgICAkZGVuc2l0eTogbWF0LWdldC1kZW5zaXR5LWNvbmZpZygkdGhlbWUpO1xuICAgICR0eXBvZ3JhcGh5OiBtYXQtZ2V0LXR5cG9ncmFwaHktY29uZmlnKCR0aGVtZSk7XG5cbiAgICBAaWYgJGNvbG9yICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LWlucHV0LWNvbG9yKCRjb2xvcik7XG4gICAgfVxuICAgIEBpZiAkZGVuc2l0eSAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIF9tYXQtaW5wdXQtZGVuc2l0eSgkZGVuc2l0eSk7XG4gICAgfVxuICAgIEBpZiAkdHlwb2dyYXBoeSAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIG1hdC1pbnB1dC10eXBvZ3JhcGh5KCR0eXBvZ3JhcGh5KTtcbiAgICB9XG4gIH1cbn1cblxuXG5cblxuXG5cblxuQG1peGluIG1hdC1saXN0LWNvbG9yKCRjb25maWctb3ItdGhlbWUpIHtcbiAgJGNvbmZpZzogbWF0LWdldC1jb2xvci1jb25maWcoJGNvbmZpZy1vci10aGVtZSk7XG4gICRiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRjb25maWcsIGJhY2tncm91bmQpO1xuICAkZm9yZWdyb3VuZDogbWFwLWdldCgkY29uZmlnLCBmb3JlZ3JvdW5kKTtcblxuICAubWF0LWxpc3QtYmFzZSB7XG4gICAgLm1hdC1saXN0LWl0ZW0ge1xuICAgICAgY29sb3I6IG1hdC1jb2xvcigkZm9yZWdyb3VuZCwgdGV4dCk7XG4gICAgfVxuXG4gICAgLm1hdC1saXN0LW9wdGlvbiB7XG4gICAgICBjb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCB0ZXh0KTtcbiAgICB9XG5cbiAgICAubWF0LXN1YmhlYWRlciB7XG4gICAgICBjb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCBzZWNvbmRhcnktdGV4dCk7XG4gICAgfVxuICB9XG5cbiAgLm1hdC1saXN0LWl0ZW0tZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1hdC1jb2xvcigkYmFja2dyb3VuZCwgZGlzYWJsZWQtbGlzdC1vcHRpb24pO1xuICB9XG5cbiAgLm1hdC1saXN0LW9wdGlvbixcbiAgLm1hdC1uYXYtbGlzdCAubWF0LWxpc3QtaXRlbSxcbiAgLm1hdC1hY3Rpb24tbGlzdCAubWF0LWxpc3QtaXRlbSB7XG4gICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kOiBtYXQtY29sb3IoJGJhY2tncm91bmQsICdob3ZlcicpO1xuICAgIH1cbiAgfVxuXG4gIC5tYXQtbGlzdC1zaW5nbGUtc2VsZWN0ZWQtb3B0aW9uIHtcbiAgICAmLCAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQ6IG1hdC1jb2xvcigkYmFja2dyb3VuZCwgaG92ZXIsIDAuMTIpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWF0LWxpc3QtdHlwb2dyYXBoeSgkY29uZmlnLW9yLXRoZW1lKSB7XG4gICRjb25maWc6IG1hdC1nZXQtdHlwb2dyYXBoeS1jb25maWcoJGNvbmZpZy1vci10aGVtZSk7XG4gICRmb250LWZhbWlseTogbWF0LWZvbnQtZmFtaWx5KCRjb25maWcpO1xuXG4gIC5tYXQtbGlzdC1pdGVtIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5O1xuICB9XG5cbiAgLm1hdC1saXN0LW9wdGlvbiB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseTtcbiAgfVxuXG4gIC8vIERlZmF1bHQgbGlzdFxuICAubWF0LWxpc3QtYmFzZSB7XG4gICAgLm1hdC1saXN0LWl0ZW0ge1xuICAgICAgZm9udC1zaXplOiBtYXQtZm9udC1zaXplKCRjb25maWcsIHN1YmhlYWRpbmctMik7XG4gICAgICBAaW5jbHVkZSBtYXQtbGluZS1iYXNlKG1hdC1mb250LXNpemUoJGNvbmZpZywgYm9keS0xKSk7XG4gICAgfVxuXG4gICAgLm1hdC1saXN0LW9wdGlvbiB7XG4gICAgICBmb250LXNpemU6IG1hdC1mb250LXNpemUoJGNvbmZpZywgc3ViaGVhZGluZy0yKTtcbiAgICAgIEBpbmNsdWRlIG1hdC1saW5lLWJhc2UobWF0LWZvbnQtc2l6ZSgkY29uZmlnLCBib2R5LTEpKTtcbiAgICB9XG5cbiAgICAubWF0LXN1YmhlYWRlciB7XG4gICAgICBmb250LWZhbWlseTogbWF0LWZvbnQtZmFtaWx5KCRjb25maWcsIGJvZHktMik7XG4gICAgICBmb250LXNpemU6IG1hdC1mb250LXNpemUoJGNvbmZpZywgYm9keS0yKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBtYXQtZm9udC13ZWlnaHQoJGNvbmZpZywgYm9keS0yKTtcbiAgICB9XG4gIH1cblxuICAvLyBEZW5zZSBsaXN0XG4gIC5tYXQtbGlzdC1iYXNlW2RlbnNlXSB7XG4gICAgLm1hdC1saXN0LWl0ZW0ge1xuICAgICAgZm9udC1zaXplOiBtYXQtZm9udC1zaXplKCRjb25maWcsIGNhcHRpb24pO1xuICAgICAgQGluY2x1ZGUgbWF0LWxpbmUtYmFzZShtYXQtZm9udC1zaXplKCRjb25maWcsIGNhcHRpb24pKTtcbiAgICB9XG5cbiAgICAubWF0LWxpc3Qtb3B0aW9uIHtcbiAgICAgIGZvbnQtc2l6ZTogbWF0LWZvbnQtc2l6ZSgkY29uZmlnLCBjYXB0aW9uKTtcbiAgICAgIEBpbmNsdWRlIG1hdC1saW5lLWJhc2UobWF0LWZvbnQtc2l6ZSgkY29uZmlnLCBjYXB0aW9uKSk7XG4gICAgfVxuXG4gICAgLm1hdC1zdWJoZWFkZXIge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseTtcbiAgICAgIGZvbnQtc2l6ZTogbWF0LWZvbnQtc2l6ZSgkY29uZmlnLCBjYXB0aW9uKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBtYXQtZm9udC13ZWlnaHQoJGNvbmZpZywgYm9keS0yKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIF9tYXQtbGlzdC1kZW5zaXR5KCRjb25maWctb3ItdGhlbWUpIHt9XG5cbkBtaXhpbiBtYXQtbGlzdC10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKSB7XG4gICR0aGVtZTogbWF0LXByaXZhdGUtbGVnYWN5LWdldC10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKTtcbiAgQGluY2x1ZGUgbWF0LXByaXZhdGUtY2hlY2stZHVwbGljYXRlLXRoZW1lLXN0eWxlcygkdGhlbWUsICdtYXQtbGlzdCcpIHtcbiAgICAkY29sb3I6IG1hdC1nZXQtY29sb3ItY29uZmlnKCR0aGVtZSk7XG4gICAgJGRlbnNpdHk6IG1hdC1nZXQtZGVuc2l0eS1jb25maWcoJHRoZW1lKTtcbiAgICAkdHlwb2dyYXBoeTogbWF0LWdldC10eXBvZ3JhcGh5LWNvbmZpZygkdGhlbWUpO1xuXG4gICAgQGlmICRjb2xvciAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIG1hdC1saXN0LWNvbG9yKCRjb2xvcik7XG4gICAgfVxuICAgIEBpZiAkZGVuc2l0eSAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIF9tYXQtbGlzdC1kZW5zaXR5KCRkZW5zaXR5KTtcbiAgICB9XG4gICAgQGlmICR0eXBvZ3JhcGh5ICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LWxpc3QtdHlwb2dyYXBoeSgkdHlwb2dyYXBoeSk7XG4gICAgfVxuICB9XG59XG5cblxuXG5cblxuXG5cbkBtaXhpbiBtYXQtbWVudS1jb2xvcigkY29uZmlnLW9yLXRoZW1lKSB7XG4gICRjb25maWc6IG1hdC1nZXQtY29sb3ItY29uZmlnKCRjb25maWctb3ItdGhlbWUpO1xuICAkYmFja2dyb3VuZDogbWFwLWdldCgkY29uZmlnLCBiYWNrZ3JvdW5kKTtcbiAgJGZvcmVncm91bmQ6IG1hcC1nZXQoJGNvbmZpZywgZm9yZWdyb3VuZCk7XG5cbiAgLm1hdC1tZW51LXBhbmVsIHtcbiAgICBAaW5jbHVkZSBtYXQtcHJpdmF0ZS10aGVtZS1vdmVycmlkYWJsZS1lbGV2YXRpb24oNCwgJGNvbmZpZyk7XG4gICAgYmFja2dyb3VuZDogbWF0LWNvbG9yKCRiYWNrZ3JvdW5kLCAnY2FyZCcpO1xuICB9XG5cbiAgLm1hdC1tZW51LWl0ZW0ge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiBtYXQtY29sb3IoJGZvcmVncm91bmQsICd0ZXh0Jyk7XG5cbiAgICAmW2Rpc2FibGVkXSB7XG4gICAgICAmLFxuICAgICAgJjo6YWZ0ZXIsXG4gICAgICAubWF0LWljb24tbm8tY29sb3Ige1xuICAgICAgICBjb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCAnZGlzYWJsZWQnKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubWF0LW1lbnUtaXRlbSAubWF0LWljb24tbm8tY29sb3IsXG4gIC5tYXQtbWVudS1pdGVtLXN1Ym1lbnUtdHJpZ2dlcjo6YWZ0ZXIge1xuICAgIGNvbG9yOiBtYXQtY29sb3IoJGZvcmVncm91bmQsICdpY29uJyk7XG4gIH1cblxuICAubWF0LW1lbnUtaXRlbTpob3ZlcixcbiAgLm1hdC1tZW51LWl0ZW0uY2RrLXByb2dyYW0tZm9jdXNlZCxcbiAgLm1hdC1tZW51LWl0ZW0uY2RrLWtleWJvYXJkLWZvY3VzZWQsXG4gIC5tYXQtbWVudS1pdGVtLWhpZ2hsaWdodGVkIHtcbiAgICAmOm5vdChbZGlzYWJsZWRdKSB7XG4gICAgICBiYWNrZ3JvdW5kOiBtYXQtY29sb3IoJGJhY2tncm91bmQsICdob3ZlcicpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWF0LW1lbnUtdHlwb2dyYXBoeSgkY29uZmlnLW9yLXRoZW1lKSB7XG4gICRjb25maWc6IG1hdC1nZXQtdHlwb2dyYXBoeS1jb25maWcoJGNvbmZpZy1vci10aGVtZSk7XG4gIC5tYXQtbWVudS1pdGVtIHtcbiAgICBmb250OiB7XG4gICAgICBmYW1pbHk6IG1hdC1mb250LWZhbWlseSgkY29uZmlnLCBib2R5LTEpO1xuICAgICAgc2l6ZTogbWF0LWZvbnQtc2l6ZSgkY29uZmlnLCBib2R5LTEpO1xuICAgICAgd2VpZ2h0OiBtYXQtZm9udC13ZWlnaHQoJGNvbmZpZywgYm9keS0xKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIF9tYXQtbWVudS1kZW5zaXR5KCRjb25maWctb3ItdGhlbWUpIHt9XG5cbkBtaXhpbiBtYXQtbWVudS10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKSB7XG4gICR0aGVtZTogbWF0LXByaXZhdGUtbGVnYWN5LWdldC10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKTtcbiAgQGluY2x1ZGUgbWF0LXByaXZhdGUtY2hlY2stZHVwbGljYXRlLXRoZW1lLXN0eWxlcygkdGhlbWUsICdtYXQtbWVudScpIHtcbiAgICAkY29sb3I6IG1hdC1nZXQtY29sb3ItY29uZmlnKCR0aGVtZSk7XG4gICAgJGRlbnNpdHk6IG1hdC1nZXQtZGVuc2l0eS1jb25maWcoJHRoZW1lKTtcbiAgICAkdHlwb2dyYXBoeTogbWF0LWdldC10eXBvZ3JhcGh5LWNvbmZpZygkdGhlbWUpO1xuXG4gICAgQGlmICRjb2xvciAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIG1hdC1tZW51LWNvbG9yKCRjb2xvcik7XG4gICAgfVxuICAgIEBpZiAkZGVuc2l0eSAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIF9tYXQtbWVudS1kZW5zaXR5KCRkZW5zaXR5KTtcbiAgICB9XG4gICAgQGlmICR0eXBvZ3JhcGh5ICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LW1lbnUtdHlwb2dyYXBoeSgkdHlwb2dyYXBoeSk7XG4gICAgfVxuICB9XG59XG5cblxuXG5cblxuXG4kbWF0LXBhZ2luYXRvci1oZWlnaHQ6IDU2cHggIWRlZmF1bHQ7XG4vLyBNaW5pbXVtIGhlaWdodCBmb3IgcGFnaW5hdG9yJ3MgaW4gdGhlIGhpZ2hlc3QgZGVuc2l0eSBpcyBkZXRlcm1pbmVkIGJhc2VkIG9uIGhvd1xuLy8gbXVjaCB0aGUgcGFnaW5hdG9yIGNhbiBzaHJpbmsgdW50aWwgdGhlIGNvbnRlbnQgZXhjZWVkcyAoaS5lLiBuYXZpZ2F0aW9uIGJ1dHRvbnMpLlxuJG1hdC1wYWdpbmF0b3ItbWluaW11bS1oZWlnaHQ6IDQwcHggIWRlZmF1bHQ7XG4kbWF0LXBhZ2luYXRvci1tYXhpbXVtLWhlaWdodDogJG1hdC1wYWdpbmF0b3ItaGVpZ2h0ICFkZWZhdWx0O1xuXG4kbWF0LXBhZ2luYXRvci1kZW5zaXR5LWNvbmZpZzogKFxuICBoZWlnaHQ6IChcbiAgICBkZWZhdWx0OiAkbWF0LXBhZ2luYXRvci1oZWlnaHQsXG4gICAgbWF4aW11bTogJG1hdC1wYWdpbmF0b3ItbWF4aW11bS1oZWlnaHQsXG4gICAgbWluaW11bTogJG1hdC1wYWdpbmF0b3ItbWluaW11bS1oZWlnaHQsXG4gIClcbikgIWRlZmF1bHQ7XG5cblxuQG1peGluIG1hdC1wYWdpbmF0b3ItY29sb3IoJGNvbmZpZy1vci10aGVtZSkge1xuICAkY29uZmlnOiBtYXQtZ2V0LWNvbG9yLWNvbmZpZygkY29uZmlnLW9yLXRoZW1lKTtcbiAgJGZvcmVncm91bmQ6IG1hcC1nZXQoJGNvbmZpZywgZm9yZWdyb3VuZCk7XG4gICRiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRjb25maWcsIGJhY2tncm91bmQpO1xuXG4gIC5tYXQtcGFnaW5hdG9yIHtcbiAgICBiYWNrZ3JvdW5kOiBtYXQtY29sb3IoJGJhY2tncm91bmQsICdjYXJkJyk7XG4gIH1cblxuICAubWF0LXBhZ2luYXRvcixcbiAgLm1hdC1wYWdpbmF0b3ItcGFnZS1zaXplIC5tYXQtc2VsZWN0LXRyaWdnZXIge1xuICAgIGNvbG9yOiBtYXQtY29sb3IoJGZvcmVncm91bmQsIHNlY29uZGFyeS10ZXh0KTtcbiAgfVxuXG4gIC5tYXQtcGFnaW5hdG9yLWRlY3JlbWVudCxcbiAgLm1hdC1wYWdpbmF0b3ItaW5jcmVtZW50IHtcbiAgICBib3JkZXItdG9wOiAycHggc29saWQgbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCAnaWNvbicpO1xuICAgIGJvcmRlci1yaWdodDogMnB4IHNvbGlkIG1hdC1jb2xvcigkZm9yZWdyb3VuZCwgJ2ljb24nKTtcbiAgfVxuXG4gIC5tYXQtcGFnaW5hdG9yLWZpcnN0LFxuICAubWF0LXBhZ2luYXRvci1sYXN0IHtcbiAgICBib3JkZXItdG9wOiAycHggc29saWQgbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCAnaWNvbicpO1xuICB9XG5cbiAgLm1hdC1pY29uLWJ1dHRvbltkaXNhYmxlZF0ge1xuICAgIC5tYXQtcGFnaW5hdG9yLWRlY3JlbWVudCxcbiAgICAubWF0LXBhZ2luYXRvci1pbmNyZW1lbnQsXG4gICAgLm1hdC1wYWdpbmF0b3ItZmlyc3QsXG4gICAgLm1hdC1wYWdpbmF0b3ItbGFzdCB7XG4gICAgICBib3JkZXItY29sb3I6IG1hdC1jb2xvcigkZm9yZWdyb3VuZCwgJ2Rpc2FibGVkJyk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYXQtcGFnaW5hdG9yLXR5cG9ncmFwaHkoJGNvbmZpZy1vci10aGVtZSkge1xuICAkY29uZmlnOiBtYXQtZ2V0LXR5cG9ncmFwaHktY29uZmlnKCRjb25maWctb3ItdGhlbWUpO1xuICAubWF0LXBhZ2luYXRvcixcbiAgLm1hdC1wYWdpbmF0b3ItcGFnZS1zaXplIC5tYXQtc2VsZWN0LXRyaWdnZXIge1xuICAgIGZvbnQ6IHtcbiAgICAgIGZhbWlseTogbWF0LWZvbnQtZmFtaWx5KCRjb25maWcsIGNhcHRpb24pO1xuICAgICAgc2l6ZTogbWF0LWZvbnQtc2l6ZSgkY29uZmlnLCBjYXB0aW9uKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1hdC1wYWdpbmF0b3ItZGVuc2l0eSgkY29uZmlnLW9yLXRoZW1lKSB7XG4gICRkZW5zaXR5LXNjYWxlOiBtYXQtZ2V0LWRlbnNpdHktY29uZmlnKCRjb25maWctb3ItdGhlbWUpO1xuICAkaGVpZ2h0OiBtYXQtcHJpdmF0ZS1kZW5zaXR5LXByb3AtdmFsdWUoJG1hdC1wYWdpbmF0b3ItZGVuc2l0eS1jb25maWcsICRkZW5zaXR5LXNjYWxlLCBoZWlnaHQpO1xuXG4gIEBpbmNsdWRlIG1hdC1wcml2YXRlLWRlbnNpdHktbGVnYWN5LWNvbXBhdGliaWxpdHkoKSB7XG4gICAgLm1hdC1wYWdpbmF0b3ItY29udGFpbmVyIHtcbiAgICAgIG1pbi1oZWlnaHQ6ICRoZWlnaHQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYXQtcGFnaW5hdG9yLXRoZW1lKCR0aGVtZS1vci1jb2xvci1jb25maWcpIHtcbiAgJHRoZW1lOiBtYXQtcHJpdmF0ZS1sZWdhY3ktZ2V0LXRoZW1lKCR0aGVtZS1vci1jb2xvci1jb25maWcpO1xuICBAaW5jbHVkZSBtYXQtcHJpdmF0ZS1jaGVjay1kdXBsaWNhdGUtdGhlbWUtc3R5bGVzKCR0aGVtZSwgJ21hdC1wYWdpbmF0b3InKSB7XG4gICAgJGNvbG9yOiBtYXQtZ2V0LWNvbG9yLWNvbmZpZygkdGhlbWUpO1xuICAgICRkZW5zaXR5OiBtYXQtZ2V0LWRlbnNpdHktY29uZmlnKCR0aGVtZSk7XG4gICAgJHR5cG9ncmFwaHk6IG1hdC1nZXQtdHlwb2dyYXBoeS1jb25maWcoJHRoZW1lKTtcblxuICAgIEBpZiAkY29sb3IgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBtYXQtcGFnaW5hdG9yLWNvbG9yKCRjb2xvcik7XG4gICAgfVxuICAgIEBpZiAkZGVuc2l0eSAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIG1hdC1wYWdpbmF0b3ItZGVuc2l0eSgkZGVuc2l0eSk7XG4gICAgfVxuICAgIEBpZiAkdHlwb2dyYXBoeSAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIG1hdC1wYWdpbmF0b3ItdHlwb2dyYXBoeSgkdHlwb2dyYXBoeSk7XG4gICAgfVxuICB9XG59XG5cblxuXG5cbkBtaXhpbiBtYXQtcHJvZ3Jlc3MtYmFyLWNvbG9yKCRjb25maWctb3ItdGhlbWUpIHtcbiAgJGNvbmZpZzogbWF0LWdldC1jb2xvci1jb25maWcoJGNvbmZpZy1vci10aGVtZSk7XG4gICRwcmltYXJ5OiBtYXAtZ2V0KCRjb25maWcsIHByaW1hcnkpO1xuICAkYWNjZW50OiBtYXAtZ2V0KCRjb25maWcsIGFjY2VudCk7XG4gICR3YXJuOiBtYXAtZ2V0KCRjb25maWcsIHdhcm4pO1xuXG4gIC5tYXQtcHJvZ3Jlc3MtYmFyLWJhY2tncm91bmQge1xuICAgIGZpbGw6IG1hdC1jb2xvcigkcHJpbWFyeSwgbGlnaHRlcik7XG4gIH1cblxuICAubWF0LXByb2dyZXNzLWJhci1idWZmZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1hdC1jb2xvcigkcHJpbWFyeSwgbGlnaHRlcik7XG4gIH1cblxuICAubWF0LXByb2dyZXNzLWJhci1maWxsOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWF0LWNvbG9yKCRwcmltYXJ5KTtcbiAgfVxuXG4gIC5tYXQtcHJvZ3Jlc3MtYmFyLm1hdC1hY2NlbnQge1xuICAgIC5tYXQtcHJvZ3Jlc3MtYmFyLWJhY2tncm91bmQge1xuICAgICAgZmlsbDogbWF0LWNvbG9yKCRhY2NlbnQsIGxpZ2h0ZXIpO1xuICAgIH1cblxuICAgIC5tYXQtcHJvZ3Jlc3MtYmFyLWJ1ZmZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXQtY29sb3IoJGFjY2VudCwgbGlnaHRlcik7XG4gICAgfVxuXG4gICAgLm1hdC1wcm9ncmVzcy1iYXItZmlsbDo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWF0LWNvbG9yKCRhY2NlbnQpO1xuICAgIH1cbiAgfVxuXG4gIC5tYXQtcHJvZ3Jlc3MtYmFyLm1hdC13YXJuIHtcbiAgICAubWF0LXByb2dyZXNzLWJhci1iYWNrZ3JvdW5kIHtcbiAgICAgIGZpbGw6IG1hdC1jb2xvcigkd2FybiwgbGlnaHRlcik7XG4gICAgfVxuXG4gICAgLm1hdC1wcm9ncmVzcy1iYXItYnVmZmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hdC1jb2xvcigkd2FybiwgbGlnaHRlcik7XG4gICAgfVxuXG4gICAgLm1hdC1wcm9ncmVzcy1iYXItZmlsbDo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWF0LWNvbG9yKCR3YXJuKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1hdC1wcm9ncmVzcy1iYXItdHlwb2dyYXBoeSgkY29uZmlnLW9yLXRoZW1lKSB7fVxuXG5AbWl4aW4gX21hdC1wcm9ncmVzcy1iYXItZGVuc2l0eSgkY29uZmlnLW9yLXRoZW1lKSB7fVxuXG5AbWl4aW4gbWF0LXByb2dyZXNzLWJhci10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKSB7XG4gICR0aGVtZTogbWF0LXByaXZhdGUtbGVnYWN5LWdldC10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKTtcbiAgQGluY2x1ZGUgbWF0LXByaXZhdGUtY2hlY2stZHVwbGljYXRlLXRoZW1lLXN0eWxlcygkdGhlbWUsICdtYXQtcHJvZ3Jlc3MtYmFyJykge1xuICAgICRjb2xvcjogbWF0LWdldC1jb2xvci1jb25maWcoJHRoZW1lKTtcbiAgICAkZGVuc2l0eTogbWF0LWdldC1kZW5zaXR5LWNvbmZpZygkdGhlbWUpO1xuICAgICR0eXBvZ3JhcGh5OiBtYXQtZ2V0LXR5cG9ncmFwaHktY29uZmlnKCR0aGVtZSk7XG5cbiAgICBAaWYgJGNvbG9yICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LXByb2dyZXNzLWJhci1jb2xvcigkY29sb3IpO1xuICAgIH1cbiAgICBAaWYgJGRlbnNpdHkgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBfbWF0LXByb2dyZXNzLWJhci1kZW5zaXR5KCRkZW5zaXR5KTtcbiAgICB9XG4gICAgQGlmICR0eXBvZ3JhcGh5ICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LXByb2dyZXNzLWJhci10eXBvZ3JhcGh5KCR0eXBvZ3JhcGh5KTtcbiAgICB9XG4gIH1cbn1cblxuXG5cblxuXG5AbWl4aW4gbWF0LXByb2dyZXNzLXNwaW5uZXItY29sb3IoJGNvbmZpZy1vci10aGVtZSkge1xuICAkY29uZmlnOiBtYXQtZ2V0LWNvbG9yLWNvbmZpZygkY29uZmlnLW9yLXRoZW1lKTtcbiAgJHByaW1hcnk6IG1hcC1nZXQoJGNvbmZpZywgcHJpbWFyeSk7XG4gICRhY2NlbnQ6IG1hcC1nZXQoJGNvbmZpZywgYWNjZW50KTtcbiAgJHdhcm46IG1hcC1nZXQoJGNvbmZpZywgd2Fybik7XG5cbiAgLm1hdC1wcm9ncmVzcy1zcGlubmVyLCAubWF0LXNwaW5uZXIge1xuICAgIGNpcmNsZSB7XG4gICAgICBzdHJva2U6IG1hdC1jb2xvcigkcHJpbWFyeSk7XG4gICAgfVxuXG4gICAgJi5tYXQtYWNjZW50IGNpcmNsZSB7XG4gICAgICBzdHJva2U6IG1hdC1jb2xvcigkYWNjZW50KTtcbiAgICB9XG5cbiAgICAmLm1hdC13YXJuIGNpcmNsZSB7XG4gICAgICBzdHJva2U6IG1hdC1jb2xvcigkd2Fybik7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYXQtcHJvZ3Jlc3Mtc3Bpbm5lci10eXBvZ3JhcGh5KCRjb25maWctb3ItdGhlbWUpIHt9XG5cbkBtaXhpbiBfbWF0LXByb2dyZXNzLXNwaW5uZXItZGVuc2l0eSgkY29uZmlnLW9yLXRoZW1lKSB7fVxuXG5AbWl4aW4gbWF0LXByb2dyZXNzLXNwaW5uZXItdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZykge1xuICAkdGhlbWU6IG1hdC1wcml2YXRlLWxlZ2FjeS1nZXQtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1wcml2YXRlLWNoZWNrLWR1cGxpY2F0ZS10aGVtZS1zdHlsZXMoJHRoZW1lLCAnbWF0LXByb2dyZXNzLXNwaW5uZXInKSB7XG4gICAgJGNvbG9yOiBtYXQtZ2V0LWNvbG9yLWNvbmZpZygkdGhlbWUpO1xuICAgICRkZW5zaXR5OiBtYXQtZ2V0LWRlbnNpdHktY29uZmlnKCR0aGVtZSk7XG4gICAgJHR5cG9ncmFwaHk6IG1hdC1nZXQtdHlwb2dyYXBoeS1jb25maWcoJHRoZW1lKTtcblxuICAgIEBpZiAkY29sb3IgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBtYXQtcHJvZ3Jlc3Mtc3Bpbm5lci1jb2xvcigkY29sb3IpO1xuICAgIH1cbiAgICBAaWYgJGRlbnNpdHkgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBfbWF0LXByb2dyZXNzLXNwaW5uZXItZGVuc2l0eSgkZGVuc2l0eSk7XG4gICAgfVxuICAgIEBpZiAkdHlwb2dyYXBoeSAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIG1hdC1wcm9ncmVzcy1zcGlubmVyLXR5cG9ncmFwaHkoJHR5cG9ncmFwaHkpO1xuICAgIH1cbiAgfVxufVxuXG5cblxuXG5cbkBtaXhpbiBfbWF0LXJhZGlvLWNvbG9yKCRwYWxldHRlKSB7XG4gICYubWF0LXJhZGlvLWNoZWNrZWQgLm1hdC1yYWRpby1vdXRlci1jaXJjbGUge1xuICAgIGJvcmRlci1jb2xvcjogbWF0LWNvbG9yKCRwYWxldHRlKTtcbiAgfVxuXG4gIC5tYXQtcmFkaW8taW5uZXItY2lyY2xlLFxuICAubWF0LXJhZGlvLXJpcHBsZSAubWF0LXJpcHBsZS1lbGVtZW50Om5vdCgubWF0LXJhZGlvLXBlcnNpc3RlbnQtcmlwcGxlKSxcbiAgJi5tYXQtcmFkaW8tY2hlY2tlZCAubWF0LXJhZGlvLXBlcnNpc3RlbnQtcmlwcGxlLFxuICAmOmFjdGl2ZSAubWF0LXJhZGlvLXBlcnNpc3RlbnQtcmlwcGxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXQtY29sb3IoJHBhbGV0dGUpO1xuICB9XG59XG5cbkBtaXhpbiBtYXQtcmFkaW8tY29sb3IoJGNvbmZpZy1vci10aGVtZSkge1xuICAkY29uZmlnOiBtYXQtZ2V0LWNvbG9yLWNvbmZpZygkY29uZmlnLW9yLXRoZW1lKTtcbiAgJHByaW1hcnk6IG1hcC1nZXQoJGNvbmZpZywgcHJpbWFyeSk7XG4gICRhY2NlbnQ6IG1hcC1nZXQoJGNvbmZpZywgYWNjZW50KTtcbiAgJHdhcm46IG1hcC1nZXQoJGNvbmZpZywgd2Fybik7XG4gICRiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRjb25maWcsIGJhY2tncm91bmQpO1xuICAkZm9yZWdyb3VuZDogbWFwLWdldCgkY29uZmlnLCBmb3JlZ3JvdW5kKTtcblxuICAubWF0LXJhZGlvLW91dGVyLWNpcmNsZSB7XG4gICAgYm9yZGVyLWNvbG9yOiBtYXQtY29sb3IoJGZvcmVncm91bmQsIHNlY29uZGFyeS10ZXh0KTtcbiAgfVxuXG4gIC5tYXQtcmFkaW8tYnV0dG9uIHtcbiAgICAmLm1hdC1wcmltYXJ5IHtcbiAgICAgIEBpbmNsdWRlIF9tYXQtcmFkaW8tY29sb3IoJHByaW1hcnkpO1xuICAgIH1cblxuICAgICYubWF0LWFjY2VudCB7XG4gICAgICBAaW5jbHVkZSBfbWF0LXJhZGlvLWNvbG9yKCRhY2NlbnQpO1xuICAgIH1cblxuICAgICYubWF0LXdhcm4ge1xuICAgICAgQGluY2x1ZGUgX21hdC1yYWRpby1jb2xvcigkd2Fybik7XG4gICAgfVxuXG4gICAgLy8gVGhpcyBuZWVkcyBleHRyYSBzcGVjaWZpY2l0eSwgYmVjYXVzZSB0aGUgY2xhc3NlcyBhYm92ZSBhcmUgY29tYmluZWRcbiAgICAvLyAoZS5nLiBgLm1hdC1yYWRpby1idXR0b24ubWF0LWFjY2VudGApIHdoaWNoIGluY3JlYXNlcyB0aGVpciBzcGVjaWZpY2l0eSBhIGxvdC5cbiAgICAvLyBUT0RPOiBjb25zaWRlciBtYWtpbmcgdGhlIHNlbGVjdG9ycyBpbnRvIGRlc2NlbmRhbnRzIChgLm1hdC1wcmltYXJ5IC5tYXQtcmFkaW8tYnV0dG9uYCkuXG4gICAgJi5tYXQtcmFkaW8tZGlzYWJsZWQge1xuICAgICAgJi5tYXQtcmFkaW8tY2hlY2tlZCAubWF0LXJhZGlvLW91dGVyLWNpcmNsZSxcbiAgICAgIC5tYXQtcmFkaW8tb3V0ZXItY2lyY2xlIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBtYXQtY29sb3IoJGZvcmVncm91bmQsIGRpc2FibGVkKTtcbiAgICAgIH1cblxuICAgICAgLm1hdC1yYWRpby1yaXBwbGUgLm1hdC1yaXBwbGUtZWxlbWVudCxcbiAgICAgIC5tYXQtcmFkaW8taW5uZXItY2lyY2xlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCBkaXNhYmxlZCk7XG4gICAgICB9XG5cbiAgICAgIC5tYXQtcmFkaW8tbGFiZWwtY29udGVudCB7XG4gICAgICAgIGNvbG9yOiBtYXQtY29sb3IoJGZvcmVncm91bmQsIGRpc2FibGVkKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTd2l0Y2ggdGhpcyB0byBhIHNvbGlkIGNvbG9yIHNpbmNlIHdlJ3JlIHVzaW5nIGBvcGFjaXR5YFxuICAgIC8vIHRvIGNvbnRyb2wgaG93IG9wYXF1ZSB0aGUgcmlwcGxlIHNob3VsZCBiZS5cbiAgICAubWF0LXJpcHBsZS1lbGVtZW50IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJGZvcmVncm91bmQsIGJhc2UpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWF0LXJhZGlvLXR5cG9ncmFwaHkoJGNvbmZpZy1vci10aGVtZSkge1xuICAkY29uZmlnOiBtYXQtZ2V0LXR5cG9ncmFwaHktY29uZmlnKCRjb25maWctb3ItdGhlbWUpO1xuICAubWF0LXJhZGlvLWJ1dHRvbiB7XG4gICAgZm9udC1mYW1pbHk6IG1hdC1mb250LWZhbWlseSgkY29uZmlnKTtcbiAgfVxufVxuXG5AbWl4aW4gX21hdC1yYWRpby1kZW5zaXR5KCRjb25maWctb3ItdGhlbWUpIHt9XG5cbkBtaXhpbiBtYXQtcmFkaW8tdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZykge1xuICAkdGhlbWU6IG1hdC1wcml2YXRlLWxlZ2FjeS1nZXQtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1wcml2YXRlLWNoZWNrLWR1cGxpY2F0ZS10aGVtZS1zdHlsZXMoJHRoZW1lLCAnbWF0LXJhZGlvJykge1xuICAgICRjb2xvcjogbWF0LWdldC1jb2xvci1jb25maWcoJHRoZW1lKTtcbiAgICAkZGVuc2l0eTogbWF0LWdldC1kZW5zaXR5LWNvbmZpZygkdGhlbWUpO1xuICAgICR0eXBvZ3JhcGh5OiBtYXQtZ2V0LXR5cG9ncmFwaHktY29uZmlnKCR0aGVtZSk7XG5cbiAgICBAaWYgJGNvbG9yICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LXJhZGlvLWNvbG9yKCRjb2xvcik7XG4gICAgfVxuICAgIEBpZiAkZGVuc2l0eSAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIF9tYXQtcmFkaW8tZGVuc2l0eSgkZGVuc2l0eSk7XG4gICAgfVxuICAgIEBpZiAkdHlwb2dyYXBoeSAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIG1hdC1yYWRpby10eXBvZ3JhcGh5KCR0eXBvZ3JhcGh5KTtcbiAgICB9XG4gIH1cbn1cblxuXG5cblxuXG5cblxuXG5AbWl4aW4gbWF0LXNlbGVjdC1jb2xvcigkY29uZmlnLW9yLXRoZW1lKSB7XG4gICRjb25maWc6IG1hdC1nZXQtY29sb3ItY29uZmlnKCRjb25maWctb3ItdGhlbWUpO1xuICAkZm9yZWdyb3VuZDogbWFwLWdldCgkY29uZmlnLCBmb3JlZ3JvdW5kKTtcbiAgJGJhY2tncm91bmQ6IG1hcC1nZXQoJGNvbmZpZywgYmFja2dyb3VuZCk7XG4gICRwcmltYXJ5OiBtYXAtZ2V0KCRjb25maWcsIHByaW1hcnkpO1xuICAkYWNjZW50OiBtYXAtZ2V0KCRjb25maWcsIGFjY2VudCk7XG4gICR3YXJuOiBtYXAtZ2V0KCRjb25maWcsIHdhcm4pO1xuXG4gIC5tYXQtc2VsZWN0LXZhbHVlIHtcbiAgICBjb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCB0ZXh0KTtcbiAgfVxuXG4gIC5tYXQtc2VsZWN0LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogbWF0LXByaXZhdGUtY29udHJvbC1wbGFjZWhvbGRlci1jb2xvcigkY29uZmlnKTtcbiAgfVxuXG4gIC5tYXQtc2VsZWN0LWRpc2FibGVkIC5tYXQtc2VsZWN0LXZhbHVlIHtcbiAgICBjb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCBkaXNhYmxlZC10ZXh0KTtcbiAgfVxuXG4gIC5tYXQtc2VsZWN0LWFycm93IHtcbiAgICBjb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCBzZWNvbmRhcnktdGV4dCk7XG4gIH1cblxuICAubWF0LXNlbGVjdC1wYW5lbCB7XG4gICAgYmFja2dyb3VuZDogbWF0LWNvbG9yKCRiYWNrZ3JvdW5kLCBjYXJkKTtcbiAgICBAaW5jbHVkZSBtYXQtcHJpdmF0ZS10aGVtZS1vdmVycmlkYWJsZS1lbGV2YXRpb24oNCwgJGNvbmZpZyk7XG5cbiAgICAubWF0LW9wdGlvbi5tYXQtc2VsZWN0ZWQ6bm90KC5tYXQtb3B0aW9uLW11bHRpcGxlKSB7XG4gICAgICBiYWNrZ3JvdW5kOiBtYXQtY29sb3IoJGJhY2tncm91bmQsIGhvdmVyLCAwLjEyKTtcbiAgICB9XG4gIH1cblxuICAubWF0LWZvcm0tZmllbGQge1xuICAgICYubWF0LWZvY3VzZWQge1xuICAgICAgJi5tYXQtcHJpbWFyeSAubWF0LXNlbGVjdC1hcnJvdyB7XG4gICAgICAgIGNvbG9yOiBtYXQtY29sb3IoJHByaW1hcnksIHRleHQpO1xuICAgICAgfVxuXG4gICAgICAmLm1hdC1hY2NlbnQgLm1hdC1zZWxlY3QtYXJyb3cge1xuICAgICAgICBjb2xvcjogbWF0LWNvbG9yKCRhY2NlbnQsIHRleHQpO1xuICAgICAgfVxuXG4gICAgICAmLm1hdC13YXJuIC5tYXQtc2VsZWN0LWFycm93IHtcbiAgICAgICAgY29sb3I6IG1hdC1jb2xvcigkd2FybiwgdGV4dCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm1hdC1zZWxlY3QubWF0LXNlbGVjdC1pbnZhbGlkIC5tYXQtc2VsZWN0LWFycm93IHtcbiAgICAgIGNvbG9yOiBtYXQtY29sb3IoJHdhcm4sIHRleHQpO1xuICAgIH1cblxuICAgIC5tYXQtc2VsZWN0Lm1hdC1zZWxlY3QtZGlzYWJsZWQgLm1hdC1zZWxlY3QtYXJyb3cge1xuICAgICAgY29sb3I6IG1hdC1jb2xvcigkZm9yZWdyb3VuZCwgZGlzYWJsZWQtdGV4dCk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYXQtc2VsZWN0LXR5cG9ncmFwaHkoJGNvbmZpZy1vci10aGVtZSkge1xuICAkY29uZmlnOiBtYXQtZ2V0LXR5cG9ncmFwaHktY29uZmlnKCRjb25maWctb3ItdGhlbWUpO1xuICAvLyBUaGUgdW5pdC1sZXNzIGxpbmUtaGVpZ2h0IGZyb20gdGhlIGZvbnQgY29uZmlnLlxuICAkbGluZS1oZWlnaHQ6IG1hdC1saW5lLWhlaWdodCgkY29uZmlnLCBpbnB1dCk7XG5cbiAgLm1hdC1zZWxlY3Qge1xuICAgIGZvbnQtZmFtaWx5OiBtYXQtZm9udC1mYW1pbHkoJGNvbmZpZyk7XG4gIH1cblxuICAubWF0LXNlbGVjdC10cmlnZ2VyIHtcbiAgICBoZWlnaHQ6ICRsaW5lLWhlaWdodCAqIDFlbTtcbiAgfVxufVxuXG5AbWl4aW4gX21hdC1zZWxlY3QtZGVuc2l0eSgkY29uZmlnLW9yLXRoZW1lKSB7fVxuXG5AbWl4aW4gbWF0LXNlbGVjdC10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKSB7XG4gICR0aGVtZTogbWF0LXByaXZhdGUtbGVnYWN5LWdldC10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKTtcbiAgQGluY2x1ZGUgbWF0LXByaXZhdGUtY2hlY2stZHVwbGljYXRlLXRoZW1lLXN0eWxlcygkdGhlbWUsICdtYXQtc2VsZWN0Jykge1xuICAgICRjb2xvcjogbWF0LWdldC1jb2xvci1jb25maWcoJHRoZW1lKTtcbiAgICAkZGVuc2l0eTogbWF0LWdldC1kZW5zaXR5LWNvbmZpZygkdGhlbWUpO1xuICAgICR0eXBvZ3JhcGh5OiBtYXQtZ2V0LXR5cG9ncmFwaHktY29uZmlnKCR0aGVtZSk7XG5cbiAgICBAaWYgJGNvbG9yICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LXNlbGVjdC1jb2xvcigkY29sb3IpO1xuICAgIH1cbiAgICBAaWYgJGRlbnNpdHkgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBfbWF0LXNlbGVjdC1kZW5zaXR5KCRkZW5zaXR5KTtcbiAgICB9XG4gICAgQGlmICR0eXBvZ3JhcGh5ICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LXNlbGVjdC10eXBvZ3JhcGh5KCR0eXBvZ3JhcGh5KTtcbiAgICB9XG4gIH1cbn1cblxuXG5cblxuXG5AbWl4aW4gbWF0LXNpZGVuYXYtY29sb3IoJGNvbmZpZy1vci10aGVtZSkge1xuICAkY29uZmlnOiBtYXQtZ2V0LWNvbG9yLWNvbmZpZygkY29uZmlnLW9yLXRoZW1lKTtcbiAgJHByaW1hcnk6IG1hcC1nZXQoJGNvbmZpZywgcHJpbWFyeSk7XG4gICRhY2NlbnQ6IG1hcC1nZXQoJGNvbmZpZywgYWNjZW50KTtcbiAgJHdhcm46IG1hcC1nZXQoJGNvbmZpZywgd2Fybik7XG4gICRiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRjb25maWcsIGJhY2tncm91bmQpO1xuICAkZm9yZWdyb3VuZDogbWFwLWdldCgkY29uZmlnLCBmb3JlZ3JvdW5kKTtcblxuICAkZHJhd2VyLWJhY2tncm91bmQtY29sb3I6IG1hdC1jb2xvcigkYmFja2dyb3VuZCwgZGlhbG9nKTtcbiAgJGRyYXdlci1jb250YWluZXItYmFja2dyb3VuZC1jb2xvcjogIG1hdC1jb2xvcigkYmFja2dyb3VuZCwgYmFja2dyb3VuZCk7XG4gICRkcmF3ZXItcHVzaC1iYWNrZ3JvdW5kLWNvbG9yOiBtYXQtY29sb3IoJGJhY2tncm91bmQsIGRpYWxvZyk7XG4gICRkcmF3ZXItc2lkZS1ib3JkZXI6IHNvbGlkIDFweCBtYXQtY29sb3IoJGZvcmVncm91bmQsIGRpdmlkZXIpO1xuXG4gIC5tYXQtZHJhd2VyLWNvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRyYXdlci1jb250YWluZXItYmFja2dyb3VuZC1jb2xvcjtcbiAgICBjb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCB0ZXh0KTtcbiAgfVxuXG4gIC5tYXQtZHJhd2VyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJhd2VyLWJhY2tncm91bmQtY29sb3I7XG4gICAgY29sb3I6IG1hdC1jb2xvcigkZm9yZWdyb3VuZCwgdGV4dCk7XG5cbiAgICAmLm1hdC1kcmF3ZXItcHVzaCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJhd2VyLXB1c2gtYmFja2dyb3VuZC1jb2xvcjtcbiAgICB9XG5cbiAgICAmOm5vdCgubWF0LWRyYXdlci1zaWRlKSB7XG4gICAgICAvLyBUaGUgZWxldmF0aW9uIG9mIHotMTYgaXMgbm90ZWQgaW4gdGhlIGRlc2lnbiBzcGVjaWZpY2F0aW9ucy5cbiAgICAgIC8vIFNlZSBodHRwczovL21hdGVyaWFsLmlvL2Rlc2lnbi9jb21wb25lbnRzL25hdmlnYXRpb24tZHJhd2VyLmh0bWxcbiAgICAgIEBpbmNsdWRlIG1hdC1wcml2YXRlLXRoZW1lLWVsZXZhdGlvbigxNiwgJGNvbmZpZyk7XG4gICAgfVxuICB9XG5cbiAgLm1hdC1kcmF3ZXItc2lkZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAkZHJhd2VyLXNpZGUtYm9yZGVyO1xuXG4gICAgJi5tYXQtZHJhd2VyLWVuZCB7XG4gICAgICBib3JkZXItbGVmdDogJGRyYXdlci1zaWRlLWJvcmRlcjtcbiAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICB9XG4gIH1cblxuICBbZGlyPSdydGwnXSAubWF0LWRyYXdlci1zaWRlIHtcbiAgICBib3JkZXItbGVmdDogJGRyYXdlci1zaWRlLWJvcmRlcjtcbiAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG5cbiAgICAmLm1hdC1kcmF3ZXItZW5kIHtcbiAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgICAgYm9yZGVyLXJpZ2h0OiAkZHJhd2VyLXNpZGUtYm9yZGVyO1xuICAgIH1cbiAgfVxuXG4gIC5tYXQtZHJhd2VyLWJhY2tkcm9wLm1hdC1kcmF3ZXItc2hvd24ge1xuICAgICRvcGFjaXR5OiAwLjY7XG4gICAgJGJhY2tkcm9wLWNvbG9yOiBtYXQtY29sb3IoJGJhY2tncm91bmQsIGNhcmQsICRvcGFjaXR5KTtcblxuICAgIEBpZiAodHlwZS1vZigkYmFja2Ryb3AtY29sb3IpID09IGNvbG9yKSB7XG4gICAgICAvLyBXZSB1c2UgaW52ZXJ0KCkgaGVyZSB0byBoYXZlIHRoZSBkYXJrZW4gdGhlIGJhY2tncm91bmQgY29sb3IgZXhwZWN0ZWQgdG8gYmUgdXNlZC4gSWYgdGhlXG4gICAgICAvLyBiYWNrZ3JvdW5kIGlzIGxpZ2h0LCB3ZSB1c2UgYSBkYXJrIGJhY2tkcm9wLiBJZiB0aGUgYmFja2dyb3VuZCBpcyBkYXJrLFxuICAgICAgLy8gd2UgdXNlIGEgbGlnaHQgYmFja2Ryb3AuXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbnZlcnQoJGJhY2tkcm9wLWNvbG9yKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gSWYgd2UgY291bGRuJ3QgcmVzb2x2ZSB0aGUgYmFja2Ryb3AgY29sb3IgdG8gYSBjb2xvciB2YWx1ZSwgZmFsbCBiYWNrIHRvIHVzaW5nXG4gICAgICAvLyBgb3BhY2l0eWAgdG8gbWFrZSBpdCBvcGFxdWUgc2luY2UgaXRzIGVuZCB2YWx1ZSBjb3VsZCBiZSBhIHNvbGlkIGNvbG9yLlxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tkcm9wLWNvbG9yO1xuICAgICAgb3BhY2l0eTogJG9wYWNpdHk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYXQtc2lkZW5hdi10eXBvZ3JhcGh5KCRjb25maWctb3ItdGhlbWUpIHt9XG5cbkBtaXhpbiBfbWF0LXNpZGVuYXYtZGVuc2l0eSgkY29uZmlnLW9yLXRoZW1lKSB7fVxuXG5AbWl4aW4gbWF0LXNpZGVuYXYtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZykge1xuICAkdGhlbWU6IG1hdC1wcml2YXRlLWxlZ2FjeS1nZXQtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1wcml2YXRlLWNoZWNrLWR1cGxpY2F0ZS10aGVtZS1zdHlsZXMoJHRoZW1lLCAnbWF0LXNpZGVuYXYnKSB7XG4gICAgJGNvbG9yOiBtYXQtZ2V0LWNvbG9yLWNvbmZpZygkdGhlbWUpO1xuICAgICRkZW5zaXR5OiBtYXQtZ2V0LWRlbnNpdHktY29uZmlnKCR0aGVtZSk7XG4gICAgJHR5cG9ncmFwaHk6IG1hdC1nZXQtdHlwb2dyYXBoeS1jb25maWcoJHRoZW1lKTtcblxuICAgIEBpZiAkY29sb3IgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBtYXQtc2lkZW5hdi1jb2xvcigkY29sb3IpO1xuICAgIH1cbiAgICBAaWYgJGRlbnNpdHkgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBfbWF0LXNpZGVuYXYtZGVuc2l0eSgkZGVuc2l0eSk7XG4gICAgfVxuICAgIEBpZiAkdHlwb2dyYXBoeSAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIG1hdC1zaWRlbmF2LXR5cG9ncmFwaHkoJHR5cG9ncmFwaHkpO1xuICAgIH1cbiAgfVxufVxuXG5cblxuXG5cblxuQG1peGluIF9tYXQtc2xpZGUtdG9nZ2xlLWNoZWNrZWQoJHBhbGV0dGUsICR0aHVtYi1jaGVja2VkLWh1ZSkge1xuICAmLm1hdC1jaGVja2VkIHtcbiAgICAubWF0LXNsaWRlLXRvZ2dsZS10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXQtY29sb3IoJHBhbGV0dGUsICR0aHVtYi1jaGVja2VkLWh1ZSk7XG4gICAgfVxuXG4gICAgLm1hdC1zbGlkZS10b2dnbGUtYmFyIHtcbiAgICAgIC8vIE9wYWNpdHkgaXMgZGV0ZXJtaW5lZCBmcm9tIHRoZSBzcGVjcyBmb3IgdGhlIHNlbGVjdGlvbiBjb250cm9scy5cbiAgICAgIC8vIFNlZTogaHR0cHM6Ly9tYXRlcmlhbC5pby9kZXNpZ24vY29tcG9uZW50cy9zZWxlY3Rpb24tY29udHJvbHMuaHRtbCNzcGVjc1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWF0LWNvbG9yKCRwYWxldHRlLCAkdGh1bWItY2hlY2tlZC1odWUsIDAuNTQpO1xuICAgIH1cblxuICAgIC5tYXQtcmlwcGxlLWVsZW1lbnQge1xuICAgICAgLy8gU2V0IG5vIG9wYWNpdHkgZm9yIHRoZSByaXBwbGVzIGJlY2F1c2UgdGhlIHJpcHBsZSBvcGFjaXR5IHdpbGwgYmUgYWRqdXN0ZWQgZHluYW1pY2FsbHlcbiAgICAgIC8vIGJhc2VkIG9uIHRoZSB0eXBlIG9mIGludGVyYWN0aW9uIHdpdGggdGhlIHNsaWRlLXRvZ2dsZSAoZS5nLiBmb3IgaG92ZXIsIGZvY3VzKVxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWF0LWNvbG9yKCRwYWxldHRlLCAkdGh1bWItY2hlY2tlZC1odWUpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWF0LXNsaWRlLXRvZ2dsZS1jb2xvcigkY29uZmlnLW9yLXRoZW1lKSB7XG4gICRjb25maWc6IG1hdC1nZXQtY29sb3ItY29uZmlnKCRjb25maWctb3ItdGhlbWUpO1xuICAkaXMtZGFyazogbWFwLWdldCgkY29uZmlnLCBpcy1kYXJrKTtcbiAgJHByaW1hcnk6IG1hcC1nZXQoJGNvbmZpZywgcHJpbWFyeSk7XG4gICRhY2NlbnQ6IG1hcC1nZXQoJGNvbmZpZywgYWNjZW50KTtcbiAgJHdhcm46IG1hcC1nZXQoJGNvbmZpZywgd2Fybik7XG4gICRiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRjb25maWcsIGJhY2tncm91bmQpO1xuICAkZm9yZWdyb3VuZDogbWFwLWdldCgkY29uZmlnLCBmb3JlZ3JvdW5kKTtcblxuICAvLyBDb2xvciBodWVzIGFyZSBiYXNlZCBvbiB0aGUgc3BlY3Mgd2hpY2ggYnJpZWZseSBzaG93IHRoZSBodWVzIHRoYXQgYXJlIGFwcGxpZWQgdG8gYSBzd2l0Y2guXG4gIC8vIFRoZSAyMDE4IHNwZWNzIG5vIGxvbmdlciBkZXNjcmliZSBob3cgZGFyayBzd2l0Y2hlcyBzaG91bGQgbG9vayBsaWtlLiBEdWUgdG8gdGhlIGxhY2sgb2ZcbiAgLy8gaW5mb3JtYXRpb24gZm9yIGRhcmsgdGhlbWVkIHN3aXRjaGVzLCB3ZSBwYXJ0aWFsbHkga2VlcCB0aGUgb2xkIGJlaGF2aW9yIHRoYXQgaXMgYmFzZWQgb25cbiAgLy8gdGhlIHByZXZpb3VzIHNwZWNpZmljYXRpb25zLiBGb3IgdGhlIGNoZWNrZWQgY29sb3Igd2UgYWx3YXlzIHVzZSB0aGUgYGRlZmF1bHRgIGh1ZSBiZWNhdXNlXG4gIC8vIHRoYXQgZm9sbG93cyBNREMgYW5kIGFsc28gbWFrZXMgaXQgZWFzaWVyIGZvciBwZW9wbGUgdG8gY3JlYXRlIGEgY3VzdG9tIHRoZW1lIHdpdGhvdXQgbmVlZGluZ1xuICAvLyB0byBzcGVjaWZ5IGVhY2ggaHVlIGluZGl2aWR1YWxseS5cbiAgJHRodW1iLXVuY2hlY2tlZC1odWU6IGlmKCRpcy1kYXJrLCA0MDAsIDUwKTtcbiAgJHRodW1iLWNoZWNrZWQtaHVlOiBkZWZhdWx0O1xuXG4gICRiYXItdW5jaGVja2VkLWNvbG9yOiBtYXQtY29sb3IoJGZvcmVncm91bmQsIGRpc2FibGVkKTtcbiAgJHJpcHBsZS11bmNoZWNrZWQtY29sb3I6IG1hdC1jb2xvcigkZm9yZWdyb3VuZCwgYmFzZSk7XG5cbiAgLm1hdC1zbGlkZS10b2dnbGUge1xuICAgIEBpbmNsdWRlIF9tYXQtc2xpZGUtdG9nZ2xlLWNoZWNrZWQoJGFjY2VudCwgJHRodW1iLWNoZWNrZWQtaHVlKTtcblxuICAgICYubWF0LXByaW1hcnkge1xuICAgICAgQGluY2x1ZGUgX21hdC1zbGlkZS10b2dnbGUtY2hlY2tlZCgkcHJpbWFyeSwgJHRodW1iLWNoZWNrZWQtaHVlKTtcbiAgICB9XG5cbiAgICAmLm1hdC13YXJuIHtcbiAgICAgIEBpbmNsdWRlIF9tYXQtc2xpZGUtdG9nZ2xlLWNoZWNrZWQoJHdhcm4sICR0aHVtYi1jaGVja2VkLWh1ZSk7XG4gICAgfVxuXG4gICAgJjpub3QoLm1hdC1jaGVja2VkKSAubWF0LXJpcHBsZS1lbGVtZW50IHtcbiAgICAgIC8vIFNldCBubyBvcGFjaXR5IGZvciB0aGUgcmlwcGxlcyBiZWNhdXNlIHRoZSByaXBwbGUgb3BhY2l0eSB3aWxsIGJlIGFkanVzdGVkIGR5bmFtaWNhbGx5XG4gICAgICAvLyBiYXNlZCBvbiB0aGUgdHlwZSBvZiBpbnRlcmFjdGlvbiB3aXRoIHRoZSBzbGlkZS10b2dnbGUgKGUuZy4gZm9yIGhvdmVyLCBmb2N1cylcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyaXBwbGUtdW5jaGVja2VkLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5tYXQtc2xpZGUtdG9nZ2xlLXRodW1iIHtcbiAgICBAaW5jbHVkZSBtYXQtcHJpdmF0ZS10aGVtZS1lbGV2YXRpb24oMSwgJGNvbmZpZyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWF0LWNvbG9yKCRtYXQtZ3JleSwgJHRodW1iLXVuY2hlY2tlZC1odWUpO1xuICB9XG5cbiAgLm1hdC1zbGlkZS10b2dnbGUtYmFyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFyLXVuY2hlY2tlZC1jb2xvcjtcbiAgfVxufVxuXG5AbWl4aW4gbWF0LXNsaWRlLXRvZ2dsZS10eXBvZ3JhcGh5KCRjb25maWctb3ItdGhlbWUpIHtcbiAgJGNvbmZpZzogbWF0LWdldC10eXBvZ3JhcGh5LWNvbmZpZygkY29uZmlnLW9yLXRoZW1lKTtcbiAgLm1hdC1zbGlkZS10b2dnbGUtY29udGVudCB7XG4gICAgZm9udC1mYW1pbHk6IG1hdC1mb250LWZhbWlseSgkY29uZmlnKTtcbiAgfVxufVxuXG5AbWl4aW4gX21hdC1zbGlkZS10b2dnbGUtZGVuc2l0eSgkY29uZmlnLW9yLXRoZW1lKSB7fVxuXG5AbWl4aW4gbWF0LXNsaWRlLXRvZ2dsZS10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKSB7XG4gICR0aGVtZTogbWF0LXByaXZhdGUtbGVnYWN5LWdldC10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKTtcbiAgQGluY2x1ZGUgbWF0LXByaXZhdGUtY2hlY2stZHVwbGljYXRlLXRoZW1lLXN0eWxlcygkdGhlbWUsICdtYXQtc2xpZGUtdG9nZ2xlJykge1xuICAgICRjb2xvcjogbWF0LWdldC1jb2xvci1jb25maWcoJHRoZW1lKTtcbiAgICAkZGVuc2l0eTogbWF0LWdldC1kZW5zaXR5LWNvbmZpZygkdGhlbWUpO1xuICAgICR0eXBvZ3JhcGh5OiBtYXQtZ2V0LXR5cG9ncmFwaHktY29uZmlnKCR0aGVtZSk7XG5cbiAgICBAaWYgJGNvbG9yICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LXNsaWRlLXRvZ2dsZS1jb2xvcigkY29sb3IpO1xuICAgIH1cbiAgICBAaWYgJGRlbnNpdHkgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBfbWF0LXNsaWRlLXRvZ2dsZS1kZW5zaXR5KCRkZW5zaXR5KTtcbiAgICB9XG4gICAgQGlmICR0eXBvZ3JhcGh5ICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LXNsaWRlLXRvZ2dsZS10eXBvZ3JhcGh5KCR0eXBvZ3JhcGh5KTtcbiAgICB9XG4gIH1cbn1cblxuXG5cblxuXG5cbkBtaXhpbiBfbWF0LXNsaWRlci1pbm5lci1jb250ZW50LXRoZW1lKCRwYWxldHRlKSB7XG4gIC5tYXQtc2xpZGVyLXRyYWNrLWZpbGwsXG4gIC5tYXQtc2xpZGVyLXRodW1iLFxuICAubWF0LXNsaWRlci10aHVtYi1sYWJlbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWF0LWNvbG9yKCRwYWxldHRlKTtcbiAgfVxuXG4gIC5tYXQtc2xpZGVyLXRodW1iLWxhYmVsLXRleHQge1xuICAgIGNvbG9yOiBtYXQtY29sb3IoJHBhbGV0dGUsIGRlZmF1bHQtY29udHJhc3QpO1xuICB9XG5cbiAgLm1hdC1zbGlkZXItZm9jdXMtcmluZyB7XG4gICAgJG9wYWNpdHk6IDAuMjtcbiAgICAkY29sb3I6IG1hdC1jb2xvcigkcGFsZXR0ZSwgZGVmYXVsdCwgJG9wYWNpdHkpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcblxuICAgIC8vIGBtYXQtY29sb3JgIHVzZXMgYHJnYmFgIGZvciB0aGUgb3BhY2l0eSB3aGljaCB3b24ndCB3b3JrIHdpdGhcbiAgICAvLyBDU1MgdmFyaWFibGVzIHNvIHdlIG5lZWQgdG8gdXNlIGBvcGFjaXR5YCBhcyBhIGZhbGxiYWNrLlxuICAgIEBpZiAodHlwZS1vZigkY29sb3IpICE9IGNvbG9yKSB7XG4gICAgICBvcGFjaXR5OiAkb3BhY2l0eTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1hdC1zbGlkZXItY29sb3IoJGNvbmZpZy1vci10aGVtZSkge1xuICAkY29uZmlnOiBtYXQtZ2V0LWNvbG9yLWNvbmZpZygkY29uZmlnLW9yLXRoZW1lKTtcbiAgJHByaW1hcnk6IG1hcC1nZXQoJGNvbmZpZywgcHJpbWFyeSk7XG4gICRhY2NlbnQ6IG1hcC1nZXQoJGNvbmZpZywgYWNjZW50KTtcbiAgJHdhcm46IG1hcC1nZXQoJGNvbmZpZywgd2Fybik7XG4gICRiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRjb25maWcsIGJhY2tncm91bmQpO1xuICAkZm9yZWdyb3VuZDogbWFwLWdldCgkY29uZmlnLCBmb3JlZ3JvdW5kKTtcblxuICAkbWF0LXNsaWRlci1vZmYtY29sb3I6IG1hdC1jb2xvcigkZm9yZWdyb3VuZCwgc2xpZGVyLW9mZik7XG4gICRtYXQtc2xpZGVyLW9mZi1mb2N1c2VkLWNvbG9yOiBtYXQtY29sb3IoJGZvcmVncm91bmQsIHNsaWRlci1vZmYtYWN0aXZlKTtcbiAgJG1hdC1zbGlkZXItZGlzYWJsZWQtY29sb3I6IG1hdC1jb2xvcigkZm9yZWdyb3VuZCwgc2xpZGVyLW9mZik7XG4gICRtYXQtc2xpZGVyLWxhYmVsZWQtbWluLXZhbHVlLXRodW1iLWNvbG9yOiBtYXQtY29sb3IoJGZvcmVncm91bmQsIHNsaWRlci1taW4pO1xuICAkbWF0LXNsaWRlci1sYWJlbGVkLW1pbi12YWx1ZS10aHVtYi1sYWJlbC1jb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCBzbGlkZXItb2ZmKTtcbiAgJG1hdC1zbGlkZXItdGljay1vcGFjaXR5OiAwLjc7XG4gICRtYXQtc2xpZGVyLXRpY2stY29sb3I6IG1hdC1jb2xvcigkZm9yZWdyb3VuZCwgYmFzZSwgJG1hdC1zbGlkZXItdGljay1vcGFjaXR5KTtcbiAgJG1hdC1zbGlkZXItdGljay1zaXplOiAycHg7XG5cbiAgLm1hdC1zbGlkZXItdHJhY2stYmFja2dyb3VuZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG1hdC1zbGlkZXItb2ZmLWNvbG9yO1xuICB9XG5cbiAgLm1hdC1wcmltYXJ5IHtcbiAgICBAaW5jbHVkZSBfbWF0LXNsaWRlci1pbm5lci1jb250ZW50LXRoZW1lKCRwcmltYXJ5KTtcbiAgfVxuXG4gIC5tYXQtYWNjZW50IHtcbiAgICBAaW5jbHVkZSBfbWF0LXNsaWRlci1pbm5lci1jb250ZW50LXRoZW1lKCRhY2NlbnQpO1xuICB9XG5cbiAgLm1hdC13YXJuIHtcbiAgICBAaW5jbHVkZSBfbWF0LXNsaWRlci1pbm5lci1jb250ZW50LXRoZW1lKCR3YXJuKTtcbiAgfVxuXG4gIC5tYXQtc2xpZGVyOmhvdmVyLFxuICAuY2RrLWZvY3VzZWQge1xuICAgIC5tYXQtc2xpZGVyLXRyYWNrLWJhY2tncm91bmQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1hdC1zbGlkZXItb2ZmLWZvY3VzZWQtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm1hdC1zbGlkZXItZGlzYWJsZWQge1xuICAgIC5tYXQtc2xpZGVyLXRyYWNrLWJhY2tncm91bmQsXG4gICAgLm1hdC1zbGlkZXItdHJhY2stZmlsbCxcbiAgICAubWF0LXNsaWRlci10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWF0LXNsaWRlci1kaXNhYmxlZC1jb2xvcjtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIC5tYXQtc2xpZGVyLXRyYWNrLWJhY2tncm91bmQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWF0LXNsaWRlci1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubWF0LXNsaWRlci1taW4tdmFsdWUge1xuICAgIC5tYXQtc2xpZGVyLWZvY3VzLXJpbmcge1xuICAgICAgJG9wYWNpdHk6IDAuMTI7XG4gICAgICAkY29sb3I6IG1hdC1jb2xvcigkZm9yZWdyb3VuZCwgYmFzZSwgJG9wYWNpdHkpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuXG4gICAgICAvLyBgbWF0LWNvbG9yYCB1c2VzIGByZ2JhYCBmb3IgdGhlIG9wYWNpdHkgd2hpY2ggd29uJ3Qgd29yayB3aXRoXG4gICAgICAvLyBDU1MgdmFyaWFibGVzIHNvIHdlIG5lZWQgdG8gdXNlIGBvcGFjaXR5YCBhcyBhIGZhbGxiYWNrLlxuICAgICAgQGlmICh0eXBlLW9mKCRjb2xvcikgIT0gY29sb3IpIHtcbiAgICAgICAgb3BhY2l0eTogJG9wYWNpdHk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5tYXQtc2xpZGVyLXRodW1iLWxhYmVsLXNob3dpbmcge1xuICAgICAgLm1hdC1zbGlkZXItdGh1bWIsXG4gICAgICAubWF0LXNsaWRlci10aHVtYi1sYWJlbCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtYXQtc2xpZGVyLWxhYmVsZWQtbWluLXZhbHVlLXRodW1iLWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmLmNkay1mb2N1c2VkIHtcbiAgICAgICAgLm1hdC1zbGlkZXItdGh1bWIsXG4gICAgICAgIC5tYXQtc2xpZGVyLXRodW1iLWxhYmVsIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWF0LXNsaWRlci1sYWJlbGVkLW1pbi12YWx1ZS10aHVtYi1sYWJlbC1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICY6bm90KC5tYXQtc2xpZGVyLXRodW1iLWxhYmVsLXNob3dpbmcpIHtcbiAgICAgIC5tYXQtc2xpZGVyLXRodW1iIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkbWF0LXNsaWRlci1vZmYtY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJi5jZGstZm9jdXNlZCB7XG4gICAgICAgIC5tYXQtc2xpZGVyLXRodW1iIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRtYXQtc2xpZGVyLW9mZi1mb2N1c2VkLWNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5tYXQtc2xpZGVyLWRpc2FibGVkIC5tYXQtc2xpZGVyLXRodW1iIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRtYXQtc2xpZGVyLWRpc2FibGVkLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm1hdC1zbGlkZXItaGFzLXRpY2tzIC5tYXQtc2xpZGVyLXdyYXBwZXI6OmFmdGVyIHtcbiAgICBib3JkZXItY29sb3I6ICRtYXQtc2xpZGVyLXRpY2stY29sb3I7XG5cbiAgICAvLyBgbWF0LWNvbG9yYCB1c2VzIGByZ2JhYCBmb3IgdGhlIG9wYWNpdHkgd2hpY2ggd29uJ3Qgd29yayB3aXRoXG4gICAgLy8gQ1NTIHZhcmlhYmxlcyBzbyB3ZSBuZWVkIHRvIHVzZSBgb3BhY2l0eWAgYXMgYSBmYWxsYmFjay5cbiAgICBAaWYgKHR5cGUtb2YoJG1hdC1zbGlkZXItdGljay1jb2xvcikgIT0gY29sb3IpIHtcbiAgICAgIG9wYWNpdHk6ICRtYXQtc2xpZGVyLXRpY2stb3BhY2l0eTtcbiAgICB9XG4gIH1cblxuICAubWF0LXNsaWRlci1ob3Jpem9udGFsIC5tYXQtc2xpZGVyLXRpY2tzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiByZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkbWF0LXNsaWRlci10aWNrLWNvbG9yLFxuICAgICAgICAkbWF0LXNsaWRlci10aWNrLWNvbG9yICRtYXQtc2xpZGVyLXRpY2stc2l6ZSwgdHJhbnNwYXJlbnQgMCwgdHJhbnNwYXJlbnQpO1xuICAgIC8vIEZpcmVmb3ggZG9lc24ndCBkcmF3IHRoZSBncmFkaWVudCBjb3JyZWN0bHkgd2l0aCAndG8gcmlnaHQnXG4gICAgLy8gKHNlZSBodHRwczovL2J1Z3ppbGxhLm1vemlsbGEub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzE0MzE5KS5cbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LXJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoMC4wMDAxZGVnLCAkbWF0LXNsaWRlci10aWNrLWNvbG9yLFxuICAgICAgICAkbWF0LXNsaWRlci10aWNrLWNvbG9yICRtYXQtc2xpZGVyLXRpY2stc2l6ZSwgdHJhbnNwYXJlbnQgMCwgdHJhbnNwYXJlbnQpO1xuXG4gICAgLy8gYG1hdC1jb2xvcmAgdXNlcyBgcmdiYWAgZm9yIHRoZSBvcGFjaXR5IHdoaWNoIHdvbid0IHdvcmsgd2l0aFxuICAgIC8vIENTUyB2YXJpYWJsZXMgc28gd2UgbmVlZCB0byB1c2UgYG9wYWNpdHlgIGFzIGEgZmFsbGJhY2suXG4gICAgQGlmICh0eXBlLW9mKCRtYXQtc2xpZGVyLXRpY2stY29sb3IpICE9IGNvbG9yKSB7XG4gICAgICBvcGFjaXR5OiAkbWF0LXNsaWRlci10aWNrLW9wYWNpdHk7XG4gICAgfVxuICB9XG5cbiAgLm1hdC1zbGlkZXItdmVydGljYWwgLm1hdC1zbGlkZXItdGlja3Mge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkbWF0LXNsaWRlci10aWNrLWNvbG9yLFxuICAgICAgICAkbWF0LXNsaWRlci10aWNrLWNvbG9yICRtYXQtc2xpZGVyLXRpY2stc2l6ZSwgdHJhbnNwYXJlbnQgMCwgdHJhbnNwYXJlbnQpO1xuXG4gICAgLy8gYG1hdC1jb2xvcmAgdXNlcyBgcmdiYWAgZm9yIHRoZSBvcGFjaXR5IHdoaWNoIHdvbid0IHdvcmsgd2l0aFxuICAgIC8vIENTUyB2YXJpYWJsZXMgc28gd2UgbmVlZCB0byB1c2UgYG9wYWNpdHlgIGFzIGEgZmFsbGJhY2suXG4gICAgQGlmICh0eXBlLW9mKCRtYXQtc2xpZGVyLXRpY2stY29sb3IpICE9IGNvbG9yKSB7XG4gICAgICBvcGFjaXR5OiAkbWF0LXNsaWRlci10aWNrLW9wYWNpdHk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYXQtc2xpZGVyLXR5cG9ncmFwaHkoJGNvbmZpZy1vci10aGVtZSkge1xuICAkY29uZmlnOiBtYXQtZ2V0LXR5cG9ncmFwaHktY29uZmlnKCRjb25maWctb3ItdGhlbWUpO1xuICAubWF0LXNsaWRlci10aHVtYi1sYWJlbC10ZXh0IHtcbiAgICBmb250OiB7XG4gICAgICBmYW1pbHk6IG1hdC1mb250LWZhbWlseSgkY29uZmlnKTtcbiAgICAgIHNpemU6IG1hdC1mb250LXNpemUoJGNvbmZpZywgY2FwdGlvbik7XG4gICAgICB3ZWlnaHQ6IG1hdC1mb250LXdlaWdodCgkY29uZmlnLCBib2R5LTIpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gX21hdC1zbGlkZXItZGVuc2l0eSgkY29uZmlnLW9yLXRoZW1lKSB7fVxuXG5AbWl4aW4gbWF0LXNsaWRlci10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKSB7XG4gICR0aGVtZTogbWF0LXByaXZhdGUtbGVnYWN5LWdldC10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKTtcbiAgQGluY2x1ZGUgbWF0LXByaXZhdGUtY2hlY2stZHVwbGljYXRlLXRoZW1lLXN0eWxlcygkdGhlbWUsICdtYXQtc2xpZGVyJykge1xuICAgICRjb2xvcjogbWF0LWdldC1jb2xvci1jb25maWcoJHRoZW1lKTtcbiAgICAkZGVuc2l0eTogbWF0LWdldC1kZW5zaXR5LWNvbmZpZygkdGhlbWUpO1xuICAgICR0eXBvZ3JhcGh5OiBtYXQtZ2V0LXR5cG9ncmFwaHktY29uZmlnKCR0aGVtZSk7XG5cbiAgICBAaWYgJGNvbG9yICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LXNsaWRlci1jb2xvcigkY29sb3IpO1xuICAgIH1cbiAgICBAaWYgJGRlbnNpdHkgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBfbWF0LXNsaWRlci1kZW5zaXR5KCRkZW5zaXR5KTtcbiAgICB9XG4gICAgQGlmICR0eXBvZ3JhcGh5ICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LXNsaWRlci10eXBvZ3JhcGh5KCR0eXBvZ3JhcGh5KTtcbiAgICB9XG4gIH1cbn1cblxuXG5cblxuXG4kbWF0LXN0ZXBwZXItaGVhZGVyLWhlaWdodDogNzJweCAhZGVmYXVsdDtcbi8vIE1pbmltdW0gaGVpZ2h0IGZvciBoaWdoZXN0IGRlbnNpdHkgc3RlcHBlcidzIGlzIGRldGVybWluZWQgYmFzZWQgb24gaG93IG11Y2hcbi8vIHN0ZXBwZXIgaGVhZGVycyBjYW4gc2hyaW5rIHVudGlsIHRoZSBzdGVwIGljb24gb3Igc3RlcCBsYWJlbCBleGNlZWQuIFdlIGNhbid0IHVzZVxuLy8gYSB2YWx1ZSBiZWxvdyBgNDJweGAgYmVjYXVzZSB0aGUgb3B0aW9uYWwgbGFiZWwgZm9yIHN0ZXBzIHdvdWxkIG90aGVyd2lzZSBleGNlZWQuXG4kbWF0LXN0ZXBwZXItaGVhZGVyLW1pbmltdW0taGVpZ2h0OiA0MnB4ICFkZWZhdWx0O1xuJG1hdC1zdGVwcGVyLWhlYWRlci1tYXhpbXVtLWhlaWdodDogJG1hdC1zdGVwcGVyLWhlYWRlci1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRtYXQtc3RlcHBlci1kZW5zaXR5LWNvbmZpZzogKFxuICBoZWlnaHQ6IChcbiAgICBkZWZhdWx0OiAkbWF0LXN0ZXBwZXItaGVhZGVyLWhlaWdodCxcbiAgICBtYXhpbXVtOiAkbWF0LXN0ZXBwZXItaGVhZGVyLW1heGltdW0taGVpZ2h0LFxuICAgIG1pbmltdW06ICRtYXQtc3RlcHBlci1oZWFkZXItbWluaW11bS1oZWlnaHQsXG4gIClcbikgIWRlZmF1bHQ7XG5cbi8vIE5vdGU6IFRoZXNlIHZhcmlhYmxlcyBhcmUgbm90IGRlbm90ZWQgd2l0aCBgIWRlZmF1bHRgIGJlY2F1c2UgdGhleSBhcmUgdXNlZCBpbiB0aGUgbm9uLXRoZW1lXG4vLyBjb21wb25lbnQgc3R5bGVzLiBNb2RpZnlpbmcgdGhlc2UgdmFyaWFibGVzIGRvZXMgbm90IGhhdmUgdGhlIGRlc2lyZWQgZWZmZWN0IGZvciBjb25zdW1lcnMuXG4kbWF0LXN0ZXBwZXItbGFiZWwtaGVhZGVyLWhlaWdodDogMjRweDtcbiRtYXQtc3RlcHBlci1sYWJlbC1wb3NpdGlvbi1ib3R0b20tdG9wLWdhcDogMTZweDtcbiRtYXQtc3RlcHBlci1sYWJlbC1taW4td2lkdGg6IDUwcHg7XG5cbiRtYXQtdmVydGljYWwtc3RlcHBlci1jb250ZW50LW1hcmdpbjogMzZweDtcblxuJG1hdC1zdGVwcGVyLXNpZGUtZ2FwOiAyNHB4O1xuJG1hdC1zdGVwcGVyLWxpbmUtd2lkdGg6IDFweDtcbiRtYXQtc3RlcHBlci1saW5lLWdhcDogOHB4O1xuXG4kbWF0LXN0ZXAtc3ViLWxhYmVsLWZvbnQtc2l6ZTogMTJweDtcbiRtYXQtc3RlcC1oZWFkZXItaWNvbi1zaXplOiAxNnB4O1xuXG5cbkBtaXhpbiBtYXQtc3RlcHBlci1jb2xvcigkY29uZmlnLW9yLXRoZW1lKSB7XG4gICRjb25maWc6IG1hdC1nZXQtY29sb3ItY29uZmlnKCRjb25maWctb3ItdGhlbWUpO1xuICAkZm9yZWdyb3VuZDogbWFwLWdldCgkY29uZmlnLCBmb3JlZ3JvdW5kKTtcbiAgJGJhY2tncm91bmQ6IG1hcC1nZXQoJGNvbmZpZywgYmFja2dyb3VuZCk7XG4gICRwcmltYXJ5OiBtYXAtZ2V0KCRjb25maWcsIHByaW1hcnkpO1xuICAkYWNjZW50OiBtYXAtZ2V0KCRjb25maWcsIGFjY2VudCk7XG4gICR3YXJuOiBtYXAtZ2V0KCRjb25maWcsIHdhcm4pO1xuXG4gIC5tYXQtc3RlcC1oZWFkZXIge1xuICAgICYuY2RrLWtleWJvYXJkLWZvY3VzZWQsXG4gICAgJi5jZGstcHJvZ3JhbS1mb2N1c2VkLFxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWF0LWNvbG9yKCRiYWNrZ3JvdW5kLCBob3Zlcik7XG4gICAgfVxuXG4gICAgLy8gT24gdG91Y2ggZGV2aWNlcyB0aGUgOmhvdmVyIHN0YXRlIHdpbGwgbGluZ2VyIG9uIHRoZSBlbGVtZW50IGFmdGVyIGEgdGFwLlxuICAgIC8vIFJlc2V0IGl0IHZpYSBgQG1lZGlhYCBhZnRlciB0aGUgZGVjbGFyYXRpb24sIGJlY2F1c2UgdGhlIG1lZGlhIHF1ZXJ5IGlzbid0XG4gICAgLy8gc3VwcG9ydGVkIGJ5IGFsbCBicm93c2VycyB5ZXQuXG4gICAgQG1lZGlhIChob3Zlcjogbm9uZSkge1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm1hdC1zdGVwLWxhYmVsLFxuICAgIC5tYXQtc3RlcC1vcHRpb25hbCB7XG4gICAgICAvLyBUT0RPKGpvc2VwaHBlcnJvdHQpOiBVcGRhdGUgdG8gdXNpbmcgYSBjb3JyZWN0ZWQgZGlzYWJsZWQtdGV4dCBjb250cmFzdFxuICAgICAgLy8gaW5zdGVhZCBvZiBzZWNvbmRhcnktdGV4dC5cbiAgICAgIGNvbG9yOiBtYXQtY29sb3IoJGZvcmVncm91bmQsIHNlY29uZGFyeS10ZXh0KTtcbiAgICB9XG5cbiAgICAubWF0LXN0ZXAtaWNvbiB7XG4gICAgICAvLyBUT0RPKGpvc2VwaHBlcnJvdHQpOiBVcGRhdGUgdG8gdXNpbmcgYSBjb3JyZWN0ZWQgZGlzYWJsZWQtdGV4dCBjb250cmFzdFxuICAgICAgLy8gaW5zdGVhZCBvZiBzZWNvbmRhcnktdGV4dC5cbiAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hdC1jb2xvcigkZm9yZWdyb3VuZCwgc2Vjb25kYXJ5LXRleHQpO1xuICAgICAgY29sb3I6IG1hdC1jb2xvcigkcHJpbWFyeSwgZGVmYXVsdC1jb250cmFzdCk7XG4gICAgfVxuXG4gICAgLm1hdC1zdGVwLWljb24tc2VsZWN0ZWQsXG4gICAgLm1hdC1zdGVwLWljb24tc3RhdGUtZG9uZSxcbiAgICAubWF0LXN0ZXAtaWNvbi1zdGF0ZS1lZGl0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hdC1jb2xvcigkcHJpbWFyeSk7XG4gICAgICBjb2xvcjogbWF0LWNvbG9yKCRwcmltYXJ5LCBkZWZhdWx0LWNvbnRyYXN0KTtcbiAgICB9XG5cbiAgICAmLm1hdC1hY2NlbnQge1xuICAgICAgLm1hdC1zdGVwLWljb24ge1xuICAgICAgICBjb2xvcjogbWF0LWNvbG9yKCRhY2NlbnQsIGRlZmF1bHQtY29udHJhc3QpO1xuICAgICAgfVxuXG4gICAgICAubWF0LXN0ZXAtaWNvbi1zZWxlY3RlZCxcbiAgICAgIC5tYXQtc3RlcC1pY29uLXN0YXRlLWRvbmUsXG4gICAgICAubWF0LXN0ZXAtaWNvbi1zdGF0ZS1lZGl0IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWF0LWNvbG9yKCRhY2NlbnQpO1xuICAgICAgICBjb2xvcjogbWF0LWNvbG9yKCRhY2NlbnQsIGRlZmF1bHQtY29udHJhc3QpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYubWF0LXdhcm4ge1xuICAgICAgLm1hdC1zdGVwLWljb24ge1xuICAgICAgICBjb2xvcjogbWF0LWNvbG9yKCR3YXJuLCBkZWZhdWx0LWNvbnRyYXN0KTtcbiAgICAgIH1cblxuICAgICAgLm1hdC1zdGVwLWljb24tc2VsZWN0ZWQsXG4gICAgICAubWF0LXN0ZXAtaWNvbi1zdGF0ZS1kb25lLFxuICAgICAgLm1hdC1zdGVwLWljb24tc3RhdGUtZWRpdCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hdC1jb2xvcigkd2Fybik7XG4gICAgICAgIGNvbG9yOiBtYXQtY29sb3IoJHdhcm4sIGRlZmF1bHQtY29udHJhc3QpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5tYXQtc3RlcC1pY29uLXN0YXRlLWVycm9yIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgY29sb3I6IG1hdC1jb2xvcigkd2FybiwgdGV4dCk7XG4gICAgfVxuXG4gICAgLm1hdC1zdGVwLWxhYmVsLm1hdC1zdGVwLWxhYmVsLWFjdGl2ZSB7XG4gICAgICBjb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCB0ZXh0KTtcbiAgICB9XG5cbiAgICAubWF0LXN0ZXAtbGFiZWwubWF0LXN0ZXAtbGFiZWwtZXJyb3Ige1xuICAgICAgY29sb3I6IG1hdC1jb2xvcigkd2FybiwgdGV4dCk7XG4gICAgfVxuICB9XG5cbiAgLm1hdC1zdGVwcGVyLWhvcml6b250YWwsIC5tYXQtc3RlcHBlci12ZXJ0aWNhbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWF0LWNvbG9yKCRiYWNrZ3JvdW5kLCBjYXJkKTtcbiAgfVxuXG4gIC5tYXQtc3RlcHBlci12ZXJ0aWNhbC1saW5lOjpiZWZvcmUge1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiBtYXQtY29sb3IoJGZvcmVncm91bmQsIGRpdmlkZXIpO1xuICB9XG5cbiAgLm1hdC1ob3Jpem9udGFsLXN0ZXBwZXItaGVhZGVyOjpiZWZvcmUsXG4gIC5tYXQtaG9yaXpvbnRhbC1zdGVwcGVyLWhlYWRlcjo6YWZ0ZXIsXG4gIC5tYXQtc3RlcHBlci1ob3Jpem9udGFsLWxpbmUge1xuICAgIGJvcmRlci10b3AtY29sb3I6IG1hdC1jb2xvcigkZm9yZWdyb3VuZCwgZGl2aWRlcik7XG4gIH1cbn1cblxuQG1peGluIG1hdC1zdGVwcGVyLXR5cG9ncmFwaHkoJGNvbmZpZy1vci10aGVtZSkge1xuICAkY29uZmlnOiBtYXQtZ2V0LXR5cG9ncmFwaHktY29uZmlnKCRjb25maWctb3ItdGhlbWUpO1xuICAubWF0LXN0ZXBwZXItdmVydGljYWwsIC5tYXQtc3RlcHBlci1ob3Jpem9udGFsIHtcbiAgICBmb250LWZhbWlseTogbWF0LWZvbnQtZmFtaWx5KCRjb25maWcpO1xuICB9XG5cbiAgLm1hdC1zdGVwLWxhYmVsIHtcbiAgICBmb250OiB7XG4gICAgICBzaXplOiBtYXQtZm9udC1zaXplKCRjb25maWcsIGJvZHktMSk7XG4gICAgICB3ZWlnaHQ6IG1hdC1mb250LXdlaWdodCgkY29uZmlnLCBib2R5LTEpO1xuICAgIH07XG4gIH1cblxuICAubWF0LXN0ZXAtc3ViLWxhYmVsLWVycm9yIHtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICB9XG5cbiAgLm1hdC1zdGVwLWxhYmVsLWVycm9yIHtcbiAgICBmb250LXNpemU6IG1hdC1mb250LXNpemUoJGNvbmZpZywgYm9keS0yKTtcbiAgfVxuXG4gIC5tYXQtc3RlcC1sYWJlbC1zZWxlY3RlZCB7XG4gICAgZm9udDoge1xuICAgICAgc2l6ZTogbWF0LWZvbnQtc2l6ZSgkY29uZmlnLCBib2R5LTIpO1xuICAgICAgd2VpZ2h0OiBtYXQtZm9udC13ZWlnaHQoJGNvbmZpZywgYm9keS0yKTtcbiAgICB9O1xuICB9XG59XG5cbkBtaXhpbiBtYXQtc3RlcHBlci1kZW5zaXR5KCRjb25maWctb3ItdGhlbWUpIHtcbiAgJGRlbnNpdHktc2NhbGU6IG1hdC1nZXQtZGVuc2l0eS1jb25maWcoJGNvbmZpZy1vci10aGVtZSk7XG4gICRoZWlnaHQ6IG1hdC1wcml2YXRlLWRlbnNpdHktcHJvcC12YWx1ZSgkbWF0LXN0ZXBwZXItZGVuc2l0eS1jb25maWcsICRkZW5zaXR5LXNjYWxlLCBoZWlnaHQpO1xuICAkdmVydGljYWwtcGFkZGluZzogKCRoZWlnaHQgLSAkbWF0LXN0ZXBwZXItbGFiZWwtaGVhZGVyLWhlaWdodCkgLyAyO1xuXG4gIEBpbmNsdWRlIG1hdC1wcml2YXRlLWRlbnNpdHktbGVnYWN5LWNvbXBhdGliaWxpdHkoKSB7XG4gICAgLm1hdC1ob3Jpem9udGFsLXN0ZXBwZXItaGVhZGVyIHtcbiAgICAgIGhlaWdodDogJGhlaWdodDtcbiAgICB9XG5cbiAgICAubWF0LXN0ZXBwZXItbGFiZWwtcG9zaXRpb24tYm90dG9tIC5tYXQtaG9yaXpvbnRhbC1zdGVwcGVyLWhlYWRlcixcbiAgICAubWF0LXZlcnRpY2FsLXN0ZXBwZXItaGVhZGVyIHtcbiAgICAgIHBhZGRpbmc6ICR2ZXJ0aWNhbC1wYWRkaW5nICRtYXQtc3RlcHBlci1zaWRlLWdhcDtcbiAgICB9XG5cbiAgICAvLyBFbnN1cmVzIHRoYXQgdGhlIHZlcnRpY2FsIGxpbmVzIGZvciB0aGUgc3RlcCBjb250ZW50IGV4Y2VlZCBpbnRvIHRoZSBzdGVwXG4gICAgLy8gaGVhZGVycyB3aXRoIGEgZ2l2ZW4gZGlzdGFuY2UgKGAkbWF0LXN0ZXBwZXItbGluZS1nYXBgKSB0byB0aGUgc3RlcCBpY29uLlxuICAgIC5tYXQtc3RlcHBlci12ZXJ0aWNhbC1saW5lOjpiZWZvcmUge1xuICAgICAgdG9wOiAkbWF0LXN0ZXBwZXItbGluZS1nYXAgLSAkdmVydGljYWwtcGFkZGluZztcbiAgICAgIGJvdHRvbTogJG1hdC1zdGVwcGVyLWxpbmUtZ2FwIC0gJHZlcnRpY2FsLXBhZGRpbmc7XG4gICAgfVxuXG4gICAgLy8gRW5zdXJlcyB0aGF0IHRoZSBob3Jpem9udGFsIGxpbmVzIGZvciB0aGUgc3RlcCBoZWFkZXIgYXJlIGNlbnRlcmVkIHZlcnRpY2FsbHkuXG4gICAgLm1hdC1zdGVwcGVyLWxhYmVsLXBvc2l0aW9uLWJvdHRvbSAubWF0LWhvcml6b250YWwtc3RlcHBlci1oZWFkZXIge1xuICAgICAgJjo6YWZ0ZXIsICY6OmJlZm9yZSB7XG4gICAgICAgIHRvcDogJHZlcnRpY2FsLXBhZGRpbmcgKyAkbWF0LXN0ZXBwZXItbGFiZWwtaGVhZGVyLWhlaWdodCAvIDI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRW5zdXJlcyB0aGF0IHRoZSBob3Jpem9udGFsIGxpbmUgZm9yIHRoZSBzdGVwIGNvbnRlbnQgaXMgYWxpZ25lZCBjZW50ZXJlZCB2ZXJ0aWNhbGx5LlxuICAgIC5tYXQtc3RlcHBlci1sYWJlbC1wb3NpdGlvbi1ib3R0b20gLm1hdC1zdGVwcGVyLWhvcml6b250YWwtbGluZSB7XG4gICAgICB0b3A6ICR2ZXJ0aWNhbC1wYWRkaW5nICsgJG1hdC1zdGVwcGVyLWxhYmVsLWhlYWRlci1oZWlnaHQgLyAyO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWF0LXN0ZXBwZXItdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZykge1xuICAkdGhlbWU6IG1hdC1wcml2YXRlLWxlZ2FjeS1nZXQtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1wcml2YXRlLWNoZWNrLWR1cGxpY2F0ZS10aGVtZS1zdHlsZXMoJHRoZW1lLCAnbWF0LXN0ZXBwZXInKSB7XG4gICAgJGNvbG9yOiBtYXQtZ2V0LWNvbG9yLWNvbmZpZygkdGhlbWUpO1xuICAgICRkZW5zaXR5OiBtYXQtZ2V0LWRlbnNpdHktY29uZmlnKCR0aGVtZSk7XG4gICAgJHR5cG9ncmFwaHk6IG1hdC1nZXQtdHlwb2dyYXBoeS1jb25maWcoJHRoZW1lKTtcblxuICAgIEBpZiAkY29sb3IgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBtYXQtc3RlcHBlci1jb2xvcigkY29sb3IpO1xuICAgIH1cbiAgICBAaWYgJGRlbnNpdHkgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBtYXQtc3RlcHBlci1kZW5zaXR5KCRkZW5zaXR5KTtcbiAgICB9XG4gICAgQGlmICR0eXBvZ3JhcGh5ICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LXN0ZXBwZXItdHlwb2dyYXBoeSgkdHlwb2dyYXBoeSk7XG4gICAgfVxuICB9XG59XG5cblxuXG5AbWl4aW4gbWF0LXNvcnQtY29sb3IoJGNvbmZpZy1vci10aGVtZSkge1xuICAkY29uZmlnOiBtYXQtZ2V0LWNvbG9yLWNvbmZpZygkY29uZmlnLW9yLXRoZW1lKTtcbiAgJGJhY2tncm91bmQ6IG1hcC1nZXQoJGNvbmZpZywgYmFja2dyb3VuZCk7XG4gICRmb3JlZ3JvdW5kOiBtYXAtZ2V0KCRjb25maWcsIGZvcmVncm91bmQpO1xuXG4gIC5tYXQtc29ydC1oZWFkZXItYXJyb3cge1xuICAgICR0YWJsZS1iYWNrZ3JvdW5kOiBtYXQtY29sb3IoJGJhY2tncm91bmQsICdjYXJkJyk7XG4gICAgJHRleHQtY29sb3I6IG1hdC1jb2xvcigkZm9yZWdyb3VuZCwgc2Vjb25kYXJ5LXRleHQpO1xuXG4gICAgLy8gQmVjYXVzZSB0aGUgYXJyb3cgaXMgbWFkZSB1cCBvZiBtdWx0aXBsZSBlbGVtZW50cyB0aGF0IGFyZSBzdGFja2VkIG9uIHRvcCBvZiBlYWNoIG90aGVyLFxuICAgIC8vIHdlIGNhbid0IHVzZSB0aGUgc2VtaS10cmFuc3BhcmVudCBjb2xvciBmcm9tIHRoZSB0aGVtZSBkaXJlY3RseS4gSWYgdGhlIHZhbHVlIGlzIGEgY29sb3JcbiAgICAvLyAqdHlwZSosIHdlIGNvbnZlcnQgaXQgaW50byBhIHNvbGlkIGNvbG9yIGJ5IHRha2luZyB0aGUgb3BhY2l0eSBmcm9tIHRoZSByZ2JhIHZhbHVlIGFuZFxuICAgIC8vIHVzaW5nIHRoZSB2YWx1ZSB0byBkZXRlcm1pbmUgdGhlIHBlcmNlbnRhZ2Ugb2YgdGhlIGJhY2tncm91bmQgdG8gcHV0IGludG8gZm9yZWdyb3VuZFxuICAgIC8vIHdoZW4gbWl4aW5nIHRoZSBjb2xvcnMgdG9nZXRoZXIuIE90aGVyd2lzZSwgaWYgaXQgcmVzb2x2ZXMgdG8gc29tZXRoaW5nIGRpZmZlcmVudFxuICAgIC8vIChlLmcuIGl0IHJlc29sdmVzIHRvIGEgQ1NTIHZhcmlhYmxlKSwgd2UgdXNlIHRoZSBjb2xvciBkaXJlY3RseS5cbiAgICBAaWYgKHR5cGUtb2YoJHRhYmxlLWJhY2tncm91bmQpID09IGNvbG9yIGFuZCB0eXBlLW9mKCR0ZXh0LWNvbG9yKSA9PSBjb2xvcikge1xuICAgICAgJHRleHQtb3BhY2l0eTogb3BhY2l0eSgkdGV4dC1jb2xvcik7XG4gICAgICBjb2xvcjogbWl4KCR0YWJsZS1iYWNrZ3JvdW5kLCByZ2JhKCR0ZXh0LWNvbG9yLCAxKSwgKDEgLSAkdGV4dC1vcGFjaXR5KSAqIDEwMCUpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYXQtc29ydC10eXBvZ3JhcGh5KCRjb25maWctb3ItdGhlbWUpIHt9XG5cbkBtaXhpbiBfbWF0LXNvcnQtZGVuc2l0eSgkY29uZmlnLW9yLXRoZW1lKSB7fVxuXG5AbWl4aW4gbWF0LXNvcnQtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZykge1xuICAkdGhlbWU6IG1hdC1wcml2YXRlLWxlZ2FjeS1nZXQtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1wcml2YXRlLWNoZWNrLWR1cGxpY2F0ZS10aGVtZS1zdHlsZXMoJHRoZW1lLCAnbWF0LXNvcnQnKSB7XG4gICAgJGNvbG9yOiBtYXQtZ2V0LWNvbG9yLWNvbmZpZygkdGhlbWUpO1xuICAgICRkZW5zaXR5OiBtYXQtZ2V0LWRlbnNpdHktY29uZmlnKCR0aGVtZSk7XG4gICAgJHR5cG9ncmFwaHk6IG1hdC1nZXQtdHlwb2dyYXBoeS1jb25maWcoJHRoZW1lKTtcblxuICAgIEBpZiAkY29sb3IgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBtYXQtc29ydC1jb2xvcigkY29sb3IpO1xuICAgIH1cbiAgICBAaWYgJGRlbnNpdHkgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBfbWF0LXNvcnQtZGVuc2l0eSgkZGVuc2l0eSk7XG4gICAgfVxuICAgIEBpZiAkdHlwb2dyYXBoeSAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIG1hdC1zb3J0LXR5cG9ncmFwaHkoJHR5cG9ncmFwaHkpO1xuICAgIH1cbiAgfVxufVxuXG5cblxuXG5cbkBtaXhpbiBtYXQtdGFicy1jb2xvcigkY29uZmlnLW9yLXRoZW1lKSB7XG4gICRjb25maWc6IG1hdC1nZXQtY29sb3ItY29uZmlnKCRjb25maWctb3ItdGhlbWUpO1xuICAkcHJpbWFyeTogbWFwLWdldCgkY29uZmlnLCBwcmltYXJ5KTtcbiAgJGFjY2VudDogbWFwLWdldCgkY29uZmlnLCBhY2NlbnQpO1xuICAkd2FybjogbWFwLWdldCgkY29uZmlnLCB3YXJuKTtcbiAgJGJhY2tncm91bmQ6IG1hcC1nZXQoJGNvbmZpZywgYmFja2dyb3VuZCk7XG4gICRmb3JlZ3JvdW5kOiBtYXAtZ2V0KCRjb25maWcsIGZvcmVncm91bmQpO1xuICAkaGVhZGVyLWJvcmRlcjogMXB4IHNvbGlkIG1hdC1jb2xvcigkZm9yZWdyb3VuZCwgZGl2aWRlcik7XG5cbiAgLm1hdC10YWItbmF2LWJhcixcbiAgLm1hdC10YWItaGVhZGVyIHtcbiAgICBib3JkZXItYm90dG9tOiAkaGVhZGVyLWJvcmRlcjtcbiAgfVxuXG4gIC5tYXQtdGFiLWdyb3VwLWludmVydGVkLWhlYWRlciB7XG4gICAgLm1hdC10YWItbmF2LWJhcixcbiAgICAubWF0LXRhYi1oZWFkZXIge1xuICAgICAgYm9yZGVyLXRvcDogJGhlYWRlci1ib3JkZXI7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC5tYXQtdGFiLWxhYmVsLCAubWF0LXRhYi1saW5rIHtcbiAgICBjb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCB0ZXh0KTtcblxuICAgICYubWF0LXRhYi1kaXNhYmxlZCB7XG4gICAgICBjb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCBkaXNhYmxlZC10ZXh0KTtcbiAgICB9XG4gIH1cblxuICAubWF0LXRhYi1oZWFkZXItcGFnaW5hdGlvbi1jaGV2cm9uIHtcbiAgICBib3JkZXItY29sb3I6IG1hdC1jb2xvcigkZm9yZWdyb3VuZCwgdGV4dCk7XG4gIH1cblxuICAubWF0LXRhYi1oZWFkZXItcGFnaW5hdGlvbi1kaXNhYmxlZCAubWF0LXRhYi1oZWFkZXItcGFnaW5hdGlvbi1jaGV2cm9uIHtcbiAgICBib3JkZXItY29sb3I6IG1hdC1jb2xvcigkZm9yZWdyb3VuZCwgZGlzYWJsZWQtdGV4dCk7XG4gIH1cblxuICAvLyBSZW1vdmUgaGVhZGVyIGJvcmRlciB3aGVuIHRoZXJlIGlzIGEgYmFja2dyb3VuZCBjb2xvclxuICAubWF0LXRhYi1ncm91cFtjbGFzcyo9J21hdC1iYWNrZ3JvdW5kLSddIC5tYXQtdGFiLWhlYWRlcixcbiAgLm1hdC10YWItbmF2LWJhcltjbGFzcyo9J21hdC1iYWNrZ3JvdW5kLSddIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIGJvcmRlci10b3A6IG5vbmU7XG4gIH1cblxuICAubWF0LXRhYi1ncm91cCwgLm1hdC10YWItbmF2LWJhciB7XG4gICAgJHRoZW1lLWNvbG9yczogKFxuICAgICAgcHJpbWFyeTogJHByaW1hcnksXG4gICAgICBhY2NlbnQ6ICRhY2NlbnQsXG4gICAgICB3YXJuOiAkd2FyblxuICAgICk7XG5cbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICR0aGVtZS1jb2xvcnMge1xuICAgICAgLy8gU2V0IHRoZSBmb3JlZ3JvdW5kIGNvbG9yIG9mIHRoZSB0YWJzXG4gICAgICAmLm1hdC0jeyRuYW1lfSB7XG4gICAgICAgIEBpbmNsdWRlIF9tYXQtdGFiLWxhYmVsLWZvY3VzKCRjb2xvcik7XG4gICAgICAgIEBpbmNsdWRlIF9tYXQtaW5rLWJhcigkY29sb3IpO1xuXG4gICAgICAgIC8vIE92ZXJyaWRlIGluayBiYXIgd2hlbiBiYWNrZ3JvdW5kIGNvbG9yIGlzIHRoZSBzYW1lXG4gICAgICAgICYubWF0LWJhY2tncm91bmQtI3skbmFtZX0ge1xuICAgICAgICAgID4gLm1hdC10YWItaGVhZGVyLCA+IC5tYXQtdGFiLWxpbmstY29udGFpbmVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIF9tYXQtaW5rLWJhcigkY29sb3IsIGRlZmF1bHQtY29udHJhc3QpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgICAvLyBTZXQgYmFja2dyb3VuZCBjb2xvciBvZiB0aGUgdGFicyBhbmQgb3ZlcnJpZGUgZm9jdXMgY29sb3JcbiAgICAgICYubWF0LWJhY2tncm91bmQtI3skbmFtZX0ge1xuICAgICAgICBAaW5jbHVkZSBfbWF0LXRhYi1sYWJlbC1mb2N1cygkY29sb3IpO1xuICAgICAgICBAaW5jbHVkZSBfbWF0LXRhYnMtYmFja2dyb3VuZCgkY29sb3IpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gX21hdC1pbmstYmFyKCRjb2xvciwgJGh1ZTogZGVmYXVsdCkge1xuICAubWF0LWluay1iYXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1hdC1jb2xvcigkY29sb3IsICRodWUpO1xuICB9XG59XG5cbkBtaXhpbiBfbWF0LXRhYi1sYWJlbC1mb2N1cygkdGFiLWZvY3VzLWNvbG9yKSB7XG4gIC5tYXQtdGFiLWxhYmVsLFxuICAubWF0LXRhYi1saW5rIHtcbiAgICAmLmNkay1rZXlib2FyZC1mb2N1c2VkLFxuICAgICYuY2RrLXByb2dyYW0tZm9jdXNlZCB7XG4gICAgICAmOm5vdCgubWF0LXRhYi1kaXNhYmxlZCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXQtY29sb3IoJHRhYi1mb2N1cy1jb2xvciwgbGlnaHRlciwgMC4zKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIF9tYXQtdGFicy1iYWNrZ3JvdW5kKCRiYWNrZ3JvdW5kLWNvbG9yKSB7XG4gIC8vIE5vdGUgdGhhdCB0aGVzZSBzZWxlY3RvcnMgdGFyZ2V0IGRpcmVjdCBkZXNjZW5kYW50cyBzb1xuICAvLyB0aGF0IHRoZSBzdHlsZXMgZG9uJ3QgYXBwbHkgdG8gYW55IG5lc3RlZCB0YWIgZ3JvdXBzLlxuXG4gIC8vIFNldCBiYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgdGFiIGdyb3VwXG4gID4gLm1hdC10YWItaGVhZGVyLCA+IC5tYXQtdGFiLWxpbmstY29udGFpbmVyLCA+IC5tYXQtdGFiLWhlYWRlci1wYWdpbmF0aW9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXQtY29sb3IoJGJhY2tncm91bmQtY29sb3IpO1xuICB9XG5cbiAgLy8gU2V0IGxhYmVscyB0byBjb250cmFzdCBhZ2FpbnN0IGJhY2tncm91bmRcbiAgPiAubWF0LXRhYi1oZWFkZXIgLm1hdC10YWItbGFiZWwsID4gLm1hdC10YWItbGluay1jb250YWluZXIgLm1hdC10YWItbGluayB7XG4gICAgY29sb3I6IG1hdC1jb2xvcigkYmFja2dyb3VuZC1jb2xvciwgZGVmYXVsdC1jb250cmFzdCk7XG5cbiAgICAmLm1hdC10YWItZGlzYWJsZWQge1xuICAgICAgY29sb3I6IG1hdC1jb2xvcigkYmFja2dyb3VuZC1jb2xvciwgZGVmYXVsdC1jb250cmFzdCwgMC40KTtcbiAgICB9XG4gIH1cblxuICAvLyBTZXQgcGFnaW5hdGlvbiBjaGV2cm9ucyB0byBjb250cmFzdCBiYWNrZ3JvdW5kXG4gID4gLm1hdC10YWItaGVhZGVyLXBhZ2luYXRpb24gLm1hdC10YWItaGVhZGVyLXBhZ2luYXRpb24tY2hldnJvbiB7XG4gICAgYm9yZGVyLWNvbG9yOiBtYXQtY29sb3IoJGJhY2tncm91bmQtY29sb3IsIGRlZmF1bHQtY29udHJhc3QpO1xuICB9XG5cbiAgPiAubWF0LXRhYi1oZWFkZXItcGFnaW5hdGlvbi1kaXNhYmxlZCAubWF0LXRhYi1oZWFkZXItcGFnaW5hdGlvbi1jaGV2cm9uIHtcbiAgICBib3JkZXItY29sb3I6IG1hdC1jb2xvcigkYmFja2dyb3VuZC1jb2xvciwgZGVmYXVsdC1jb250cmFzdCwgMC40KTtcbiAgfVxuXG4gIC8vIFNldCByaXBwbGVzIGNvbG9yIHRvIGJlIHRoZSBjb250cmFzdCBjb2xvciBvZiB0aGUgbmV3IGJhY2tncm91bmQuIE90aGVyd2lzZSB0aGUgcmlwcGxlXG4gIC8vIGNvbG9yIHdpbGwgYmUgYmFzZWQgb24gdGhlIGFwcCBiYWNrZ3JvdW5kIGNvbG9yLlxuICA+IC5tYXQtdGFiLWhlYWRlciAubWF0LXJpcHBsZS1lbGVtZW50LFxuICA+IC5tYXQtdGFiLWxpbmstY29udGFpbmVyIC5tYXQtcmlwcGxlLWVsZW1lbnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1hdC1jb2xvcigkYmFja2dyb3VuZC1jb2xvciwgZGVmYXVsdC1jb250cmFzdCwgMC4xMik7XG4gIH1cbn1cblxuQG1peGluIG1hdC10YWJzLXR5cG9ncmFwaHkoJGNvbmZpZy1vci10aGVtZSkge1xuICAkY29uZmlnOiBtYXQtZ2V0LXR5cG9ncmFwaHktY29uZmlnKCRjb25maWctb3ItdGhlbWUpO1xuICAubWF0LXRhYi1ncm91cCB7XG4gICAgZm9udC1mYW1pbHk6IG1hdC1mb250LWZhbWlseSgkY29uZmlnKTtcbiAgfVxuXG4gIC5tYXQtdGFiLWxhYmVsLCAubWF0LXRhYi1saW5rIHtcbiAgICBmb250OiB7XG4gICAgICBmYW1pbHk6IG1hdC1mb250LWZhbWlseSgkY29uZmlnLCBidXR0b24pO1xuICAgICAgc2l6ZTogbWF0LWZvbnQtc2l6ZSgkY29uZmlnLCBidXR0b24pO1xuICAgICAgd2VpZ2h0OiBtYXQtZm9udC13ZWlnaHQoJGNvbmZpZywgYnV0dG9uKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIF9tYXQtdGFicy1kZW5zaXR5KCRjb25maWctb3ItdGhlbWUpIHt9XG5cbkBtaXhpbiBtYXQtdGFicy10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKSB7XG4gICR0aGVtZTogbWF0LXByaXZhdGUtbGVnYWN5LWdldC10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKTtcbiAgQGluY2x1ZGUgbWF0LXByaXZhdGUtY2hlY2stZHVwbGljYXRlLXRoZW1lLXN0eWxlcygkdGhlbWUsICdtYXQtdGFicycpIHtcbiAgICAkY29sb3I6IG1hdC1nZXQtY29sb3ItY29uZmlnKCR0aGVtZSk7XG4gICAgJGRlbnNpdHk6IG1hdC1nZXQtZGVuc2l0eS1jb25maWcoJHRoZW1lKTtcbiAgICAkdHlwb2dyYXBoeTogbWF0LWdldC10eXBvZ3JhcGh5LWNvbmZpZygkdGhlbWUpO1xuXG4gICAgQGlmICRjb2xvciAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIG1hdC10YWJzLWNvbG9yKCRjb2xvcik7XG4gICAgfVxuICAgIEBpZiAkZGVuc2l0eSAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIF9tYXQtdGFicy1kZW5zaXR5KCRkZW5zaXR5KTtcbiAgICB9XG4gICAgQGlmICR0eXBvZ3JhcGh5ICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LXRhYnMtdHlwb2dyYXBoeSgkdHlwb2dyYXBoeSk7XG4gICAgfVxuICB9XG59XG5cblxuXG5cblxuXG4vLyBNaW5pbXVtIGhlaWdodCBmb3IgdG9vbGJhcidzIGluIHRoZSBoaWdoZXN0IGRlbnNpdHkgaXMgZGlmZmljdWx0IHRvIGRldGVybWluZSBiZWNhdXNlXG4vLyBkZXZlbG9wZXJzIGNhbiBwcm9qZWN0IGFyYml0cmFyeSBjb250ZW50LiBXZSB1c2UgYSBtaW5pbXVtIHZhbHVlIHRoYXQgZW5zdXJlcyB0aGF0IG1vc3Rcbi8vIGNvbW1vbiBjb250ZW50IChlLmcuIGljb24gYnV0dG9ucykgZG9lcyBub3QgZXhjZWVkIHRoZSByb3cgYm91bmRhcmllcyBpbiBoaWdoZXN0IGRlbnNpdHkuXG4kbWF0LXRvb2xiYXItbWluaW11bS1oZWlnaHQ6IDQ0cHggIWRlZmF1bHQ7XG5cbiRtYXQtdG9vbGJhci1oZWlnaHQtZGVza3RvcDogNjRweCAhZGVmYXVsdDtcbiRtYXQtdG9vbGJhci1tYXhpbXVtLWhlaWdodC1kZXNrdG9wOiAkbWF0LXRvb2xiYXItaGVpZ2h0LWRlc2t0b3AgIWRlZmF1bHQ7XG4kbWF0LXRvb2xiYXItbWluaW11bS1oZWlnaHQtZGVza3RvcDogJG1hdC10b29sYmFyLW1pbmltdW0taGVpZ2h0ICFkZWZhdWx0O1xuXG4kbWF0LXRvb2xiYXItaGVpZ2h0LW1vYmlsZTogNTZweCAhZGVmYXVsdDtcbiRtYXQtdG9vbGJhci1tYXhpbXVtLWhlaWdodC1tb2JpbGU6ICRtYXQtdG9vbGJhci1oZWlnaHQtbW9iaWxlICFkZWZhdWx0O1xuJG1hdC10b29sYmFyLW1pbmltdW0taGVpZ2h0LW1vYmlsZTogJG1hdC10b29sYmFyLW1pbmltdW0taGVpZ2h0ICFkZWZhdWx0O1xuXG4kbWF0LXRvb2xiYXItZGVza3RvcC1kZW5zaXR5LWNvbmZpZzogKFxuICBoZWlnaHQ6IChcbiAgICBkZWZhdWx0OiAkbWF0LXRvb2xiYXItaGVpZ2h0LWRlc2t0b3AsXG4gICAgbWF4aW11bTogJG1hdC10b29sYmFyLW1heGltdW0taGVpZ2h0LWRlc2t0b3AsXG4gICAgbWluaW11bTogJG1hdC10b29sYmFyLW1pbmltdW0taGVpZ2h0LWRlc2t0b3AsXG4gIClcbikgIWRlZmF1bHQ7XG5cbiRtYXQtdG9vbGJhci1tb2JpbGUtZGVuc2l0eS1jb25maWc6IChcbiAgaGVpZ2h0OiAoXG4gICAgZGVmYXVsdDogJG1hdC10b29sYmFyLWhlaWdodC1tb2JpbGUsXG4gICAgbWF4aW11bTogJG1hdC10b29sYmFyLW1heGltdW0taGVpZ2h0LW1vYmlsZSxcbiAgICBtaW5pbXVtOiAkbWF0LXRvb2xiYXItbWluaW11bS1oZWlnaHQtbW9iaWxlLFxuICApXG4pICFkZWZhdWx0O1xuXG5cbkBtaXhpbiBfbWF0LXRvb2xiYXItaGVpZ2h0KCRoZWlnaHQpIHtcbiAgLm1hdC10b29sYmFyLW11bHRpcGxlLXJvd3Mge1xuICAgIG1pbi1oZWlnaHQ6ICRoZWlnaHQ7XG4gIH1cbiAgLm1hdC10b29sYmFyLXJvdywgLm1hdC10b29sYmFyLXNpbmdsZS1yb3cge1xuICAgIGhlaWdodDogJGhlaWdodDtcbiAgfVxufVxuXG5AbWl4aW4gX21hdC10b29sYmFyLWNvbG9yKCRwYWxldHRlKSB7XG4gIGJhY2tncm91bmQ6IG1hdC1jb2xvcigkcGFsZXR0ZSk7XG4gIGNvbG9yOiBtYXQtY29sb3IoJHBhbGV0dGUsIGRlZmF1bHQtY29udHJhc3QpO1xufVxuXG5AbWl4aW4gX21hdC10b29sYmFyLWZvcm0tZmllbGQtb3ZlcnJpZGVzIHtcbiAgLm1hdC1mb3JtLWZpZWxkLXVuZGVybGluZSxcbiAgLm1hdC1mb3JtLWZpZWxkLXJpcHBsZSxcbiAgLm1hdC1mb2N1c2VkIC5tYXQtZm9ybS1maWVsZC1yaXBwbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgfVxuXG4gIC5tYXQtZm9ybS1maWVsZC1sYWJlbCxcbiAgLm1hdC1mb2N1c2VkIC5tYXQtZm9ybS1maWVsZC1sYWJlbCxcbiAgLm1hdC1zZWxlY3QtdmFsdWUsXG4gIC5tYXQtc2VsZWN0LWFycm93LFxuICAubWF0LWZvcm0tZmllbGQubWF0LWZvY3VzZWQgLm1hdC1zZWxlY3QtYXJyb3cge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG5cbiAgLm1hdC1pbnB1dC1lbGVtZW50IHtcbiAgICBjYXJldC1jb2xvcjogY3VycmVudENvbG9yO1xuICB9XG59XG5cbkBtaXhpbiBtYXQtdG9vbGJhci1jb2xvcigkY29uZmlnLW9yLXRoZW1lKSB7XG4gICRjb25maWc6IG1hdC1nZXQtY29sb3ItY29uZmlnKCRjb25maWctb3ItdGhlbWUpO1xuICAkcHJpbWFyeTogbWFwLWdldCgkY29uZmlnLCBwcmltYXJ5KTtcbiAgJGFjY2VudDogbWFwLWdldCgkY29uZmlnLCBhY2NlbnQpO1xuICAkd2FybjogbWFwLWdldCgkY29uZmlnLCB3YXJuKTtcbiAgJGJhY2tncm91bmQ6IG1hcC1nZXQoJGNvbmZpZywgYmFja2dyb3VuZCk7XG4gICRmb3JlZ3JvdW5kOiBtYXAtZ2V0KCRjb25maWcsIGZvcmVncm91bmQpO1xuXG4gIC5tYXQtdG9vbGJhciB7XG4gICAgYmFja2dyb3VuZDogbWF0LWNvbG9yKCRiYWNrZ3JvdW5kLCBhcHAtYmFyKTtcbiAgICBjb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCB0ZXh0KTtcblxuICAgICYubWF0LXByaW1hcnkge1xuICAgICAgQGluY2x1ZGUgX21hdC10b29sYmFyLWNvbG9yKCRwcmltYXJ5KTtcbiAgICB9XG5cbiAgICAmLm1hdC1hY2NlbnQge1xuICAgICAgQGluY2x1ZGUgX21hdC10b29sYmFyLWNvbG9yKCRhY2NlbnQpO1xuICAgIH1cblxuICAgICYubWF0LXdhcm4ge1xuICAgICAgQGluY2x1ZGUgX21hdC10b29sYmFyLWNvbG9yKCR3YXJuKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBfbWF0LXRvb2xiYXItZm9ybS1maWVsZC1vdmVycmlkZXM7XG4gIH1cbn1cblxuQG1peGluIG1hdC10b29sYmFyLXR5cG9ncmFwaHkoJGNvbmZpZy1vci10aGVtZSkge1xuICAkY29uZmlnOiBtYXQtZ2V0LXR5cG9ncmFwaHktY29uZmlnKCRjb25maWctb3ItdGhlbWUpO1xuICAubWF0LXRvb2xiYXIsXG4gIC5tYXQtdG9vbGJhciBoMSxcbiAgLm1hdC10b29sYmFyIGgyLFxuICAubWF0LXRvb2xiYXIgaDMsXG4gIC5tYXQtdG9vbGJhciBoNCxcbiAgLm1hdC10b29sYmFyIGg1LFxuICAubWF0LXRvb2xiYXIgaDYge1xuICAgIEBpbmNsdWRlIG1hdC10eXBvZ3JhcGh5LWxldmVsLXRvLXN0eWxlcygkY29uZmlnLCB0aXRsZSk7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5cbkBtaXhpbiBtYXQtdG9vbGJhci1kZW5zaXR5KCRjb25maWctb3ItdGhlbWUpIHtcbiAgJGRlbnNpdHktc2NhbGU6IG1hdC1nZXQtZGVuc2l0eS1jb25maWcoJGNvbmZpZy1vci10aGVtZSk7XG4gICRoZWlnaHQtZGVza3RvcDogbWF0LXByaXZhdGUtZGVuc2l0eS1wcm9wLXZhbHVlKFxuICAgICAgJG1hdC10b29sYmFyLWRlc2t0b3AtZGVuc2l0eS1jb25maWcsICRkZW5zaXR5LXNjYWxlLCBoZWlnaHQpO1xuICAkaGVpZ2h0LW1vYmlsZTogbWF0LXByaXZhdGUtZGVuc2l0eS1wcm9wLXZhbHVlKFxuICAgICAgJG1hdC10b29sYmFyLW1vYmlsZS1kZW5zaXR5LWNvbmZpZywgJGRlbnNpdHktc2NhbGUsIGhlaWdodCk7XG5cbiAgQGluY2x1ZGUgbWF0LXByaXZhdGUtZGVuc2l0eS1sZWdhY3ktY29tcGF0aWJpbGl0eSgpIHtcbiAgICAvLyBTZXQgdGhlIGRlZmF1bHQgaGVpZ2h0IGZvciB0aGUgdG9vbGJhci5cbiAgICBAaW5jbHVkZSBfbWF0LXRvb2xiYXItaGVpZ2h0KCRoZWlnaHQtZGVza3RvcCk7XG5cbiAgICAvLyBBcyBwZXIgc3BlY3MsIHRvb2xiYXJzIHNob3VsZCBoYXZlIGEgZGlmZmVyZW50IGhlaWdodCBpbiBtb2JpbGUgZGV2aWNlcy4gVGhpcyBoYXMgYmVlblxuICAgIC8vIHNwZWNpZmllZCBpbiB0aGUgb2xkIGd1aWRlbGluZXMgYW5kIGlzIHN0aWxsIG9ic2VydmFibGUgaW4gdGhlIG5ldyBzcGVjaWZpY2F0aW9ucyBieVxuICAgIC8vIGxvb2tpbmcgYXQgdGhlIHNwZWMgaW1hZ2VzLiBTZWU6IGh0dHBzOi8vbWF0ZXJpYWwuaW8vZGVzaWduL2NvbXBvbmVudHMvYXBwLWJhcnMtdG9wLmh0bWwjYW5hdG9teVxuICAgIEBtZWRpYSAoJG1hdC14c21hbGwpIHtcbiAgICAgIEBpbmNsdWRlIF9tYXQtdG9vbGJhci1oZWlnaHQoJGhlaWdodC1tb2JpbGUpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWF0LXRvb2xiYXItdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZykge1xuICAkdGhlbWU6IG1hdC1wcml2YXRlLWxlZ2FjeS1nZXQtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1wcml2YXRlLWNoZWNrLWR1cGxpY2F0ZS10aGVtZS1zdHlsZXMoJHRoZW1lLCAnbWF0LXRvb2xiYXInKSB7XG4gICAgJGNvbG9yOiBtYXQtZ2V0LWNvbG9yLWNvbmZpZygkdGhlbWUpO1xuICAgICRkZW5zaXR5OiBtYXQtZ2V0LWRlbnNpdHktY29uZmlnKCR0aGVtZSk7XG4gICAgJHR5cG9ncmFwaHk6IG1hdC1nZXQtdHlwb2dyYXBoeS1jb25maWcoJHRoZW1lKTtcblxuICAgIEBpZiAkY29sb3IgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBtYXQtdG9vbGJhci1jb2xvcigkY29sb3IpO1xuICAgIH1cbiAgICBAaWYgJGRlbnNpdHkgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBtYXQtdG9vbGJhci1kZW5zaXR5KCRkZW5zaXR5KTtcbiAgICB9XG4gICAgQGlmICR0eXBvZ3JhcGh5ICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LXRvb2xiYXItdHlwb2dyYXBoeSgkdHlwb2dyYXBoeSk7XG4gICAgfVxuICB9XG59XG5cblxuXG5cblxuJG1hdC10b29sdGlwLXRhcmdldC1oZWlnaHQ6IDIycHg7XG4kbWF0LXRvb2x0aXAtZm9udC1zaXplOiAxMHB4O1xuJG1hdC10b29sdGlwLXZlcnRpY2FsLXBhZGRpbmc6ICgkbWF0LXRvb2x0aXAtdGFyZ2V0LWhlaWdodCAtICRtYXQtdG9vbHRpcC1mb250LXNpemUpIC8gMjtcblxuJG1hdC10b29sdGlwLWhhbmRzZXQtdGFyZ2V0LWhlaWdodDogMzBweDtcbiRtYXQtdG9vbHRpcC1oYW5kc2V0LWZvbnQtc2l6ZTogMTRweDtcbiRtYXQtdG9vbHRpcC1oYW5kc2V0LXZlcnRpY2FsLXBhZGRpbmc6XG4gICAgKCRtYXQtdG9vbHRpcC1oYW5kc2V0LXRhcmdldC1oZWlnaHQgLSAkbWF0LXRvb2x0aXAtaGFuZHNldC1mb250LXNpemUpIC8gMjtcblxuQG1peGluIG1hdC10b29sdGlwLWNvbG9yKCRjb25maWctb3ItdGhlbWUpIHtcbiAgJGNvbmZpZzogbWF0LWdldC1jb2xvci1jb25maWcoJGNvbmZpZy1vci10aGVtZSk7XG4gICRiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRjb25maWcsIGJhY2tncm91bmQpO1xuXG4gIC5tYXQtdG9vbHRpcCB7XG4gICAgYmFja2dyb3VuZDogbWF0LWNvbG9yKCRiYWNrZ3JvdW5kLCB0b29sdGlwLCAwLjkpO1xuICB9XG59XG5cbkBtaXhpbiBtYXQtdG9vbHRpcC10eXBvZ3JhcGh5KCRjb25maWctb3ItdGhlbWUpIHtcbiAgJGNvbmZpZzogbWF0LWdldC10eXBvZ3JhcGh5LWNvbmZpZygkY29uZmlnLW9yLXRoZW1lKTtcbiAgLm1hdC10b29sdGlwIHtcbiAgICBmb250LWZhbWlseTogbWF0LWZvbnQtZmFtaWx5KCRjb25maWcpO1xuICAgIGZvbnQtc2l6ZTogJG1hdC10b29sdGlwLWZvbnQtc2l6ZTtcbiAgICBwYWRkaW5nLXRvcDogJG1hdC10b29sdGlwLXZlcnRpY2FsLXBhZGRpbmc7XG4gICAgcGFkZGluZy1ib3R0b206ICRtYXQtdG9vbHRpcC12ZXJ0aWNhbC1wYWRkaW5nO1xuICB9XG5cbiAgLm1hdC10b29sdGlwLWhhbmRzZXQge1xuICAgIGZvbnQtc2l6ZTogJG1hdC10b29sdGlwLWhhbmRzZXQtZm9udC1zaXplO1xuICAgIHBhZGRpbmctdG9wOiAkbWF0LXRvb2x0aXAtaGFuZHNldC12ZXJ0aWNhbC1wYWRkaW5nO1xuICAgIHBhZGRpbmctYm90dG9tOiAkbWF0LXRvb2x0aXAtaGFuZHNldC12ZXJ0aWNhbC1wYWRkaW5nO1xuICB9XG59XG5cbkBtaXhpbiBfbWF0LXRvb2x0aXAtZGVuc2l0eSgkY29uZmlnLW9yLXRoZW1lKSB7fVxuXG5AbWl4aW4gbWF0LXRvb2x0aXAtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZykge1xuICAkdGhlbWU6IG1hdC1wcml2YXRlLWxlZ2FjeS1nZXQtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1wcml2YXRlLWNoZWNrLWR1cGxpY2F0ZS10aGVtZS1zdHlsZXMoJHRoZW1lLCAnbWF0LXRvb2x0aXAnKSB7XG4gICAgJGNvbG9yOiBtYXQtZ2V0LWNvbG9yLWNvbmZpZygkdGhlbWUpO1xuICAgICRkZW5zaXR5OiBtYXQtZ2V0LWRlbnNpdHktY29uZmlnKCR0aGVtZSk7XG4gICAgJHR5cG9ncmFwaHk6IG1hdC1nZXQtdHlwb2dyYXBoeS1jb25maWcoJHRoZW1lKTtcblxuICAgIEBpZiAkY29sb3IgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBtYXQtdG9vbHRpcC1jb2xvcigkY29sb3IpO1xuICAgIH1cbiAgICBAaWYgJGRlbnNpdHkgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBfbWF0LXRvb2x0aXAtZGVuc2l0eSgkZGVuc2l0eSk7XG4gICAgfVxuICAgIEBpZiAkdHlwb2dyYXBoeSAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIG1hdC10b29sdGlwLXR5cG9ncmFwaHkoJHR5cG9ncmFwaHkpO1xuICAgIH1cbiAgfVxufVxuXG5cblxuXG5cblxuXG5AbWl4aW4gbWF0LXNuYWNrLWJhci1jb2xvcigkY29uZmlnLW9yLXRoZW1lKSB7XG4gICRjb25maWc6IG1hdC1nZXQtY29sb3ItY29uZmlnKCRjb25maWctb3ItdGhlbWUpO1xuICAkaXMtZGFyay10aGVtZTogbWFwLWdldCgkY29uZmlnLCBpcy1kYXJrKTtcbiAgJGFjY2VudDogbWFwLWdldCgkY29uZmlnLCBhY2NlbnQpO1xuXG4gIC5tYXQtc25hY2stYmFyLWNvbnRhaW5lciB7XG4gICAgLy8gVXNlIHRoZSBwcmltYXJ5IHRleHQgb24gdGhlIGRhcmsgdGhlbWUsIGV2ZW4gdGhvdWdoIHRoZSBsaWdodGVyIG9uZSB1c2VzXG4gICAgLy8gYSBzZWNvbmRhcnksIGJlY2F1c2UgdGhlIGNvbnRyYXN0IG9uIHRoZSBsaWdodCBwcmltYXJ5IHRleHQgaXMgcG9vci5cbiAgICBjb2xvcjogaWYoJGlzLWRhcmstdGhlbWUsICRkYXJrLXByaW1hcnktdGV4dCwgJGxpZ2h0LXNlY29uZGFyeS10ZXh0KTtcbiAgICBiYWNrZ3JvdW5kOiBpZigkaXMtZGFyay10aGVtZSwgbWFwLWdldCgkbWF0LWdyZXksIDUwKSwgIzMyMzIzMik7XG5cbiAgICBAaW5jbHVkZSBtYXQtcHJpdmF0ZS10aGVtZS1lbGV2YXRpb24oNiwgJGNvbmZpZyk7XG4gIH1cblxuICAubWF0LXNpbXBsZS1zbmFja2Jhci1hY3Rpb24ge1xuICAgIGNvbG9yOiBpZigkaXMtZGFyay10aGVtZSwgaW5oZXJpdCwgbWF0LWNvbG9yKCRhY2NlbnQsIHRleHQpKTtcbiAgfVxufVxuXG5AbWl4aW4gbWF0LXNuYWNrLWJhci10eXBvZ3JhcGh5KCRjb25maWctb3ItdGhlbWUpIHtcbiAgJGNvbmZpZzogbWF0LWdldC10eXBvZ3JhcGh5LWNvbmZpZygkY29uZmlnLW9yLXRoZW1lKTtcbiAgLm1hdC1zaW1wbGUtc25hY2tiYXIge1xuICAgIGZvbnQ6IHtcbiAgICAgIGZhbWlseTogbWF0LWZvbnQtZmFtaWx5KCRjb25maWcsIGJvZHktMSk7XG4gICAgICBzaXplOiBtYXQtZm9udC1zaXplKCRjb25maWcsIGJvZHktMSk7XG4gICAgfVxuICB9XG5cbiAgLm1hdC1zaW1wbGUtc25hY2tiYXItYWN0aW9uIHtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBmb250OiB7XG4gICAgICBmYW1pbHk6IGluaGVyaXQ7XG4gICAgICBzaXplOiBpbmhlcml0O1xuICAgICAgd2VpZ2h0OiBtYXQtZm9udC13ZWlnaHQoJGNvbmZpZywgYnV0dG9uKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIF9tYXQtc25hY2stYmFyLWRlbnNpdHkoJGNvbmZpZy1vci10aGVtZSkge31cblxuQG1peGluIG1hdC1zbmFjay1iYXItdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZykge1xuICAkdGhlbWU6IG1hdC1wcml2YXRlLWxlZ2FjeS1nZXQtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1wcml2YXRlLWNoZWNrLWR1cGxpY2F0ZS10aGVtZS1zdHlsZXMoJHRoZW1lLCAnbWF0LXNuYWNrLWJhcicpIHtcbiAgICAkY29sb3I6IG1hdC1nZXQtY29sb3ItY29uZmlnKCR0aGVtZSk7XG4gICAgJGRlbnNpdHk6IG1hdC1nZXQtZGVuc2l0eS1jb25maWcoJHRoZW1lKTtcbiAgICAkdHlwb2dyYXBoeTogbWF0LWdldC10eXBvZ3JhcGh5LWNvbmZpZygkdGhlbWUpO1xuXG4gICAgQGlmICRjb2xvciAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIG1hdC1zbmFjay1iYXItY29sb3IoJGNvbG9yKTtcbiAgICB9XG4gICAgQGlmICRkZW5zaXR5ICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgX21hdC1zbmFjay1iYXItZGVuc2l0eSgkZGVuc2l0eSk7XG4gICAgfVxuICAgIEBpZiAkdHlwb2dyYXBoeSAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIG1hdC1zbmFjay1iYXItdHlwb2dyYXBoeSgkdHlwb2dyYXBoeSk7XG4gICAgfVxuICB9XG59XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuLy8gVGhlbWUgc3R5bGVzIHRoYXQgb25seSBhcHBseSB0byB0aGUgZmlsbCBhcHBlYXJhbmNlIG9mIHRoZSBmb3JtLWZpZWxkLlxuXG5AbWl4aW4gbWF0LWZvcm0tZmllbGQtZmlsbC1jb2xvcigkY29uZmlnLW9yLXRoZW1lKSB7XG4gICRjb25maWc6IG1hdC1nZXQtY29sb3ItY29uZmlnKCRjb25maWctb3ItdGhlbWUpO1xuICAkZm9yZWdyb3VuZDogbWFwLWdldCgkY29uZmlnLCBmb3JlZ3JvdW5kKTtcbiAgJGlzLWRhcmstdGhlbWU6IG1hcC1nZXQoJGNvbmZpZywgaXMtZGFyayk7XG5cbiAgJGZpbGwtYmFja2dyb3VuZDogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCBiYXNlLCBpZigkaXMtZGFyay10aGVtZSwgMC4xLCAwLjA0KSk7XG4gICRmaWxsLWRpc2FibGVkLWJhY2tncm91bmQ6IG1hdC1jb2xvcigkZm9yZWdyb3VuZCwgYmFzZSwgaWYoJGlzLWRhcmstdGhlbWUsIDAuMDUsIDAuMDIpKTtcbiAgJHVuZGVybGluZS1jb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCBkaXZpZGVyLCBpZigkaXMtZGFyay10aGVtZSwgMC41LCAwLjQyKSk7XG4gICRsYWJlbC1kaXNhYmxlZC1jb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCBkaXNhYmxlZC10ZXh0KTtcblxuICAubWF0LWZvcm0tZmllbGQtYXBwZWFyYW5jZS1maWxsIHtcbiAgICAubWF0LWZvcm0tZmllbGQtZmxleCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmlsbC1iYWNrZ3JvdW5kO1xuICAgIH1cblxuICAgICYubWF0LWZvcm0tZmllbGQtZGlzYWJsZWQgLm1hdC1mb3JtLWZpZWxkLWZsZXgge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZpbGwtZGlzYWJsZWQtYmFja2dyb3VuZDtcbiAgICB9XG5cbiAgICAubWF0LWZvcm0tZmllbGQtdW5kZXJsaW5lOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHVuZGVybGluZS1jb2xvcjtcbiAgICB9XG5cbiAgICAmLm1hdC1mb3JtLWZpZWxkLWRpc2FibGVkIHtcbiAgICAgIC5tYXQtZm9ybS1maWVsZC1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkbGFiZWwtZGlzYWJsZWQtY29sb3I7XG4gICAgICB9XG5cbiAgICAgIC5tYXQtZm9ybS1maWVsZC11bmRlcmxpbmU6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBVc2VkIHRvIG1ha2UgaW5zdGFuY2VzIG9mIHRoZSBfbWF0LWZvcm0tZmllbGQtbGFiZWwtZmxvYXRpbmcgbWl4aW4gbmVnbGlnaWJseSBkaWZmZXJlbnQsXG4vLyBhbmQgcHJldmVudCBHb29nbGUncyBDU1MgT3B0aW1pemVyIGZyb20gY29sbGFwc2luZyB0aGUgZGVjbGFyYXRpb25zLiBUaGlzIGlzIG5lZWRlZCBiZWNhdXNlIHNvbWVcbi8vIG9mIHRoZSBzZWxlY3RvcnMgY29udGFpbiBwc2V1ZG8tY2xhc3NlcyBub3QgcmVjb2duaXplZCBpbiBhbGwgYnJvd3NlcnMuIElmIGEgYnJvd3NlciBlbmNvdW50ZXJzXG4vLyBhbiB1bmtub3duIHBzZXVkby1jbGFzcyBpdCB3aWxsIGRpc2NhcmQgdGhlIGVudGlyZSBydWxlIHNldC5cbiRtYXQtZm9ybS1maWVsZC1maWxsLWRlZHVwZTogMDtcblxuLy8gQXBwbGllcyBhIGZsb2F0aW5nIGxhYmVsIGFib3ZlIHRoZSBmb3JtIGZpZWxkIGNvbnRyb2wgaXRzZWxmLlxuQG1peGluIF9tYXQtZm9ybS1maWVsZC1maWxsLWxhYmVsLWZsb2F0aW5nKCRmb250LXNjYWxlLCAkaW5maXgtcGFkZGluZywgJGluZml4LW1hcmdpbi10b3ApIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0kaW5maXgtbWFyZ2luLXRvcCAtICRpbmZpeC1wYWRkaW5nICsgJG1hdC1mb3JtLWZpZWxkLWZpbGwtZGVkdXBlKVxuICAgICAgICAgICAgIHNjYWxlKCRmb250LXNjYWxlKTtcbiAgd2lkdGg6IDEwMCUgLyAkZm9udC1zY2FsZSArICRtYXQtZm9ybS1maWVsZC1maWxsLWRlZHVwZTtcblxuICAkbWF0LWZvcm0tZmllbGQtZmlsbC1kZWR1cGU6ICRtYXQtZm9ybS1maWVsZC1maWxsLWRlZHVwZSArIDAuMDAwMDEgIWdsb2JhbDtcbn1cblxuQG1peGluIG1hdC1mb3JtLWZpZWxkLWZpbGwtdHlwb2dyYXBoeSgkY29uZmlnLW9yLXRoZW1lKSB7XG4gICRjb25maWc6IG1hdC1nZXQtdHlwb2dyYXBoeS1jb25maWcoJGNvbmZpZy1vci10aGVtZSk7XG4gIC8vIFRoZSB1bml0LWxlc3MgbGluZS1oZWlnaHQgZnJvbSB0aGUgZm9udCBjb25maWcuXG4gICRsaW5lLWhlaWdodDogbWF0LWxpbmUtaGVpZ2h0KCRjb25maWcsIGlucHV0KTtcbiAgLy8gVGhlIGFtb3VudCB0byBzY2FsZSB0aGUgZm9udCBmb3IgdGhlIGZsb2F0aW5nIGxhYmVsIGFuZCBzdWJzY3JpcHQuXG4gICRzdWJzY3JpcHQtZm9udC1zY2FsZTogMC43NTtcbiAgLy8gVGhlIHBhZGRpbmcgb24gdG9wIG9mIHRoZSBpbmZpeC5cbiAgJGluZml4LXBhZGRpbmctdG9wOiAwLjI1ZW07XG4gIC8vIFRoZSBwYWRkaW5nIGJlbG93IHRoZSBpbmZpeC5cbiAgJGluZml4LXBhZGRpbmctYm90dG9tOiAwLjc1ZW07XG4gIC8vIFRoZSBtYXJnaW4gYXBwbGllZCB0byB0aGUgZm9ybS1maWVsZC1pbmZpeCB0byByZXNlcnZlIHNwYWNlIGZvciB0aGUgZmxvYXRpbmcgbGFiZWwuXG4gICRpbmZpeC1tYXJnaW4tdG9wOiAxZW0gKiAkbGluZS1oZWlnaHQgKiAkc3Vic2NyaXB0LWZvbnQtc2NhbGU7XG4gIC8vIFRoZSBhbW91bnQgd2Ugb2Zmc2V0IHRoZSBsYWJlbCBmcm9tIHRoZSBpbnB1dCB0ZXh0IGluIHRoZSBmaWxsIGFwcGVhcmFuY2UuXG4gICRmaWxsLWFwcGVhcmFuY2UtbGFiZWwtb2Zmc2V0OiAtMC41ZW07XG5cbiAgLm1hdC1mb3JtLWZpZWxkLWFwcGVhcmFuY2UtZmlsbCB7XG4gICAgLm1hdC1mb3JtLWZpZWxkLWluZml4IHtcbiAgICAgIHBhZGRpbmc6ICRpbmZpeC1wYWRkaW5nLXRvcCAwICRpbmZpeC1wYWRkaW5nLWJvdHRvbSAwO1xuICAgIH1cblxuICAgIC5tYXQtZm9ybS1maWVsZC1sYWJlbCB7XG4gICAgICB0b3A6ICRpbmZpeC1tYXJnaW4tdG9wICsgJGluZml4LXBhZGRpbmctdG9wO1xuICAgICAgbWFyZ2luLXRvcDogJGZpbGwtYXBwZWFyYW5jZS1sYWJlbC1vZmZzZXQ7XG4gICAgfVxuXG4gICAgJi5tYXQtZm9ybS1maWVsZC1jYW4tZmxvYXQge1xuICAgICAgJi5tYXQtZm9ybS1maWVsZC1zaG91bGQtZmxvYXQgLm1hdC1mb3JtLWZpZWxkLWxhYmVsLFxuICAgICAgLm1hdC1pbnB1dC1zZXJ2ZXI6Zm9jdXMgKyAubWF0LWZvcm0tZmllbGQtbGFiZWwtd3JhcHBlciAubWF0LWZvcm0tZmllbGQtbGFiZWwge1xuICAgICAgICBAaW5jbHVkZSBfbWF0LWZvcm0tZmllbGQtZmlsbC1sYWJlbC1mbG9hdGluZyhcbiAgICAgICAgICAgICAgICAkc3Vic2NyaXB0LWZvbnQtc2NhbGUsICRpbmZpeC1wYWRkaW5nLXRvcCArICRmaWxsLWFwcGVhcmFuY2UtbGFiZWwtb2Zmc2V0LFxuICAgICAgICAgICAgICAgICRpbmZpeC1tYXJnaW4tdG9wKTtcbiAgICAgIH1cblxuICAgICAgLy8gU2VydmVyLXNpZGUgcmVuZGVyZWQgbWF0SW5wdXQgd2l0aCBhIGxhYmVsIGF0dHJpYnV0ZSBidXQgbGFiZWwgbm90IHNob3duXG4gICAgICAvLyAodXNlZCBhcyBhIHB1cmUgQ1NTIHN0YW5kLWluIGZvciBtYXQtZm9ybS1maWVsZC1zaG91bGQtZmxvYXQpLlxuICAgICAgLm1hdC1pbnB1dC1zZXJ2ZXJbbGFiZWxdOm5vdCg6bGFiZWwtc2hvd24pICsgLm1hdC1mb3JtLWZpZWxkLWxhYmVsLXdyYXBwZXJcbiAgICAgIC5tYXQtZm9ybS1maWVsZC1sYWJlbCB7XG4gICAgICAgIEBpbmNsdWRlIF9tYXQtZm9ybS1maWVsZC1maWxsLWxhYmVsLWZsb2F0aW5nKFxuICAgICAgICAgICAgICAgICRzdWJzY3JpcHQtZm9udC1zY2FsZSwgJGluZml4LXBhZGRpbmctdG9wICsgJGZpbGwtYXBwZWFyYW5jZS1sYWJlbC1vZmZzZXQsXG4gICAgICAgICAgICAgICAgJGluZml4LW1hcmdpbi10b3ApO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWF0LXByaXZhdGUtZm9ybS1maWVsZC1maWxsLWRlbnNpdHkoJGNvbmZpZy1vci10aGVtZSkge31cblxuQG1peGluIG1hdC1mb3JtLWZpZWxkLWZpbGwtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZykge1xuICAkdGhlbWU6IG1hdC1wcml2YXRlLWxlZ2FjeS1nZXQtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1wcml2YXRlLWNoZWNrLWR1cGxpY2F0ZS10aGVtZS1zdHlsZXMoJHRoZW1lLCAnbWF0LWZvcm0tZmllbGQtZmlsbCcpIHtcbiAgICAkY29sb3I6IG1hdC1nZXQtY29sb3ItY29uZmlnKCR0aGVtZSk7XG4gICAgJGRlbnNpdHk6IG1hdC1nZXQtZGVuc2l0eS1jb25maWcoJHRoZW1lKTtcbiAgICAkdHlwb2dyYXBoeTogbWF0LWdldC10eXBvZ3JhcGh5LWNvbmZpZygkdGhlbWUpO1xuXG4gICAgQGlmICRjb2xvciAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIG1hdC1mb3JtLWZpZWxkLWZpbGwtY29sb3IoJGNvbG9yKTtcbiAgICB9XG4gICAgQGlmICRkZW5zaXR5ICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LXByaXZhdGUtZm9ybS1maWVsZC1maWxsLWRlbnNpdHkoJGRlbnNpdHkpO1xuICAgIH1cbiAgICBAaWYgJHR5cG9ncmFwaHkgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBtYXQtZm9ybS1maWVsZC1maWxsLXR5cG9ncmFwaHkoJHR5cG9ncmFwaHkpO1xuICAgIH1cbiAgfVxufVxuXG5cblxuXG5cblxuXG4vLyBUaGVtZSBzdHlsZXMgdGhhdCBvbmx5IGFwcGx5IHRvIHRoZSBsZWdhY3kgYXBwZWFyYW5jZSBvZiB0aGUgZm9ybS1maWVsZC5cblxuQG1peGluIG1hdC1mb3JtLWZpZWxkLWxlZ2FjeS1jb2xvcigkY29uZmlnLW9yLXRoZW1lKSB7XG4gICRjb25maWc6IG1hdC1nZXQtY29sb3ItY29uZmlnKCRjb25maWctb3ItdGhlbWUpO1xuICAkZm9yZWdyb3VuZDogbWFwLWdldCgkY29uZmlnLCBmb3JlZ3JvdW5kKTtcbiAgJGlzLWRhcmstdGhlbWU6IG1hcC1nZXQoJGNvbmZpZywgaXMtZGFyayk7XG5cbiAgJGxhYmVsLWNvbG9yOiBtYXQtY29sb3IoJGZvcmVncm91bmQsIHNlY29uZGFyeS10ZXh0KTtcbiAgJHVuZGVybGluZS1jb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCBkaXZpZGVyLCBpZigkaXMtZGFyay10aGVtZSwgMC43LCAwLjQyKSk7XG5cbiAgLm1hdC1mb3JtLWZpZWxkLWFwcGVhcmFuY2UtbGVnYWN5IHtcbiAgICAubWF0LWZvcm0tZmllbGQtbGFiZWwge1xuICAgICAgY29sb3I6ICRsYWJlbC1jb2xvcjtcbiAgICB9XG5cbiAgICAubWF0LWhpbnQge1xuICAgICAgY29sb3I6ICRsYWJlbC1jb2xvcjtcbiAgICB9XG5cbiAgICAubWF0LWZvcm0tZmllbGQtdW5kZXJsaW5lIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR1bmRlcmxpbmUtY29sb3I7XG4gICAgfVxuXG4gICAgJi5tYXQtZm9ybS1maWVsZC1kaXNhYmxlZCAubWF0LWZvcm0tZmllbGQtdW5kZXJsaW5lIHtcbiAgICAgIEBpbmNsdWRlIG1hdC1wcml2YXRlLWNvbnRyb2wtZGlzYWJsZWQtdW5kZXJsaW5lKCR1bmRlcmxpbmUtY29sb3IpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBVc2VkIHRvIG1ha2UgaW5zdGFuY2VzIG9mIHRoZSBfbWF0LWZvcm0tZmllbGQtbGFiZWwtZmxvYXRpbmcgbWl4aW4gbmVnbGlnaWJseSBkaWZmZXJlbnQsXG4vLyBhbmQgcHJldmVudCBHb29nbGUncyBDU1MgT3B0aW1pemVyIGZyb20gY29sbGFwc2luZyB0aGUgZGVjbGFyYXRpb25zLiBUaGlzIGlzIG5lZWRlZCBiZWNhdXNlIHNvbWVcbi8vIG9mIHRoZSBzZWxlY3RvcnMgY29udGFpbiBwc2V1ZG8tY2xhc3NlcyBub3QgcmVjb2duaXplZCBpbiBhbGwgYnJvd3NlcnMuIElmIGEgYnJvd3NlciBlbmNvdW50ZXJzXG4vLyBhbiB1bmtub3duIHBzZXVkby1jbGFzcyBpdCB3aWxsIGRpc2NhcmQgdGhlIGVudGlyZSBydWxlIHNldC5cbiRtYXQtZm9ybS1maWVsZC1sZWdhY3ktZGVkdXBlOiAwO1xuXG4vLyBBcHBsaWVzIGEgZmxvYXRpbmcgbGFiZWwgYWJvdmUgdGhlIGZvcm0gZmllbGQgY29udHJvbCBpdHNlbGYuXG5AbWl4aW4gX21hdC1mb3JtLWZpZWxkLWxlZ2FjeS1sYWJlbC1mbG9hdGluZygkZm9udC1zY2FsZSwgJGluZml4LXBhZGRpbmcsICRpbmZpeC1tYXJnaW4tdG9wKSB7XG4gIC8vIFdlIHVzZSBwZXJzcGVjdGl2ZSB0byBmaXggdGhlIHRleHQgYmx1cnJpbmVzcyBhcyBkZXNjcmliZWQgaGVyZTpcbiAgLy8gaHR0cDovL3d3dy51c2VyYWdlbnRtYW4uY29tL2Jsb2cvMjAxNC8wNS8wNC9maXhpbmctdHlwb2dyYXBoeS1pbnNpZGUtb2YtMi1kLWNzcy10cmFuc2Zvcm1zL1xuICAvLyBUaGlzIHJlc3VsdHMgaW4gYSBzbWFsbCBqaXR0ZXIgYWZ0ZXIgdGhlIGxhYmVsIGZsb2F0cyBvbiBGaXJlZm94LCB3aGljaCB0aGVcbiAgLy8gdHJhbnNsYXRlWiBmaXhlcy5cbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0kaW5maXgtbWFyZ2luLXRvcCAtICRpbmZpeC1wYWRkaW5nKSBzY2FsZSgkZm9udC1zY2FsZSkgcGVyc3BlY3RpdmUoMTAwcHgpXG4gIHRyYW5zbGF0ZVooMC4wMDFweCArICRtYXQtZm9ybS1maWVsZC1sZWdhY3ktZGVkdXBlKTtcbiAgLy8gVGhlIHRyaWNrcyBhYm92ZSB1c2VkIHRvIHNtb290aCBvdXQgdGhlIGFuaW1hdGlvbiBvbiBjaHJvbWUgYW5kIGZpcmVmb3ggYWN0dWFsbHkgbWFrZSB0aGluZ3NcbiAgLy8gd29yc2Ugb24gSUUsIHNvIHdlIGRvbid0IGluY2x1ZGUgdGhlbSBpbiB0aGUgSUUgdmVyc2lvbi5cbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtJGluZml4LW1hcmdpbi10b3AgLSAkaW5maXgtcGFkZGluZyArICRtYXQtZm9ybS1maWVsZC1sZWdhY3ktZGVkdXBlKVxuICAgICAgICAgICAgICAgICAgc2NhbGUoJGZvbnQtc2NhbGUpO1xuXG4gIHdpZHRoOiAxMDAlIC8gJGZvbnQtc2NhbGUgKyAkbWF0LWZvcm0tZmllbGQtbGVnYWN5LWRlZHVwZTtcblxuICAkbWF0LWZvcm0tZmllbGQtbGVnYWN5LWRlZHVwZTogJG1hdC1mb3JtLWZpZWxkLWxlZ2FjeS1kZWR1cGUgKyAwLjAwMDAxICFnbG9iYWw7XG59XG5cbi8vIFNhbWUgYXMgbWl4aW4gYWJvdmUsIGJ1dCBvbWl0cyB0aGUgdHJhbnNsYXRlWiBmb3IgcHJpbnRpbmcgcHVycG9zZXMuXG5AbWl4aW4gX21hdC1mb3JtLWZpZWxkLWxlZ2FjeS1sYWJlbC1mbG9hdGluZy1wcmludCgkZm9udC1zY2FsZSwgJGluZml4LXBhZGRpbmcsICRpbmZpeC1tYXJnaW4tdG9wKSB7XG4gIC8vIFRoaXMgcmVzdWx0cyBpbiBhIHNtYWxsIGppdHRlciBhZnRlciB0aGUgbGFiZWwgZmxvYXRzIG9uIEZpcmVmb3gsIHdoaWNoIHRoZVxuICAvLyB0cmFuc2xhdGVaIGZpeGVzLlxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLSRpbmZpeC1tYXJnaW4tdG9wIC0gJGluZml4LXBhZGRpbmcgKyAkbWF0LWZvcm0tZmllbGQtbGVnYWN5LWRlZHVwZSlcbiAgICAgICAgICAgICAgICAgIHNjYWxlKCRmb250LXNjYWxlKTtcbiAgLy8gVGhlIHRyaWNrcyBhYm92ZSB1c2VkIHRvIHNtb290aCBvdXQgdGhlIGFuaW1hdGlvbiBvbiBjaHJvbWUgYW5kIGZpcmVmb3ggYWN0dWFsbHkgbWFrZSB0aGluZ3NcbiAgLy8gd29yc2Ugb24gSUUsIHNvIHdlIGRvbid0IGluY2x1ZGUgdGhlbSBpbiB0aGUgSUUgdmVyc2lvbi5cbiAgJG1hdC1mb3JtLWZpZWxkLWxlZ2FjeS1kZWR1cGU6ICRtYXQtZm9ybS1maWVsZC1sZWdhY3ktZGVkdXBlICsgMC4wMDAwMSAhZ2xvYmFsO1xufVxuXG5AbWl4aW4gbWF0LWZvcm0tZmllbGQtbGVnYWN5LXR5cG9ncmFwaHkoJGNvbmZpZy1vci10aGVtZSkge1xuICAkY29uZmlnOiBtYXQtZ2V0LXR5cG9ncmFwaHktY29uZmlnKCRjb25maWctb3ItdGhlbWUpO1xuICAvLyBUaGUgdW5pdC1sZXNzIGxpbmUtaGVpZ2h0IGZyb20gdGhlIGZvbnQgY29uZmlnLlxuICAkbGluZS1oZWlnaHQ6IG1hdC1saW5lLWhlaWdodCgkY29uZmlnLCBpbnB1dCk7XG4gIC8vIFRoZSBhbW91bnQgdG8gc2NhbGUgdGhlIGZvbnQgZm9yIHRoZSBmbG9hdGluZyBsYWJlbCBhbmQgc3Vic2NyaXB0LlxuICAkc3Vic2NyaXB0LWZvbnQtc2NhbGU6IDAuNzU7XG4gIC8vIFRoZSBhbW91bnQgb2Ygc3BhY2UgYmV0d2VlbiB0aGUgdG9wIG9mIHRoZSBsaW5lIGFuZCB0aGUgdG9wIG9mIHRoZSBhY3R1YWwgdGV4dFxuICAvLyAoYXMgYSBmcmFjdGlvbiBvZiB0aGUgZm9udC1zaXplKS5cbiAgJGxpbmUtc3BhY2luZzogKCRsaW5lLWhlaWdodCAtIDEpIC8gMjtcbiAgLy8gVGhlIHBhZGRpbmcgb24gdGhlIGluZml4LiBNb2NrcyBzaG93IGhhbGYgb2YgdGhlIHRleHQgc2l6ZSwgYnV0IHNlZW0gdG8gbWVhc3VyZSBmcm9tIHRoZSBlZGdlXG4gIC8vIG9mIHRoZSB0ZXh0IGl0c2VsZiwgbm90IHRoZSBlZGdlIG9mIHRoZSBsaW5lOyB0aGVyZWZvcmUgd2Ugc3VidHJhY3Qgb2ZmIHRoZSBsaW5lIHNwYWNpbmcuXG4gICRpbmZpeC1wYWRkaW5nOiAwLjVlbSAtICRsaW5lLXNwYWNpbmc7XG4gIC8vIFRoZSBtYXJnaW4gYXBwbGllZCB0byB0aGUgZm9ybS1maWVsZC1pbmZpeCB0byByZXNlcnZlIHNwYWNlIGZvciB0aGUgZmxvYXRpbmcgbGFiZWwuXG4gICRpbmZpeC1tYXJnaW4tdG9wOiAxZW0gKiAkbGluZS1oZWlnaHQgKiAkc3Vic2NyaXB0LWZvbnQtc2NhbGU7XG4gIC8vIFRoZSBzcGFjZSBiZXR3ZWVuIHRoZSBib3R0b20gb2YgdGhlIC5tYXQtZm9ybS1maWVsZC1mbGV4IGFyZWEgYW5kIHRoZSBzdWJzY3JpcHQgd3JhcHBlci5cbiAgLy8gTW9ja3Mgc2hvdyBoYWxmIG9mIHRoZSB0ZXh0IHNpemUsIGJ1dCB0aGlzIG1hcmdpbiBpcyBhcHBsaWVkIHRvIGFuIGVsZW1lbnQgd2l0aCB0aGUgc3Vic2NyaXB0XG4gIC8vIHRleHQgZm9udCBzaXplLCBzbyB3ZSBuZWVkIHRvIGRpdmlkZSBieSB0aGUgc2NhbGUgZmFjdG9yIHRvIG1ha2UgaXQgaGFsZiBvZiB0aGUgb3JpZ2luYWwgdGV4dFxuICAvLyBzaXplLiBXZSBhZ2FpbiBuZWVkIHRvIHN1YnRyYWN0IG9mZiB0aGUgbGluZSBzcGFjaW5nIHNpbmNlIHRoZSBtb2NrcyBtZWFzdXJlIHRvIHRoZSBlZGdlIG9mIHRoZVxuICAvLyB0ZXh0LCBub3QgdGhlICBlZGdlIG9mIHRoZSBsaW5lLlxuICAkc3Vic2NyaXB0LW1hcmdpbi10b3A6IDAuNWVtIC8gJHN1YnNjcmlwdC1mb250LXNjYWxlIC0gKCRsaW5lLXNwYWNpbmcgKiAyKTtcbiAgLy8gVGhlIHBhZGRpbmcgYXBwbGllZCB0byB0aGUgZm9ybS1maWVsZC13cmFwcGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIHRoZSBzdWJzY3JpcHQsIHNpbmNlIGl0J3NcbiAgLy8gYWJzb2x1dGVseSBwb3NpdGlvbmVkLiBUaGlzIGlzIGEgY29tYmluYXRpb24gb2YgdGhlIHN1YnNjcmlwdCdzIG1hcmdpbiBhbmQgbGluZS1oZWlnaHQsIGJ1dCB3ZVxuICAvLyBuZWVkIHRvIG11bHRpcGx5IGJ5IHRoZSBzdWJzY3JpcHQgZm9udCBzY2FsZSBmYWN0b3Igc2luY2UgdGhlIHdyYXBwZXIgaGFzIGEgbGFyZ2VyIGZvbnQgc2l6ZS5cbiAgJHdyYXBwZXItcGFkZGluZy1ib3R0b206ICgkc3Vic2NyaXB0LW1hcmdpbi10b3AgKyAkbGluZS1oZWlnaHQpICogJHN1YnNjcmlwdC1mb250LXNjYWxlO1xuXG4gIC5tYXQtZm9ybS1maWVsZC1hcHBlYXJhbmNlLWxlZ2FjeSB7XG4gICAgLm1hdC1mb3JtLWZpZWxkLXdyYXBwZXIge1xuICAgICAgcGFkZGluZy1ib3R0b206ICR3cmFwcGVyLXBhZGRpbmctYm90dG9tO1xuICAgIH1cblxuICAgIC5tYXQtZm9ybS1maWVsZC1pbmZpeCB7XG4gICAgICBwYWRkaW5nOiAkaW5maXgtcGFkZGluZyAwO1xuICAgIH1cblxuICAgICYubWF0LWZvcm0tZmllbGQtY2FuLWZsb2F0IHtcbiAgICAgICYubWF0LWZvcm0tZmllbGQtc2hvdWxkLWZsb2F0IC5tYXQtZm9ybS1maWVsZC1sYWJlbCxcbiAgICAgIC5tYXQtaW5wdXQtc2VydmVyOmZvY3VzICsgLm1hdC1mb3JtLWZpZWxkLWxhYmVsLXdyYXBwZXIgLm1hdC1mb3JtLWZpZWxkLWxhYmVsIHtcbiAgICAgICAgQGluY2x1ZGUgX21hdC1mb3JtLWZpZWxkLWxlZ2FjeS1sYWJlbC1mbG9hdGluZyhcbiAgICAgICAgICAgICAgICAkc3Vic2NyaXB0LWZvbnQtc2NhbGUsICRpbmZpeC1wYWRkaW5nLCAkaW5maXgtbWFyZ2luLXRvcCk7XG4gICAgICB9XG5cbiAgICAgIC8vIEBicmVha2luZy1jaGFuZ2UgOC4wLjAgd2lsbCByZWx5IG9uIEF1dG9maWxsTW9uaXRvciBpbnN0ZWFkLlxuICAgICAgLm1hdC1mb3JtLWZpZWxkLWF1dG9maWxsLWNvbnRyb2w6LXdlYmtpdC1hdXRvZmlsbCArIC5tYXQtZm9ybS1maWVsZC1sYWJlbC13cmFwcGVyXG4gICAgICAubWF0LWZvcm0tZmllbGQtbGFiZWwge1xuICAgICAgICBAaW5jbHVkZSBfbWF0LWZvcm0tZmllbGQtbGVnYWN5LWxhYmVsLWZsb2F0aW5nKFxuICAgICAgICAgICAgICAgICRzdWJzY3JpcHQtZm9udC1zY2FsZSwgJGluZml4LXBhZGRpbmcsICRpbmZpeC1tYXJnaW4tdG9wKTtcbiAgICAgIH1cblxuICAgICAgLy8gU2VydmVyLXNpZGUgcmVuZGVyZWQgbWF0SW5wdXQgd2l0aCBhIGxhYmVsIGF0dHJpYnV0ZSBidXQgbGFiZWwgbm90IHNob3duXG4gICAgICAvLyAodXNlZCBhcyBhIHB1cmUgQ1NTIHN0YW5kLWluIGZvciBtYXQtZm9ybS1maWVsZC1zaG91bGQtZmxvYXQpLlxuICAgICAgLm1hdC1pbnB1dC1zZXJ2ZXJbbGFiZWxdOm5vdCg6bGFiZWwtc2hvd24pICsgLm1hdC1mb3JtLWZpZWxkLWxhYmVsLXdyYXBwZXJcbiAgICAgIC5tYXQtZm9ybS1maWVsZC1sYWJlbCB7XG4gICAgICAgIEBpbmNsdWRlIF9tYXQtZm9ybS1maWVsZC1sZWdhY3ktbGFiZWwtZmxvYXRpbmcoXG4gICAgICAgICAgICAgICAgJHN1YnNjcmlwdC1mb250LXNjYWxlLCAkaW5maXgtcGFkZGluZywgJGluZml4LW1hcmdpbi10b3ApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5tYXQtZm9ybS1maWVsZC1sYWJlbCB7XG4gICAgICB0b3A6ICRpbmZpeC1tYXJnaW4tdG9wICsgJGluZml4LXBhZGRpbmc7XG4gICAgfVxuXG4gICAgLm1hdC1mb3JtLWZpZWxkLXVuZGVybGluZSB7XG4gICAgICAvLyBXZSB3YW50IHRoZSB1bmRlcmxpbmUgdG8gc3RhcnQgYXQgdGhlIGVuZCBvZiB0aGUgY29udGVudCBib3gsIG5vdCB0aGUgcGFkZGluZyBib3gsXG4gICAgICAvLyBzbyB3ZSBtb3ZlIGl0IHVwIGJ5IHRoZSBwYWRkaW5nIGFtb3VudC5cbiAgICAgIGJvdHRvbTogJHdyYXBwZXItcGFkZGluZy1ib3R0b207XG4gICAgfVxuXG4gICAgLm1hdC1mb3JtLWZpZWxkLXN1YnNjcmlwdC13cmFwcGVyIHtcbiAgICAgIG1hcmdpbi10b3A6ICRzdWJzY3JpcHQtbWFyZ2luLXRvcDtcblxuICAgICAgLy8gV2Ugd2FudCB0aGUgc3Vic2NyaXB0IHRvIHN0YXJ0IGF0IHRoZSBlbmQgb2YgdGhlIGNvbnRlbnQgYm94LCBub3QgdGhlIHBhZGRpbmcgYm94LFxuICAgICAgLy8gc28gd2UgbW92ZSBpdCB1cCBieSB0aGUgcGFkZGluZyBhbW91bnQgKGFkanVzdGVkIGZvciB0aGUgc21hbGxlciBmb250IHNpemUpO1xuICAgICAgdG9wOiBjYWxjKDEwMCUgLSAjeyR3cmFwcGVyLXBhZGRpbmctYm90dG9tIC8gJHN1YnNjcmlwdC1mb250LXNjYWxlfSk7XG4gICAgfVxuICB9XG5cbiAgLy8gdHJhbnNsYXRlWiBjYXVzZXMgdGhlIGxhYmVsIHRvIG5vdCBhcHBlYXIgd2hpbGUgcHJpbnRpbmcsIHNvIHdlIG92ZXJyaWRlIGl0IHRvIG5vdFxuICAvLyBhcHBseSB0cmFuc2xhdGVaIHdoaWxlIHByaW50aW5nXG4gIEBtZWRpYSBwcmludCB7XG4gICAgLm1hdC1mb3JtLWZpZWxkLWFwcGVhcmFuY2UtbGVnYWN5IHtcbiAgICAgICYubWF0LWZvcm0tZmllbGQtY2FuLWZsb2F0IHtcbiAgICAgICAgJi5tYXQtZm9ybS1maWVsZC1zaG91bGQtZmxvYXQgLm1hdC1mb3JtLWZpZWxkLWxhYmVsLFxuICAgICAgICAubWF0LWlucHV0LXNlcnZlcjpmb2N1cyArIC5tYXQtZm9ybS1maWVsZC1sYWJlbC13cmFwcGVyIC5tYXQtZm9ybS1maWVsZC1sYWJlbCB7XG4gICAgICAgICAgQGluY2x1ZGUgX21hdC1mb3JtLWZpZWxkLWxlZ2FjeS1sYWJlbC1mbG9hdGluZy1wcmludChcbiAgICAgICAgICAgICAgICAgICRzdWJzY3JpcHQtZm9udC1zY2FsZSwgJGluZml4LXBhZGRpbmcsICRpbmZpeC1tYXJnaW4tdG9wKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEBicmVha2luZy1jaGFuZ2UgOC4wLjAgd2lsbCByZWx5IG9uIEF1dG9maWxsTW9uaXRvciBpbnN0ZWFkLlxuICAgICAgICAubWF0LWZvcm0tZmllbGQtYXV0b2ZpbGwtY29udHJvbDotd2Via2l0LWF1dG9maWxsICsgLm1hdC1mb3JtLWZpZWxkLWxhYmVsLXdyYXBwZXJcbiAgICAgICAgLm1hdC1mb3JtLWZpZWxkLWxhYmVsIHtcbiAgICAgICAgICBAaW5jbHVkZSBfbWF0LWZvcm0tZmllbGQtbGVnYWN5LWxhYmVsLWZsb2F0aW5nLXByaW50KFxuICAgICAgICAgICAgICAgICAgJHN1YnNjcmlwdC1mb250LXNjYWxlLCAkaW5maXgtcGFkZGluZywgJGluZml4LW1hcmdpbi10b3ApO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gU2VydmVyLXNpZGUgcmVuZGVyZWQgbWF0SW5wdXQgd2l0aCBhIGxhYmVsIGF0dHJpYnV0ZSBidXQgbGFiZWwgbm90IHNob3duXG4gICAgICAgIC8vICh1c2VkIGFzIGEgcHVyZSBDU1Mgc3RhbmQtaW4gZm9yIG1hdC1mb3JtLWZpZWxkLXNob3VsZC1mbG9hdCkuXG4gICAgICAgIC5tYXQtaW5wdXQtc2VydmVyW2xhYmVsXTpub3QoOmxhYmVsLXNob3duKSArIC5tYXQtZm9ybS1maWVsZC1sYWJlbC13cmFwcGVyXG4gICAgICAgIC5tYXQtZm9ybS1maWVsZC1sYWJlbCB7XG4gICAgICAgICAgQGluY2x1ZGUgX21hdC1mb3JtLWZpZWxkLWxlZ2FjeS1sYWJlbC1mbG9hdGluZy1wcmludChcbiAgICAgICAgICAgICAgICAgICRzdWJzY3JpcHQtZm9udC1zY2FsZSwgJGluZml4LXBhZGRpbmcsICRpbmZpeC1tYXJnaW4tdG9wKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWF0LXByaXZhdGUtZm9ybS1maWVsZC1sZWdhY3ktZGVuc2l0eSgkY29uZmlnLW9yLXRoZW1lKSB7fVxuXG5AbWl4aW4gbWF0LWZvcm0tZmllbGQtbGVnYWN5LXRoZW1lKCR0aGVtZS1vci1jb2xvci1jb25maWcpIHtcbiAgJHRoZW1lOiBtYXQtcHJpdmF0ZS1sZWdhY3ktZ2V0LXRoZW1lKCR0aGVtZS1vci1jb2xvci1jb25maWcpO1xuICBAaW5jbHVkZSBtYXQtcHJpdmF0ZS1jaGVjay1kdXBsaWNhdGUtdGhlbWUtc3R5bGVzKCR0aGVtZSwgJ21hdC1mb3JtLWZpZWxkLWxlZ2FjeScpIHtcbiAgICAkY29sb3I6IG1hdC1nZXQtY29sb3ItY29uZmlnKCR0aGVtZSk7XG4gICAgJGRlbnNpdHk6IG1hdC1nZXQtZGVuc2l0eS1jb25maWcoJHRoZW1lKTtcbiAgICAkdHlwb2dyYXBoeTogbWF0LWdldC10eXBvZ3JhcGh5LWNvbmZpZygkdGhlbWUpO1xuXG4gICAgQGlmICRjb2xvciAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIG1hdC1mb3JtLWZpZWxkLWxlZ2FjeS1jb2xvcigkY29sb3IpO1xuICAgIH1cbiAgICBAaWYgJGRlbnNpdHkgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBtYXQtcHJpdmF0ZS1mb3JtLWZpZWxkLWxlZ2FjeS1kZW5zaXR5KCRkZW5zaXR5KTtcbiAgICB9XG4gICAgQGlmICR0eXBvZ3JhcGh5ICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LWZvcm0tZmllbGQtbGVnYWN5LXR5cG9ncmFwaHkoJHR5cG9ncmFwaHkpO1xuICAgIH1cbiAgfVxufVxuXG5cblxuXG5cblxuXG4vLyBUaGVtZSBzdHlsZXMgdGhhdCBvbmx5IGFwcGx5IHRvIHRoZSBvdXRsaW5lIGFwcGVhcmFuY2Ugb2YgdGhlIGZvcm0tZmllbGQuXG5cbkBtaXhpbiBtYXQtZm9ybS1maWVsZC1vdXRsaW5lLWNvbG9yKCRjb25maWctb3ItdGhlbWUpIHtcbiAgJGNvbmZpZzogbWF0LWdldC1jb2xvci1jb25maWcoJGNvbmZpZy1vci10aGVtZSk7XG4gICRwcmltYXJ5OiBtYXAtZ2V0KCRjb25maWcsIHByaW1hcnkpO1xuICAkYWNjZW50OiBtYXAtZ2V0KCRjb25maWcsIGFjY2VudCk7XG4gICR3YXJuOiBtYXAtZ2V0KCRjb25maWcsIHdhcm4pO1xuICAkZm9yZWdyb3VuZDogbWFwLWdldCgkY29uZmlnLCBmb3JlZ3JvdW5kKTtcbiAgJGlzLWRhcmstdGhlbWU6IG1hcC1nZXQoJGNvbmZpZywgaXMtZGFyayk7XG5cbiAgJGxhYmVsLWRpc2FibGVkLWNvbG9yOiBtYXQtY29sb3IoJGZvcmVncm91bmQsIGRpc2FibGVkLXRleHQpO1xuICAkb3V0bGluZS1jb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCBkaXZpZGVyLCBpZigkaXMtZGFyay10aGVtZSwgMC4zLCAwLjEyKSk7XG4gICRvdXRsaW5lLWNvbG9yLWhvdmVyOiBtYXQtY29sb3IoJGZvcmVncm91bmQsIGRpdmlkZXIsIGlmKCRpcy1kYXJrLXRoZW1lLCAxLCAwLjg3KSk7XG4gICRvdXRsaW5lLWNvbG9yLXByaW1hcnk6IG1hdC1jb2xvcigkcHJpbWFyeSk7XG4gICRvdXRsaW5lLWNvbG9yLWFjY2VudDogbWF0LWNvbG9yKCRhY2NlbnQpO1xuICAkb3V0bGluZS1jb2xvci13YXJuOiBtYXQtY29sb3IoJHdhcm4pO1xuICAkb3V0bGluZS1jb2xvci1kaXNhYmxlZDogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCBkaXZpZGVyLCBpZigkaXMtZGFyay10aGVtZSwgMC4xNSwgMC4wNikpO1xuXG4gIC5tYXQtZm9ybS1maWVsZC1hcHBlYXJhbmNlLW91dGxpbmUge1xuICAgIC5tYXQtZm9ybS1maWVsZC1vdXRsaW5lIHtcbiAgICAgIGNvbG9yOiAkb3V0bGluZS1jb2xvcjtcbiAgICB9XG5cbiAgICAubWF0LWZvcm0tZmllbGQtb3V0bGluZS10aGljayB7XG4gICAgICBjb2xvcjogJG91dGxpbmUtY29sb3ItaG92ZXI7XG4gICAgfVxuXG4gICAgJi5tYXQtZm9jdXNlZCB7XG4gICAgICAubWF0LWZvcm0tZmllbGQtb3V0bGluZS10aGljayB7XG4gICAgICAgIGNvbG9yOiAkb3V0bGluZS1jb2xvci1wcmltYXJ5O1xuICAgICAgfVxuXG4gICAgICAmLm1hdC1hY2NlbnQgLm1hdC1mb3JtLWZpZWxkLW91dGxpbmUtdGhpY2sge1xuICAgICAgICBjb2xvcjogJG91dGxpbmUtY29sb3ItYWNjZW50O1xuICAgICAgfVxuXG4gICAgICAmLm1hdC13YXJuIC5tYXQtZm9ybS1maWVsZC1vdXRsaW5lLXRoaWNrIHtcbiAgICAgICAgY29sb3I6ICRvdXRsaW5lLWNvbG9yLXdhcm47XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ2xhc3MgcmVwZWF0ZWQgc28gdGhhdCBydWxlIGlzIHNwZWNpZmljIGVub3VnaCB0byBvdmVycmlkZSBmb2N1c2VkIGFjY2VudCBjb2xvciBjYXNlLlxuICAgICYubWF0LWZvcm0tZmllbGQtaW52YWxpZC5tYXQtZm9ybS1maWVsZC1pbnZhbGlkIHtcbiAgICAgIC5tYXQtZm9ybS1maWVsZC1vdXRsaW5lLXRoaWNrIHtcbiAgICAgICAgY29sb3I6ICRvdXRsaW5lLWNvbG9yLXdhcm47XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5tYXQtZm9ybS1maWVsZC1kaXNhYmxlZCB7XG4gICAgICAubWF0LWZvcm0tZmllbGQtbGFiZWwge1xuICAgICAgICBjb2xvcjogJGxhYmVsLWRpc2FibGVkLWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAubWF0LWZvcm0tZmllbGQtb3V0bGluZSB7XG4gICAgICAgIGNvbG9yOiAkb3V0bGluZS1jb2xvci1kaXNhYmxlZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gVXNlZCB0byBtYWtlIGluc3RhbmNlcyBvZiB0aGUgX21hdC1mb3JtLWZpZWxkLWxhYmVsLWZsb2F0aW5nIG1peGluIG5lZ2xpZ2libHkgZGlmZmVyZW50LFxuLy8gYW5kIHByZXZlbnQgR29vZ2xlJ3MgQ1NTIE9wdGltaXplciBmcm9tIGNvbGxhcHNpbmcgdGhlIGRlY2xhcmF0aW9ucy4gVGhpcyBpcyBuZWVkZWQgYmVjYXVzZSBzb21lXG4vLyBvZiB0aGUgc2VsZWN0b3JzIGNvbnRhaW4gcHNldWRvLWNsYXNzZXMgbm90IHJlY29nbml6ZWQgaW4gYWxsIGJyb3dzZXJzLiBJZiBhIGJyb3dzZXIgZW5jb3VudGVyc1xuLy8gYW4gdW5rbm93biBwc2V1ZG8tY2xhc3MgaXQgd2lsbCBkaXNjYXJkIHRoZSBlbnRpcmUgcnVsZSBzZXQuXG4kbWF0LWZvcm0tZmllbGQtb3V0bGluZS1kZWR1cGU6IDA7XG5cbi8vIEFwcGxpZXMgYSBmbG9hdGluZyBsYWJlbCBhYm92ZSB0aGUgZm9ybSBmaWVsZCBjb250cm9sIGl0c2VsZi5cbkBtaXhpbiBfbWF0LWZvcm0tZmllbGQtb3V0bGluZS1sYWJlbC1mbG9hdGluZygkZm9udC1zY2FsZSwgJGluZml4LXBhZGRpbmcsICRpbmZpeC1tYXJnaW4tdG9wKSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtJGluZml4LW1hcmdpbi10b3AgLSAkaW5maXgtcGFkZGluZyArICRtYXQtZm9ybS1maWVsZC1vdXRsaW5lLWRlZHVwZSlcbiAgc2NhbGUoJGZvbnQtc2NhbGUpO1xuICB3aWR0aDogMTAwJSAvICRmb250LXNjYWxlICsgJG1hdC1mb3JtLWZpZWxkLW91dGxpbmUtZGVkdXBlO1xuXG4gICRtYXQtZm9ybS1maWVsZC1vdXRsaW5lLWRlZHVwZTogJG1hdC1mb3JtLWZpZWxkLW91dGxpbmUtZGVkdXBlICsgMC4wMDAwMSAhZ2xvYmFsO1xufVxuXG5AbWl4aW4gbWF0LWZvcm0tZmllbGQtb3V0bGluZS10eXBvZ3JhcGh5KCRjb25maWctb3ItdGhlbWUpIHtcbiAgJGNvbmZpZzogbWF0LWdldC10eXBvZ3JhcGh5LWNvbmZpZygkY29uZmlnLW9yLXRoZW1lKTtcbiAgLy8gVGhlIHVuaXQtbGVzcyBsaW5lLWhlaWdodCBmcm9tIHRoZSBmb250IGNvbmZpZy5cbiAgJGxpbmUtaGVpZ2h0OiBtYXQtbGluZS1oZWlnaHQoJGNvbmZpZywgaW5wdXQpO1xuICAvLyBUaGUgYW1vdW50IHRvIHNjYWxlIHRoZSBmb250IGZvciB0aGUgZmxvYXRpbmcgbGFiZWwgYW5kIHN1YnNjcmlwdC5cbiAgJHN1YnNjcmlwdC1mb250LXNjYWxlOiAwLjc1O1xuICAvLyBUaGUgcGFkZGluZyBhYm92ZSBhbmQgYmVsb3cgdGhlIGluZml4LlxuICAkaW5maXgtcGFkZGluZzogMWVtO1xuICAvLyBUaGUgbWFyZ2luIGFwcGxpZWQgdG8gdGhlIGZvcm0tZmllbGQtaW5maXggdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgdGhlIGZsb2F0aW5nIGxhYmVsLlxuICAkaW5maXgtbWFyZ2luLXRvcDogMWVtICogJGxpbmUtaGVpZ2h0ICogJHN1YnNjcmlwdC1mb250LXNjYWxlO1xuICAvLyBUaGUgc3BhY2UgYmV0d2VlbiB0aGUgYm90dG9tIG9mIHRoZSAubWF0LWZvcm0tZmllbGQtZmxleCBhcmVhIGFuZCB0aGUgc3Vic2NyaXB0IHdyYXBwZXIuXG4gIC8vIE1vY2tzIHNob3cgaGFsZiBvZiB0aGUgdGV4dCBzaXplLCBidXQgdGhpcyBtYXJnaW4gaXMgYXBwbGllZCB0byBhbiBlbGVtZW50IHdpdGggdGhlIHN1YnNjcmlwdFxuICAvLyB0ZXh0IGZvbnQgc2l6ZSwgc28gd2UgbmVlZCB0byBkaXZpZGUgYnkgdGhlIHNjYWxlIGZhY3RvciB0byBtYWtlIGl0IGhhbGYgb2YgdGhlIG9yaWdpbmFsIHRleHRcbiAgLy8gc2l6ZS5cbiAgJHN1YnNjcmlwdC1tYXJnaW4tdG9wOiAwLjVlbSAvICRzdWJzY3JpcHQtZm9udC1zY2FsZTtcbiAgLy8gVGhlIHBhZGRpbmcgYXBwbGllZCB0byB0aGUgZm9ybS1maWVsZC13cmFwcGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIHRoZSBzdWJzY3JpcHQsIHNpbmNlIGl0J3NcbiAgLy8gYWJzb2x1dGVseSBwb3NpdGlvbmVkLiBUaGlzIGlzIGEgY29tYmluYXRpb24gb2YgdGhlIHN1YnNjcmlwdCdzIG1hcmdpbiBhbmQgbGluZS1oZWlnaHQsIGJ1dCB3ZVxuICAvLyBuZWVkIHRvIG11bHRpcGx5IGJ5IHRoZSBzdWJzY3JpcHQgZm9udCBzY2FsZSBmYWN0b3Igc2luY2UgdGhlIHdyYXBwZXIgaGFzIGEgbGFyZ2VyIGZvbnQgc2l6ZS5cbiAgJHdyYXBwZXItcGFkZGluZy1ib3R0b206ICgkc3Vic2NyaXB0LW1hcmdpbi10b3AgKyAkbGluZS1oZWlnaHQpICogJHN1YnNjcmlwdC1mb250LXNjYWxlO1xuICAvLyBUaGUgYW1vdW50IHdlIG9mZnNldCB0aGUgbGFiZWwgZnJvbSB0aGUgaW5wdXQgdGV4dCBpbiB0aGUgb3V0bGluZSBhcHBlYXJhbmNlLlxuICAkb3V0bGluZS1hcHBlYXJhbmNlLWxhYmVsLW9mZnNldDogLTAuMjVlbTtcblxuICAubWF0LWZvcm0tZmllbGQtYXBwZWFyYW5jZS1vdXRsaW5lIHtcbiAgICAubWF0LWZvcm0tZmllbGQtaW5maXgge1xuICAgICAgcGFkZGluZzogJGluZml4LXBhZGRpbmcgMCAkaW5maXgtcGFkZGluZyAwO1xuICAgIH1cblxuICAgIC5tYXQtZm9ybS1maWVsZC1sYWJlbCB7XG4gICAgICB0b3A6ICRpbmZpeC1tYXJnaW4tdG9wICsgJGluZml4LXBhZGRpbmc7XG4gICAgICBtYXJnaW4tdG9wOiAkb3V0bGluZS1hcHBlYXJhbmNlLWxhYmVsLW9mZnNldDtcbiAgICB9XG5cbiAgICAmLm1hdC1mb3JtLWZpZWxkLWNhbi1mbG9hdCB7XG4gICAgICAmLm1hdC1mb3JtLWZpZWxkLXNob3VsZC1mbG9hdCAubWF0LWZvcm0tZmllbGQtbGFiZWwsXG4gICAgICAubWF0LWlucHV0LXNlcnZlcjpmb2N1cyArIC5tYXQtZm9ybS1maWVsZC1sYWJlbC13cmFwcGVyIC5tYXQtZm9ybS1maWVsZC1sYWJlbCB7XG4gICAgICAgIEBpbmNsdWRlIF9tYXQtZm9ybS1maWVsZC1vdXRsaW5lLWxhYmVsLWZsb2F0aW5nKFxuICAgICAgICAgICAgICAgICRzdWJzY3JpcHQtZm9udC1zY2FsZSwgJGluZml4LXBhZGRpbmcgKyAkb3V0bGluZS1hcHBlYXJhbmNlLWxhYmVsLW9mZnNldCxcbiAgICAgICAgICAgICAgICAkaW5maXgtbWFyZ2luLXRvcCk7XG4gICAgICB9XG5cbiAgICAgIC8vIFNlcnZlci1zaWRlIHJlbmRlcmVkIG1hdElucHV0IHdpdGggYSBsYWJlbCBhdHRyaWJ1dGUgYnV0IGxhYmVsIG5vdCBzaG93blxuICAgICAgLy8gKHVzZWQgYXMgYSBwdXJlIENTUyBzdGFuZC1pbiBmb3IgbWF0LWZvcm0tZmllbGQtc2hvdWxkLWZsb2F0KS5cbiAgICAgIC5tYXQtaW5wdXQtc2VydmVyW2xhYmVsXTpub3QoOmxhYmVsLXNob3duKSArIC5tYXQtZm9ybS1maWVsZC1sYWJlbC13cmFwcGVyXG4gICAgICAubWF0LWZvcm0tZmllbGQtbGFiZWwge1xuICAgICAgICBAaW5jbHVkZSBfbWF0LWZvcm0tZmllbGQtb3V0bGluZS1sYWJlbC1mbG9hdGluZyhcbiAgICAgICAgICAgICAgICAkc3Vic2NyaXB0LWZvbnQtc2NhbGUsICRpbmZpeC1wYWRkaW5nICsgJG91dGxpbmUtYXBwZWFyYW5jZS1sYWJlbC1vZmZzZXQsXG4gICAgICAgICAgICAgICAgJGluZml4LW1hcmdpbi10b3ApO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWF0LXByaXZhdGUtZm9ybS1maWVsZC1vdXRsaW5lLWRlbnNpdHkoJGNvbmZpZy1vci10aGVtZSkge31cblxuQG1peGluIG1hdC1mb3JtLWZpZWxkLW91dGxpbmUtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZykge1xuICAkdGhlbWU6IG1hdC1wcml2YXRlLWxlZ2FjeS1nZXQtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1wcml2YXRlLWNoZWNrLWR1cGxpY2F0ZS10aGVtZS1zdHlsZXMoJHRoZW1lLCAnbWF0LWZvcm0tZmllbGQtb3V0bGluZScpIHtcbiAgICAkY29sb3I6IG1hdC1nZXQtY29sb3ItY29uZmlnKCR0aGVtZSk7XG4gICAgJGRlbnNpdHk6IG1hdC1nZXQtZGVuc2l0eS1jb25maWcoJHRoZW1lKTtcbiAgICAkdHlwb2dyYXBoeTogbWF0LWdldC10eXBvZ3JhcGh5LWNvbmZpZygkdGhlbWUpO1xuXG4gICAgQGlmICRjb2xvciAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIG1hdC1mb3JtLWZpZWxkLW91dGxpbmUtY29sb3IoJGNvbG9yKTtcbiAgICB9XG4gICAgQGlmICRkZW5zaXR5ICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LXByaXZhdGUtZm9ybS1maWVsZC1vdXRsaW5lLWRlbnNpdHkoJGRlbnNpdHkpO1xuICAgIH1cbiAgICBAaWYgJHR5cG9ncmFwaHkgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBtYXQtZm9ybS1maWVsZC1vdXRsaW5lLXR5cG9ncmFwaHkoJHR5cG9ncmFwaHkpO1xuICAgIH1cbiAgfVxufVxuXG5cblxuXG5cblxuXG5cbi8vIFRoZW1lIHN0eWxlcyB0aGF0IG9ubHkgYXBwbHkgdG8gdGhlIHN0YW5kYXJkIGFwcGVhcmFuY2Ugb2YgdGhlIGZvcm0tZmllbGQuXG5cbkBtaXhpbiBtYXQtZm9ybS1maWVsZC1zdGFuZGFyZC1jb2xvcigkY29uZmlnLW9yLXRoZW1lKSB7XG4gICRjb25maWc6IG1hdC1nZXQtY29sb3ItY29uZmlnKCRjb25maWctb3ItdGhlbWUpO1xuICAkZm9yZWdyb3VuZDogbWFwLWdldCgkY29uZmlnLCBmb3JlZ3JvdW5kKTtcbiAgJGlzLWRhcmstdGhlbWU6IG1hcC1nZXQoJGNvbmZpZywgaXMtZGFyayk7XG5cbiAgJHVuZGVybGluZS1jb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCBkaXZpZGVyLCBpZigkaXMtZGFyay10aGVtZSwgMC43LCAwLjQyKSk7XG5cbiAgLm1hdC1mb3JtLWZpZWxkLWFwcGVhcmFuY2Utc3RhbmRhcmQge1xuICAgIC5tYXQtZm9ybS1maWVsZC11bmRlcmxpbmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHVuZGVybGluZS1jb2xvcjtcbiAgICB9XG5cbiAgICAmLm1hdC1mb3JtLWZpZWxkLWRpc2FibGVkIC5tYXQtZm9ybS1maWVsZC11bmRlcmxpbmUge1xuICAgICAgQGluY2x1ZGUgbWF0LXByaXZhdGUtY29udHJvbC1kaXNhYmxlZC11bmRlcmxpbmUoJHVuZGVybGluZS1jb2xvcik7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYXQtZm9ybS1maWVsZC1zdGFuZGFyZC10eXBvZ3JhcGh5KCRjb25maWctb3ItdGhlbWUpIHt9XG5cbkBtaXhpbiBtYXQtcHJpdmF0ZS1mb3JtLWZpZWxkLXN0YW5kYXJkLWRlbnNpdHkoJGNvbmZpZy1vci10aGVtZSkge31cblxuQG1peGluIG1hdC1mb3JtLWZpZWxkLXN0YW5kYXJkLXRoZW1lKCR0aGVtZS1vci1jb2xvci1jb25maWcpIHtcbiAgJHRoZW1lOiBtYXQtcHJpdmF0ZS1sZWdhY3ktZ2V0LXRoZW1lKCR0aGVtZS1vci1jb2xvci1jb25maWcpO1xuICBAaW5jbHVkZSBtYXQtcHJpdmF0ZS1jaGVjay1kdXBsaWNhdGUtdGhlbWUtc3R5bGVzKCR0aGVtZSwgJ21hdC1mb3JtLWZpZWxkLXN0YW5kYXJkJykge1xuICAgICRjb2xvcjogbWF0LWdldC1jb2xvci1jb25maWcoJHRoZW1lKTtcbiAgICAkZGVuc2l0eTogbWF0LWdldC1kZW5zaXR5LWNvbmZpZygkdGhlbWUpO1xuICAgICR0eXBvZ3JhcGh5OiBtYXQtZ2V0LXR5cG9ncmFwaHktY29uZmlnKCR0aGVtZSk7XG5cbiAgICBAaWYgJGNvbG9yICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LWZvcm0tZmllbGQtc3RhbmRhcmQtY29sb3IoJGNvbG9yKTtcbiAgICB9XG4gICAgQGlmICRkZW5zaXR5ICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LXByaXZhdGUtZm9ybS1maWVsZC1zdGFuZGFyZC1kZW5zaXR5KCRkZW5zaXR5KTtcbiAgICB9XG4gICAgQGlmICR0eXBvZ3JhcGh5ICE9IG51bGwge1xuICAgICAgQGluY2x1ZGUgbWF0LWZvcm0tZmllbGQtc3RhbmRhcmQtdHlwb2dyYXBoeSgkdHlwb2dyYXBoeSk7XG4gICAgfVxuICB9XG59XG5cblxuLy8gQ29sb3Igc3R5bGVzIHRoYXQgYXBwbHkgdG8gYWxsIGFwcGVhcmFuY2VzIG9mIHRoZSBmb3JtLWZpZWxkLlxuQG1peGluIG1hdC1mb3JtLWZpZWxkLWNvbG9yKCRjb25maWctb3ItdGhlbWUpIHtcbiAgJGNvbmZpZzogbWF0LWdldC1jb2xvci1jb25maWcoJGNvbmZpZy1vci10aGVtZSk7XG4gICRwcmltYXJ5OiBtYXAtZ2V0KCRjb25maWcsIHByaW1hcnkpO1xuICAkYWNjZW50OiBtYXAtZ2V0KCRjb25maWcsIGFjY2VudCk7XG4gICR3YXJuOiBtYXAtZ2V0KCRjb25maWcsIHdhcm4pO1xuICAkYmFja2dyb3VuZDogbWFwLWdldCgkY29uZmlnLCBiYWNrZ3JvdW5kKTtcbiAgJGZvcmVncm91bmQ6IG1hcC1nZXQoJGNvbmZpZywgZm9yZWdyb3VuZCk7XG4gICRpcy1kYXJrLXRoZW1lOiBtYXAtZ2V0KCRjb25maWcsIGlzLWRhcmspO1xuXG4gIC8vIExhYmVsIGNvbG9ycy4gUmVxdWlyZWQgaXMgdXNlZCBmb3IgdGhlIGAqYCBzdGFyIHNob3duIGluIHRoZSBsYWJlbC5cbiAgJGxhYmVsLWNvbG9yOiBtYXQtY29sb3IoJGZvcmVncm91bmQsIHNlY29uZGFyeS10ZXh0LCBpZigkaXMtZGFyay10aGVtZSwgMC43LCAwLjYpKTtcbiAgJGZvY3VzZWQtbGFiZWwtY29sb3I6IG1hdC1jb2xvcigkcHJpbWFyeSwgdGV4dCk7XG4gICRyZXF1aXJlZC1sYWJlbC1jb2xvcjogbWF0LWNvbG9yKCRhY2NlbnQsIHRleHQpO1xuXG4gIC8vIFVuZGVybGluZSBjb2xvcnMuXG4gICR1bmRlcmxpbmUtY29sb3ItYmFzZTogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCBkaXZpZGVyLCBpZigkaXMtZGFyay10aGVtZSwgMSwgMC44NykpO1xuICAkdW5kZXJsaW5lLWNvbG9yLWFjY2VudDogbWF0LWNvbG9yKCRhY2NlbnQsIHRleHQpO1xuICAkdW5kZXJsaW5lLWNvbG9yLXdhcm46IG1hdC1jb2xvcigkd2FybiwgdGV4dCk7XG4gICR1bmRlcmxpbmUtZm9jdXNlZC1jb2xvcjogbWF0LWNvbG9yKCRwcmltYXJ5LCB0ZXh0KTtcblxuICAubWF0LWZvcm0tZmllbGQtbGFiZWwge1xuICAgIGNvbG9yOiAkbGFiZWwtY29sb3I7XG4gIH1cblxuICAubWF0LWhpbnQge1xuICAgIGNvbG9yOiAkbGFiZWwtY29sb3I7XG4gIH1cblxuICAubWF0LWZvcm0tZmllbGQubWF0LWZvY3VzZWQgLm1hdC1mb3JtLWZpZWxkLWxhYmVsIHtcbiAgICBjb2xvcjogJGZvY3VzZWQtbGFiZWwtY29sb3I7XG5cbiAgICAmLm1hdC1hY2NlbnQge1xuICAgICAgY29sb3I6ICR1bmRlcmxpbmUtY29sb3ItYWNjZW50O1xuICAgIH1cblxuICAgICYubWF0LXdhcm4ge1xuICAgICAgY29sb3I6ICR1bmRlcmxpbmUtY29sb3Itd2FybjtcbiAgICB9XG4gIH1cblxuICAubWF0LWZvY3VzZWQgLm1hdC1mb3JtLWZpZWxkLXJlcXVpcmVkLW1hcmtlciB7XG4gICAgY29sb3I6ICRyZXF1aXJlZC1sYWJlbC1jb2xvcjtcbiAgfVxuXG4gIC5tYXQtZm9ybS1maWVsZC1yaXBwbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR1bmRlcmxpbmUtY29sb3ItYmFzZTtcbiAgfVxuXG4gIC5tYXQtZm9ybS1maWVsZC5tYXQtZm9jdXNlZCB7XG4gICAgLm1hdC1mb3JtLWZpZWxkLXJpcHBsZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdW5kZXJsaW5lLWZvY3VzZWQtY29sb3I7XG5cbiAgICAgICYubWF0LWFjY2VudCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR1bmRlcmxpbmUtY29sb3ItYWNjZW50O1xuICAgICAgfVxuXG4gICAgICAmLm1hdC13YXJuIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHVuZGVybGluZS1jb2xvci13YXJuO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5tYXQtZm9ybS1maWVsZC10eXBlLW1hdC1uYXRpdmUtc2VsZWN0Lm1hdC1mb2N1c2VkOm5vdCgubWF0LWZvcm0tZmllbGQtaW52YWxpZCkge1xuICAgIC5tYXQtZm9ybS1maWVsZC1pbmZpeDo6YWZ0ZXIge1xuICAgICAgY29sb3I6ICR1bmRlcmxpbmUtZm9jdXNlZC1jb2xvcjtcbiAgICB9XG5cbiAgICAmLm1hdC1hY2NlbnQgLm1hdC1mb3JtLWZpZWxkLWluZml4OjphZnRlciB7XG4gICAgICBjb2xvcjogJHVuZGVybGluZS1jb2xvci1hY2NlbnQ7XG4gICAgfVxuXG4gICAgJi5tYXQtd2FybiAubWF0LWZvcm0tZmllbGQtaW5maXg6OmFmdGVyIHtcbiAgICAgIGNvbG9yOiAkdW5kZXJsaW5lLWNvbG9yLXdhcm47XG4gICAgfVxuICB9XG5cbiAgLy8gU3R5bGluZyBmb3IgdGhlIGVycm9yIHN0YXRlIG9mIHRoZSBmb3JtIGZpZWxkLiBOb3RlIHRoYXQgd2hpbGUgdGhlIHNhbWUgY2FuIGJlXG4gIC8vIGFjaGlldmVkIHdpdGggdGhlIG5nLSogY2xhc3Nlcywgd2UgdXNlIHRoaXMgYXBwcm9hY2ggaW4gb3JkZXIgdG8gZW5zdXJlIHRoYXQgdGhlIHNhbWVcbiAgLy8gbG9naWMgaXMgdXNlZCB0byBzdHlsZSB0aGUgZXJyb3Igc3RhdGUgYW5kIHRvIHNob3cgdGhlIGVycm9yIG1lc3NhZ2VzLlxuICAubWF0LWZvcm0tZmllbGQubWF0LWZvcm0tZmllbGQtaW52YWxpZCB7XG4gICAgLm1hdC1mb3JtLWZpZWxkLWxhYmVsIHtcbiAgICAgIGNvbG9yOiAkdW5kZXJsaW5lLWNvbG9yLXdhcm47XG5cbiAgICAgICYubWF0LWFjY2VudCxcbiAgICAgIC5tYXQtZm9ybS1maWVsZC1yZXF1aXJlZC1tYXJrZXIge1xuICAgICAgICBjb2xvcjogJHVuZGVybGluZS1jb2xvci13YXJuO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5tYXQtZm9ybS1maWVsZC1yaXBwbGUsXG4gICAgLm1hdC1mb3JtLWZpZWxkLXJpcHBsZS5tYXQtYWNjZW50IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR1bmRlcmxpbmUtY29sb3Itd2FybjtcbiAgICB9XG4gIH1cblxuICAubWF0LWVycm9yIHtcbiAgICBjb2xvcjogJHVuZGVybGluZS1jb2xvci13YXJuO1xuICB9XG5cbiAgQGluY2x1ZGUgbWF0LWZvcm0tZmllbGQtbGVnYWN5LWNvbG9yKCRjb25maWcpO1xuICBAaW5jbHVkZSBtYXQtZm9ybS1maWVsZC1zdGFuZGFyZC1jb2xvcigkY29uZmlnKTtcbiAgQGluY2x1ZGUgbWF0LWZvcm0tZmllbGQtZmlsbC1jb2xvcigkY29uZmlnKTtcbiAgQGluY2x1ZGUgbWF0LWZvcm0tZmllbGQtb3V0bGluZS1jb2xvcigkY29uZmlnKTtcbn1cblxuLy8gVXNlZCB0byBtYWtlIGluc3RhbmNlcyBvZiB0aGUgX21hdC1mb3JtLWZpZWxkLWxhYmVsLWZsb2F0aW5nIG1peGluIG5lZ2xpZ2libHkgZGlmZmVyZW50LFxuLy8gYW5kIHByZXZlbnQgR29vZ2xlJ3MgQ1NTIE9wdGltaXplciBmcm9tIGNvbGxhcHNpbmcgdGhlIGRlY2xhcmF0aW9ucy4gVGhpcyBpcyBuZWVkZWQgYmVjYXVzZSBzb21lXG4vLyBvZiB0aGUgc2VsZWN0b3JzIGNvbnRhaW4gcHNldWRvLWNsYXNzZXMgbm90IHJlY29nbml6ZWQgaW4gYWxsIGJyb3dzZXJzLiBJZiBhIGJyb3dzZXIgZW5jb3VudGVyc1xuLy8gYW4gdW5rbm93biBwc2V1ZG8tY2xhc3MgaXQgd2lsbCBkaXNjYXJkIHRoZSBlbnRpcmUgcnVsZSBzZXQuXG4kbWF0LWZvcm0tZmllbGQtZGVkdXBlOiAwO1xuXG4vLyBBcHBsaWVzIGEgZmxvYXRpbmcgbGFiZWwgYWJvdmUgdGhlIGZvcm0gZmllbGQgY29udHJvbCBpdHNlbGYuXG5AbWl4aW4gX21hdC1mb3JtLWZpZWxkLWxhYmVsLWZsb2F0aW5nKCRmb250LXNjYWxlLCAkaW5maXgtcGFkZGluZywgJGluZml4LW1hcmdpbi10b3ApIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0kaW5maXgtbWFyZ2luLXRvcCAtICRpbmZpeC1wYWRkaW5nICsgJG1hdC1mb3JtLWZpZWxkLWRlZHVwZSlcbiAgICAgICAgICAgICBzY2FsZSgkZm9udC1zY2FsZSk7XG4gIHdpZHRoOiAxMDAlIC8gJGZvbnQtc2NhbGUgKyAkbWF0LWZvcm0tZmllbGQtZGVkdXBlO1xuXG4gICRtYXQtZm9ybS1maWVsZC1kZWR1cGU6ICRtYXQtZm9ybS1maWVsZC1kZWR1cGUgKyAwLjAwMDAxICFnbG9iYWw7XG59XG5cbkBtaXhpbiBtYXQtZm9ybS1maWVsZC10eXBvZ3JhcGh5KCRjb25maWctb3ItdGhlbWUpIHtcbiAgJGNvbmZpZzogbWF0LWdldC10eXBvZ3JhcGh5LWNvbmZpZygkY29uZmlnLW9yLXRoZW1lKTtcbiAgLy8gVGhlIHVuaXQtbGVzcyBsaW5lLWhlaWdodCBmcm9tIHRoZSBmb250IGNvbmZpZy5cbiAgJGxpbmUtaGVpZ2h0OiBtYXQtbGluZS1oZWlnaHQoJGNvbmZpZywgaW5wdXQpO1xuXG4gIC8vIFRoZSBhbW91bnQgdG8gc2NhbGUgdGhlIGZvbnQgZm9yIHRoZSBmbG9hdGluZyBsYWJlbCBhbmQgc3Vic2NyaXB0LlxuICAkc3Vic2NyaXB0LWZvbnQtc2NhbGU6IDAuNzU7XG4gIC8vIFRoZSBhbW91bnQgdG8gc2NhbGUgdGhlIGZvbnQgZm9yIHRoZSBwcmVmaXggYW5kIHN1ZmZpeCBpY29ucy5cbiAgJHByZWZpeC1zdWZmaXgtaWNvbi1mb250LXNjYWxlOiAxLjU7XG5cbiAgLy8gVGhlIHBhZGRpbmcgb24gdGhlIGluZml4LiBNb2NrcyBzaG93IGhhbGYgb2YgdGhlIHRleHQgc2l6ZS5cbiAgJGluZml4LXBhZGRpbmc6IDAuNWVtO1xuICAvLyBUaGUgbWFyZ2luIGFwcGxpZWQgdG8gdGhlIGZvcm0tZmllbGQtaW5maXggdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgdGhlIGZsb2F0aW5nIGxhYmVsLlxuICAkaW5maXgtbWFyZ2luLXRvcDogMWVtICogJGxpbmUtaGVpZ2h0ICogJHN1YnNjcmlwdC1mb250LXNjYWxlO1xuICAvLyBGb250IHNpemUgdG8gdXNlIGZvciB0aGUgbGFiZWwgYW5kIHN1YnNjcmlwdCB0ZXh0LlxuICAkc3Vic2NyaXB0LWZvbnQtc2l6ZTogJHN1YnNjcmlwdC1mb250LXNjYWxlICogMTAwJTtcbiAgLy8gRm9udCBzaXplIHRvIHVzZSBmb3IgdGhlIGZvciB0aGUgcHJlZml4IGFuZCBzdWZmaXggaWNvbnMuXG4gICRwcmVmaXgtc3VmZml4LWljb24tZm9udC1zaXplOiAkcHJlZml4LXN1ZmZpeC1pY29uLWZvbnQtc2NhbGUgKiAxMDAlO1xuICAvLyBUaGUgc3BhY2UgYmV0d2VlbiB0aGUgYm90dG9tIG9mIHRoZSAubWF0LWZvcm0tZmllbGQtZmxleCBhcmVhIGFuZCB0aGUgc3Vic2NyaXB0IHdyYXBwZXIuXG4gIC8vIE1vY2tzIHNob3cgaGFsZiBvZiB0aGUgdGV4dCBzaXplLCBidXQgdGhpcyBtYXJnaW4gaXMgYXBwbGllZCB0byBhbiBlbGVtZW50IHdpdGggdGhlIHN1YnNjcmlwdFxuICAvLyB0ZXh0IGZvbnQgc2l6ZSwgc28gd2UgbmVlZCB0byBkaXZpZGUgYnkgdGhlIHNjYWxlIGZhY3RvciB0byBtYWtlIGl0IGhhbGYgb2YgdGhlIG9yaWdpbmFsIHRleHRcbiAgLy8gc2l6ZS5cbiAgJHN1YnNjcmlwdC1tYXJnaW4tdG9wOiAwLjVlbSAvICRzdWJzY3JpcHQtZm9udC1zY2FsZTtcbiAgLy8gVGhlIHBhZGRpbmcgYXBwbGllZCB0byB0aGUgZm9ybS1maWVsZC13cmFwcGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIHRoZSBzdWJzY3JpcHQsIHNpbmNlIGl0J3NcbiAgLy8gYWJzb2x1dGVseSBwb3NpdGlvbmVkLiBUaGlzIGlzIGEgY29tYmluYXRpb24gb2YgdGhlIHN1YnNjcmlwdCdzIG1hcmdpbiBhbmQgbGluZS1oZWlnaHQsIGJ1dCB3ZVxuICAvLyBuZWVkIHRvIG11bHRpcGx5IGJ5IHRoZSBzdWJzY3JpcHQgZm9udCBzY2FsZSBmYWN0b3Igc2luY2UgdGhlIHdyYXBwZXIgaGFzIGEgbGFyZ2VyIGZvbnQgc2l6ZS5cbiAgJHdyYXBwZXItcGFkZGluZy1ib3R0b206ICgkc3Vic2NyaXB0LW1hcmdpbi10b3AgKyAkbGluZS1oZWlnaHQpICogJHN1YnNjcmlwdC1mb250LXNjYWxlO1xuXG4gIC5tYXQtZm9ybS1maWVsZCB7XG4gICAgQGluY2x1ZGUgbWF0LXR5cG9ncmFwaHktbGV2ZWwtdG8tc3R5bGVzKCRjb25maWcsIGlucHV0KTtcbiAgfVxuXG4gIC5tYXQtZm9ybS1maWVsZC13cmFwcGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogJHdyYXBwZXItcGFkZGluZy1ib3R0b207XG4gIH1cblxuICAubWF0LWZvcm0tZmllbGQtcHJlZml4LFxuICAubWF0LWZvcm0tZmllbGQtc3VmZml4IHtcbiAgICAvLyBBbGxvdyBpY29ucyBpbiBhIHByZWZpeCBvciBzdWZmaXggdG8gYWRhcHQgdG8gdGhlIGNvcnJlY3Qgc2l6ZS5cbiAgICAubWF0LWljb24ge1xuICAgICAgZm9udC1zaXplOiAkcHJlZml4LXN1ZmZpeC1pY29uLWZvbnQtc2l6ZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gICAgfVxuXG4gICAgLy8gQWxsb3cgaWNvbiBidXR0b25zIGluIGEgcHJlZml4IG9yIHN1ZmZpeCB0byBhZGFwdCB0byB0aGUgY29ycmVjdCBzaXplLlxuICAgIC5tYXQtaWNvbi1idXR0b24ge1xuICAgICAgaGVpZ2h0OiAkcHJlZml4LXN1ZmZpeC1pY29uLWZvbnQtc2NhbGUgKiAxZW07XG4gICAgICB3aWR0aDogJHByZWZpeC1zdWZmaXgtaWNvbi1mb250LXNjYWxlICogMWVtO1xuXG4gICAgICAubWF0LWljb24ge1xuICAgICAgICBoZWlnaHQ6ICRsaW5lLWhlaWdodCAqIDFlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubWF0LWZvcm0tZmllbGQtaW5maXgge1xuICAgIHBhZGRpbmc6ICRpbmZpeC1wYWRkaW5nIDA7XG4gICAgLy8gVGhyb3dzIG9mZiB0aGUgYmFzZWxpbmUgaWYgd2UgZG8gaXQgYXMgYSByZWFsIG1hcmdpbiwgc28gd2UgZG8gaXQgYXMgYSBib3JkZXIgaW5zdGVhZC5cbiAgICBib3JkZXItdG9wOiAkaW5maXgtbWFyZ2luLXRvcCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC5tYXQtZm9ybS1maWVsZC1jYW4tZmxvYXQge1xuICAgICYubWF0LWZvcm0tZmllbGQtc2hvdWxkLWZsb2F0IC5tYXQtZm9ybS1maWVsZC1sYWJlbCxcbiAgICAubWF0LWlucHV0LXNlcnZlcjpmb2N1cyArIC5tYXQtZm9ybS1maWVsZC1sYWJlbC13cmFwcGVyIC5tYXQtZm9ybS1maWVsZC1sYWJlbCB7XG4gICAgICBAaW5jbHVkZSBfbWF0LWZvcm0tZmllbGQtbGFiZWwtZmxvYXRpbmcoXG4gICAgICAgICAgICAgICRzdWJzY3JpcHQtZm9udC1zY2FsZSwgJGluZml4LXBhZGRpbmcsICRpbmZpeC1tYXJnaW4tdG9wKTtcbiAgICB9XG5cbiAgICAvLyBTZXJ2ZXItc2lkZSByZW5kZXJlZCBtYXRJbnB1dCB3aXRoIGEgbGFiZWwgYXR0cmlidXRlIGJ1dCBsYWJlbCBub3Qgc2hvd25cbiAgICAvLyAodXNlZCBhcyBhIHB1cmUgQ1NTIHN0YW5kLWluIGZvciBtYXQtZm9ybS1maWVsZC1zaG91bGQtZmxvYXQpLlxuICAgIC5tYXQtaW5wdXQtc2VydmVyW2xhYmVsXTpub3QoOmxhYmVsLXNob3duKSArIC5tYXQtZm9ybS1maWVsZC1sYWJlbC13cmFwcGVyXG4gICAgICAgIC5tYXQtZm9ybS1maWVsZC1sYWJlbCB7XG4gICAgICBAaW5jbHVkZSBfbWF0LWZvcm0tZmllbGQtbGFiZWwtZmxvYXRpbmcoXG4gICAgICAgICAgICAgICRzdWJzY3JpcHQtZm9udC1zY2FsZSwgJGluZml4LXBhZGRpbmcsICRpbmZpeC1tYXJnaW4tdG9wKTtcbiAgICB9XG4gIH1cblxuICAubWF0LWZvcm0tZmllbGQtbGFiZWwtd3JhcHBlciB7XG4gICAgdG9wOiAtJGluZml4LW1hcmdpbi10b3A7XG4gICAgcGFkZGluZy10b3A6ICRpbmZpeC1tYXJnaW4tdG9wO1xuICB9XG5cbiAgLm1hdC1mb3JtLWZpZWxkLWxhYmVsIHtcbiAgICB0b3A6ICRpbmZpeC1tYXJnaW4tdG9wICsgJGluZml4LXBhZGRpbmc7XG4gIH1cblxuICAubWF0LWZvcm0tZmllbGQtdW5kZXJsaW5lIHtcbiAgICAvLyBXZSB3YW50IHRoZSB1bmRlcmxpbmUgdG8gc3RhcnQgYXQgdGhlIGVuZCBvZiB0aGUgY29udGVudCBib3gsIG5vdCB0aGUgcGFkZGluZyBib3gsXG4gICAgLy8gc28gd2UgbW92ZSBpdCB1cCBieSB0aGUgcGFkZGluZyBhbW91bnQuXG4gICAgYm90dG9tOiAkd3JhcHBlci1wYWRkaW5nLWJvdHRvbTtcbiAgfVxuXG4gIC5tYXQtZm9ybS1maWVsZC1zdWJzY3JpcHQtd3JhcHBlciB7XG4gICAgZm9udC1zaXplOiAkc3Vic2NyaXB0LWZvbnQtc2l6ZTtcbiAgICBtYXJnaW4tdG9wOiAkc3Vic2NyaXB0LW1hcmdpbi10b3A7XG5cbiAgICAvLyBXZSB3YW50IHRoZSBzdWJzY3JpcHQgdG8gc3RhcnQgYXQgdGhlIGVuZCBvZiB0aGUgY29udGVudCBib3gsIG5vdCB0aGUgcGFkZGluZyBib3gsXG4gICAgLy8gc28gd2UgbW92ZSBpdCB1cCBieSB0aGUgcGFkZGluZyBhbW91bnQgKGFkanVzdGVkIGZvciB0aGUgc21hbGxlciBmb250IHNpemUpO1xuICAgIHRvcDogY2FsYygxMDAlIC0gI3skd3JhcHBlci1wYWRkaW5nLWJvdHRvbSAvICRzdWJzY3JpcHQtZm9udC1zY2FsZX0pO1xuICB9XG5cbiAgQGluY2x1ZGUgbWF0LWZvcm0tZmllbGQtbGVnYWN5LXR5cG9ncmFwaHkoJGNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1mb3JtLWZpZWxkLXN0YW5kYXJkLXR5cG9ncmFwaHkoJGNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1mb3JtLWZpZWxkLWZpbGwtdHlwb2dyYXBoeSgkY29uZmlnKTtcbiAgQGluY2x1ZGUgbWF0LWZvcm0tZmllbGQtb3V0bGluZS10eXBvZ3JhcGh5KCRjb25maWcpO1xufVxuXG5AbWl4aW4gbWF0LWZvcm0tZmllbGQtZGVuc2l0eSgkY29uZmlnLW9yLXRoZW1lKSB7XG4gICRkZW5zaXR5LXNjYWxlOiBtYXQtZ2V0LWRlbnNpdHktY29uZmlnKCRjb25maWctb3ItdGhlbWUpO1xuICBAaW5jbHVkZSBtYXQtcHJpdmF0ZS1mb3JtLWZpZWxkLWxlZ2FjeS1kZW5zaXR5KCRkZW5zaXR5LXNjYWxlKTtcbiAgQGluY2x1ZGUgbWF0LXByaXZhdGUtZm9ybS1maWVsZC1zdGFuZGFyZC1kZW5zaXR5KCRkZW5zaXR5LXNjYWxlKTtcbiAgQGluY2x1ZGUgbWF0LXByaXZhdGUtZm9ybS1maWVsZC1maWxsLWRlbnNpdHkoJGRlbnNpdHktc2NhbGUpO1xuICBAaW5jbHVkZSBtYXQtcHJpdmF0ZS1mb3JtLWZpZWxkLW91dGxpbmUtZGVuc2l0eSgkZGVuc2l0eS1zY2FsZSk7XG59XG5cbkBtaXhpbiBtYXQtZm9ybS1maWVsZC10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKSB7XG4gICR0aGVtZTogbWF0LXByaXZhdGUtbGVnYWN5LWdldC10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKTtcbiAgQGluY2x1ZGUgbWF0LXByaXZhdGUtY2hlY2stZHVwbGljYXRlLXRoZW1lLXN0eWxlcygkdGhlbWUsICdtYXQtZm9ybS1maWVsZCcpIHtcbiAgICAkY29sb3I6IG1hdC1nZXQtY29sb3ItY29uZmlnKCR0aGVtZSk7XG4gICAgJGRlbnNpdHk6IG1hdC1nZXQtZGVuc2l0eS1jb25maWcoJHRoZW1lKTtcbiAgICAkdHlwb2dyYXBoeTogbWF0LWdldC10eXBvZ3JhcGh5LWNvbmZpZygkdGhlbWUpO1xuXG4gICAgQGlmICRjb2xvciAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIG1hdC1mb3JtLWZpZWxkLWNvbG9yKCRjb2xvcik7XG4gICAgfVxuICAgIEBpZiAkZGVuc2l0eSAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIG1hdC1mb3JtLWZpZWxkLWRlbnNpdHkoJGRlbnNpdHkpO1xuICAgIH1cbiAgICBAaWYgJHR5cG9ncmFwaHkgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBtYXQtZm9ybS1maWVsZC10eXBvZ3JhcGh5KCR0eXBvZ3JhcGh5KTtcbiAgICB9XG4gIH1cbn1cblxuXG5cblxuXG4kbWF0LXRyZWUtbm9kZS1oZWlnaHQ6IDQ4cHggIWRlZmF1bHQ7XG4vLyBNaW5pbXVtIGhlaWdodCBmb3IgdHJlZSBub2RlcyBpbiBoaWdoZXN0IGRlbnNpdHkgaXMgZGlmZmljdWx0IHRvIGRldGVybWluZSBhc1xuLy8gZGV2ZWxvcGVycyBjYW4gZGlzcGxheSBhcmJpdHJhcnkgY29udGVudC4gV2UgdXNlIGEgbWluaW11bSBoZWlnaHQgd2hpY2ggZW5zdXJlc1xuLy8gdGhhdCBjb21tb24gY29udGVudCBwbGFjZWQgaW4gdHJlZSBub2RlcyBkb2VzIG5vdCBleGNlZWQgKGUuZy4gaWNvbnMsIGNoZWNrYm94ZXMpLlxuJG1hdC10cmVlLW5vZGUtbWluaW11bS1oZWlnaHQ6IDI0cHggIWRlZmF1bHQ7XG4kbWF0LXRyZWUtbm9kZS1tYXhpbXVtLWhlaWdodDogJG1hdC10cmVlLW5vZGUtaGVpZ2h0ICFkZWZhdWx0O1xuXG4kbWF0LXRyZWUtZGVuc2l0eS1jb25maWc6IChcbiAgaGVpZ2h0OiAoXG4gICAgZGVmYXVsdDogJG1hdC10cmVlLW5vZGUtaGVpZ2h0LFxuICAgIG1heGltdW06ICRtYXQtdHJlZS1ub2RlLW1heGltdW0taGVpZ2h0LFxuICAgIG1pbmltdW06ICRtYXQtdHJlZS1ub2RlLW1pbmltdW0taGVpZ2h0LFxuICApXG4pICFkZWZhdWx0O1xuXG5cbkBtaXhpbiBtYXQtdHJlZS1jb2xvcigkY29uZmlnLW9yLXRoZW1lKSB7XG4gICRjb25maWc6IG1hdC1nZXQtY29sb3ItY29uZmlnKCRjb25maWctb3ItdGhlbWUpO1xuICAkYmFja2dyb3VuZDogbWFwLWdldCgkY29uZmlnLCBiYWNrZ3JvdW5kKTtcbiAgJGZvcmVncm91bmQ6IG1hcC1nZXQoJGNvbmZpZywgZm9yZWdyb3VuZCk7XG5cbiAgLm1hdC10cmVlIHtcbiAgICBiYWNrZ3JvdW5kOiBtYXQtY29sb3IoJGJhY2tncm91bmQsICdjYXJkJyk7XG4gIH1cblxuICAubWF0LXRyZWUtbm9kZSxcbiAgLm1hdC1uZXN0ZWQtdHJlZS1ub2RlIHtcbiAgICBjb2xvcjogbWF0LWNvbG9yKCRmb3JlZ3JvdW5kLCB0ZXh0KTtcbiAgfVxufVxuXG5AbWl4aW4gbWF0LXRyZWUtdHlwb2dyYXBoeSgkY29uZmlnLW9yLXRoZW1lKSB7XG4gICRjb25maWc6IG1hdC1nZXQtdHlwb2dyYXBoeS1jb25maWcoJGNvbmZpZy1vci10aGVtZSk7XG4gIC5tYXQtdHJlZSB7XG4gICAgZm9udC1mYW1pbHk6IG1hdC1mb250LWZhbWlseSgkY29uZmlnKTtcbiAgfVxuXG4gIC5tYXQtdHJlZS1ub2RlLFxuICAubWF0LW5lc3RlZC10cmVlLW5vZGUge1xuICAgIGZvbnQtd2VpZ2h0OiBtYXQtZm9udC13ZWlnaHQoJGNvbmZpZywgYm9keS0xKTtcbiAgICBmb250LXNpemU6IG1hdC1mb250LXNpemUoJGNvbmZpZywgYm9keS0xKTtcbiAgfVxufVxuXG5AbWl4aW4gbWF0LXRyZWUtZGVuc2l0eSgkY29uZmlnLW9yLXRoZW1lKSB7XG4gICRkZW5zaXR5LXNjYWxlOiBtYXQtZ2V0LWRlbnNpdHktY29uZmlnKCRjb25maWctb3ItdGhlbWUpO1xuICAkaGVpZ2h0OiBtYXQtcHJpdmF0ZS1kZW5zaXR5LXByb3AtdmFsdWUoJG1hdC10cmVlLWRlbnNpdHktY29uZmlnLCAkZGVuc2l0eS1zY2FsZSwgaGVpZ2h0KTtcblxuICBAaW5jbHVkZSBtYXQtcHJpdmF0ZS1kZW5zaXR5LWxlZ2FjeS1jb21wYXRpYmlsaXR5KCkge1xuICAgIC5tYXQtdHJlZS1ub2RlIHtcbiAgICAgIG1pbi1oZWlnaHQ6ICRoZWlnaHQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYXQtdHJlZS10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKSB7XG4gICR0aGVtZTogbWF0LXByaXZhdGUtbGVnYWN5LWdldC10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKTtcbiAgQGluY2x1ZGUgbWF0LXByaXZhdGUtY2hlY2stZHVwbGljYXRlLXRoZW1lLXN0eWxlcygkdGhlbWUsICdtYXQtdHJlZScpIHtcbiAgICAkY29sb3I6IG1hdC1nZXQtY29sb3ItY29uZmlnKCR0aGVtZSk7XG4gICAgJGRlbnNpdHk6IG1hdC1nZXQtZGVuc2l0eS1jb25maWcoJHRoZW1lKTtcbiAgICAkdHlwb2dyYXBoeTogbWF0LWdldC10eXBvZ3JhcGh5LWNvbmZpZygkdGhlbWUpO1xuXG4gICAgQGlmICRjb2xvciAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIG1hdC10cmVlLWNvbG9yKCRjb2xvcik7XG4gICAgfVxuICAgIEBpZiAkZGVuc2l0eSAhPSBudWxsIHtcbiAgICAgIEBpbmNsdWRlIG1hdC10cmVlLWRlbnNpdHkoJGRlbnNpdHkpO1xuICAgIH1cbiAgICBAaWYgJHR5cG9ncmFwaHkgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBtYXQtdHJlZS10eXBvZ3JhcGh5KCR0eXBvZ3JhcGh5KTtcbiAgICB9XG4gIH1cbn1cblxuXG5cblxuLy8gSW5jbHVkZXMgYWxsIG9mIHRoZSB0eXBvZ3JhcGhpYyBzdHlsZXMuXG5AbWl4aW4gYW5ndWxhci1tYXRlcmlhbC10eXBvZ3JhcGh5KCRjb25maWctb3ItdGhlbWU6IG51bGwpIHtcbiAgJGNvbmZpZzogaWYobWF0LXByaXZhdGUtaXMtdGhlbWUtb2JqZWN0KCRjb25maWctb3ItdGhlbWUpLFxuICAgICAgbWF0LWdldC10eXBvZ3JhcGh5LWNvbmZpZygkY29uZmlnLW9yLXRoZW1lKSwgJGNvbmZpZy1vci10aGVtZSk7XG5cbiAgLy8gSWYgbm8gYWN0dWFsIGNvbG9yIGNvbmZpZ3VyYXRpb24gaGFzIGJlZW4gc3BlY2lmaWVkLCBjcmVhdGUgYSBkZWZhdWx0IG9uZS5cbiAgQGlmIG5vdCAkY29uZmlnIHtcbiAgICAkY29uZmlnOiBtYXQtdHlwb2dyYXBoeS1jb25maWcoKTtcbiAgfVxuXG4gIC8vIFRPRE86IENPTVAtMzA5OiBEbyBub3QgdXNlIGluZGl2aWR1YWwgbWl4aW5zLiBJbnN0ZWFkLCB1c2UgdGhlIGFsbC10aGVtZSBtaXhpbiBhbmQgb25seVxuICAvLyBzcGVjaWZ5IGEgYHR5cG9ncmFwaHlgIGNvbmZpZyB3aGlsZSBzZXR0aW5nIGBjb2xvcmAgYW5kIGBkZW5zaXR5YCB0byBgbnVsbGAuIFRoaXMgaXMgY3VycmVudGx5XG4gIC8vIG5vdCBwb3NzaWJsZSBhcyBpdCB3b3VsZCBpbnRyb2R1Y2UgYSBjaXJjdWxhciBkZXBlbmRlbmN5IGZvciB0eXBvZ3JhcGh5IGJlY2F1c2UgdGhlIGBtYXQtY29yZWBcbiAgLy8gbWl4aW4gdGhhdCBpcyB0cmFuc2l0aXZlbHkgbG9hZGVkIGJ5IHRoZSBgYWxsLXRoZW1lYCBmaWxlLCBpbXBvcnRzIGBhbGwtdHlwb2dyYXBoeWAgd2hpY2hcbiAgLy8gd291bGQgdGhlbiBsb2FkIGBhbGwtdGhlbWVgIGFnYWluLiBUaGlzIHVsdGltYXRlbHkgcmVzdWx0cyBhIGNpcmN1bGFyIGRlcGVuZGVuY3kuXG5cbiAgQGluY2x1ZGUgbWF0LWJhZGdlLXR5cG9ncmFwaHkoJGNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1iYXNlLXR5cG9ncmFwaHkoJGNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1hdXRvY29tcGxldGUtdHlwb2dyYXBoeSgkY29uZmlnKTtcbiAgQGluY2x1ZGUgbWF0LWJvdHRvbS1zaGVldC10eXBvZ3JhcGh5KCRjb25maWcpO1xuICBAaW5jbHVkZSBtYXQtYnV0dG9uLXR5cG9ncmFwaHkoJGNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1idXR0b24tdG9nZ2xlLXR5cG9ncmFwaHkoJGNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1jYXJkLXR5cG9ncmFwaHkoJGNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1jaGVja2JveC10eXBvZ3JhcGh5KCRjb25maWcpO1xuICBAaW5jbHVkZSBtYXQtY2hpcHMtdHlwb2dyYXBoeSgkY29uZmlnKTtcbiAgQGluY2x1ZGUgbWF0LWRpdmlkZXItdHlwb2dyYXBoeSgkY29uZmlnKTtcbiAgQGluY2x1ZGUgbWF0LXRhYmxlLXR5cG9ncmFwaHkoJGNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1kYXRlcGlja2VyLXR5cG9ncmFwaHkoJGNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1kaWFsb2ctdHlwb2dyYXBoeSgkY29uZmlnKTtcbiAgQGluY2x1ZGUgbWF0LWV4cGFuc2lvbi1wYW5lbC10eXBvZ3JhcGh5KCRjb25maWcpO1xuICBAaW5jbHVkZSBtYXQtZm9ybS1maWVsZC10eXBvZ3JhcGh5KCRjb25maWcpO1xuICBAaW5jbHVkZSBtYXQtZ3JpZC1saXN0LXR5cG9ncmFwaHkoJGNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1pY29uLXR5cG9ncmFwaHkoJGNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1pbnB1dC10eXBvZ3JhcGh5KCRjb25maWcpO1xuICBAaW5jbHVkZSBtYXQtbWVudS10eXBvZ3JhcGh5KCRjb25maWcpO1xuICBAaW5jbHVkZSBtYXQtcGFnaW5hdG9yLXR5cG9ncmFwaHkoJGNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1wcm9ncmVzcy1iYXItdHlwb2dyYXBoeSgkY29uZmlnKTtcbiAgQGluY2x1ZGUgbWF0LXByb2dyZXNzLXNwaW5uZXItdHlwb2dyYXBoeSgkY29uZmlnKTtcbiAgQGluY2x1ZGUgbWF0LXJhZGlvLXR5cG9ncmFwaHkoJGNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1zZWxlY3QtdHlwb2dyYXBoeSgkY29uZmlnKTtcbiAgQGluY2x1ZGUgbWF0LXNpZGVuYXYtdHlwb2dyYXBoeSgkY29uZmlnKTtcbiAgQGluY2x1ZGUgbWF0LXNsaWRlLXRvZ2dsZS10eXBvZ3JhcGh5KCRjb25maWcpO1xuICBAaW5jbHVkZSBtYXQtc2xpZGVyLXR5cG9ncmFwaHkoJGNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1zdGVwcGVyLXR5cG9ncmFwaHkoJGNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1zb3J0LXR5cG9ncmFwaHkoJGNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC10YWJzLXR5cG9ncmFwaHkoJGNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC10b29sYmFyLXR5cG9ncmFwaHkoJGNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC10b29sdGlwLXR5cG9ncmFwaHkoJGNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1saXN0LXR5cG9ncmFwaHkoJGNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1vcHRpb24tdHlwb2dyYXBoeSgkY29uZmlnKTtcbiAgQGluY2x1ZGUgbWF0LW9wdGdyb3VwLXR5cG9ncmFwaHkoJGNvbmZpZyk7XG4gIEBpbmNsdWRlIG1hdC1zbmFjay1iYXItdHlwb2dyYXBoeSgkY29uZmlnKTtcbiAgQGluY2x1ZGUgbWF0LXRyZWUtdHlwb2dyYXBoeSgkY29uZmlnKTtcbn1cblxuXG4vLyBNaXhpbiB0aGF0IHJlbmRlcnMgYWxsIG9mIHRoZSBjb3JlIHN0eWxlcyB0aGF0IGFyZSBub3QgdGhlbWUtZGVwZW5kZW50LlxuQG1peGluIG1hdC1jb3JlKCR0eXBvZ3JhcGh5LWNvbmZpZzogbnVsbCkge1xuICBAaW5jbHVkZSBhbmd1bGFyLW1hdGVyaWFsLXR5cG9ncmFwaHkoJHR5cG9ncmFwaHktY29uZmlnKTtcbiAgQGluY2x1ZGUgbWF0LXJpcHBsZSgpO1xuICBAaW5jbHVkZSBjZGstYTExeSgpO1xuICBAaW5jbHVkZSBjZGstb3ZlcmxheSgpO1xuICBAaW5jbHVkZSBjZGstdGV4dC1maWVsZCgpO1xuXG4gIEBpbmNsdWRlIG1hdC1wcml2YXRlLXN0cm9uZy1mb2N1cy1pbmRpY2F0b3JzLXBvc2l0aW9uaW5nKCk7XG4gIEBpbmNsdWRlIF9tYXQtbWRjLWNvcmUoKTtcbn1cblxuQG1peGluIG1hdC1jb3JlLWNvbG9yKCRjb25maWctb3ItdGhlbWUpIHtcbiAgJGNvbmZpZzogbWF0LWdldC1jb2xvci1jb25maWcoJGNvbmZpZy1vci10aGVtZSk7XG4gIC8vIFdyYXBwZXIgZWxlbWVudCB0aGF0IHByb3ZpZGVzIHRoZSB0aGVtZSBiYWNrZ3JvdW5kIHdoZW4gdGhlIHVzZXIncyBjb250ZW50IGlzbid0XG4gIC8vIGluc2lkZSBvZiBhIGBtYXQtc2lkZW5hdi1jb250YWluZXJgLiBOb3RlIHRoYXQgd2UgbmVlZCB0byBleGNsdWRlIHRoZSBhbXBlcnNhbmRcbiAgLy8gc2VsZWN0b3IgaW4gY2FzZSB0aGUgbWl4aW4gaXMgaW5jbHVkZWQgYXQgdGhlIHRvcCBsZXZlbC5cbiAgLm1hdC1hcHAtYmFja2dyb3VuZCN7aWYoJiwgJywgJi5tYXQtYXBwLWJhY2tncm91bmQnLCAnJyl9IHtcbiAgICAkYmFja2dyb3VuZDogbWFwLWdldCgkY29uZmlnLCBiYWNrZ3JvdW5kKTtcbiAgICAkZm9yZWdyb3VuZDogbWFwLWdldCgkY29uZmlnLCBmb3JlZ3JvdW5kKTtcblxuICAgIGJhY2tncm91bmQtY29sb3I6IG1hdC1jb2xvcigkYmFja2dyb3VuZCwgYmFja2dyb3VuZCk7XG4gICAgY29sb3I6IG1hdC1jb2xvcigkZm9yZWdyb3VuZCwgdGV4dCk7XG4gIH1cblxuICAvLyBQcm92aWRlcyBleHRlcm5hbCBDU1MgY2xhc3NlcyBmb3IgZWFjaCBlbGV2YXRpb24gdmFsdWUuIEVhY2ggQ1NTIGNsYXNzIGlzIGZvcm1hdHRlZCBhc1xuICAvLyBgbWF0LWVsZXZhdGlvbi16JHpWYWx1ZWAgd2hlcmUgYCR6VmFsdWVgIGNvcnJlc3BvbmRzIHRvIHRoZSB6LXNwYWNlIHRvIHdoaWNoIHRoZSBlbGVtZW50IGlzXG4gIC8vIGVsZXZhdGVkLlxuICBAZm9yICR6VmFsdWUgZnJvbSAwIHRocm91Z2ggMjQge1xuICAgIC4jeyRtYXQtZWxldmF0aW9uLXByZWZpeH0jeyR6VmFsdWV9IHtcbiAgICAgIEBpbmNsdWRlIG1hdC1wcml2YXRlLXRoZW1lLWVsZXZhdGlvbigkelZhbHVlLCAkY29uZmlnKTtcbiAgICB9XG4gIH1cblxuICAvLyBNYXJrZXIgdGhhdCBpcyB1c2VkIHRvIGRldGVybWluZSB3aGV0aGVyIHRoZSB1c2VyIGhhcyBhZGRlZCBhIHRoZW1lIHRvIHRoZWlyIHBhZ2UuXG4gIEBhdC1yb290IHtcbiAgICAubWF0LXRoZW1lLWxvYWRlZC1tYXJrZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWl4aW4gdGhhdCByZW5kZXJzIGFsbCBvZiB0aGUgY29yZSBzdHlsZXMgdGhhdCBkZXBlbmQgb24gdGhlIHRoZW1lLlxuQG1peGluIG1hdC1jb3JlLXRoZW1lKCR0aGVtZS1vci1jb2xvci1jb25maWcpIHtcbiAgJHRoZW1lOiBtYXQtcHJpdmF0ZS1sZWdhY3ktZ2V0LXRoZW1lKCR0aGVtZS1vci1jb2xvci1jb25maWcpO1xuICAvLyBXcmFwIHRoZSBzdWItdGhlbWUgaW5jbHVkZXMgaW4gdGhlIGR1cGxpY2F0ZSB0aGVtZSBzdHlsZXMgbWl4aW4uIFRoaXMgZW5zdXJlcyB0aGF0XG4gIC8vIHRoZXJlIHdvbid0IGJlIG11bHRpcGxlIHdhcm5pbmdzLiBlLmcuIGlmIGBtYXQtY29yZS10aGVtZWAgcmVwb3J0cyBhIHdhcm5pbmcsIHRoZW5cbiAgLy8gdGhlIGltcG9ydGVkIHRoZW1lcyAoc3VjaCBhcyBgbWF0LXJpcHBsZS10aGVtZWApIHNob3VsZCBub3QgcmVwb3J0IGFnYWluLlxuICBAaW5jbHVkZSBtYXQtcHJpdmF0ZS1jaGVjay1kdXBsaWNhdGUtdGhlbWUtc3R5bGVzKCR0aGVtZSwgJ21hdC1jb3JlJykge1xuICAgIEBpbmNsdWRlIG1hdC1yaXBwbGUtdGhlbWUoJHRoZW1lKTtcbiAgICBAaW5jbHVkZSBtYXQtb3B0aW9uLXRoZW1lKCR0aGVtZSk7XG4gICAgQGluY2x1ZGUgbWF0LW9wdGdyb3VwLXRoZW1lKCR0aGVtZSk7XG4gICAgQGluY2x1ZGUgbWF0LXBzZXVkby1jaGVja2JveC10aGVtZSgkdGhlbWUpO1xuXG4gICAgJGNvbG9yOiBtYXQtZ2V0LWNvbG9yLWNvbmZpZygkdGhlbWUpO1xuICAgIEBpZiAkY29sb3IgIT0gbnVsbCB7XG4gICAgICBAaW5jbHVkZSBtYXQtY29yZS1jb2xvcigkY29sb3IpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBNaXhpbiB0aGF0IHJlbmRlcnMgYWxsIG9mIHRoZSBjb3JlIE1EQyBzdHlsZXMuIFByaXZhdGUgbWl4aW4gaW5jbHVkZWQgd2l0aCBgbWF0LWNvcmVgLlxuQG1peGluIF9tYXQtbWRjLWNvcmUoKSB7XG4gIEBpbmNsdWRlIF9tYXQtbWRjLXN0cm9uZy1mb2N1cy1pbmRpY2F0b3JzLXBvc2l0aW9uaW5nKCk7XG59XG5cbi8vIE1peGluIHRoYXQgZW5zdXJlcyBmb2N1cyBpbmRpY2F0b3IgaG9zdCBlbGVtZW50cyBhcmUgcG9zaXRpb25lZCBzbyB0aGF0IHRoZSBmb2N1cyBpbmRpY2F0b3Jcbi8vIHBzZXVkbyBlbGVtZW50IHdpdGhpbiBpcyBwb3NpdGlvbmVkIHJlbGF0aXZlIHRvIHRoZSBob3N0LiBQcml2YXRlIG1peGluIGluY2x1ZGVkIHdpdGhpblxuLy8gYF9tYXQtbWRjLWNvcmVgLlxuQG1peGluIF9tYXQtbWRjLXN0cm9uZy1mb2N1cy1pbmRpY2F0b3JzLXBvc2l0aW9uaW5nKCkge1xuICAubWF0LW1kYy1mb2N1cy1pbmRpY2F0b3Ige1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxufVxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG4vLyBDcmVhdGUgYSB0aGVtZS5cbkBtaXhpbiBhbmd1bGFyLW1hdGVyaWFsLXRoZW1lKCR0aGVtZS1vci1jb2xvci1jb25maWcpIHtcbiAgJGRlZHVwZS1rZXk6ICdhbmd1bGFyLW1hdGVyaWFsLXRoZW1lJztcbiAgQGluY2x1ZGUgbWF0LXByaXZhdGUtY2hlY2stZHVwbGljYXRlLXRoZW1lLXN0eWxlcygkdGhlbWUtb3ItY29sb3ItY29uZmlnLCAkZGVkdXBlLWtleSkge1xuICAgIEBpbmNsdWRlIG1hdC1jb3JlLXRoZW1lKCR0aGVtZS1vci1jb2xvci1jb25maWcpO1xuICAgIEBpbmNsdWRlIG1hdC1hdXRvY29tcGxldGUtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZyk7XG4gICAgQGluY2x1ZGUgbWF0LWJhZGdlLXRoZW1lKCR0aGVtZS1vci1jb2xvci1jb25maWcpO1xuICAgIEBpbmNsdWRlIG1hdC1ib3R0b20tc2hlZXQtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZyk7XG4gICAgQGluY2x1ZGUgbWF0LWJ1dHRvbi10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKTtcbiAgICBAaW5jbHVkZSBtYXQtYnV0dG9uLXRvZ2dsZS10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKTtcbiAgICBAaW5jbHVkZSBtYXQtY2FyZC10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKTtcbiAgICBAaW5jbHVkZSBtYXQtY2hlY2tib3gtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZyk7XG4gICAgQGluY2x1ZGUgbWF0LWNoaXBzLXRoZW1lKCR0aGVtZS1vci1jb2xvci1jb25maWcpO1xuICAgIEBpbmNsdWRlIG1hdC10YWJsZS10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKTtcbiAgICBAaW5jbHVkZSBtYXQtZGF0ZXBpY2tlci10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKTtcbiAgICBAaW5jbHVkZSBtYXQtZGlhbG9nLXRoZW1lKCR0aGVtZS1vci1jb2xvci1jb25maWcpO1xuICAgIEBpbmNsdWRlIG1hdC1kaXZpZGVyLXRoZW1lKCR0aGVtZS1vci1jb2xvci1jb25maWcpO1xuICAgIEBpbmNsdWRlIG1hdC1leHBhbnNpb24tcGFuZWwtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZyk7XG4gICAgQGluY2x1ZGUgbWF0LWZvcm0tZmllbGQtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZyk7XG4gICAgQGluY2x1ZGUgbWF0LWdyaWQtbGlzdC10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKTtcbiAgICBAaW5jbHVkZSBtYXQtaWNvbi10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKTtcbiAgICBAaW5jbHVkZSBtYXQtaW5wdXQtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZyk7XG4gICAgQGluY2x1ZGUgbWF0LWxpc3QtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZyk7XG4gICAgQGluY2x1ZGUgbWF0LW1lbnUtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZyk7XG4gICAgQGluY2x1ZGUgbWF0LXBhZ2luYXRvci10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKTtcbiAgICBAaW5jbHVkZSBtYXQtcHJvZ3Jlc3MtYmFyLXRoZW1lKCR0aGVtZS1vci1jb2xvci1jb25maWcpO1xuICAgIEBpbmNsdWRlIG1hdC1wcm9ncmVzcy1zcGlubmVyLXRoZW1lKCR0aGVtZS1vci1jb2xvci1jb25maWcpO1xuICAgIEBpbmNsdWRlIG1hdC1yYWRpby10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKTtcbiAgICBAaW5jbHVkZSBtYXQtc2VsZWN0LXRoZW1lKCR0aGVtZS1vci1jb2xvci1jb25maWcpO1xuICAgIEBpbmNsdWRlIG1hdC1zaWRlbmF2LXRoZW1lKCR0aGVtZS1vci1jb2xvci1jb25maWcpO1xuICAgIEBpbmNsdWRlIG1hdC1zbGlkZS10b2dnbGUtdGhlbWUoJHRoZW1lLW9yLWNvbG9yLWNvbmZpZyk7XG4gICAgQGluY2x1ZGUgbWF0LXNsaWRlci10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKTtcbiAgICBAaW5jbHVkZSBtYXQtc3RlcHBlci10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKTtcbiAgICBAaW5jbHVkZSBtYXQtc29ydC10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKTtcbiAgICBAaW5jbHVkZSBtYXQtdGFicy10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKTtcbiAgICBAaW5jbHVkZSBtYXQtdG9vbGJhci10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKTtcbiAgICBAaW5jbHVkZSBtYXQtdG9vbHRpcC10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKTtcbiAgICBAaW5jbHVkZSBtYXQtdHJlZS10aGVtZSgkdGhlbWUtb3ItY29sb3ItY29uZmlnKTtcbiAgICBAaW5jbHVkZSBtYXQtc25hY2stYmFyLXRoZW1lKCR0aGVtZS1vci1jb2xvci1jb25maWcpO1xuICB9XG59XG5cblxuXG4vLyBJbmNsdWRlcyBhbGwgb2YgdGhlIGNvbG9yIHN0eWxlcy5cbkBtaXhpbiBhbmd1bGFyLW1hdGVyaWFsLWNvbG9yKCRjb25maWctb3ItdGhlbWUpIHtcbiAgLy8gSW4gY2FzZSBhIHRoZW1lIG9iamVjdCBoYXMgYmVlbiBwYXNzZWQgaW5zdGVhZCBvZiBhIGNvbmZpZ3VyYXRpb24gZm9yXG4gIC8vIHRoZSBjb2xvciBzeXN0ZW0sIGV4dHJhY3QgdGhlIGNvbG9yIGNvbmZpZyBmcm9tIHRoZSB0aGVtZSBvYmplY3QuXG4gICRjb25maWc6IGlmKG1hdC1wcml2YXRlLWlzLXRoZW1lLW9iamVjdCgkY29uZmlnLW9yLXRoZW1lKSxcbiAgICAgIG1hdC1nZXQtY29sb3ItY29uZmlnKCRjb25maWctb3ItdGhlbWUpLCAkY29uZmlnLW9yLXRoZW1lKTtcblxuICBAaWYgJGNvbmZpZyA9PSBudWxsIHtcbiAgICBAZXJyb3IgJ05vIGNvbG9yIGNvbmZpZ3VyYXRpb24gc3BlY2lmaWVkLic7XG4gIH1cblxuICBAaW5jbHVkZSBhbmd1bGFyLW1hdGVyaWFsLXRoZW1lKChcbiAgICBjb2xvcjogJGNvbmZpZyxcbiAgICB0eXBvZ3JhcGh5OiBudWxsLFxuICAgIGRlbnNpdHk6IG51bGwsXG4gICkpO1xufVxuXG5cblxuXG5cblxuXG5cblxuXG4vLyBJbmNsdWRlcyBhbGwgb2YgdGhlIGRlbnNpdHkgc3R5bGVzLlxuQG1peGluIGFuZ3VsYXItbWF0ZXJpYWwtZGVuc2l0eSgkY29uZmlnLW9yLXRoZW1lKSB7XG4gIC8vIEluIGNhc2UgYSB0aGVtZSBvYmplY3QgaGFzIGJlZW4gcGFzc2VkIGluc3RlYWQgb2YgYSBjb25maWd1cmF0aW9uIGZvclxuICAvLyB0aGUgZGVuc2l0eSBzeXN0ZW0sIGV4dHJhY3QgdGhlIGRlbnNpdHkgY29uZmlnIGZyb20gdGhlIHRoZW1lIG9iamVjdC5cbiAgJGNvbmZpZzogaWYobWF0LXByaXZhdGUtaXMtdGhlbWUtb2JqZWN0KCRjb25maWctb3ItdGhlbWUpLFxuICAgICAgbWF0LWdldC1kZW5zaXR5LWNvbmZpZygkY29uZmlnLW9yLXRoZW1lKSwgJGNvbmZpZy1vci10aGVtZSk7XG5cbiAgQGlmICRjb25maWcgPT0gbnVsbCB7XG4gICAgQGVycm9yICdObyBkZW5zaXR5IGNvbmZpZ3VyYXRpb24gc3BlY2lmaWVkLic7XG4gIH1cblxuICAvLyBUT0RPOiBDT01QLTMwOTogRG8gbm90IHVzZSBpbmRpdmlkdWFsIG1peGlucy4gSW5zdGVhZCwgdXNlIHRoZSBhbGwtdGhlbWUgbWl4aW4gYW5kIG9ubHlcbiAgLy8gc3BlY2lmeSBhIGBkZW5zaXR5YCBjb25maWcgd2hpbGUgc2V0dGluZyBgY29sb3JgIGFuZCBgdHlwb2dyYXBoeWAgdG8gYG51bGxgLiBUaGlzIGlzIGN1cnJlbnRseVxuICAvLyBub3QgcG9zc2libGUgYXMgaXQgd291bGQgaW50cm9kdWNlIGEgY2lyY3VsYXIgZGVwZW5kZW5jeSBmb3IgZGVuc2l0eSBiZWNhdXNlIHRoZSBgbWF0LWNvcmVgXG4gIC8vIG1peGluIHRoYXQgaXMgdHJhbnNpdGl2ZWx5IGxvYWRlZCBieSB0aGUgYGFsbC10aGVtZWAgZmlsZSwgaW1wb3J0cyBgYWxsLWRlbnNpdHlgIHdoaWNoXG4gIC8vIHdvdWxkIHRoZW4gbG9hZCBgYWxsLXRoZW1lYCBhZ2Fpbi4gVGhpcyB1bHRpbWF0ZWx5IHJlc3VsdHMgYSBjaXJjdWxhciBkZXBlbmRlbmN5LlxuXG4gIEBpbmNsdWRlIG1hdC1leHBhbnNpb24tcGFuZWwtZGVuc2l0eSgkY29uZmlnKTtcbiAgQGluY2x1ZGUgbWF0LXN0ZXBwZXItZGVuc2l0eSgkY29uZmlnKTtcbiAgQGluY2x1ZGUgbWF0LXRvb2xiYXItZGVuc2l0eSgkY29uZmlnKTtcbiAgQGluY2x1ZGUgbWF0LXRyZWUtZGVuc2l0eSgkY29uZmlnKTtcbiAgQGluY2x1ZGUgbWF0LXBhZ2luYXRvci1kZW5zaXR5KCRjb25maWcpO1xuICBAaW5jbHVkZSBtYXQtZm9ybS1maWVsZC1kZW5zaXR5KCRjb25maWcpO1xuICBAaW5jbHVkZSBtYXQtYnV0dG9uLXRvZ2dsZS1kZW5zaXR5KCRjb25maWcpO1xufVxuXG5cblxuIiwiJHByaW1hcnktZm9udC1jb2xvcjogIzIyMjIyMjtcbiRwcmltYXJ5LWJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4kY29uc2lkZXJlZC1tb2JpbGU6IDc2OHB4O1xuJGd1aWRlLXBhZGRpbmc6IDE2cHg7XG5cbi8qXG4gKiBPcmRlciBtYXR0ZXJzIGhlcmUuXG4gKiBUaGUgcmVtIHVuaXQgc2NhbGVzIHJlbGF0aXZlIHRvIHRoZSBtYWluIGh0bWwgZm9udC1zaXplLlxuICogMTZweCBpcyB0aGUgc3RhbmRhcmQgYmFzZSBzaXplLlxuICovXG5odG1sIHtcbiAgY29sb3I6ICRwcmltYXJ5LWZvbnQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWJhY2tncm91bmQtY29sb3I7XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuLyogKioqKioqKioqKioqKioqIFNjYWxpbmcgKioqKioqKioqKioqKioqKioqICovXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTUwMHB4KSB7XG4gIGh0bWwge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMDBweCkge1xuICBodG1sIHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICBodG1sIHtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MDBweCkge1xuICBodG1sIHtcbiAgICBmb250LXNpemU6IDhweDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDUwMHB4KSB7XG4gIGh0bWwge1xuICAgIGZvbnQtc2l6ZTogN3B4O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDAwcHgpIHtcbiAgaHRtbCB7XG4gICAgZm9udC1zaXplOiA2cHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMDBweCkge1xuICBodG1sIHtcbiAgICBmb250LXNpemU6IDVweDtcbiAgfVxufVxuXG4vKiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiAqL1xuIiwiLyohXG4gKiBDb3JlVUkgUFJPIC0gSFRNTCwgQ1NTLCBhbmQgSmF2YVNjcmlwdCBVSSBDb21wb25lbnRzIExpYnJhcnlcbiAqIEB2ZXJzaW9uIHYzLjQuMFxuICogQGxpbmsgaHR0cHM6Ly9jb3JldWkuaW8vcHJvL1xuICogQ29weXJpZ2h0IChjKSAyMDIwIGNyZWF0aXZlTGFicyDFgXVrYXN6IEhvbGVjemVrXG4gKiBMaWNlbnNlIChodHRwczovL2NvcmV1aS5pby9wcm8vbGljZW5zZS8pXG4gKi9cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGltcG9ydC1zdGFja1xuQGltcG9ydCBcImZ1bmN0aW9uc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlc1wiO1xuQGltcG9ydCBcInRoZW1lc1wiO1xuQGltcG9ydCBcIm1peGluc1wiO1xuQGltcG9ydCBcInJvb3RcIjtcbkBpbXBvcnQgXCJhcHBcIjtcbkBpbXBvcnQgXCJyZWJvb3RcIjtcblxuLy8gVmVuZG9yc1xuQGltcG9ydCBcInZlbmRvcnNcIjtcblxuLy8gQ29tcG9uZW50c1xuQGltcG9ydCBcImFsZXJ0XCI7XG5AaW1wb3J0IFwiYXZhdGFyc1wiO1xuQGltcG9ydCBcImJhZGdlXCI7XG5AaW1wb3J0IFwiYnJlYWRjcnVtYi1tZW51XCI7XG5AaW1wb3J0IFwiYnJlYWRjcnVtYlwiO1xuQGltcG9ydCBcImJ1dHRvbi1ncm91cFwiO1xuQGltcG9ydCBcImJ1dHRvbnNcIjtcbkBpbXBvcnQgXCJjYWxsb3V0XCI7XG5AaW1wb3J0IFwiY2FyZFwiO1xuQGltcG9ydCBcImNhcm91c2VsXCI7XG5AaW1wb3J0IFwiY2hhcnRzXCI7XG5AaW1wb3J0IFwiY2xvc2VcIjtcbkBpbXBvcnQgXCJjb2RlXCI7XG5AaW1wb3J0IFwiY3VzdG9tLWZvcm1zXCI7XG5AaW1wb3J0IFwiZHJvcGRvd25cIjtcbkBpbXBvcnQgXCJmb290ZXJcIjtcbkBpbXBvcnQgXCJmb3Jtc1wiO1xuQGltcG9ydCBcImdyaWRcIjtcbkBpbXBvcnQgXCJoZWFkZXJcIjtcbkBpbXBvcnQgXCJpY29uXCI7XG5AaW1wb3J0IFwiaW5wdXQtZ3JvdXBcIjtcbkBpbXBvcnQgXCJpbWFnZXNcIjtcbkBpbXBvcnQgXCJqdW1ib3Ryb25cIjtcbkBpbXBvcnQgXCJsaXN0LWdyb3VwXCI7XG5AaW1wb3J0IFwibWVkaWFcIjtcbkBpbXBvcnQgXCJtb2RhbFwiO1xuQGltcG9ydCBcIm5hdlwiO1xuQGltcG9ydCBcIm5hdmJhclwiO1xuQGltcG9ydCBcInBhZ2luYXRpb25cIjtcbkBpbXBvcnQgXCJwb3BvdmVyXCI7XG5AaW1wb3J0IFwicHJvZ3Jlc3NcIjtcbkBpbXBvcnQgXCJwcm9ncmVzcy1ncm91cFwiO1xuQGltcG9ydCBcInNpZGViYXJcIjtcbkBpbXBvcnQgXCJzcGlubmVyc1wiO1xuQGltcG9ydCBcInN1YmhlYWRlclwiO1xuQGltcG9ydCBcInN3aXRjaGVzXCI7XG5AaW1wb3J0IFwidGFibGVzXCI7XG5AaW1wb3J0IFwidG9hc3RzXCI7XG5AaW1wb3J0IFwidG9vbHRpcFwiO1xuQGltcG9ydCBcInRyYW5zaXRpb25zXCI7XG5AaW1wb3J0IFwidHlwZVwiO1xuQGltcG9ydCBcIndpZGdldHNcIjtcblxuLy8gUFJPIENvbXBvbmVudHNcbkBpbXBvcnQgXCJsb2FkaW5nLWJ1dHRvblwiO1xuQGltcG9ydCBcIm11bHRpLXNlbGVjdFwiO1xuXG4vLyBMYXlvdXQgT3B0aW9uc1xuQGltcG9ydCBcImxheW91dHNcIjtcblxuLy8gVXRpbGl0eSBjbGFzc2VzXG5AaW1wb3J0IFwidXRpbGl0aWVzXCI7XG5cbi8vIFJpZ2h0LXRvLWxlZnRcbkBpbXBvcnQgXCJydGxcIjtcblxuLy8gQXBwc1xuQGltcG9ydCBcImFwcHNcIjtcblxuLy8gQ3VzdG9tIFByb3BlcnRpZXMgc3VwcG9ydCBmb3IgSW50ZXJuZXQgRXhwbG9yZXJcbkBpbXBvcnQgXCJpZS1jdXN0b20tcHJvcGVydGllc1wiO1xuXG5AaW1wb3J0IFwicHJpbnRcIjtcbi8vIHNjc3MtZG9jcy1lbmQgaW1wb3J0LXN0YWNrXG4iLCI6cm9vdCB7XG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAgIC0tI3skY29sb3J9LWxlZ2FjeS10aGVtZTogI3skdmFsdWV9O1xuICB9XG59XG4iLCI6cm9vdCB7XG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnNfX2R0IHtcbiAgICAtLSN7JGNvbG9yfS1kYXJrLXRoZW1lOiAjeyR2YWx1ZX07XG4gIH1cbn1cbiIsIjpyb290IHtcbiAgLy8gQ3VzdG9tIHZhcmlhYmxlIHZhbHVlcyBvbmx5IHN1cHBvcnQgU2Fzc1NjcmlwdCBpbnNpZGUgYCN7fWAuXG4gIC8vIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICRjb2xvcnMge1xuICAvLyAgIC0tI3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIC8vIH1cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgICAtLSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGJwLCAkdmFsdWUgaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgIC0tYnJlYWtwb2ludC0jeyRicH06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIC8vIFVzZSBgaW5zcGVjdGAgZm9yIGxpc3RzIHNvIHRoYXQgcXVvdGVkIGl0ZW1zIGtlZXAgdGhlIHF1b3Rlcy5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL3Nhc3MvaXNzdWVzLzIzODMjaXNzdWVjb21tZW50LTMzNjM0OTE3MlxuICAtLWZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktc2Fucy1zZXJpZil9O1xuICAtLWZvbnQtZmFtaWx5LW1vbm9zcGFjZTogI3tpbnNwZWN0KCRmb250LWZhbWlseS1tb25vc3BhY2UpfTtcbn1cbiIsIi5jLWFwcCB7XG4gIEBpbmNsdWRlIHRoZW1lLXZhcmlhbnQodHJ1ZSkge1xuICAgIC0tI3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cbiAgQGluY2x1ZGUgdGhlbWVzKCRib2R5LXRoZW1lLW1hcCwgJGNyZWF0ZTogYXBwZW5kKSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJib2R5LWNvbG9yXCIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJib2R5LWJnXCIpO1xuXG4gICAgLS1jb2xvcjogI3t0aGVtZXMtZ2V0LXZhbHVlKFwiYm9keS1jb2xvclwiKX07XG4gICAgLS1lbGV2YXRpb24tYmFzZS1jb2xvcjogI3t0aGVtZXMtZ2V0LXZhbHVlKFwiZWxldmF0aW9uLWJhc2UtY29sb3JcIil9O1xuICB9XG59XG4iLCJAY2hhcnNldCAnVVRGLTgnO1xuLy8gV2hlbiBjcmVhdGluZyBhIHRoZW1lJ3MgY2xhc3MsIHNjcmlwdCB3aWxsIHVzZSB0aGlzIHBvc3RmaXguXG4vL1xuLy8gQHR5cGUgU3RyaW5nXG4kdGhlbWVzLWRlZmF1bHQtcG9zdC1jbGFzczogXCItdGhlbWVcIiAhZGVmYXVsdDtcblxuLy8gQHR5cGUgU3RyaW5nXG4kY3VycmVudC12YXJpYW50OiBcIlwiICFkZWZhdWx0O1xuXG4vLy8gQ3VycmVudCBfbWFwXyBkdXJpbmcgdGhlIGxvb3AuIENhbiBiZSB1c2VkIGluIGN1c3RvbSBjcmVhdGlvbi5cbi8vL1xuLy8gQHR5cGUgTWFwXG4kdGhlbWVzLW1hcDogXCJcIiAhZGVmYXVsdDtcblxuLy8gQHR5cGUgQm9vbGVhblxuJHRoZW1lLWhhcy12YXJpYW50czogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIEdldHMgYSB2YWx1ZSBmcm9tIGEgdGhlbWUtbGlrZSBtYXAgdXNpbmcgdGhlIGN1cnJlbnQgZW50aXR5IGFuZCBtYXAgd2l0aGluZyB0aGUgdGhlbWUgc2NvcGUuXG4vL1xuLy8gQHBhcmFtIHtTdHJpbmd9ICRrZXkgLSBOYW1lIG9mIHRoZSB2YXJpYWJsZSB5b3Ugd2FudCB0byBnZXRcbi8vIEBwYXJhbSB7U3RyaW5nfSAkZW50aXR5IC0gTmFtZSBvZiB0aGUgZW50aXR5IHlvdSB3YW50IHRvIGFjY2Vzc1xuLy9cbi8vIEBleGFtcGxlIHNjc3Ncbi8vICAgdGhlbWUtZ2V0KCdjb2xvci1wcmltYXJ5JywgdXNlcik7XG4vLyAgIC8vIC0+ICMzMzNcbi8vXG4vLyBAcmV0dXJucyB7U3RyaW5nfSBWYWx1ZSBvZiBrZXkgZm9yIHRoYXQgZW50aXR5XG5AZnVuY3Rpb24gdGhlbWVzLWdldC12YWx1ZSgka2V5LCAkdGhlbWU6ICRjdXJyZW50LXRoZW1lLCAkdmFyaWFudDogJGN1cnJlbnQtdmFyaWFudCwgJG1hcDogJHRoZW1lcy1tYXApIHtcblxuICAkY3VycmVudC10aGVtZS1tYXA6IG1hcC1nZXQoJG1hcCwgJHRoZW1lKTtcblxuICAvLyBAaWYgbm90ICRlbnRpdHktbWFwIHtcbiAgLy8gICBAZXJyb3IgJ1RoZXJlIGlzIG5vIGAjeyRlbnRpdHl9YCBlbnRpdHkgaW4geW91ciB2YXJpYXRpb25zIGxpc3QuJztcbiAgLy8gfVxuXG4gIEBpZiAkdGhlbWUtaGFzLXZhcmlhbnRzIHtcbiAgICAkY3VycmVudC12YXJpYW50LW1hcDogbWFwLWdldChtYXAtZ2V0KCRjdXJyZW50LXRoZW1lLW1hcCwgXCJtYXBcIiksICR2YXJpYW50KTtcbiAgICAkdmFsdWU6IG1hcC1nZXQoJGN1cnJlbnQtdmFyaWFudC1tYXAsICRrZXkpO1xuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9IEBlbHNlIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGN1cnJlbnQtdGhlbWUtbWFwLCAka2V5KSB7XG4gICAgICAkdmFsdWU6IG1hcC1nZXQoJGN1cnJlbnQtdGhlbWUtbWFwLCAka2V5KTtcbiAgICAgIEByZXR1cm4gJHZhbHVlO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJHZhbHVlOiBtYXAtZ2V0KG1hcC1nZXQoJG1hcCwgJGRlZmF1bHQtdGhlbWUpLCAka2V5KTtcbiAgICAgIEByZXR1cm4gJHZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIC8vVE9ETzogZmluZCBzb2x1dGlvbiB3aGVuICRrZXkgaXMgYG51bGxgXG4gIC8vIEBpZiBub3QgJHJldCB7XG4gIC8vICAgQHdhcm4gJ1RoZSBlbnRpdHkgYCN7JGVudGl0eX1gIGRvZXNuXFwndCBoYXZlIGEgdmFsdWUgZm9yIGAjeyRrZXl9YC4nO1xuICAvLyB9XG59XG5cbkBmdW5jdGlvbiBkZWZhdWx0LXRoZW1lKCkge1xuICBAZWFjaCAka2V5IGluIG1hcC1rZXlzKCRkZWZhdWx0LXRoZW1lcykge1xuICAgIC8vIENoZWNrIGlmIHRoZSB0aGVtZSBpcyBkZWZhdWx0XG4gICAgQGlmIG1hcC1nZXQobWFwLWdldCgkZGVmYXVsdC10aGVtZXMsICRrZXkpLCBcImRlZmF1bHRcIikgPT0gdHJ1ZSB7XG4gICAgICBAcmV0dXJuICRrZXk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBwcm9wZXJ0eSgkcHJvcGVydHksICRrZXksICR0aGVtZTogJGN1cnJlbnQtdGhlbWUsICR2YXJpYW50OiAkY3VycmVudC12YXJpYW50LCAkbWFwOiAkdGhlbWVzLW1hcCkge1xuICAkY3VycmVudC10aGVtZS1tYXA6IG1hcC1nZXQoJG1hcCwgJHRoZW1lKTtcblxuICBAaWYgJHRoZW1lLWhhcy12YXJpYW50cyB7XG4gICAgJGN1cnJlbnQtdmFyaWFudC1tYXA6IG1hcC1nZXQobWFwLWdldCgkY3VycmVudC10aGVtZS1tYXAsIFwibWFwXCIpLCAkdmFyaWFudCk7XG4gICAgJHZhbHVlOiBtYXAtZ2V0KCRjdXJyZW50LXZhcmlhbnQtbWFwLCAka2V5KTtcblxuICAgIC8vIEByZXR1cm4gJHZhbHVlO1xuICAgICN7JHByb3BlcnR5fTogJHZhbHVlO1xuICB9IEBlbHNlIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGN1cnJlbnQtdGhlbWUtbWFwLCAka2V5KSB7XG4gICAgICAkdmFsdWU6IG1hcC1nZXQoJGN1cnJlbnQtdGhlbWUtbWFwLCAka2V5KTtcbiAgICAgIC8vIEByZXR1cm4gJHZhbHVlO1xuICAgICAgI3skcHJvcGVydHl9OiAkdmFsdWU7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkdmFsdWU6IG1hcC1nZXQobWFwLWdldCgkbWFwLCAkZGVmYXVsdC10aGVtZSksICRrZXkpO1xuICAgICAgLy8gQHJldHVybiAkdmFsdWU7XG4gICAgICAjeyRwcm9wZXJ0eX06ICR2YWx1ZTtcbiAgICB9XG4gIH1cbn1cblxuQGZ1bmN0aW9uIHRoZW1lcy1nZXQtb3B0aW9uKCRrZXksICRmYWxsYmFjazogbnVsbCwgJHRoZW1lOiAkY3VycmVudC10aGVtZSwgJHZhcmlhbnQ6ICRjdXJyZW50LXZhcmlhbnQsICRtYXA6ICR0aGVtZXMtbWFwKSB7XG5cbiAgJGN1cnJlbnQtdGhlbWUtbWFwOiBtYXAtZ2V0KCRtYXAsICR0aGVtZSk7XG5cbiAgQGlmIG1hcC1oYXMta2V5KCRjdXJyZW50LXRoZW1lLW1hcCwgJGtleSkge1xuICAgICR2YWx1ZTogbWFwLWdldCgkY3VycmVudC10aGVtZS1tYXAsICRrZXkpO1xuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuICRmYWxsYmFjaztcbiAgfVxufVxuXG5AbWl4aW4gdGhlbWVzLWFwcGVuZC12YXJpYWJsZXMoJHRoZW1lKSB7XG4gIC8vIFVwZGF0ZSBnbG9iYWwgdmFyaWFibGVzXG4gICRjdXJyZW50LXRoZW1lOiAkdGhlbWUgIWdsb2JhbDtcbiAgQGlmICRjdXJyZW50LXRoZW1lID09IFwiZGFya1wiIGFuZCAkZW5hYmxlLXByZWZlcnMtY29sb3Itc2NoZW1lIHtcbiAgICBAbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiB0aGVtZXMtY3JlYXRlLXBhcmVudCgkdGhlbWUsICR2YXJpYW50KSB7XG4gIC8vIFVwZGF0ZSBnbG9iYWwgdmFyaWFibGVzXG4gICRjdXJyZW50LXRoZW1lOiAkdGhlbWUgIWdsb2JhbDtcbiAgJGN1cnJlbnQtdmFyaWFudDogJHZhcmlhbnQgIWdsb2JhbDtcblxuICBAaWYgbWFwLWdldChtYXAtZ2V0KCRkZWZhdWx0LXRoZW1lcywgJGN1cnJlbnQtdGhlbWUpLCBcImRlZmF1bHRcIikge1xuICAgIEBhdC1yb290e1xuICAgICAgQGlmICR2YXJpYW50ID09ICRkZWZhdWx0LXZhcmlhbnQge1xuICAgICAgICAjeyRwYXJlbnQtZWxlbWVudH0ge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgI3skcGFyZW50LWVsZW1lbnR9I3skcGFyZW50LWVsZW1lbnR9LSN7JHZhcmlhbnR9IHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGF0LXJvb3R7XG4gICAgICBAaWYgJHZhcmlhbnQgPT0gJGRlZmF1bHQtdmFyaWFudCB7XG4gICAgICAgIEBpZiAkY3VycmVudC10aGVtZSA9PSBcImRhcmtcIiBhbmQgJGVuYWJsZS1wcmVmZXJzLWNvbG9yLXNjaGVtZSB7XG4gICAgICAgICAgQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xuICAgICAgICAgICAgI3skcGFyZW50LWVsZW1lbnR9IHtcbiAgICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAuYy0jeyR0aGVtZX0jeyR0aGVtZXMtZGVmYXVsdC1wb3N0LWNsYXNzfSAjeyRwYXJlbnQtZWxlbWVudH0ge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgQGlmICRjdXJyZW50LXRoZW1lID09IFwiZGFya1wiIGFuZCAkZW5hYmxlLXByZWZlcnMtY29sb3Itc2NoZW1lIHtcbiAgICAgICAgICBAbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gICAgICAgICAgICAjeyRwYXJlbnQtZWxlbWVudH0jeyRwYXJlbnQtZWxlbWVudH0tI3skdmFyaWFudH0ge1xuICAgICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgIC5jLSN7JHRoZW1lfSN7JHRoZW1lcy1kZWZhdWx0LXBvc3QtY2xhc3N9ICN7JHBhcmVudC1lbGVtZW50fSN7JHBhcmVudC1lbGVtZW50fS0jeyR2YXJpYW50fSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHRoZW1lLXNpbmdsZS1hcHBlbmQoJHRoZW1lKSB7XG4gIC8vIFVwZGF0ZSBnbG9iYWwgdmFyaWFibGVzXG4gICRjdXJyZW50LXRoZW1lOiAkdGhlbWUgIWdsb2JhbDtcblxuICBAaWYgbm90ICYge1xuICAgIEBlcnJvciBcIk5vIHNlbGVjdG9yIGZvdW5kLiBJIG5lZWQgYSBzZWxlY3RvciB0byBhcHBlbmQgdGhlIGNsYXNzIHRvLlwiO1xuICB9XG5cbiAgQGlmICRjdXJyZW50LXRoZW1lID09IFwiZGFya1wiIGFuZCAkZW5hYmxlLXByZWZlcnMtY29sb3Itc2NoZW1lIHtcbiAgICBAbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgICYuYy0jeyR0aGVtZX0jeyR0aGVtZXMtZGVmYXVsdC1wb3N0LWNsYXNzfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHRoZW1lcy1zaW5nbGUtcGFyZW50KCR0aGVtZSkge1xuICAvLyBVcGRhdGUgZ2xvYmFsIHZhcmlhYmxlc1xuICAkY3VycmVudC10aGVtZTogJHRoZW1lICFnbG9iYWw7XG5cbiAgQGF0LXJvb3R7XG4gICAgQGlmICRjdXJyZW50LXRoZW1lID09IFwiZGFya1wiIGFuZCAkZW5hYmxlLXByZWZlcnMtY29sb3Itc2NoZW1lIHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHtcbiAgICAgICAgQGlmICYge1xuICAgICAgICAgICYge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgQGlmICYge1xuICAgICAgICAuYy0jeyR0aGVtZX0jeyR0aGVtZXMtZGVmYXVsdC1wb3N0LWNsYXNzfSAmIHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC5jLSN7JHRoZW1lfSN7JHRoZW1lcy1kZWZhdWx0LXBvc3QtY2xhc3N9IHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gdGhlbWVzKCRsb29wOiAkdGhlbWVzLW1hcCwgJHBhcmVudDogZmFsc2UsICRjcmVhdGU6IGZhbHNlKSB7XG4gICR0aGVtZXMtbWFwOiAkbG9vcCAhZ2xvYmFsO1xuICAkcGFyZW50LWVsZW1lbnQ6ICRwYXJlbnQgIWdsb2JhbDtcbiAgJGRlZmF1bHQtdGhlbWU6IG51bGwgIWdsb2JhbDtcblxuICBAZWFjaCAka2V5IGluIG1hcC1rZXlzKCRkZWZhdWx0LXRoZW1lcykge1xuXG4gICAgLy8gQ2hlY2sgaWYgdGhlIHRoZW1lIGlzIGRlZmF1bHRcbiAgICBAaWYgbWFwLWdldChtYXAtZ2V0KCRkZWZhdWx0LXRoZW1lcywgJGtleSksIFwiZGVmYXVsdFwiKSA9PSB0cnVlIHtcbiAgICAgICRkZWZhdWx0LXRoZW1lOiAka2V5ICFnbG9iYWw7XG4gICAgfVxuICB9XG5cbiAgLy8gR2V0IGxpc3Qgb2YgdGhlbWVzXG4gICR0aGVtZXM6IG1hcC1rZXlzKCR0aGVtZXMtbWFwKTtcblxuICBAZWFjaCAkdGhlbWUgaW4gJHRoZW1lcyB7XG4gICAgJGN1cnJlbnQtdGhlbWU6ICR0aGVtZSAhZ2xvYmFsO1xuXG4gICAgQGlmIG1hcC1oYXMta2V5KCRkZWZhdWx0LXRoZW1lcywgJHRoZW1lKSB7XG4gICAgICAkdGhlbWUtbWFwOiBtYXAtZ2V0KCR0aGVtZXMtbWFwLCAkdGhlbWUpO1xuICAgICAgLy8gQ2hlY2sgaWYgJHRoZW1lLW1hcCBoYXMgdmFyaWFudHNcbiAgICAgIEBpZiBtYXAtaGFzLWtleSgkdGhlbWUtbWFwLCBcIm1hcFwiKSB7XG4gICAgICAgICR0aGVtZS1oYXMtdmFyaWFudHM6IHRydWUgIWdsb2JhbDtcbiAgICAgICAgLy8gR2V0IGxpc3Qgb2YgdmFyaWFudHNcbiAgICAgICAgJHZhcmlhbnRzOiBtYXAta2V5cyhtYXAtZ2V0KCR0aGVtZS1tYXAsIFwibWFwXCIpKTtcbiAgICAgICAgJGRlZmF1bHQtdmFyaWFudDogbWFwLWdldCgkdGhlbWUtbWFwLCBcImRlZmF1bHRcIikgIWdsb2JhbDtcbiAgICAgICAgQGVhY2ggJHZhcmlhbnQgaW4gJHZhcmlhbnRzIHtcbiAgICAgICAgICBAaW5jbHVkZSB0aGVtZXMtY3JlYXRlLXBhcmVudCgkdGhlbWUsICR2YXJpYW50KSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkdGhlbWUtaGFzLXZhcmlhbnRzOiBmYWxzZSAhZ2xvYmFsO1xuICAgICAgICBAaWYgbWFwLWdldChtYXAtZ2V0KCRkZWZhdWx0LXRoZW1lcywgJHRoZW1lKSwgXCJkZWZhdWx0XCIpIHtcbiAgICAgICAgICBAaW5jbHVkZSB0aGVtZXMtYXBwZW5kLXZhcmlhYmxlcygkdGhlbWUpIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgQGlmICRjcmVhdGUgPT0gXCJwYXJlbnRcIiB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0aGVtZXMtc2luZ2xlLXBhcmVudCgkdGhlbWUpIHtcbiAgICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSBAZWxzZSBpZiAkY3JlYXRlID09IFwiYXBwZW5kXCIge1xuICAgICAgICAgICAgQGluY2x1ZGUgdGhlbWUtc2luZ2xlLWFwcGVuZCgkdGhlbWUpIHtcbiAgICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0aGVtZXMtc2luZ2xlLXBhcmVudCgkdGhlbWUpIHtcbiAgICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiB0aGVtZS12YXJpYW50KCRleHRlbmQtY2xhc3M6IGZhbHNlKSB7XG4gIEBlYWNoICR0aGVtZSBpbiBtYXAta2V5cygkZGVmYXVsdC10aGVtZXMpIHtcbiAgICAkZ2V0LWNvbG9yczogbWFwLWdldChtYXAtZ2V0KCRkZWZhdWx0LXRoZW1lcywgJHRoZW1lKSwgXCJ0aGVtZS1jb2xvcnNcIik7XG4gICAgJGdldC1kZWZhdWx0OiBtYXAtZ2V0KG1hcC1nZXQoJGRlZmF1bHQtdGhlbWVzLCAkdGhlbWUpLCBcImRlZmF1bHRcIik7XG4gICAgJGdldC1ncmF5czogbWFwLWdldChtYXAtZ2V0KCRkZWZhdWx0LXRoZW1lcywgJHRoZW1lKSwgXCJncmF5c1wiKTtcbiAgICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkZ2V0LWNvbG9ycyB7XG4gICAgICAkY29sb3I6ICRjb2xvciAhZ2xvYmFsO1xuICAgICAgJHZhbHVlOiAkdmFsdWUgIWdsb2JhbDtcbiAgICAgIEBpZiAkZ2V0LWRlZmF1bHQge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkZGVmYXVsdC1jb2xvcjogbWFwLWdldChtYXAtZ2V0KG1hcC1nZXQoJGRlZmF1bHQtdGhlbWVzLCBkZWZhdWx0LXRoZW1lKCkpLCBcInRoZW1lLWNvbG9yc1wiKSwgJGNvbG9yKTtcbiAgICAgICAgQGlmICRkZWZhdWx0LWNvbG9yICE9ICR2YWx1ZSB7XG4gICAgICAgICAgQGlmICRleHRlbmQtY2xhc3Mge1xuICAgICAgICAgICAgJi5jLSN7JHRoZW1lfSN7JHRoZW1lLXN1ZmZpeH0ge1xuICAgICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgIEBhdC1yb290e1xuICAgICAgICAgICAgICAuYy0jeyR0aGVtZX0jeyR0aGVtZS1zdWZmaXh9IHtcbiAgICAgICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gdGhlbWUtZ3JhZGllbnRzKCkge1xuICBAZWFjaCAkdGhlbWUgaW4gbWFwLWtleXMoJGRlZmF1bHQtdGhlbWVzKSB7XG4gICAgJGdldC1kZWZhdWx0OiBtYXAtZ2V0KG1hcC1nZXQoJGRlZmF1bHQtdGhlbWVzLCAkdGhlbWUpLCBcImRlZmF1bHRcIik7XG4gICAgJGdldC1ncmFkaWVudHM6IG1hcC1nZXQobWFwLWdldCgkZGVmYXVsdC10aGVtZXMsICR0aGVtZSksIFwiZ3JhZGllbnRzXCIpO1xuICAgIEBlYWNoICRncmFkaWVudCwgJHZhbHVlIGluICRnZXQtZ3JhZGllbnRzIHtcbiAgICAgICRncmFkaWVudDogJGdyYWRpZW50ICFnbG9iYWw7XG4gICAgICAkdmFsdWU6ICR2YWx1ZSAhZ2xvYmFsO1xuICAgICAgQGlmICRnZXQtZGVmYXVsdCB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICRkZWZhdWx0LWdyYWRpZW50OiBtYXAtZ2V0KG1hcC1nZXQobWFwLWdldCgkZGVmYXVsdC10aGVtZXMsIGRlZmF1bHQtdGhlbWUoKSksIFwiZ3JhZGllbnRzXCIpLCAkZ3JhZGllbnQpO1xuICAgICAgICBAaWYgJGRlZmF1bHQtZ3JhZGllbnQgIT0gJHZhbHVlIHtcbiAgICAgICAgICBAYXQtcm9vdHtcbiAgICAgICAgICAgIC5jLSN7JHRoZW1lfSN7JHRoZW1lLXN1ZmZpeH0ge1xuICAgICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHRoZW1lLWdldC1jb2xvcigkY29sb3IpIHtcbiAgQGVhY2ggJHRoZW1lIGluIG1hcC1rZXlzKCRkZWZhdWx0LXRoZW1lcykge1xuICAgICRnZXQtY29sb3I6IG1hcC1nZXQobWFwLWdldChtYXAtZ2V0KCRkZWZhdWx0LXRoZW1lcywgJHRoZW1lKSwgXCJ0aGVtZS1jb2xvcnNcIiksICRjb2xvcik7XG4gICAgJGdldC1kZWZhdWx0OiBtYXAtZ2V0KG1hcC1nZXQoJGRlZmF1bHQtdGhlbWVzLCAkdGhlbWUpLCBcImRlZmF1bHRcIik7XG4gICAgJGNvbG9yOiAkZ2V0LWNvbG9yICFnbG9iYWw7XG4gICAgQGlmICRnZXQtZGVmYXVsdCB7XG4gICAgICBAY29udGVudDtcbiAgICB9IEBlbHNlIHtcbiAgICAgIEBhdC1yb290e1xuICAgICAgICAuYy0jeyR0aGVtZX0jeyR0aGVtZS1zdWZmaXh9ICYge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBhdC1ydWxlLW5vLXZlbmRvci1wcmVmaXgsIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlLCBwcm9wZXJ0eS1uby12ZW5kb3ItcHJlZml4XG5cbi8vIFJlYm9vdFxuLy9cbi8vIE5vcm1hbGl6YXRpb24gb2YgSFRNTCBlbGVtZW50cywgbWFudWFsbHkgZm9ya2VkIGZyb20gTm9ybWFsaXplLmNzcyB0byByZW1vdmVcbi8vIHN0eWxlcyB0YXJnZXRpbmcgaXJyZWxldmFudCBicm93c2VycyB3aGlsZSBhcHBseWluZyBuZXcgc3R5bGVzLlxuLy9cbi8vIE5vcm1hbGl6ZSBpcyBsaWNlbnNlZCBNSVQuIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3NcblxuXG4vLyBEb2N1bWVudFxuLy9cbi8vIDEuIENoYW5nZSBmcm9tIGBib3gtc2l6aW5nOiBjb250ZW50LWJveGAgc28gdGhhdCBgd2lkdGhgIGlzIG5vdCBhZmZlY3RlZCBieSBgcGFkZGluZ2Agb3IgYGJvcmRlcmAuXG4vLyAyLiBDaGFuZ2UgdGhlIGRlZmF1bHQgZm9udCBmYW1pbHkgaW4gYWxsIGJyb3dzZXJzLlxuLy8gMy4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuLy8gNC4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBJRSBvbiBXaW5kb3dzIFBob25lIGFuZCBpbiBpT1MuXG4vLyA1LiBDaGFuZ2UgdGhlIGRlZmF1bHQgdGFwIGhpZ2hsaWdodCB0byBiZSBjb21wbGV0ZWx5IHRyYW5zcGFyZW50IGluIGlPUy5cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxufVxuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8vIDJcbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8vIDNcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyA0XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgkYmxhY2ssIDApOyAvLyA1XG59XG5cbi8vIFNoaW0gZm9yIFwibmV3XCIgSFRNTDUgc3RydWN0dXJhbCBlbGVtZW50cyB0byBkaXNwbGF5IGNvcnJlY3RseSAoSUUxMCwgb2xkZXIgYnJvd3NlcnMpXG4vLyBUT0RPOiByZW1vdmUgaW4gdjVcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXJcbmFydGljbGUsIGFzaWRlLCBmaWdjYXB0aW9uLCBmaWd1cmUsIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1haW4sIG5hdiwgc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vLyBCb2R5XG4vL1xuLy8gMS4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuLy8gMi4gQXMgYSBiZXN0IHByYWN0aWNlLCBhcHBseSBhIGRlZmF1bHQgYGJhY2tncm91bmQtY29sb3JgLlxuLy8gMy4gU2V0IGFuIGV4cGxpY2l0IGluaXRpYWwgdGV4dC1hbGlnbiB2YWx1ZSBzbyB0aGF0IHdlIGNhbiBsYXRlciB1c2Vcbi8vICAgIHRoZSBgaW5oZXJpdGAgdmFsdWUgb24gdGhpbmdzIGxpa2UgYDx0aD5gIGVsZW1lbnRzLlxuLy8gNC4gRGlzYWJsZSBob3Jpem9udGFsIHNjcm9sbGluZ1xuXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyAvLyAxXG4gIC8vIFRPRE86IGZpbmQgYSBiZXR0ZXIgc29sdXRpb24gdG8gYXZvaWQgaG9yaXpvbnRhbCBzY3JvbGwgaWYgYSBzaWRlYmFyIGRvZXNuJ3QgaGF2ZSBhIGZpeGVkIHBvc2l0aW9uLlxuICBvdmVyZmxvdy14OiBoaWRkZW47IC8vIDRcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1iYXNlKTtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1iYXNlO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIDNcbiAgQGluY2x1ZGUgdGhlbWVzKCRib2R5LXRoZW1lLW1hcCwgJGNyZWF0ZTogYXBwZW5kKSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJib2R5LWNvbG9yXCIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJib2R5LWJnXCIpOyAvLyAyXG4gIH1cbn1cblxuLy8gRnV0dXJlLXByb29mIHJ1bGU6IGluIGJyb3dzZXJzIHRoYXQgc3VwcG9ydCA6Zm9jdXMtdmlzaWJsZSwgc3VwcHJlc3MgdGhlIGZvY3VzIG91dGxpbmVcbi8vIG9uIGVsZW1lbnRzIHRoYXQgcHJvZ3JhbW1hdGljYWxseSByZWNlaXZlIGZvY3VzIGJ1dCB3b3VsZG4ndCBub3JtYWxseSBzaG93IGEgdmlzaWJsZVxuLy8gZm9jdXMgb3V0bGluZS4gSW4gZ2VuZXJhbCwgdGhpcyB3b3VsZCBtZWFuIHRoYXQgdGhlIG91dGxpbmUgaXMgb25seSBhcHBsaWVkIGlmIHRoZVxuLy8gaW50ZXJhY3Rpb24gdGhhdCBsZWQgdG8gdGhlIGVsZW1lbnQgcmVjZWl2aW5nIHByb2dyYW1tYXRpYyBmb2N1cyB3YXMgYSBrZXlib2FyZCBpbnRlcmFjdGlvbixcbi8vIG9yIHRoZSBicm93c2VyIGhhcyBzb21laG93IGRldGVybWluZWQgdGhhdCB0aGUgdXNlciBpcyBwcmltYXJpbHkgYSBrZXlib2FyZCB1c2VyIGFuZC9vclxuLy8gd2FudHMgZm9jdXMgb3V0bGluZXMgdG8gYWx3YXlzIGJlIHByZXNlbnRlZC5cbi8vXG4vLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQ1NTLzpmb2N1cy12aXNpYmxlXG4vLyBhbmQgaHR0cHM6Ly9kZXZlbG9wZXIucGFjaWVsbG9ncm91cC5jb20vYmxvZy8yMDE4LzAzL2ZvY3VzLXZpc2libGUtYW5kLWJhY2t3YXJkcy1jb21wYXRpYmlsaXR5L1xuW3RhYmluZGV4PVwiLTFcIl06Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7XG4gIG91dGxpbmU6IDAgIWltcG9ydGFudDtcbn1cblxuXG4vLyBDb250ZW50IGdyb3VwaW5nXG4vL1xuLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbi8vIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLyAxXG4gIGhlaWdodDogMDsgLy8gMVxuICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gMlxufVxuXG5cbi8vXG4vLyBUeXBvZ3JhcGh5XG4vL1xuXG4vLyBSZW1vdmUgdG9wIG1hcmdpbnMgZnJvbSBoZWFkaW5nc1xuLy9cbi8vIEJ5IGRlZmF1bHQsIGA8aDE+YC1gPGg2PmAgYWxsIHJlY2VpdmUgdG9wIGFuZCBib3R0b20gbWFyZ2lucy4gV2UgbnVrZSB0aGUgdG9wXG4vLyBtYXJnaW4gZm9yIGVhc2llciBjb250cm9sIHdpdGhpbiB0eXBlIHNjYWxlcyBhcyBpdCBhdm9pZHMgbWFyZ2luIGNvbGxhcHNpbmcuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJGhlYWRpbmdzLW1hcmdpbi1ib3R0b207XG59XG5cbi8vIFJlc2V0IG1hcmdpbnMgb24gcGFyYWdyYXBoc1xuLy9cbi8vIFNpbWlsYXJseSwgdGhlIHRvcCBtYXJnaW4gb24gYDxwPmBzIGdldCByZXNldC4gSG93ZXZlciwgd2UgYWxzbyByZXNldCB0aGVcbi8vIGJvdHRvbSBtYXJnaW4gdG8gdXNlIGByZW1gIHVuaXRzIGluc3RlYWQgb2YgYGVtYC5cbnAge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG59XG5cbi8vIEFiYnJldmlhdGlvbnNcbi8vXG4vLyAxLiBEdXBsaWNhdGUgYmVoYXZpb3IgdG8gdGhlIGRhdGEtKiBhdHRyaWJ1dGUgZm9yIG91ciB0b29sdGlwIHBsdWdpblxuLy8gMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbi8vIDMuIEFkZCBleHBsaWNpdCBjdXJzb3IgdG8gaW5kaWNhdGUgY2hhbmdlZCBiZWhhdmlvci5cbi8vIDQuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBGaXJlZm94IDM5LS5cbi8vIDUuIFByZXZlbnQgdGhlIHRleHQtZGVjb3JhdGlvbiB0byBiZSBza2lwcGVkLlxuXG5hYmJyW3RpdGxlXSxcbmFiYnJbZGF0YS1vcmlnaW5hbC10aXRsZV0geyAvLyAxXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvLyAyXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLy8gMlxuICBjdXJzb3I6IGhlbHA7IC8vIDNcbiAgYm9yZGVyLWJvdHRvbTogMDsgLy8gNFxuICB0ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IG5vbmU7IC8vIDVcbn1cblxuYWRkcmVzcyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbm9sLFxudWwsXG5kbCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbm9sIG9sLFxudWwgdWwsXG5vbCB1bCxcbnVsIG9sIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuZHQge1xuICBmb250LXdlaWdodDogJGR0LWZvbnQtd2VpZ2h0O1xufVxuXG5kZCB7XG4gIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICBAaW5jbHVkZSBsdHIge1xuICAgIG1hcmdpbi1sZWZ0OiAwOyAvLyBVbmRvIGJyb3dzZXIgZGVmYXVsdFxuICB9XG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyAvLyBVbmRvIGJyb3dzZXIgZGVmYXVsdFxuICB9XG59XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkZXI7IC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmlcbn1cblxuc21hbGwge1xuICBAaW5jbHVkZSBmb250LXNpemUoODAlKTsgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnNcbn1cblxuLy9cbi8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuLy8gYWxsIGJyb3dzZXJzLlxuLy9cblxuc3ViLFxuc3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSBmb250LXNpemUoNzUlKTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHsgYm90dG9tOiAtLjI1ZW07IH1cbnN1cCB7IHRvcDogLS41ZW07IH1cblxuXG4vL1xuLy8gTGlua3Ncbi8vXG5cbmEge1xuICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gIEBpbmNsdWRlIHRoZW1lcygkbGluay10aGVtZS1tYXApIHtcbiAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImxpbmstY29sb3JcIik7XG4gIH1cblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gICAgQGluY2x1ZGUgdGhlbWVzKCRsaW5rLXRoZW1lLW1hcCkge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJsaW5rLWNvbG9yXCIpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBBbmQgdW5kbyB0aGVzZSBzdHlsZXMgZm9yIHBsYWNlaG9sZGVyIGxpbmtzL25hbWVkIGFuY2hvcnMgKHdpdGhvdXQgaHJlZikuXG4vLyBJdCB3b3VsZCBiZSBtb3JlIHN0cmFpZ2h0Zm9yd2FyZCB0byBqdXN0IHVzZSBhW2hyZWZdIGluIHByZXZpb3VzIGJsb2NrLCBidXQgdGhhdFxuLy8gY2F1c2VzIHNwZWNpZmljaXR5IGlzc3VlcyBpbiBtYW55IG90aGVyIHN0eWxlcyB0aGF0IGFyZSB0b28gY29tcGxleCB0byBmaXguXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTQwMlxuXG5hOm5vdChbaHJlZl0pIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuXG4vL1xuLy8gQ29kZVxuLy9cblxucHJlLFxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDFlbSk7IC8vIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbn1cblxucHJlIHtcbiAgLy8gUmVtb3ZlIGJyb3dzZXIgZGVmYXVsdCB0b3AgbWFyZ2luXG4gIG1hcmdpbi10b3A6IDA7XG4gIC8vIFJlc2V0IGJyb3dzZXIgZGVmYXVsdCBvZiBgMWVtYCB0byB1c2UgYHJlbWBzXG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIC8vIERvbid0IGFsbG93IGNvbnRlbnQgdG8gYnJlYWsgb3V0c2lkZVxuICBvdmVyZmxvdzogYXV0bztcbiAgLy8gRGlzYWJsZSBhdXRvLWhpZGluZyBzY3JvbGxiYXIgaW4gSUUgJiBsZWdhY3kgRWRnZSB0byBhdm9pZCBvdmVybGFwLFxuICAvLyBtYWtpbmcgaXQgaW1wb3NzaWJsZSB0byBpbnRlcmFjdCB3aXRoIHRoZSBjb250ZW50XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogc2Nyb2xsYmFyO1xufVxuXG5cbi8vXG4vLyBGaWd1cmVzXG4vL1xuXG5maWd1cmUge1xuICAvLyBBcHBseSBhIGNvbnNpc3RlbnQgbWFyZ2luIHN0cmF0ZWd5IChtYXRjaGVzIG91ciB0eXBlIHN0eWxlcykuXG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cblxuLy9cbi8vIEltYWdlcyBhbmQgY29udGVudFxuLy9cblxuaW1nIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYm9yZGVyLXN0eWxlOiBub25lOyAvLyBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbn1cblxuc3ZnIHtcbiAgLy8gV29ya2Fyb3VuZCBmb3IgdGhlIFNWRyBvdmVyZmxvdyBidWcgaW4gSUUxMC8xMSBpcyBzdGlsbCByZXF1aXJlZC5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjY4NzhcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuXG4vL1xuLy8gVGFibGVzXG4vL1xuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IC8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnNcbn1cblxuY2FwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICBwYWRkaW5nLWJvdHRvbTogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgY29sb3I6ICR0YWJsZS1jYXB0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjYXB0aW9uLXNpZGU6IGJvdHRvbTtcbn1cblxudGgge1xuICAvLyBNYXRjaGVzIGRlZmF1bHQgYDx0ZD5gIGFsaWdubWVudCBieSBpbmhlcml0aW5nIGZyb20gdGhlIGA8Ym9keT5gLCBvciB0aGVcbiAgLy8gY2xvc2VzdCBwYXJlbnQgd2l0aCBhIHNldCBgdGV4dC1hbGlnbmAuXG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XG59XG5cblxuLy9cbi8vIEZvcm1zXG4vL1xuXG5sYWJlbCB7XG4gIC8vIEFsbG93IGxhYmVscyB0byB1c2UgYG1hcmdpbmAgZm9yIHNwYWNpbmcuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogJGxhYmVsLW1hcmdpbi1ib3R0b207XG59XG5cbi8vIFJlbW92ZSB0aGUgZGVmYXVsdCBgYm9yZGVyLXJhZGl1c2AgdGhhdCBtYWNPUyBDaHJvbWUgYWRkcy5cbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQwOTNcbmJ1dHRvbiB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLy8gV29yayBhcm91bmQgYSBGaXJlZm94L0lFIGJ1ZyB3aGVyZSB0aGUgdHJhbnNwYXJlbnQgYGJ1dHRvbmAgYmFja2dyb3VuZFxuLy8gcmVzdWx0cyBpbiBhIGxvc3Mgb2YgdGhlIGRlZmF1bHQgYGJ1dHRvbmAgZm9jdXMgc3R5bGVzLlxuLy9cbi8vIENyZWRpdDogaHR0cHM6Ly9naXRodWIuY29tL3N1aXRjc3MvYmFzZS9cbmJ1dHRvbjpmb2N1cyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQ7XG4gIG91dGxpbmU6IDVweCBhdXRvIC13ZWJraXQtZm9jdXMtcmluZy1jb2xvcjtcbn1cblxuaW5wdXQsXG5idXR0b24sXG5zZWxlY3QsXG5vcHRncm91cCxcbnRleHRhcmVhIHtcbiAgbWFyZ2luOiAwOyAvLyBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmlcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbmJ1dHRvbixcbmlucHV0IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2Vcbn1cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IC8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveFxufVxuXG4vLyBTZXQgdGhlIGN1cnNvciBmb3Igbm9uLWA8YnV0dG9uPmAgYnV0dG9uc1xuLy9cbi8vIERldGFpbHMgYXQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMzA1NjJcbltyb2xlPVwiYnV0dG9uXCJdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4vLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHdvcmQtd3JhcCBpbiBTYWZhcmkuXG4vL1xuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0OTkwXG5zZWxlY3Qge1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbn1cblxuXG4vLyAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2Bcbi8vICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbi8vIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSwgLy8gMVxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcbn1cblxuLy8gT3BpbmlvbmF0ZWQ6IGFkZCBcImhhbmRcIiBjdXJzb3IgdG8gbm9uLWRpc2FibGVkIGJ1dHRvbiBlbGVtZW50cy5cbkBpZiAkZW5hYmxlLXBvaW50ZXItY3Vyc29yLWZvci1idXR0b25zIHtcbiAgYnV0dG9uLFxuICBbdHlwZT1cImJ1dHRvblwiXSxcbiAgW3R5cGU9XCJyZXNldFwiXSxcbiAgW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICY6bm90KDpkaXNhYmxlZCkge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxufVxuXG4vLyBSZW1vdmUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGZyb20gRmlyZWZveCwgYnV0IGRvbid0IHJlc3RvcmUgdGhlIG91dGxpbmUgbGlrZSBOb3JtYWxpemUuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtXG4gIHBhZGRpbmc6IDA7IC8vIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC1cbn1cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bzsgLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cbiAgLy8gVGV4dGFyZWFzIHNob3VsZCByZWFsbHkgb25seSByZXNpemUgdmVydGljYWxseSBzbyB0aGV5IGRvbid0IGJyZWFrIHRoZWlyIChob3Jpem9udGFsKSBjb250YWluZXJzLlxuICByZXNpemU6IHZlcnRpY2FsO1xufVxuXG5maWVsZHNldCB7XG4gIC8vIEJyb3dzZXJzIHNldCBhIGRlZmF1bHQgYG1pbi13aWR0aDogbWluLWNvbnRlbnQ7YCBvbiBmaWVsZHNldHMsXG4gIC8vIHVubGlrZSBlLmcuIGA8ZGl2PmBzLCB3aGljaCBoYXZlIGBtaW4td2lkdGg6IDA7YCBieSBkZWZhdWx0LlxuICAvLyBTbyB3ZSByZXNldCB0aGF0IHRvIGVuc3VyZSBmaWVsZHNldHMgYmVoYXZlIG1vcmUgbGlrZSBhIHN0YW5kYXJkIGJsb2NrIGVsZW1lbnQuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEyMzU5XG4gIC8vIGFuZCBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS8jdGhlLWZpZWxkc2V0LWFuZC1sZWdlbmQtZWxlbWVudHNcbiAgbWluLXdpZHRoOiAwO1xuICAvLyBSZXNldCB0aGUgZGVmYXVsdCBvdXRsaW5lIGJlaGF2aW9yIG9mIGZpZWxkc2V0cyBzbyB0aGV5IGRvbid0IGFmZmVjdCBwYWdlIGxheW91dC5cbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IDA7XG59XG5cbi8vIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4vLyAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG5sZWdlbmQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTsgLy8gMVxuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDEuNXJlbSk7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDsgLy8gMlxuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvLyAxXG59XG5cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvLyBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxufVxuXG4vLyBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC8vIFRoaXMgb3ZlcnJpZGVzIHRoZSBleHRyYSByb3VuZGVkIGNvcm5lcnMgb24gc2VhcmNoIGlucHV0cyBpbiBpT1Mgc28gdGhhdCBvdXJcbiAgLy8gYC5mb3JtLWNvbnRyb2xgIGNsYXNzIGNhbiBwcm9wZXJseSBzdHlsZSB0aGVtLiBOb3RlIHRoYXQgdGhpcyBjYW5ub3Qgc2ltcGx5XG4gIC8vIGJlIGFkZGVkIHRvIGAuZm9ybS1jb250cm9sYCBhcyBpdCdzIG5vdCBzcGVjaWZpYyBlbm91Z2guIEZvciBkZXRhaWxzLCBzZWVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTU4Ni5cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8vIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vXG4vLyBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4vL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy9cbi8vIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4vLyAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4vL1xuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgZm9udDogaW5oZXJpdDsgLy8gMlxuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMVxufVxuXG4vL1xuLy8gQ29ycmVjdCBlbGVtZW50IGRpc3BsYXlzXG4vL1xuXG5vdXRwdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07IC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vyc1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTsgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUVcbn1cblxuLy8gQWx3YXlzIGhpZGUgYW4gZWxlbWVudCB3aXRoIHRoZSBgaGlkZGVuYCBIVE1MIGF0dHJpYnV0ZSAoZnJvbSBQdXJlQ1NTKS5cbi8vIE5lZWRlZCBmb3IgcHJvcGVyIGRpc3BsYXkgaW4gSUUgMTAtLlxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4iLCIvLyBUeXBvZ3JhcGh5XG4vL1xuLy8gRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBcIk5vdG8gU2Fuc1wiLCBzYW5zLXNlcmlmLCBcIkFwcGxlIENvbG9yIEVtb2ppXCIsIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJTZWdvZSBVSSBTeW1ib2xcIiwgXCJOb3RvIENvbG9yIEVtb2ppXCIgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgIFNGTW9uby1SZWd1bGFyLCBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktYmFzZTogICAgICAgICRmb250LWZhbWlseS1zYW5zLXNlcmlmICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWVuYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcblxuJGZvbnQtc2l6ZS1iYXNlOiAgLjg3NXJlbSAhZGVmYXVsdDtcbiRmb250LXNpemUtbGc6ICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kZm9udC1zaXplLXNtOiAgICAkZm9udC1zaXplLWJhc2UgKiAuODc1ICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtbGlnaHRlcjogIGxpZ2h0ZXIgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbGlnaHQ6ICAgIDMwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ub3JtYWw6ICAgNDAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGQ6ICAgICA3MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZGVyOiAgIGJvbGRlciAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWJhc2U6ICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LWJhc2U6ICAxLjUgIWRlZmF1bHQ7XG5cbiRoMS1mb250LXNpemU6ICAkZm9udC1zaXplLWJhc2UgKiAyLjUgIWRlZmF1bHQ7XG4kaDItZm9udC1zaXplOiAgJGZvbnQtc2l6ZS1iYXNlICogMiAhZGVmYXVsdDtcbiRoMy1mb250LXNpemU6ICAkZm9udC1zaXplLWJhc2UgKiAxLjc1ICFkZWZhdWx0O1xuJGg0LWZvbnQtc2l6ZTogICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRoNS1mb250LXNpemU6ICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGg2LWZvbnQtc2l6ZTogICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcblxuJGhlYWRpbmdzLW1hcmdpbi1ib3R0b206ICAkc3BhY2VyIC8gMiAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgbnVsbCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgNTAwICFkZWZhdWx0O1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgICAxLjIgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS1zaXplOiAgNnJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5Mi1zaXplOiAgNS41cmVtICFkZWZhdWx0O1xuJGRpc3BsYXkzLXNpemU6ICA0LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTQtc2l6ZTogIDMuNXJlbSAhZGVmYXVsdDtcblxuJGRpc3BsYXkxLXdlaWdodDogICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTItd2VpZ2h0OiAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5My13ZWlnaHQ6ICAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXk0LXdlaWdodDogICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheS1saW5lLWhlaWdodDogICRoZWFkaW5ncy1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGxlYWQtZm9udC1zaXplOiAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGxlYWQtZm9udC13ZWlnaHQ6ICAzMDAgIWRlZmF1bHQ7XG5cbiRzbWFsbC1mb250LXNpemU6ICA4MCUgIWRlZmF1bHQ7XG5cbiR0ZXh0LW11dGVkOiAgJGdyYXktNzAwICFkZWZhdWx0O1xuXG4kYmxvY2txdW90ZS1zbWFsbC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1zbWFsbC1mb250LXNpemU6ICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcblxuJGhyLWJvcmRlci1jb2xvcjogIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kaHItYm9yZGVyLXdpZHRoOiAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJHZyLWJnOiAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiR2ci13aWR0aDogICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRtYXJrLXBhZGRpbmc6ICAuMmVtICFkZWZhdWx0O1xuXG4kZHQtZm9udC13ZWlnaHQ6ICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuJGtiZC1ib3gtc2hhZG93OiAgICAgICAgICBpbnNldCAwIC0uMXJlbSAwIHJnYmEoJGJsYWNrLCAuMjUpICFkZWZhdWx0O1xuJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ6ICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuJGxpc3QtaW5saW5lLXBhZGRpbmc6ICAuNXJlbSAhZGVmYXVsdDtcblxuJG1hcmstYmc6ICNmY2Y4ZTMgIWRlZmF1bHQ7XG5cbiRoci1tYXJnaW4teTogICRzcGFjZXIgIWRlZmF1bHQ7XG5cbi8vIFBhcmFncmFwaHNcbi8vXG4vLyBTdHlsZSBwIGVsZW1lbnQuXG5cbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogIDFyZW0gIWRlZmF1bHQ7XG5cbi8vIEljb25zXG4vL1xuLy8gU3R5bGUgLmMtaWNvbiBlbGVtZW50LlxuXG4kaWNvbi1zaXplLWJhc2U6ICAxcmVtICFkZWZhdWx0O1xuJGljb24tc2l6ZS1zbTogICAgJGljb24tc2l6ZS1iYXNlICogLjg3NSAhZGVmYXVsdDtcbiRpY29uLXNpemUtbGc6ICAgICRpY29uLXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kaWNvbi1zaXplLXhsOiAgICAkaWNvbi1zaXplLWJhc2UgKiAxLjUgIWRlZmF1bHQ7XG5cblxuJHR5cG9ncmFwaHktdGhlbWUtbWFwOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kdHlwb2dyYXBoeS10aGVtZS1tYXA6IG1hcC1tZXJnZShcbiAgKFxuICAgIGRlZmF1bHQ6IChcbiAgICAgIFwiaHItYm9yZGVyLWNvbG9yXCI6ICAkaHItYm9yZGVyLWNvbG9yLFxuICAgICAgXCJ2ci1iZ1wiOiAgICAgICAgICAgICR2ci1iZyxcbiAgICAgIFwidGV4dC1tdXRlZFwiOiAgICAgICAkdGV4dC1tdXRlZFxuICAgIClcbiAgKSxcbiAgJHR5cG9ncmFwaHktdGhlbWUtbWFwXG4pO1xuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktYmxhY2tsaXN0LCBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG5cbi8vIFNDU1MgUkZTIG1peGluXG4vL1xuLy8gQXV0b21hdGVkIGZvbnQtcmVzaXppbmdcbi8vXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvcmZzXG5cbi8vIENvbmZpZ3VyYXRpb25cblxuLy8gQmFzZSBmb250IHNpemVcbiRyZnMtYmFzZS1mb250LXNpemU6IDEuMjVyZW0gIWRlZmF1bHQ7XG4kcmZzLWZvbnQtc2l6ZS11bml0OiByZW0gIWRlZmF1bHQ7XG5cbi8vIEJyZWFrcG9pbnQgYXQgd2hlcmUgZm9udC1zaXplIHN0YXJ0cyBkZWNyZWFzaW5nIGlmIHNjcmVlbiB3aWR0aCBpcyBzbWFsbGVyXG4kcmZzLWJyZWFrcG9pbnQ6IDEyMDBweCAhZGVmYXVsdDtcbiRyZnMtYnJlYWtwb2ludC11bml0OiBweCAhZGVmYXVsdDtcblxuLy8gUmVzaXplIGZvbnQtc2l6ZSBiYXNlZCBvbiBzY3JlZW4gaGVpZ2h0IGFuZCB3aWR0aFxuJHJmcy10d28tZGltZW5zaW9uYWw6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBGYWN0b3Igb2YgZGVjcmVhc2VcbiRyZnMtZmFjdG9yOiAxMCAhZGVmYXVsdDtcblxuQGlmIHR5cGUtb2YoJHJmcy1mYWN0b3IpICE9IFwibnVtYmVyXCIgb3IgJHJmcy1mYWN0b3IgPD0gMSB7XG4gIEBlcnJvciBcImAjeyRyZnMtZmFjdG9yfWAgaXMgbm90IGEgdmFsaWQgICRyZnMtZmFjdG9yLCBpdCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiAxLlwiO1xufVxuXG4vLyBHZW5lcmF0ZSBlbmFibGUgb3IgZGlzYWJsZSBjbGFzc2VzLiBQb3NzaWJpbGl0aWVzOiBmYWxzZSwgXCJlbmFibGVcIiBvciBcImRpc2FibGVcIlxuJHJmcy1jbGFzczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIDEgcmVtID0gJHJmcy1yZW0tdmFsdWUgcHhcbiRyZnMtcmVtLXZhbHVlOiAxNiAhZGVmYXVsdDtcblxuLy8gU2FmYXJpIGlmcmFtZSByZXNpemUgYnVnOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvaXNzdWVzLzE0XG4kcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXg6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBEaXNhYmxlIFJGUyBieSBzZXR0aW5nICRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzIHRvIGZhbHNlXG4kZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gQ2FjaGUgJHJmcy1iYXNlLWZvbnQtc2l6ZSB1bml0XG4kcmZzLWJhc2UtZm9udC1zaXplLXVuaXQ6IHVuaXQoJHJmcy1iYXNlLWZvbnQtc2l6ZSk7XG5cbi8vIFJlbW92ZSBweC11bml0IGZyb20gJHJmcy1iYXNlLWZvbnQtc2l6ZSBmb3IgY2FsY3VsYXRpb25zXG5AaWYgJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0ID09IFwicHhcIiB7XG4gICRyZnMtYmFzZS1mb250LXNpemU6ICRyZnMtYmFzZS1mb250LXNpemUgLyAoJHJmcy1iYXNlLWZvbnQtc2l6ZSAqIDAgKyAxKTtcbn1cbkBlbHNlIGlmICRyZnMtYmFzZS1mb250LXNpemUtdW5pdCA9PSBcInJlbVwiIHtcbiAgJHJmcy1iYXNlLWZvbnQtc2l6ZTogJHJmcy1iYXNlLWZvbnQtc2l6ZSAvICgkcmZzLWJhc2UtZm9udC1zaXplICogMCArIDEgLyAkcmZzLXJlbS12YWx1ZSk7XG59XG5cbi8vIENhY2hlICRyZnMtYnJlYWtwb2ludCB1bml0IHRvIHByZXZlbnQgbXVsdGlwbGUgY2FsbHNcbiRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlOiB1bml0KCRyZnMtYnJlYWtwb2ludCk7XG5cbi8vIFJlbW92ZSB1bml0IGZyb20gJHJmcy1icmVha3BvaW50IGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcInB4XCIge1xuICAkcmZzLWJyZWFrcG9pbnQ6ICRyZnMtYnJlYWtwb2ludCAvICgkcmZzLWJyZWFrcG9pbnQgKiAwICsgMSk7XG59XG5AZWxzZSBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcInJlbVwiIG9yICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwiZW1cIiB7XG4gICRyZnMtYnJlYWtwb2ludDogJHJmcy1icmVha3BvaW50IC8gKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxIC8gJHJmcy1yZW0tdmFsdWUpO1xufVxuXG4vLyBSZXNwb25zaXZlIGZvbnQtc2l6ZSBtaXhpblxuQG1peGluIHJmcygkZnMsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIC8vIENhY2hlICRmcyB1bml0XG4gICRmcy11bml0OiBpZih0eXBlLW9mKCRmcykgPT0gXCJudW1iZXJcIiwgdW5pdCgkZnMpLCBmYWxzZSk7XG5cbiAgLy8gQWRkICFpbXBvcnRhbnQgc3VmZml4IGlmIG5lZWRlZFxuICAkcmZzLXN1ZmZpeDogaWYoJGltcG9ydGFudCwgXCIgIWltcG9ydGFudFwiLCBcIlwiKTtcblxuICAvLyBJZiAkZnMgaXNuJ3QgYSBudW1iZXIgKGxpa2UgaW5oZXJpdCkgb3IgJGZzIGhhcyBhIHVuaXQgKG5vdCBweCBvciByZW0sIGxpa2UgMS41ZW0pIG9yICQgaXMgMCwganVzdCBwcmludCB0aGUgdmFsdWVcbiAgQGlmIG5vdCAkZnMtdW5pdCBvciAkZnMtdW5pdCAhPSBcIlwiIGFuZCAkZnMtdW5pdCAhPSBcInB4XCIgYW5kICRmcy11bml0ICE9IFwicmVtXCIgb3IgJGZzID09IDAge1xuICAgIGZvbnQtc2l6ZTogI3skZnN9I3skcmZzLXN1ZmZpeH07XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIFZhcmlhYmxlcyBmb3Igc3RvcmluZyBzdGF0aWMgYW5kIGZsdWlkIHJlc2NhbGluZ1xuICAgICRyZnMtc3RhdGljOiBudWxsO1xuICAgICRyZnMtZmx1aWQ6IG51bGw7XG5cbiAgICAvLyBSZW1vdmUgcHgtdW5pdCBmcm9tICRmcyBmb3IgY2FsY3VsYXRpb25zXG4gICAgQGlmICRmcy11bml0ID09IFwicHhcIiB7XG4gICAgICAkZnM6ICRmcyAvICgkZnMgKiAwICsgMSk7XG4gICAgfVxuICAgIEBlbHNlIGlmICRmcy11bml0ID09IFwicmVtXCIge1xuICAgICAgJGZzOiAkZnMgLyAoJGZzICogMCArIDEgLyAkcmZzLXJlbS12YWx1ZSk7XG4gICAgfVxuXG4gICAgLy8gU2V0IGRlZmF1bHQgZm9udC1zaXplXG4gICAgQGlmICRyZnMtZm9udC1zaXplLXVuaXQgPT0gcmVtIHtcbiAgICAgICRyZnMtc3RhdGljOiAjeyRmcyAvICRyZnMtcmVtLXZhbHVlfXJlbSN7JHJmcy1zdWZmaXh9O1xuICAgIH1cbiAgICBAZWxzZSBpZiAkcmZzLWZvbnQtc2l6ZS11bml0ID09IHB4IHtcbiAgICAgICRyZnMtc3RhdGljOiAjeyRmc31weCN7JHJmcy1zdWZmaXh9O1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAZXJyb3IgXCJgI3skcmZzLWZvbnQtc2l6ZS11bml0fWAgaXMgbm90IGEgdmFsaWQgdW5pdCBmb3IgJHJmcy1mb250LXNpemUtdW5pdC4gVXNlIGBweGAgb3IgYHJlbWAuXCI7XG4gICAgfVxuXG4gICAgLy8gT25seSBhZGQgbWVkaWEgcXVlcnkgaWYgZm9udC1zaXplIGlzIGJpZ2dlciBhcyB0aGUgbWluaW11bSBmb250LXNpemVcbiAgICAvLyBJZiAkcmZzLWZhY3RvciA9PSAxLCBubyByZXNjYWxpbmcgd2lsbCB0YWtlIHBsYWNlXG4gICAgQGlmICRmcyA+ICRyZnMtYmFzZS1mb250LXNpemUgYW5kICRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzIHtcbiAgICAgICRtaW4td2lkdGg6IG51bGw7XG4gICAgICAkdmFyaWFibGUtdW5pdDogbnVsbDtcblxuICAgICAgLy8gQ2FsY3VsYXRlIG1pbmltdW0gZm9udC1zaXplIGZvciBnaXZlbiBmb250LXNpemVcbiAgICAgICRmcy1taW46ICRyZnMtYmFzZS1mb250LXNpemUgKyAoJGZzIC0gJHJmcy1iYXNlLWZvbnQtc2l6ZSkgLyAkcmZzLWZhY3RvcjtcblxuICAgICAgLy8gQ2FsY3VsYXRlIGRpZmZlcmVuY2UgYmV0d2VlbiBnaXZlbiBmb250LXNpemUgYW5kIG1pbmltdW0gZm9udC1zaXplIGZvciBnaXZlbiBmb250LXNpemVcbiAgICAgICRmcy1kaWZmOiAkZnMgLSAkZnMtbWluO1xuXG4gICAgICAvLyBCYXNlIGZvbnQtc2l6ZSBmb3JtYXR0aW5nXG4gICAgICAvLyBObyBuZWVkIHRvIGNoZWNrIGlmIHRoZSB1bml0IGlzIHZhbGlkLCBiZWNhdXNlIHdlIGRpZCB0aGF0IGJlZm9yZVxuICAgICAgJG1pbi13aWR0aDogaWYoJHJmcy1mb250LXNpemUtdW5pdCA9PSByZW0sICN7JGZzLW1pbiAvICRyZnMtcmVtLXZhbHVlfXJlbSwgI3skZnMtbWlufXB4KTtcblxuICAgICAgLy8gSWYgdHdvLWRpbWVuc2lvbmFsLCB1c2Ugc21hbGxlc3Qgb2Ygc2NyZWVuIHdpZHRoIGFuZCBoZWlnaHRcbiAgICAgICR2YXJpYWJsZS11bml0OiBpZigkcmZzLXR3by1kaW1lbnNpb25hbCwgdm1pbiwgdncpO1xuXG4gICAgICAvLyBDYWxjdWxhdGUgdGhlIHZhcmlhYmxlIHdpZHRoIGJldHdlZW4gMCBhbmQgJHJmcy1icmVha3BvaW50XG4gICAgICAkdmFyaWFibGUtd2lkdGg6ICN7JGZzLWRpZmYgKiAxMDAgLyAkcmZzLWJyZWFrcG9pbnR9I3skdmFyaWFibGUtdW5pdH07XG5cbiAgICAgIC8vIFNldCB0aGUgY2FsY3VsYXRlZCBmb250LXNpemUuXG4gICAgICAkcmZzLWZsdWlkOiBjYWxjKCN7JG1pbi13aWR0aH0gKyAjeyR2YXJpYWJsZS13aWR0aH0pICN7JHJmcy1zdWZmaXh9O1xuICAgIH1cblxuICAgIC8vIFJlbmRlcmluZ1xuICAgIEBpZiAkcmZzLWZsdWlkID09IG51bGwge1xuICAgICAgLy8gT25seSByZW5kZXIgc3RhdGljIGZvbnQtc2l6ZSBpZiBubyBmbHVpZCBmb250LXNpemUgaXMgYXZhaWxhYmxlXG4gICAgICBmb250LXNpemU6ICRyZnMtc3RhdGljO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkbXEtdmFsdWU6IG51bGw7XG5cbiAgICAgIC8vIFJGUyBicmVha3BvaW50IGZvcm1hdHRpbmdcbiAgICAgIEBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdCA9PSBlbSBvciAkcmZzLWJyZWFrcG9pbnQtdW5pdCA9PSByZW0ge1xuICAgICAgICAkbXEtdmFsdWU6ICN7JHJmcy1icmVha3BvaW50IC8gJHJmcy1yZW0tdmFsdWV9I3skcmZzLWJyZWFrcG9pbnQtdW5pdH07XG4gICAgICB9XG4gICAgICBAZWxzZSBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdCA9PSBweCB7XG4gICAgICAgICRtcS12YWx1ZTogI3skcmZzLWJyZWFrcG9pbnR9cHg7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEBlcnJvciBcImAjeyRyZnMtYnJlYWtwb2ludC11bml0fWAgaXMgbm90IGEgdmFsaWQgdW5pdCBmb3IgJHJmcy1icmVha3BvaW50LXVuaXQuIFVzZSBgcHhgLCBgZW1gIG9yIGByZW1gLlwiO1xuICAgICAgfVxuXG4gICAgICBAaWYgJHJmcy1jbGFzcyA9PSBcImRpc2FibGVcIiB7XG4gICAgICAgIC8vIEFkZGluZyBhbiBleHRyYSBjbGFzcyBpbmNyZWFzZXMgc3BlY2lmaWNpdHksXG4gICAgICAgIC8vIHdoaWNoIHByZXZlbnRzIHRoZSBtZWRpYSBxdWVyeSB0byBvdmVycmlkZSB0aGUgZm9udCBzaXplXG4gICAgICAgICYsXG4gICAgICAgIC5kaXNhYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplICYsXG4gICAgICAgICYuZGlzYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAkcmZzLXN0YXRpYztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBmb250LXNpemU6ICRyZnMtc3RhdGljO1xuICAgICAgfVxuXG4gICAgICBAaWYgJHJmcy10d28tZGltZW5zaW9uYWwge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogI3skbXEtdmFsdWV9KSwgKG1heC1oZWlnaHQ6ICN7JG1xLXZhbHVlfSkge1xuICAgICAgICAgIEBpZiAkcmZzLWNsYXNzID09IFwiZW5hYmxlXCIge1xuICAgICAgICAgICAgLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSAmLFxuICAgICAgICAgICAgJi5lbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemUge1xuICAgICAgICAgICAgICBmb250LXNpemU6ICRyZnMtZmx1aWQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1mbHVpZDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaWYgJHJmcy1zYWZhcmktaWZyYW1lLXJlc2l6ZS1idWctZml4IHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBsZW5ndGgtemVyby1uby11bml0XG4gICAgICAgICAgICBtaW4td2lkdGg6IDB2dztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICN7JG1xLXZhbHVlfSkge1xuICAgICAgICAgIEBpZiAkcmZzLWNsYXNzID09IFwiZW5hYmxlXCIge1xuICAgICAgICAgICAgLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSAmLFxuICAgICAgICAgICAgJi5lbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemUge1xuICAgICAgICAgICAgICBmb250LXNpemU6ICRyZnMtZmx1aWQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1mbHVpZDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaWYgJHJmcy1zYWZhcmktaWZyYW1lLXJlc2l6ZS1idWctZml4IHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBsZW5ndGgtemVyby1uby11bml0XG4gICAgICAgICAgICBtaW4td2lkdGg6IDB2dztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gVGhlIGZvbnQtc2l6ZSAmIHJlc3BvbnNpdmUtZm9udC1zaXplIG1peGluIHVzZXMgUkZTIHRvIHJlc2NhbGUgZm9udCBzaXplc1xuQG1peGluIGZvbnQtc2l6ZSgkZnMsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIHJmcygkZnMsICRpbXBvcnRhbnQpO1xufVxuXG5AbWl4aW4gcmVzcG9uc2l2ZS1mb250LXNpemUoJGZzLCAkaW1wb3J0YW50OiBmYWxzZSkge1xuICBAaW5jbHVkZSByZnMoJGZzLCAkaW1wb3J0YW50KTtcbn1cbiIsIkBtaXhpbiBsdHIge1xuICBAaWYgJGVuYWJsZS1sdHIge1xuICAgIEBpZiAmIHtcbiAgICAgICYge1xuICAgICAgICBodG1sOm5vdChbZGlyPVwicnRsXCJdKSAmIHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBodG1sOm5vdChbZGlyPVwicnRsXCJdKSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQG1peGluIHJ0bCB7XG4gIEBpZiAkZW5hYmxlLXJ0bCB7XG4gICAgQGlmICYge1xuICAgICAgJiB7XG4gICAgICAgICpbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICpbZGlyPVwicnRsXCJdIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBMaW5rc1xuLy9cbi8vIFN0eWxlIGFuY2hvciBlbGVtZW50cy5cbi8vIHNjc3MtZG9jcy1zdGFydCBsaW5rXG4kbGluay1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgICB1bmRlcmxpbmUgIWRlZmF1bHQ7XG4vLyBEYXJrZW4gcGVyY2VudGFnZSBmb3IgbGlua3Mgd2l0aCBgLnRleHQtKmAgY2xhc3MgKGUuZy4gYC50ZXh0LXN1Y2Nlc3NgKVxuJGVtcGhhc2l6ZWQtbGluay1ob3Zlci1kYXJrZW4tcGVyY2VudGFnZTogIDE1JSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbGlua1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbGluay1kZWZhdWx0LXRoZW1lXG4kbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuJGxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgIGRhcmtlbigkbGluay1jb2xvciwgMTUlKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbGluay1kZWZhdWx0LXRoZW1lXG5cbiRsaW5rLXRoZW1lLW1hcDogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGxpbmstdGhlbWUtbWFwOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBkZWZhdWx0OiAoXG4gICAgICBcImxpbmstY29sb3JcIjogICAgICAgICRsaW5rLWNvbG9yLFxuICAgICAgXCJsaW5rLWhvdmVyLWNvbG9yXCI6ICAkbGluay1ob3Zlci1jb2xvclxuICAgIClcbiAgKSxcbiAgJGxpbmstdGhlbWUtbWFwXG4pO1xuIiwiLy8gSG92ZXIgbWl4aW4gYW5kIGAkZW5hYmxlLWhvdmVyLW1lZGlhLXF1ZXJ5YCBhcmUgZGVwcmVjYXRlZC5cbi8vXG4vLyBPcmlnaW5hbGx5IGFkZGVkIGR1cmluZyBvdXIgYWxwaGFzIGFuZCBtYWludGFpbmVkIGR1cmluZyBiZXRhcywgdGhpcyBtaXhpbiB3YXNcbi8vIGRlc2lnbmVkIHRvIHByZXZlbnQgYDpob3ZlcmAgc3RpY2tpbmVzcyBvbiBpT1MtYW4gaXNzdWUgd2hlcmUgaG92ZXIgc3R5bGVzXG4vLyB3b3VsZCBwZXJzaXN0IGFmdGVyIGluaXRpYWwgdG91Y2guXG4vL1xuLy8gRm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHksIHdlJ3ZlIGtlcHQgdGhlc2UgbWl4aW5zIGFuZCB1cGRhdGVkIHRoZW0gdG9cbi8vIGFsd2F5cyByZXR1cm4gdGhlaXIgcmVndWxhciBwc2V1ZG8tY2xhc3NlcyBpbnN0ZWFkIG9mIGEgc2hpbW1lZCBtZWRpYSBxdWVyeS5cbi8vXG4vLyBJc3N1ZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNTE5NVxuXG5AbWl4aW4gaG92ZXIoKSB7XG4gIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gICAgJjpob3ZlciB7IEBjb250ZW50OyB9XG4gIH1cbn1cblxuQG1peGluIGhvdmVyLWZvY3VzKCkge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gcGxhaW4taG92ZXItZm9jdXMoKSB7XG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cy1hY3RpdmUoKSB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMsXG4gICY6YWN0aXZlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLy8gVGFibGVzXG4vL1xuLy8gQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRhYmxlXG4kdGFibGUtY2VsbC1wYWRkaW5nOiAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmctc206ICAgLjNyZW0gIWRlZmF1bHQ7XG5cbiR0YWJsZS1ib3JkZXItd2lkdGg6ICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kdGFibGUtc3RyaXBlZC1vcmRlcjogIG9kZCAhZGVmYXVsdDtcblxuJHRhYmxlLWNhcHRpb24tY29sb3I6ICAkdGV4dC1tdXRlZCAhZGVmYXVsdDtcblxuJHRhYmxlLWJnLWxldmVsOiAgICAgLTkgIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLWxldmVsOiAtNiAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGFibGVcblxuLy8gRGVmYXVsdCBUaGVtZVxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRhYmxlLWRlZmF1bHQtdGhlbWVcbiR0YWJsZS1jb2xvcjogICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1iZzogICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRhYmxlLWFjY2VudC1iZzogICAgIHJnYmEoJGJsYWNrLCAuMDUpICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWNvbG9yOiAgICR0YWJsZS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1iZzogICAgICByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kdGFibGUtYWN0aXZlLWJnOiAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1jb2xvcjogICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtaGVhZC1iZzogICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHRhYmxlLWhlYWQtY29sb3I6ICAgICRncmF5LTcwMCAhZGVmYXVsdDtcblxuJHRhYmxlLWRhcmstY29sb3I6ICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYmc6ICAgICAgICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYWNjZW50LWJnOiAgICAgcmdiYSgkd2hpdGUsIC4wNSkgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1ob3Zlci1jb2xvcjogICAkdGFibGUtZGFyay1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWhvdmVyLWJnOiAgICAgIHJnYmEoJHdoaXRlLCAuMDc1KSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWJvcmRlci1jb2xvcjogIGxpZ2h0ZW4oJHRhYmxlLWRhcmstYmcsIDcuNSUpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0YWJsZS1kZWZhdWx0LXRoZW1lXG5cbiR0YWJsZS10aGVtZS1tYXA6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiR0YWJsZS10aGVtZS1tYXA6IG1hcC1tZXJnZShcbiAgKFxuICAgIGRlZmF1bHQ6IChcbiAgICAgIFwidGFibGUtY29sb3JcIjogICAgICAgICAgICAgICR0YWJsZS1jb2xvcixcbiAgICAgIFwidGFibGUtYmdcIjogICAgICAgICAgICAgICAgICR0YWJsZS1iZyxcbiAgICAgIFwidGFibGUtYWNjZW50LWJnXCI6ICAgICAgICAgICR0YWJsZS1hY2NlbnQtYmcsXG4gICAgICBcInRhYmxlLWhvdmVyLWNvbG9yXCI6ICAgICAgICAkdGFibGUtaG92ZXItY29sb3IsXG4gICAgICBcInRhYmxlLWhvdmVyLWJnXCI6ICAgICAgICAgICAkdGFibGUtaG92ZXItYmcsXG4gICAgICBcInRhYmxlLWFjdGl2ZS1iZ1wiOiAgICAgICAgICAkdGFibGUtYWN0aXZlLWJnLFxuICAgICAgXCJ0YWJsZS1ib3JkZXItY29sb3JcIjogICAgICAgJHRhYmxlLWJvcmRlci1jb2xvcixcbiAgICAgIFwidGFibGUtaGVhZC1iZ1wiOiAgICAgICAgICAgICR0YWJsZS1oZWFkLWJnLFxuICAgICAgXCJ0YWJsZS1oZWFkLWNvbG9yXCI6ICAgICAgICAgJHRhYmxlLWhlYWQtY29sb3IsXG4gICAgICBcInRhYmxlLWRhcmstY29sb3JcIjogICAgICAgICAkdGFibGUtZGFyay1jb2xvcixcbiAgICAgIFwidGFibGUtZGFyay1iZ1wiOiAgICAgICAgICAgICR0YWJsZS1kYXJrLWJnLFxuICAgICAgXCJ0YWJsZS1kYXJrLWFjY2VudC1iZ1wiOiAgICAgJHRhYmxlLWRhcmstYWNjZW50LWJnLFxuICAgICAgXCJ0YWJsZS1kYXJrLWhvdmVyLWNvbG9yXCI6ICAgJHRhYmxlLWRhcmstaG92ZXItY29sb3IsXG4gICAgICBcInRhYmxlLWRhcmstaG92ZXItYmdcIjogICAgICAkdGFibGUtZGFyay1ob3Zlci1iZyxcbiAgICAgIFwidGFibGUtZGFyay1ib3JkZXItY29sb3JcIjogICR0YWJsZS1kYXJrLWJvcmRlci1jb2xvclxuICAgIClcbiAgKSxcbiAgJHRhYmxlLXRoZW1lLW1hcFxuKTtcbiIsIi8vXG4vLyBDb3JlVUkgZGVmYXVsdCBjb2xvcnNcbi8vXG5cbiR3aGl0ZTogICNmZmYgIWRlZmF1bHQ7XG4kYmxhY2s6ICAjMDAwMDE1ICFkZWZhdWx0O1xuXG4kZ3JheS1iYXNlOiAgIzNjNGI2NCAhZGVmYXVsdDtcbiRncmF5LTEwMDogICAjZWJlZGVmICFkZWZhdWx0O1xuJGdyYXktMjAwOiAgICNkOGRiZTAgIWRlZmF1bHQ7XG4kZ3JheS0zMDA6ICAgI2M0YzlkMCAhZGVmYXVsdDtcbiRncmF5LTQwMDogICAjYjFiN2MxICFkZWZhdWx0O1xuJGdyYXktNTAwOiAgICM5ZGE1YjEgIWRlZmF1bHQ7XG4kZ3JheS02MDA6ICAgIzhhOTNhMiAhZGVmYXVsdDtcbiRncmF5LTcwMDogICAjNzY4MTkyICFkZWZhdWx0O1xuJGdyYXktODAwOiAgICM2MzZmODMgIWRlZmF1bHQ7XG4kZ3JheS05MDA6ICAgIzRmNWQ3MyAhZGVmYXVsdDtcblxuJGdyYXlzOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kZ3JheXM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwiMTAwXCI6ICAkZ3JheS0xMDAsXG4gICAgXCIyMDBcIjogICRncmF5LTIwMCxcbiAgICBcIjMwMFwiOiAgJGdyYXktMzAwLFxuICAgIFwiNDAwXCI6ICAkZ3JheS00MDAsXG4gICAgXCI1MDBcIjogICRncmF5LTUwMCxcbiAgICBcIjYwMFwiOiAgJGdyYXktNjAwLFxuICAgIFwiNzAwXCI6ICAkZ3JheS03MDAsXG4gICAgXCI4MDBcIjogICRncmF5LTgwMCxcbiAgICBcIjkwMFwiOiAgJGdyYXktOTAwXG4gICksXG4gICRncmF5c1xuKTtcblxuJHByaW1hcnktYmFzZTogICMzMjFmZGIgIWRlZmF1bHQ7XG4kcHJpbWFyeS0xMDA6ICAgI2VhZTlmYiAhZGVmYXVsdDtcbiRwcmltYXJ5LTIwMDogICAjZDZkMmZiICFkZWZhdWx0O1xuJHByaW1hcnktMzAwOiAgICNjMWJjZjQgIWRlZmF1bHQ7XG4kcHJpbWFyeS00MDA6ICAgI2FkYTVmMSAhZGVmYXVsdDtcbiRwcmltYXJ5LTUwMDogICAjOTg4ZmVkICFkZWZhdWx0O1xuJHByaW1hcnktNjAwOiAgICM4NDc4ZWEgIWRlZmF1bHQ7XG4kcHJpbWFyeS03MDA6ICAgIzZmNjJlNiAhZGVmYXVsdDtcbiRwcmltYXJ5LTgwMDogICAjNWI0Y2UyICFkZWZhdWx0O1xuJHByaW1hcnktOTAwOiAgICM0NjM1ZGYgIWRlZmF1bHQ7XG5cbiRwcmltYXJ5LWRhcms6ICAjMWYxNDk4ICFkZWZhdWx0O1xuJHByaW1hcnk6ICAgICAgICMzMjFmZGIgIWRlZmF1bHQ7XG4kcHJpbWFyeS01MDogICAgIzk4OGZlZCAhZGVmYXVsdDtcbiRwcmltYXJ5LTI1OiAgICAjY2NjN2Y2ICFkZWZhdWx0O1xuXG5cbiRzZWNvbmRhcnktYmFzZTogICMzYzRiNjQgIWRlZmF1bHQ7XG5cbiRzZWNvbmRhcnktMTAwOiAgICNlYmVkZWYgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LTIwMDogICAjZDhkYmUwICFkZWZhdWx0O1xuJHNlY29uZGFyeS0zMDA6ICAgI2M0YzlkMCAhZGVmYXVsdDtcbiRzZWNvbmRhcnktNDAwOiAgICNiMWI3YzEgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LTUwMDogICAjOWRhNWIxICFkZWZhdWx0O1xuJHNlY29uZGFyeS02MDA6ICAgIzhhOTNhMiAhZGVmYXVsdDtcbiRzZWNvbmRhcnktNzAwOiAgICM3NjgxOTIgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LTgwMDogICAjNjM2ZjgzICFkZWZhdWx0O1xuJHNlY29uZGFyeS05MDA6ICAgIzRmNWQ3MyAhZGVmYXVsdDtcblxuJHNlY29uZGFyeS1kYXJrOiAgIzIxMjIzMyAhZGVmYXVsdDtcbiRzZWNvbmRhcnk6ICAgICAgICMzYzRiNjQgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LTUwOiAgICAjOWRhNWIxICFkZWZhdWx0O1xuJHNlY29uZGFyeS0yNTogICAgI2NlZDJkOCAhZGVmYXVsdDtcblxuXG4kZGFuZ2VyLWRhcms6ICAjZDkzNzM3ICFkZWZhdWx0O1xuJGRhbmdlcjogICAgICAgI2U1NTM1MyAhZGVmYXVsdDtcbiRkYW5nZXItNTA6ICAgICNmMmE5YTkgIWRlZmF1bHQ7XG4kZGFuZ2VyLTI1OiAgICAjZjlkNGQ0ICFkZWZhdWx0O1xuXG4kaW5mby1kYXJrOiAgIzI5ODJjYyAhZGVmYXVsdDtcbiRpbmZvOiAgICAgICAjMzlmICFkZWZhdWx0O1xuJGluZm8tNTA6ICAgICM4MGM2ZmYgIWRlZmF1bHQ7XG4kaW5mby0yNTogICAgI2MwZTZmZiAhZGVmYXVsdDtcblxuJHN1Y2Nlc3MtZGFyazogICMxYjllM2UgIWRlZmF1bHQ7XG4kc3VjY2VzczogICAgICAgIzJlYjg1YyAhZGVmYXVsdDtcbiRzdWNjZXNzLTUwOiAgICAjOTZkYmFkICFkZWZhdWx0O1xuJHN1Y2Nlc3MtMjU6ICAgICNjYmVkZDYgIWRlZmF1bHQ7XG5cbiR3YXJuaW5nLWRhcms6ICAjZjY5NjBiICFkZWZhdWx0O1xuJHdhcm5pbmc6ICAgICAgICNmOWIxMTUgIWRlZmF1bHQ7XG4kd2FybmluZy01MDogICAgI2ZjZDg4YSAhZGVmYXVsdDtcbiR3YXJuaW5nLTI1OiAgICAjZmVlY2M1ICFkZWZhdWx0O1xuXG4kbGlnaHQ6ICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kZGFyazogICAkZ3JheS04MDAgIWRlZmF1bHQ7XG5cbiRwaW5rOiAgI2U4M2U4YyAhZGVmYXVsdDtcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWNvbG9ycy1tYXBcbiR0aGVtZS1jb2xvcnM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiR0aGVtZS1jb2xvcnM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwicHJpbWFyeVwiOiAgICAkcHJpbWFyeSxcbiAgICBcInNlY29uZGFyeVwiOiAgJHNlY29uZGFyeS0yNSxcbiAgICBcInN1Y2Nlc3NcIjogICAgJHN1Y2Nlc3MsXG4gICAgXCJpbmZvXCI6ICAgICAgICRpbmZvLFxuICAgIFwid2FybmluZ1wiOiAgICAkd2FybmluZyxcbiAgICBcImRhbmdlclwiOiAgICAgJGRhbmdlcixcbiAgICBcImxpZ2h0XCI6ICAgICAgJGxpZ2h0LFxuICAgIFwiZGFya1wiOiAgICAgICAkZGFya1xuICApLFxuICAkdGhlbWUtY29sb3JzXG4pO1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1jb2xvcnMtbWFwXG5cbi8vIFNldCBhIHNwZWNpZmljIGp1bXAgcG9pbnQgZm9yIHJlcXVlc3RpbmcgY29sb3IganVtcHNcbiR0aGVtZS1jb2xvci1pbnRlcnZhbDogIDglICFkZWZhdWx0O1xuXG4vLyBUaGUgeWlxIGxpZ2h0bmVzcyB2YWx1ZSB0aGF0IGRldGVybWluZXMgd2hlbiB0aGUgbGlnaHRuZXNzIG9mIGNvbG9yIGNoYW5nZXMgZnJvbSBcImRhcmtcIiB0byBcImxpZ2h0XCIuIEFjY2VwdGFibGUgdmFsdWVzIGFyZSBiZXR3ZWVuIDAgYW5kIDI1NS5cbiR5aXEtY29udHJhc3RlZC10aHJlc2hvbGQ6ICAxNTAgIWRlZmF1bHQ7XG5cbi8vIEN1c3RvbWl6ZSB0aGUgbGlnaHQgYW5kIGRhcmsgdGV4dCBjb2xvcnMgZm9yIHVzZSBpbiBvdXIgWUlRIGNvbG9yIGNvbnRyYXN0IGZ1bmN0aW9uLlxuJHlpcS10ZXh0LWRhcms6ICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJHlpcS10ZXh0LWxpZ2h0OiAgJHdoaXRlICFkZWZhdWx0O1xuXG4keWlxLXRoZW1lLW1hcDogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJHlpcS10aGVtZS1tYXA6IG1hcC1tZXJnZShcbiAgKFxuICAgIGRlZmF1bHQ6IChcbiAgICAgIFwieWlxLXRleHQtZGFya1wiOiAgJHlpcS10ZXh0LWRhcmssXG4gICAgICBcInlpcS10ZXh0LWxpZ2h0XCI6ICAkeWlxLXRleHQtbGlnaHRcbiAgICApXG4gICksXG4gICR5aXEtdGhlbWUtbWFwXG4pO1xuXG4vLyBUT0RPOiBNb3ZlIHRvIGJldHRlciBwbGFjZVxuLy8gQ2hhcmFjdGVycyB3aGljaCBhcmUgZXNjYXBlZCBieSB0aGUgZXNjYXBlLXN2ZyBmdW5jdGlvblxuJGVzY2FwZWQtY2hhcmFjdGVyczogKFxuICAoXCI8XCIsXCIlM2NcIiksXG4gIChcIj5cIixcIiUzZVwiKSxcbiAgKFwiI1wiLFwiJTIzXCIpLFxuICAoXCIoXCIsXCIlMjhcIiksXG4gIChcIilcIixcIiUyOVwiKSxcbikgIWRlZmF1bHQ7XG4iLCIvLyBCdXR0b25zICsgRm9ybXNcbi8vXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnV0dG9ucy1mb3Jtc1xuLy8gU2hhcmVkIHZhcmlhYmxlcyB0aGF0IGFyZSByZWFzc2lnbmVkIHRvIGAkaW5wdXQtYCBhbmQgYCRidG4tYCBzcGVjaWZpYyB2YXJpYWJsZXMuXG5cbiRpbnB1dC1idG4tcGFkZGluZy15OiAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXg6ICAgIC43NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1mYW1pbHk6ICBudWxsICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemU6ICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQ6ICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1mb2N1cy13aWR0aDogICAgICAgLjJyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWNvbG9yOiAgICAgICByZ2JhKCRjb21wb25lbnQtYWN0aXZlLWJnLCAuMjUpICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgMCAwIDAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1zbTogICAgLjI1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtc206ICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtc206ICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtOiAgJGxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1sZzogICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1sZzogICAgMXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplLWxnOiAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZzogICRsaW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1ib3JkZXItd2lkdGg6ICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBidXR0b25zLWZvcm1zXG5cblxuLy8gQnV0dG9uc1xuLy9cbi8vIHNjc3MtZG9jcy1zdGFydCBidXR0b25zXG4vLyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCwgYW5kIGJvcmRlciBjb2xvci5cblxuJGJ0bi1wYWRkaW5nLXk6ICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXg6ICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGJ0bi1mb250LWZhbWlseTogICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZTogICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0OiAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRidG4td2hpdGUtc3BhY2U6ICBudWxsICFkZWZhdWx0OyAvLyBTZXQgdG8gYG5vd3JhcGAgdG8gcHJldmVudCB0ZXh0IHdyYXBwaW5nXG5cbiRidG4tcGFkZGluZy15LXNtOiAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LXNtOiAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplLXNtOiAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQtc206ICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kYnRuLXBhZGRpbmcteS1sZzogICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1sZzogICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZS1sZzogICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0LWxnOiAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGJ0bi1ib3JkZXItd2lkdGg6ICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGJ0bi1mb250LXdlaWdodDogICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kYnRuLWJveC1zaGFkb3c6ICAgICAgICAgaW5zZXQgMCAxcHggMCByZ2JhKCR3aGl0ZSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRidG4tZm9jdXMtd2lkdGg6ICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRidG4tZGlzYWJsZWQtb3BhY2l0eTogICAuNjUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3gtc2hhZG93OiAgaW5zZXQgMCAzcHggNXB4IHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcblxuJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kYnRuLWJsb2NrLXNwYWNpbmcteTogLjVyZW0gIWRlZmF1bHQ7XG5cbi8vIEFsbG93cyBmb3IgY3VzdG9taXppbmcgYnV0dG9uIHJhZGl1cyBpbmRlcGVuZGVudGx5IGZyb20gZ2xvYmFsIGJvcmRlciByYWRpdXNcbiRidG4tYm9yZGVyLXJhZGl1czogICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLWxnOiAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtc206ICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGJ0bi10cmFuc2l0aW9uOiAgY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBidXR0b25zXG5cbi8vIEZvcm1zXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3Jtc1xuJGxhYmVsLW1hcmdpbi1ib3R0b206ICAuNXJlbSAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteTogICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14OiAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRpbnB1dC1mb250LWZhbWlseTogICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplOiAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXdlaWdodDogICRmb250LXdlaWdodC1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0OiAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1zbTogICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LXNtOiAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemUtc206ICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0LXNtOiAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1sZzogICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LWxnOiAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemUtbGc6ICAgICRpbnB1dC1idG4tZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0LWxnOiAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJnOiAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGlucHV0LWRpc2FibGVkLWJnOiAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG4kaW5wdXQtY29sb3I6ICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1jb2xvcjogICRncmF5LTIwMCAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItd2lkdGg6ICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1ib3gtc2hhZG93OiAgICBpbnNldCAwIDFweCAxcHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuXG4kaW5wdXQtYm9yZGVyLXJhZGl1czogICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtbGc6ICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtOiAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1mb2N1cy1iZzogICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yOiAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMjUlKSAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1jb2xvcjogICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtd2lkdGg6ICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3gtc2hhZG93OiAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogICRncmF5LTYwMCAhZGVmYXVsdDtcbiRpbnB1dC1wbGFpbnRleHQtY29sb3I6ICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWJvcmRlcjogICRpbnB1dC1ib3JkZXItd2lkdGggKiAyICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWlubmVyOiAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCAkaW5wdXQtcGFkZGluZy15ICogMikgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGY6ICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogLjVlbSwgJGlucHV0LXBhZGRpbmcteSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI6ICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogLjI1ZW0sICRpbnB1dC1wYWRkaW5nLXkgLyAyKSAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodDogICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15ICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LXNtOiAgYWRkKCRpbnB1dC1saW5lLWhlaWdodC1zbSAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXktc20gKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtbGc6ICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0LWxnICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteS1sZyAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuXG4kaW5wdXQtdHJhbnNpdGlvbjogIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXRleHQtbWFyZ2luLXRvcDogIC4yNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyOiAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXk6ICAuM3JlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi14OiAgLjI1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbmxpbmUtbWFyZ2luLXg6ICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbmxpbmUtaW5wdXQtbWFyZ2luLXg6ICAuMzEyNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGg6ICAgIDEwcHggIWRlZmF1bHQ7XG4kZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tOiAgMXJlbSAhZGVmYXVsdDtcblxuJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yOiAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJHNlbGVjdC1vcHRpb24tYmc6IGluaGVyaXQgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm1zXG5cbiRmb3JtLXRoZW1lLW1hcDogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGZvcm0tdGhlbWUtbWFwOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBkZWZhdWx0OiAoXG4gICAgICBcImlucHV0LWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnLFxuICAgICAgXCJpbnB1dC1kaXNhYmxlZC1iZ1wiOiAgICAgICAgICAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyxcbiAgICAgIFwiaW5wdXQtY29sb3JcIjogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IsXG4gICAgICBcImlucHV0LWJvcmRlci1jb2xvclwiOiAgICAgICAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvcixcbiAgICAgIFwiaW5wdXQtZm9jdXMtYmdcIjogICAgICAgICAgICAgICAgICAkaW5wdXQtZm9jdXMtYmcsXG4gICAgICBcImlucHV0LWZvY3VzLWJvcmRlci1jb2xvclwiOiAgICAgICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcixcbiAgICAgIFwiaW5wdXQtZm9jdXMtY29sb3JcIjogICAgICAgICAgICAgICAkaW5wdXQtZm9jdXMtY29sb3IsXG4gICAgICBcImlucHV0LXBsYWNlaG9sZGVyLWNvbG9yXCI6ICAgICAgICAgJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yLFxuICAgICAgXCJpbnB1dC1wbGFpbnRleHQtY29sb3JcIjogICAgICAgICAgICRpbnB1dC1wbGFpbnRleHQtY29sb3IsXG4gICAgICBcImlucHV0LWdyb3VwLWFkZG9uLWNvbG9yXCI6ICAgICAgICAgJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yLFxuICAgICAgXCJpbnB1dC1ncm91cC1hZGRvbi1iZ1wiOiAgICAgICAgICAgICRpbnB1dC1ncm91cC1hZGRvbi1iZyxcbiAgICAgIFwiaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yXCI6ICAkaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yLFxuICAgICAgXCJzZWxlY3Qtb3B0aW9uLWJnXCI6ICAgICAgICAgICAgICAgICRzZWxlY3Qtb3B0aW9uLWJnXG4gICAgKVxuICApLFxuICAkZm9ybS10aGVtZS1tYXBcbik7XG5cbi8vIEZvcm0gdmFsaWRhdGlvblxuXG4kZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wOiAgICAgJGZvcm0tdGV4dC1tYXJnaW4tdG9wICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stZm9udC1zaXplOiAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcjogICAgdGhlbWUtY29sb3IoXCJzdWNjZXNzXCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcjogIHRoZW1lLWNvbG9yKFwiZGFuZ2VyXCIpICFkZWZhdWx0O1xuXG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yOiAgICAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQ6ICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yfScgZD0nTTIuMyA2LjczTC42IDQuNTNjLS40LTEuMDQuNDYtMS40IDEuMS0uOGwxLjEgMS40IDMuNC0zLjhjLjYtLjYzIDEuNi0uMjcgMS4yLjdsLTQgNC42Yy0uNDMuNS0uOC40LTEuMS4xeicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcjogICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQ6ICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMicgaGVpZ2h0PScxMicgZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nIHZpZXdCb3g9JzAgMCAxMiAxMic+PGNpcmNsZSBjeD0nNicgY3k9JzYnIHI9JzQuNScvPjxwYXRoIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIGQ9J001LjggMy42aC40TDYgNi41eicvPjxjaXJjbGUgY3g9JzYnIGN5PSc4LjInIHI9Jy42JyBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nIHN0cm9rZT0nbm9uZScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRmb3JtLXZhbGlkYXRpb24tc3RhdGVzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcInZhbGlkXCI6IChcbiAgICAgIFwiY29sb3JcIjogICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yLFxuICAgICAgXCJpY29uXCI6ICAgJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZFxuICAgICksXG4gICAgXCJpbnZhbGlkXCI6IChcbiAgICAgIFwiY29sb3JcIjogICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IsXG4gICAgICBcImljb25cIjogICAkZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWRcbiAgICApLFxuICApLFxuICAkZm9ybS12YWxpZGF0aW9uLXN0YXRlc1xuKTtcbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeFxuLnBzIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICAtbXMtdG91Y2gtYWN0aW9uOiBhdXRvO1xuICB0b3VjaC1hY3Rpb246IGF1dG87XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTtcbiAgb3ZlcmZsb3ctYW5jaG9yOiBub25lO1xufVxuXG4ucHNfX3JhaWwteCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDE1cHg7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjJzIGxpbmVhciwgb3BhY2l0eSAuMnMgbGluZWFyO1xufVxuXG4ucHNfX3JhaWwteSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgQGluY2x1ZGUgbHRyIHtcbiAgICByaWdodDogMDtcbiAgfVxuICBAaW5jbHVkZSBydGwge1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDE1cHg7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjJzIGxpbmVhciwgb3BhY2l0eSAuMnMgbGluZWFyO1xufVxuXG4ucHMtLWFjdGl2ZS14ID4gLnBzX19yYWlsLXgsXG4ucHMtLWFjdGl2ZS15ID4gLnBzX19yYWlsLXkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5wczpob3ZlciA+IC5wc19fcmFpbC14LFxuLnBzOmhvdmVyID4gLnBzX19yYWlsLXksXG4ucHMtLWZvY3VzID4gLnBzX19yYWlsLXgsXG4ucHMtLWZvY3VzID4gLnBzX19yYWlsLXksXG4ucHMtLXNjcm9sbGluZy14ID4gLnBzX19yYWlsLXgsXG4ucHMtLXNjcm9sbGluZy15ID4gLnBzX19yYWlsLXkge1xuICBvcGFjaXR5OiAuNjtcbn1cblxuLnBzX19yYWlsLXg6aG92ZXIsXG4ucHNfX3JhaWwteTpob3Zlcixcbi5wc19fcmFpbC14OmZvY3VzLFxuLnBzX19yYWlsLXk6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xuICBvcGFjaXR5OiAuOTtcbn1cblxuLypcbiAqIFNjcm9sbGJhciB0aHVtYiBzdHlsZXNcbiAqL1xuLnBzX190aHVtYi14IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDJweDtcbiAgaGVpZ2h0OiA2cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhYWE7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMnMgbGluZWFyLCBoZWlnaHQgLjJzIGVhc2UtaW4tb3V0O1xufVxuXG4ucHNfX3RodW1iLXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIEBpbmNsdWRlIGx0ciB7XG4gICAgcmlnaHQ6IDJweDtcbiAgfVxuICBAaW5jbHVkZSBydGwge1xuICAgIGxlZnQ6IDJweDtcbiAgfVxuICB3aWR0aDogNnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWFhO1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjJzIGxpbmVhciwgd2lkdGggLjJzIGVhc2UtaW4tb3V0O1xufVxuXG4ucHNfX3JhaWwteDpob3ZlciA+IC5wc19fdGh1bWIteCxcbi5wc19fcmFpbC14OmZvY3VzID4gLnBzX190aHVtYi14IHtcbiAgaGVpZ2h0OiAxMXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTk5O1xufVxuXG4ucHNfX3JhaWwteTpob3ZlciA+IC5wc19fdGh1bWIteSxcbi5wc19fcmFpbC15OmZvY3VzID4gLnBzX190aHVtYi15IHtcbiAgd2lkdGg6IDExcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5OTk7XG59XG5cbkBzdXBwb3J0cyAoLW1zLW92ZXJmbG93LXN0eWxlOiBub25lKSB7XG4gIC5wcyB7XG4gICAgb3ZlcmZsb3c6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSksICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAucHMge1xuICAgIG92ZXJmbG93OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIkBpbXBvcnQgJy4uL192YXJzLnNjc3MnO1xuXG4uI3skbmFtZXNwYWNlLXByZWZpeH0tYm94IHtcbiAgJltkYXRhLWFuaW1hdGlvbj0nZmFkZSddW2RhdGEtc3RhdGU9J2hpZGRlbiddIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG4iLCIuI3skbmFtZXNwYWNlLXByZWZpeH0tYm94W2RhdGEtdGhlbWV+PSdjcG9wb3ZlciddIHtcbiAgei1pbmRleDogJHppbmRleC1wb3BvdmVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAkcG9wb3Zlci1tYXgtd2lkdGg7XG4gIEBpbmNsdWRlIHJlc2V0LXRleHQoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRwb3BvdmVyLWZvbnQtc2l6ZSk7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQ7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHBvcG92ZXItYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHBvcG92ZXItYm94LXNoYWRvdyk7XG5cbiAgQGluY2x1ZGUgdGhlbWVzKCRwb3BvdmVyLXRoZW1lLW1hcCkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwb3BvdmVyLWJnXCIpO1xuICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBvcG92ZXItYm9yZGVyLWNvbG9yXCIpO1xuICB9XG5cbiAgPi4jeyRuYW1lc3BhY2UtcHJlZml4fS1jb250ZW50IHtcbiAgICBtYXgtd2lkdGg6IGF1dG87XG4gICAgcGFkZGluZzogMDtcbiAgICBjb2xvcjogaW5pdGlhbDtcbiAgICB0ZXh0LWFsaWduOiBpbml0aWFsO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGluaXRpYWw7XG4gICAgYm9yZGVyLXJhZGl1czogaW5pdGlhbDtcbiAgfVxuXG4gID4uI3skbmFtZXNwYWNlLXByZWZpeH0tYXJyb3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gLiN7JG5hbWVzcGFjZS1wcmVmaXh9LWFycm93IHtcbiAgLy8gICBAaW5jbHVkZSB0aGVtZXMoJHBvcG92ZXItdGhlbWUtbWFwKSB7XG4gIC8vICAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yXCIpO1xuICAvLyAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwb3BvdmVyLWFycm93LWNvbG9yXCIpO1xuICAvLyAgIH1cblxuICAvLyAgICY6OmFmdGVyIHtcbiAgLy8gICAgIGNvbnRlbnQ6ICcnO1xuICAvLyAgICAgei1pbmRleDogLTE7XG4gIC8vICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIC8vICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAvLyAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgLy8gICAgIGJvcmRlci13aWR0aDogOHB4O1xuICAvLyAgIH1cbiAgLy8gfVxuXG4gICZbZGF0YS1wbGFjZW1lbnRePSd0b3AnXSxcbiAgJltkYXRhLXBsYWNlbWVudF49J2JvdHRvbSddIHtcbiAgICA+IC4jeyRuYW1lc3BhY2UtcHJlZml4fS1hcnJvdyB7XG4gICAgICB3aWR0aDogYWRkKCRwb3BvdmVyLWFycm93LXdpZHRoLCAoMiAqICRwb3BvdmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgICAgIGhlaWdodDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgICAgcGFkZGluZzogMCAkcG9wb3Zlci1ib3JkZXItcmFkaXVzOyAvLyBtYWtlIHN1cmUgdGhlIGFycm93IGRvZXMgbm90IHRvdWNoIHRoZSBwb3BvdmVyJ3Mgcm91bmRlZCBjb3JuZXJzXG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJltkYXRhLXBsYWNlbWVudF49J3JpZ2h0J10sXG4gICZbZGF0YS1wbGFjZW1lbnRePSdsZWZ0J10ge1xuICAgID4gLiN7JG5hbWVzcGFjZS1wcmVmaXh9LWFycm93IHtcbiAgICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgICBoZWlnaHQ6IGFkZCgkcG9wb3Zlci1hcnJvdy13aWR0aCwgKDIgKiAkcG9wb3Zlci1ib3JkZXItcmFkaXVzKSk7XG4gICAgICBwYWRkaW5nOiAkcG9wb3Zlci1ib3JkZXItcmFkaXVzIDA7IC8vIG1ha2Ugc3VyZSB0aGUgYXJyb3cgZG9lcyBub3QgdG91Y2ggdGhlIHBvcG92ZXIncyByb3VuZGVkIGNvcm5lcnNcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cblxuXG4gICZbZGF0YS1wbGFjZW1lbnRePSd0b3AnXSB7XG5cbiAgICA+IC4jeyRuYW1lc3BhY2UtcHJlZml4fS1hcnJvdyB7XG4gICAgICBib3R0b206IHN1YnRyYWN0KC0kcG9wb3Zlci1hcnJvdy1oZWlnaHQsICRwb3BvdmVyLWJvcmRlci13aWR0aCk7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgICAgQGluY2x1ZGUgdGhlbWVzKCRwb3BvdmVyLXRoZW1lLW1hcCkge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yXCIpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICAgIGJvcmRlci13aWR0aDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICAgIEBpbmNsdWRlIHRoZW1lcygkcG9wb3Zlci10aGVtZS1tYXApIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwicG9wb3Zlci1hcnJvdy1jb2xvclwiKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZbZGF0YS1wbGFjZW1lbnRePSdib3R0b20nXSB7XG5cbiAgICA+IC4jeyRuYW1lc3BhY2UtcHJlZml4fS1hcnJvdyB7XG4gICAgICB0b3A6IHN1YnRyYWN0KC0kcG9wb3Zlci1hcnJvdy1oZWlnaHQsICRwb3BvdmVyLWJvcmRlci13aWR0aCk7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKTtcbiAgICAgICAgQGluY2x1ZGUgdGhlbWVzKCRwb3BvdmVyLXRoZW1lLW1hcCkge1xuICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yXCIpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdG9wOiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICAgIGJvcmRlci13aWR0aDogMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMik7XG4gICAgICAgIEBpbmNsdWRlIHRoZW1lcygkcG9wb3Zlci10aGVtZS1tYXApIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwicG9wb3Zlci1hcnJvdy1jb2xvclwiKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZbZGF0YS1wbGFjZW1lbnRePSdsZWZ0J10ge1xuXG4gICAgPiAuI3skbmFtZXNwYWNlLXByZWZpeH0tYXJyb3cge1xuICAgICAgcmlnaHQ6IHN1YnRyYWN0KC0kcG9wb3Zlci1hcnJvdy1oZWlnaHQsICRwb3BvdmVyLWJvcmRlci13aWR0aCk7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuICAgICAgICBAaW5jbHVkZSB0aGVtZXMoJHBvcG92ZXItdGhlbWUtbWFwKSB7XG4gICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yXCIpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgcmlnaHQ6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICAgICAgQGluY2x1ZGUgdGhlbWVzKCRwb3BvdmVyLXRoZW1lLW1hcCkge1xuICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwicG9wb3Zlci1hcnJvdy1jb2xvclwiKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cbiAgJltkYXRhLXBsYWNlbWVudF49J3JpZ2h0J10ge1xuXG4gICAgPiAuI3skbmFtZXNwYWNlLXByZWZpeH0tYXJyb3cge1xuICAgICAgbGVmdDogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgICAgQGluY2x1ZGUgdGhlbWVzKCRwb3BvdmVyLXRoZW1lLW1hcCkge1xuICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3JcIik7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBsZWZ0OiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICAgIEBpbmNsdWRlIHRoZW1lcygkcG9wb3Zlci10aGVtZS1tYXApIHtcbiAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwb3BvdmVyLWFycm93LWNvbG9yXCIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBaLWluZGV4IG1hc3RlciBsaXN0XG4vL1xuLy8gV2FybmluZzogQXZvaWQgY3VzdG9taXppbmcgdGhlc2UgdmFsdWVzLiBUaGV5J3JlIHVzZWQgZm9yIGEgYmlyZCdzIGV5ZSB2aWV3XG4vLyBvZiBjb21wb25lbnRzIGRlcGVuZGVudCBvbiB0aGUgei1heGlzIGFuZCBhcmUgZGVzaWduZWQgdG8gYWxsIHdvcmsgdG9nZXRoZXIuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB6aW5kZXgtc3RhY2tcbiR6aW5kZXgtZHJvcGRvd246ICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1zdGlja3k6ICAgICAgICAgIDEwMjAgIWRlZmF1bHQ7XG4kemluZGV4LWZpeGVkOiAgICAgICAgICAgMTAzMCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWwtYmFja2Ryb3A6ICAxMDQwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbDogICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XG4kemluZGV4LXBvcG92ZXI6ICAgICAgICAgMTA2MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbHRpcDogICAgICAgICAxMDcwICFkZWZhdWx0O1xuJHppbmRleC10b2FzdGVyOiAgICAgICAgIDEwODAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHppbmRleC1zdGFja1xuIiwiLy8gUG9wb3ZlcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBvcG92ZXJcbiRwb3BvdmVyLWZvbnQtc2l6ZTogICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kcG9wb3Zlci1tYXgtd2lkdGg6ICAgICAyNzZweCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci13aWR0aDogICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRwb3BvdmVyLWlubmVyLWJvcmRlci1yYWRpdXM6ICBzdWJ0cmFjdCgkcG9wb3Zlci1ib3JkZXItcmFkaXVzLCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJHBvcG92ZXItYm94LXNoYWRvdzogICAgICAgICAgIDAgLjI1cmVtIC41cmVtIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXk6ICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXg6ICAuNzVyZW0gIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWJvZHktcGFkZGluZy15OiAgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy14OiAgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctd2lkdGg6ICAgMXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWhlaWdodDogIC41cmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwb3BvdmVyXG5cblxuLy8gRGVmYXVsdCBUaGVtZVxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBvcG92ZXItZGVmYXVsdC10aGVtZVxuJHBvcG92ZXItYmc6ICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItYmc6ICAgICAgICAgIGRhcmtlbigkcG9wb3Zlci1iZywgMyUpICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLWNvbG9yOiAgICAgICAkaGVhZGluZ3MtY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LWNvbG9yOiAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctY29sb3I6ICAgICAgICAkcG9wb3Zlci1iZyAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgZmFkZS1pbigkcG9wb3Zlci1ib3JkZXItY29sb3IsIC4wNSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHBvcG92ZXItZGVmYXVsdC10aGVtZVxuXG4kcG9wb3Zlci10aGVtZS1tYXA6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRwb3BvdmVyLXRoZW1lLW1hcDogbWFwLW1lcmdlKFxuICAoXG4gICAgZGVmYXVsdDogKFxuICAgICAgXCJwb3BvdmVyLWJnXCI6ICAgICAgICAgICAgICAgICAkcG9wb3Zlci1iZyxcbiAgICAgIFwicG9wb3Zlci1ib3JkZXItY29sb3JcIjogICAgICAgJHBvcG92ZXItYm9yZGVyLWNvbG9yLFxuICAgICAgXCJwb3BvdmVyLWhlYWRlci1iZ1wiOiAgICAgICAgICAkcG9wb3Zlci1oZWFkZXItYmcsXG4gICAgICBcInBvcG92ZXItaGVhZGVyLWNvbG9yXCI6ICAgICAgICRwb3BvdmVyLWhlYWRlci1jb2xvcixcbiAgICAgIFwicG9wb3Zlci1ib2R5LWNvbG9yXCI6ICAgICAgICAgJHBvcG92ZXItYm9keS1jb2xvcixcbiAgICAgIFwicG9wb3Zlci1hcnJvdy1jb2xvclwiOiAgICAgICAgJHBvcG92ZXItYXJyb3ctY29sb3IsXG4gICAgICBcInBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3JcIjogICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yXG4gICAgKVxuICApLFxuICAkcG9wb3Zlci10aGVtZS1tYXBcbik7XG4iLCJAbWl4aW4gcmVzZXQtdGV4dCgpIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG8gTk9UIHJlc2V0IGZvbnQtc2l6ZSBvciB3b3JkLXdyYXAuXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRmFsbGJhY2sgZm9yIHdoZXJlIGBzdGFydGAgaXMgbm90IHN1cHBvcnRlZFxuICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIGxpbmUtYnJlYWs6IGF1dG87XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1ibGFja2xpc3Rcbi8vIFNpbmdsZSBzaWRlIGJvcmRlci1yYWRpdXNcblxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIHJlcGxhY2UgbmVnYXRpdmUgdmFsdWVzIHdpdGggMFxuQGZ1bmN0aW9uIHZhbGlkLXJhZGl1cygkcmFkaXVzKSB7XG4gICRyZXR1cm46ICgpO1xuICBAZWFjaCAkdmFsdWUgaW4gJHJhZGl1cyB7XG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSBudW1iZXIge1xuICAgICAgJHJldHVybjogYXBwZW5kKCRyZXR1cm4sIG1heCgkdmFsdWUsIDApKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCAkdmFsdWUpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRyZXR1cm47XG59XG5cbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzLCAkZmFsbGJhY2stYm9yZGVyLXJhZGl1czogZmFsc2UpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG4gIEBlbHNlIGlmICRmYWxsYmFjay1ib3JkZXItcmFkaXVzICE9IGZhbHNlIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cbiIsIlxuXG4vLyBDb21wb25lbnRzXG4vL1xuLy8gRGVmaW5lIGNvbW1vbiBwYWRkaW5nIGFuZCBib3JkZXIgcmFkaXVzIHNpemVzIGFuZCBtb3JlLlxuXG4kbGluZS1oZWlnaHQtbGc6ICAxLjUgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtc206ICAxLjUgIWRlZmF1bHQ7XG5cbiRib3JkZXItd2lkdGg6ICAxcHggIWRlZmF1bHQ7XG4kYm9yZGVyLWNvbG9yOiAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG4kYm9yZGVyLXRoZW1lLW1hcDogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGJvcmRlci10aGVtZS1tYXA6IG1hcC1tZXJnZShcbiAgKFxuICAgIGRlZmF1bHQ6IChcbiAgICAgIFwiYm9yZGVyLWNvbG9yXCI6ICRib3JkZXItY29sb3JcbiAgICApXG4gICksXG4gICRib3JkZXItdGhlbWUtbWFwXG4pO1xuXG4kYm9yZGVyLXJhZGl1czogICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLWxnOiAgLjNyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1zbTogIC4ycmVtICFkZWZhdWx0O1xuXG4kcm91bmRlZC1waWxsOiAgNTByZW0gIWRlZmF1bHQ7XG5cbiRib3gtc2hhZG93LXNtOiAgMCAuMTI1cmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdzogICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjE1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LWxnOiAgMCAxcmVtIDNyZW0gcmdiYSgkYmxhY2ssIC4xNzUpICFkZWZhdWx0O1xuXG4kY29tcG9uZW50LWNvbG9yOiAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kY29tcG9uZW50LWJnOiAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY29tcG9uZW50LWFjdGl2ZS1jb2xvcjogICR3aGl0ZSAhZGVmYXVsdDtcbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuXG4kY2FyZXQtd2lkdGg6ICAgICAgICAgICAuM2VtICFkZWZhdWx0O1xuJGNhcmV0LXZlcnRpY2FsLWFsaWduOiAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuJGNhcmV0LXNwYWNpbmc6ICAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuXG4kdHJhbnNpdGlvbi1iYXNlOiAgICAgIGFsbCAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1mYWRlOiAgICAgIG9wYWNpdHkgLjE1cyBsaW5lYXIgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1jb2xsYXBzZTogIGhlaWdodCAuMzVzIGVhc2UgIWRlZmF1bHQ7XG5cbiRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3M6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3M6IGpvaW4oXG4gIChcbiAgICAoMjEgOSksXG4gICAgKDE2IDkpLFxuICAgICg0IDMpLFxuICAgICgxIDEpLFxuICApLFxuICAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW9zXG4pO1xuIiwiQGltcG9ydCAnLi9fdmFycy5zY3NzJztcbkBpbXBvcnQgJy4vYW5pbWF0aW9ucy9mYWRlLnNjc3MnO1xuQGltcG9ydCAnLi8uLi8uLi92YXJpYWJsZXMnO1xuQGltcG9ydCAnLi9wb3BvdmVyLnNjc3MnO1xuXG4uI3skbmFtZXNwYWNlLXByZWZpeH0taU9TIHtcbiAgY3Vyc29yOiBwb2ludGVyICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbltkYXRhLSN7JG5hbWVzcGFjZS1wcmVmaXh9LXJvb3RdIHtcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMHZ3IC0gMTBweCk7XG59XG5cbi4jeyRuYW1lc3BhY2UtcHJlZml4fS1ib3gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6ICR6aW5kZXgtdG9vbHRpcDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogJHRvb2x0aXAtbWFyZ2luO1xuICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gIC8vIGNvbG9yOiB3aGl0ZTtcbiAgLy8gYm9yZGVyLXJhZGl1czogNHB4O1xuICBAaW5jbHVkZSByZXNldC10ZXh0KCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkdG9vbHRpcC1mb250LXNpemUpO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIG91dGxpbmU6IDA7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgdmlzaWJpbGl0eSwgb3BhY2l0eTtcblxuICAmW2RhdGEtcGxhY2VtZW50Xj0ndG9wJ10gPiAuI3skbmFtZXNwYWNlLXByZWZpeH0tYXJyb3cge1xuICAgIGJvdHRvbTogMDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3R0b206IC0gJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpIDA7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiBpbml0aWFsO1xuICAgIH1cbiAgfVxuXG4gICZbZGF0YS1wbGFjZW1lbnRePSdib3R0b20nXSA+IC4jeyRuYW1lc3BhY2UtcHJlZml4fS1hcnJvdyB7XG4gICAgdG9wOiAwO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHRvcDogLSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IGluaXRpYWw7XG4gICAgfVxuICB9XG5cbiAgJltkYXRhLXBsYWNlbWVudF49J2xlZnQnXSA+IC4jeyRuYW1lc3BhY2UtcHJlZml4fS1hcnJvdyB7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAtICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICAgIGJvcmRlci13aWR0aDogKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgMCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogaW5pdGlhbDtcbiAgICB9XG4gIH1cblxuICAmW2RhdGEtcGxhY2VtZW50Xj0ncmlnaHQnXSA+IC4jeyRuYW1lc3BhY2UtcHJlZml4fS1hcnJvdyB7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogLSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItd2lkdGg6ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpICR0b29sdGlwLWFycm93LWhlaWdodCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiBpbml0aWFsO1xuICAgIH1cbiAgfVxuXG4gICZbZGF0YS1pbmVydGlhXVtkYXRhLXN0YXRlPSd2aXNpYmxlJ10ge1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NCwgMS41LCAwLjM4LCAxLjExKTtcbiAgfVxufVxuXG4uI3skbmFtZXNwYWNlLXByZWZpeH0tYXJyb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICBjb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIH1cbn1cblxuLiN7JG5hbWVzcGFjZS1wcmVmaXh9LWNvbnRlbnQge1xuICBtYXgtd2lkdGg6ICR0b29sdGlwLW1heC13aWR0aDtcbiAgcGFkZGluZzogJHRvb2x0aXAtcGFkZGluZy15ICR0b29sdGlwLXBhZGRpbmcteDtcbiAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0b29sdGlwLWJvcmRlci1yYWRpdXMpO1xufVxuIiwiLy8gVG9vbHRpcHNcblxuJHRvb2x0aXAtZm9udC1zaXplOiAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXgtd2lkdGg6ICAgICAgMjAwcHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHRvb2x0aXAtYmc6ICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiR0b29sdGlwLWJvcmRlci1yYWRpdXM6ICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAuOSAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteTogICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXg6ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXJnaW46ICAgICAgICAgMCAhZGVmYXVsdDtcblxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgIC44cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctaGVpZ2h0OiAgIC40cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICR0b29sdGlwLWJnICFkZWZhdWx0O1xuXG4vLyBGb3JtIHRvb2x0aXBzIG11c3QgY29tZSBhZnRlciByZWd1bGFyIHRvb2x0aXBzXG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteTogICAgICAkdG9vbHRpcC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDogICAgICAkdG9vbHRpcC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZTogICAgICAkdG9vbHRpcC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0OiAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eTogICAgICAgICR0b29sdGlwLW9wYWNpdHkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWJvcmRlci1yYWRpdXM6ICAkdG9vbHRpcC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYWxlcnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6ICRhbGVydC1wYWRkaW5nLXkgJGFsZXJ0LXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogJGFsZXJ0LW1hcmdpbi1ib3R0b207XG4gIGJvcmRlcjogJGFsZXJ0LWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYWxlcnQtYm9yZGVyLXJhZGl1cyk7XG59XG5cbi8vIEhlYWRpbmdzIGZvciBsYXJnZXIgYWxlcnRzXG4uYWxlcnQtaGVhZGluZyB7XG4gIC8vIFNwZWNpZmllZCB0byBwcmV2ZW50IGNvbmZsaWN0cyBvZiBjaGFuZ2luZyAkaGVhZGluZ3MtY29sb3JcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi8vIFByb3ZpZGUgY2xhc3MgZm9yIGxpbmtzIHRoYXQgbWF0Y2ggYWxlcnRzXG4uYWxlcnQtbGluayB7XG4gIGZvbnQtd2VpZ2h0OiAkYWxlcnQtbGluay1mb250LXdlaWdodDtcbn1cblxuXG4vLyBEaXNtaXNzaWJsZSBhbGVydHNcbi8vXG4vLyBFeHBhbmQgdGhlIHJpZ2h0IHBhZGRpbmcgYW5kIGFjY291bnQgZm9yIHRoZSBjbG9zZSBidXR0b24ncyBwb3NpdGlvbmluZy5cblxuLmFsZXJ0LWRpc21pc3NpYmxlIHtcbiAgQGluY2x1ZGUgbHRyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkY2xvc2UtZm9udC1zaXplICsgJGFsZXJ0LXBhZGRpbmcteCAqIDI7XG4gIH1cbiAgQGluY2x1ZGUgcnRsIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRjbG9zZS1mb250LXNpemUgKyAkYWxlcnQtcGFkZGluZy14ICogMjtcbiAgfVxuXG4gIC8vIEFkanVzdCBjbG9zZSBsaW5rIHBvc2l0aW9uXG4gIC5jbG9zZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cbiAgICBwYWRkaW5nOiAkYWxlcnQtcGFkZGluZy15ICRhbGVydC1wYWRkaW5nLXg7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuXG4vLyBBbHRlcm5hdGUgc3R5bGVzXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYWxlcnQtbW9kaWZpZXJzXG4vLyBHZW5lcmF0ZSBjb250ZXh0dWFsIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGNvbG9yaXppbmcgdGhlIGFsZXJ0LlxuXG5AaW5jbHVkZSB0aGVtZS12YXJpYW50KCkge1xuICAuYWxlcnQtI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBhbGVydC12YXJpYW50KCB0aGVtZS1jb2xvci1sZXZlbCgkdmFsdWUsICRhbGVydC1iZy1sZXZlbCksICB0aGVtZS1jb2xvci1sZXZlbCgkdmFsdWUsICRhbGVydC1ib3JkZXItbGV2ZWwpLCAgdGhlbWUtY29sb3ItbGV2ZWwoJHZhbHVlLCAkYWxlcnQtY29sb3ItbGV2ZWwpKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBhbGVydC1tb2RpZmllcnNcbiIsIlxuXG4vLyBBbGVydHNcbi8vXG4vLyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGFsZXJ0XG4kYWxlcnQtcGFkZGluZy15OiAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRhbGVydC1wYWRkaW5nLXg6ICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhbGVydC1tYXJnaW4tYm90dG9tOiAgICAgMXJlbSAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItcmFkaXVzOiAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci13aWR0aDogICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYWxlcnQtYmctbGV2ZWw6ICAgICAgICAgIC0xMCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItbGV2ZWw6ICAgICAgLTkgIWRlZmF1bHQ7XG4kYWxlcnQtY29sb3ItbGV2ZWw6ICAgICAgIDYgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGFsZXJ0XG4iLCJAbWl4aW4gYWxlcnQtdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlciwgJGNvbG9yKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRiYWNrZ3JvdW5kKTtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuXG4gIGhyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgNSUpO1xuICB9XG5cbiAgLmFsZXJ0LWxpbmsge1xuICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICB9XG59XG4iLCIvLyBHcmFkaWVudHNcblxuQG1peGluIGdyYWRpZW50LWJnKCRjb2xvcikge1xuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvciBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCBtaXgoJGJvZHktYmcsICRjb2xvciwgMTUlKSwgJGNvbG9yKSByZXBlYXQteDtcbiAgfSBAZWxzZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vIEhvcml6b250YWwgZ3JhZGllbnQsIGZyb20gbGVmdCB0byByaWdodFxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5cbi8vIFZlcnRpY2FsIGdyYWRpZW50LCBmcm9tIHRvcCB0byBib3R0b21cbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXkoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cblxuQG1peGluIGdyYWRpZW50LWRpcmVjdGlvbmFsKCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRkZWc6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5AbWl4aW4gZ3JhZGllbnQteC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQteS10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC1yYWRpYWwoJGlubmVyLWNvbG9yOiAkZ3JheS03MDAsICRvdXRlci1jb2xvcjogJGdyYXktODAwKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUsICRpbm5lci1jb2xvciwgJG91dGVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC1zdHJpcGVkKCRjb2xvcjogcmdiYSgkd2hpdGUsIC4xNSksICRhbmdsZTogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xufVxuIiwiLmMtYXZhdGFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDUwZW07XG4gIEBpbmNsdWRlIGF2YXRhcigkYXZhdGFyLXdpZHRoLCRhdmF0YXItc3RhdHVzLXdpZHRoKTtcbn1cblxuLmMtYXZhdGFyLWltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIGJvcmRlci1yYWRpdXM6IDUwZW07XG59XG5cbi5jLWF2YXRhci1zdGF0dXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlcjogMXB4IHNvbGlkICR3aGl0ZTtcbiAgYm9yZGVyLXJhZGl1czogNTBlbTtcblxuICBAaW5jbHVkZSBsdHIge1xuICAgIHJpZ2h0OiAwO1xuICB9XG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgbGVmdDogMDtcbiAgfVxufVxuXG4uYy1hdmF0YXItc20ge1xuICBAaW5jbHVkZSBhdmF0YXIoJGF2YXRhci1zbS13aWR0aCwkYXZhdGFyLXNtLXN0YXR1cy13aWR0aCk7XG59XG5cbi5jLWF2YXRhci1sZyB7XG4gIEBpbmNsdWRlIGF2YXRhcigkYXZhdGFyLWxnLXdpZHRoLCRhdmF0YXItbGctc3RhdHVzLXdpZHRoKTtcbn1cblxuLmMtYXZhdGFyLXhsIHtcbiAgQGluY2x1ZGUgYXZhdGFyKCRhdmF0YXIteGwtd2lkdGgsJGF2YXRhci14bC1zdGF0dXMtd2lkdGgpO1xufVxuXG4uYy1hdmF0YXJzLXN0YWNrIHtcbiAgZGlzcGxheTogZmxleDtcblxuICAuYy1hdmF0YXIge1xuICAgIG1hcmdpbi1yaWdodDogLSAoJGF2YXRhci13aWR0aCAvIDIpO1xuICAgIHRyYW5zaXRpb246IG1hcmdpbi1yaWdodCAkbGF5b3V0LXRyYW5zaXRpb24tc3BlZWQ7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB9XG4gIH1cblxuICAuYy1hdmF0YXItc20ge1xuICAgIG1hcmdpbi1yaWdodDogLSAoJGF2YXRhci1zbS13aWR0aCAvIDIpO1xuICB9XG5cbiAgLmMtYXZhdGFyLWxnIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0gKCRhdmF0YXItbGctd2lkdGggLyAyKTtcbiAgfVxuXG4gIC5jLWF2YXRhci14bCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtICgkYXZhdGFyLXhsLXdpZHRoIC8gMik7XG4gIH1cbn1cblxuLmMtYXZhdGFyLXJvdW5kZWQge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbn1cblxuLmMtYXZhdGFyLXNxdWFyZSB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4iLCJAbWl4aW4gYXZhdGFyKCR3aWR0aCwgJHN0YXR1cy13aWR0aCkge1xuICB3aWR0aDogJHdpZHRoO1xuICBoZWlnaHQ6ICR3aWR0aDtcbiAgZm9udC1zaXplOiAkd2lkdGggLyAyLjU7XG5cbiAgLmMtYXZhdGFyLXN0YXR1cyB7XG4gICAgd2lkdGg6ICRzdGF0dXMtd2lkdGg7XG4gICAgaGVpZ2h0OiAkc3RhdHVzLXdpZHRoO1xuICB9XG59XG4iLCIvLyBBdmF0YXJzXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYXZhdGFyc1xuJGF2YXRhci1zbS13aWR0aDogICAgICAgICAyNHB4ICFkZWZhdWx0O1xuJGF2YXRhci1zbS1zdGF0dXMtd2lkdGg6ICA4cHggIWRlZmF1bHQ7XG5cbiRhdmF0YXItd2lkdGg6ICAgICAgICAgICAgMzZweCAhZGVmYXVsdDtcbiRhdmF0YXItc3RhdHVzLXdpZHRoOiAgICAgMTBweCAhZGVmYXVsdDtcblxuJGF2YXRhci1sZy13aWR0aDogICAgICAgICA0OHB4ICFkZWZhdWx0O1xuJGF2YXRhci1sZy1zdGF0dXMtd2lkdGg6ICAxMnB4ICFkZWZhdWx0O1xuXG4kYXZhdGFyLXhsLXdpZHRoOiAgICAgICAgIDY0cHggIWRlZmF1bHQ7XG4kYXZhdGFyLXhsLXN0YXR1cy13aWR0aDogIDE0cHggIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGF2YXRhcnNcbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBSZXF1aXJlcyBvbmUgb2YgdGhlIGNvbnRleHR1YWwsIGNvbG9yIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGBjb2xvcmAgYW5kXG4vLyBgYmFja2dyb3VuZC1jb2xvcmAuXG5cbi5iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogJGJhZGdlLXBhZGRpbmcteSAkYmFkZ2UtcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJhZGdlLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkYmFkZ2UtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYmFkZ2UtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJhZGdlLXRyYW5zaXRpb24pO1xuXG4gIEBhdC1yb290IGEjeyZ9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLyBFbXB0eSBiYWRnZXMgY29sbGFwc2UgYXV0b21hdGljYWxseVxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vIFF1aWNrIGZpeCBmb3IgYmFkZ2VzIGluIGJ1dHRvbnNcbi5idG4gLmJhZGdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xcHg7XG59XG5cbi8vIFBpbGwgYmFkZ2VzXG4vL1xuLy8gTWFrZSB0aGVtIGV4dHJhIHJvdW5kZWQgd2l0aCBhIG1vZGlmaWVyIHRvIHJlcGxhY2UgdjMncyBiYWRnZXMuXG5cbi5iYWRnZS1waWxsIHtcbiAgcGFkZGluZy1yaWdodDogJGJhZGdlLXBpbGwtcGFkZGluZy14O1xuICBwYWRkaW5nLWxlZnQ6ICRiYWRnZS1waWxsLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYmFkZ2UtcGlsbC1ib3JkZXItcmFkaXVzKTtcbn1cblxuLy8gQ29sb3JzXG4vL1xuLy8gQ29udGV4dHVhbCB2YXJpYXRpb25zIChsaW5rZWQgYmFkZ2VzIGdldCBkYXJrZXIgb24gOmhvdmVyKS5cblxuQGluY2x1ZGUgdGhlbWUtdmFyaWFudCgpIHtcbiAgLmJhZGdlLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYmFkZ2UtdmFyaWFudCgkdmFsdWUsICRjb2xvcik7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWJsYWNrbGlzdFxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcbiAgQGlmIGxlbmd0aCgkdHJhbnNpdGlvbikgPT0gMCB7XG4gICAgJHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWJhc2U7XG4gIH1cblxuICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA+IDEge1xuICAgIEBlYWNoICR2YWx1ZSBpbiAkdHJhbnNpdGlvbiB7XG4gICAgICBAaWYgJHZhbHVlID09IG51bGwgb3IgJHZhbHVlID09IG5vbmUge1xuICAgICAgICBAd2FybiBcIlRoZSBrZXl3b3JkICdub25lJyBvciAnbnVsbCcgbXVzdCBiZSB1c2VkIGFzIGEgc2luZ2xlIGFyZ3VtZW50LlwiO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgICBAaWYgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBudWxsIHtcbiAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgIH1cblxuICAgIEBpZiAkZW5hYmxlLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tbWVkaWEtcXVlcnkgYW5kIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbnVsbCBhbmQgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBub25lIHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJcbi8vIEJhZGdlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYmFkZ2VzXG4kYmFkZ2UtZm9udC1zaXplOiAgICAgIDc1JSAhZGVmYXVsdDtcbiRiYWRnZS1mb250LXdlaWdodDogICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy15OiAgICAgIC4yNWVtICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmcteDogICAgICAuNGVtICFkZWZhdWx0O1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGJhZGdlLXRyYW5zaXRpb246ICAgJGJ0bi10cmFuc2l0aW9uICFkZWZhdWx0O1xuJGJhZGdlLWZvY3VzLXdpZHRoOiAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcblxuJGJhZGdlLXBpbGwtcGFkZGluZy14OiAgLjZlbSAhZGVmYXVsdDtcbi8vIFVzZSBhIGhpZ2hlciB0aGFuIG5vcm1hbCB2YWx1ZSB0byBlbnN1cmUgY29tcGxldGVseSByb3VuZGVkIGVkZ2VzIHdoZW5cbi8vIGN1c3RvbWl6aW5nIHBhZGRpbmcgb3IgZm9udC1zaXplIG9uIGxhYmVscy5cbiRiYWRnZS1waWxsLWJvcmRlci1yYWRpdXM6ICAxMHJlbSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYmFkZ2VzXG5cbiIsIkBtaXhpbiBiYWRnZS12YXJpYW50KCRiZywgJGNvbG9yKSB7XG4gIGNvbG9yOiBjb2xvci15aXEoJGJnKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJnO1xuXG4gIEBhdC1yb290ICN7c3RyLXJlcGxhY2UoI3smfSwgXCIuYmFkZ2UtI3skY29sb3J9XCIsIFwiIFwiKX0gYS5iYWRnZS0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgY29sb3I6IGNvbG9yLXlpcSgkYmcpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiZywgMTAlKTtcbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgb3V0bGluZTogMDtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRiYWRnZS1mb2N1cy13aWR0aCByZ2JhKCRiZywgLjUpO1xuICAgIH1cbiAgfVxufVxuIiwiLmJyZWFkY3J1bWItbWVudSB7XG4gIEBpbmNsdWRlIGx0ciB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbiAgQGluY2x1ZGUgbHRyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cblxuXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5idG4tZ3JvdXAge1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIH1cblxuICAuYnRuIHtcbiAgICBwYWRkaW5nOiAwICRpbnB1dC1idG4tcGFkZGluZy14O1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgYm9yZGVyOiAwO1xuXG4gICAgJjpob3ZlcixcbiAgICAmLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gICAgQGluY2x1ZGUgdGhlbWVzKCR0eXBvZ3JhcGh5LXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInRleHQtbXV0ZWRcIik7XG4gICAgfVxuICB9XG5cbiAgLnNob3cge1xuICAgIC5idG4ge1xuICAgICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIG1pbi13aWR0aDogMTgwcHg7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICB9XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5icmVhZGNydW1iIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nOiAkYnJlYWRjcnVtYi1wYWRkaW5nLXkgJGJyZWFkY3J1bWItcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAkYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJyZWFkY3J1bWItZm9udC1zaXplKTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm9yZGVycygkYnJlYWRjcnVtYi1ib3JkZXJzKTtcblxuICBAaW5jbHVkZSB0aGVtZXMoJGJyZWFkY3J1bWItdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiYnJlYWRjcnVtYi1iZ1wiKTtcbiAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJicmVhZGNydW1iLWJvcmRlci1jb2xvclwiKTtcbiAgfVxufVxuXG4uYnJlYWRjcnVtYi1pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcblxuICAvLyBUaGUgc2VwYXJhdG9yIGJldHdlZW4gYnJlYWRjcnVtYnMgKGJ5IGRlZmF1bHQsIGEgZm9yd2FyZC1zbGFzaDogXCIvXCIpXG4gICsgLmJyZWFkY3J1bWItaXRlbSB7XG4gICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgIHBhZGRpbmctbGVmdDogJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nO1xuICAgIH1cbiAgICBAaW5jbHVkZSBydGwge1xuICAgICAgcGFkZGluZy1yaWdodDogJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIFN1cHByZXNzIHVuZGVybGluaW5nIG9mIHRoZSBzZXBhcmF0b3IgaW4gbW9kZXJuIGJyb3dzZXJzXG4gICAgICBAaW5jbHVkZSB0aGVtZXMoJGJyZWFkY3J1bWItdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJicmVhZGNydW1iLWRpdmlkZXItY29sb3JcIik7XG4gICAgICB9XG4gICAgICBjb250ZW50OiBlc2NhcGUtc3ZnKCRicmVhZGNydW1iLWRpdmlkZXIpO1xuICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gSUU5LTExIGhhY2sgdG8gcHJvcGVybHkgaGFuZGxlIGh5cGVybGluayB1bmRlcmxpbmVzIGZvciBicmVhZGNydW1icyBidWlsdFxuICAvLyB3aXRob3V0IGA8dWw+YHMuIFRoZSBgOjpiZWZvcmVgIHBzZXVkby1lbGVtZW50IGdlbmVyYXRlcyBhbiBlbGVtZW50XG4gIC8vICp3aXRoaW4qIHRoZSAuYnJlYWRjcnVtYi1pdGVtIGFuZCB0aGVyZWJ5IGluaGVyaXRzIHRoZSBgdGV4dC1kZWNvcmF0aW9uYC5cbiAgLy9cbiAgLy8gVG8gdHJpY2sgSUUgaW50byBzdXBwcmVzc2luZyB0aGUgdW5kZXJsaW5lLCB3ZSBnaXZlIHRoZSBwc2V1ZG8tZWxlbWVudCBhblxuICAvLyB1bmRlcmxpbmUgYW5kIHRoZW4gaW1tZWRpYXRlbHkgcmVtb3ZlIGl0LlxuICArIC5icmVhZGNydW1iLWl0ZW06aG92ZXI6OmJlZm9yZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbiAgKyAuYnJlYWRjcnVtYi1pdGVtOmhvdmVyOjpiZWZvcmUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICYuYWN0aXZlIHtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGJyZWFkY3J1bWItdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiYnJlYWRjcnVtYi1hY3RpdmUtY29sb3JcIik7XG4gICAgfVxuICB9XG59XG4iLCJAbWl4aW4gYm9yZGVycygkYm9yZGVycywgJHJldmVyc2U6IGZhbHNlKSB7XG4gIEBlYWNoICRib3JkZXIgaW4gJGJvcmRlcnMge1xuICAgICRkaXJlY3Rpb246IG50aCgkYm9yZGVyLCAxKTtcbiAgICBAaWYgJGRpcmVjdGlvbiA9PSBcImFsbFwiIHtcbiAgICAgIGJvcmRlcjogbWFwLWdldCgkYm9yZGVycywgJGRpcmVjdGlvbik7XG4gICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwidG9wXCIge1xuICAgICAgYm9yZGVyLXRvcDogbWFwLWdldCgkYm9yZGVycywgJGRpcmVjdGlvbik7XG4gICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwicmlnaHRcIiB7XG4gICAgICBAaWYgJHJldmVyc2Uge1xuICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgIGJvcmRlci1sZWZ0OiBtYXAtZ2V0KCRib3JkZXJzLCAkZGlyZWN0aW9uKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBib3JkZXItcmlnaHQ6IG1hcC1nZXQoJGJvcmRlcnMsICRkaXJlY3Rpb24pO1xuICAgICAgfVxuICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBcImJvdHRvbVwiIHtcbiAgICAgIGJvcmRlci1ib3R0b206IG1hcC1nZXQoJGJvcmRlcnMsICRkaXJlY3Rpb24pO1xuICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBcImxlZnRcIiB7XG4gICAgICBib3JkZXItbGVmdDogbWFwLWdldCgkYm9yZGVycywgJGRpcmVjdGlvbik7XG4gICAgICBAaWYgJHJldmVyc2Uge1xuICAgICAgICBib3JkZXItcmlnaHQ6IG1hcC1nZXQoJGJvcmRlcnMsICRkaXJlY3Rpb24pO1xuICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBib3JkZXItbGVmdDogbWFwLWdldCgkYm9yZGVycywgJGRpcmVjdGlvbik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBib3JkZXJzLXNoYWRvdygkYm9yZGVycywgJHJldmVyc2U6IGZhbHNlKSB7XG4gIEBlYWNoICRib3JkZXIgaW4gJGJvcmRlcnMge1xuICAgICRkaXJlY3Rpb246IG50aCgkYm9yZGVyLCAxKTtcbiAgICBAaWYgJGRpcmVjdGlvbiA9PSBcImFsbFwiIHtcbiAgICAgICRzaXplOiBtYXAtZ2V0KG1hcC1nZXQoJGJvcmRlcnMsICRkaXJlY3Rpb24pLCBzaXplKTtcbiAgICAgICRjb2xvcjogbWFwLWdldChtYXAtZ2V0KCRib3JkZXJzLCAkZGlyZWN0aW9uKSwgY29sb3IpO1xuICAgICAgYm94LXNoYWRvdzogJHNpemUgJHN0eWxlICRjb2xvciBpbnNldDtcbiAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gXCJ0b3BcIiB7XG4gICAgICAkc2l6ZTogbWFwLWdldChtYXAtZ2V0KCRib3JkZXJzLCAkZGlyZWN0aW9uKSwgc2l6ZSk7XG4gICAgICAkY29sb3I6IG1hcC1nZXQobWFwLWdldCgkYm9yZGVycywgJGRpcmVjdGlvbiksIGNvbG9yKTtcbiAgICAgIGJveC1zaGFkb3c6IDAgLSAkc2l6ZSAkc2l6ZSAtICRzaXplICRjb2xvciBpbnNldDtcbiAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gXCJyaWdodFwiIHtcbiAgICAgICRzaXplOiBtYXAtZ2V0KG1hcC1nZXQoJGJvcmRlcnMsICRkaXJlY3Rpb24pLCBzaXplKTtcbiAgICAgICRjb2xvcjogbWFwLWdldChtYXAtZ2V0KCRib3JkZXJzLCAkZGlyZWN0aW9uKSwgY29sb3IpO1xuICAgICAgQGlmICRyZXZlcnNlIHtcbiAgICAgICAgYm94LXNoYWRvdzogJHNpemUgMCAkc2l6ZSAtICRzaXplICRjb2xvciBpbnNldDtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBib3gtc2hhZG93OiAtICRzaXplIDAgJHNpemUgLSAkc2l6ZSAkY29sb3IgaW5zZXQ7XG4gICAgICB9XG4gICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwiYm90dG9tXCIge1xuICAgICAgJHNpemU6IG1hcC1nZXQobWFwLWdldCgkYm9yZGVycywgJGRpcmVjdGlvbiksIHNpemUpO1xuICAgICAgJGNvbG9yOiBtYXAtZ2V0KG1hcC1nZXQoJGJvcmRlcnMsICRkaXJlY3Rpb24pLCBjb2xvcik7XG4gICAgICBib3gtc2hhZG93OiAwICRzaXplICRzaXplIC0gJHNpemUgJGNvbG9yIGluc2V0O1xuICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBcImxlZnRcIiB7XG4gICAgICAkc2l6ZTogbWFwLWdldChtYXAtZ2V0KCRib3JkZXJzLCAkZGlyZWN0aW9uKSwgc2l6ZSk7XG4gICAgICAkY29sb3I6IG1hcC1nZXQobWFwLWdldCgkYm9yZGVycywgJGRpcmVjdGlvbiksIGNvbG9yKTtcbiAgICAgIGJveC1zaGFkb3c6ICRzaXplIDAgJHNpemUgLSAkc2l6ZSAkY29sb3IgaW5zZXQ7XG4gICAgICBAaWYgJHJldmVyc2Uge1xuICAgICAgICBib3gtc2hhZG93OiAtICRzaXplIDAgJHNpemUgLSAkc2l6ZSAkY29sb3IgaW5zZXQ7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgYm94LXNoYWRvdzogJHNpemUgMCAkc2l6ZSAtICRzaXplICRjb2xvciBpbnNldDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEJyZWFkY3J1bWJzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBicmVhZGNydW1iXG4kYnJlYWRjcnVtYi1mb250LXNpemU6ICAgICBudWxsICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy15OiAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy14OiAgICAgMXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWl0ZW0tcGFkZGluZzogIC41cmVtICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tOiAgMS41cmVtICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1kaXZpZGVyOiAgcXVvdGUoXCIvXCIpICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzOiAgMCAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItYm9yZGVyczogICggYm90dG9tOiAxcHggc29saWQgKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYnJlYWRjcnVtYlxuXG4vLyBEZWZhdWx0IHRoZW1lXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnJlYWRjcnVtYi1kZWZhdWx0LXRoZW1lXG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1ib3JkZXItY29sb3I6ICAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I6ICAgJGdyYXktNjAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBicmVhZGNydW1iLWRlZmF1bHQtdGhlbWVcblxuJGJyZWFkY3J1bWItdGhlbWUtbWFwOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kYnJlYWRjcnVtYi10aGVtZS1tYXA6IG1hcC1tZXJnZShcbiAgKFxuICAgIGRlZmF1bHQ6IChcbiAgICAgIFwiYnJlYWRjcnVtYi1iZ1wiOiAgICAgICAgICAgICAkYnJlYWRjcnVtYi1iZyxcbiAgICAgIFwiYnJlYWRjcnVtYi1ib3JkZXItY29sb3JcIjogICAkYnJlYWRjcnVtYi1ib3JkZXItY29sb3IsXG4gICAgICBcImJyZWFkY3J1bWItZGl2aWRlci1jb2xvclwiOiAgJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcixcbiAgICAgIFwiYnJlYWRjcnVtYi1hY3RpdmUtY29sb3JcIjogICAkYnJlYWRjcnVtYi1hY3RpdmUtY29sb3JcbiAgICApXG4gICksXG4gICRicmVhZGNydW1iLXRoZW1lLW1hcFxuKTtcbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vLyBNYWtlIHRoZSBkaXYgYmVoYXZlIGxpa2UgYSBidXR0b25cbi5idG4tZ3JvdXAsXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLy8gbWF0Y2ggLmJ0biBhbGlnbm1lbnQgZ2l2ZW4gZm9udC1zaXplIGhhY2sgYWJvdmVcblxuICA+IC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAmOm5vdChbY2xhc3MqPVwiZ2hvc3RcIl0pOm5vdChbY2xhc3MqPVwibGlua1wiXSk6bm90KFtjbGFzcyo9XCJvdXRsaW5lXCJdKTpub3QoW2NsYXNzKj1cInRyYW5zcGFyZW50XCJdKSB7XG4gICAgICBAaW5jbHVkZSBlbGV2YXRpb24oMCk7XG4gICAgICBAaW5jbHVkZSBlbGV2YXRpb24oMSwgZmFsc2UsIHRydWUpO1xuICAgIH1cblxuICAgIC8vIEJyaW5nIHRoZSBob3ZlciwgZm9jdXNlZCwgYW5kIFwiYWN0aXZlXCIgYnV0dG9ucyB0byB0aGUgZnJvbnQgdG8gb3ZlcmxheVxuICAgIC8vIHRoZSBib3JkZXJzIHByb3Blcmx5XG4gICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cbiAgICAmOmZvY3VzLFxuICAgICY6YWN0aXZlLFxuICAgICYuYWN0aXZlIHtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICB9XG4gIEBpZiAkZW5hYmxlLWVsZXZhdGlvbnMge1xuICAgICY6bm90KC5zaG93KSB7XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cbiAgICAuYnRuLWdyb3VwLFxuICAgIC5idG4tZ3JvdXAtdmVydGljYWwge1xuICAgICAgei1pbmRleDogaW5pdGlhbDtcbiAgICB9XG4gIH1cbn1cblxuLy8gT3B0aW9uYWw6IEdyb3VwIG11bHRpcGxlIGJ1dHRvbiBncm91cHMgdG9nZXRoZXIgZm9yIGEgdG9vbGJhclxuLmJ0bi10b29sYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4uYnRuLWdyb3VwIHtcbiAgLy8gUHJldmVudCBkb3VibGUgYm9yZGVycyB3aGVuIGJ1dHRvbnMgYXJlIG5leHQgdG8gZWFjaCBvdGhlclxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJGJ0bi1ib3JkZXItd2lkdGg7XG4gICAgfVxuICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0kYnRuLWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCByb3VuZGVkIGNvcm5lcnNcbiAgQGluY2x1ZGUgbHRyIHtcbiAgICA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4gICAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gICAgfVxuXG4gICAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuICAgID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG4gICAgfVxuXG4gICAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgYnV0dG9uIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llciBtYW5pcHVsYXRpb24uXG5cbi5idG4tZ3JvdXAtc20gPiAuYnRuIHsgQGV4dGVuZCAuYnRuLXNtOyB9XG4uYnRuLWdyb3VwLWxnID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1sZzsgfVxuXG5cbi8vXG4vLyBTcGxpdCBidXR0b24gZHJvcGRvd25zXG4vL1xuXG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXggKiAuNzU7XG5cbiAgJjo6YWZ0ZXIsXG4gIC5kcm9wdXAgJjo6YWZ0ZXIsXG4gIC5kcm9wcmlnaHQgJjo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB9XG4gIH1cblxuICAuZHJvcGxlZnQgJjo6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbiAgICBAaW5jbHVkZSBydGwge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi5idG4tc20gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtc20gKiAuNzU7XG59XG5cbi5idG4tbGcgKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG4gIHBhZGRpbmctbGVmdDogJGJ0bi1wYWRkaW5nLXgtbGcgKiAuNzU7XG59XG5cblxuLy8gVGhlIGNsaWNrYWJsZSBidXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBtZW51XG4vLyBTZXQgdGhlIHNhbWUgaW5zZXQgc2hhZG93IGFzIHRoZSA6YWN0aXZlIHN0YXRlXG5cbi5idG4tZ3JvdXAuc2hvdyAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcblxuICAvLyBTaG93IG5vIHNoYWRvdyBmb3IgYC5idG4tbGlua2Agc2luY2UgaXQgaGFzIG5vIG90aGVyIGJ1dHRvbiBzdHlsZXMuXG4gICYuYnRuLWxpbmsge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gVmVydGljYWwgYnV0dG9uIGdyb3Vwc1xuLy9cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXRvcDogLSRidG4tYm9yZGVyLXdpZHRoO1xuICB9XG5cbiAgLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXG4gID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgfVxuXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveCBhbmQgcmFkaW8gb3B0aW9uc1xuLy9cbi8vIEluIG9yZGVyIHRvIHN1cHBvcnQgdGhlIGJyb3dzZXIncyBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2ssIHBvd2VyZWQgYnkgdGhlXG4vLyBgcmVxdWlyZWRgIGF0dHJpYnV0ZSwgd2UgaGF2ZSB0byBcImhpZGVcIiB0aGUgaW5wdXRzIHZpYSBgY2xpcGAuIFdlIGNhbm5vdCB1c2Vcbi8vIGBkaXNwbGF5OiBub25lO2Agb3IgYHZpc2liaWxpdHk6IGhpZGRlbjtgIGFzIHRoYXQgYWxzbyBoaWRlcyB0aGUgcG9wb3Zlci5cbi8vIFNpbXBseSB2aXN1YWxseSBoaWRpbmcgdGhlIGlucHV0cyB2aWEgYG9wYWNpdHlgIHdvdWxkIGxlYXZlIHRoZW0gY2xpY2thYmxlIGluXG4vLyBjZXJ0YWluIGNhc2VzIHdoaWNoIGlzIHByZXZlbnRlZCBieSB1c2luZyBgY2xpcGAgYW5kIGBwb2ludGVyLWV2ZW50c2AuXG4vLyBUaGlzIHdheSwgd2UgZW5zdXJlIGEgRE9NIGVsZW1lbnQgaXMgdmlzaWJsZSB0byBwb3NpdGlvbiB0aGUgcG9wb3ZlciBmcm9tLlxuLy9cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMjc5NCBhbmRcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzE0NTU5IGZvciBtb3JlIGluZm9ybWF0aW9uLlxuXG4uYnRuLWdyb3VwLXRvZ2dsZSB7XG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwID4gLmJ0biB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgZGVmYXVsdCBgPGxhYmVsPmAgdmFsdWVcblxuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiQG1peGluIGFkZC1lbGV2YXRpb24oJGxldmVsLCAkZGlyZWN0aW9uOiBmYWxzZSkge1xuICBib3JkZXI6IDA7XG4gIEBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gICAgYm94LXNoYWRvdzogc3RyLXJlcGxhY2UodW5xdW90ZShtYXAtZ2V0KCRlbGV2YXRpb25zLCAkbGV2ZWwpKSwgXCJ2YXIoLS1lbGV2YXRpb24tYmFzZS1jb2xvcilcIiwgJGVsZXZhdGlvbi1iYXNlLWNvbG9yKTtcbiAgfVxuICBib3gtc2hhZG93OiB1bnF1b3RlKG1hcC1nZXQoJGVsZXZhdGlvbnMsICRsZXZlbCkpO1xuXG4gIEBpZiAkZGlyZWN0aW9uID09IFwiYm90dG9tXCIge1xuICAgIGNsaXAtcGF0aDogaW5zZXQoMCAwIC0xMDAwcHggMCk7XG4gIH1cbn1cblxuQG1peGluIGFkZC1lbGV2YXRpb24tYmVmb3JlKCRsZXZlbCwgJGRpcmVjdGlvbikge1xuICBib3JkZXI6IDA7XG4gICY6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1yYWRpdXM6IGluaGVyaXQ7XG4gICAgQGluY2x1ZGUgYWRkLWVsZXZhdGlvbigkbGV2ZWwsICRkaXJlY3Rpb24pO1xuICB9XG59XG5cbkBtaXhpbiBlbGV2YXRpb24oJGxldmVsLCAkZGlyZWN0aW9uOiBmYWxzZSwgJGJlZm9yZTogZmFsc2UpIHtcbiAgQGlmICRlbmFibGUtZWxldmF0aW9ucyB7XG4gICAgJHNlbGVjdG9yOiBzZWxlY3Rvci1hcHBlbmQoXCIuYy1hcHBcIik7XG4gICAgQGVhY2ggJHRoZW1lIGluIG1hcC1rZXlzKCRvcHRpb25zKSB7XG4gICAgICBAaWYgbWFwLWhhcy1rZXkobWFwLWdldCgkb3B0aW9ucywgJHRoZW1lKSwgXCJlbmFibGUtZWxldmF0aW9uc1wiKSB7XG4gICAgICAgIEBpZiAobWFwLWdldCgobWFwLWdldCgkb3B0aW9ucywgJHRoZW1lKSksIFwiZW5hYmxlLWVsZXZhdGlvbnNcIikgPT0gZmFsc2UpIHtcbiAgICAgICAgICAkc2VsZWN0b3I6IHNlbGVjdG9yLWFwcGVuZCgkc2VsZWN0b3IsIFwiOm5vdCguYy0jeyR0aGVtZX0jeyR0aGVtZS1zdWZmaXh9KVwiKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAoJHNlbGVjdG9yICE9IHNlbGVjdG9yLWFwcGVuZChcIi5jLWFwcFwiKSkge1xuICAgICAgI3skc2VsZWN0b3J9ICYge1xuICAgICAgICBAaWYgJGJlZm9yZSA9PSB0cnVlIHtcbiAgICAgICAgICBAaW5jbHVkZSBhZGQtZWxldmF0aW9uLWJlZm9yZSgkbGV2ZWwsICRkaXJlY3Rpb24pO1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICBAaW5jbHVkZSBhZGQtZWxldmF0aW9uKCRsZXZlbCwgJGRpcmVjdGlvbik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgICYge1xuICAgICAgICBAaWYgJGJlZm9yZSA9PSB0cnVlIHtcbiAgICAgICAgICBAaW5jbHVkZSBhZGQtZWxldmF0aW9uLWJlZm9yZSgkbGV2ZWwsICRkaXJlY3Rpb24pO1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICBAaW5jbHVkZSBhZGQtZWxldmF0aW9uKCRsZXZlbCwgJGRpcmVjdGlvbik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiAkYnRuLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGJ0bi1mb250LXdlaWdodDtcbiAgY29sb3I6ICRib2R5LWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgd2hpdGUtc3BhY2U6ICRidG4td2hpdGUtc3BhY2U7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGN1cnNvcjogaWYoJGVuYWJsZS1wb2ludGVyLWN1cnNvci1mb3ItYnV0dG9ucywgcG9pbnRlciwgbnVsbCk7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAkYnRuLWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXksICRidG4tcGFkZGluZy14LCAkYnRuLWZvbnQtc2l6ZSwgJGJ0bi1saW5lLWhlaWdodCwgJGJ0bi1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYnRuLXRyYW5zaXRpb24pO1xuICAmOm5vdChbY2xhc3MqPVwiZ2hvc3RcIl0pOm5vdChbY2xhc3MqPVwibGlua1wiXSk6bm90KFtjbGFzcyo9XCJvdXRsaW5lXCJdKTpub3QoW2NsYXNzKj1cInRyYW5zcGFyZW50XCJdKSB7XG4gICAgQGluY2x1ZGUgZWxldmF0aW9uKDEpO1xuICB9XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAmOm5vdChbY2xhc3MqPVwiZ2hvc3RcIl0pOm5vdChbY2xhc3MqPVwibGlua1wiXSk6bm90KFtjbGFzcyo9XCJvdXRsaW5lXCJdKTpub3QoW2NsYXNzKj1cInRyYW5zcGFyZW50XCJdKSB7XG4gICAgICBAaW5jbHVkZSBlbGV2YXRpb24oMik7XG4gICAgfVxuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiAkYnRuLWZvY3VzLWJveC1zaGFkb3c7XG4gICAgJjpub3QoW2NsYXNzKj1cImdob3N0XCJdKTpub3QoW2NsYXNzKj1cImxpbmtcIl0pOm5vdChbY2xhc3MqPVwib3V0bGluZVwiXSk6bm90KFtjbGFzcyo9XCJ0cmFuc3BhcmVudFwiXSkge1xuICAgICAgQGluY2x1ZGUgZWxldmF0aW9uKDQpO1xuICAgIH1cbiAgfVxuXG4gIC8vIERpc2FibGVkIGNvbWVzIGZpcnN0IHNvIGFjdGl2ZSBjYW4gcHJvcGVybHkgcmVzdHlsZVxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAkYnRuLWRpc2FibGVkLW9wYWNpdHk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkge1xuICAgIGN1cnNvcjogaWYoJGVuYWJsZS1wb2ludGVyLWN1cnNvci1mb3ItYnV0dG9ucywgcG9pbnRlciwgbnVsbCk7XG5cbiAgICAmOmFjdGl2ZSxcbiAgICAmLmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWZvY3VzLWJveC1zaGFkb3csICRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGksXG4gIC5jLWljb24ge1xuICAgIGhlaWdodDogJGJ0bi1mb250LXNpemU7XG4gICAgbWFyZ2luOiAoKCgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSkgLSAkZm9udC1zaXplLWJhc2UpIC8gMikgMDtcbiAgfVxufVxuXG4vLyBGdXR1cmUtcHJvb2YgZGlzYWJsaW5nIG9mIGNsaWNrcyBvbiBgPGE+YCBlbGVtZW50c1xuYS5idG4uZGlzYWJsZWQsXG5maWVsZHNldDpkaXNhYmxlZCBhLmJ0biB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG5cbi8vXG4vLyBBbHRlcm5hdGUgYnV0dG9uc1xuLy9cblxuQGluY2x1ZGUgdGhlbWUtdmFyaWFudCgpIHtcbiAgLmJ0bi0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCR2YWx1ZSwgJHZhbHVlKTtcbiAgfVxufVxuXG4uYnRuLXRyYW5zcGFyZW50IHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjgpO1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpO1xuICB9XG59XG5cbkBpbmNsdWRlIHRoZW1lLXZhcmlhbnQoKSB7XG4gIC5idG4tb3V0bGluZS0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBMaW5rIGJ1dHRvbnNcbi8vXG5cbi8vIE1ha2UgYSBidXR0b24gbG9vayBhbmQgYmVoYXZlIGxpa2UgYSBsaW5rXG4uYnRuLWxpbmsge1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWRlY29yYXRpb247XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxuXG4gICY6ZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkYnRuLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cblxuICAvLyBObyBuZWVkIGZvciBhbiBhY3RpdmUgc3RhdGUgaGVyZVxufVxuXG5cbi8vXG4vLyBCdXR0b24gU2l6ZXNcbi8vXG5cbi5idG4tbGcge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteS1sZywgJGJ0bi1wYWRkaW5nLXgtbGcsICRidG4tZm9udC1zaXplLWxnLCAkYnRuLWxpbmUtaGVpZ2h0LWxnLCAkYnRuLWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4uYnRuLXNtIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXktc20sICRidG4tcGFkZGluZy14LXNtLCAkYnRuLWZvbnQtc2l6ZS1zbSwgJGJ0bi1saW5lLWhlaWdodC1zbSwgJGJ0bi1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuXG4vL1xuLy8gQmxvY2sgYnV0dG9uXG4vL1xuXG4uYnRuLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIC8vIFZlcnRpY2FsbHkgc3BhY2Ugb3V0IG11bHRpcGxlIGJsb2NrIGJ1dHRvbnNcbiAgKyAuYnRuLWJsb2NrIHtcbiAgICBtYXJnaW4tdG9wOiAkYnRuLWJsb2NrLXNwYWNpbmcteTtcbiAgfVxufVxuXG4vLyBTcGVjaWZpY2l0eSBvdmVycmlkZXNcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdIHtcbiAgJi5idG4tYmxvY2sge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5idG4tcGlsbCB7XG4gIGJvcmRlci1yYWRpdXM6IDUwZW07XG59XG5cbi5idG4tc3F1YXJlIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLy9cbi8vIEdob3N0IGJ1dHRvblxuLy9cblxuQGluY2x1ZGUgdGhlbWUtdmFyaWFudCgpIHtcbiAgLmJ0bi1naG9zdC0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1naG9zdC12YXJpYW50KCR2YWx1ZSk7XG4gIH1cbn1cblxuLy9cbi8vIEJyYW5kIGJ1dHRvblxuLy9cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJGJyYW5kcy1jb2xvcnMge1xuICAuYnRuLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJHZhbHVlLCAkdmFsdWUpO1xuICB9XG59XG5cbi8vIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICRicmFuZHMtY29sb3JzIHtcbi8vICAgLmJ0bi1vdXRsaW5lLSN7JGNvbG9yfSB7XG4vLyAgICAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkdmFsdWUpO1xuLy8gICB9XG4vLyB9XG4iLCIvLyBCdXR0b24gdmFyaWFudHNcbi8vXG4vLyBFYXNpbHkgcHVtcCBvdXQgZGVmYXVsdCBzdHlsZXMsIGFzIHdlbGwgYXMgOmhvdmVyLCA6Zm9jdXMsIDphY3RpdmUsXG4vLyBhbmQgZGlzYWJsZWQgb3B0aW9ucyBmb3IgYWxsIGJ1dHRvbnNcblxuQG1peGluIGJ1dHRvbi12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkaG92ZXItYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCA3LjUlKSwgJGhvdmVyLWJvcmRlcjogZGFya2VuKCRib3JkZXIsIDEwJSksICRhY3RpdmUtYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCAxMCUpLCAkYWN0aXZlLWJvcmRlcjogZGFya2VuKCRib3JkZXIsIDEyLjUlKSkge1xuICBjb2xvcjogY29sb3IteWlxKCRiYWNrZ3JvdW5kKTtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGJhY2tncm91bmQpO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1ib3gtc2hhZG93KTtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkaG92ZXItYmFja2dyb3VuZCk7XG4gICAgYm9yZGVyLWNvbG9yOiAkaG92ZXItYm9yZGVyO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkaG92ZXItYmFja2dyb3VuZCk7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIGJvcmRlci1jb2xvcjogJGhvdmVyLWJvcmRlcjtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KGNvbG9yLXlpcSgkYmFja2dyb3VuZCksICRib3JkZXIsIDE1JSksIC41KSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KGNvbG9yLXlpcSgkYmFja2dyb3VuZCksICRib3JkZXIsIDE1JSksIC41KTtcbiAgICB9XG4gIH1cblxuICAvLyBEaXNhYmxlZCBjb21lcyBmaXJzdCBzbyBhY3RpdmUgY2FuIHByb3Blcmx5IHJlc3R5bGVcbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIH1cbiAgfVxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgLnNob3cgPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYWN0aXZlLWJhY2tncm91bmQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBncmFkaWVudCBmb3IgdGhlIHByZXNzZWQvYWN0aXZlIHN0YXRlXG4gICAgfVxuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3MgYW5kICRidG4tYWN0aXZlLWJveC1zaGFkb3cgIT0gbm9uZSB7XG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSkpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBhdC1yb290ICN7c3RyLXJlcGxhY2UoI3smfSwgXCIuYnRuLVwiLCBcIi5zaG93ID4gLmJ0bi1cIil9LmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYWN0aXZlLWJhY2tncm91bmQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBncmFkaWVudCBmb3IgdGhlIHByZXNzZWQvYWN0aXZlIHN0YXRlXG4gICAgfVxuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3MgYW5kICRidG4tYWN0aXZlLWJveC1zaGFkb3cgIT0gbm9uZSB7XG4gICAgICAgIGJveC1zaGFkb3c6ICRidG4tYWN0aXZlLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkY29sb3IsICRjb2xvci1ob3ZlcjogY29sb3IteWlxKCRjb2xvciksICRhY3RpdmUtYmFja2dyb3VuZDogJGNvbG9yLCAkYWN0aXZlLWJvcmRlcjogJGNvbG9yKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRhY3RpdmUtYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3MgYW5kICRidG4tYWN0aXZlLWJveC1zaGFkb3cgIT0gbm9uZSB7XG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGF0LXJvb3QgI3tzdHItcmVwbGFjZSgjeyZ9LCBcIi5idG4tXCIsIFwiLnNob3cgPiAuYnRuLVwiKX0uZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRhY3RpdmUtYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3MgYW5kICRidG4tYWN0aXZlLWJveC1zaGFkb3cgIT0gbm9uZSB7XG4gICAgICAgIGJveC1zaGFkb3c6ICRidG4tYWN0aXZlLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEJ1dHRvbiBzaXplc1xuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gIC8vIE1hbnVhbGx5IGRlY2xhcmUgdG8gcHJvdmlkZSBhbiBvdmVycmlkZSB0byB0aGUgYnJvd3NlciBkZWZhdWx0XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMsIDApO1xuXG4gIGksXG4gIC5jLWljb24ge1xuICAgIHdpZHRoOiAkZm9udC1zaXplO1xuICAgIGhlaWdodDogJGZvbnQtc2l6ZTtcbiAgICBtYXJnaW46ICgoKCRmb250LXNpemUgKiAkbGluZS1oZWlnaHQpIC0gJGZvbnQtc2l6ZSkgLyAyKSAwO1xuICB9XG59XG5cbi8vIEJ1dHRvbiBHaG9zdFxuXG5AbWl4aW4gYnV0dG9uLWdob3N0LXZhcmlhbnQoJGNvbG9yLCAkY29sb3ItaG92ZXI6IGNvbG9yLXlpcSgkY29sb3IpLCAkYWN0aXZlLWJhY2tncm91bmQ6ICRjb2xvciwgJGFjdGl2ZS1ib3JkZXI6ICRjb2xvcikge1xuICBjb2xvcjogJGNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlIHtcbiAgICBjb2xvcjogY29sb3IteWlxKCRhY3RpdmUtYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3MgYW5kICRidG4tYWN0aXZlLWJveC1zaGFkb3cgIT0gbm9uZSB7XG4gICAgICAgIGJveC1zaGFkb3c6ICRidG4tYWN0aXZlLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBhdC1yb290ICN7c3RyLXJlcGxhY2UoI3smfSwgXCIuYnRuLVwiLCBcIi5zaG93ID4gLmJ0bi1cIil9LmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYWN0aXZlLWJhY2tncm91bmQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIGFuZCAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93ICE9IG5vbmUge1xuICAgICAgICBib3gtc2hhZG93OiAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiXG4vLyBCcmFuZCBDb2xvcnNcblxuJGZhY2Vib29rOiAgICAgICAgIzNiNTk5OCAhZGVmYXVsdDtcbiR0d2l0dGVyOiAgICAgICAgICMwMGFjZWQgIWRlZmF1bHQ7XG4kbGlua2VkaW46ICAgICAgICAjNDg3NWI0ICFkZWZhdWx0O1xuJGZsaWNrcjogICAgICAgICAgI2ZmMDA4NCAhZGVmYXVsdDtcbiR0dW1ibHI6ICAgICAgICAgICMzMjUwNmQgIWRlZmF1bHQ7XG4keGluZzogICAgICAgICAgICAjMDI2NDY2ICFkZWZhdWx0O1xuJGdpdGh1YjogICAgICAgICAgIzQxODNjNCAhZGVmYXVsdDtcbiRzdGFjay1vdmVyZmxvdzogICNmZTdhMTUgIWRlZmF1bHQ7XG4keW91dHViZTogICAgICAgICAjYjAwICFkZWZhdWx0O1xuJGRyaWJiYmxlOiAgICAgICAgI2VhNGM4OSAhZGVmYXVsdDtcbiRpbnN0YWdyYW06ICAgICAgICM1MTdmYTQgIWRlZmF1bHQ7XG4kcGludGVyZXN0OiAgICAgICAjY2IyMDI3ICFkZWZhdWx0O1xuJHZrOiAgICAgICAgICAgICAgIzQ1NjY4ZSAhZGVmYXVsdDtcbiR5YWhvbzogICAgICAgICAgICM0MDAxOTEgIWRlZmF1bHQ7XG4kYmVoYW5jZTogICAgICAgICAjMTc2OWZmICFkZWZhdWx0O1xuJHJlZGRpdDogICAgICAgICAgI2ZmNDUwMCAhZGVmYXVsdDtcbiR2aW1lbzogICAgICAgICAgICNhYWQ0NTAgIWRlZmF1bHQ7XG5cbiRicmFuZHMtY29sb3JzOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kYnJhbmRzLWNvbG9yczogbWFwLW1lcmdlKFxuICAoXG4gICAgXCJmYWNlYm9va1wiOiAgICAgICAgJGZhY2Vib29rLFxuICAgIFwidHdpdHRlclwiOiAgICAgICAgICR0d2l0dGVyLFxuICAgIFwibGlua2VkaW5cIjogICAgICAgICRsaW5rZWRpbixcbiAgICBcImZsaWNrclwiOiAgICAgICAgICAkZmxpY2tyLFxuICAgIFwidHVtYmxyXCI6ICAgICAgICAgICR0dW1ibHIsXG4gICAgXCJ4aW5nXCI6ICAgICAgICAgICAgJHhpbmcsXG4gICAgXCJnaXRodWJcIjogICAgICAgICAgJGdpdGh1YixcbiAgICBcInN0YWNrLW92ZXJmbG93XCI6ICAkc3RhY2stb3ZlcmZsb3csXG4gICAgXCJ5b3V0dWJlXCI6ICAgICAgICAgJHlvdXR1YmUsXG4gICAgXCJkcmliYmJsZVwiOiAgICAgICAgJGRyaWJiYmxlLFxuICAgIFwiaW5zdGFncmFtXCI6ICAgICAgICRpbnN0YWdyYW0sXG4gICAgXCJwaW50ZXJlc3RcIjogICAgICAgJHBpbnRlcmVzdCxcbiAgICBcInZrXCI6ICAgICAgICAgICAgICAkdmssXG4gICAgXCJ5YWhvb1wiOiAgICAgICAgICAgJHlhaG9vLFxuICAgIFwiYmVoYW5jZVwiOiAgICAgICAgICRiZWhhbmNlLFxuICAgIFwicmVkZGl0XCI6ICAgICAgICAgICRyZWRkaXQsXG4gICAgXCJ2aW1lb1wiOiAgICAgICAgICAgJHZpbWVvXG4gICksXG4gICRicmFuZHMtY29sb3JzXG4pO1xuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYy1jYWxsb3V0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAwICRzcGFjZXI7XG4gIG1hcmdpbjogJHNwYWNlciAwO1xuXG4gIEBpbmNsdWRlIGx0ciB7XG4gICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICB9XG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgYm9yZGVyLXJpZ2h0OiA0cHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICB9XG59XG5cbi5jLWNhbGxvdXQtYm9yZGVyZWQge1xuICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICBib3JkZXItbGVmdC13aWR0aDogNHB4O1xufVxuLmMtY2FsbG91dCBjb2RlIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG59XG4uYy1jYWxsb3V0IGg0IHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogLjI1cmVtO1xufVxuLmMtY2FsbG91dCBwOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLmMtY2FsbG91dCArIC5jLWNhbGxvdXQge1xuICBtYXJnaW4tdG9wOiAtIC4yNXJlbTtcbn1cblxuLy9cbi8vIFZhcmlhbnRzXG4vL1xuXG5AaW5jbHVkZSB0aGVtZS12YXJpYW50KCkge1xuICAuYy1jYWxsb3V0LSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkdmFsdWU7XG4gICAgfVxuICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICR2YWx1ZTtcbiAgICB9XG5cbiAgICBoNCB7XG4gICAgICBjb2xvcjogJHZhbHVlO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uY2FyZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWluLXdpZHRoOiAwOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjI3NDAjaXNzdWVjb21tZW50LTMwNTg2ODEwNlxuICBoZWlnaHQ6ICRjYXJkLWhlaWdodDtcbiAgbWFyZ2luLWJvdHRvbTogJGNhcmQtbWFyZ2luLWJvdHRvbTtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNsaXA6IGJvcmRlci1ib3g7XG4gIGJvcmRlcjogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjYXJkLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSB0aGVtZXMoJGNhcmQtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY2FyZC1iZ1wiKTtcbiAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjYXJkLWJvcmRlci1jb2xvclwiKTtcbiAgfVxuICBAaW5jbHVkZSBlbGV2YXRpb24oMSk7XG5cbiAgPiBociB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgPiAubGlzdC1ncm91cCB7XG4gICAgYm9yZGVyLXRvcDogaW5oZXJpdDtcbiAgICBib3JkZXItYm90dG9tOiBpbmhlcml0O1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkICB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG5cbiAgJi5kcmFnLFxuICAuZHJhZyB7XG4gICAgY3Vyc29yOiBtb3ZlO1xuICB9XG59XG5cbi8vIENhcmRzIHdpdGggY29sb3IgYWNjZW50XG4uY2FyZFtjbGFzc149XCJiZy1cIl0sXG4uY2FyZFtjbGFzcyo9XCIgYmctXCJdIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIC4xMjUpOyAvL2RhcmtlbigkdmFsdWUsIDEyLjUlKTtcbiAgLmNhcmQtaGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIC4wNSk7IC8vZGFya2VuKCR2YWx1ZSwgMyUpO1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAuMTI1KTsgLy9kYXJrZW4oJHZhbHVlLCAxMi41JSk7XG4gIH1cbn1cblxuLmNhcmQtYm9keSB7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBmb3IgZGVja3MgYW5kIGdyb3VwcyBzbyB0aGF0IGNhcmQgYmxvY2tzIHRha2UgdXBcbiAgLy8gYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZSwgZW5zdXJpbmcgZm9vdGVycyBhcmUgYWxpZ25lZCB0byB0aGUgYm90dG9tLlxuICBmbGV4OiAxIDEgYXV0bztcbiAgLy8gV29ya2Fyb3VuZCBmb3IgdGhlIGltYWdlIHNpemUgYnVnIGluIElFXG4gIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjg4NTVcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteDtcbiAgQGluY2x1ZGUgdGhlbWVzKCRjYXJkLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjYXJkLWNvbG9yXCIpO1xuICB9XG59XG5cbi5jYXJkLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogJGNhcmQtc3BhY2VyLXk7XG59XG5cbi5jYXJkLXN1YnRpdGxlIHtcbiAgbWFyZ2luLXRvcDogLSRjYXJkLXNwYWNlci15IC8gMjtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtdGV4dDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtbGluayB7XG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICsgLmNhcmQtbGluayB7XG4gICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkY2FyZC1zcGFjZXIteDtcbiAgICB9XG4gICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogJGNhcmQtc3BhY2VyLXg7XG4gICAgfVxuICB9XG59XG5cbi8vXG4vLyBPcHRpb25hbCB0ZXh0dWFsIGNhcHNcbi8vXG5cbi5jYXJkLWhlYWRlciB7XG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci15ICRjYXJkLXNwYWNlci14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZW1vdmVzIHRoZSBkZWZhdWx0IG1hcmdpbi1ib3R0b20gb2YgPGhOPlxuICBib3JkZXItYm90dG9tOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQ7XG4gIEBpbmNsdWRlIHRoZW1lcygkY2FyZC10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY2FyZC1jYXAtY29sb3JcIik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImNhcmQtY2FwLWJnXCIpO1xuICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImNhcmQtYm9yZGVyLWNvbG9yXCIpO1xuICB9XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgMCAwKTtcbiAgfVxuXG4gICsgLmxpc3QtZ3JvdXAge1xuICAgIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICB9XG4gIH1cbiAgLmMtY2hhcnQtd3JhcHBlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuLmNhcmQtZm9vdGVyIHtcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgJGNhcmQtc3BhY2VyLXg7XG4gIGJvcmRlci10b3A6ICRjYXJkLWJvcmRlci13aWR0aCBzb2xpZDtcbiAgQGluY2x1ZGUgdGhlbWVzKCRjYXJkLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjYXJkLWNhcC1jb2xvclwiKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY2FyZC1jYXAtYmdcIik7XG4gICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY2FyZC1ib3JkZXItY29sb3JcIik7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAwICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gIH1cbn1cblxuXG4vL1xuLy8gSGVhZGVyIG5hdnNcbi8vXG5cbi5jYXJkLWhlYWRlci10YWJzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtJGNhcmQtc3BhY2VyLXggLyAyO1xuICBtYXJnaW4tYm90dG9tOiAtJGNhcmQtc3BhY2VyLXk7XG4gIG1hcmdpbi1sZWZ0OiAtJGNhcmQtc3BhY2VyLXggLyAyO1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuXG4uY2FyZC1oZWFkZXItcGlsbHMge1xuICBtYXJnaW4tcmlnaHQ6IC0kY2FyZC1zcGFjZXIteCAvIDI7XG4gIG1hcmdpbi1sZWZ0OiAtJGNhcmQtc3BhY2VyLXggLyAyO1xufVxuXG4vLyBDYXJkIGltYWdlXG4uY2FyZC1pbWctb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiAkY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctdG9wLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIGZsZXgtc2hyaW5rOiAwOyAvLyBGb3IgSUU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjkzOTZcbiAgd2lkdGg6IDEwMCU7IC8vIFJlcXVpcmVkIGJlY2F1c2Ugd2UgdXNlIGZsZXhib3ggYW5kIHRoaXMgaW5oZXJlbnRseSBhcHBsaWVzIGFsaWduLXNlbGY6IHN0cmV0Y2hcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLXRvcCB7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctYm90dG9tIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cblxuLy8gQ2FyZCBkZWNrXG5cbi5jYXJkLWRlY2sge1xuICAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmQtZGVjay1tYXJnaW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIG1hcmdpbi1yaWdodDogLSRjYXJkLWRlY2stbWFyZ2luO1xuICAgIG1hcmdpbi1sZWZ0OiAtJGNhcmQtZGVjay1tYXJnaW47XG5cbiAgICAuY2FyZCB7XG4gICAgICAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIGZsZXg6IDEgMCAwJTtcbiAgICAgIG1hcmdpbi1yaWdodDogJGNhcmQtZGVjay1tYXJnaW47XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSB0aGUgZGVmYXVsdFxuICAgICAgbWFyZ2luLWxlZnQ6ICRjYXJkLWRlY2stbWFyZ2luO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBDYXJkIGdyb3Vwc1xuLy9cblxuLmNhcmQtZ3JvdXAge1xuICAvLyBUaGUgY2hpbGQgc2VsZWN0b3IgYWxsb3dzIG5lc3RlZCBgLmNhcmRgIHdpdGhpbiBgLmNhcmQtZ3JvdXBgXG4gIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gID4gLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206ICRjYXJkLWdyb3VwLW1hcmdpbjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxuICAgIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gICAgPiAuY2FyZCB7XG4gICAgICAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIGZsZXg6IDEgMCAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICsgLmNhcmQge1xuICAgICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBIYW5kbGUgcm91bmRlZCBjb3JuZXJzXG4gICAgICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWJsYWNrbGlzdFxuICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcblxuICAgICAgICAgIC5jYXJkLWltZy10b3AsXG4gICAgICAgICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIENvbHVtbnNcbi8vXG5cbi5jYXJkLWNvbHVtbnMge1xuICAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNhcmQtY29sdW1ucy1tYXJnaW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgY29sdW1uLWNvdW50OiAkY2FyZC1jb2x1bW5zLWNvdW50O1xuICAgIGNvbHVtbi1nYXA6ICRjYXJkLWNvbHVtbnMtZ2FwO1xuICAgIG9ycGhhbnM6IDE7XG4gICAgd2lkb3dzOiAxO1xuXG4gICAgLmNhcmQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyBEb24ndCBsZXQgdGhlbSB2ZXJ0aWNhbGx5IHNwYW4gbXVsdGlwbGUgY29sdW1uc1xuICAgICAgd2lkdGg6IDEwMCU7IC8vIERvbid0IGxldCB0aGVpciB3aWR0aCBjaGFuZ2VcbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gQWNjb3JkaW9uXG4vL1xuXG4uYWNjb3JkaW9uIHtcbiAgPiAuY2FyZCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICY6bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgICB9XG5cbiAgICAmOm5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gICAgfVxuXG4gICAgPiAuY2FyZC1oZWFkZXIge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0kY2FyZC1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbi5jYXJkLXBsYWNlaG9sZGVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIC4wMjUpO1xuICBib3JkZXI6IDFweCBkYXNoZWQgJGdyYXktMzAwO1xufVxuXG4uY2FyZC1oZWFkZXItaWNvbi1iZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICgkY2FyZC1zcGFjZXIteSAqIDIpICsgKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlKTtcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgMDtcbiAgbWFyZ2luOiAoLSAkY2FyZC1zcGFjZXIteSkgJGNhcmQtc3BhY2VyLXggKC0gJGNhcmQtc3BhY2VyLXkpICgtICRjYXJkLXNwYWNlci14KTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiAkY2FyZC1pY29uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6ICRjYXJkLWljb24tYmc7XG4gIGJvcmRlci1yaWdodDogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkO1xuICBAaW5jbHVkZSB0aGVtZXMoJGNhcmQtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICBib3JkZXItcmlnaHQ6IHRoZW1lcy1nZXQtdmFsdWUoXCJjYXJkLWJvcmRlci1jb2xvclwiKTtcbiAgfVxufVxuXG4uY2FyZC1oZWFkZXItYWN0aW9ucyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICBAaW5jbHVkZSBsdHIge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0gKCRzcGFjZXIgLyA0KTtcbiAgfVxuICBAaW5jbHVkZSBydGwge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiAtICgkc3BhY2VyIC8gNCk7XG4gIH1cbn1cblxuLmNhcmQtaGVhZGVyLWFjdGlvbiB7XG4gIHBhZGRpbmc6IDAgKCRzcGFjZXIgLyA0KTtcbiAgY29sb3I6ICRncmF5LTYwMDtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cblxuLy8gQ2FyZHMgd2l0aCBjb2xvciBhY2NlbnRcbkBpbmNsdWRlIHRoZW1lLXZhcmlhbnQoKSB7XG4gIC5jYXJkLWFjY2VudC0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGNhcmQtYWNjZW50LXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuXG4uY2FyZC1mdWxsIHtcbiAgbWFyZ2luLXRvcDogLSAkc3BhY2VyO1xuICBtYXJnaW4tcmlnaHQ6IC0gJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMjtcbiAgbWFyZ2luLWxlZnQ6IC0gJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMjtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItYm90dG9tOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvcjtcbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAuY2FyZC1jb2x1bW5zIHtcblxuICAgICYuY29scy0yIHtcbiAgICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICB9XG4gIH1cbn1cbiIsIlxuLy9cbi8vIENhcmRzXG4vL1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY2FyZHNcbiRjYXJkLXNwYWNlci15OiAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1zcGFjZXIteDogICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci13aWR0aDogICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXJhZGl1czogICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1czogIHN1YnRyYWN0KCRjYXJkLWJvcmRlci1yYWRpdXMsICRjYXJkLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kY2FyZC1tYXJnaW4tYm90dG9tOiAgICAgICAgJHNwYWNlciAqIDEuNSAhZGVmYXVsdDtcblxuJGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZzogIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRjYXJkLWdyb3VwLW1hcmdpbjogICRncmlkLWd1dHRlci13aWR0aCAvIDIgIWRlZmF1bHQ7XG4kY2FyZC1kZWNrLW1hcmdpbjogICAkY2FyZC1ncm91cC1tYXJnaW4gIWRlZmF1bHQ7XG5cbiRjYXJkLWNvbHVtbnMtY291bnQ6ICAgMyAhZGVmYXVsdDtcbiRjYXJkLWNvbHVtbnMtZ2FwOiAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRjYXJkLWNvbHVtbnMtbWFyZ2luOiAgJGNhcmQtc3BhY2VyLXkgIWRlZmF1bHQ7XG5cbiRjYXJkLWljb24tYmc6ICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRjYXJkLWljb24tY29sb3I6ICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY2FyZHNcblxuLy8gRGVmYXVsdCB0aGVtZVxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNhcmRzLWRlZmF1bHQtdGhlbWVcbiRjYXJkLWJvcmRlci1jb2xvcjogICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtYmc6ICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtY29sb3I6ICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtaGVpZ2h0OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWNvbG9yOiAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1iZzogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNhcmRzLWRlZmF1bHQtdGhlbWVcblxuJGNhcmQtdGhlbWUtbWFwOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kY2FyZC10aGVtZS1tYXA6IG1hcC1tZXJnZShcbiAgKFxuICAgIGRlZmF1bHQ6IChcbiAgICAgIFwiY2FyZC1ib3JkZXItY29sb3JcIjogICRjYXJkLWJvcmRlci1jb2xvcixcbiAgICAgIFwiY2FyZC1jYXAtYmdcIjogICAgICAgICRjYXJkLWNhcC1iZyxcbiAgICAgIFwiY2FyZC1jYXAtY29sb3JcIjogICAgICRjYXJkLWNhcC1jb2xvcixcbiAgICAgIFwiY2FyZC1jb2xvclwiOiAgICAgICAgICRjYXJkLWNvbG9yLFxuICAgICAgXCJjYXJkLWJnXCI6ICAgICAgICAgICAgJGNhcmQtYmdcbiAgICApXG4gICksXG4gICRjYXJkLXRoZW1lLW1hcFxuKTtcbiIsIi8vIEJyZWFrcG9pbnQgdmlld3BvcnQgc2l6ZXMgYW5kIG1lZGlhIHF1ZXJpZXMuXG4vL1xuLy8gQnJlYWtwb2ludHMgYXJlIGRlZmluZWQgYXMgYSBtYXAgb2YgKG5hbWU6IG1pbmltdW0gd2lkdGgpLCBvcmRlciBmcm9tIHNtYWxsIHRvIGxhcmdlOlxuLy9cbi8vICAgICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweClcbi8vXG4vLyBUaGUgbWFwIGRlZmluZWQgaW4gdGhlIGAkZ3JpZC1icmVha3BvaW50c2AgZ2xvYmFsIHZhcmlhYmxlIGlzIHVzZWQgYXMgdGhlIGAkYnJlYWtwb2ludHNgIGFyZ3VtZW50IGJ5IGRlZmF1bHQuXG5cbi8vIE5hbWUgb2YgdGhlIG5leHQgYnJlYWtwb2ludCwgb3IgbnVsbCBmb3IgdGhlIGxhc3QgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20pXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgJGJyZWFrcG9pbnQtbmFtZXM6ICh4cyBzbSBtZCBsZyB4bCkpXG4vLyAgICBtZFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cykpIHtcbiAgJG46IGluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG4gIT0gbnVsbCBhbmQgJG4gPCBsZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLCBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSksIG51bGwpO1xufVxuXG4vLyBOYW1lIG9mIHRoZSBwcmV2aW91cyBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgZmlyc3QgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LWJlZm9yZShsZylcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQobGcsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KGxnLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kIGxnIHhsKSlcbi8vICAgIG1kXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1iZWZvcmUoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpKSB7XG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRuICE9IG51bGwgYW5kICRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiAtIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNTc2cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIGxhcmdlc3QgKGxhc3QpIGJyZWFrcG9pbnQuXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyBjYWxjdWxhdGVkIGFzIHRoZSBtaW5pbXVtIG9mIHRoZSBuZXh0IG9uZSBsZXNzIDAuMDJweFxuLy8gdG8gd29yayBhcm91bmQgdGhlIGxpbWl0YXRpb25zIG9mIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHMgd2l0aCBmcmFjdGlvbmFsIHdpZHRocy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcbi8vIFVzZXMgMC4wMnB4IHJhdGhlciB0aGFuIDAuMDFweCB0byB3b3JrIGFyb3VuZCBhIGN1cnJlbnQgcm91bmRpbmcgYnVnIGluIFNhZmFyaS5cbi8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA3NjcuOThweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEByZXR1cm4gaWYoJG5leHQsIGJyZWFrcG9pbnQtbWluKCRuZXh0LCAkYnJlYWtwb2ludHMpIC0gLjAyLCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIkBtaXhpbiBjYXJkLWFjY2VudC12YXJpYW50KCRjb2xvcikge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAkY29sb3IgIWltcG9ydGFudDtcbn1cbiIsIi8vIE5vdGVzIG9uIHRoZSBjbGFzc2VzOlxuLy9cbi8vIDEuIC5jYXJvdXNlbC5wb2ludGVyLWV2ZW50IHNob3VsZCBpZGVhbGx5IGJlIHBhbi15ICh0byBhbGxvdyBmb3IgdXNlcnMgdG8gc2Nyb2xsIHZlcnRpY2FsbHkpXG4vLyAgICBldmVuIHdoZW4gdGhlaXIgc2Nyb2xsIGFjdGlvbiBzdGFydGVkIG9uIGEgY2Fyb3VzZWwsIGJ1dCBmb3IgY29tcGF0aWJpbGl0eSAod2l0aCBGaXJlZm94KVxuLy8gICAgd2UncmUgcHJldmVudGluZyBhbGwgYWN0aW9ucyBpbnN0ZWFkXG4vLyAyLiBUaGUgLmNhcm91c2VsLWl0ZW0tbGVmdCBhbmQgLmNhcm91c2VsLWl0ZW0tcmlnaHQgaXMgdXNlZCB0byBpbmRpY2F0ZSB3aGVyZVxuLy8gICAgdGhlIGFjdGl2ZSBzbGlkZSBpcyBoZWFkaW5nLlxuLy8gMy4gLmFjdGl2ZS5jYXJvdXNlbC1pdGVtIGlzIHRoZSBjdXJyZW50IHNsaWRlLlxuLy8gNC4gLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQgYW5kIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCBpcyB0aGUgY3VycmVudFxuLy8gICAgc2xpZGUgaW4gaXRzIGluLXRyYW5zaXRpb24gc3RhdGUuIE9ubHkgb25lIG9mIHRoZXNlIG9jY3VycyBhdCBhIHRpbWUuXG4vLyA1LiAuY2Fyb3VzZWwtaXRlbS1uZXh0LmNhcm91c2VsLWl0ZW0tbGVmdCBhbmQgLmNhcm91c2VsLWl0ZW0tcHJldi5jYXJvdXNlbC1pdGVtLXJpZ2h0XG4vLyAgICBpcyB0aGUgdXBjb21pbmcgc2xpZGUgaW4gdHJhbnNpdGlvbi5cblxuLmNhcm91c2VsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY2Fyb3VzZWwucG9pbnRlci1ldmVudCB7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG59XG5cbi5jYXJvdXNlbC1pbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XG59XG5cbi5jYXJvdXNlbC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBub25lO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtdHJhbnNpdGlvbik7XG59XG5cbi5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcbi5jYXJvdXNlbC1pdGVtLW5leHQsXG4uY2Fyb3VzZWwtaXRlbS1wcmV2IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jYXJvdXNlbC1pdGVtLW5leHQ6bm90KC5jYXJvdXNlbC1pdGVtLWxlZnQpLFxuLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xufVxuXG4uY2Fyb3VzZWwtaXRlbS1wcmV2Om5vdCguY2Fyb3VzZWwtaXRlbS1yaWdodCksXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG59XG5cblxuLy9cbi8vIEFsdGVybmF0ZSB0cmFuc2l0aW9uc1xuLy9cblxuLmNhcm91c2VsLWZhZGUge1xuICAuY2Fyb3VzZWwtaXRlbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIC5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcbiAgLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLWxlZnQsXG4gIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gICAgei1pbmRleDogMTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLWxlZnQsXG4gIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCB7XG4gICAgei1pbmRleDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAwcyAkY2Fyb3VzZWwtdHJhbnNpdGlvbi1kdXJhdGlvbik7XG4gIH1cbn1cblxuXG4vL1xuLy8gTGVmdC9yaWdodCBjb250cm9scyBmb3IgbmF2XG4vL1xuXG4uY2Fyb3VzZWwtY29udHJvbC1wcmV2LFxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6IDE7XG4gIC8vIFVzZSBmbGV4IGZvciBhbGlnbm1lbnQgKDEtMylcbiAgZGlzcGxheTogZmxleDsgLy8gMS4gYWxsb3cgZmxleCBzdHlsZXNcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gMi4gdmVydGljYWxseSBjZW50ZXIgY29udGVudHNcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IC8vIDMuIGhvcml6b250YWxseSBjZW50ZXIgY29udGVudHNcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgb3BhY2l0eTogJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtY29udHJvbC10cmFuc2l0aW9uKTtcblxuICAvLyBIb3Zlci9mb2N1cyBzdGF0ZVxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG91dGxpbmU6IDA7XG4gICAgb3BhY2l0eTogJGNhcm91c2VsLWNvbnRyb2wtaG92ZXItb3BhY2l0eTtcbiAgfVxufVxuLmNhcm91c2VsLWNvbnRyb2wtcHJldiB7XG4gIGxlZnQ6IDA7XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKCRibGFjaywgLjI1KSwgcmdiYSgkYmxhY2ssIC4wMDEpKTtcbiAgfVxufVxuLmNhcm91c2VsLWNvbnRyb2wtbmV4dCB7XG4gIHJpZ2h0OiAwO1xuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgyNzBkZWcsIHJnYmEoJGJsYWNrLCAuMjUpLCByZ2JhKCRibGFjaywgLjAwMSkpO1xuICB9XG59XG5cbi8vIEljb25zIGZvciB3aXRoaW5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGhlaWdodDogJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDtcbiAgYmFja2dyb3VuZDogbm8tcmVwZWF0IDUwJSAvIDEwMCUgMTAwJTtcbn1cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnKTtcbn1cbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnKTtcbn1cblxuXG4vLyBPcHRpb25hbCBpbmRpY2F0b3IgcGlwc1xuLy9cbi8vIEFkZCBhbiBvcmRlcmVkIGxpc3Qgd2l0aCB0aGUgZm9sbG93aW5nIGNsYXNzIGFuZCBhZGQgYSBsaXN0IGl0ZW0gZm9yIGVhY2hcbi8vIHNsaWRlIHlvdXIgY2Fyb3VzZWwgaG9sZHMuXG5cbi5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxNTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIEBpbmNsdWRlIGx0ciB7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyAvLyBvdmVycmlkZSA8b2w+IGRlZmF1bHRcbiAgfVxuICBAaW5jbHVkZSBydGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IC8vIG92ZXJyaWRlIDxvbD4gZGVmYXVsdFxuICB9XG4gIC8vIFVzZSB0aGUgLmNhcm91c2VsLWNvbnRyb2wncyB3aWR0aCBhcyBtYXJnaW4gc28gd2UgZG9uJ3Qgb3ZlcmxheSB0aG9zZVxuICBtYXJnaW4tcmlnaHQ6ICRjYXJvdXNlbC1jb250cm9sLXdpZHRoO1xuICBtYXJnaW4tbGVmdDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgbGkge1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoO1xuICAgIGhlaWdodDogJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjtcbiAgICBtYXJnaW4tbGVmdDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTlweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc7XG4gICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICAvLyBVc2UgdHJhbnNwYXJlbnQgYm9yZGVycyB0byBpbmNyZWFzZSB0aGUgaGl0IGFyZWEgYnkgMTBweCBvbiB0b3AgYW5kIGJvdHRvbS5cbiAgICBib3JkZXItdG9wOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiAkY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjYXJvdXNlbC1pbmRpY2F0b3ItdHJhbnNpdGlvbik7XG4gIH1cblxuICAuYWN0aXZlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cblxuLy8gT3B0aW9uYWwgY2FwdGlvbnNcbi8vXG4vL1xuXG4uY2Fyb3VzZWwtY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6ICgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpIC8gMjtcbiAgYm90dG9tOiAyMHB4O1xuICBsZWZ0OiAoMTAwJSAtICRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoKSAvIDI7XG4gIHotaW5kZXg6IDEwO1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuIiwiQG1peGluIGNsZWFyZml4KCkge1xuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuIiwiLy8gQ2Fyb3VzZWxcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNhcm91c2VsXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg6ICAgICAgICAgIDE1JSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk6ICAgICAgICAuNSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLWhvdmVyLW9wYWNpdHk6ICAuOSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXRyYW5zaXRpb246ICAgICBvcGFjaXR5IC4xNXMgZWFzZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWluZGljYXRvci13aWR0aDogICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ6ICAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodDogIDEwcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjogICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci10cmFuc2l0aW9uOiAgICAgICBvcGFjaXR5IC42cyBlYXNlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY2FwdGlvbi13aWR0aDogIDcwJSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yOiAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoOiAgMjBweCAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnOiAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfScgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZD0nTTUuMjUgMGwtNCA0IDQgNCAxLjUtMS41TDQuMjUgNGwyLjUtMi41TDUuMjUgMHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmc6ICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9JyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBkPSdNMi43NSAwbC0xLjUgMS41TDMuNzUgNGwtMi41IDIuNUwyLjc1IDhsNC00LTQtNHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uOiAgLjZzICFkZWZhdWx0O1xuJGNhcm91c2VsLXRyYW5zaXRpb246ICAgICAgICAgICB0cmFuc2Zvcm0gJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24gZWFzZS1pbi1vdXQgIWRlZmF1bHQ7IC8vIERlZmluZSB0cmFuc2Zvcm0gdHJhbnNpdGlvbiBmaXJzdCBpZiB1c2luZyBtdWx0aXBsZSB0cmFuc2l0aW9ucyAoZS5nLiwgYHRyYW5zZm9ybSAycyBlYXNlLCBvcGFjaXR5IC41cyBlYXNlLW91dGApXG4vLyBzY3NzLWRvY3MtZW5kIGNhcm91c2VsXG4iLCIuYy1jaGFydC13cmFwcGVyIGNhbnZhcyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlLCBzZWxlY3Rvci10eXBlLW5vLXVua25vd25cbmJhc2UtY2hhcnQuY2hhcnQge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuY2FudmFzIHtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG4iLCIuY2xvc2Uge1xuICBmbG9hdDogcmlnaHQ7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY2xvc2UtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRjbG9zZS1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIG9wYWNpdHk6IC41O1xuICBAaW5jbHVkZSB0aGVtZXMoJGNsb3NlLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjbG9zZS1jb2xvclwiKTtcbiAgICB0ZXh0LXNoYWRvdzogdGhlbWVzLWdldC12YWx1ZShcImNsb3NlLXRleHQtc2hhZG93XCIpO1xuICB9XG5cbiAgLy8gT3ZlcnJpZGUgPGE+J3MgaG92ZXIgc3R5bGVcbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIEBpbmNsdWRlIHRoZW1lcygkY2xvc2UtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY2xvc2UtY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBvcGFjaXR5OiAuNzU7XG4gICAgfVxuICB9XG59XG5cbi8vIEFkZGl0aW9uYWwgcHJvcGVydGllcyBmb3IgYnV0dG9uIHZlcnNpb25cbi8vIGlPUyByZXF1aXJlcyB0aGUgYnV0dG9uIGVsZW1lbnQgaW5zdGVhZCBvZiBhbiBhbmNob3IgdGFnLlxuLy8gSWYgeW91IHdhbnQgdGhlIGFuY2hvciB2ZXJzaW9uLCBpdCByZXF1aXJlcyBgaHJlZj1cIiNcImAuXG4vLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL2NsaWNrI1NhZmFyaV9Nb2JpbGVcblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuYnV0dG9uLmNsb3NlIHtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gRnV0dXJlLXByb29mIGRpc2FibGluZyBvZiBjbGlja3Mgb24gYDxhPmAgZWxlbWVudHNcblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuYS5jbG9zZS5kaXNhYmxlZCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuIiwiLy8gSW5saW5lIGNvZGVcbmNvZGUge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGNvZGUtZm9udC1zaXplKTtcbiAgY29sb3I6ICRjb2RlLWNvbG9yO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG5cbiAgLy8gU3RyZWFtbGluZSB0aGUgc3R5bGUgd2hlbiBpbnNpZGUgYW5jaG9ycyB0byBhdm9pZCBicm9rZW4gdW5kZXJsaW5lIGFuZCBtb3JlXG4gIGEgPiAmIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG4vLyBVc2VyIGlucHV0IHR5cGljYWxseSBlbnRlcmVkIHZpYSBrZXlib2FyZFxua2JkIHtcbiAgcGFkZGluZzogJGtiZC1wYWRkaW5nLXkgJGtiZC1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgka2JkLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAka2JkLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAka2JkLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLXNtKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygka2JkLWJveC1zaGFkb3cpO1xuXG4gIGtiZCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoMTAwJSk7XG4gICAgZm9udC13ZWlnaHQ6ICRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0O1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuLy8gQmxvY2tzIG9mIGNvZGVcbnByZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGNvZGUtZm9udC1zaXplKTtcbiAgY29sb3I6ICRwcmUtY29sb3I7XG5cbiAgLy8gQWNjb3VudCBmb3Igc29tZSBjb2RlIG91dHB1dHMgdGhhdCBwbGFjZSBjb2RlIHRhZ3MgaW4gcHJlIHRhZ3NcbiAgY29kZSB7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgfVxufVxuXG4vLyBFbmFibGUgc2Nyb2xsYWJsZSBibG9ja3Mgb2YgY29kZVxuLnByZS1zY3JvbGxhYmxlIHtcbiAgbWF4LWhlaWdodDogJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cbiIsIlxuXG4vLyBDb2RlXG5cbiRjb2RlLWZvbnQtc2l6ZTogIDg3LjUlICFkZWZhdWx0O1xuJGNvZGUtY29sb3I6ICAgICAgJHBpbmsgIWRlZmF1bHQ7XG5cbiRrYmQtcGFkZGluZy15OiAgLjJyZW0gIWRlZmF1bHQ7XG4ka2JkLXBhZGRpbmcteDogIC40cmVtICFkZWZhdWx0O1xuJGtiZC1mb250LXNpemU6ICAkY29kZS1mb250LXNpemUgIWRlZmF1bHQ7XG4ka2JkLWNvbG9yOiAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuXG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0OiAgMzQwcHggIWRlZmF1bHQ7XG4iLCIvLyBFbWJlZGRlZCBpY29ucyBmcm9tIE9wZW4gSWNvbmljLlxuLy8gUmVsZWFzZWQgdW5kZXIgTUlUIGFuZCBjb3B5cmlnaHQgMjAxNCBXYXlidXJ5LlxuLy8gaHR0cHM6Ly91c2VpY29uaWMuY29tL29wZW5cblxuXG4vLyBDaGVja2JveGVzIGFuZCByYWRpb3Ncbi8vXG4vLyBCYXNlIGNsYXNzIHRha2VzIGNhcmUgb2YgYWxsIHRoZSBrZXkgYmVoYXZpb3JhbCBhc3BlY3RzLlxuXG4uY3VzdG9tLWNvbnRyb2wge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtaW4taGVpZ2h0OiAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgQGluY2x1ZGUgbHRyIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tY29udHJvbC1ndXR0ZXIgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gIH1cbiAgQGluY2x1ZGUgcnRsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyICsgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICB9XG59XG5cbi5jdXN0b20tY29udHJvbC1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgbWFyZ2luLXJpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXg7XG59XG5cbi5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgQGluY2x1ZGUgbHRyIHtcbiAgICBsZWZ0OiAwO1xuICB9XG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbiAgei1pbmRleDogLTE7IC8vIFB1dCB0aGUgaW5wdXQgYmVoaW5kIHRoZSBsYWJlbCBzbyBpdCBkb2Vzbid0IG92ZXJsYXkgdGV4dFxuICB3aWR0aDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICBoZWlnaHQ6ICgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSArICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgLyAyO1xuICBvcGFjaXR5OiAwO1xuXG4gICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvclwiKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJvcmRlci1jb2xvclwiKTtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZ1wiKSk7XG4gICAgfVxuICB9XG5cbiAgJjpmb2N1cyB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAvLyB0aGUgbWl4aW4gaXMgbm90IHVzZWQgaGVyZSB0byBtYWtlIHN1cmUgdGhlcmUgaXMgZmVlZGJhY2tcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1ib3gtc2hhZG93LCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cblxuICAmOmZvY3VzOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3JkZXItY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTphY3RpdmUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1jb2xvclwiKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnXCIpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3JkZXItY29sb3JcIik7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm94LXNoYWRvdyk7XG4gIH1cblxuICAvLyBVc2UgW2Rpc2FibGVkXSBhbmQgOmRpc2FibGVkIHRvIHdvcmsgYXJvdW5kIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjgyNDdcbiAgJltkaXNhYmxlZF0sXG4gICY6ZGlzYWJsZWQge1xuICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLWNvbnRyb2wtbGFiZWwtZGlzYWJsZWQtY29sb3JcIik7XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1jb250cm9sLWluZGljYXRvci1kaXNhYmxlZC1iZ1wiKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBDdXN0b20gY29udHJvbCBpbmRpY2F0b3JzXG4vL1xuLy8gQnVpbGQgdGhlIGN1c3RvbSBjb250cm9scyBvdXQgb2YgcHNldWRvLWVsZW1lbnRzLlxuXG4uY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIGN1cnNvcjogJGN1c3RvbS1jb250cm9sLWN1cnNvcjtcbiAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLWNvbnRyb2wtbGFiZWwtY29sb3JcIik7XG4gIH1cblxuICAvLyBCYWNrZ3JvdW5kLWNvbG9yIGFuZCAod2hlbiBlbmFibGVkKSBncmFkaWVudFxuICAmOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgLyAyO1xuICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICBsZWZ0OiAtKCRjdXN0b20tY29udHJvbC1ndXR0ZXIgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBydGwge1xuICAgICAgcmlnaHQ6IC0oJGN1c3RvbS1jb250cm9sLWd1dHRlciArICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSk7XG4gICAgfVxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXI6IHNvbGlkICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZ1wiKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgLy8gRm9yZWdyb3VuZCAoaWNvbilcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgLyAyO1xuICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICBsZWZ0OiAtKCRjdXN0b20tY29udHJvbC1ndXR0ZXIgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBydGwge1xuICAgICAgcmlnaHQ6IC0oJGN1c3RvbS1jb250cm9sLWd1dHRlciArICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSk7XG4gICAgfVxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kOiBuby1yZXBlYXQgNTAlIC8gI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemV9O1xuICB9XG59XG5cblxuLy8gQ2hlY2tib3hlc1xuLy9cbi8vIFR3ZWFrIGp1c3QgYSBmZXcgdGhpbmdzIGZvciBjaGVja2JveGVzLlxuXG4uY3VzdG9tLWNoZWNrYm94IHtcbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2Zyh0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWRcIikpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvclwiKTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmcpO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJveC1zaGFkb3cpO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24taW5kZXRlcm1pbmF0ZSk7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSB0aGVtZXMoJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmdcIik7XG4gICAgICB9XG4gICAgfVxuICAgICY6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZ1wiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gUmFkaW9zXG4vL1xuLy8gVHdlYWsganVzdCBhIGZldyB0aGluZ3MgZm9yIHJhZGlvcy5cblxuLmN1c3RvbS1yYWRpbyB7XG4gIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktYmxhY2tsaXN0XG4gICAgYm9yZGVyLXJhZGl1czogJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cztcbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSB0aGVtZXMoJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tcmFkaW8taW5kaWNhdG9yLWljb24tY2hlY2tlZFwiKSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSB0aGVtZXMoJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmdcIik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gc3dpdGNoZXNcbi8vXG4vLyBUd2VhayBhIGZldyB0aGluZ3MgZm9yIHN3aXRjaGVzXG5cbi5jdXN0b20tc3dpdGNoIHtcbiAgQGluY2x1ZGUgbHRyIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc3dpdGNoLXdpZHRoICsgJGN1c3RvbS1jb250cm9sLWd1dHRlcjtcbiAgfVxuICBAaW5jbHVkZSBydGwge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRjdXN0b20tc3dpdGNoLXdpZHRoICsgJGN1c3RvbS1jb250cm9sLWd1dHRlcjtcbiAgfVxuICAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBsZWZ0OiAtKCRjdXN0b20tc3dpdGNoLXdpZHRoICsgJGN1c3RvbS1jb250cm9sLWd1dHRlcik7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICByaWdodDogLSgkY3VzdG9tLXN3aXRjaC13aWR0aCArICRjdXN0b20tY29udHJvbC1ndXR0ZXIpO1xuICAgICAgfVxuICAgICAgd2lkdGg6ICRjdXN0b20tc3dpdGNoLXdpZHRoO1xuICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHRvcDogYWRkKCgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgLyAyLCAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqIDIpO1xuICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgbGVmdDogYWRkKC0oJGN1c3RvbS1zd2l0Y2gtd2lkdGggKyAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyKSwgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKiAyKTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIHJpZ2h0OiBhZGQoLSgkY3VzdG9tLXN3aXRjaC13aWR0aCArICRjdXN0b20tY29udHJvbC1ndXR0ZXIpLCAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aCAqIDIpO1xuICAgICAgfVxuICAgICAgd2lkdGg6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1zaXplO1xuICAgICAgaGVpZ2h0OiAkY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yO1xuICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWJsYWNrbGlzdFxuICAgICAgYm9yZGVyLXJhZGl1czogJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKHRyYW5zZm9ybSAuMTVzIGVhc2UtaW4tb3V0LCAkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItY29sb3JcIik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmdcIik7XG4gICAgICB9XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJGN1c3RvbS1zd2l0Y2gtd2lkdGggLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB7XG4gICAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnXCIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIFNlbGVjdFxuLy9cbi8vIFJlcGxhY2VzIHRoZSBicm93c2VyIGRlZmF1bHQgc2VsZWN0IHdpdGggYSBjdXN0b20gb25lLCBtb3N0bHkgcHVsbGVkIGZyb21cbi8vIGh0dHBzOi8vcHJpbWVyLmdpdGh1Yi5pby8uXG4vL1xuXG4uY3VzdG9tLXNlbGVjdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0O1xuICBwYWRkaW5nOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXkgKCRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXkgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGN1c3RvbS1zZWxlY3QtZm9udC1mYW1pbHk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY3VzdG9tLXNlbGVjdC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGN1c3RvbS1zZWxlY3QtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1saW5lLWhlaWdodDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYm9yZGVyOiAkY3VzdG9tLXNlbGVjdC1ib3JkZXItd2lkdGggc29saWQ7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXJhZGl1cywgMCk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1zZWxlY3QtYm94LXNoYWRvdyk7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tc2VsZWN0LWNvbG9yXCIpO1xuICAgIGJhY2tncm91bmQ6IHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tc2VsZWN0LWJnXCIpIHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tc2VsZWN0LWJhY2tncm91bmRcIik7XG4gICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLXNlbGVjdC1ib3JkZXItY29sb3JcIik7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3JcIik7XG4gICAgfVxuICAgIG91dGxpbmU6IDA7XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tc2VsZWN0LWJveC1zaGFkb3csICRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgYm94LXNoYWRvdzogJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG5cbiAgICAmOjotbXMtdmFsdWUge1xuICAgICAgLy8gRm9yIHZpc3VhbCBjb25zaXN0ZW5jeSB3aXRoIG90aGVyIHBsYXRmb3Jtcy9icm93c2VycyxcbiAgICAgIC8vIHN1cHByZXNzIHRoZSBkZWZhdWx0IHdoaXRlIHRleHQgb24gYmx1ZSBiYWNrZ3JvdW5kIGhpZ2hsaWdodCBnaXZlbiB0b1xuICAgICAgLy8gdGhlIHNlbGVjdGVkIG9wdGlvbiB0ZXh0IHdoZW4gdGhlIChzdGlsbCBjbG9zZWQpIDxzZWxlY3Q+IHJlY2VpdmVzIGZvY3VzXG4gICAgICAvLyBpbiBJRSBhbmQgKHVuZGVyIGNlcnRhaW4gY29uZGl0aW9ucykgRWRnZS5cbiAgICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5Mzk4LlxuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRmb3JtLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaW5wdXQtY29sb3JcIik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJpbnB1dC1iZ1wiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmW211bHRpcGxlXSxcbiAgJltzaXplXTpub3QoW3NpemU9XCIxXCJdKSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg7XG4gICAgfVxuICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteDtcbiAgICB9XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3JcIik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1iZ1wiKTtcbiAgICB9XG4gIH1cblxuICAvLyBIaWRlcyB0aGUgZGVmYXVsdCBjYXJldCBpbiBJRTExXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBSZW1vdmUgb3V0bGluZSBmcm9tIHNlbGVjdCBib3ggaW4gRkZcbiAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtc2hhZG93OiAwIDAgMCAkY3VzdG9tLXNlbGVjdC1jb2xvcjtcbiAgfVxufVxuXG4uY3VzdG9tLXNlbGVjdC1zbSB7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LXNtO1xuICBwYWRkaW5nLXRvcDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LXNtO1xuICBwYWRkaW5nLWJvdHRvbTogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LXNtO1xuICBAaW5jbHVkZSBsdHIge1xuICAgIHBhZGRpbmctbGVmdDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LXNtO1xuICB9XG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LXNtO1xuICB9XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY3VzdG9tLXNlbGVjdC1mb250LXNpemUtc20pO1xufVxuXG4uY3VzdG9tLXNlbGVjdC1sZyB7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LWxnO1xuICBwYWRkaW5nLXRvcDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LWxnO1xuICBwYWRkaW5nLWJvdHRvbTogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LWxnO1xuICBAaW5jbHVkZSBsdHIge1xuICAgIHBhZGRpbmctbGVmdDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LWxnO1xuICB9XG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LWxnO1xuICB9XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY3VzdG9tLXNlbGVjdC1mb250LXNpemUtbGcpO1xufVxuXG5cbi8vIEZpbGVcbi8vXG4vLyBDdXN0b20gZmlsZSBpbnB1dC5cblxuLmN1c3RvbS1maWxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQ7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jdXN0b20tZmlsZS1pbnB1dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcbiAgbWFyZ2luOiAwO1xuICBvcGFjaXR5OiAwO1xuXG4gICY6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgIGJveC1zaGFkb3c6ICRjdXN0b20tZmlsZS1mb2N1cy1ib3gtc2hhZG93O1xuICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tZmlsZS1mb2N1cy1ib3JkZXItY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgLy8gVXNlIFtkaXNhYmxlZF0gYW5kIDpkaXNhYmxlZCB0byB3b3JrIGFyb3VuZCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI4MjQ3XG4gICZbZGlzYWJsZWRdIH4gLmN1c3RvbS1maWxlLWxhYmVsLFxuICAmOmRpc2FibGVkIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1maWxlLWRpc2FibGVkLWJnXCIpO1xuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRsYW5nLCAkdmFsdWUgaW4gJGN1c3RvbS1maWxlLXRleHQge1xuICAgICY6bGFuZygjeyRsYW5nfSkgfiAuY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICR2YWx1ZTtcbiAgICB9XG4gIH1cblxuICB+IC5jdXN0b20tZmlsZS1sYWJlbFtkYXRhLWJyb3dzZV06OmFmdGVyIHtcbiAgICBjb250ZW50OiBhdHRyKGRhdGEtYnJvd3NlKTtcbiAgfVxufVxuXG4uY3VzdG9tLWZpbGUtbGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG4gIGhlaWdodDogJGN1c3RvbS1maWxlLWhlaWdodDtcbiAgcGFkZGluZzogJGN1c3RvbS1maWxlLXBhZGRpbmcteSAkY3VzdG9tLWZpbGUtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGN1c3RvbS1maWxlLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGN1c3RvbS1maWxlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0O1xuICBib3JkZXI6ICRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGggc29saWQ7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tZmlsZS1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1maWxlLWNvbG9yXCIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tZmlsZS1iZ1wiKTtcbiAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tZmlsZS1ib3JkZXItY29sb3JcIik7XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogMztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQtaW5uZXI7XG4gICAgcGFkZGluZzogJGN1c3RvbS1maWxlLXBhZGRpbmcteSAkY3VzdG9tLWZpbGUtcGFkZGluZy14O1xuICAgIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ7XG4gICAgY29udGVudDogXCJCcm93c2VcIjtcbiAgICBib3JkZXItbGVmdDogaW5oZXJpdDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMgJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMgMCk7XG4gICAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLWZpbGUtYnV0dG9uLWNvbG9yXCIpO1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1maWxlLWJ1dHRvbi1iZ1wiKSk7XG4gICAgfVxuICB9XG59XG5cbi8vIFJhbmdlXG4vL1xuLy8gU3R5bGUgcmFuZ2UgaW5wdXRzIHRoZSBzYW1lIGFjcm9zcyBicm93c2Vycy4gVmVuZG9yLXNwZWNpZmljIHJ1bGVzIGZvciBwc2V1ZG9cbi8vIGVsZW1lbnRzIGNhbm5vdCBiZSBtaXhlZC4gQXMgc3VjaCwgdGhlcmUgYXJlIG5vIHNoYXJlZCBzdHlsZXMgZm9yIGZvY3VzIG9yXG4vLyBhY3RpdmUgc3RhdGVzIG9uIHByZWZpeGVkIHNlbGVjdG9ycy5cblxuLmN1c3RvbS1yYW5nZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGFkZCgkY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodCwgJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoICogMik7XG4gIHBhZGRpbmc6IDA7IC8vIE5lZWQgdG8gcmVzZXQgcGFkZGluZ1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuXG4gICAgLy8gUHNldWRvLWVsZW1lbnRzIG11c3QgYmUgc3BsaXQgYWNyb3NzIG11bHRpcGxlIHJ1bGVzZXRzIHRvIGhhdmUgYW4gZWZmZWN0LlxuICAgIC8vIE5vIGJveC1zaGFkb3coKSBtaXhpbiBmb3IgZm9jdXMgYWNjZXNzaWJpbGl0eS5cbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7IGJveC1zaGFkb3c6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgfVxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIgICAgIHsgYm94LXNoYWRvdzogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gICAgJjo6LW1zLXRodW1iICAgICAgICAgICAgeyBib3gtc2hhZG93OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgfVxuXG4gICY6Oi1tb3otZm9jdXMtb3V0ZXIge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIG1hcmdpbi10b3A6ICgkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodCAtICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0KSAvIDI7IC8vIFdlYmtpdCBzcGVjaWZpY1xuICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLXJhbmdlLXRodW1iLWJnXCIpKTtcbiAgICB9XG4gICAgYm9yZGVyOiAkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmdcIikpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10cmFjay13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDsgLy8gV2h5P1xuICAgIGN1cnNvcjogJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLXJhbmdlLXRyYWNrLWJnXCIpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tcmFuZ2UtdGh1bWItYmdcIikpO1xuICAgIH1cbiAgICBib3JkZXI6ICRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSB0aGVtZXMoJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZ1wiKSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJjo6LW1vei1yYW5nZS10cmFjayB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1yYW5nZS10cmFjay1iZ1wiKTtcbiAgICB9XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRmlyZWZveCBzcGVjaWZpYz9cbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjo6LW1zLXRodW1iIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIG1hcmdpbi10b3A6IDA7IC8vIEVkZ2Ugc3BlY2lmaWNcbiAgICBtYXJnaW4tcmlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDsgLy8gV29ya2Fyb3VuZCB0aGF0IG92ZXJmbG93ZWQgYm94LXNoYWRvdyBpcyBoaWRkZW4uXG4gICAgbWFyZ2luLWxlZnQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDsgIC8vIFdvcmthcm91bmQgdGhhdCBvdmVyZmxvd2VkIGJveC1zaGFkb3cgaXMgaGlkZGVuLlxuICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLXJhbmdlLXRodW1iLWJnXCIpKTtcbiAgICB9XG4gICAgYm9yZGVyOiAkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRjdXN0b20tZm9ybXMtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmdcIikpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICY6Oi1tcy10cmFjayB7XG4gICAgd2lkdGg6ICRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiAkY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci13aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQgLyAyO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Oi1tcy1maWxsLWxvd2VyIHtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImN1c3RvbS1yYW5nZS10cmFjay1iZ1wiKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJjo6LW1zLWZpbGwtdXBwZXIge1xuICAgIG1hcmdpbi1yaWdodDogMTVweDsgLy8gYXJiaXRyYXJ5P1xuICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLXJhbmdlLXRyYWNrLWJnXCIpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgICBAaW5jbHVkZSB0aGVtZXMoJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnXCIpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG5cbiAgICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmdcIik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjo6LW1vei1yYW5nZS10cmFjayB7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuXG4gICAgJjo6LW1zLXRodW1iIHtcbiAgICAgIEBpbmNsdWRlIHRoZW1lcygkY3VzdG9tLWZvcm1zLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmdcIik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuLmN1c3RvbS1maWxlLWxhYmVsLFxuLmN1c3RvbS1zZWxlY3Qge1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG59XG4iLCIkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWd1dHRlcjogICAgLjVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXg6ICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWN1cnNvcjogICAgbnVsbCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplOiAgMXJlbSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplOiAgICAgICA1MCUgNTAlICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3gtc2hhZG93OiAgICAkaW5wdXQtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoOiAgJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWxhYmVsLWNvbG9yOiAgbnVsbCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJveC1zaGFkb3c6ICAgIG5vbmUgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm94LXNoYWRvdzogICAgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJveC1zaGFkb3c6ICAgIG5vbmUgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3gtc2hhZG93OiAgICBub25lICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhZGlvLWluZGljYXRvci1ib3JkZXItcmFkaXVzOiAgNTAlICFkZWZhdWx0O1xuXG4kY3VzdG9tLXN3aXRjaC13aWR0aDogICAgICAgICAgICAgICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSAqIDEuNzUgIWRlZmF1bHQ7XG4kY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSAvIDIgIWRlZmF1bHQ7XG4kY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZTogICAgICAgICAgIHN1YnRyYWN0KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSwgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKiA0KSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15OiAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14OiAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1mYW1pbHk6ICAgICAgICAkaW5wdXQtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemU6ICAgICAgICAgICRpbnB1dC1mb250LXNpemUgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQ6ICAgICAgICAgICAgICRpbnB1dC1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZzogIDFyZW0gIWRlZmF1bHQ7IC8vIEV4dHJhIHBhZGRpbmcgdG8gYWNjb3VudCBmb3IgdGhlIHByZXNlbmNlIG9mIHRoZSBiYWNrZ3JvdW5kLWltYWdlIGJhc2VkIGluZGljYXRvclxuJGN1c3RvbS1zZWxlY3QtZm9udC13ZWlnaHQ6ICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1saW5lLWhlaWdodDogICAgICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtYmctc2l6ZTogICAgICAgICAgICA4cHggMTBweCAhZGVmYXVsdDsgLy8gSW4gcGl4ZWxzIGJlY2F1c2UgaW1hZ2UgZGltZW5zaW9uc1xuXG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctcmlnaHQ6ICBhZGQoMWVtICogLjc1LCAoMiAqICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteSAqIC43NSkgKyAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZykgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uOiAgICAgICBjZW50ZXIgcmlnaHQgKCRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTogICAgICAgICAgICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWJvcmRlci13aWR0aDogICAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXJhZGl1czogICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm94LXNoYWRvdzogICAgIGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWZvY3VzLXdpZHRoOiAgICAgICAgICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c6ICAgIDAgMCAwICRjdXN0b20tc2VsZWN0LWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1zbTogICRpbnB1dC1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtc206ICAkaW5wdXQtcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLXNtOiAgJGlucHV0LWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodC1zbTogICAgICRpbnB1dC1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1sZzogICRpbnB1dC1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtbGc6ICAkaW5wdXQtcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLWxnOiAgJGlucHV0LWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodC1sZzogICAgICRpbnB1dC1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg6ICAgICAgICAgIDEwMCUgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stY3Vyc29yOiAgICAgICAgIHBvaW50ZXIgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXM6ICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93OiAgICAgaW5zZXQgMCAuMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodDogICAgICAgICAgICAgICAgICAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXI6ICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAwIC4xcmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgMCAwIDAgMXB4ICRib2R5LWJnLCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDogICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDsgLy8gRm9yIGZvY3VzIGJveCBzaGFkb3cgaXNzdWUgaW4gSUUvRWRnZVxuXG4kY3VzdG9tLWZpbGUtaGVpZ2h0OiAgICAgICAgICAgICAgJGlucHV0LWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1oZWlnaHQtaW5uZXI6ICAgICAgICAkaW5wdXQtaGVpZ2h0LWlubmVyICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvY3VzLWJveC1zaGFkb3c6ICAgICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZpbGUtcGFkZGluZy15OiAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtcGFkZGluZy14OiAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ6ICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb250LWZhbWlseTogICAgJGlucHV0LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvbnQtd2VpZ2h0OiAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGg6ICAgJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXM6ICAkaW5wdXQtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3gtc2hhZG93OiAgICAgJGlucHV0LWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtdGV4dDogKFxuICBlbjogXCJCcm93c2VcIlxuKSAhZGVmYXVsdDtcblxuXG4vLyBEZWZhdWx0IFRoZW1lXG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc6ICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItY29sb3I6ICAkZ3JheS01MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWRpc2FibGVkLWJnOiAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWxhYmVsLWRpc2FibGVkLWNvbG9yOiAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3I6ICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmc6ICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc6ICAgcmdiYSh0aGVtZS1jb2xvcihcInByaW1hcnlcIiksIC41KSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3JkZXItY29sb3I6ICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm9yZGVyLWNvbG9yOiAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtY29sb3I6ICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgICAgICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAzNSUpICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24tY2hlY2tlZDogICAgICAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBmaWxsPScjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcn0nIGQ9J002LjU2NC43NWwtMy41OSAzLjYxMi0xLjUzOC0xLjU1TDAgNC4yNmwyLjk3NCAyLjk5TDggMi4xOTN6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1iZzogICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtY29sb3I6ICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3I6ICAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1pbmRldGVybWluYXRlOiAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc0JyBoZWlnaHQ9JzQnIHZpZXdCb3g9JzAgMCA0IDQnPjxwYXRoIHN0cm9rZT0nI3skY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWNvbG9yfScgZD0nTTAgMmg0Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhZGlvLWluZGljYXRvci1pY29uLWNoZWNrZWQ6ICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMicgaGVpZ2h0PScxMicgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzMnIGZpbGw9JyN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yfScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtY29sb3I6ICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmc6ICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmc6ICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yOiAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yOiAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNCcgaGVpZ2h0PSc1JyB2aWV3Qm94PScwIDAgNCA1Jz48cGF0aCBmaWxsPScjeyRjdXN0b20tc2VsZWN0LWluZGljYXRvci1jb2xvcn0nIGQ9J00yIDBMMCAyaDR6bTAgNUwwIDNoNHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iYWNrZ3JvdW5kOiAgICAgICAgICBlc2NhcGUtc3ZnKCRjdXN0b20tc2VsZWN0LWluZGljYXRvcikgbm8tcmVwZWF0IHJpZ2h0ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCBjZW50ZXIgLyAkY3VzdG9tLXNlbGVjdC1iZy1zaXplICFkZWZhdWx0OyAvLyBVc2VkIHNvIHdlIGNhbiBoYXZlIG11bHRpcGxlIGJhY2tncm91bmQgZWxlbWVudHMgKGUuZy4sIGFycm93IGFuZCBmZWVkYmFjayBpY29uKVxuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjogICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFuZ2UtdHJhY2stYmc6ICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZzogICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMzUlKSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc6ICAkZ3JheS01MDAgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZmlsZS1mb2N1cy1ib3JkZXItY29sb3I6ICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWRpc2FibGVkLWJnOiAgICAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYmc6ICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYnV0dG9uLWNvbG9yOiAgICAgICAgJGN1c3RvbS1maWxlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1iZzogICAgICAgICAgICRpbnB1dC1ncm91cC1hZGRvbi1iZyAhZGVmYXVsdDtcblxuXG4kY3VzdG9tLWZvcm1zLXRoZW1lLW1hcDogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGN1c3RvbS1mb3Jtcy10aGVtZS1tYXA6IG1hcC1tZXJnZShcbiAgKFxuICAgIGRlZmF1bHQ6IChcbiAgICAgIFwiY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZyxcbiAgICAgIFwiY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci1jb2xvclwiOiAgICAgICAgICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItY29sb3IsXG4gICAgICBcImN1c3RvbS1jb250cm9sLWluZGljYXRvci1kaXNhYmxlZC1iZ1wiOiAgICAgICAgICAgICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZGlzYWJsZWQtYmcsXG4gICAgICBcImN1c3RvbS1jb250cm9sLWxhYmVsLWRpc2FibGVkLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICRjdXN0b20tY29udHJvbC1sYWJlbC1kaXNhYmxlZC1jb2xvcixcbiAgICAgIFwiY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3JcIjogICAgICAgICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yLFxuICAgICAgXCJjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZ1wiOiAgICAgICAgICAgICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmcsXG4gICAgICBcImN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnXCI6ICAgICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZyxcbiAgICAgIFwiY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm9yZGVyLWNvbG9yXCI6ICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJvcmRlci1jb2xvcixcbiAgICAgIFwiY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJvcmRlci1jb2xvclwiOiAgICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3JkZXItY29sb3IsXG4gICAgICBcImN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtY29sb3JcIjogICAgICAgICAgICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWNvbG9yLFxuICAgICAgXCJjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnXCI6ICAgICAgICAgICAgICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZyxcbiAgICAgIFwiY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3JkZXItY29sb3JcIjogICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm9yZGVyLWNvbG9yLFxuICAgICAgXCJjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24tY2hlY2tlZFwiOiAgICAgICAgICAgICAgICAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWQsXG4gICAgICBcImN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1iZ1wiOiAgICAgICAgICAgICRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmcsXG4gICAgICBcImN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1jb2xvclwiOiAgICAgICAgICRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtY29sb3IsXG4gICAgICBcImN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3JcIjogICRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm9yZGVyLWNvbG9yLFxuICAgICAgXCJjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24taW5kZXRlcm1pbmF0ZVwiOiAgICAgICAgICAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWluZGV0ZXJtaW5hdGUsXG4gICAgICBcImN1c3RvbS1yYWRpby1pbmRpY2F0b3ItaWNvbi1jaGVja2VkXCI6ICAgICAgICAgICAgICAgICAgICRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWljb24tY2hlY2tlZCxcbiAgICAgIFwiY3VzdG9tLXNlbGVjdC1jb2xvclwiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1c3RvbS1zZWxlY3QtY29sb3IsXG4gICAgICBcImN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3JcIjogICAgICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWNvbG9yLFxuICAgICAgXCJjdXN0b20tc2VsZWN0LWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkY3VzdG9tLXNlbGVjdC1iZyxcbiAgICAgIFwiY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1iZ1wiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmcsXG4gICAgICBcImN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1jb2xvcixcbiAgICAgIFwiY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3JcIjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLFxuICAgICAgXCJjdXN0b20tc2VsZWN0LWJhY2tncm91bmRcIjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkY3VzdG9tLXNlbGVjdC1iYWNrZ3JvdW5kLFxuICAgICAgXCJjdXN0b20tc2VsZWN0LWJvcmRlci1jb2xvclwiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkY3VzdG9tLXNlbGVjdC1ib3JkZXItY29sb3IsXG4gICAgICBcImN1c3RvbS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcixcbiAgICAgIFwiY3VzdG9tLXJhbmdlLXRyYWNrLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1c3RvbS1yYW5nZS10cmFjay1iZyxcbiAgICAgIFwiY3VzdG9tLXJhbmdlLXRodW1iLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1c3RvbS1yYW5nZS10aHVtYi1iZyxcbiAgICAgIFwiY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZ1wiOiAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmcsXG4gICAgICBcImN1c3RvbS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZ1wiOiAgICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmcsXG4gICAgICBcImN1c3RvbS1maWxlLWZvY3VzLWJvcmRlci1jb2xvclwiOiAgICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tZmlsZS1mb2N1cy1ib3JkZXItY29sb3IsXG4gICAgICBcImN1c3RvbS1maWxlLWRpc2FibGVkLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tZmlsZS1kaXNhYmxlZC1iZyxcbiAgICAgIFwiY3VzdG9tLWZpbGUtY29sb3JcIjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1c3RvbS1maWxlLWNvbG9yLFxuICAgICAgXCJjdXN0b20tZmlsZS1iZ1wiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkY3VzdG9tLWZpbGUtYmcsXG4gICAgICBcImN1c3RvbS1maWxlLWJvcmRlci1jb2xvclwiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tZmlsZS1ib3JkZXItY29sb3IsXG4gICAgICBcImN1c3RvbS1maWxlLWJ1dHRvbi1jb2xvclwiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tZmlsZS1idXR0b24tY29sb3IsXG4gICAgICBcImN1c3RvbS1maWxlLWJ1dHRvbi1iZ1wiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tZmlsZS1idXR0b24tYmdcbiAgICApXG4gICksXG4gICRjdXN0b20tZm9ybXMtdGhlbWUtbWFwXG4pO1xuIiwiLy8gVGhlIGRyb3Bkb3duIHdyYXBwZXIgKGA8ZGl2PmApXG4uZHJvcHVwLFxuLmRyb3ByaWdodCxcbi5kcm9wZG93bixcbi5kcm9wbGVmdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgLy8gR2VuZXJhdGUgdGhlIGNhcmV0IGF1dG9tYXRpY2FsbHlcbiAgQGluY2x1ZGUgY2FyZXQoKTtcbn1cblxuLy8gVGhlIGRyb3Bkb3duIG1lbnVcbi5kcm9wZG93bi1tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIC8vIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZHJvcGRvd247XG4gIGRpc3BsYXk6IG5vbmU7IC8vIG5vbmUgYnkgZGVmYXVsdCwgYnV0IGJsb2NrIG9uIFwib3BlblwiIG9mIHRoZSBtZW51XG4gIGZsb2F0OiBsZWZ0O1xuICBtaW4td2lkdGg6ICRkcm9wZG93bi1taW4td2lkdGg7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nLXkgMDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkcm9wZG93bi1mb250LXNpemUpO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBFbnN1cmVzIHByb3BlciBhbGlnbm1lbnQgaWYgcGFyZW50IGhhcyBpdCBjaGFuZ2VkIChlLmcuLCBtb2RhbCBmb290ZXIpXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJGRyb3Bkb3duLWJvcmRlci13aWR0aCBzb2xpZDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZHJvcGRvd24tYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGRyb3Bkb3duLWJveC1zaGFkb3cpO1xuXG4gIEBpbmNsdWRlIHRoZW1lcygkZHJvcGRvd24tdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImRyb3Bkb3duLWNvbG9yXCIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJkcm9wZG93bi1iZ1wiKTtcbiAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJkcm9wZG93bi1ib3JkZXItY29sb3JcIik7XG4gIH1cbiAgQGluY2x1ZGUgZWxldmF0aW9uKDQpO1xufVxuXG4uYy1oZWFkZXIgLmRyb3Bkb3duLW1lbnUsXG4ubmF2YmFyIC5kcm9wZG93bi1tZW51LFxuW2RhdGEtZGlzcGxheV49XCJzdGF0aWNcIl0gfiAuZHJvcGRvd24tbWVudSB7XG4gIG1hcmdpbjogJGRyb3Bkb3duLXNwYWNlciAwIDA7IC8vIG92ZXJyaWRlIGRlZmF1bHQgdWxcbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHJlc3BvbnNpdmUtYnJlYWtwb2ludHNcbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5jLWhlYWRlciAuZHJvcGRvd24tbWVudSN7JGluZml4fS1sZWZ0LFxuICAgIC5uYXZiYXIgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tbGVmdCxcbiAgICBbZGF0YS1kaXNwbGF5Xj1cInN0YXRpY1wiXSB+IC5kcm9wZG93bi1tZW51I3skaW5maXh9LWxlZnQge1xuICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYy1oZWFkZXIgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tcmlnaHQsXG4gICAgLm5hdmJhciAuZHJvcGRvd24tbWVudSN7JGluZml4fS1yaWdodCxcbiAgICBbZGF0YS1kaXNwbGF5Xj1cInN0YXRpY1wiXSB+IC5kcm9wZG93bi1tZW51I3skaW5maXh9LXJpZ2h0IHtcbiAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIHJlc3BvbnNpdmUtYnJlYWtwb2ludHNcblxuLy8gQWxsb3cgZm9yIGRyb3Bkb3ducyB0byBnbyBib3R0b20gdXAgKGFrYSwgZHJvcHVwLW1lbnUpXG4vLyBKdXN0IGFkZCAuZHJvcHVwIGFmdGVyIHRoZSBzdGFuZGFyZCAuZHJvcGRvd24gY2xhc3MgYW5kIHlvdVwicmUgc2V0LlxuLmRyb3B1cCB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogJGRyb3Bkb3duLXNwYWNlcjtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KHVwKTtcbiAgfVxufVxuXG4uZHJvcHJpZ2h0IHtcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogMDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICBtYXJnaW4tbGVmdDogJGRyb3Bkb3duLXNwYWNlcjtcbiAgICB9XG4gICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogJGRyb3Bkb3duLXNwYWNlcjtcbiAgICB9XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChyaWdodCk7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7XG4gICAgfVxuICB9XG59XG5cbi5kcm9wbGVmdCB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IDA7XG4gICAgbWFyZ2luLXRvcDogMDtcblxuICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICByaWdodDogMTAwJTtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRkcm9wZG93bi1zcGFjZXI7XG4gICAgfVxuICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICBtYXJnaW4tbGVmdDogJGRyb3Bkb3duLXNwYWNlcjtcbiAgICB9XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChsZWZ0KTtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gYDxocj5gKSB3aXRoaW4gdGhlIGRyb3Bkb3duXG4uZHJvcGRvd24tZGl2aWRlciB7XG4gIEBpbmNsdWRlIHRoZW1lcygkZHJvcGRvd24tdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICBAaW5jbHVkZSBuYXYtZGl2aWRlcih0aGVtZXMtZ2V0LXZhbHVlKFwiZHJvcGRvd24tZGl2aWRlci1iZ1wiKSwgJGRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXksIHRydWUpO1xuICB9XG59XG5cbi8vIExpbmtzLCBidXR0b25zLCBhbmQgbW9yZSB3aXRoaW4gdGhlIGRyb3Bkb3duIG1lbnVcbi8vXG4vLyBgPGJ1dHRvbj5gLXNwZWNpZmljIHN0eWxlcyBhcmUgZGVub3RlZCB3aXRoIGAvLyBGb3IgPGJ1dHRvbj5zYFxuLmRyb3Bkb3duLWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gIGNsZWFyOiBib3RoO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gcHJldmVudCBsaW5rcyBmcm9tIHJhbmRvbWx5IGJyZWFraW5nIG9udG8gbmV3IGxpbmVzXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyBGb3IgYDxidXR0b24+YHNcbiAgYm9yZGVyOiAwOyAvLyBGb3IgYDxidXR0b24+YHNcblxuICBAaW5jbHVkZSB0aGVtZXMoJGRyb3Bkb3duLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJkcm9wZG93bi1saW5rLWNvbG9yXCIpO1xuICB9XG5cbiAgLy8gUHJldmVudCBkcm9wZG93biBvdmVyZmxvdyBpZiB0aGVyZVwicyBubyBwYWRkaW5nXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yNzcwM1xuICBAaWYgJGRyb3Bkb3duLXBhZGRpbmcteSA9PSAwIHtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAvLyBAaW5jbHVkZSBncmFkaWVudC1iZygkZHJvcGRvd24tbGluay1ob3Zlci1iZyk7XG5cbiAgICBAaW5jbHVkZSB0aGVtZXMoJGRyb3Bkb3duLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImRyb3Bkb3duLWxpbmstaG92ZXItY29sb3JcIik7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh0aGVtZXMtZ2V0LXZhbHVlKFwiZHJvcGRvd24tbGluay1ob3Zlci1iZ1wiKSk7XG4gICAgfVxuICB9XG5cbiAgJi5hY3RpdmUsXG4gICY6YWN0aXZlIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgLy8gQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnKTtcblxuICAgIEBpbmNsdWRlIHRoZW1lcygkZHJvcGRvd24tdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3JcIik7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh0aGVtZXMtZ2V0LXZhbHVlKFwiZHJvcGRvd24tbGluay1hY3RpdmUtYmdcIikpO1xuICAgIH1cbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIHRoZW1lcygkZHJvcGRvd24tdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvclwiKTtcbiAgICB9XG4gIH1cbn1cblxuLmRyb3Bkb3duLW1lbnUuc2hvdyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vLyBEcm9wZG93biBzZWN0aW9uIGhlYWRlcnNcbi5kcm9wZG93bi1oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBmb3IgdXNlIHdpdGggaGVhZGluZyBlbGVtZW50c1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1zbSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IC8vIGFzIHdpdGggPiBsaSA+IGFcbiAgQGluY2x1ZGUgdGhlbWVzKCRkcm9wZG93bi10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiZHJvcGRvd24taGVhZGVyLWNvbG9yXCIpO1xuICB9XG59XG5cbi8vIERyb3Bkb3duIHRleHRcbi5kcm9wZG93bi1pdGVtLXRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcblxuICBAaW5jbHVkZSB0aGVtZXMoJGRyb3Bkb3duLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJkcm9wZG93bi1saW5rLWNvbG9yXCIpO1xuICB9XG59XG4iLCJAbWl4aW4gY2FyZXQtZG93bigpIHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0LXVwKCkge1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQtcmlnaHQoKSB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQ7XG59XG5cbkBtaXhpbiBjYXJldC1sZWZ0KCkge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldCgkZGlyZWN0aW9uOiBkb3duKSB7XG4gIEBpZiAkZW5hYmxlLWNhcmV0IHtcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBtYXJnaW4tbGVmdDogJGNhcmV0LXNwYWNpbmc7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRjYXJldC1zcGFjaW5nO1xuICAgICAgfVxuICAgICAgdmVydGljYWwtYWxpZ246ICRjYXJldC12ZXJ0aWNhbC1hbGlnbjtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBAaWYgJGRpcmVjdGlvbiA9PSBkb3duIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtZG93bigpO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHVwIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtdXAoKTtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSByaWdodCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXJpZ2h0KCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRkaXJlY3Rpb24gPT0gbGVmdCB7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkY2FyZXQtc3BhY2luZztcbiAgICAgICAgdmVydGljYWwtYWxpZ246ICRjYXJldC12ZXJ0aWNhbC1hbGlnbjtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtbGVmdCgpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6ZW1wdHk6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiXG4vLyBEcm9wZG93bnNcbi8vXG4vLyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBkcm9wZG93bnNcbiRkcm9wZG93bi1taW4td2lkdGg6ICAgICAgICAgICAgMTByZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy15OiAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXNwYWNlcjogICAgICAgICAgICAgICAuMTI1cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLWZvbnQtc2l6ZTogICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXJhZGl1czogICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci13aWR0aDogICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXM6ICBzdWJ0cmFjdCgkZHJvcGRvd24tYm9yZGVyLXJhZGl1cywgJGRyb3Bkb3duLWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teTogICAgICRuYXYtZGl2aWRlci1tYXJnaW4teSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3gtc2hhZG93OiAgICAgICAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteTogICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXg6ICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24taGVhZGVyLXBhZGRpbmc6ICAgICAgICRkcm9wZG93bi1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBkcm9wZG93bnNcblxuLy8gRGVmYXVsdCB0aGVtZVxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGRyb3Bkb3ducy1kZWZhdWx0LXRoZW1lXG4kZHJvcGRvd24tY29sb3I6ICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJnOiAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGl2aWRlci1iZzogICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWNvbG9yOiAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICBkYXJrZW4oJGdyYXktOTAwLCA1JSkgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZHJvcGRvd25zLWRlZmF1bHQtdGhlbWVcblxuXG4kZHJvcGRvd24tdGhlbWUtbWFwOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kZHJvcGRvd24tdGhlbWUtbWFwOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBkZWZhdWx0OiAoXG4gICAgICBcImRyb3Bkb3duLWNvbG9yXCI6ICAgICAgICAgICAgICAgICRkcm9wZG93bi1jb2xvcixcbiAgICAgIFwiZHJvcGRvd24tYm9yZGVyLWNvbG9yXCI6ICAgICAgICAgJGRyb3Bkb3duLWJvcmRlci1jb2xvcixcbiAgICAgIFwiZHJvcGRvd24tYmdcIjogICAgICAgICAgICAgICAgICAgJGRyb3Bkb3duLWJnLFxuICAgICAgXCJkcm9wZG93bi1kaXZpZGVyLWJnXCI6ICAgICAgICAgICAkZHJvcGRvd24tZGl2aWRlci1iZyxcbiAgICAgIFwiZHJvcGRvd24tbGluay1jb2xvclwiOiAgICAgICAgICAgJGRyb3Bkb3duLWxpbmstY29sb3IsXG4gICAgICBcImRyb3Bkb3duLWxpbmstaG92ZXItY29sb3JcIjogICAgICRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yLFxuICAgICAgXCJkcm9wZG93bi1saW5rLWhvdmVyLWJnXCI6ICAgICAgICAkZHJvcGRvd24tbGluay1ob3Zlci1iZyxcbiAgICAgIFwiZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3JcIjogICAgJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yLFxuICAgICAgXCJkcm9wZG93bi1saW5rLWFjdGl2ZS1iZ1wiOiAgICAgICAkZHJvcGRvd24tbGluay1hY3RpdmUtYmcsXG4gICAgICBcImRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3JcIjogICRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yLFxuICAgICAgXCJkcm9wZG93bi1oZWFkZXItY29sb3JcIjogICAgICAgICAkZHJvcGRvd24taGVhZGVyLWNvbG9yXG4gICAgKVxuICApLFxuICAkZHJvcGRvd24tdGhlbWUtbWFwXG4pO1xuIiwiLy8gSG9yaXpvbnRhbCBkaXZpZGVyc1xuLy9cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gaHIpIHdpdGhpbiBkcm9wZG93bnMgYW5kIG5hdiBsaXN0c1xuXG5AbWl4aW4gbmF2LWRpdmlkZXIoJGNvbG9yOiAkbmF2LWRpdmlkZXItY29sb3IsICRtYXJnaW4teTogJG5hdi1kaXZpZGVyLW1hcmdpbi15LCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAkbWFyZ2luLXkgMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvcjtcbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBuYXYtZGl2aWRlcigpYCBtaXhpblwiLCBcInY0LjQuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG4iLCIuYy1mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAwIDAgJGZvb3Rlci1oZWlnaHQ7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgaGVpZ2h0OiAkZm9vdGVyLWhlaWdodDtcbiAgcGFkZGluZzogMCAkc3BhY2VyO1xuXG4gICZbY2xhc3MqPVwiYmctXCJdIHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoJGJsYWNrLCAuMSk7XG4gIH1cblxuICAmLmMtZm9vdGVyLWZpeGVkIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogJHppbmRleC1maXhlZDtcbiAgICBAaW5jbHVkZSBlbGV2YXRpb24oMiwgXCJ0b3BcIik7XG4gIH1cbn1cblxuQGluY2x1ZGUgdGhlbWVzKCRmb290ZXItdGhlbWUtbWFwLCAkcGFyZW50OiBcIi5jLWZvb3RlclwiKSB7XG4gIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiZm9vdGVyLWNvbG9yXCIpO1xuICBiYWNrZ3JvdW5kOiB0aGVtZXMtZ2V0LXZhbHVlKFwiZm9vdGVyLWJnXCIpO1xuICBAaW5jbHVkZSBib3JkZXJzKHRoZW1lcy1nZXQtdmFsdWUoXCJmb290ZXItYm9yZGVyc1wiKSk7XG59XG4iLCIvLyBGb290ZXJcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvb3RlclxuJGZvb3Rlci1oZWlnaHQ6ICA1MHB4ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb290ZXJcblxuXG4vLyBEZWZhdWx0IFRoZW1lXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9vdGVyLWRlZmF1bHQtdGhlbWVcbiRmb290ZXItZGFyay1iZzogICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJGZvb3Rlci1kYXJrLWNvbG9yOiAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kZm9vdGVyLWRhcmstYm9yZGVyczogIDAgIWRlZmF1bHQ7XG5cbiRmb290ZXItbGlnaHQtYmc6ICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRmb290ZXItbGlnaHQtY29sb3I6ICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGZvb3Rlci1saWdodC1ib3JkZXJzOiAgKCB0b3A6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yICkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvb3Rlci1kZWZhdWx0LXRoZW1lXG5cbiRmb290ZXItdmFyaWFudHMtbWFwOiAgKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGZvb3Rlci12YXJpYW50cy1tYXA6IG1hcC1tZXJnZShcbiAgKFxuICAgIGRhcms6IChcbiAgICAgIFwiZm9vdGVyLWJnXCI6ICAgICAgICRmb290ZXItZGFyay1iZyxcbiAgICAgIFwiZm9vdGVyLWNvbG9yXCI6ICAgICRmb290ZXItZGFyay1jb2xvcixcbiAgICAgIFwiZm9vdGVyLWJvcmRlcnNcIjogICRmb290ZXItZGFyay1ib3JkZXJzXG4gICAgKSxcbiAgICBsaWdodDogKFxuICAgICAgXCJmb290ZXItYmdcIjogICAgICAgJGZvb3Rlci1saWdodC1iZyxcbiAgICAgIFwiZm9vdGVyLWNvbG9yXCI6ICAgICRmb290ZXItbGlnaHQtY29sb3IsXG4gICAgICBcImZvb3Rlci1ib3JkZXJzXCI6ICAkZm9vdGVyLWxpZ2h0LWJvcmRlcnNcbiAgICApXG4gICksXG4gICRmb290ZXItdmFyaWFudHMtbWFwXG4pO1xuXG4kZm9vdGVyLWRlZmF1bHQtdmFyaWFudDogXCJsaWdodFwiICFkZWZhdWx0O1xuJGZvb3Rlci12YXJpYW50czogKFxuICBcImRlZmF1bHRcIjogJGZvb3Rlci1kZWZhdWx0LXZhcmlhbnQsXG4gIFwibWFwXCI6ICAgICAkZm9vdGVyLXZhcmlhbnRzLW1hcFxuKSAhZGVmYXVsdDtcblxuXG4kZm9vdGVyLXRoZW1lLW1hcDogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGZvb3Rlci10aGVtZS1tYXA6IG1hcC1tZXJnZShcbiAgKFxuICAgIGRlZmF1bHQ6ICRmb290ZXItdmFyaWFudHMsXG4gICksXG4gICRmb290ZXItdGhlbWUtbWFwXG4pO1xuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vXG4vLyBUZXh0dWFsIGZvcm0gY29udHJvbHNcbi8vXG5cbi5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZDtcbiAgQGluY2x1ZGUgdGhlbWVzKCRmb3JtLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJpbnB1dC1jb2xvclwiKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaW5wdXQtYmdcIik7XG4gICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaW5wdXQtYm9yZGVyLWNvbG9yXCIpO1xuICB9XG5cbiAgLy8gTm90ZTogVGhpcyBoYXMgbm8gZWZmZWN0IG9uIDxzZWxlY3Q+cyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgYDxzZWxlY3Q+YHMgaW4gQ1NTLlxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLCAwKTtcblxuICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkaW5wdXQtdHJhbnNpdGlvbik7XG5cbiAgLy8gVW5zdHlsZSB0aGUgY2FyZXQgb24gYDxzZWxlY3Q+YHMgaW4gSUUxMCsuXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIC8vIFJlbW92ZSBzZWxlY3Qgb3V0bGluZSBmcm9tIHNlbGVjdCBib3ggaW4gRkZcbiAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtc2hhZG93OiAwIDAgMCAkaW5wdXQtY29sb3I7XG4gIH1cblxuICAvLyBDdXN0b21pemUgdGhlIGA6Zm9jdXNgIHN0YXRlIHRvIGltaXRhdGUgbmF0aXZlIFdlYktpdCBzdHlsZXMuXG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC1mb2N1cygkaWdub3JlLXdhcm5pbmc6IHRydWUpO1xuXG4gIC8vIFBsYWNlaG9sZGVyXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGZvcm0tdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaW5wdXQtcGxhY2Vob2xkZXItY29sb3JcIik7XG4gICAgfVxuICAgIC8vIE92ZXJyaWRlIEZpcmVmb3gncyB1bnVzdWFsIGRlZmF1bHQgb3BhY2l0eTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzExNTI2LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBhbmQgcmVhZC1vbmx5IGlucHV0c1xuICAvL1xuICAvLyBIVE1MNSBzYXlzIHRoYXQgY29udHJvbHMgdW5kZXIgYSBmaWVsZHNldCA+IGxlZ2VuZDpmaXJzdC1jaGlsZCB3b24ndCBiZVxuICAvLyBkaXNhYmxlZCBpZiB0aGUgZmllbGRzZXQgaXMgZGlzYWJsZWQuIER1ZSB0byBpbXBsZW1lbnRhdGlvbiBkaWZmaWN1bHR5LCB3ZVxuICAvLyBkb24ndCBob25vciB0aGF0IGVkZ2UgY2FzZTsgd2Ugc3R5bGUgdGhlbSBhcyBkaXNhYmxlZCBhbnl3YXkuXG4gICY6ZGlzYWJsZWQsXG4gICZbcmVhZG9ubHldIHtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGZvcm0tdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJpbnB1dC1kaXNhYmxlZC1iZ1wiKTtcbiAgICB9XG4gICAgLy8gaU9TIGZpeCBmb3IgdW5yZWFkYWJsZSBkaXNhYmxlZCBjb250ZW50OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTY1NS5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbmlucHV0W3R5cGU9XCJkYXRlXCJdLFxuaW5wdXRbdHlwZT1cInRpbWVcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG5pbnB1dFt0eXBlPVwibW9udGhcIl0ge1xuICAmLmZvcm0tY29udHJvbCB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTsgLy8gRml4IGFwcGVhcmFuY2UgZm9yIGRhdGUgaW5wdXRzIGluIFNhZmFyaVxuICB9XG59XG5cbnNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAmOmZvY3VzOjotbXMtdmFsdWUge1xuICAgIC8vIFN1cHByZXNzIHRoZSBuZXN0ZWQgZGVmYXVsdCB3aGl0ZSB0ZXh0IG9uIGJsdWUgYmFja2dyb3VuZCBoaWdobGlnaHQgZ2l2ZW4gdG9cbiAgICAvLyB0aGUgc2VsZWN0ZWQgb3B0aW9uIHRleHQgd2hlbiB0aGUgKHN0aWxsIGNsb3NlZCkgPHNlbGVjdD4gcmVjZWl2ZXMgZm9jdXNcbiAgICAvLyBpbiBJRSBhbmQgKHVuZGVyIGNlcnRhaW4gY29uZGl0aW9ucykgRWRnZSwgYXMgaXQgbG9va3MgYmFkIGFuZCBjYW5ub3QgYmUgbWFkZSB0b1xuICAgIC8vIG1hdGNoIHRoZSBhcHBlYXJhbmNlIG9mIHRoZSBuYXRpdmUgd2lkZ2V0LlxuICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE5Mzk4LlxuICAgIEBpbmNsdWRlIHRoZW1lcygkZm9ybS10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJpbnB1dC1jb2xvclwiKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJpbnB1dC1iZ1wiKTtcbiAgICB9XG4gIH1cblxuICBvcHRpb24ge1xuICAgIC8vIEFkZCBiYWNrZ3JvdW5kLWNvbG9yIGZvciBvcHRpb24gZWxlbWVudHNcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGZvcm0tdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJzZWxlY3Qtb3B0aW9uLWJnXCIpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBNYWtlIGZpbGUgaW5wdXRzIGJldHRlciBtYXRjaCB0ZXh0IGlucHV0cyBieSBmb3JjaW5nIHRoZW0gdG8gbmV3IGxpbmVzLlxuLmZvcm0tY29udHJvbC1maWxlLFxuLmZvcm0tY29udHJvbC1yYW5nZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuXG4vL1xuLy8gTGFiZWxzXG4vL1xuXG4vLyBGb3IgdXNlIHdpdGggaG9yaXpvbnRhbCBhbmQgaW5saW5lIGZvcm1zLCB3aGVuIHlvdSBuZWVkIHRoZSBsYWJlbCAob3IgbGVnZW5kKVxuLy8gdGV4dCB0byBhbGlnbiB3aXRoIHRoZSBmb3JtIGNvbnRyb2xzLlxuLmNvbC1mb3JtLWxhYmVsIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgdGhlIGA8bGFiZWw+LzxsZWdlbmQ+YCBkZWZhdWx0XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTsgLy8gT3ZlcnJpZGUgdGhlIGA8bGVnZW5kPmAgZGVmYXVsdFxuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xufVxuXG4uY29sLWZvcm0tbGFiZWwtbGcge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcsICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcsICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtbGc7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1zbSB7XG4gIHBhZGRpbmctdG9wOiBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSwgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIHBhZGRpbmctYm90dG9tOiBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSwgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1zbTtcbn1cblxuXG4vLyBSZWFkb25seSBjb250cm9scyBhcyBwbGFpbiB0ZXh0XG4vL1xuLy8gQXBwbHkgY2xhc3MgdG8gYSByZWFkb25seSBpbnB1dCB0byBtYWtlIGl0IGFwcGVhciBsaWtlIHJlZ3VsYXIgcGxhaW5cbi8vIHRleHQgKHdpdGhvdXQgYW55IGJvcmRlciwgYmFja2dyb3VuZCBjb2xvciwgZm9jdXMgaW5kaWNhdG9yKVxuXG4uZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAwO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBtYXRjaCBpbnB1dHMgaWYgdGhpcyBjbGFzcyBjb21lcyBvbiBpbnB1dHMgd2l0aCBkZWZhdWx0IG1hcmdpbnNcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoIDA7XG4gIEBpbmNsdWRlIHRoZW1lcygkZm9ybS10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaW5wdXQtcGxhaW50ZXh0LWNvbG9yXCIpO1xuICB9XG5cbiAgJi5mb3JtLWNvbnRyb2wtc20sXG4gICYuZm9ybS1jb250cm9sLWxnIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBzaXppbmdcbi8vXG4vLyBCdWlsZCBvbiBgLmZvcm0tY29udHJvbGAgd2l0aCBtb2RpZmllciBjbGFzc2VzIHRvIGRlY3JlYXNlIG9yIGluY3JlYXNlIHRoZVxuLy8gaGVpZ2h0IGFuZCBmb250LXNpemUgb2YgZm9ybSBjb250cm9scy5cbi8vXG4vLyBSZXBlYXRlZCBpbiBgX2lucHV0X2dyb3VwLnNjc3NgIHRvIGF2b2lkIFNhc3MgZXh0ZW5kIGlzc3Vlcy5cblxuLmZvcm0tY29udHJvbC1zbSB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtc207XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG4uZm9ybS1jb250cm9sLWxnIHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG5zZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgJltzaXplXSxcbiAgJlttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG50ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8vIEZvcm0gZ3JvdXBzXG4vL1xuLy8gRGVzaWduZWQgdG8gaGVscCB3aXRoIHRoZSBvcmdhbml6YXRpb24gYW5kIHNwYWNpbmcgb2YgdmVydGljYWwgZm9ybXMuIEZvclxuLy8gaG9yaXpvbnRhbCBmb3JtcywgdXNlIHRoZSBwcmVkZWZpbmVkIGdyaWQgY2xhc3Nlcy5cblxuLmZvcm0tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tO1xufVxuXG4uZm9ybS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6ICRmb3JtLXRleHQtbWFyZ2luLXRvcDtcbn1cblxuXG4vLyBGb3JtIGdyaWRcbi8vXG4vLyBTcGVjaWFsIHJlcGxhY2VtZW50IGZvciBvdXIgZ3JpZCBzeXN0ZW0ncyBgLnJvd2AgZm9yIHRpZ2h0ZXIgZm9ybSBsYXlvdXRzLlxuXG4uZm9ybS1yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1yaWdodDogLSRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoIC8gMjtcbiAgbWFyZ2luLWxlZnQ6IC0kZm9ybS1ncmlkLWd1dHRlci13aWR0aCAvIDI7XG5cbiAgPiAuY29sLFxuICA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1ncmlkLWd1dHRlci13aWR0aCAvIDI7XG4gICAgcGFkZGluZy1sZWZ0OiAkZm9ybS1ncmlkLWd1dHRlci13aWR0aCAvIDI7XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveGVzIGFuZCByYWRpb3Ncbi8vXG4vLyBJbmRlbnQgdGhlIGxhYmVscyB0byBwb3NpdGlvbiByYWRpb3MvY2hlY2tib3hlcyBhcyBoYW5naW5nIGNvbnRyb2xzLlxuXG4uZm9ybS1jaGVjayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIEBpbmNsdWRlIGx0ciB7XG4gICAgcGFkZGluZy1sZWZ0OiAkZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI7XG4gIH1cbiAgQGluY2x1ZGUgcnRsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI7XG4gIH1cbn1cblxuLmZvcm0tY2hlY2staW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbi10b3A6ICRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi15O1xuICBAaW5jbHVkZSBsdHIge1xuICAgIG1hcmdpbi1sZWZ0OiAtJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyO1xuICB9XG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtJGZvcm0tY2hlY2staW5wdXQtZ3V0dGVyO1xuICB9XG5cbiAgLy8gVXNlIFtkaXNhYmxlZF0gYW5kIDpkaXNhYmxlZCBmb3Igd29ya2Fyb3VuZCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI4MjQ3XG4gICZbZGlzYWJsZWRdIH4gLmZvcm0tY2hlY2stbGFiZWwsXG4gICY6ZGlzYWJsZWQgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgQGluY2x1ZGUgdGhlbWVzKCR0eXBvZ3JhcGh5LXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInRleHQtbXV0ZWRcIik7XG4gICAgfVxuICB9XG59XG5cbi5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgZGVmYXVsdCBgPGxhYmVsPmAgYm90dG9tIG1hcmdpblxufVxuXG4uZm9ybS1jaGVjay1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgQGluY2x1ZGUgbHRyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IC8vIE92ZXJyaWRlIGJhc2UgLmZvcm0tY2hlY2tcbiAgICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4teDtcbiAgfVxuICBAaW5jbHVkZSBydGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IC8vIE92ZXJyaWRlIGJhc2UgLmZvcm0tY2hlY2tcbiAgICBtYXJnaW4tbGVmdDogJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi14O1xuICB9XG5cbiAgLy8gVW5kbyAuZm9ybS1jaGVjay1pbnB1dCBkZWZhdWx0cyBhbmQgYWRkIHNvbWUgYG1hcmdpbi1yaWdodGAuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5saW5lLWlucHV0LW1hcmdpbi14O1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogJGZvcm0tY2hlY2staW5saW5lLWlucHV0LW1hcmdpbi14O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEZvcm0gdmFsaWRhdGlvblxuLy9cbi8vIFByb3ZpZGUgZmVlZGJhY2sgdG8gdXNlcnMgd2hlbiBmb3JtIGZpZWxkIHZhbHVlcyBhcmUgdmFsaWQgb3IgaW52YWxpZC4gV29ya3Ncbi8vIHByaW1hcmlseSBmb3IgY2xpZW50LXNpZGUgdmFsaWRhdGlvbiB2aWEgc2NvcGVkIGA6aW52YWxpZGAgYW5kIGA6dmFsaWRgXG4vLyBwc2V1ZG8tY2xhc3NlcyBidXQgYWxzbyBpbmNsdWRlcyBgLmlzLWludmFsaWRgIGFuZCBgLmlzLXZhbGlkYCBjbGFzc2VzIGZvclxuLy8gc2VydmVyIHNpZGUgdmFsaWRhdGlvbi5cblxuQGVhY2ggJHN0YXRlLCAkZGF0YSBpbiAkZm9ybS12YWxpZGF0aW9uLXN0YXRlcyB7XG4gIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsIG1hcC1nZXQoJGRhdGEsIGNvbG9yKSwgbWFwLWdldCgkZGF0YSwgaWNvbikpO1xufVxuXG4vLyBJbmxpbmUgZm9ybXNcbi8vXG4vLyBNYWtlIGZvcm1zIGFwcGVhciBpbmxpbmUoLWJsb2NrKSBieSBhZGRpbmcgdGhlIGAuZm9ybS1pbmxpbmVgIGNsYXNzLiBJbmxpbmVcbi8vIGZvcm1zIGJlZ2luIHN0YWNrZWQgb24gZXh0cmEgc21hbGwgKG1vYmlsZSkgZGV2aWNlcyBhbmQgdGhlbiBnbyBpbmxpbmUgd2hlblxuLy8gdmlld3BvcnRzIHJlYWNoIDw3NjhweC5cbi8vXG4vLyBSZXF1aXJlcyB3cmFwcGluZyBpbnB1dHMgYW5kIGxhYmVscyB3aXRoIGAuZm9ybS1ncm91cGAgZm9yIHByb3BlciBkaXNwbGF5IG9mXG4vLyBkZWZhdWx0IEhUTUwgZm9ybSBjb250cm9scyBhbmQgb3VyIGN1c3RvbSBmb3JtIGNvbnRyb2xzIChlLmcuLCBpbnB1dCBncm91cHMpLlxuXG4uZm9ybS1pbmxpbmUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyBQcmV2ZW50IHNob3J0ZXIgZWxlbWVudHMgZnJvbSBncm93aW5nIHRvIHNhbWUgaGVpZ2h0IGFzIG90aGVycyAoZS5nLiwgc21hbGwgYnV0dG9ucyBncm93aW5nIHRvIG5vcm1hbCBzaXplZCBidXR0b24gaGVpZ2h0KVxuXG4gIC8vIEJlY2F1c2Ugd2UgdXNlIGZsZXgsIHRoZSBpbml0aWFsIHNpemluZyBvZiBjaGVja2JveGVzIGlzIGNvbGxhcHNlZCBhbmRcbiAgLy8gZG9lc24ndCBvY2N1cHkgdGhlIGZ1bGwtd2lkdGggKHdoaWNoIGlzIHdoYXQgd2Ugd2FudCBmb3IgeHMgZ3JpZCB0aWVyKSxcbiAgLy8gc28gd2UgZm9yY2UgdGhhdCBoZXJlLlxuICAuZm9ybS1jaGVjayB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvLyBLaWNrIGluIHRoZSBpbmxpbmVcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIGxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC8vIElubGluZS1ibG9jayBhbGwgdGhlIHRoaW5ncyBmb3IgXCJpbmxpbmVcIlxuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAvLyBBbGxvdyBmb2xrcyB0byAqbm90KiB1c2UgYC5mb3JtLWdyb3VwYFxuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IGF1dG87IC8vIFByZXZlbnQgbGFiZWxzIGZyb20gc3RhY2tpbmcgYWJvdmUgaW5wdXRzIGluIGAuZm9ybS1ncm91cGBcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgLy8gTWFrZSBzdGF0aWMgY29udHJvbHMgYmVoYXZlIGxpa2UgcmVndWxhciBvbmVzXG4gICAgLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC5pbnB1dC1ncm91cCxcbiAgICAuY3VzdG9tLXNlbGVjdCB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG5cbiAgICAvLyBSZW1vdmUgZGVmYXVsdCBtYXJnaW4gb24gcmFkaW9zL2NoZWNrYm94ZXMgdGhhdCB3ZXJlIHVzZWQgZm9yIHN0YWNraW5nLCBhbmRcbiAgICAvLyB0aGVuIHVuZG8gdGhlIGZsb2F0aW5nIG9mIHJhZGlvcyBhbmQgY2hlY2tib3hlcyB0byBtYXRjaC5cbiAgICAuZm9ybS1jaGVjayB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi14O1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi14O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5jdXN0b20tY29udHJvbCB7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICAgIC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uZm9ybS1jb250cm9sLWNvbG9yIHtcbiAgbWF4LXdpZHRoOiAzcmVtO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15O1xufVxuXG4uZm9ybS1jb250cm9sLWNvbG9yOjotbW96LWNvbG9yLXN3YXRjaCB7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xufVxuXG4uZm9ybS1jb250cm9sLWNvbG9yOjotd2Via2l0LWNvbG9yLXN3YXRjaCB7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xufVxuIiwiLy8gRm9ybSBjb250cm9sIGZvY3VzIHN0YXRlXG4vL1xuLy8gR2VuZXJhdGUgYSBjdXN0b21pemVkIGZvY3VzIHN0YXRlIGFuZCBmb3IgYW55IGlucHV0IHdpdGggdGhlIHNwZWNpZmllZCBjb2xvcixcbi8vIHdoaWNoIGRlZmF1bHRzIHRvIHRoZSBgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcmAgdmFyaWFibGUuXG4vL1xuLy8gV2UgaGlnaGx5IGVuY291cmFnZSB5b3UgdG8gbm90IGN1c3RvbWl6ZSB0aGUgZGVmYXVsdCB2YWx1ZSwgYnV0IGluc3RlYWQgdXNlXG4vLyB0aGlzIHRvIHR3ZWFrIGNvbG9ycyBvbiBhbiBhcy1uZWVkZWQgYmFzaXMuIFRoaXMgYWVzdGhldGljIGNoYW5nZSBpcyBiYXNlZCBvblxuLy8gV2ViS2l0J3MgZGVmYXVsdCBzdHlsZXMsIGJ1dCBhcHBsaWNhYmxlIHRvIGEgd2lkZXIgcmFuZ2Ugb2YgYnJvd3NlcnMuIEl0c1xuLy8gdXNhYmlsaXR5IGFuZCBhY2Nlc3NpYmlsaXR5IHNob3VsZCBiZSB0YWtlbiBpbnRvIGFjY291bnQgd2l0aCBhbnkgY2hhbmdlLlxuLy9cbi8vIEV4YW1wbGUgdXNhZ2U6IGNoYW5nZSB0aGUgZGVmYXVsdCBibHVlIGJvcmRlciBhbmQgc2hhZG93IHRvIHdoaXRlIGZvciBiZXR0ZXJcbi8vIGNvbnRyYXN0IGFnYWluc3QgYSBkYXJrIGdyYXkgYmFja2dyb3VuZC5cbkBtaXhpbiBmb3JtLWNvbnRyb2wtZm9jdXMoJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAmOmZvY3VzIHtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGZvcm0tdGhlbWUtbWFwKSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImlucHV0LWZvY3VzLWNvbG9yXCIpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImlucHV0LWZvY3VzLWJnXCIpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yXCIpO1xuICAgIH1cbiAgICBvdXRsaW5lOiAwO1xuICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGlucHV0LWJveC1zaGFkb3csICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYGZvcm0tY29udHJvbC1mb2N1cygpYCBtaXhpblwiLCBcInY0LjQuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG5cbi8vIFRoaXMgbWl4aW4gdXNlcyBhbiBgaWYoKWAgdGVjaG5pcXVlIHRvIGJlIGNvbXBhdGlibGUgd2l0aCBEYXJ0IFNhc3Ncbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8xODczI2lzc3VlY29tbWVudC0xNTIyOTM3MjUgZm9yIG1vcmUgZGV0YWlsc1xuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgQGlmICgkc3RhdGUgPT0gXCJ2YWxpZFwiIG9yICRzdGF0ZSA9PSBcImludmFsaWRcIikge1xuICAgIC53YXMtdmFsaWRhdGVkICN7aWYoJiwgXCImXCIsIFwiXCIpfTojeyRzdGF0ZX0sXG4gICAgI3tpZigmLCBcIiZcIiwgXCJcIil9LmlzLSN7JHN0YXRlfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgICN7aWYoJiwgXCImXCIsIFwiXCIpfS5pcy0jeyRzdGF0ZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3JtLXZhbGlkYXRpb24tc3RhdGUoJHN0YXRlLCAkY29sb3IsICRpY29uKSB7XG4gIC4jeyRzdGF0ZX0tZmVlZGJhY2sge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogJGZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcDtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stZm9udC1zaXplKTtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIHotaW5kZXg6IDU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIENvbnRhaW4gdG8gcGFyZW50IHdoZW4gcG9zc2libGVcbiAgICBwYWRkaW5nOiAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteSAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDtcbiAgICBtYXJnaW4tdG9wOiAuMXJlbTtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemUpO1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvciwgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5KTtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICB9XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGljb24pO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG4gIHRleHRhcmVhLmZvcm0tY29udHJvbCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIGxlZnQgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1zZWxlY3Qge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1yaWdodDtcbiAgICAgICAgfVxuICAgICAgICBiYWNrZ3JvdW5kOiAkY3VzdG9tLXNlbGVjdC1iYWNrZ3JvdW5kLCBlc2NhcGUtc3ZnKCRpY29uKSAkY3VzdG9tLXNlbGVjdC1iZyBuby1yZXBlYXQgJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbiAvICRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgfVxuXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpjaGVja2VkIHtcbiAgICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiBsaWdodGVuKCRjb2xvciwgMTAlKTtcbiAgICAgICAgICBAaW5jbHVkZSBncmFkaWVudC1iZyhsaWdodGVuKCRjb2xvciwgMTAlKSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KDpjaGVja2VkKSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIGN1c3RvbSBmaWxlXG4gIC5jdXN0b20tZmlsZS1pbnB1dCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIENvbnRhaW5lciB3aWR0aHNcbi8vXG4vLyBTZXQgdGhlIGNvbnRhaW5lciB3aWR0aCwgYW5kIG92ZXJyaWRlIGl0IGZvciBmaXhlZCBuYXZiYXJzIGluIG1lZGlhIHF1ZXJpZXMuXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIC8vIFNpbmdsZSBjb250YWluZXIgY2xhc3Mgd2l0aCBicmVha3BvaW50IG1heC13aWR0aHNcbiAgLmNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgbWFrZS1jb250YWluZXIoKTtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lci1tYXgtd2lkdGhzKCk7XG4gIH1cblxuICAvLyAxMDAlIHdpZGUgY29udGFpbmVyIGF0IGFsbCBicmVha3BvaW50c1xuICAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lcigpO1xuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSBjb250YWluZXJzIHRoYXQgYXJlIDEwMCUgd2lkZSB1bnRpbCBhIGJyZWFrcG9pbnRcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgLmNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICBAZXh0ZW5kIC5jb250YWluZXItZmx1aWQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAgICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgICB9XG5cbiAgICAgIC8vIEV4dGVuZCBlYWNoIGJyZWFrcG9pbnQgd2hpY2ggaXMgc21hbGxlciBvciBlcXVhbCB0byB0aGUgY3VycmVudCBicmVha3BvaW50XG4gICAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IHRydWU7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkd2lkdGggaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgICAgICBAaWYgKCRleHRlbmQtYnJlYWtwb2ludCkge1xuICAgICAgICAgIC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRncmlkLWJyZWFrcG9pbnRzKX0ge1xuICAgICAgICAgICAgQGV4dGVuZCAlcmVzcG9uc2l2ZS1jb250YWluZXItI3skYnJlYWtwb2ludH07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gT25jZSB0aGUgY3VycmVudCBicmVha3BvaW50IGlzIHJlYWNoZWQsIHN0b3AgZXh0ZW5kaW5nXG4gICAgICAgICAgQGlmICgkYnJlYWtwb2ludCA9PSAkbmFtZSkge1xuICAgICAgICAgICAgJGV4dGVuZC1icmVha3BvaW50OiBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBSb3dcbi8vXG4vLyBSb3dzIGNvbnRhaW4geW91ciBjb2x1bW5zLlxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAucm93IHtcbiAgICBAaW5jbHVkZSBtYWtlLXJvdygpO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBuZWdhdGl2ZSBtYXJnaW4gZnJvbSBkZWZhdWx0IC5yb3csIHRoZW4gdGhlIGhvcml6b250YWwgcGFkZGluZ1xuICAvLyBmcm9tIGFsbCBpbW1lZGlhdGUgY2hpbGRyZW4gY29sdW1ucyAodG8gcHJldmVudCBydW5hd2F5IHN0eWxlIGluaGVyaXRhbmNlKS5cbiAgLm5vLWd1dHRlcnMge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcblxuICAgID4gLmNvbCxcbiAgICA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIENvbHVtbnNcbi8vXG4vLyBDb21tb24gc3R5bGVzIGZvciBzbWFsbCBhbmQgbGFyZ2UgZ3JpZCBjb2x1bW5zXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZC1jb2x1bW5zKCk7XG59XG5cbi5yb3cucm93LWVxdWFsIHtcbiAgcGFkZGluZy1yaWdodDogKCRncmlkLWd1dHRlci13aWR0aCAvIDQpO1xuICBwYWRkaW5nLWxlZnQ6ICgkZ3JpZC1ndXR0ZXItd2lkdGggLyA0KTtcbiAgbWFyZ2luLXJpZ2h0OiAoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gLTIpO1xuICBtYXJnaW4tbGVmdDogKCRncmlkLWd1dHRlci13aWR0aCAvIC0yKTtcblxuICBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgcGFkZGluZy1yaWdodDogKCRncmlkLWd1dHRlci13aWR0aCAvIDQpO1xuICAgIHBhZGRpbmctbGVmdDogKCRncmlkLWd1dHRlci13aWR0aCAvIDQpO1xuICB9XG59XG5cbi5tYWluIC5jb250YWluZXItZmx1aWQge1xuICBwYWRkaW5nOiAwIDMwcHg7XG59XG4iLCIvLy8gR3JpZCBzeXN0ZW1cbi8vXG4vLyBHZW5lcmF0ZSBzZW1hbnRpYyBncmlkIGNvbHVtbnMgd2l0aCB0aGVzZSBtaXhpbnMuXG5cbkBtaXhpbiBtYWtlLWNvbnRhaW5lcigkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgLyAyO1xuICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXIgLyAyO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG5cbi8vIEZvciBlYWNoIGJyZWFrcG9pbnQsIGRlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiB0aGUgY29udGFpbmVyIGluIGEgbWVkaWEgcXVlcnlcbkBtaXhpbiBtYWtlLWNvbnRhaW5lci1tYXgtd2lkdGhzKCRtYXgtd2lkdGhzOiAkY29udGFpbmVyLW1heC13aWR0aHMsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRtYXgtd2lkdGhzIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYWtlLXJvdygkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC0kZ3V0dGVyIC8gMjtcbiAgbWFyZ2luLWxlZnQ6IC0kZ3V0dGVyIC8gMjtcbn1cblxuQG1peGluIG1ha2UtY29sLXJlYWR5KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIFByZXZlbnQgY29sdW1ucyBmcm9tIGJlY29taW5nIHRvbyBuYXJyb3cgd2hlbiBhdCBzbWFsbGVyIGdyaWQgdGllcnMgYnlcbiAgLy8gYWx3YXlzIHNldHRpbmcgYHdpZHRoOiAxMDAlO2AuIFRoaXMgd29ya3MgYmVjYXVzZSB3ZSB1c2UgYGZsZXhgIHZhbHVlc1xuICAvLyBsYXRlciBvbiB0byBvdmVycmlkZSB0aGlzIGluaXRpYWwgd2lkdGguXG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyIC8gMjtcbiAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyIC8gMjtcbn1cblxuQG1peGluIG1ha2UtY29sKCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICBmbGV4OiAwIDAgcGVyY2VudGFnZSgkc2l6ZSAvICRjb2x1bW5zKTtcbiAgLy8gQWRkIGEgYG1heC13aWR0aGAgdG8gZW5zdXJlIGNvbnRlbnQgd2l0aGluIGVhY2ggY29sdW1uIGRvZXMgbm90IGJsb3cgb3V0XG4gIC8vIHRoZSB3aWR0aCBvZiB0aGUgY29sdW1uLiBBcHBsaWVzIHRvIElFMTArIGFuZCBGaXJlZm94LiBDaHJvbWUgYW5kIFNhZmFyaVxuICAvLyBkbyBub3QgYXBwZWFyIHRvIHJlcXVpcmUgdGhpcy5cbiAgbWF4LXdpZHRoOiBwZXJjZW50YWdlKCRzaXplIC8gJGNvbHVtbnMpO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtYXV0bygpIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIFJlc2V0IGVhcmxpZXIgZ3JpZCB0aWVyc1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtb2Zmc2V0KCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICAkbnVtOiAkc2l6ZSAvICRjb2x1bW5zO1xuICBtYXJnaW4tbGVmdDogaWYoJG51bSA9PSAwLCAwLCBwZXJjZW50YWdlKCRudW0pKTtcbn1cblxuLy8gUm93IGNvbHVtbnNcbi8vXG4vLyBTcGVjaWZ5IG9uIGEgcGFyZW50IGVsZW1lbnQoZS5nLiwgLnJvdykgdG8gZm9yY2UgaW1tZWRpYXRlIGNoaWxkcmVuIGludG8gTk5cbi8vIG51bWJlcm9mIGNvbHVtbnMuIFN1cHBvcnRzIHdyYXBwaW5nIHRvIG5ldyBsaW5lcywgYnV0IGRvZXMgbm90IGRvIGEgTWFzb25yeVxuLy8gc3R5bGUgZ3JpZC5cbkBtaXhpbiByb3ctY29scygkY291bnQpIHtcbiAgJiA+ICoge1xuICAgIGZsZXg6IDAgMCAxMDAlIC8gJGNvdW50O1xuICAgIG1heC13aWR0aDogMTAwJSAvICRjb3VudDtcbiAgfVxufVxuIiwiXG5cbi8vIEdyaWQgYnJlYWtwb2ludHNcbi8vXG4vLyBEZWZpbmUgdGhlIG1pbmltdW0gZGltZW5zaW9ucyBhdCB3aGljaCB5b3VyIGxheW91dCB3aWxsIGNoYW5nZSxcbi8vIGFkYXB0aW5nIHRvIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMsIGZvciB1c2UgaW4gbWVkaWEgcXVlcmllcy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyaWQtYnJlYWtwb2ludHNcbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gIHhzOiAwLFxuICBzbTogNTc2cHgsXG4gIG1kOiA3NjhweCxcbiAgbGc6IDk5MnB4LFxuICB4bDogMTIwMHB4LFxuICB4eGw6IDE0MDBweFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZ3JpZC1icmVha3BvaW50c1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcbkBpbmNsdWRlIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5cblxuLy8gR3JpZCBjb250YWluZXJzXG4vL1xuLy8gRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbnRhaW5lci1tYXgtd2lkdGhzXG4kY29udGFpbmVyLW1heC13aWR0aHM6IChcbiAgc206IDU0MHB4LFxuICBtZDogNzIwcHgsXG4gIGxnOiA5NjBweCxcbiAgeGw6IDExNDBweCxcbiAgeHhsOiAxMzIwcHhcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNvbnRhaW5lci1tYXgtd2lkdGhzXG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRjb250YWluZXItbWF4LXdpZHRocywgXCIkY29udGFpbmVyLW1heC13aWR0aHNcIik7XG5cblxuLy8gR3JpZCBjb2x1bW5zXG4vL1xuLy8gU2V0IHRoZSBudW1iZXIgb2YgY29sdW1ucyBhbmQgc3BlY2lmeSB0aGUgd2lkdGggb2YgdGhlIGd1dHRlcnMuXG5cbiRncmlkLWNvbHVtbnM6ICAgICAgIDEyICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgMzBweCAhZGVmYXVsdDtcbiRncmlkLXJvdy1jb2x1bW5zOiAgIDYgIWRlZmF1bHQ7XG4iLCIvLyBGcmFtZXdvcmsgZ3JpZCBnZW5lcmF0aW9uXG4vL1xuLy8gVXNlZCBvbmx5IGJ5IEJvb3RzdHJhcCB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgZ3JpZCBjbGFzc2VzIGdpdmVuXG4vLyBhbnkgdmFsdWUgb2YgYCRncmlkLWNvbHVtbnNgLlxuXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAvLyBDb21tb24gcHJvcGVydGllcyBmb3IgYWxsIGJyZWFrcG9pbnRzXG4gICVncmlkLWNvbHVtbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgLyAyO1xuICAgIHBhZGRpbmctbGVmdDogJGd1dHRlciAvIDI7XG4gIH1cblxuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG5cbiAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgIC8vIEFsbG93IGNvbHVtbnMgdG8gc3RyZXRjaCBmdWxsIHdpZHRoIGJlbG93IHRoZWlyIGJyZWFrcG9pbnRzXG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgQGV4dGVuZCAlZ3JpZC1jb2x1bW47XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY29sI3skaW5maXh9LFxuICAgIC5jb2wjeyRpbmZpeH0tYXV0byB7XG4gICAgICBAZXh0ZW5kICVncmlkLWNvbHVtbjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIC8vIFByb3ZpZGUgYmFzaWMgYC5jb2wte2JwfWAgY2xhc3NlcyBmb3IgZXF1YWwtd2lkdGggZmxleGJveCBjb2x1bW5zXG4gICAgICAuY29sI3skaW5maXh9IHtcbiAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICBtaW4td2lkdGg6IDA7IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI1NDEwXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgQGlmICRncmlkLXJvdy1jb2x1bW5zID4gMCB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtcm93LWNvbHVtbnMge1xuICAgICAgICAgIC5yb3ctY29scyN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSByb3ctY29scygkaSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5jb2wjeyRpbmZpeH0tYXV0byB7XG4gICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLWF1dG8oKTtcbiAgICAgIH1cblxuICAgICAgQGlmICRjb2x1bW5zID4gMCB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAgIC5jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2woJGksICRjb2x1bW5zKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLm9yZGVyI3skaW5maXh9LWZpcnN0IHsgb3JkZXI6IC0xOyB9XG5cbiAgICAgIC5vcmRlciN7JGluZml4fS1sYXN0IHsgb3JkZXI6ICRjb2x1bW5zICsgMTsgfVxuXG4gICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgLm9yZGVyI3skaW5maXh9LSN7JGl9IHsgb3JkZXI6ICRpOyB9XG4gICAgICB9XG5cbiAgICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgICAvLyBgJGNvbHVtbnMgLSAxYCBiZWNhdXNlIG9mZnNldHRpbmcgYnkgdGhlIHdpZHRoIG9mIGFuIGVudGlyZSByb3cgaXNuJ3QgcG9zc2libGVcbiAgICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAoJGNvbHVtbnMgLSAxKSB7XG4gICAgICAgICAgQGlmIG5vdCAoJGluZml4ID09IFwiXCIgYW5kICRpID09IDApIHsgLy8gQXZvaWQgZW1pdHRpbmcgdXNlbGVzcyAub2Zmc2V0LTBcbiAgICAgICAgICAgIC5vZmZzZXQjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1vZmZzZXQoJGksICRjb2x1bW5zKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5jLWhlYWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LXNocmluazogMDtcbiAgbWluLWhlaWdodDogJGhlYWRlci1oZWlnaHQ7XG5cbiAgJltjbGFzcyo9XCJiZy1cIl0gIHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoJGJsYWNrLCAuMSk7XG4gIH1cblxuICAmLmMtaGVhZGVyLWZpeGVkIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAkemluZGV4LWZpeGVkIC0gMTtcbiAgICBAaW5jbHVkZSBlbGV2YXRpb24oMik7XG4gIH1cblxuICAuYy1zdWJoZWFkZXIge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gIH1cbn1cblxuLmMtaGVhZGVyLWJyYW5kIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aWR0aDogJGhlYWRlci1icmFuZC13aWR0aDtcbiAgbWluLWhlaWdodDogJGhlYWRlci1oZWlnaHQ7XG4gIHRyYW5zaXRpb246IHdpZHRoICRsYXlvdXQtdHJhbnNpdGlvbi1zcGVlZDtcblxuICAmLmMtaGVhZGVyLWJyYW5kLWNlbnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogJGhlYWRlci1oZWlnaHQ7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTEwMCUpO1xuXG4gICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICB9XG4gICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgIHJpZ2h0OiA1MCU7XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAgICYuYy1oZWFkZXItYnJhbmQtI3skYnJlYWtwb2ludH0tZG93bi1jZW50ZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogJGhlYWRlci1oZWlnaHQ7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0xMDAlKTtcbiAgICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgICByaWdodDogNTAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAgICYuYy1oZWFkZXItYnJhbmQtI3skYnJlYWtwb2ludH0tdXAtY2VudGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6ICRoZWFkZXItaGVpZ2h0O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtMTAwJSk7XG4gICAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgICAgcmlnaHQ6IDUwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uYy1oZWFkZXItdG9nZ2xlciB7XG4gIG1pbi13aWR0aDogNTBweDtcbiAgZm9udC1zaXplOiAkaGVhZGVyLXRvZ2dsZXItZm9udC1zaXplO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGVyLXRvZ2dsZXItYmc7XG4gIGJvcmRlcjogMDsgLy8gcmVtb3ZlIGRlZmF1bHQgYnV0dG9uIHN0eWxlXG4gIEBpbmNsdWRlIGJvcmRlcnMoJGhlYWRlci10b2dnbGVyLWJvcmRlcik7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGhlYWRlci10b2dnbGVyLWJvcmRlci1yYWRpdXMpO1xuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG5cbiAgLy8gT3BpbmlvbmF0ZWQ6IGFkZCBcImhhbmRcIiBjdXJzb3IgdG8gbm9uLWRpc2FibGVkIC5uYXZiYXItdG9nZ2xlciBlbGVtZW50c1xuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguYy1kaXNhYmxlZCkge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG4uYy1oZWFkZXItdG9nZ2xlci1pY29uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogJGhlYWRlci10b2dnbGVyLWZvbnQtc2l6ZSAqIDEuMjU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xufVxuXG4uYy1oZWFkZXItbmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogJGhlYWRlci1oZWlnaHQ7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgLmMtaGVhZGVyLW5hdi1pdGVtIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAuYy1oZWFkZXItbmF2LWJ0biB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAkYnRuLWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcblxuICAgIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5jLWhlYWRlci1uYXYtbGluayxcbiAgLmMtaGVhZGVyLW5hdi1idG4ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkaGVhZGVyLW5hdi1saW5rLXBhZGRpbmcteDtcbiAgICBwYWRkaW5nLWxlZnQ6ICRoZWFkZXItbmF2LWxpbmstcGFkZGluZy14O1xuXG4gICAgLmJhZGdlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbWFyZ2luLXRvcDogLTE2cHg7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgcmlnaHQ6IDUwJTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC5kcm9wZG93bi1pdGVtIHtcbiAgICBtaW4td2lkdGg6IDE4MHB4O1xuICB9XG59XG5cbi8vXG4vLyBIZWFkZXIgdmFyaWFudHNcbi8vXG5cbkBpbmNsdWRlIHRoZW1lcygkaGVhZGVyLXRoZW1lLW1hcCwgJGNyZWF0ZTogYXBwZW5kLCAkcGFyZW50OiBcIi5jLWhlYWRlclwiKSB7XG4gIGJhY2tncm91bmQ6IHRoZW1lcy1nZXQtdmFsdWUoXCJoZWFkZXItYmdcIik7XG4gIEBpbmNsdWRlIGJvcmRlcnModGhlbWVzLWdldC12YWx1ZShcImhlYWRlci1ib3JkZXJcIikpO1xuXG4gIC5jLXN1YmhlYWRlciB7XG4gICAgbWFyZ2luLXRvcDogLTFweDtcbiAgICBib3JkZXItdG9wOiB0aGVtZXMtZ2V0LXZhbHVlKFwic3ViaGVhZGVyLXNlcGFyYXRvclwiKTtcbiAgfVxuXG4gIC5jLWhlYWRlci1icmFuZCB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJoZWFkZXItYnJhbmQtY29sb3JcIik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImhlYWRlci1icmFuZC1iZ1wiKTtcbiAgICBAaW5jbHVkZSBib3JkZXJzKHRoZW1lcy1nZXQtdmFsdWUoXCJoZWFkZXItYnJhbmQtYm9yZGVyXCIpKTtcblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaGVhZGVyLWJyYW5kLWhvdmVyLWNvbG9yXCIpO1xuICAgIH1cbiAgfVxuXG4gIC5jLWhlYWRlci1uYXYge1xuICAgIC5jLWhlYWRlci1uYXYtbGluayxcbiAgICAuYy1oZWFkZXItbmF2LWJ0biB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImhlYWRlci1jb2xvclwiKTtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImhlYWRlci1ob3Zlci1jb2xvclwiKTtcbiAgICAgIH1cblxuICAgICAgJi5jLWRpc2FibGVkIHtcbiAgICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJoZWFkZXItZGlzYWJsZWQtY29sb3JcIik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmMtc2hvdyA+IC5jLWhlYWRlci1uYXYtbGluayxcbiAgICAuYy1hY3RpdmUgPiAuYy1oZWFkZXItbmF2LWxpbmssXG4gICAgLmMtaGVhZGVyLW5hdi1saW5rLmMtc2hvdyxcbiAgICAuYy1oZWFkZXItbmF2LWxpbmsuYy1hY3RpdmUge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJoZWFkZXItYWN0aXZlLWNvbG9yXCIpO1xuICAgIH1cbiAgfVxuXG4gIC5jLWhlYWRlci10b2dnbGVyIHtcbiAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImhlYWRlci1jb2xvclwiKTtcbiAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJoZWFkZXItdG9nZ2xlci1ib3JkZXItY29sb3JcIik7XG4gIH1cblxuICAuYy1oZWFkZXItdG9nZ2xlci1pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaGVhZGVyLXRvZ2dsZXItaWNvbi1iZ1wiKTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdGhlbWVzLWdldC12YWx1ZShcImhlYWRlci10b2dnbGVyLWhvdmVyLWljb24tYmdcIik7XG4gICAgfVxuICB9XG5cbiAgLmMtaGVhZGVyLXRleHQge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaGVhZGVyLWNvbG9yXCIpO1xuICAgIGEge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJoZWFkZXItYWN0aXZlLWNvbG9yXCIpO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaGVhZGVyLWFjdGl2ZS1jb2xvclwiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEhlYWRlclxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgaGVhZGVyXG4kaGVhZGVyLWhlaWdodDogICAgICAgICAgICAgICAgIDU2cHggIWRlZmF1bHQ7XG4kaGVhZGVyLWJyYW5kLXdpZHRoOiAgICAgICAgICAgIGF1dG8gIWRlZmF1bHQ7XG4kaGVhZGVyLWJyYW5kLW1pbmltaXplZC13aWR0aDogIDU2cHggIWRlZmF1bHQ7XG5cbiRoZWFkZXItcGFkZGluZy15OiAgJHNwYWNlciAvIDIgIWRlZmF1bHQ7XG4kaGVhZGVyLXBhZGRpbmcteDogICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRoZWFkZXItbmF2LWxpbmstcGFkZGluZy14OiAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRoZWFkZXItYnJhbmQtZm9udC1zaXplOiAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRoZWFkZXItYnJhbmQtaGVpZ2h0OiAgICAgJGhlYWRlci1icmFuZC1mb250LXNpemUgKiAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRoZWFkZXItYnJhbmQtcGFkZGluZy15OiAgKCRuYXYtbGluay1oZWlnaHQgLSAkaGVhZGVyLWJyYW5kLWhlaWdodCkgLyAyICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBoZWFkZXJcblxuXG4vLyBEZWZhdWx0IHRoZW1lXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBoZWFkZXItZGVmYXVsdC10aGVtZVxuJGhlYWRlci10b2dnbGVyLWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRoZWFkZXItdG9nZ2xlci1wYWRkaW5nLXk6ICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGhlYWRlci10b2dnbGVyLXBhZGRpbmcteDogICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kaGVhZGVyLXRvZ2dsZXItZm9udC1zaXplOiAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kaGVhZGVyLXRvZ2dsZXItYm9yZGVyOiAgICAgICAgIDAgIWRlZmF1bHQ7XG4kaGVhZGVyLXRvZ2dsZXItYm9yZGVyLXJhZGl1czogICRidG4tYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGhlYWRlci1saWdodC1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kaGVhZGVyLWxpZ2h0LWNvbG9yOiAgICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG4kaGVhZGVyLWxpZ2h0LWJvcmRlcjogICAgICAgICAgICAgICAgICggYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1jb2xvciApICFkZWZhdWx0O1xuJGhlYWRlci1saWdodC1ob3Zlci1jb2xvcjogICAgICAgICAgICByZ2JhKCRibGFjaywgLjcpICFkZWZhdWx0O1xuJGhlYWRlci1saWdodC1hY3RpdmUtY29sb3I6ICAgICAgICAgICByZ2JhKCRibGFjaywgLjkpICFkZWZhdWx0O1xuJGhlYWRlci1saWdodC1kaXNhYmxlZC1jb2xvcjogICAgICAgICByZ2JhKCRibGFjaywgLjMpICFkZWZhdWx0O1xuJGhlYWRlci1saWdodC10b2dnbGVyLWljb24tYmc6ICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB2aWV3Qm94PScwIDAgMzAgMzAnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIHN0cm9rZT0nI3skaGVhZGVyLWxpZ2h0LWNvbG9yfScgc3Ryb2tlLXdpZHRoPScyLjI1JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRoZWFkZXItbGlnaHQtdG9nZ2xlci1ob3Zlci1pY29uLWJnOiAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0Nzdmcgdmlld0JveD0nMCAwIDMwIDMwJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBzdHJva2U9JyN7JGhlYWRlci1saWdodC1ob3Zlci1jb2xvcn0nIHN0cm9rZS13aWR0aD0nMi4yNScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kaGVhZGVyLWxpZ2h0LXRvZ2dsZXItYm9yZGVyLWNvbG9yOiAgIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiRoZWFkZXItZGFyay1iZzogICAgICAgICAgICAgICAgICAgICAkZ3JheS1iYXNlICFkZWZhdWx0O1xuJGhlYWRlci1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNzUpICFkZWZhdWx0O1xuJGhlYWRlci1kYXJrLWJvcmRlcjogICAgICAgICAgICAgICAgICggYm90dG9tOiAxcHggc29saWQgJGdyYXktODAwICkgIWRlZmF1bHQ7XG4kaGVhZGVyLWRhcmstaG92ZXItY29sb3I6ICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC45KSAhZGVmYXVsdDtcbiRoZWFkZXItZGFyay1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kaGVhZGVyLWRhcmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAgcmdiYSgkd2hpdGUsIC4yNSkgIWRlZmF1bHQ7XG4kaGVhZGVyLWRhcmstdG9nZ2xlci1pY29uLWJnOiAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0Nzdmcgdmlld0JveD0nMCAwIDMwIDMwJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBzdHJva2U9JyN7JGhlYWRlci1kYXJrLWNvbG9yfScgc3Ryb2tlLXdpZHRoPScyLjI1JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRoZWFkZXItZGFyay10b2dnbGVyLWhvdmVyLWljb24tYmc6ICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB2aWV3Qm94PScwIDAgMzAgMzAnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIHN0cm9rZT0nI3skaGVhZGVyLWRhcmstaG92ZXItY29sb3J9JyBzdHJva2Utd2lkdGg9JzIuMjUnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJGhlYWRlci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yOiAgIHJnYmEoJHdoaXRlLCAuMSkgIWRlZmF1bHQ7XG5cbiRoZWFkZXItbGlnaHQtYnJhbmQtYmc6ICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGhlYWRlci1saWdodC1icmFuZC1ib3JkZXI6ICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRoZWFkZXItbGlnaHQtYnJhbmQtY29sb3I6ICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRoZWFkZXItbGlnaHQtYnJhbmQtaG92ZXItY29sb3I6ICAgICAgIGRhcmtlbigkZ3JheS05MDAsIDEwJSkgIWRlZmF1bHQ7XG4kaGVhZGVyLWxpZ2h0LWJyYW5kLW1pbmltaXplZC1iZzogICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRoZWFkZXItbGlnaHQtYnJhbmQtbWluaW1pemVkLWJvcmRlcjogIDAgIWRlZmF1bHQ7XG5cbiRoZWFkZXItZGFyay1icmFuZC1iZzogICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kaGVhZGVyLWRhcmstYnJhbmQtYm9yZGVyOiAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kaGVhZGVyLWRhcmstYnJhbmQtY29sb3I6ICAgICAgICAgICAgICRoZWFkZXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kaGVhZGVyLWRhcmstYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICRoZWFkZXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kaGVhZGVyLWRhcmstYnJhbmQtbWluaW1pemVkLWJnOiAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGhlYWRlci1kYXJrLWJyYW5kLW1pbmltaXplZC1ib3JkZXI6ICAwICFkZWZhdWx0O1xuXG4kc3ViaGVhZGVyLWxpZ2h0LXNlcGFyYXRvcjogIDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kc3ViaGVhZGVyLWRhcmstc2VwYXJhdG9yOiAgMXB4IHNvbGlkICRncmF5LTgwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgaGVhZGVyLWRlZmF1bHQtdGhlbWVcblxuXG4kaGVhZGVyLXZhcmlhbnRzLW1hcDogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGhlYWRlci12YXJpYW50cy1tYXA6IG1hcC1tZXJnZShcbiAgKFxuICAgIGRhcms6IChcbiAgICAgIFwiaGVhZGVyLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICRoZWFkZXItZGFyay1iZyxcbiAgICAgIFwiaGVhZGVyLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICRoZWFkZXItZGFyay1jb2xvcixcbiAgICAgIFwiaGVhZGVyLWJvcmRlclwiOiAgICAgICAgICAgICAgICAgICRoZWFkZXItZGFyay1ib3JkZXIsXG4gICAgICBcImhlYWRlci1ob3Zlci1jb2xvclwiOiAgICAgICAgICAgICAkaGVhZGVyLWRhcmstaG92ZXItY29sb3IsXG4gICAgICBcImhlYWRlci1hY3RpdmUtY29sb3JcIjogICAgICAgICAgICAkaGVhZGVyLWRhcmstYWN0aXZlLWNvbG9yLFxuICAgICAgXCJoZWFkZXItZGlzYWJsZWQtY29sb3JcIjogICAgICAgICAgJGhlYWRlci1kYXJrLWRpc2FibGVkLWNvbG9yLFxuICAgICAgXCJoZWFkZXItdG9nZ2xlci1pY29uLWJnXCI6ICAgICAgICAgJGhlYWRlci1kYXJrLXRvZ2dsZXItaWNvbi1iZyxcbiAgICAgIFwiaGVhZGVyLXRvZ2dsZXItaG92ZXItaWNvbi1iZ1wiOiAgICRoZWFkZXItZGFyay10b2dnbGVyLWhvdmVyLWljb24tYmcsXG4gICAgICBcImhlYWRlci10b2dnbGVyLWJvcmRlci1jb2xvclwiOiAgICAkaGVhZGVyLWRhcmstdG9nZ2xlci1ib3JkZXItY29sb3IsXG4gICAgICBcImhlYWRlci1icmFuZC1iZ1wiOiAgICAgICAgICAgICAgICAkaGVhZGVyLWRhcmstYnJhbmQtYmcsXG4gICAgICBcImhlYWRlci1icmFuZC1ib3JkZXJcIjogICAgICAgICAgICAkaGVhZGVyLWRhcmstYnJhbmQtYm9yZGVyLFxuICAgICAgXCJoZWFkZXItYnJhbmQtY29sb3JcIjogICAgICAgICAgICAgJGhlYWRlci1kYXJrLWJyYW5kLWNvbG9yLFxuICAgICAgXCJoZWFkZXItYnJhbmQtaG92ZXItY29sb3JcIjogICAgICAgJGhlYWRlci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yLFxuICAgICAgXCJoZWFkZXItYnJhbmQtbWluaW1pemVkLWJnXCI6ICAgICAgJGhlYWRlci1kYXJrLWJyYW5kLW1pbmltaXplZC1iZyxcbiAgICAgIFwiaGVhZGVyLWJyYW5kLW1pbmltaXplZC1ib3JkZXJcIjogICRoZWFkZXItZGFyay1icmFuZC1taW5pbWl6ZWQtYm9yZGVyLFxuICAgICAgXCJzdWJoZWFkZXItc2VwYXJhdG9yXCI6ICAgICAgICAgICAgJHN1YmhlYWRlci1kYXJrLXNlcGFyYXRvclxuICAgICksXG4gICAgbGlnaHQ6IChcbiAgICAgIFwiaGVhZGVyLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICRoZWFkZXItbGlnaHQtYmcsXG4gICAgICBcImhlYWRlci1jb2xvclwiOiAgICAgICAgICAgICAgICAgICAkaGVhZGVyLWxpZ2h0LWNvbG9yLFxuICAgICAgXCJoZWFkZXItYm9yZGVyXCI6ICAgICAgICAgICAgICAgICAgJGhlYWRlci1saWdodC1ib3JkZXIsXG4gICAgICBcImhlYWRlci1ob3Zlci1jb2xvclwiOiAgICAgICAgICAgICAkaGVhZGVyLWxpZ2h0LWhvdmVyLWNvbG9yLFxuICAgICAgXCJoZWFkZXItYWN0aXZlLWNvbG9yXCI6ICAgICAgICAgICAgJGhlYWRlci1saWdodC1hY3RpdmUtY29sb3IsXG4gICAgICBcImhlYWRlci1kaXNhYmxlZC1jb2xvclwiOiAgICAgICAgICAkaGVhZGVyLWxpZ2h0LWRpc2FibGVkLWNvbG9yLFxuICAgICAgXCJoZWFkZXItdG9nZ2xlci1pY29uLWJnXCI6ICAgICAgICAgJGhlYWRlci1saWdodC10b2dnbGVyLWljb24tYmcsXG4gICAgICBcImhlYWRlci10b2dnbGVyLWhvdmVyLWljb24tYmdcIjogICAkaGVhZGVyLWxpZ2h0LXRvZ2dsZXItaG92ZXItaWNvbi1iZyxcbiAgICAgIFwiaGVhZGVyLXRvZ2dsZXItYm9yZGVyLWNvbG9yXCI6ICAgICRoZWFkZXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3IsXG4gICAgICBcImhlYWRlci1icmFuZC1iZ1wiOiAgICAgICAgICAgICAgICAkaGVhZGVyLWxpZ2h0LWJyYW5kLWJnLFxuICAgICAgXCJoZWFkZXItYnJhbmQtYm9yZGVyXCI6ICAgICAgICAgICAgJGhlYWRlci1saWdodC1icmFuZC1ib3JkZXIsXG4gICAgICBcImhlYWRlci1icmFuZC1jb2xvclwiOiAgICAgICAgICAgICAkaGVhZGVyLWxpZ2h0LWJyYW5kLWNvbG9yLFxuICAgICAgXCJoZWFkZXItYnJhbmQtaG92ZXItY29sb3JcIjogICAgICAgJGhlYWRlci1saWdodC1icmFuZC1ob3Zlci1jb2xvcixcbiAgICAgIFwiaGVhZGVyLWJyYW5kLW1pbmltaXplZC1iZ1wiOiAgICAgICRoZWFkZXItbGlnaHQtYnJhbmQtbWluaW1pemVkLWJnLFxuICAgICAgXCJoZWFkZXItYnJhbmQtbWluaW1pemVkLWJvcmRlclwiOiAgJGhlYWRlci1saWdodC1icmFuZC1taW5pbWl6ZWQtYm9yZGVyLFxuICAgICAgXCJzdWJoZWFkZXItc2VwYXJhdG9yXCI6ICAgICAgICAgICAgJHN1YmhlYWRlci1saWdodC1zZXBhcmF0b3JcbiAgICApXG4gICksXG4gICRoZWFkZXItdmFyaWFudHMtbWFwXG4pO1xuXG4kaGVhZGVyLWRlZmF1bHQtdmFyaWFudDogXCJsaWdodFwiICFkZWZhdWx0O1xuJGhlYWRlci12YXJpYW50czogKFxuICBkZWZhdWx0OiAgJGhlYWRlci1kZWZhdWx0LXZhcmlhbnQsXG4gIG1hcDogICAgICAkaGVhZGVyLXZhcmlhbnRzLW1hcFxuKSAhZGVmYXVsdDtcblxuJGhlYWRlci10aGVtZS1tYXA6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRoZWFkZXItdGhlbWUtbWFwOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBkZWZhdWx0OiAgJGhlYWRlci12YXJpYW50c1xuICApLFxuICAkaGVhZGVyLXRoZW1lLW1hcFxuKTtcbiIsIi5jLWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgJjpub3QoLmMtaWNvbi1jLXMpOm5vdCguYy1pY29uLWN1c3RvbS1zaXplKSB7XG4gICAgQGluY2x1ZGUgaWNvbi1zaXplKCRpY29uLXNpemUtYmFzZSk7XG5cbiAgICAvLyBUT0RPOiBjcmVhdGUgdmFyaWFibGUgd2l0aCBhIHJhbmdlXG4gICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCA5IHtcbiAgICAgICYuYy1pY29uLSN7JGl9eGwge1xuICAgICAgICBAaW5jbHVkZSBpY29uLXNpemUoJGkgKiAoJGljb24tc2l6ZS14bCAvIDEuNSkpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuYy1pY29uLXhsIHtcbiAgICAgIEBpbmNsdWRlIGljb24tc2l6ZSgkaWNvbi1zaXplLXhsKTtcbiAgICB9XG5cbiAgICAmLmMtaWNvbi1sZyB7XG4gICAgICBAaW5jbHVkZSBpY29uLXNpemUoJGljb24tc2l6ZS1sZyk7XG4gICAgfVxuXG4gICAgJi5jLWljb24tc20ge1xuICAgICAgQGluY2x1ZGUgaWNvbi1zaXplKCRpY29uLXNpemUtc20pO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gSWNvbiBzaXplc1xuQG1peGluIGljb24tc2l6ZSgkaWNvbi1zaXplKSB7XG4gIHdpZHRoOiAkaWNvbi1zaXplO1xuICBoZWlnaHQ6ICRpY29uLXNpemU7XG4gIGZvbnQtc2l6ZTogJGljb24tc2l6ZTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuXG4vL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5pbnB1dC1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyAvLyBGb3IgZm9ybSB2YWxpZGF0aW9uIGZlZWRiYWNrXG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB3aWR0aDogMTAwJTtcblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQsXG4gID4gLmN1c3RvbS1zZWxlY3QsXG4gID4gLmN1c3RvbS1maWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IC8vIEZvciBmb2N1cyBzdGF0ZSdzIHotaW5kZXhcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB3aWR0aDogMSU7XG4gICAgbWluLXdpZHRoOiAwOyAvLyBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8zNjI0NzE0MC93aHktZG9udC1mbGV4LWl0ZW1zLXNocmluay1wYXN0LWNvbnRlbnQtc2l6ZVxuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICArIC5mb3JtLWNvbnRyb2wsXG4gICAgKyAuY3VzdG9tLXNlbGVjdCxcbiAgICArIC5jdXN0b20tZmlsZSB7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBtYXJnaW4tbGVmdDogLSRpbnB1dC1ib3JkZXItd2lkdGg7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGZvcm0gY29udHJvbCB0byB0aGUgdG9wIG9mIHN1cnJvdW5kaW5nIGVsZW1lbnRzXG4gID4gLmZvcm0tY29udHJvbDpmb2N1cyxcbiAgPiAuY3VzdG9tLXNlbGVjdDpmb2N1cyxcbiAgPiAuY3VzdG9tLWZpbGUgLmN1c3RvbS1maWxlLWlucHV0OmZvY3VzIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICB6LWluZGV4OiAzO1xuICB9XG5cbiAgLy8gQnJpbmcgdGhlIGN1c3RvbSBmaWxlIGlucHV0IGFib3ZlIHRoZSBsYWJlbFxuICA+IC5jdXN0b20tZmlsZSAuY3VzdG9tLWZpbGUtaW5wdXQ6Zm9jdXMge1xuICAgIHotaW5kZXg6IDQ7XG4gIH1cblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmN1c3RvbS1zZWxlY3Qge1xuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuICAgICAgfVxuICAgIH1cbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gQ3VzdG9tIGZpbGUgaW5wdXRzIGhhdmUgbW9yZSBjb21wbGV4IG1hcmt1cCwgdGh1cyByZXF1aXJpbmcgZGlmZmVyZW50XG4gIC8vIGJvcmRlci1yYWRpdXMgb3ZlcnJpZGVzLlxuICA+IC5jdXN0b20tZmlsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbCxcbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuICAgICAgfVxuICAgIH1cbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIFByZXBlbmQgYW5kIGFwcGVuZFxuLy9cbi8vIFdoaWxlIGl0IHJlcXVpcmVzIG9uZSBleHRyYSBsYXllciBvZiBIVE1MIGZvciBlYWNoLCBkZWRpY2F0ZWQgcHJlcGVuZCBhbmRcbi8vIGFwcGVuZCBlbGVtZW50cyBhbGxvdyB1cyB0byAxKSBiZSBsZXNzIGNsZXZlciwgMikgc2ltcGxpZnkgb3VyIHNlbGVjdG9ycywgYW5kXG4vLyAzKSBzdXBwb3J0IEhUTUw1IGZvcm0gdmFsaWRhdGlvbi5cblxuLmlucHV0LWdyb3VwLXByZXBlbmQsXG4uaW5wdXQtZ3JvdXAtYXBwZW5kIHtcbiAgZGlzcGxheTogZmxleDtcblxuICAvLyBFbnN1cmUgYnV0dG9ucyBhcmUgYWx3YXlzIGFib3ZlIGlucHV0cyBmb3IgbW9yZSB2aXN1YWxseSBwbGVhc2luZyBib3JkZXJzLlxuICAvLyBUaGlzIGlzbid0IG5lZWRlZCBmb3IgYC5pbnB1dC1ncm91cC10ZXh0YCBzaW5jZSBpdCBzaGFyZXMgdGhlIHNhbWUgYm9yZGVyLWNvbG9yXG4gIC8vIGFzIG91ciBpbnB1dHMuXG4gIC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICB6LWluZGV4OiAzO1xuICAgIH1cbiAgfVxuXG4gIC5idG4gKyAuYnRuLFxuICAuYnRuICsgLmlucHV0LWdyb3VwLXRleHQsXG4gIC5pbnB1dC1ncm91cC10ZXh0ICsgLmlucHV0LWdyb3VwLXRleHQsXG4gIC5pbnB1dC1ncm91cC10ZXh0ICsgLmJ0biB7XG4gICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDtcbiAgICB9XG4gICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLSRpbnB1dC1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbi5pbnB1dC1ncm91cC1wcmVwZW5kIHtcbiAgQGluY2x1ZGUgbHRyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoO1xuICB9XG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoO1xuICB9XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8vIE1hdGNoIHRoZSBpbnB1dHNcbn1cbi5pbnB1dC1ncm91cC1hcHBlbmQge1xuICBAaW5jbHVkZSBsdHIge1xuICAgIG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDtcbiAgfVxuICBAaW5jbHVkZSBydGwge1xuICAgIG1hcmdpbi1yaWdodDogLSRpbnB1dC1ib3JkZXItd2lkdGg7XG4gIH1cbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLy8gTWF0Y2ggdGhlIGlucHV0c1xufVxuXG5cbi8vIFRleHR1YWwgYWRkb25zXG4vL1xuLy8gU2VydmVzIGFzIGEgY2F0Y2gtYWxsIGVsZW1lbnQgZm9yIGFueSB0ZXh0IG9yIHJhZGlvL2NoZWNrYm94IGlucHV0IHlvdSB3aXNoXG4vLyB0byBwcmVwZW5kIG9yIGFwcGVuZCB0byBhbiBpbnB1dC5cblxuLmlucHV0LWdyb3VwLXRleHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15ICRpbnB1dC1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIEFsbG93IHVzZSBvZiA8bGFiZWw+IGVsZW1lbnRzIGJ5IG92ZXJyaWRpbmcgb3VyIGRlZmF1bHQgbWFyZ2luLWJvdHRvbVxuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7IC8vIE1hdGNoIGlucHV0c1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQ7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xuXG4gIEBpbmNsdWRlIHRoZW1lcygkZm9ybS10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaW5wdXQtZ3JvdXAtYWRkb24tY29sb3JcIik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImlucHV0LWdyb3VwLWFkZG9uLWJnXCIpO1xuICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvclwiKTtcbiAgfVxuXG4gIC8vIE51a2UgZGVmYXVsdCBtYXJnaW5zIGZyb20gY2hlY2tib3hlcyBhbmQgcmFkaW9zIHRvIHZlcnRpY2FsbHkgY2VudGVyIHdpdGhpbi5cbiAgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuXG4vLyBTaXppbmdcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBmb3JtIGNvbnRyb2wgc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyXG4vLyBtYW5pcHVsYXRpb24uXG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2w6bm90KHRleHRhcmVhKSxcbi5pbnB1dC1ncm91cC1sZyA+IC5jdXN0b20tc2VsZWN0IHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnO1xufVxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLWxnID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4ge1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LWxnICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1sZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLWNvbnRyb2w6bm90KHRleHRhcmVhKSxcbi5pbnB1dC1ncm91cC1zbSA+IC5jdXN0b20tc2VsZWN0IHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xufVxuXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4ge1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1zbTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cbi5pbnB1dC1ncm91cC1sZyA+IC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3Qge1xuICBAaW5jbHVkZSBsdHIge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nO1xuICB9XG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgcGFkZGluZy1sZWZ0OiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZztcbiAgfVxufVxuXG5cbi8vIFByZXBlbmQgYW5kIGFwcGVuZCByb3VuZGVkIGNvcm5lcnNcbi8vXG4vLyBUaGVzZSBydWxlc2V0cyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIHNpemluZyBvbmVzIHRvIHByb3Blcmx5IG92ZXJyaWRlIHNtIGFuZCBsZ1xuLy8gYm9yZGVyLXJhZGl1cyB2YWx1ZXMgd2hlbiBleHRlbmRpbmcuIFRoZXkncmUgbW9yZSBzcGVjaWZpYyB0aGFuIHdlJ2QgbGlrZVxuLy8gd2l0aCB0aGUgYC5pbnB1dC1ncm91cCA+YCBwYXJ0LCBidXQgd2l0aG91dCBpdCwgd2UgY2Fubm90IG92ZXJyaWRlIHRoZSBzaXppbmcuXG5cblxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm5vdCg6bGFzdC1jaGlsZCkgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bGFzdC1jaGlsZCA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOmxhc3QtY2hpbGQgPiAuaW5wdXQtZ3JvdXAtdGV4dDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgQGluY2x1ZGUgbHRyIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuICB9XG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuICB9XG59XG5cbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOmZpcnN0LWNoaWxkID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOmZpcnN0LWNoaWxkID4gLmlucHV0LWdyb3VwLXRleHQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBAaW5jbHVkZSBsdHIge1xuICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbiAgfVxuICBAaW5jbHVkZSBydGwge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gIH1cbn1cbiIsIi8vIFJlc3BvbnNpdmUgaW1hZ2VzIChlbnN1cmUgaW1hZ2VzIGRvbid0IHNjYWxlIGJleW9uZCB0aGVpciBwYXJlbnRzKVxuLy9cbi8vIFRoaXMgaXMgcHVycG9zZWZ1bGx5IG9wdC1pbiB2aWEgYW4gZXhwbGljaXQgY2xhc3MgcmF0aGVyIHRoYW4gYmVpbmcgdGhlIGRlZmF1bHQgZm9yIGFsbCBgPGltZz5gcy5cbi8vIFdlIHByZXZpb3VzbHkgdHJpZWQgdGhlIFwiaW1hZ2VzIGFyZSByZXNwb25zaXZlIGJ5IGRlZmF1bHRcIiBhcHByb2FjaCBpbiBCb290c3RyYXAgdjIsXG4vLyBhbmQgYWJhbmRvbmVkIGl0IGluIEJvb3RzdHJhcCB2MyBiZWNhdXNlIGl0IGJyZWFrcyBsb3RzIG9mIHRoaXJkLXBhcnR5IHdpZGdldHMgKGluY2x1ZGluZyBHb29nbGUgTWFwcylcbi8vIHdoaWNoIHdlcmVuJ3QgZXhwZWN0aW5nIHRoZSBpbWFnZXMgd2l0aGluIHRoZW1zZWx2ZXMgdG8gYmUgaW52b2x1bnRhcmlseSByZXNpemVkLlxuLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xODE3OFxuLmltZy1mbHVpZCB7XG4gIEBpbmNsdWRlIGltZy1mbHVpZCgpO1xufVxuXG5cbi8vIEltYWdlIHRodW1ibmFpbHNcbi5pbWctdGh1bWJuYWlsIHtcbiAgcGFkZGluZzogJHRodW1ibmFpbC1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGh1bWJuYWlsLWJnO1xuICBib3JkZXI6ICR0aHVtYm5haWwtYm9yZGVyLXdpZHRoIHNvbGlkICR0aHVtYm5haWwtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0aHVtYm5haWwtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHRodW1ibmFpbC1ib3gtc2hhZG93KTtcblxuICAvLyBLZWVwIHRoZW0gYXQgbW9zdCAxMDAlIHdpZGVcbiAgQGluY2x1ZGUgaW1nLWZsdWlkKCk7XG59XG5cbi8vXG4vLyBGaWd1cmVzXG4vL1xuXG4uZmlndXJlIHtcbiAgLy8gRW5zdXJlcyB0aGUgY2FwdGlvbidzIHRleHQgYWxpZ25zIHdpdGggdGhlIGltYWdlLlxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5maWd1cmUtaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlciAvIDI7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uZmlndXJlLWNhcHRpb24ge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZpZ3VyZS1jYXB0aW9uLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkZmlndXJlLWNhcHRpb24tY29sb3I7XG59XG4iLCIvLyBJbWFnZSBNaXhpbnNcbi8vIC0gUmVzcG9uc2l2ZSBpbWFnZVxuLy8gLSBSZXRpbmEgaW1hZ2VcblxuXG4vLyBSZXNwb25zaXZlIGltYWdlXG4vL1xuLy8gS2VlcCBpbWFnZXMgZnJvbSBzY2FsaW5nIGJleW9uZCB0aGUgd2lkdGggb2YgdGhlaXIgcGFyZW50cy5cblxuQG1peGluIGltZy1mbHVpZCgpIHtcbiAgLy8gUGFydCAxOiBTZXQgYSBtYXhpbXVtIHJlbGF0aXZlIHRvIHRoZSBwYXJlbnRcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAvLyBQYXJ0IDI6IE92ZXJyaWRlIHRoZSBoZWlnaHQgdG8gYXV0bywgb3RoZXJ3aXNlIGltYWdlcyB3aWxsIGJlIHN0cmV0Y2hlZFxuICAvLyB3aGVuIHNldHRpbmcgYSB3aWR0aCBhbmQgaGVpZ2h0IGF0dHJpYnV0ZSBvbiB0aGUgaW1nIGVsZW1lbnQuXG4gIGhlaWdodDogYXV0bztcbn1cblxuXG4vLyBSZXRpbmEgaW1hZ2Vcbi8vXG4vLyBTaG9ydCByZXRpbmEgbWl4aW4gZm9yIHNldHRpbmcgYmFja2dyb3VuZC1pbWFnZSBhbmQgLXNpemUuXG5cbkBtaXhpbiBpbWctcmV0aW5hKCRmaWxlLTF4LCAkZmlsZS0yeCwgJHdpZHRoLTF4LCAkaGVpZ2h0LTF4KSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkZmlsZS0xeCk7XG5cbiAgLy8gQXV0b3ByZWZpeGVyIHRha2VzIGNhcmUgb2YgYWRkaW5nIC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbyBhbmQgLW8tbWluLWRldmljZS1waXhlbC1yYXRpbyxcbiAgLy8gYnV0IGRvZXNuJ3QgY29udmVydCBkcHB4PT5kcGkuXG4gIC8vIFRoZXJlJ3Mgbm8gc3VjaCB0aGluZyBhcyB1bnByZWZpeGVkIG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8gc2luY2UgaXQncyBub25zdGFuZGFyZC5cbiAgLy8gQ29tcGF0aWJpbGl0eSBpbmZvOiBodHRwczovL2Nhbml1c2UuY29tLyNmZWF0PWNzcy1tZWRpYS1yZXNvbHV0aW9uXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpLCAvLyBJRTktMTEgZG9uJ3Qgc3VwcG9ydCBkcHB4XG4gICAgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMmRwcHgpIHsgLy8gU3RhbmRhcmRpemVkXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRmaWxlLTJ4KTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICR3aWR0aC0xeCAkaGVpZ2h0LTF4O1xuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcImBpbWctcmV0aW5hKClgXCIsIFwidjQuMy4wXCIsIFwidjVcIik7XG59XG4iLCIvLyBJbWFnZSB0aHVtYm5haWxzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aHVtYm5haWxcbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItd2lkdGg6ICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLWNvbG9yOiAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3gtc2hhZG93OiAgICAgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGh1bWJuYWlsXG5cblxuLy8gRmlndXJlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZmlndXJlXG4kZmlndXJlLWNhcHRpb24tZm9udC1zaXplOiAgOTAlICFkZWZhdWx0O1xuJGZpZ3VyZS1jYXB0aW9uLWNvbG9yOiAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZmlndXJlXG4iLCIuanVtYm90cm9uIHtcbiAgcGFkZGluZzogJGp1bWJvdHJvbi1wYWRkaW5nICgkanVtYm90cm9uLXBhZGRpbmcgLyAyKTtcbiAgbWFyZ2luLWJvdHRvbTogJGp1bWJvdHJvbi1wYWRkaW5nO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLWxnKTtcblxuICBAaW5jbHVkZSB0aGVtZXMoJGp1bWJvdHJvbi10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwianVtYm90cm9uLWNvbG9yXCIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJqdW1ib3Ryb24tYmdcIik7XG4gIH1cblxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBwYWRkaW5nOiAoJGp1bWJvdHJvbi1wYWRkaW5nICogMikgJGp1bWJvdHJvbi1wYWRkaW5nO1xuICB9XG59XG5cbi5qdW1ib3Ryb24tZmx1aWQge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG59XG4iLCJcbi8vIEp1bWJvdHJvblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQganVtYm90cm9uXG4kanVtYm90cm9uLXBhZGRpbmc6ICAycmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBqdW1ib3Ryb25cblxuLy8gRGVmYXVsdCB0aGVtZVxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGp1bWJvdHJvbi1kZWZhdWx0LXRoZW1lXG4kanVtYm90cm9uLWNvbG9yOiAgbnVsbCAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tYmc6ICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGp1bWJvdHJvbi1kZWZhdWx0LXRoZW1lXG5cbiRqdW1ib3Ryb24tdGhlbWUtbWFwOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kanVtYm90cm9uLXRoZW1lLW1hcDogbWFwLW1lcmdlKFxuICAoXG4gICAgZGVmYXVsdDogKFxuICAgICAgXCJqdW1ib3Ryb24tY29sb3JcIjogICRqdW1ib3Ryb24tY29sb3IsXG4gICAgICBcImp1bWJvdHJvbi1iZ1wiOiAgICAgJGp1bWJvdHJvbi1iZ1xuICAgIClcbiAgKSxcbiAgJGp1bWJvdHJvbi10aGVtZS1tYXBcbik7XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gRWFzaWx5IHVzYWJsZSBvbiA8dWw+LCA8b2w+LCBvciA8ZGl2Pi5cblxuLmxpc3QtZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gIC8vIE5vIG5lZWQgdG8gc2V0IGxpc3Qtc3R5bGU6IG5vbmU7IHNpbmNlIC5saXN0LWdyb3VwLWl0ZW0gaXMgYmxvY2sgbGV2ZWxcbiAgQGluY2x1ZGUgbHRyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IC8vIHJlc2V0IHBhZGRpbmcgYmVjYXVzZSB1bCBhbmQgb2xcbiAgfVxuICBAaW5jbHVkZSBydGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IC8vIHJlc2V0IHBhZGRpbmcgYmVjYXVzZSB1bCBhbmQgb2xcbiAgfVxuICBtYXJnaW4tYm90dG9tOiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xufVxuXG5cbi8vIEludGVyYWN0aXZlIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2UgYW5jaG9yIG9yIGJ1dHRvbiBlbGVtZW50cyBpbnN0ZWFkIG9mIGBsaWBzIG9yIGBkaXZgcyB0byBjcmVhdGUgaW50ZXJhY3RpdmVcbi8vIGxpc3QgaXRlbXMuIEluY2x1ZGVzIGFuIGV4dHJhIGAuYWN0aXZlYCBtb2RpZmllciBjbGFzcyBmb3Igc2VsZWN0ZWQgaXRlbXMuXG5cbi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gcyAoYW5jaG9ycyBiZWNvbWUgMTAwJSBieSBkZWZhdWx0IHRob3VnaClcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzIChhbmNob3JzIGluaGVyaXQpXG4gIEBpbmNsdWRlIHRoZW1lcygkbGlzdC1ncm91cC10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibGlzdC1ncm91cC1hY3Rpb24tY29sb3JcIik7XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZVxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICB6LWluZGV4OiAxOyAvLyBQbGFjZSBob3Zlci9mb2N1cyBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIEBpbmNsdWRlIHRoZW1lcygkbGlzdC1ncm91cC10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJsaXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvclwiKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJsaXN0LWdyb3VwLWhvdmVyLWJnXCIpO1xuICAgIH1cbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGxpc3QtZ3JvdXAtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yXCIpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZ1wiKTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBJbmRpdmlkdWFsIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2Ugb24gYGxpYHMgb3IgYGRpdmBzIHdpdGhpbiB0aGUgYC5saXN0LWdyb3VwYCBwYXJlbnQuXG5cbi5saXN0LWdyb3VwLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteSAkbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICBib3JkZXI6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aCBzb2xpZDtcbiAgQGluY2x1ZGUgdGhlbWVzKCRsaXN0LWdyb3VwLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJsaXN0LWdyb3VwLWNvbG9yXCIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJsaXN0LWdyb3VwLWJnXCIpO1xuICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yXCIpO1xuICB9XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoaW5oZXJpdCk7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKGluaGVyaXQpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgQGluY2x1ZGUgdGhlbWVzKCRsaXN0LWdyb3VwLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3JcIik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibGlzdC1ncm91cC1kaXNhYmxlZC1iZ1wiKTtcbiAgICB9XG4gIH1cblxuICAvLyBJbmNsdWRlIGJvdGggaGVyZSBmb3IgYDxhPmBzIGFuZCBgPGJ1dHRvbj5gc1xuICAmLmFjdGl2ZSB7XG4gICAgei1pbmRleDogMjsgLy8gUGxhY2UgYWN0aXZlIGl0ZW1zIGFib3ZlIHRoZWlyIHNpYmxpbmdzIGZvciBwcm9wZXIgYm9yZGVyIHN0eWxpbmdcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGxpc3QtZ3JvdXAtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibGlzdC1ncm91cC1hY3RpdmUtY29sb3JcIik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibGlzdC1ncm91cC1hY3RpdmUtYmdcIik7XG4gICAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgJiArICYge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBtYXJnaW4tdG9wOiAtJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXRvcC13aWR0aDogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEhvcml6b250YWxcbi8vXG4vLyBDaGFuZ2UgdGhlIGxheW91dCBvZiBsaXN0IGdyb3VwIGl0ZW1zIGZyb20gdmVydGljYWwgKGRlZmF1bHQpIHRvIGhvcml6b250YWwuXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5saXN0LWdyb3VwLWhvcml6b250YWwjeyRpbmZpeH0ge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMoJGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXMoMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMoMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYgKyAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgICAgICBib3JkZXItdG9wLXdpZHRoOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG5cbiAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLSRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gRmx1c2ggbGlzdCBpdGVtc1xuLy9cbi8vIFJlbW92ZSBib3JkZXJzIGFuZCBib3JkZXItcmFkaXVzIHRvIGtlZXAgbGlzdCBncm91cCBpdGVtcyBlZGdlLXRvLWVkZ2UuIE1vc3Rcbi8vIHVzZWZ1bCB3aXRoaW4gb3RoZXIgY29tcG9uZW50cyAoZS5nLiwgY2FyZHMpLlxuXG4ubGlzdC1ncm91cC1mbHVzaCB7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG5cbiAgPiAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBib3JkZXItd2lkdGg6IDAgMCAkbGlzdC1ncm91cC1ib3JkZXItd2lkdGg7XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBDb250ZXh0dWFsIHZhcmlhbnRzXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbGlzdC1ncm91cC1tb2RpZmllcnNcbi8vIEFkZCBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0ZXh0IGFuZCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGluZGl2aWR1YWwgaXRlbXMuXG4vLyBPcmdhbml6YXRpb25hbGx5LCB0aGlzIG11c3QgY29tZSBhZnRlciB0aGUgYDpob3ZlcmAgc3RhdGVzLlxuXG5AaW5jbHVkZSB0aGVtZS12YXJpYW50KCkge1xuICBAaW5jbHVkZSBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkY29sb3IsICB0aGVtZS1jb2xvci1sZXZlbCgkdmFsdWUsIC05KSwgIHRoZW1lLWNvbG9yLWxldmVsKCR2YWx1ZSwgNikpO1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBsaXN0LWdyb3VwLW1vZGlmaWVyc1xuLy8gTGlzdCBpdGVtcyB3aXRoIGFjY2VudFxuLy9cbi8vIFJlbW92ZSB0b3AsIGJvdHRvbWUgYW5kIHJpZ2h0IGJvcmRlcnMgYW5kIGJvcmRlci1yYWRpdXMuXG5cbi5saXN0LWdyb3VwLWFjY2VudCB7XG4gIC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IDFweDtcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG5cbiAgICAmLmxpc3QtZ3JvdXAtaXRlbS1kaXZpZGVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IC0xcHg7XG4gICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuXG4gICAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgICAgbGVmdDogNSU7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgICByaWdodDogNSU7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgdGhlbWVzKCRsaXN0LWdyb3VwLXRoZW1lLW1hcCkge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJsaXN0LWdyb3VwLWJvcmRlci1jb2xvclwiKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAvLyBDb250ZXh0dWFsIHZhcmlhbnRzXG4gIC8vXG4gIC8vIEFkZCBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSBib3JkZXIgY29sb3Igb24gaW5kaXZpZHVhbCBpdGVtcy5cbiAgQGluY2x1ZGUgdGhlbWUtdmFyaWFudCgpIHtcbiAgICBAaW5jbHVkZSBsaXN0LWdyb3VwLWl0ZW0tYWNjZW50LXZhcmlhbnQoJGNvbG9yLCAkdmFsdWUpO1xuICB9XG59XG4iLCIvLyBMaXN0IEdyb3Vwc1xuXG5AbWl4aW4gbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGNvbG9yKSB7XG4gIC5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuXG4gICAgJi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcbiAgICAgIH1cblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbGlzdC1ncm91cC1pdGVtLWFjY2VudC12YXJpYW50KCRzdGF0ZSwgJGNvbG9yKSB7XG4gIC5saXN0LWdyb3VwLWl0ZW0tYWNjZW50LSN7JHN0YXRlfSB7XG4gICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAkY29sb3I7XG4gIH1cbn1cbiIsIi5tZWRpYSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuXG4ubWVkaWEtYm9keSB7XG4gIGZsZXg6IDE7XG59XG4iLCIvLyAubW9kYWwtb3BlbiAgICAgIC0gYm9keSBjbGFzcyBmb3Iga2lsbGluZyB0aGUgc2Nyb2xsXG4vLyAubW9kYWwgICAgICAgICAgIC0gY29udGFpbmVyIHRvIHNjcm9sbCB3aXRoaW5cbi8vIC5tb2RhbC1kaWFsb2cgICAgLSBwb3NpdGlvbmluZyBzaGVsbCBmb3IgdGhlIGFjdHVhbCBtb2RhbFxuLy8gLm1vZGFsLWNvbnRlbnQgICAtIGFjdHVhbCBtb2RhbCB3LyBiZyBhbmQgY29ybmVycyBhbmQgc3R1ZmZcblxuXG4ubW9kYWwtb3BlbiB7XG4gIC8vIEtpbGwgdGhlIHNjcm9sbCBvbiB0aGUgYm9keVxuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIC5tb2RhbCB7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbn1cblxuLy8gQ29udGFpbmVyIHRoYXQgdGhlIG1vZGFsIHNjcm9sbHMgd2l0aGluXG4ubW9kYWwge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbDtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLy8gUHJldmVudCBDaHJvbWUgb24gV2luZG93cyBmcm9tIGFkZGluZyBhIGZvY3VzIG91dGxpbmUuIEZvciBkZXRhaWxzLCBzZWVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTA5NTEuXG4gIG91dGxpbmU6IDA7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkb24ndCB1c2UgYC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtgIGR1ZSB0byBhXG4gIC8vIGduYXJseSBpT1MgU2FmYXJpIGJ1ZzogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1ODM0MlxuICAvLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE3Njk1XG59XG5cbi8vIFNoZWxsIGRpdiB0byBwb3NpdGlvbiB0aGUgbW9kYWwgd2l0aCBib3R0b20gcGFkZGluZ1xuLm1vZGFsLWRpYWxvZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogJG1vZGFsLWRpYWxvZy1tYXJnaW47XG4gIC8vIGFsbG93IGNsaWNrcyB0byBwYXNzIHRocm91Z2ggZm9yIGN1c3RvbSBjbGljayBoYW5kbGluZyB0byBjbG9zZSBtb2RhbFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAvLyBXaGVuIGZhZGluZyBpbiB0aGUgbW9kYWwsIGFuaW1hdGUgaXQgdG8gc2xpZGUgZG93blxuICAubW9kYWwuZmFkZSAmIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRtb2RhbC10cmFuc2l0aW9uKTtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1mYWRlLXRyYW5zZm9ybTtcbiAgfVxuICAubW9kYWwuc2hvdyAmIHtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1zaG93LXRyYW5zZm9ybTtcbiAgfVxuXG4gIC8vIFdoZW4gdHJ5aW5nIHRvIGNsb3NlLCBhbmltYXRlIGZvY3VzIHRvIHNjYWxlXG4gIC5tb2RhbC5tb2RhbC1zdGF0aWMgJiB7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtc2NhbGUtdHJhbnNmb3JtO1xuICB9XG59XG5cbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gIGRpc3BsYXk6IGZsZXg7IC8vIElFMTAvMTFcbiAgbWF4LWhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyKTtcblxuICAubW9kYWwtY29udGVudCB7XG4gICAgbWF4LWhlaWdodDogc3VidHJhY3QoMTAwdmgsICRtb2RhbC1kaWFsb2ctbWFyZ2luICogMik7IC8vIElFMTAvMTFcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLm1vZGFsLWhlYWRlcixcbiAgLm1vZGFsLWZvb3RlciB7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gIH1cblxuICAubW9kYWwtYm9keSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxufVxuXG4ubW9kYWwtZGlhbG9nLWNlbnRlcmVkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogc3VidHJhY3QoMTAwJSwgJG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyKTtcblxuICAvLyBFbnN1cmUgYG1vZGFsLWRpYWxvZy1jZW50ZXJlZGAgZXh0ZW5kcyB0aGUgZnVsbCBoZWlnaHQgb2YgdGhlIHZpZXcgKElFMTAvMTEpXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IC8vIElFMTBcbiAgICBoZWlnaHQ6IHN1YnRyYWN0KDEwMHZoLCAkbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDIpO1xuICAgIGhlaWdodDogbWluLWNvbnRlbnQ7IC8vIFJlc2V0IGhlaWdodCB0byAwIGV4Y2VwdCBvbiBJRVxuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cblxuICAvLyBFbnN1cmUgYC5tb2RhbC1ib2R5YCBzaG93cyBzY3JvbGxiYXIgKElFMTAvMTEpXG4gICYubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLy8gQWN0dWFsIG1vZGFsXG4ubW9kYWwtY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgd2lkdGg6IDEwMCU7IC8vIEVuc3VyZSBgLm1vZGFsLWNvbnRlbnRgIGV4dGVuZHMgdGhlIGZ1bGwgd2lkdGggb2YgdGhlIHBhcmVudCBgLm1vZGFsLWRpYWxvZ2BcbiAgLy8gY291bnRlcmFjdCB0aGUgcG9pbnRlci1ldmVudHM6IG5vbmU7IGluIHRoZSAubW9kYWwtZGlhbG9nXG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCBzb2xpZDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzKTtcbiAgLy8gUmVtb3ZlIGZvY3VzIG91dGxpbmUgZnJvbSBvcGVuZWQgbW9kYWxcbiAgb3V0bGluZTogMDtcbiAgQGluY2x1ZGUgdGhlbWVzKCRtb2RhbC10aGVtZS1tYXApIHtcbiAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcIm1vZGFsLWNvbnRlbnQtY29sb3JcIik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcIm1vZGFsLWNvbnRlbnQtYmdcIik7XG4gICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibW9kYWwtY29udGVudC1ib3JkZXItY29sb3JcIik7XG4gIH1cbiAgQGluY2x1ZGUgZWxldmF0aW9uKDI0KTtcbn1cblxuLy8gTW9kYWwgYmFja2dyb3VuZFxuLm1vZGFsLWJhY2tkcm9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWwtYmFja2Ryb3A7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWJhY2tkcm9wLWJnO1xuXG4gIC8vIEZhZGUgZm9yIGJhY2tkcm9wXG4gICYuZmFkZSB7IG9wYWNpdHk6IDA7IH1cbiAgJi5zaG93IHsgb3BhY2l0eTogJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk7IH1cbn1cblxuLy8gTW9kYWwgaGVhZGVyXG4vLyBUb3Agc2VjdGlvbiBvZiB0aGUgbW9kYWwgdy8gdGl0bGUgYW5kIGRpc21pc3Ncbi5tb2RhbC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgLy8gc28gdGhlIGNsb3NlIGJ0biBhbHdheXMgc3RheXMgb24gdGhlIHVwcGVyIHJpZ2h0IGNvcm5lclxuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IC8vIFB1dCBtb2RhbCBoZWFkZXIgZWxlbWVudHMgKHRpdGxlIGFuZCBkaXNtaXNzKSBvbiBvcHBvc2l0ZSBlbmRzXG4gIHBhZGRpbmc6ICRtb2RhbC1oZWFkZXItcGFkZGluZztcbiAgYm9yZGVyLWJvdHRvbTogJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGggc29saWQ7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSB0aGVtZXMoJG1vZGFsLXRoZW1lLW1hcCkge1xuICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcIm1vZGFsLWhlYWRlci1ib3JkZXItY29sb3JcIik7XG4gIH1cblxuICAuY2xvc2Uge1xuICAgIHBhZGRpbmc6ICRtb2RhbC1oZWFkZXItcGFkZGluZztcbiAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgLy8gYXV0byBvbiB0aGUgbGVmdCBmb3JjZSBpY29uIHRvIHRoZSByaWdodCBldmVuIHdoZW4gdGhlcmUgaXMgbm8gLm1vZGFsLXRpdGxlXG4gICAgICBtYXJnaW46ICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkpICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nLXgpICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkpIGF1dG87XG4gICAgfVxuICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAvLyBhdXRvIG9uIHRoZSBsZWZ0IGZvcmNlIGljb24gdG8gdGhlIGxlZnQgZXZlbiB3aGVuIHRoZXJlIGlzIG5vIC5tb2RhbC10aXRsZVxuICAgICAgbWFyZ2luOiAoLSRtb2RhbC1oZWFkZXItcGFkZGluZy15KSBhdXRvICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkpICgtJG1vZGFsLWhlYWRlci1wYWRkaW5nLXgpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBUaXRsZSB0ZXh0IHdpdGhpbiBoZWFkZXJcbi5tb2RhbC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiAkbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ7XG59XG5cbi8vIE1vZGFsIGJvZHlcbi8vIFdoZXJlIGFsbCBtb2RhbCBjb250ZW50IHJlc2lkZXMgKHNpYmxpbmcgb2YgLm1vZGFsLWhlYWRlciBhbmQgLm1vZGFsLWZvb3Rlcilcbi5tb2RhbC1ib2R5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyBFbmFibGUgYGZsZXgtZ3JvdzogMWAgc28gdGhhdCB0aGUgYm9keSB0YWtlIHVwIGFzIG11Y2ggc3BhY2UgYXMgcG9zc2libGVcbiAgLy8gd2hlbiB0aGVyZSBzaG91bGQgYmUgYSBmaXhlZCBoZWlnaHQgb24gYC5tb2RhbC1kaWFsb2dgLlxuICBmbGV4OiAxIDEgYXV0bztcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmc7XG59XG5cbi8vIEZvb3RlciAoZm9yIGFjdGlvbnMpXG4ubW9kYWwtZm9vdGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyB2ZXJ0aWNhbGx5IGNlbnRlclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyAvLyBSaWdodCBhbGlnbiBidXR0b25zIHdpdGggZmxleCBwcm9wZXJ0eSBiZWNhdXNlIHRleHQtYWxpZ24gZG9lc24ndCB3b3JrIG9uIGZsZXggaXRlbXNcbiAgcGFkZGluZzogJG1vZGFsLWlubmVyLXBhZGRpbmcgLSAkbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVuIC8gMjtcbiAgYm9yZGVyLXRvcDogJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGggc29saWQ7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSB0aGVtZXMoJG1vZGFsLXRoZW1lLW1hcCkge1xuICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcIm1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3JcIik7XG4gIH1cblxuICAvLyBQbGFjZSBtYXJnaW4gYmV0d2VlbiBmb290ZXIgZWxlbWVudHNcbiAgLy8gVGhpcyBzb2x1dGlvbiBpcyBmYXIgZnJvbSBpZGVhbCBiZWNhdXNlIG9mIHRoZSB1bml2ZXJzYWwgc2VsZWN0b3IgdXNhZ2UsXG4gIC8vIGJ1dCBpcyBuZWVkZWQgdG8gZml4IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQ4MDBcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC11bml2ZXJzYWxcbiAgPiAqIHtcbiAgICBtYXJnaW46ICRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW4gLyAyO1xuICB9XG59XG5cbi8vIE1lYXN1cmUgc2Nyb2xsYmFyIHdpZHRoIGZvciBwYWRkaW5nIGJvZHkgZHVyaW5nIG1vZGFsIHNob3cvaGlkZVxuLm1vZGFsLXNjcm9sbGJhci1tZWFzdXJlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC05OTk5cHg7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIG92ZXJmbG93OiBzY3JvbGw7XG59XG5cbi8vIFNjYWxlIHVwIHRoZSBtb2RhbFxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAvLyBBdXRvbWF0aWNhbGx5IHNldCBtb2RhbCdzIHdpZHRoIGZvciBsYXJnZXIgdmlld3BvcnRzXG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIG1heC13aWR0aDogJG1vZGFsLW1kO1xuICAgIG1hcmdpbjogJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCBhdXRvO1xuICB9XG5cbiAgLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgICBtYXgtaGVpZ2h0OiBzdWJ0cmFjdCgxMDAlLCAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMik7XG5cbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICBtYXgtaGVpZ2h0OiBzdWJ0cmFjdCgxMDB2aCwgJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDIpO1xuICAgIH1cbiAgfVxuXG4gIC5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xuICAgIG1pbi1oZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBoZWlnaHQ6IHN1YnRyYWN0KDEwMHZoLCAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMik7XG4gICAgICBoZWlnaHQ6IG1pbi1jb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXApO1xuICB9XG5cbiAgLm1vZGFsLXNtIHsgbWF4LXdpZHRoOiAkbW9kYWwtc207IH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAubW9kYWwtbGcsXG4gIC5tb2RhbC14bCB7XG4gICAgbWF4LXdpZHRoOiAkbW9kYWwtbGc7XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAubW9kYWwteGwgeyBtYXgtd2lkdGg6ICRtb2RhbC14bDsgfVxufVxuXG5AaW5jbHVkZSB0aGVtZS12YXJpYW50KCkge1xuICAubW9kYWwtI3skY29sb3J9IHtcblxuICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgIGJvcmRlci1jb2xvcjogJHZhbHVlO1xuICAgIH1cblxuICAgIC5tb2RhbC1oZWFkZXIge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR2YWx1ZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIE1vZGFsc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbW9kYWxcbi8vIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgbW9kYWwgYm9keVxuJG1vZGFsLWlubmVyLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG4vLyBNYXJnaW4gYmV0d2VlbiBlbGVtZW50cyBpbiBmb290ZXIsIG11c3QgYmUgbG93ZXIgdGhhbiBvciBlcXVhbCB0byAyICogJG1vZGFsLWlubmVyLXBhZGRpbmdcbiRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW46ICAuNXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLWRpYWxvZy1tYXJnaW46ICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cDogIDEuNzVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGg6ICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXM6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXM6ICBzdWJ0cmFjdCgkbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzLCAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14czogICAgICAgIDAgLjI1cmVtIC41cmVtIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXNtLXVwOiAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG5cbiRtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAuNSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy15OiAgICAgMXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy14OiAgICAgMXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZzogICAgICAgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7IC8vIEtlZXAgdGhpcyBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcbiRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoOiAgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGg6ICAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJG1vZGFsLXhsOiAgMTE0MHB4ICFkZWZhdWx0O1xuJG1vZGFsLWxnOiAgODAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbWQ6ICA1MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1zbTogIDMwMHB4ICFkZWZhdWx0O1xuXG4kbW9kYWwtZmFkZS10cmFuc2Zvcm06ICAgdHJhbnNsYXRlKDAsIC01MHB4KSAhZGVmYXVsdDtcbiRtb2RhbC1zaG93LXRyYW5zZm9ybTogICBub25lICFkZWZhdWx0O1xuJG1vZGFsLXRyYW5zaXRpb246ICAgICAgIHRyYW5zZm9ybSAuM3MgZWFzZS1vdXQgIWRlZmF1bHQ7XG4kbW9kYWwtc2NhbGUtdHJhbnNmb3JtOiAgc2NhbGUoMS4wMikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG1vZGFsXG5cbi8vIERlZmF1bHQgdGhlbWVcbi8vIHNjc3MtZG9jcy1zdGFydCBtb2RhbC1kZWZhdWx0LXRoZW1lXG4kbW9kYWwtY29udGVudC1jb2xvcjogICAgICAgICBudWxsICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYmc6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yOiAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbW9kYWwtZGVmYXVsdC10aGVtZVxuXG4kbW9kYWwtdGhlbWUtbWFwOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kbW9kYWwtdGhlbWUtbWFwOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBkZWZhdWx0OiAoXG4gICAgICBcIm1vZGFsLWNvbnRlbnQtY29sb3JcIjogICAgICAgICAkbW9kYWwtY29udGVudC1jb2xvcixcbiAgICAgIFwibW9kYWwtY29udGVudC1iZ1wiOiAgICAgICAgICAgICRtb2RhbC1jb250ZW50LWJnLFxuICAgICAgXCJtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvclwiOiAgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yLFxuICAgICAgXCJtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yXCI6ICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IsXG4gICAgICBcIm1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3JcIjogICAkbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcixcbiAgICApXG4gICksXG4gICRtb2RhbC10aGVtZS1tYXBcbik7XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gS2lja3N0YXJ0IGFueSBuYXZpZ2F0aW9uIGNvbXBvbmVudCB3aXRoIGEgc2V0IG9mIHN0eWxlIHJlc2V0cy4gV29ya3Mgd2l0aFxuLy8gYDxuYXY+YHMgb3IgYDx1bD5gcy5cblxuLm5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICBAaW5jbHVkZSBsdHIge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuICBAaW5jbHVkZSBydGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbn1cblxuLm5hdi1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRuYXYtbGluay1wYWRkaW5nLXkgJG5hdi1saW5rLXBhZGRpbmcteDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlIGxpZ2h0ZW5zIHRleHRcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgQGluY2x1ZGUgdGhlbWVzKCRuYXYtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibmF2LWxpbmstZGlzYWJsZWQtY29sb3JcIik7XG4gICAgfVxuICB9XG59XG5cbi8vXG4vLyBUYWJzXG4vL1xuXG4ubmF2LXRhYnMge1xuICBib3JkZXItYm90dG9tOiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoIHNvbGlkO1xuICBAaW5jbHVkZSB0aGVtZXMoJG5hdi10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcIm5hdi10YWJzLWJvcmRlci1jb2xvclwiKTtcbiAgfVxuXG4gIC5uYXYtaXRlbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogLSRuYXYtdGFicy1ib3JkZXItd2lkdGg7XG4gIH1cblxuICAubmF2LWxpbmsge1xuICAgIGJvcmRlcjogJG5hdi10YWJzLWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbmF2LXRhYnMtYm9yZGVyLXJhZGl1cyk7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIEBpbmNsdWRlIHRoZW1lcygkbmF2LXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcIm5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yXCIpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuZGlzYWJsZWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRuYXYtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJuYXYtbGluay1kaXNhYmxlZC1jb2xvclwiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAubmF2LWl0ZW0uc2hvdyAubmF2LWxpbmsge1xuICAgIEBpbmNsdWRlIHRoZW1lcygkbmF2LXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcIm5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yXCIpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcIm5hdi10YWJzLWxpbmstYWN0aXZlLWJnXCIpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yXCIpO1xuICAgIH1cbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICAvLyBNYWtlIGRyb3Bkb3duIGJvcmRlciBvdmVybGFwIHRhYiBib3JkZXJcbiAgICBtYXJnaW4tdG9wOiAtJG5hdi10YWJzLWJvcmRlci13aWR0aDtcbiAgICAvLyBSZW1vdmUgdGhlIHRvcCByb3VuZGVkIGNvcm5lcnMgaGVyZSBzaW5jZSB0aGVyZSBpcyBhIGhhcmQgZWRnZSBhYm92ZSB0aGUgbWVudVxuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG5cbiAgLy8gJi5uYXYtdGFicy1ib3hlZCB7XG4gIC8vICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtYm94ZWQtYm9yZGVyLWNvbG9yO1xuICAvLyAgICsgLnRhYi1jb250ZW50IHtcblxuICAvLyAgICAgYm9yZGVyOiAkbmF2LXRhYnMtYm9yZGVyLXdpZHRoIHNvbGlkO1xuICAvLyAgICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtYm94ZWQtYm9yZGVyLWNvbG9yO1xuXG4gIC8vICAgfVxuICAvLyB9XG59XG5cbi5uYXYtdGFicy1ib3hlZCB7XG4gIC5uYXYtdGFicyB7XG4gICAgYm9yZGVyOiAwO1xuXG4gICAgLm5hdi1saW5rIHtcbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgQGluY2x1ZGUgdGhlbWVzKCRuYXYtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibmF2LXRhYnMtYm94ZWQtbGluay1hY3RpdmUtYmdcIik7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcIm5hdi10YWJzLWJveGVkLWxpbmstYWN0aXZlLWJnXCIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC50YWItY29udGVudCB7XG4gICAgcGFkZGluZzogJG5hdi10YWJzLWJveGVkLWNvbnRlbnQtcGFkZGluZy15ICRuYXYtdGFicy1ib3hlZC1jb250ZW50LXBhZGRpbmcteDtcbiAgICBib3JkZXI6ICRuYXYtdGFicy1ib3hlZC1jb250ZW50LWJvcmRlci13aWR0aCBzb2xpZDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgJG5hdi10YWJzLWJveGVkLWNvbnRlbnQtYm9yZGVyLXJhZGl1cyAkbmF2LXRhYnMtYm94ZWQtY29udGVudC1ib3JkZXItcmFkaXVzICRuYXYtdGFicy1ib3hlZC1jb250ZW50LWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIHRoZW1lcygkbmF2LXRoZW1lLW1hcCkge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvclwiKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJuYXYtdGFicy1ib3hlZC1jb250ZW50LWJnXCIpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibmF2LXRhYnMtYm94ZWQtY29udGVudC1ib3JkZXItY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgJi5uYXYtdGFicy1ib3hlZC10b3AtcmlnaHQge1xuICAgIC5uYXYtdGFicyB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIH1cbiAgICAudGFiLWNvbnRlbnQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbmF2LXRhYnMtYm94ZWQtY29udGVudC1ib3JkZXItcmFkaXVzIDAgJG5hdi10YWJzLWJveGVkLWNvbnRlbnQtYm9yZGVyLXJhZGl1cyAkbmF2LXRhYnMtYm94ZWQtY29udGVudC1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICAmLm5hdi10YWJzLWJveGVkLWxlZnQsXG4gICYubmF2LXRhYnMtYm94ZWQtcmlnaHQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAubmF2LWl0ZW0ge1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgJi5uYXYtdGFicy1ib3hlZC1sZWZ0IHtcbiAgICBAaW5jbHVkZSBydGwge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgIH1cblxuICAgIC5uYXYtaXRlbSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoO1xuICAgIH1cblxuICAgIC5uYXYtbGluayB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRuYXYtdGFicy1ib3hlZC1jb250ZW50LWJvcmRlci1yYWRpdXMgMCAwICRuYXYtdGFicy1ib3hlZC1jb250ZW50LWJvcmRlci1yYWRpdXMpO1xuXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIEBpbmNsdWRlIHRoZW1lcygkbmF2LXRoZW1lLW1hcCkge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcIm5hdi10YWJzLWJveGVkLWxlZnQtYWN0aXZlLWJvcmRlci1jb2xvclwiKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYubmF2LXRhYnMtYm94ZWQtcmlnaHQge1xuICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgfVxuICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIH1cblxuICAgIC5uYXYtaXRlbSB7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBtYXJnaW4tbGVmdDogLSRuYXYtdGFicy1ib3JkZXItd2lkdGg7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5uYXYtbGluayB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgJG5hdi10YWJzLWJveGVkLWNvbnRlbnQtYm9yZGVyLXJhZGl1cyAkbmF2LXRhYnMtYm94ZWQtY29udGVudC1ib3JkZXItcmFkaXVzIDApO1xuXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIEBpbmNsdWRlIHRoZW1lcygkbmF2LXRoZW1lLW1hcCkge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcIm5hdi10YWJzLWJveGVkLXJpZ2h0LWFjdGl2ZS1ib3JkZXItY29sb3JcIik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFiLWNvbnRlbnQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbmF2LXRhYnMtYm94ZWQtY29udGVudC1ib3JkZXItcmFkaXVzIDAgJG5hdi10YWJzLWJveGVkLWNvbnRlbnQtYm9yZGVyLXJhZGl1cyAkbmF2LXRhYnMtYm94ZWQtY29udGVudC1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gUGlsbHNcbi8vXG5cbi5uYXYtcGlsbHMge1xuICAubmF2LWxpbmsge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJG5hdi1waWxscy1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIC5uYXYtbGluay5hY3RpdmUsXG4gIC5zaG93ID4gLm5hdi1saW5rIHtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJG5hdi10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3JcIik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnXCIpO1xuICAgIH1cbiAgfVxufVxuXG4vL1xuLy8gVW5kZXJsaW5lXG4vL1xuXG4ubmF2LXVuZGVybGluZSB7XG4gIGJvcmRlci1ib3R0b206ICgyICogJG5hdi10YWJzLWJvcmRlci13aWR0aCkgc29saWQ7XG4gIEBpbmNsdWRlIHRoZW1lcygkbmF2LXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibmF2LXRhYnMtYm9yZGVyLWNvbG9yXCIpO1xuICB9XG5cbiAgLm5hdi1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtICgyICogJG5hdi10YWJzLWJvcmRlci13aWR0aCk7XG4gIH1cblxuICAubmF2LWxpbmsge1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItYm90dG9tOiAoMiAqICRuYXYtdGFicy1ib3JkZXItd2lkdGgpIHNvbGlkIHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLnNob3cgPiAubmF2LWxpbmsge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbkBpbmNsdWRlIHRoZW1lLXZhcmlhbnQoKSB7XG4gIC5uYXYtdW5kZXJsaW5lLSN7JGNvbG9yfSB7XG4gICAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgICAuc2hvdyA+IC5uYXYtbGluayB7XG4gICAgICBjb2xvcjogJHZhbHVlO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkdmFsdWU7XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIEp1c3RpZmllZCB2YXJpYW50c1xuLy9cblxuLm5hdi1maWxsIHtcbiAgLm5hdi1pdGVtIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLm5hdi1qdXN0aWZpZWQge1xuICAubmF2LWl0ZW0ge1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG5cbi8vIFRhYmJhYmxlIHRhYnNcbi8vXG4vLyBIaWRlIHRhYmJhYmxlIHBhbmVzIHRvIHN0YXJ0LCBzaG93IHRoZW0gd2hlbiBgLmFjdGl2ZWBcblxuLnRhYi1jb250ZW50IHtcbiAgPiAudGFiLXBhbmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgPiAuYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4vLyBUYWJzIGluIFNpZGViYXJcblxuLmMtc2lkZWJhciB7XG4gIC5uYXYtdGFiczpmaXJzdC1jaGlsZCxcbiAgLmMtc2lkZWJhci1jbG9zZSArIC5uYXYtdGFicyB7XG4gICAgLm5hdi1saW5rIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgaGVpZ2h0OiAkc2lkZWJhci1icmFuZC1oZWlnaHQ7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuIiwiXG4vLyBTaWRlYmFyXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc2lkZWJhclxuJHNpZGViYXItd2lkdGg6ICAgICAyNTZweCAhZGVmYXVsdDtcbiRzaWRlYmFyLXNtLXdpZHRoOiAgMTkycHggIWRlZmF1bHQ7XG4kc2lkZWJhci1sZy13aWR0aDogIDMyMHB4ICFkZWZhdWx0O1xuJHNpZGViYXIteGwtd2lkdGg6ICAzODRweCAhZGVmYXVsdDtcblxuJHNpZGViYXItd2lkdGhzOiAoXG4gIHNtOiAxOTJweCxcbiAgbGc6IDMyMHB4LFxuICB4bDogMzg0cHhcbikgIWRlZmF1bHQ7XG5cbiRzaWRlYmFyLXBhZGRpbmc6ICAgICAgICAgICAwICFkZWZhdWx0O1xuJHNpZGViYXItbWluaW1pemVkLXdpZHRoOiAgIDU2cHggIWRlZmF1bHQ7XG4kc2lkZWJhci1taW5pbWl6ZWQtaGVpZ2h0OiAgJHNpZGViYXItbWluaW1pemVkLXdpZHRoICFkZWZhdWx0O1xuJHNpZGViYXItY29tcGFjdC13aWR0aDogICAgIDE1MHB4ICFkZWZhdWx0O1xuXG4kc2lkZWJhci1iYWNrZHJvcC1iZzogICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJHNpZGViYXItYmFja2Ryb3Atb3BhY2l0eTogIC41ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBzaWRlYmFyXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBzaWRlYmFyLWRlZmF1bHQtdGhlbWVcbiRzaWRlYmFyLWRhcmstY29sb3I6ICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstYmc6ICAgICAgICRncmF5LWJhc2UgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLWJvcmRlcnM6ICBub25lICFkZWZhdWx0O1xuXG4kc2lkZWJhci1saWdodC1jb2xvcjogICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1iZzogICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtYm9yZGVyczogIChcbiAgcmlnaHQ6IDFweCBzb2xpZCByZ2JhKGRhcmtlbigkYm9yZGVyLWNvbG9yLCAyMCUpLCAuNSlcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNpZGViYXItZGVmYXVsdC10aGVtZVxuXG4vLyBTaWRlYmFyIEJyYW5kXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc2lkZWJhci1icmFuZFxuJHNpZGViYXItYnJhbmQtaGVpZ2h0OiAgNTZweCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgc2lkZWJhci1icmFuZFxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc2lkZWJhci1icmFuZC1kZWZhdWx0LXRoZW1lXG4kc2lkZWJhci1kYXJrLWJyYW5kLWNvbG9yOiAgJHdoaXRlICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1icmFuZC1iZzogICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG5cbiRzaWRlYmFyLWxpZ2h0LWJyYW5kLWNvbG9yOiAgJHdoaXRlICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtYnJhbmQtYmc6ICAgICAkcHJpbWFyeSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgc2lkZWJhci1icmFuZC1kZWZhdWx0LXRoZW1lXG5cbi8vIFNpZGViYXIgSGVhZGVyXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc2lkZWJhci1oZWFkZXJcbiRzaWRlYmFyLWhlYWRlci1oZWlnaHQ6ICAgICBhdXRvICFkZWZhdWx0O1xuJHNpZGViYXItaGVhZGVyLXBhZGRpbmcteTogIC43NXJlbSAhZGVmYXVsdDtcbiRzaWRlYmFyLWhlYWRlci1wYWRkaW5nLXg6ICAxcmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBzaWRlYmFyLWhlYWRlclxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc2lkZWJhci1oZWFkZXItZGVmYXVsdC10aGVtZVxuJHNpZGViYXItZGFyay1oZWFkZXItYmc6ICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtaGVhZGVyLWJnOiByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBzaWRlYmFyLWhlYWRlci1kZWZhdWx0LXRoZW1lXG5cbi8vIFNpZGViYXIgRm9ybVxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNpZGViYXItZm9ybS1kZWZhdWx0LXRoZW1lXG4kc2lkZWJhci1kYXJrLWZvcm0tYm9yZGVyOiAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstZm9ybS1iZzogICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1mb3JtLWNvbG9yOiAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstZm9ybS1wbGFjZWhvbGRlci1jb2xvcjogICByZ2JhKCR3aGl0ZSwgLjcpICFkZWZhdWx0O1xuXG4kc2lkZWJhci1saWdodC1mb3JtLWJvcmRlcjogICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LWZvcm0tYmc6ICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtZm9ybS1jb2xvcjogICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LWZvcm0tcGxhY2Vob2xkZXItY29sb3I6ICByZ2JhKCR3aGl0ZSwgLjcpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBzaWRlYmFyLWZvcm0tZGVmYXVsdC10aGVtZVxuXG5cbi8vIFNpZGViYXIgTmF2aWdhdGlvblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNpZGViYXItbmF2XG4kc2lkZWJhci1uYXYtdGl0bGUtcGFkZGluZy15OiAgIC43NXJlbSAhZGVmYXVsdDtcbiRzaWRlYmFyLW5hdi10aXRsZS1wYWRkaW5nLXg6ICAgMXJlbSAhZGVmYXVsdDtcbiRzaWRlYmFyLW5hdi10aXRsZS1tYXJnaW4tdG9wOiAgMXJlbSAhZGVmYXVsdDtcbiRzaWRlYmFyLW5hdi1saW5rLXBhZGRpbmcteTogICAgLjg0NDVyZW0gIWRlZmF1bHQ7XG4kc2lkZWJhci1uYXYtbGluay1wYWRkaW5nLXg6ICAgIDFyZW0gIWRlZmF1bHQ7XG4kc2lkZWJhci1uYXYtaWNvbi13aWR0aDogICAgICAgIDU2cHggIWRlZmF1bHQ7XG5cbiRzaWRlYmFyLW5hdi1pbmRlbnRhdGlvbi1sZXZlbHM6IDUgIWRlZmF1bHQ7XG4kc2lkZWJhci1uYXYtaW5kZW50YXRpb24tc2l6ZTogICA4cHggIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNpZGViYXItbmF2XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBzaWRlYmFyLW5hdi1kZWZhdWx0LXRoZW1lXG4kc2lkZWJhci1kYXJrLW5hdi10aXRsZS1jb2xvcjogICAgICByZ2JhKCR3aGl0ZSwgLjYpICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1uYXYtbGluay1jb2xvcjogICAgICAgcmdiYSgkd2hpdGUsIC44KSAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstbmF2LWxpbmstYmc6ICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1uYXYtbGluay1pY29uLWNvbG9yOiAgcmdiYSgkd2hpdGUsIC41KSAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstbmF2LWxpbmstYm9yZGVyczogICAgIDAgIWRlZmF1bHQ7XG5cbiRzaWRlYmFyLWxpZ2h0LW5hdi10aXRsZS1jb2xvcjogICAgICByZ2JhKCRibGFjaywgLjQpICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtbmF2LWxpbmstY29sb3I6ICAgICAgIHJnYmEoJGJsYWNrLCAuOCkgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1uYXYtbGluay1iZzogICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1uYXYtbGluay1pY29uLWNvbG9yOiAgcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWJvcmRlcnM6ICAgICAwICFkZWZhdWx0O1xuXG5cbiRzaWRlYmFyLWRhcmstbmF2LWxpbmstaG92ZXItY29sb3I6ICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstbmF2LWxpbmstaG92ZXItYmc6ICAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstbmF2LWxpbmstaG92ZXItaWNvbi1jb2xvcjogICR3aGl0ZSAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstbmF2LWxpbmstaG92ZXItYm9yZGVyczogICAgIDAgIWRlZmF1bHQ7XG5cbiRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1uYXYtbGluay1ob3Zlci1iZzogICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtbmF2LWxpbmstaG92ZXItaWNvbi1jb2xvcjogICR3aGl0ZSAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWhvdmVyLWJvcmRlcnM6ICAgICAwICFkZWZhdWx0O1xuXG5cbiRzaWRlYmFyLWRhcmstbmF2LWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLW5hdi1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgcmdiYSgkd2hpdGUsIC4wNSkgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLW5hdi1saW5rLWFjdGl2ZS1pY29uLWNvbG9yOiAgJHdoaXRlICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1uYXYtbGluay1hY3RpdmUtYm9yZGVyczogICAgIDAgIWRlZmF1bHQ7XG5cbiRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgcmdiYSgkYmxhY2ssIC44KSAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgcmdiYSgkYmxhY2ssIC4wNSkgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1uYXYtbGluay1hY3RpdmUtaWNvbi1jb2xvcjogICRwcmltYXJ5ICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtbmF2LWxpbmstYWN0aXZlLWJvcmRlcnM6ICAgICAwICFkZWZhdWx0O1xuXG5cbiRzaWRlYmFyLWRhcmstbmF2LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgIGRhcmtlbigkd2hpdGUsIDMwJSkgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLW5hdi1saW5rLWRpc2FibGVkLWJnOiAgICAgICAgICAkc2lkZWJhci1kYXJrLWJnICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1uYXYtbGluay1kaXNhYmxlZC1pY29uLWNvbG9yOiAgJHNpZGViYXItZGFyay1uYXYtbGluay1pY29uLWNvbG9yICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1uYXYtbGluay1kaXNhYmxlZC1ib3JkZXJzOiAgICAgMCAhZGVmYXVsdDtcblxuJHNpZGViYXItbGlnaHQtbmF2LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgIGRhcmtlbigkd2hpdGUsIDMwJSkgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1uYXYtbGluay1kaXNhYmxlZC1iZzogICAgICAgICAgJHNpZGViYXItbGlnaHQtYmcgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1uYXYtbGluay1kaXNhYmxlZC1pY29uLWNvbG9yOiAgJHNpZGViYXItbGlnaHQtbmF2LWxpbmstaWNvbi1jb2xvciAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWRpc2FibGVkLWJvcmRlcnM6ICAgICAwICFkZWZhdWx0O1xuXG4kc2lkZWJhci1kYXJrLW5hdi1kcm9wZG93bi1jb2xvcjogICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLW5hdi1kcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMikgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLW5hdi1kcm9wZG93bi1ib3JkZXJzOiAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1uYXYtZHJvcGRvd24taW5kaWNhdG9yLWNvbG9yOiAgICAgICAgcmdiYSgkd2hpdGUsIC41KSAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstbmF2LWRyb3Bkb3duLWluZGljYXRvcjogICAgICAgICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDExIDE0JyUzRSUzQ3BhdGggZmlsbD0nI3skc2lkZWJhci1kYXJrLW5hdi1kcm9wZG93bi1pbmRpY2F0b3ItY29sb3J9JyBkPSdNOS4xNDggMi4zNTJsLTQuMTQ4IDQuMTQ4IDQuMTQ4IDQuMTQ4cTAuMTQ4IDAuMTQ4IDAuMTQ4IDAuMzUydC0wLjE0OCAwLjM1MmwtMS4yOTcgMS4yOTdxLTAuMTQ4IDAuMTQ4LTAuMzUyIDAuMTQ4dC0wLjM1Mi0wLjE0OGwtNS43OTctNS43OTdxLTAuMTQ4LTAuMTQ4LTAuMTQ4LTAuMzUydDAuMTQ4LTAuMzUybDUuNzk3LTUuNzk3cTAuMTQ4LTAuMTQ4IDAuMzUyLTAuMTQ4dDAuMzUyIDAuMTQ4bDEuMjk3IDEuMjk3cTAuMTQ4IDAuMTQ4IDAuMTQ4IDAuMzUydC0wLjE0OCAwLjM1MnonLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstbmF2LWRyb3Bkb3duLWluZGljYXRvci1ob3Zlci1jb2xvcjogICRzaWRlYmFyLWRhcmstbmF2LWxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLW5hdi1kcm9wZG93bi1pbmRpY2F0b3ItaG92ZXI6ICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxMSAxNCclM0UlM0NwYXRoIGZpbGw9JyN7JHNpZGViYXItZGFyay1uYXYtZHJvcGRvd24taW5kaWNhdG9yLWhvdmVyLWNvbG9yfScgZD0nTTkuMTQ4IDIuMzUybC00LjE0OCA0LjE0OCA0LjE0OCA0LjE0OHEwLjE0OCAwLjE0OCAwLjE0OCAwLjM1MnQtMC4xNDggMC4zNTJsLTEuMjk3IDEuMjk3cS0wLjE0OCAwLjE0OC0wLjM1MiAwLjE0OHQtMC4zNTItMC4xNDhsLTUuNzk3LTUuNzk3cS0wLjE0OC0wLjE0OC0wLjE0OC0wLjM1MnQwLjE0OC0wLjM1Mmw1Ljc5Ny01Ljc5N3EwLjE0OC0wLjE0OCAwLjM1Mi0wLjE0OHQwLjM1MiAwLjE0OGwxLjI5NyAxLjI5N3EwLjE0OCAwLjE0OCAwLjE0OCAwLjM1MnQtMC4xNDggMC4zNTJ6Jy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG5cbiRzaWRlYmFyLWxpZ2h0LW5hdi1kcm9wZG93bi1jb2xvcjogICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjgpICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtbmF2LWRyb3Bkb3duLWJnOiAgICAgICAgICAgICAgICAgICByZ2JhKDAsIDAsIDAsIC4wNSkgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1uYXYtZHJvcGRvd24tYm9yZGVyczogICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LW5hdi1kcm9wZG93bi1pbmRpY2F0b3ItY29sb3I6ICAgICAgICByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtbmF2LWRyb3Bkb3duLWluZGljYXRvcjogICAgICAgICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDExIDE0JyUzRSUzQ3BhdGggZmlsbD0nI3skc2lkZWJhci1saWdodC1uYXYtZHJvcGRvd24taW5kaWNhdG9yLWNvbG9yfScgZD0nTTkuMTQ4IDIuMzUybC00LjE0OCA0LjE0OCA0LjE0OCA0LjE0OHEwLjE0OCAwLjE0OCAwLjE0OCAwLjM1MnQtMC4xNDggMC4zNTJsLTEuMjk3IDEuMjk3cS0wLjE0OCAwLjE0OC0wLjM1MiAwLjE0OHQtMC4zNTItMC4xNDhsLTUuNzk3LTUuNzk3cS0wLjE0OC0wLjE0OC0wLjE0OC0wLjM1MnQwLjE0OC0wLjM1Mmw1Ljc5Ny01Ljc5N3EwLjE0OC0wLjE0OCAwLjM1Mi0wLjE0OHQwLjM1MiAwLjE0OGwxLjI5NyAxLjI5N3EwLjE0OCAwLjE0OCAwLjE0OCAwLjM1MnQtMC4xNDggMC4zNTJ6Jy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1uYXYtZHJvcGRvd24taW5kaWNhdG9yLWhvdmVyLWNvbG9yOiAgJHNpZGViYXItZGFyay1uYXYtbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LW5hdi1kcm9wZG93bi1pbmRpY2F0b3ItaG92ZXI6ICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxMSAxNCclM0UlM0NwYXRoIGZpbGw9JyN7JHNpZGViYXItbGlnaHQtbmF2LWRyb3Bkb3duLWluZGljYXRvci1ob3Zlci1jb2xvcn0nIGQ9J005LjE0OCAyLjM1MmwtNC4xNDggNC4xNDggNC4xNDggNC4xNDhxMC4xNDggMC4xNDggMC4xNDggMC4zNTJ0LTAuMTQ4IDAuMzUybC0xLjI5NyAxLjI5N3EtMC4xNDggMC4xNDgtMC4zNTIgMC4xNDh0LTAuMzUyLTAuMTQ4bC01Ljc5Ny01Ljc5N3EtMC4xNDgtMC4xNDgtMC4xNDgtMC4zNTJ0MC4xNDgtMC4zNTJsNS43OTctNS43OTdxMC4xNDgtMC4xNDggMC4zNTItMC4xNDh0MC4zNTIgMC4xNDhsMS4yOTcgMS4yOTdxMC4xNDggMC4xNDggMC4xNDggMC4zNTJ0LTAuMTQ4IDAuMzUyeicvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBzaWRlYmFyLW5hdi1kZWZhdWx0LXRoZW1lXG5cbi8vIFNpZGViYXIgVGFic1xuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNpZGViYXItbmF2LXRhYnNcbiRzaWRlYmFyLW5hdi10YWJzLWxpbmstcGFkZGluZy15OiAgLjc1cmVtICFkZWZhdWx0O1xuJHNpZGViYXItbmF2LXRhYnMtbGluay1wYWRkaW5nLXg6ICAxcmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBzaWRlYmFyLW5hdi10YWJzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBzaWRlYmFyLW5hdi10YWJzLWRlZmF1bHQtdGhlbWVcbiRzaWRlYmFyLWRhcmstbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstbmF2LXRhYnMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC4wNSkgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLW5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjogIHJnYmEoJGJsYWNrLCAuMikgcmdiYSgkYmxhY2ssIC4yKSB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLW5hdi10YWJzLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLW5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgIHJnYmEoJGJsYWNrLCAuMikgcmdiYSgkYmxhY2ssIC4yKSAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLXRhYi1jb250ZW50LWJvcmRlcnM6ICAgICAgICAgICAgICAgICggdG9wOiAxcHggc29saWQgcmdiYSgkYmxhY2ssIC4yKSkgIWRlZmF1bHQ7XG5cbiRzaWRlYmFyLWxpZ2h0LW5hdi10YWJzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIHJnYmEoZGFya2VuKCRib3JkZXItY29sb3IsIDIwJSksIC41KSAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LW5hdi10YWJzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LW5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjogIHJnYmEoZGFya2VuKCRib3JkZXItY29sb3IsIDIwJSksIC41KSByZ2JhKGRhcmtlbigkYm9yZGVyLWNvbG9yLCAyMCUpLCAuNSkgJHdoaXRlICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtbmF2LXRhYnMtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgcmdiYShkYXJrZW4oJGJvcmRlci1jb2xvciwgMjAlKSwgLjUpIHJnYmEoZGFya2VuKCRib3JkZXItY29sb3IsIDIwJSksIC41KSAkd2hpdGUgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC10YWItY29udGVudC1ib3JkZXJzOiAgICAgICAgICAgICAgICAoIHRvcDogMXB4IHNvbGlkIHJnYmEoZGFya2VuKCRib3JkZXItY29sb3IsIDIwJSksIC41KSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNpZGViYXItbmF2LXRhYnMtZGVmYXVsdC10aGVtZVxuXG4vLyBTaWRlYmFyIEZvb3RlclxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNpZGViYXItZm9vdGVyXG4kc2lkZWJhci1mb290ZXItaGVpZ2h0OiAgICAgYXV0byAhZGVmYXVsdDtcbiRzaWRlYmFyLWZvb3Rlci1wYWRkaW5nLXk6ICAuNzVyZW0gIWRlZmF1bHQ7XG4kc2lkZWJhci1mb290ZXItcGFkZGluZy14OiAgMXJlbSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgc2lkZWJhci1mb290ZXJcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNpZGViYXItZm9vdGVyLWRlZmF1bHQtdGhlbWVcbiRzaWRlYmFyLWRhcmstZm9vdGVyLWJnOiAgICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstZm9vdGVyLWJvcmRlcnM6ICAgMCAhZGVmYXVsdDtcblxuJHNpZGViYXItbGlnaHQtZm9vdGVyLWJnOiAgICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtZm9vdGVyLWJvcmRlcnM6ICAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBzaWRlYmFyLWZvb3Rlci1kZWZhdWx0LXRoZW1lXG5cbi8vIFNpZGViYXIgTWluaW1pemVyXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc2lkZWJhci1taW5pbWl6ZXJcbiRzaWRlYmFyLW1pbmltaXplci1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgIDUwcHggIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNpZGViYXItbWluaW1pemVyXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBzaWRlYmFyLW1pbmltaXplci1kZWZhdWx0LXRoZW1lXG4kc2lkZWJhci1kYXJrLW1pbmltaXplci1ib3JkZXJzOiAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1taW5pbWl6ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstbWluaW1pemVyLWluZGljYXRvci1jb2xvcjogICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstbWluaW1pemVyLWluZGljYXRvcjogICAgICAgICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDExIDE0JyUzRSUzQ3BhdGggZmlsbD0nI3skc2lkZWJhci1kYXJrLW1pbmltaXplci1pbmRpY2F0b3ItY29sb3J9JyBkPSdNOS4xNDggMi4zNTJsLTQuMTQ4IDQuMTQ4IDQuMTQ4IDQuMTQ4cTAuMTQ4IDAuMTQ4IDAuMTQ4IDAuMzUydC0wLjE0OCAwLjM1MmwtMS4yOTcgMS4yOTdxLTAuMTQ4IDAuMTQ4LTAuMzUyIDAuMTQ4dC0wLjM1Mi0wLjE0OGwtNS43OTctNS43OTdxLTAuMTQ4LTAuMTQ4LTAuMTQ4LTAuMzUydDAuMTQ4LTAuMzUybDUuNzk3LTUuNzk3cTAuMTQ4LTAuMTQ4IDAuMzUyLTAuMTQ4dDAuMzUyIDAuMTQ4bDEuMjk3IDEuMjk3cTAuMTQ4IDAuMTQ4IDAuMTQ4IDAuMzUydC0wLjE0OCAwLjM1MnonLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRzaWRlYmFyLWRhcmstbWluaW1pemVyLWhvdmVyLWJnOiAgICAgICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMykgIWRlZmF1bHQ7XG4kc2lkZWJhci1kYXJrLW1pbmltaXplci1ob3Zlci1pbmRpY2F0b3ItY29sb3I6ICAkc2lkZWJhci1kYXJrLW5hdi1saW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHNpZGViYXItZGFyay1taW5pbWl6ZXItaG92ZXItaW5kaWNhdG9yOiAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTEgMTQnJTNFJTNDcGF0aCBmaWxsPScjeyRzaWRlYmFyLWRhcmstbWluaW1pemVyLWhvdmVyLWluZGljYXRvci1jb2xvcn0nIGQ9J005LjE0OCAyLjM1MmwtNC4xNDggNC4xNDggNC4xNDggNC4xNDhxMC4xNDggMC4xNDggMC4xNDggMC4zNTJ0LTAuMTQ4IDAuMzUybC0xLjI5NyAxLjI5N3EtMC4xNDggMC4xNDgtMC4zNTIgMC4xNDh0LTAuMzUyLTAuMTQ4bC01Ljc5Ny01Ljc5N3EtMC4xNDgtMC4xNDgtMC4xNDgtMC4zNTJ0MC4xNDgtMC4zNTJsNS43OTctNS43OTdxMC4xNDgtMC4xNDggMC4zNTItMC4xNDh0MC4zNTIgMC4xNDhsMS4yOTcgMS4yOTdxMC4xNDggMC4xNDggMC4xNDggMC4zNTJ0LTAuMTQ4IDAuMzUyeicvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuXG4kc2lkZWJhci1saWdodC1taW5pbWl6ZXItYm9yZGVyczogICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRzaWRlYmFyLWxpZ2h0LW1pbmltaXplci1iZzogICAgICAgICAgICAgICAgICAgICByZ2JhKDAsIDAsIDAsIC4wNSkgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1taW5pbWl6ZXItaW5kaWNhdG9yLWNvbG9yOiAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtbWluaW1pemVyLWluZGljYXRvcjogICAgICAgICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDExIDE0JyUzRSUzQ3BhdGggZmlsbD0nI3skc2lkZWJhci1saWdodC1taW5pbWl6ZXItaW5kaWNhdG9yLWNvbG9yfScgZD0nTTkuMTQ4IDIuMzUybC00LjE0OCA0LjE0OCA0LjE0OCA0LjE0OHEwLjE0OCAwLjE0OCAwLjE0OCAwLjM1MnQtMC4xNDggMC4zNTJsLTEuMjk3IDEuMjk3cS0wLjE0OCAwLjE0OC0wLjM1MiAwLjE0OHQtMC4zNTItMC4xNDhsLTUuNzk3LTUuNzk3cS0wLjE0OC0wLjE0OC0wLjE0OC0wLjM1MnQwLjE0OC0wLjM1Mmw1Ljc5Ny01Ljc5N3EwLjE0OC0wLjE0OCAwLjM1Mi0wLjE0OHQwLjM1MiAwLjE0OGwxLjI5NyAxLjI5N3EwLjE0OCAwLjE0OCAwLjE0OCAwLjM1MnQtMC4xNDggMC4zNTJ6Jy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1taW5pbWl6ZXItaG92ZXItYmc6ICAgICAgICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMSkgIWRlZmF1bHQ7XG4kc2lkZWJhci1saWdodC1taW5pbWl6ZXItaG92ZXItaW5kaWNhdG9yLWNvbG9yOiAgJGdyYXktNzAwICFkZWZhdWx0O1xuJHNpZGViYXItbGlnaHQtbWluaW1pemVyLWhvdmVyLWluZGljYXRvcjogICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDExIDE0JyUzRSUzQ3BhdGggZmlsbD0nI3skc2lkZWJhci1saWdodC1taW5pbWl6ZXItaG92ZXItaW5kaWNhdG9yLWNvbG9yfScgZD0nTTkuMTQ4IDIuMzUybC00LjE0OCA0LjE0OCA0LjE0OCA0LjE0OHEwLjE0OCAwLjE0OCAwLjE0OCAwLjM1MnQtMC4xNDggMC4zNTJsLTEuMjk3IDEuMjk3cS0wLjE0OCAwLjE0OC0wLjM1MiAwLjE0OHQtMC4zNTItMC4xNDhsLTUuNzk3LTUuNzk3cS0wLjE0OC0wLjE0OC0wLjE0OC0wLjM1MnQwLjE0OC0wLjM1Mmw1Ljc5Ny01Ljc5N3EwLjE0OC0wLjE0OCAwLjM1Mi0wLjE0OHQwLjM1MiAwLjE0OGwxLjI5NyAxLjI5N3EwLjE0OCAwLjE0OCAwLjE0OCAwLjM1MnQtMC4xNDggMC4zNTJ6Jy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHNpZGViYXItbWluaW1pemVyLWRlZmF1bHQtdGhlbWVcblxuJHNpZGViYXItdmFyaWFudHMtbWFwOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kc2lkZWJhci12YXJpYW50cy1tYXA6IG1hcC1tZXJnZShcbiAgKFxuICAgIGRhcms6IChcbiAgICAgIFwic2lkZWJhci1jb2xvclwiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstYmcsXG4gICAgICBcImRhcmstdGhlbWUtc2lkZWJhci1iZ1wiOiAgICAgICAgICAgICAgICAgICAgICAgMCxcbiAgICAgIFwic2lkZWJhci1ib3JkZXJzXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLWJvcmRlcnMsXG4gICAgICBcImRhcmstdGhlbWUtc2lkZWJhci1ib3JkZXJzXCI6ICAgICAgICAgICAgICAgICAgMCxcbiAgICAgIFwic2lkZWJhci1icmFuZC1jb2xvclwiOiAgICAgICAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLWJyYW5kLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLWJyYW5kLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstYnJhbmQtYmcsXG4gICAgICBcInNpZGViYXItaGVhZGVyLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJHNpZGViYXItZGFyay1oZWFkZXItYmcsXG4gICAgICBcInNpZGViYXItZm9ybS1ib3JkZXJcIjogICAgICAgICAgICAgICAgICAgICAgICAgJHNpZGViYXItZGFyay1mb3JtLWJvcmRlcixcbiAgICAgIFwic2lkZWJhci1mb3JtLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLWZvcm0tYmcsXG4gICAgICBcInNpZGViYXItZm9ybS1jb2xvclwiOiAgICAgICAgICAgICAgICAgICAgICAgICAgJHNpZGViYXItZGFyay1mb3JtLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLWZvcm0tcGxhY2Vob2xkZXItY29sb3JcIjogICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstZm9ybS1wbGFjZWhvbGRlci1jb2xvcixcbiAgICAgIFwic2lkZWJhci1uYXYtdGl0bGUtY29sb3JcIjogICAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLW5hdi10aXRsZS1jb2xvcixcbiAgICAgIFwic2lkZWJhci1uYXYtbGluay1jb2xvclwiOiAgICAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLW5hdi1saW5rLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstbmF2LWxpbmstYmcsXG4gICAgICBcInNpZGViYXItbmF2LWxpbmstaWNvbi1jb2xvclwiOiAgICAgICAgICAgICAgICAgJHNpZGViYXItZGFyay1uYXYtbGluay1pY29uLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWJvcmRlcnNcIjogICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstbmF2LWxpbmstYm9yZGVycyxcbiAgICAgIFwic2lkZWJhci1uYXYtbGluay1ob3Zlci1jb2xvclwiOiAgICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLW5hdi1saW5rLWhvdmVyLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWhvdmVyLWJnXCI6ICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstbmF2LWxpbmstaG92ZXItYmcsXG4gICAgICBcInNpZGViYXItbmF2LWxpbmstaG92ZXItaWNvbi1jb2xvclwiOiAgICAgICAgICAgJHNpZGViYXItZGFyay1uYXYtbGluay1ob3Zlci1pY29uLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWhvdmVyLWJvcmRlcnNcIjogICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstbmF2LWxpbmstaG92ZXItYm9yZGVycyxcbiAgICAgIFwic2lkZWJhci1uYXYtbGluay1hY3RpdmUtY29sb3JcIjogICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLW5hdi1saW5rLWFjdGl2ZS1jb2xvcixcbiAgICAgIFwic2lkZWJhci1uYXYtbGluay1hY3RpdmUtYmdcIjogICAgICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLW5hdi1saW5rLWFjdGl2ZS1iZyxcbiAgICAgIFwic2lkZWJhci1uYXYtbGluay1hY3RpdmUtaWNvbi1jb2xvclwiOiAgICAgICAgICAkc2lkZWJhci1kYXJrLW5hdi1saW5rLWFjdGl2ZS1pY29uLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWFjdGl2ZS1ib3JkZXJzXCI6ICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstbmF2LWxpbmstYWN0aXZlLWJvcmRlcnMsXG4gICAgICBcInNpZGViYXItbmF2LWxpbmstZGlzYWJsZWQtY29sb3JcIjogICAgICAgICAgICAgJHNpZGViYXItZGFyay1uYXYtbGluay1kaXNhYmxlZC1jb2xvcixcbiAgICAgIFwic2lkZWJhci1uYXYtbGluay1kaXNhYmxlZC1iZ1wiOiAgICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLW5hdi1saW5rLWRpc2FibGVkLWJnLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWRpc2FibGVkLWljb24tY29sb3JcIjogICAgICAgICRzaWRlYmFyLWRhcmstbmF2LWxpbmstZGlzYWJsZWQtaWNvbi1jb2xvcixcbiAgICAgIFwic2lkZWJhci1uYXYtbGluay1kaXNhYmxlZC1ib3JkZXJzXCI6ICAgICAgICAgICAkc2lkZWJhci1kYXJrLW5hdi1saW5rLWRpc2FibGVkLWJvcmRlcnMsXG4gICAgICBcInNpZGViYXItbmF2LWRyb3Bkb3duLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgJHNpZGViYXItZGFyay1uYXYtZHJvcGRvd24tY29sb3IsXG4gICAgICBcInNpZGViYXItbmF2LWRyb3Bkb3duLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgJHNpZGViYXItZGFyay1uYXYtZHJvcGRvd24tYmcsXG4gICAgICBcInNpZGViYXItbmF2LWRyb3Bkb3duLWJvcmRlcnNcIjogICAgICAgICAgICAgICAgJHNpZGViYXItZGFyay1uYXYtZHJvcGRvd24tYm9yZGVycyxcbiAgICAgIFwic2lkZWJhci1uYXYtZHJvcGRvd24taW5kaWNhdG9yLWNvbG9yXCI6ICAgICAgICAkc2lkZWJhci1kYXJrLW5hdi1kcm9wZG93bi1pbmRpY2F0b3ItY29sb3IsXG4gICAgICBcInNpZGViYXItbmF2LWRyb3Bkb3duLWluZGljYXRvclwiOiAgICAgICAgICAgICAgJHNpZGViYXItZGFyay1uYXYtZHJvcGRvd24taW5kaWNhdG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi1kcm9wZG93bi1pbmRpY2F0b3ItaG92ZXItY29sb3JcIjogICRzaWRlYmFyLWRhcmstbmF2LWRyb3Bkb3duLWluZGljYXRvci1ob3Zlci1jb2xvcixcbiAgICAgIFwic2lkZWJhci1uYXYtZHJvcGRvd24taW5kaWNhdG9yLWhvdmVyXCI6ICAgICAgICAkc2lkZWJhci1kYXJrLW5hdi1kcm9wZG93bi1pbmRpY2F0b3ItaG92ZXIsXG4gICAgICBcInNpZGViYXItbmF2LXRhYnMtYm9yZGVyLWNvbG9yXCI6ICAgICAgICAgICAgICAgJHNpZGViYXItZGFyay1uYXYtdGFicy1ib3JkZXItY29sb3IsXG4gICAgICBcInNpZGViYXItbmF2LXRhYnMtbGluay1hY3RpdmUtYmdcIjogICAgICAgICAgICAgJHNpZGViYXItZGFyay1uYXYtdGFicy1saW5rLWFjdGl2ZS1iZyxcbiAgICAgIFwic2lkZWJhci1uYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3JcIjogICAkc2lkZWJhci1kYXJrLW5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcixcbiAgICAgIFwic2lkZWJhci1uYXYtdGFicy1saW5rLWhvdmVyLWJnXCI6ICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLW5hdi10YWJzLWxpbmstaG92ZXItYmcsXG4gICAgICBcInNpZGViYXItbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3JcIjogICAgJHNpZGViYXItZGFyay1uYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcixcbiAgICAgIFwic2lkZWJhci10YWItY29udGVudC1ib3JkZXJzXCI6ICAgICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLXRhYi1jb250ZW50LWJvcmRlcnMsXG4gICAgICBcInNpZGViYXItZm9vdGVyLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJHNpZGViYXItZGFyay1mb290ZXItYmcsXG4gICAgICBcInNpZGViYXItZm9vdGVyLWJvcmRlcnNcIjogICAgICAgICAgICAgICAgICAgICAgJHNpZGViYXItZGFyay1mb290ZXItYm9yZGVycyxcbiAgICAgIFwic2lkZWJhci1taW5pbWl6ZXItYm9yZGVyc1wiOiAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLW1pbmltaXplci1ib3JkZXJzLFxuICAgICAgXCJzaWRlYmFyLW1pbmltaXplci1iZ1wiOiAgICAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWRhcmstbWluaW1pemVyLWJnLFxuICAgICAgXCJzaWRlYmFyLW1pbmltaXplci1pbmRpY2F0b3ItY29sb3JcIjogICAgICAgICAgICRzaWRlYmFyLWRhcmstbWluaW1pemVyLWluZGljYXRvci1jb2xvcixcbiAgICAgIFwic2lkZWJhci1taW5pbWl6ZXItaW5kaWNhdG9yXCI6ICAgICAgICAgICAgICAgICAkc2lkZWJhci1kYXJrLW1pbmltaXplci1pbmRpY2F0b3IsXG4gICAgICBcInNpZGViYXItbWluaW1pemVyLWhvdmVyLWJnXCI6ICAgICAgICAgICAgICAgICAgJHNpZGViYXItZGFyay1taW5pbWl6ZXItaG92ZXItYmcsXG4gICAgICBcInNpZGViYXItbWluaW1pemVyLWhvdmVyLWluZGljYXRvci1jb2xvclwiOiAgICAgJHNpZGViYXItZGFyay1taW5pbWl6ZXItaG92ZXItaW5kaWNhdG9yLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW1pbmltaXplci1ob3Zlci1pbmRpY2F0b3JcIjogICAgICAgICAgICRzaWRlYmFyLWRhcmstbWluaW1pemVyLWhvdmVyLWluZGljYXRvclxuICAgICksXG4gICAgbGlnaHQ6IChcbiAgICAgIFwic2lkZWJhci1jb2xvclwiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1saWdodC1jb2xvcixcbiAgICAgIFwic2lkZWJhci1iZ1wiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1saWdodC1iZyxcbiAgICAgIFwiZGFyay10aGVtZS1zaWRlYmFyLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAwLFxuICAgICAgXCJzaWRlYmFyLWJvcmRlcnNcIjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LWJvcmRlcnMsXG4gICAgICBcImRhcmstdGhlbWUtc2lkZWJhci1ib3JkZXJzXCI6ICAgICAgICAgICAgICAgICAgMCxcbiAgICAgIFwic2lkZWJhci1icmFuZC1jb2xvclwiOiAgICAgICAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1saWdodC1icmFuZC1jb2xvcixcbiAgICAgIFwic2lkZWJhci1icmFuZC1iZ1wiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1saWdodC1icmFuZC1iZyxcbiAgICAgIFwic2lkZWJhci1oZWFkZXItYmdcIjogICAgICAgICAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1saWdodC1oZWFkZXItYmcsXG4gICAgICBcInNpZGViYXItZm9ybS1ib3JkZXJcIjogICAgICAgICAgICAgICAgICAgICAgICAgJHNpZGViYXItbGlnaHQtZm9ybS1ib3JkZXIsXG4gICAgICBcInNpZGViYXItZm9ybS1iZ1wiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHNpZGViYXItbGlnaHQtZm9ybS1iZyxcbiAgICAgIFwic2lkZWJhci1mb3JtLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1saWdodC1mb3JtLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLWZvcm0tcGxhY2Vob2xkZXItY29sb3JcIjogICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LWZvcm0tcGxhY2Vob2xkZXItY29sb3IsXG4gICAgICBcInNpZGViYXItbmF2LXRpdGxlLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICAgJHNpZGViYXItbGlnaHQtbmF2LXRpdGxlLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWJnLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWljb24tY29sb3JcIjogICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWljb24tY29sb3IsXG4gICAgICBcInNpZGViYXItbmF2LWxpbmstYm9yZGVyc1wiOiAgICAgICAgICAgICAgICAgICAgJHNpZGViYXItbGlnaHQtbmF2LWxpbmstYm9yZGVycyxcbiAgICAgIFwic2lkZWJhci1uYXYtbGluay1ob3Zlci1jb2xvclwiOiAgICAgICAgICAgICAgICAkc2lkZWJhci1saWdodC1uYXYtbGluay1ob3Zlci1jb2xvcixcbiAgICAgIFwic2lkZWJhci1uYXYtbGluay1ob3Zlci1iZ1wiOiAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1saWdodC1uYXYtbGluay1ob3Zlci1iZyxcbiAgICAgIFwic2lkZWJhci1uYXYtbGluay1ob3Zlci1pY29uLWNvbG9yXCI6ICAgICAgICAgICAkc2lkZWJhci1saWdodC1uYXYtbGluay1ob3Zlci1pY29uLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWhvdmVyLWJvcmRlcnNcIjogICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWhvdmVyLWJvcmRlcnMsXG4gICAgICBcInNpZGViYXItbmF2LWxpbmstYWN0aXZlLWNvbG9yXCI6ICAgICAgICAgICAgICAgJHNpZGViYXItbGlnaHQtbmF2LWxpbmstYWN0aXZlLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWFjdGl2ZS1iZ1wiOiAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWFjdGl2ZS1iZyxcbiAgICAgIFwic2lkZWJhci1uYXYtbGluay1hY3RpdmUtaWNvbi1jb2xvclwiOiAgICAgICAgICAkc2lkZWJhci1saWdodC1uYXYtbGluay1hY3RpdmUtaWNvbi1jb2xvcixcbiAgICAgIFwic2lkZWJhci1uYXYtbGluay1hY3RpdmUtYm9yZGVyc1wiOiAgICAgICAgICAgICAkc2lkZWJhci1saWdodC1uYXYtbGluay1hY3RpdmUtYm9yZGVycyxcbiAgICAgIFwic2lkZWJhci1uYXYtbGluay1kaXNhYmxlZC1jb2xvclwiOiAgICAgICAgICAgICAkc2lkZWJhci1saWdodC1uYXYtbGluay1kaXNhYmxlZC1jb2xvcixcbiAgICAgIFwic2lkZWJhci1uYXYtbGluay1kaXNhYmxlZC1iZ1wiOiAgICAgICAgICAgICAgICAkc2lkZWJhci1saWdodC1uYXYtbGluay1kaXNhYmxlZC1iZyxcbiAgICAgIFwic2lkZWJhci1uYXYtbGluay1kaXNhYmxlZC1pY29uLWNvbG9yXCI6ICAgICAgICAkc2lkZWJhci1saWdodC1uYXYtbGluay1kaXNhYmxlZC1pY29uLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi1saW5rLWRpc2FibGVkLWJvcmRlcnNcIjogICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LW5hdi1saW5rLWRpc2FibGVkLWJvcmRlcnMsXG4gICAgICBcInNpZGViYXItbmF2LWRyb3Bkb3duLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgJHNpZGViYXItbGlnaHQtbmF2LWRyb3Bkb3duLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi1kcm9wZG93bi1iZ1wiOiAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LW5hdi1kcm9wZG93bi1iZyxcbiAgICAgIFwic2lkZWJhci1uYXYtZHJvcGRvd24tYm9yZGVyc1wiOiAgICAgICAgICAgICAgICAkc2lkZWJhci1saWdodC1uYXYtZHJvcGRvd24tYm9yZGVycyxcbiAgICAgIFwic2lkZWJhci1uYXYtZHJvcGRvd24taW5kaWNhdG9yLWNvbG9yXCI6ICAgICAgICAkc2lkZWJhci1saWdodC1uYXYtZHJvcGRvd24taW5kaWNhdG9yLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW5hdi1kcm9wZG93bi1pbmRpY2F0b3JcIjogICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LW5hdi1kcm9wZG93bi1pbmRpY2F0b3IsXG4gICAgICBcInNpZGViYXItbmF2LWRyb3Bkb3duLWluZGljYXRvci1ob3Zlci1jb2xvclwiOiAgJHNpZGViYXItbGlnaHQtbmF2LWRyb3Bkb3duLWluZGljYXRvci1ob3Zlci1jb2xvcixcbiAgICAgIFwic2lkZWJhci1uYXYtZHJvcGRvd24taW5kaWNhdG9yLWhvdmVyXCI6ICAgICAgICAkc2lkZWJhci1saWdodC1uYXYtZHJvcGRvd24taW5kaWNhdG9yLWhvdmVyLFxuICAgICAgXCJzaWRlYmFyLW5hdi10YWJzLWJvcmRlci1jb2xvclwiOiAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LW5hdi10YWJzLWJvcmRlci1jb2xvcixcbiAgICAgIFwic2lkZWJhci1uYXYtdGFicy1saW5rLWFjdGl2ZS1iZ1wiOiAgICAgICAgICAgICAkc2lkZWJhci1saWdodC1uYXYtdGFicy1saW5rLWFjdGl2ZS1iZyxcbiAgICAgIFwic2lkZWJhci1uYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3JcIjogICAkc2lkZWJhci1saWdodC1uYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3IsXG4gICAgICBcInNpZGViYXItbmF2LXRhYnMtbGluay1ob3Zlci1iZ1wiOiAgICAgICAgICAgICAgJHNpZGViYXItbGlnaHQtbmF2LXRhYnMtbGluay1ob3Zlci1iZyxcbiAgICAgIFwic2lkZWJhci1uYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvclwiOiAgICAkc2lkZWJhci1saWdodC1uYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcixcbiAgICAgIFwic2lkZWJhci10YWItY29udGVudC1ib3JkZXJzXCI6ICAgICAgICAgICAgICAgICAkc2lkZWJhci1saWdodC10YWItY29udGVudC1ib3JkZXJzLFxuICAgICAgXCJzaWRlYmFyLWZvb3Rlci1iZ1wiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LWZvb3Rlci1iZyxcbiAgICAgIFwic2lkZWJhci1mb290ZXItYm9yZGVyc1wiOiAgICAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1saWdodC1mb290ZXItYm9yZGVycyxcbiAgICAgIFwic2lkZWJhci1taW5pbWl6ZXItYm9yZGVyc1wiOiAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1saWdodC1taW5pbWl6ZXItYm9yZGVycyxcbiAgICAgIFwic2lkZWJhci1taW5pbWl6ZXItYmdcIjogICAgICAgICAgICAgICAgICAgICAgICAkc2lkZWJhci1saWdodC1taW5pbWl6ZXItYmcsXG4gICAgICBcInNpZGViYXItbWluaW1pemVyLWluZGljYXRvci1jb2xvclwiOiAgICAgICAgICAgJHNpZGViYXItbGlnaHQtbWluaW1pemVyLWluZGljYXRvci1jb2xvcixcbiAgICAgIFwic2lkZWJhci1taW5pbWl6ZXItaW5kaWNhdG9yXCI6ICAgICAgICAgICAgICAgICAkc2lkZWJhci1saWdodC1taW5pbWl6ZXItaW5kaWNhdG9yLFxuICAgICAgXCJzaWRlYmFyLW1pbmltaXplci1ob3Zlci1iZ1wiOiAgICAgICAgICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LW1pbmltaXplci1ob3Zlci1iZyxcbiAgICAgIFwic2lkZWJhci1taW5pbWl6ZXItaG92ZXItaW5kaWNhdG9yLWNvbG9yXCI6ICAgICAkc2lkZWJhci1saWdodC1taW5pbWl6ZXItaG92ZXItaW5kaWNhdG9yLWNvbG9yLFxuICAgICAgXCJzaWRlYmFyLW1pbmltaXplci1ob3Zlci1pbmRpY2F0b3JcIjogICAgICAgICAgICRzaWRlYmFyLWxpZ2h0LW1pbmltaXplci1ob3Zlci1pbmRpY2F0b3IsXG4gICAgKVxuICApLFxuICAkc2lkZWJhci12YXJpYW50cy1tYXBcbik7XG5cbiRzaWRlYmFyLWRlZmF1bHQtdmFyaWFudDogXCJkYXJrXCIgIWRlZmF1bHQ7XG4kc2lkZWJhci12YXJpYW50czogKFxuICBtYXA6ICRzaWRlYmFyLXZhcmlhbnRzLW1hcCxcbiAgZGVmYXVsdDogJHNpZGViYXItZGVmYXVsdC12YXJpYW50XG4pICFkZWZhdWx0O1xuXG4kc2lkZWJhci10aGVtZS1tYXA6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRzaWRlYmFyLXRoZW1lLW1hcDogbWFwLW1lcmdlKFxuICAoXG4gICAgZGVmYXVsdDogJHNpZGViYXItdmFyaWFudHMsXG4gICksXG4gICRzaWRlYmFyLXRoZW1lLW1hcFxuKTtcbiIsIi8vIENvbnRlbnRzXG4vL1xuLy8gTmF2YmFyXG4vLyBOYXZiYXIgYnJhbmRcbi8vIE5hdmJhciBuYXZcbi8vIE5hdmJhciB0ZXh0XG4vLyBOYXZiYXIgZGl2aWRlclxuLy8gUmVzcG9uc2l2ZSBuYXZiYXJcbi8vIE5hdmJhciBwb3NpdGlvblxuLy8gTmF2YmFyIHRoZW1lc1xuXG5cbi8vIE5hdmJhclxuLy9cbi8vIFByb3ZpZGUgYSBzdGF0aWMgbmF2YmFyIGZyb20gd2hpY2ggd2UgZXhwYW5kIHRvIGNyZWF0ZSBmdWxsLXdpZHRoLCBmaXhlZCwgYW5kXG4vLyBvdGhlciBuYXZiYXIgdmFyaWF0aW9ucy5cblxuLm5hdmJhciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyAvLyBhbGxvdyB1cyB0byBkbyB0aGUgbGluZSBicmVhayBmb3IgY29sbGFwc2luZyBjb250ZW50XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgLy8gc3BhY2Ugb3V0IGJyYW5kIGZyb20gbG9nb1xuICBwYWRkaW5nOiAkbmF2YmFyLXBhZGRpbmcteSAkbmF2YmFyLXBhZGRpbmcteDtcblxuICAvLyBCZWNhdXNlIGZsZXggcHJvcGVydGllcyBhcmVuJ3QgaW5oZXJpdGVkLCB3ZSBuZWVkIHRvIHJlZGVjbGFyZSB0aGVzZSBmaXJzdFxuICAvLyBmZXcgcHJvcGVydGllcyBzbyB0aGF0IGNvbnRlbnQgbmVzdGVkIHdpdGhpbiBiZWhhdmUgcHJvcGVybHkuXG4gICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxuXG4gIC5jb250YWluZXIsXG4gIC5jb250YWluZXItZmx1aWQge1xuICAgIEBleHRlbmQgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXM7XG4gIH1cblxuICBAZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICA+IC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRocyl9IHtcbiAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1mbGV4LXByb3BlcnRpZXM7XG4gICAgfVxuICB9XG59XG5cblxuLy8gTmF2YmFyIGJyYW5kXG4vL1xuLy8gVXNlZCBmb3IgYnJhbmQsIHByb2plY3QsIG9yIHNpdGUgbmFtZXMuXG5cbi5uYXZiYXItYnJhbmQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctdG9wOiAkbmF2YmFyLWJyYW5kLXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICRuYXZiYXItYnJhbmQtcGFkZGluZy15O1xuICBtYXJnaW4tcmlnaHQ6ICRuYXZiYXItcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJG5hdmJhci1icmFuZC1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgbmF2XG4vL1xuLy8gQ3VzdG9tIG5hdmJhciBuYXZpZ2F0aW9uIChkb2Vzbid0IHJlcXVpcmUgYC5uYXZgLCBidXQgZG9lcyBtYWtlIHVzZSBvZiBgLm5hdi1saW5rYCkuXG5cbi5uYXZiYXItbmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgLy8gY2Fubm90IHVzZSBgaW5oZXJpdGAgdG8gZ2V0IHRoZSBgLm5hdmJhcmBzIHZhbHVlXG4gIEBpbmNsdWRlIGx0ciB7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyAvLyByZXNldCBwYWRkaW5nIGJlY2F1c2UgdWwgYW5kIG9sXG4gIH1cbiAgQGluY2x1ZGUgcnRsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyAvLyByZXNldCBwYWRkaW5nIGJlY2F1c2UgdWwgYW5kIG9sXG4gIH1cbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAubmF2LWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgdGV4dFxuLy9cbi8vXG5cbi5uYXZiYXItdGV4dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy10b3A6ICRuYXYtbGluay1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkbmF2LWxpbmstcGFkZGluZy15O1xufVxuXG5cbi8vIFJlc3BvbnNpdmUgbmF2YmFyXG4vL1xuLy8gQ3VzdG9tIHN0eWxlcyBmb3IgcmVzcG9uc2l2ZSBjb2xsYXBzaW5nIGFuZCB0b2dnbGluZyBvZiBuYXZiYXIgY29udGVudHMuXG4vLyBQb3dlcmVkIGJ5IHRoZSBjb2xsYXBzZSBCb290c3RyYXAgSmF2YVNjcmlwdCBwbHVnaW4uXG5cbi8vIFdoZW4gY29sbGFwc2VkLCBwcmV2ZW50IHRoZSB0b2dnbGVhYmxlIG5hdmJhciBjb250ZW50cyBmcm9tIGFwcGVhcmluZyBpblxuLy8gdGhlIGRlZmF1bHQgZmxleGJveCByb3cgb3JpZW50YXRpb24uIFJlcXVpcmVzIHRoZSB1c2Ugb2YgYGZsZXgtd3JhcDogd3JhcGBcbi8vIG9uIHRoZSBgLm5hdmJhcmAgcGFyZW50LlxuLm5hdmJhci1jb2xsYXBzZSB7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG4gIGZsZXgtZ3JvdzogMTtcbiAgLy8gRm9yIGFsd2F5cyBleHBhbmRlZCBvciBleHRyYSBmdWxsIG5hdmJhcnMsIGVuc3VyZSBjb250ZW50IGFsaWducyBpdHNlbGZcbiAgLy8gcHJvcGVybHkgdmVydGljYWxseS4gQ2FuIGJlIGVhc2lseSBvdmVycmlkZGVuIHdpdGggZmxleCB1dGlsaXRpZXMuXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi8vIEJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG5hdmJhciB3aGVuIGluIGl0cyBjb2xsYXBzZWQgc3RhdGVcbi5uYXZiYXItdG9nZ2xlciB7XG4gIHBhZGRpbmc6ICRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXkgJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRuYXZiYXItdG9nZ2xlci1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIHJlbW92ZSBkZWZhdWx0IGJ1dHRvbiBzdHlsZVxuICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7IC8vIHJlbW92ZSBkZWZhdWx0IGJ1dHRvbiBzdHlsZVxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzKTtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuLy8gS2VlcCBhcyBhIHNlcGFyYXRlIGVsZW1lbnQgc28gZm9sa3MgY2FuIGVhc2lseSBvdmVycmlkZSBpdCB3aXRoIGFub3RoZXIgaWNvblxuLy8gb3IgaW1hZ2UgZmlsZSBhcyBuZWVkZWQuXG4ubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEuNWVtO1xuICBoZWlnaHQ6IDEuNWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kOiBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG59XG5cbi8vIEdlbmVyYXRlIHNlcmllcyBvZiBgLm5hdmJhci1leHBhbmQtKmAgcmVzcG9uc2l2ZSBjbGFzc2VzIGZvciBjb25maWd1cmluZ1xuLy8gd2hlcmUgeW91ciBuYXZiYXIgY29sbGFwc2VzLlxuLm5hdmJhci1leHBhbmQge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJG5leHQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgICYjeyRpbmZpeH0ge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG4gICAgICAgICVjb250YWluZXItbmF2YmFyLWV4cGFuZC0jeyRicmVha3BvaW50fSB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICA+IC5jb250YWluZXIsXG4gICAgICAgID4gLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgICAgICAgQGV4dGVuZCAlY29udGFpbmVyLW5hdmJhci1leHBhbmQtI3skYnJlYWtwb2ludH07XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkc2l6ZSwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICAgICAgICA+IC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJHNpemUsICRjb250YWluZXItbWF4LXdpZHRocyl9IHtcbiAgICAgICAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1uYXZiYXItZXhwYW5kLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuZXh0KSB7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgIC5uYXZiYXItbmF2IHtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gRm9yIG5lc3RpbmcgY29udGFpbmVycywgaGF2ZSB0byByZWRlY2xhcmUgZm9yIGFsaWdubWVudCBwdXJwb3Nlc1xuICAgICAgICAlY29udGFpbmVyLW5lc3RpbmctI3skYnJlYWtwb2ludH0ge1xuICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICB9XG5cbiAgICAgICAgPiAuY29udGFpbmVyLFxuICAgICAgICA+IC5jb250YWluZXItZmx1aWQge1xuICAgICAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1uZXN0aW5nLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJHNpemUsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgICAgICAgPiAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRzaXplLCAkY29udGFpbmVyLW1heC13aWR0aHMpfSB7XG4gICAgICAgICAgICBAZXh0ZW5kICVjb250YWluZXItbmVzdGluZy0jeyRicmVha3BvaW50fTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbiAgICAgICAgICAvLyBDaGFuZ2VzIGZsZXgtYmFzZXMgdG8gYXV0byBiZWNhdXNlIG9mIGFuIElFMTAgYnVnXG4gICAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSB0aGVtZXMoJG5hdmJhci10aGVtZS1tYXAsICRjcmVhdGU6IGFwcGVuZCwgJHBhcmVudDogXCIubmF2YmFyXCIpIHtcbiAgLm5hdmJhci1icmFuZCB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJuYXZiYXItYnJhbmQtY29sb3JcIik7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibmF2YmFyLWJyYW5kLWhvdmVyLWNvbG9yXCIpO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItbmF2IHtcbiAgICAubmF2LWxpbmsge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJuYXZiYXItY29sb3JcIik7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcIm5hdmJhci1ob3Zlci1jb2xvclwiKTtcbiAgICAgIH1cblxuICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibmF2YmFyLWRpc2FibGVkLWNvbG9yXCIpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zaG93ID4gLm5hdi1saW5rLFxuICAgIC5hY3RpdmUgPiAubmF2LWxpbmssXG4gICAgLm5hdi1saW5rLnNob3csXG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcIm5hdmJhci1hY3RpdmUtY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyIHtcbiAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcIm5hdmJhci1jb2xvclwiKTtcbiAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJuYXZiYXItdG9nZ2xlci1ib3JkZXItY29sb3JcIik7XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2Zyh0aGVtZXMtZ2V0LXZhbHVlKFwibmF2YmFyLXRvZ2dsZXItaWNvbi1iZ1wiKSk7XG4gIH1cblxuICAubmF2YmFyLXRleHQge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwibmF2YmFyLWNvbG9yXCIpO1xuICAgIGEge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJuYXZiYXItYWN0aXZlLWNvbG9yXCIpO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJuYXZiYXItYWN0aXZlLWNvbG9yXCIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIE5hdmJhciB0aGVtZXNcbi8vXG4vLyBTdHlsZXMgZm9yIHN3aXRjaGluZyBiZXR3ZWVuIG5hdmJhcnMgd2l0aCBsaWdodCBvciBkYXJrIGJhY2tncm91bmQuXG5cbi8vIERhcmsgbGlua3MgYWdhaW5zdCBhIGxpZ2h0IGJhY2tncm91bmRcbi8vIC5uYXZiYXItbGlnaHQge1xuLy8gICAubmF2YmFyLWJyYW5kIHtcbi8vICAgICBjb2xvcjogJG5hdmJhci1saWdodC1icmFuZC1jb2xvcjtcblxuLy8gICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuLy8gICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYnJhbmQtaG92ZXItY29sb3I7XG4vLyAgICAgfVxuLy8gICB9XG5cbi8vICAgLm5hdmJhci1uYXYge1xuLy8gICAgIC5uYXYtbGluayB7XG4vLyAgICAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcblxuLy8gICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4vLyAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yO1xuLy8gICAgICAgfVxuXG4vLyAgICAgICAmLmRpc2FibGVkIHtcbi8vICAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I7XG4vLyAgICAgICB9XG4vLyAgICAgfVxuXG4vLyAgICAgLnNob3cgPiAubmF2LWxpbmssXG4vLyAgICAgLmFjdGl2ZSA+IC5uYXYtbGluayxcbi8vICAgICAubmF2LWxpbmsuc2hvdyxcbi8vICAgICAubmF2LWxpbmsuYWN0aXZlIHtcbi8vICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcbi8vICAgICB9XG4vLyAgIH1cblxuLy8gICAubmF2YmFyLXRvZ2dsZXIge1xuLy8gICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuLy8gICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjtcbi8vICAgfVxuXG4vLyAgIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbi8vICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRuYXZiYXItbGlnaHQtdG9nZ2xlci1pY29uLWJnKTtcbi8vICAgfVxuXG4vLyAgIC5uYXZiYXItdGV4dCB7XG4vLyAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtY29sb3I7XG4vLyAgICAgYSB7XG4vLyAgICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG5cbi8vICAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuLy8gICAgICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG4vLyAgICAgICB9XG4vLyAgICAgfVxuLy8gICB9XG4vLyB9XG5cbi8vIC8vIFdoaXRlIGxpbmtzIGFnYWluc3QgYSBkYXJrIGJhY2tncm91bmRcbi8vIC5uYXZiYXItZGFyayB7XG4vLyAgIC5uYXZiYXItYnJhbmQge1xuLy8gICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYnJhbmQtY29sb3I7XG5cbi8vICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbi8vICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYnJhbmQtaG92ZXItY29sb3I7XG4vLyAgICAgfVxuLy8gICB9XG5cbi8vICAgLm5hdmJhci1uYXYge1xuLy8gICAgIC5uYXYtbGluayB7XG4vLyAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xuXG4vLyAgICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbi8vICAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjtcbi8vICAgICAgIH1cblxuLy8gICAgICAgJi5kaXNhYmxlZCB7XG4vLyAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I7XG4vLyAgICAgICB9XG4vLyAgICAgfVxuXG4vLyAgICAgLnNob3cgPiAubmF2LWxpbmssXG4vLyAgICAgLmFjdGl2ZSA+IC5uYXYtbGluayxcbi8vICAgICAubmF2LWxpbmsuc2hvdyxcbi8vICAgICAubmF2LWxpbmsuYWN0aXZlIHtcbi8vICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuLy8gICAgIH1cbi8vICAgfVxuXG4vLyAgIC5uYXZiYXItdG9nZ2xlciB7XG4vLyAgICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcbi8vICAgICBib3JkZXItY29sb3I6ICRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjtcbi8vICAgfVxuXG4vLyAgIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbi8vICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmcpO1xuLy8gICB9XG5cbi8vICAgLm5hdmJhci10ZXh0IHtcbi8vICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xuLy8gICAgIGEge1xuLy8gICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XG5cbi8vICAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuLy8gICAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcbi8vICAgICAgIH1cbi8vICAgICB9XG4vLyAgIH1cbi8vIH1cbiIsIlxuLy8gTmF2YmFyXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBuYXZiYXJcbiRuYXZiYXItcGFkZGluZy15OiAgJHNwYWNlciAvIDIgIWRlZmF1bHQ7XG4kbmF2YmFyLXBhZGRpbmcteDogICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14OiAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRuYXZiYXItYnJhbmQtZm9udC1zaXplOiAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbi8vIENvbXB1dGUgdGhlIG5hdmJhci1icmFuZCBwYWRkaW5nLXkgc28gdGhlIG5hdmJhci1icmFuZCB3aWxsIGhhdmUgdGhlIHNhbWUgaGVpZ2h0IGFzIG5hdmJhci10ZXh0IGFuZCBuYXYtbGlua1xuJG5hdi1saW5rLWhlaWdodDogICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSArICRuYXYtbGluay1wYWRkaW5nLXkgKiAyICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1oZWlnaHQ6ICAgICAkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSAqICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1wYWRkaW5nLXk6ICAoJG5hdi1saW5rLWhlaWdodCAtICRuYXZiYXItYnJhbmQtaGVpZ2h0KSAvIDIgIWRlZmF1bHQ7XG5cbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXk6ICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDogICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplOiAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1czogICRidG4tYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBuYXZiYXItZGVmYXVsdC10aGVtZVxuJG5hdmJhci1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC41KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjogICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNzUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yOiAgICAgICAgcmdiYSgkd2hpdGUsIC4yNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnOiAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSczMCcgaGVpZ2h0PSczMCcgdmlld0JveD0nMCAwIDMwIDMwJz48cGF0aCBzdHJva2U9JyN7JG5hdmJhci1kYXJrLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1ib3JkZXItY29sb3I6ICByZ2JhKCR3aGl0ZSwgLjEpICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtaG92ZXItY29sb3I6ICAgICAgICAgICByZ2JhKCRibGFjaywgLjcpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I6ICAgICAgICAgIHJnYmEoJGJsYWNrLCAuOSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yOiAgICAgICAgcmdiYSgkYmxhY2ssIC4zKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1pY29uLWJnOiAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSczMCcgaGVpZ2h0PSczMCcgdmlld0JveD0nMCAwIDMwIDMwJz48cGF0aCBzdHJva2U9JyN7JG5hdmJhci1saWdodC1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjogIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbGlnaHQtYnJhbmQtY29sb3I6ICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYnJhbmQtaG92ZXItY29sb3I6ICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1icmFuZC1jb2xvcjogICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yOiAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG5hdmJhci1kZWZhdWx0LXRoZW1lXG5cbiRuYXZiYXItdmFyaWFudHMtbWFwOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kbmF2YmFyLXZhcmlhbnRzLW1hcDogbWFwLW1lcmdlKFxuICAoXG4gICAgZGFyazogKFxuICAgICAgXCJuYXZiYXItY29sb3JcIjogICAgICAgICAgICAgICAgICRuYXZiYXItZGFyay1jb2xvcixcbiAgICAgIFwibmF2YmFyLWhvdmVyLWNvbG9yXCI6ICAgICAgICAgICAkbmF2YmFyLWRhcmstaG92ZXItY29sb3IsXG4gICAgICBcIm5hdmJhci1hY3RpdmUtY29sb3JcIjogICAgICAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcixcbiAgICAgIFwibmF2YmFyLWRpc2FibGVkLWNvbG9yXCI6ICAgICAgICAkbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3IsXG4gICAgICBcIm5hdmJhci10b2dnbGVyLWljb24tYmdcIjogICAgICAgJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZyxcbiAgICAgIFwibmF2YmFyLXRvZ2dsZXItYm9yZGVyLWNvbG9yXCI6ICAkbmF2YmFyLWRhcmstdG9nZ2xlci1ib3JkZXItY29sb3IsXG4gICAgICBcIm5hdmJhci1icmFuZC1jb2xvclwiOiAgICAgICAgICAgJG5hdmJhci1kYXJrLWJyYW5kLWNvbG9yLFxuICAgICAgXCJuYXZiYXItYnJhbmQtaG92ZXItY29sb3JcIjogICAgICRuYXZiYXItZGFyay1icmFuZC1ob3Zlci1jb2xvclxuICAgICksXG4gICAgbGlnaHQ6IChcbiAgICAgIFwibmF2YmFyLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWNvbG9yLFxuICAgICAgXCJuYXZiYXItaG92ZXItY29sb3JcIjogICAgICAgICAgICRuYXZiYXItbGlnaHQtaG92ZXItY29sb3IsXG4gICAgICBcIm5hdmJhci1hY3RpdmUtY29sb3JcIjogICAgICAgICAgJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3IsXG4gICAgICBcIm5hdmJhci1kaXNhYmxlZC1jb2xvclwiOiAgICAgICAgJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcixcbiAgICAgIFwibmF2YmFyLXRvZ2dsZXItaWNvbi1iZ1wiOiAgICAgICAkbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZyxcbiAgICAgIFwibmF2YmFyLXRvZ2dsZXItYm9yZGVyLWNvbG9yXCI6ICAkbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYm9yZGVyLWNvbG9yLFxuICAgICAgXCJuYXZiYXItYnJhbmQtY29sb3JcIjogICAgICAgICAgICRuYXZiYXItbGlnaHQtYnJhbmQtY29sb3IsXG4gICAgICBcIm5hdmJhci1icmFuZC1ob3Zlci1jb2xvclwiOiAgICAgJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvclxuICAgIClcbiAgKSxcbiAgJG5hdmJhci12YXJpYW50cy1tYXBcbik7XG5cbiRuYXZiYXItZGVmYXVsdC12YXJpYW50OiBudWxsICFkZWZhdWx0O1xuJG5hdmJhci12YXJpYW50czogKFxuICBkZWZhdWx0OiAgJG5hdmJhci1kZWZhdWx0LXZhcmlhbnQsXG4gIG1hcDogICAgICAkbmF2YmFyLXZhcmlhbnRzLW1hcFxuKSAhZGVmYXVsdDtcblxuJG5hdmJhci10aGVtZS1tYXA6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRuYXZiYXItdGhlbWUtbWFwOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBkZWZhdWx0OiAgJG5hdmJhci12YXJpYW50c1xuICApLFxuICAkbmF2YmFyLXRoZW1lLW1hcFxuKTtcbiIsIlxuXG4vLyBTcGFjaW5nXG4vL1xuLy8gQ29udHJvbCB0aGUgZGVmYXVsdCBzdHlsaW5nIG9mIG1vc3QgQm9vdHN0cmFwIGVsZW1lbnRzIGJ5IG1vZGlmeWluZyB0aGVzZVxuLy8gdmFyaWFibGVzLiBNb3N0bHkgZm9jdXNlZCBvbiBzcGFjaW5nLlxuLy8gWW91IGNhbiBhZGQgbW9yZSBlbnRyaWVzIHRvIHRoZSAkc3BhY2VycyBtYXAsIHNob3VsZCB5b3UgbmVlZCBtb3JlIHZhcmlhdGlvbi5cblxuJHNwYWNlcjogIDFyZW0gIWRlZmF1bHQ7XG4kc3BhY2VyczogICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRzcGFjZXJzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICAwOiAgMCxcbiAgICAxOiAgKCRzcGFjZXIgKiAuMjUpLFxuICAgIDI6ICAoJHNwYWNlciAqIC41KSxcbiAgICAzOiAgJHNwYWNlcixcbiAgICA0OiAgKCRzcGFjZXIgKiAxLjUpLFxuICAgIDU6ICAoJHNwYWNlciAqIDMpXG4gICksXG4gICRzcGFjZXJzXG4pO1xuXG4vLyBUaGlzIHZhcmlhYmxlIGFmZmVjdHMgdGhlIGAuaC0qYCBhbmQgYC53LSpgIGNsYXNzZXMuXG4kc2l6ZXM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRzaXplczogbWFwLW1lcmdlKFxuICAoXG4gICAgMjU6ICAgIDI1JSxcbiAgICA1MDogICAgNTAlLFxuICAgIDc1OiAgICA3NSUsXG4gICAgMTAwOiAgIDEwMCUsXG4gICAgYXV0bzogIGF1dG9cbiAgKSxcbiAgJHNpemVzXG4pO1xuIiwiLy8gTmF2c1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbmF2XG4kbmF2LWxpbmstcGFkZGluZy15OiAgLjVyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstcGFkZGluZy14OiAgMXJlbSAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWJvcmRlci13aWR0aDogICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci1yYWRpdXM6ICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWJveGVkLWNvbnRlbnQtcGFkZGluZy15OiAgICAgLjc1cmVtICFkZWZhdWx0O1xuJG5hdi10YWJzLWJveGVkLWNvbnRlbnQtcGFkZGluZy14OiAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3hlZC1jb250ZW50LWJvcmRlci13aWR0aDogICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kbmF2LWRpdmlkZXItbWFyZ2luLXk6ICAkc3BhY2VyIC8gMiAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbmF2XG5cbi8vIExpZ2h0IFRoZW1lXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbmF2LWRlZmF1bHQtdGhlbWVcbiRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgICRncmF5LTIwMCAkZ3JheS0yMDAgJG5hdi10YWJzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgJGdyYXktMzAwICRncmF5LTMwMCAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1ib3hlZC1saW5rLWFjdGl2ZS1iZzogICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm94ZWQtY29udGVudC1iZzogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG5hdi10YWJzLWJveGVkLWNvbnRlbnQtYm9yZGVyLWNvbG9yOiAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm94ZWQtY29udGVudC1ib3JkZXItcmFkaXVzOiAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1ib3hlZC1sZWZ0LWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgJGJvcmRlci1jb2xvciAkd2hpdGUgJGJvcmRlci1jb2xvciAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG5hdi10YWJzLWJveGVkLXJpZ2h0LWFjdGl2ZS1ib3JkZXItY29sb3I6ICAkYm9yZGVyLWNvbG9yICRib3JkZXItY29sb3IgJGJvcmRlci1jb2xvciAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I6ICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmc6ICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRuYXYtZGl2aWRlci1jb2xvcjogICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG5hdi1kZWZhdWx0LXRoZW1lXG5cbiRuYXYtdGhlbWUtbWFwOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kbmF2LXRoZW1lLW1hcDogbWFwLW1lcmdlKFxuICAoXG4gICAgZGVmYXVsdDogKFxuICAgICAgXCJuYXYtbGluay1kaXNhYmxlZC1jb2xvclwiOiAgICAgICAgICAgICAgICAgICAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3IsXG4gICAgICBcIm5hdi10YWJzLWJvcmRlci1jb2xvclwiOiAgICAgICAgICAgICAgICAgICAgICRuYXYtdGFicy1ib3JkZXItY29sb3IsXG4gICAgICBcIm5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yXCI6ICAgICAgICAgICRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcixcbiAgICAgIFwibmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3JcIjogICAgICAgICAgICAgICAgJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yLFxuICAgICAgXCJuYXYtdGFicy1saW5rLWFjdGl2ZS1iZ1wiOiAgICAgICAgICAgICAgICAgICAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmcsXG4gICAgICBcIm5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvclwiOiAgICAgICAgICRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3IsXG4gICAgICBcIm5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvclwiOiAgICAgICAgICAgICAgICRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3IsXG4gICAgICBcIm5hdi1waWxscy1saW5rLWFjdGl2ZS1iZ1wiOiAgICAgICAgICAgICAgICAgICRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmcsXG4gICAgICBcIm5hdi1kaXZpZGVyLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICRuYXYtZGl2aWRlci1jb2xvcixcbiAgICAgIFwibmF2LXRhYnMtYm94ZWQtbGluay1hY3RpdmUtYmdcIjogICAgICAgICAgICAgJG5hdi10YWJzLWJveGVkLWxpbmstYWN0aXZlLWJnLFxuICAgICAgXCJuYXYtdGFicy1ib3hlZC1jb250ZW50LWJnXCI6ICAgICAgICAgICAgICAgICAkbmF2LXRhYnMtYm94ZWQtY29udGVudC1iZyxcbiAgICAgIFwibmF2LXRhYnMtYm94ZWQtY29udGVudC1ib3JkZXItY29sb3JcIjogICAgICAgJG5hdi10YWJzLWJveGVkLWNvbnRlbnQtYm9yZGVyLWNvbG9yLFxuICAgICAgXCJuYXYtdGFicy1ib3hlZC1sZWZ0LWFjdGl2ZS1ib3JkZXItY29sb3JcIjogICAkbmF2LXRhYnMtYm94ZWQtbGVmdC1hY3RpdmUtYm9yZGVyLWNvbG9yLFxuICAgICAgXCJuYXYtdGFicy1ib3hlZC1yaWdodC1hY3RpdmUtYm9yZGVyLWNvbG9yXCI6ICAkbmF2LXRhYnMtYm94ZWQtcmlnaHQtYWN0aXZlLWJvcmRlci1jb2xvclxuICAgIClcbiAgKSxcbiAgJG5hdi10aGVtZS1tYXBcbik7XG4iLCIucGFnaW5hdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygpO1xufVxuXG4ucGFnZS1saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJHBhZ2luYXRpb24tcGFkZGluZy15ICRwYWdpbmF0aW9uLXBhZGRpbmcteDtcbiAgbGluZS1oZWlnaHQ6ICRwYWdpbmF0aW9uLWxpbmUtaGVpZ2h0O1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIGJvcmRlcjogJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoIHNvbGlkO1xuICBAaW5jbHVkZSBsdHIge1xuICAgIG1hcmdpbi1sZWZ0OiAtJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoO1xuICB9XG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoO1xuICB9XG4gIEBpbmNsdWRlIHRoZW1lcygkcGFnaW5hdGlvbi10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwicGFnaW5hdGlvbi1jb2xvclwiKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwicGFnaW5hdGlvbi1iZ1wiKTtcbiAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwYWdpbmF0aW9uLWJvcmRlci1jb2xvclwiKTtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIHotaW5kZXg6IDI7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIEBpbmNsdWRlIHRoZW1lcygkcGFnaW5hdGlvbi10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwYWdpbmF0aW9uLWhvdmVyLWNvbG9yXCIpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBhZ2luYXRpb24taG92ZXItYmdcIik7XG4gICAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvclwiKTtcbiAgICB9XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIG91dGxpbmU6ICRwYWdpbmF0aW9uLWZvY3VzLW91dGxpbmU7XG4gICAgYm94LXNoYWRvdzogJHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdztcbiAgfVxufVxuXG4ucGFnZS1pdGVtIHtcbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgLnBhZ2UtbGluayB7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICY6bGFzdC1jaGlsZCB7XG4gICAgLnBhZ2UtbGluayB7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5hY3RpdmUgLnBhZ2UtbGluayB7XG4gICAgei1pbmRleDogMztcbiAgICBAaW5jbHVkZSB0aGVtZXMoJHBhZ2luYXRpb24tdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwicGFnaW5hdGlvbi1hY3RpdmUtY29sb3JcIik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwicGFnaW5hdGlvbi1hY3RpdmUtYmdcIik7XG4gICAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgJi5kaXNhYmxlZCAucGFnZS1saW5rIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAvLyBPcGluaW9uYXRlZDogcmVtb3ZlIHRoZSBcImhhbmRcIiBjdXJzb3Igc2V0IHByZXZpb3VzbHkgZm9yIC5wYWdlLWxpbmtcbiAgICBjdXJzb3I6IGF1dG87XG4gICAgQGluY2x1ZGUgdGhlbWVzKCRwYWdpbmF0aW9uLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3JcIik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwicGFnaW5hdGlvbi1kaXNhYmxlZC1iZ1wiKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yXCIpO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBTaXppbmdcbi8vXG5cbi5wYWdpbmF0aW9uLWxnIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZywgJHBhZ2luYXRpb24tcGFkZGluZy14LWxnLCAkZm9udC1zaXplLWxnLCAkbGluZS1oZWlnaHQtbGcsICRib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLnBhZ2luYXRpb24tc20ge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LXNtLCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgtc20sICRmb250LXNpemUtc20sICRsaW5lLWhlaWdodC1zbSwgJGJvcmRlci1yYWRpdXMtc20pO1xufVxuIiwiLy8gTGlzdHNcblxuLy8gVW5zdHlsZWQga2VlcHMgbGlzdCBpdGVtcyBibG9jayBsZXZlbCwganVzdCByZW1vdmVzIGRlZmF1bHQgYnJvd3NlciBwYWRkaW5nIGFuZCBsaXN0LXN0eWxlXG5AbWl4aW4gbGlzdC11bnN0eWxlZCgpIHtcbiAgQGluY2x1ZGUgbHRyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IC8vIHJlc2V0IHBhZGRpbmcgYmVjYXVzZSB1bCBhbmQgb2xcbiAgfVxuICBAaW5jbHVkZSBydGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IC8vIHJlc2V0IHBhZGRpbmcgYmVjYXVzZSB1bCBhbmQgb2xcbiAgfVxuICBsaXN0LXN0eWxlOiBub25lO1xufVxuIiwiXG4vLyBQYWdpbmF0aW9uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwYWdpbmF0aW9uXG4kcGFnaW5hdGlvbi1wYWRkaW5nLXk6ICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteDogICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbTogIC4yNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbTogIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LWxnOiAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LWxnOiAgMS41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbGluZS1oZWlnaHQ6ICAgMS4yNSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci13aWR0aDogICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHBhZ2luYXRpb25cblxuLy8gRGVmYXVsdCB0aGVtZVxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBhZ2luYXRpb24tZGVmYXVsdC10aGVtZVxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdzogICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTogICAgICAgICAgMCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjogICRncmF5LTMwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcGFnaW5hdGlvbi1kZWZhdWx0LXRoZW1lXG5cbiRwYWdpbmF0aW9uLXRoZW1lLW1hcDogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJHBhZ2luYXRpb24tdGhlbWUtbWFwOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBkZWZhdWx0OiAoXG4gICAgICBcInBhZ2luYXRpb24tY29sb3JcIjogICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1jb2xvcixcbiAgICAgIFwicGFnaW5hdGlvbi1iZ1wiOiAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWJnLFxuICAgICAgXCJwYWdpbmF0aW9uLWJvcmRlci1jb2xvclwiOiAgICAgICAgICAgJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yLFxuICAgICAgXCJwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3dcIjogICAgICAgJHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdyxcbiAgICAgIFwicGFnaW5hdGlvbi1mb2N1cy1vdXRsaW5lXCI6ICAgICAgICAgICRwYWdpbmF0aW9uLWZvY3VzLW91dGxpbmUsXG4gICAgICBcInBhZ2luYXRpb24taG92ZXItY29sb3JcIjogICAgICAgICAgICAkcGFnaW5hdGlvbi1ob3Zlci1jb2xvcixcbiAgICAgIFwicGFnaW5hdGlvbi1ob3Zlci1iZ1wiOiAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWhvdmVyLWJnLFxuICAgICAgXCJwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvclwiOiAgICAgJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yLFxuICAgICAgXCJwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvclwiOiAgICAgICAgICAgJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yLFxuICAgICAgXCJwYWdpbmF0aW9uLWFjdGl2ZS1iZ1wiOiAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYWN0aXZlLWJnLFxuICAgICAgXCJwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3JcIjogICAgJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcixcbiAgICAgIFwicGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvclwiOiAgICAgICAgICRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yLFxuICAgICAgXCJwYWdpbmF0aW9uLWRpc2FibGVkLWJnXCI6ICAgICAgICAgICAgJHBhZ2luYXRpb24tZGlzYWJsZWQtYmcsXG4gICAgICBcInBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yXCI6ICAkcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3JcbiAgICApXG4gICksXG4gICRwYWdpbmF0aW9uLXRoZW1lLW1hcFxuKTtcblxuIiwiLy8gUGFnaW5hdGlvblxuXG5AbWl4aW4gcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgLnBhZ2UtbGluayB7XG4gICAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICB9XG5cbiAgLnBhZ2UtaXRlbSB7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLnBvcG92ZXIge1xuICB6LWluZGV4OiAkemluZGV4LXBvcG92ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6ICRwb3BvdmVyLW1heC13aWR0aDtcbiAgLy8gT3VyIHBhcmVudCBlbGVtZW50IGNhbiBiZSBhcmJpdHJhcnkgc2luY2UgdG9vbHRpcHMgYXJlIGJ5IGRlZmF1bHQgaW5zZXJ0ZWQgYXMgYSBzaWJsaW5nIG9mIHRoZWlyIHRhcmdldCBlbGVtZW50LlxuICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxuICBAaW5jbHVkZSByZXNldC10ZXh0KCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkcG9wb3Zlci1mb250LXNpemUpO1xuICAvLyBBbGxvdyBicmVha2luZyB2ZXJ5IGxvbmcgd29yZHMgc28gdGhleSBkb24ndCBvdmVyZmxvdyB0aGUgcG9wb3ZlcidzIGJvdW5kc1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJHBvcG92ZXItYm9yZGVyLXdpZHRoIHNvbGlkO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRwb3BvdmVyLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRwb3BvdmVyLWJveC1zaGFkb3cpO1xuICBAaW5jbHVkZSB0aGVtZXMoJHBvcG92ZXItdGhlbWUtbWFwKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBvcG92ZXItYmdcIik7XG4gICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwicG9wb3Zlci1ib3JkZXItY29sb3JcIik7XG4gIH1cblxuICAucG9wb3Zlci1hcnJvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIH1cbiAgfVxufVxuXG4lYnMtcG9wb3Zlci10b3AsXG4lYnMtcG9wb3Zlci1ib3R0b20ge1xuICAucG9wb3Zlci1hcnJvdyB7XG4gICAgd2lkdGg6IGFkZCgkcG9wb3Zlci1hcnJvdy13aWR0aCwgKDIgKiAkcG9wb3Zlci1ib3JkZXItcmFkaXVzKSk7XG4gICAgaGVpZ2h0OiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgcGFkZGluZzogMCAkcG9wb3Zlci1ib3JkZXItcmFkaXVzOyAvLyBtYWtlIHN1cmUgdGhlIGFycm93IGRvZXMgbm90IHRvdWNoIHRoZSBwb3BvdmVyJ3Mgcm91bmRlZCBjb3JuZXJzXG4gIH1cbn1cblxuJWJzLXBvcG92ZXItcmlnaHQsXG4lYnMtcG9wb3Zlci1sZWZ0IHtcbiAgLnBvcG92ZXItYXJyb3cge1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiBhZGQoJHBvcG92ZXItYXJyb3ctd2lkdGgsICgyICogJHBvcG92ZXItYm9yZGVyLXJhZGl1cykpO1xuICAgIHBhZGRpbmc6ICRwb3BvdmVyLWJvcmRlci1yYWRpdXMgMDsgLy8gbWFrZSBzdXJlIHRoZSBhcnJvdyBkb2VzIG5vdCB0b3VjaCB0aGUgcG9wb3ZlcidzIHJvdW5kZWQgY29ybmVyc1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuXG4lYnMtcG9wb3Zlci10b3Age1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gIG1hcmdpbi1ib3R0b206ICRwb3BvdmVyLWFycm93LWhlaWdodCAhaW1wb3J0YW50OyAvLyBPdmVyd3JpdGUgUG9wcGVyIDIgbWFyZ2lucy5cblxuICA+IC5wb3BvdmVyLWFycm93IHtcbiAgICBib3R0b206IHN1YnRyYWN0KC0kcG9wb3Zlci1hcnJvdy1oZWlnaHQsICRwb3BvdmVyLWJvcmRlci13aWR0aCk7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIEBpbmNsdWRlIHRoZW1lcygkcG9wb3Zlci10aGVtZS1tYXApIHtcbiAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3JcIik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRwb3BvdmVyLXRoZW1lLW1hcCkge1xuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwicG9wb3Zlci1hcnJvdy1jb2xvclwiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuJWJzLXBvcG92ZXItcmlnaHQge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gIG1hcmdpbi1sZWZ0OiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgIWltcG9ydGFudDsgLy8gT3ZlcndyaXRlIFBvcHBlciAyIG1hcmdpbnMuXG5cbiAgPiAucG9wb3Zlci1hcnJvdyB7XG4gICAgbGVmdDogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMDtcbiAgICAgIEBpbmNsdWRlIHRoZW1lcygkcG9wb3Zlci10aGVtZS1tYXApIHtcbiAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwicG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvclwiKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBsZWZ0OiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRwb3BvdmVyLXRoZW1lLW1hcCkge1xuICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwb3BvdmVyLWFycm93LWNvbG9yXCIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4lYnMtcG9wb3Zlci1ib3R0b20ge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gIG1hcmdpbi10b3A6ICRwb3BvdmVyLWFycm93LWhlaWdodCAhaW1wb3J0YW50OyAvLyBPdmVyd3JpdGUgUG9wcGVyIDIgbWFyZ2lucy5cblxuICA+IC5wb3BvdmVyLWFycm93IHtcbiAgICB0b3A6IHN1YnRyYWN0KC0kcG9wb3Zlci1hcnJvdy1oZWlnaHQsICRwb3BvdmVyLWJvcmRlci13aWR0aCk7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKTtcbiAgICAgIEBpbmNsdWRlIHRoZW1lcygkcG9wb3Zlci10aGVtZS1tYXApIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3JcIik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdG9wOiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgJHBvcG92ZXItYXJyb3ctaGVpZ2h0ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpO1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRwb3BvdmVyLXRoZW1lLW1hcCkge1xuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwicG9wb3Zlci1hcnJvdy1jb2xvclwiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBUaGlzIHdpbGwgcmVtb3ZlIHRoZSBwb3BvdmVyLWhlYWRlcidzIGJvcmRlciBqdXN0IGJlbG93IHRoZSBhcnJvd1xuICAucG9wb3Zlci1oZWFkZXI6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbi1sZWZ0OiAtJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLWJvdHRvbTogJHBvcG92ZXItYm9yZGVyLXdpZHRoIHNvbGlkO1xuICAgIEBpbmNsdWRlIHRoZW1lcygkcG9wb3Zlci10aGVtZS1tYXApIHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwb3BvdmVyLWhlYWRlci1iZ1wiKTtcbiAgICB9XG4gIH1cbn1cblxuJWJzLXBvcG92ZXItbGVmdCB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgbWFyZ2luLWxlZnQ6ICRwb3BvdmVyLWFycm93LWhlaWdodCAhaW1wb3J0YW50OyAvLyBPdmVyd3JpdGUgUG9wcGVyIDIgbWFyZ2lucy5cblxuICA+IC5wb3BvdmVyLWFycm93IHtcbiAgICByaWdodDogc3VidHJhY3QoLSRwb3BvdmVyLWFycm93LWhlaWdodCwgJHBvcG92ZXItYm9yZGVyLXdpZHRoKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoIC8gMikgMCAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgICBAaW5jbHVkZSB0aGVtZXMoJHBvcG92ZXItdGhlbWUtbWFwKSB7XG4gICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwicG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvclwiKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICByaWdodDogJHBvcG92ZXItYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHBvcG92ZXItYXJyb3ctd2lkdGggLyAyKSAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAvIDIpICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICAgIEBpbmNsdWRlIHRoZW1lcygkcG9wb3Zlci10aGVtZS1tYXApIHtcbiAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwb3BvdmVyLWFycm93LWNvbG9yXCIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuLnBvcG92ZXIge1xuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJ0b3BcIl0ge1xuICAgIEBleHRlbmQgJWJzLXBvcG92ZXItdG9wO1xuICB9XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICBAZXh0ZW5kICVicy1wb3BvdmVyLXJpZ2h0O1xuICB9XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgQGV4dGVuZCAlYnMtcG9wb3Zlci1ib3R0b207XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwibGVmdFwiXSB7XG4gICAgQGV4dGVuZCAlYnMtcG9wb3Zlci1sZWZ0O1xuICB9XG59XG5cblxuLy8gT2Zmc2V0IHRoZSBwb3BvdmVyIHRvIGFjY291bnQgZm9yIHRoZSBwb3BvdmVyIGFycm93XG4ucG9wb3Zlci1oZWFkZXIge1xuICBwYWRkaW5nOiAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy15ICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIFJlc2V0IHRoZSBkZWZhdWx0IGZyb20gUmVib290XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplLWJhc2UpO1xuICBib3JkZXItYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQ7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRwb3BvdmVyLWlubmVyLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSB0aGVtZXMoJHBvcG92ZXItdGhlbWUtbWFwKSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwb3BvdmVyLWhlYWRlci1jb2xvclwiKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwicG9wb3Zlci1oZWFkZXItYmdcIik7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogZGFya2VuKHRoZW1lcy1nZXQtdmFsdWUoXCJwb3BvdmVyLWhlYWRlci1iZ1wiKSwgNSUpO1xuICB9XG5cbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ucG9wb3Zlci1ib2R5IHtcbiAgcGFkZGluZzogJHBvcG92ZXItYm9keS1wYWRkaW5nLXkgJHBvcG92ZXItYm9keS1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIHRoZW1lcygkcG9wb3Zlci10aGVtZS1tYXApIHtcbiAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInBvcG92ZXItYm9keS1jb2xvclwiKTtcbiAgfVxufVxuIiwiLy8gRGlzYWJsZSBhbmltYXRpb24gaWYgdHJhbnNpdGlvbnMgYXJlIGRpc2FibGVkXG5AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gIEBrZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICAgIGZyb20geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkcHJvZ3Jlc3MtaGVpZ2h0IDA7IH1cbiAgICB0byB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfVxuICB9XG59XG5cbi5wcm9ncmVzcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogJHByb2dyZXNzLWhlaWdodDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gZm9yY2Ugcm91bmRlZCBjb3JuZXJzIGJ5IGNyb3BwaW5nIGl0XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHByb2dyZXNzLWZvbnQtc2l6ZSk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJHByb2dyZXNzLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRwcm9ncmVzcy1ib3gtc2hhZG93KTtcblxuICBAaW5jbHVkZSB0aGVtZXMoJHByb2dyZXNzLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInByb2dyZXNzLWJnXCIpO1xuICB9XG59XG5cbi5wcm9ncmVzcy1iYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRwcm9ncmVzcy1iYXItdHJhbnNpdGlvbik7XG5cbiAgQGluY2x1ZGUgdGhlbWVzKCRwcm9ncmVzcy10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwicHJvZ3Jlc3MtYmFyLWNvbG9yXCIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJwcm9ncmVzcy1iYXItYmdcIik7XG4gIH1cbn1cblxuLnByb2dyZXNzLWJhci1zdHJpcGVkIHtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtc3RyaXBlZCgpO1xuICBiYWNrZ3JvdW5kLXNpemU6ICRwcm9ncmVzcy1oZWlnaHQgJHByb2dyZXNzLWhlaWdodDtcbn1cblxuQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAucHJvZ3Jlc3MtYmFyLWFuaW1hdGVkIHtcbiAgICBhbmltYXRpb246IHByb2dyZXNzLWJhci1zdHJpcGVzICRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZztcblxuICAgIEBpZiAkZW5hYmxlLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tbWVkaWEtcXVlcnkge1xuICAgICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgICAgYW5pbWF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ucHJvZ3Jlc3MteHMge1xuICBoZWlnaHQ6IDRweDtcbn1cblxuLnByb2dyZXNzLXNtIHtcbiAgaGVpZ2h0OiA4cHg7XG59XG5cbi8vIFdoaXRlIHByb2dyZXNzIGJhclxuLnByb2dyZXNzLnByb2dyZXNzLXdoaXRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuMik7XG4gIC5wcm9ncmVzcy1iYXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgfVxufVxuIiwiLy8gUHJvZ3Jlc3MgYmFyc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcHJvZ3Jlc3MtYmFyXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAgICAgMXJlbSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1mb250LXNpemU6ICAkZm9udC1zaXplLWJhc2UgKiAuNzUgIWRlZmF1bHQ7XG5cbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm94LXNoYWRvdzogICAgIGluc2V0IDAgLjFyZW0gLjFyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nOiAgMXMgbGluZWFyIGluZmluaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci10cmFuc2l0aW9uOiAgICAgICAgd2lkdGggLjZzIGVhc2UgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHByb2dyZXNzLWJhclxuXG4vLyBEZWZhdWx0IHRoZW1lXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcHJvZ3Jlc3MtYmFyLWRlZmF1bHQtdGhlbWVcbiRwcm9ncmVzcy1iZzogICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAgJHdoaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1iZzogICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcHJvZ3Jlc3MtYmFyLWRlZmF1bHQtdGhlbWVcblxuJHByb2dyZXNzLXRoZW1lLW1hcDogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJHByb2dyZXNzLXRoZW1lLW1hcDogbWFwLW1lcmdlKFxuICAoXG4gICAgZGVmYXVsdDogKFxuICAgICAgXCJwcm9ncmVzcy1iZ1wiOiAgICAgICAgICRwcm9ncmVzcy1iZyxcbiAgICAgIFwicHJvZ3Jlc3MtYmFyLWNvbG9yXCI6ICAkcHJvZ3Jlc3MtYmFyLWNvbG9yLFxuICAgICAgXCJwcm9ncmVzcy1iYXItYmdcIjogICAgICRwcm9ncmVzcy1iYXItYmdcbiAgICApXG4gICksXG4gICRwcm9ncmVzcy10aGVtZS1tYXBcbik7XG4iLCIvL1RPRE86IG1vdmUgYWxsIHZhbHVlcyB0byB2YXJpYWJsZXMuc2Nzc1xuLnByb2dyZXNzLWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlcjtcbn1cblxuLnByb2dyZXNzLWdyb3VwLXByZXBlbmQge1xuICBmbGV4OiAwIDAgMTAwcHg7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbn1cblxuLnByb2dyZXNzLWdyb3VwLWljb24ge1xuICBmb250LXNpemU6ICRmb250LXNpemUtbGc7XG5cbiAgQGluY2x1ZGUgbHRyIHtcbiAgICBtYXJnaW46IDAgJHNwYWNlciAwICgkc3BhY2VyICogLjI1KTtcbiAgfVxuICBAaW5jbHVkZSBydGwge1xuICAgIG1hcmdpbjogMCAoJHNwYWNlciAqIC4yNSkgMCAkc3BhY2VyO1xuICB9XG59XG5cbi5wcm9ncmVzcy1ncm91cC10ZXh0IHtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuICBjb2xvcjogJGdyYXktNzAwO1xufVxuXG4ucHJvZ3Jlc3MtZ3JvdXAtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1iYXNpczogMTAwJTtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICBtYXJnaW4tYm90dG9tOiAoJHNwYWNlciAqIC4yNSk7XG59XG5cbi5wcm9ncmVzcy1ncm91cC1iYXJzIHtcbiAgZmxleC1ncm93OiAxO1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG5cbiAgLnByb2dyZXNzOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206IDJweDtcbiAgfVxufVxuXG4ucHJvZ3Jlc3MtZ3JvdXAtaGVhZGVyICsgLnByb2dyZXNzLWdyb3VwLWJhcnMge1xuICBmbGV4LWJhc2lzOiAxMDAlO1xufVxuIiwiXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtY2xhc3MsIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgc2VsZWN0b3ItbWF4LWNvbXBvdW5kLXNlbGVjdG9ycywgZnVuY3Rpb24tdXJsLXF1b3Rlcywgc2VsZWN0b3ItbWF4LWNvbWJpbmF0b3JzXG4uYy1zaWRlYmFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICAvLyAkc2lkZWJhci13aWR0aCBpcyB0aGUgd2lkdGggb2YgdGhlIGNvbHVtbnNcbiAgZmxleDogMCAwICRzaWRlYmFyLXdpZHRoO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAvLyBwdXQgdGhlIG5hdiBvbiB0aGUgbGVmdFxuICBvcmRlcjogLTE7XG4gIHdpZHRoOiAkc2lkZWJhci13aWR0aDtcbiAgcGFkZGluZzogJHNpZGViYXItcGFkZGluZztcbiAgYm94LXNoYWRvdzogbm9uZTtcblxuICAmLmMtc2lkZWJhci1yaWdodCB7XG4gICAgb3JkZXI6IDk5O1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGJyZWFrcG9pbnQtYmVmb3JlKCRtb2JpbGUtYnJlYWtwb2ludCkpIHtcbiAgICAvLyBTb21lIG9mIG91ciBjb21wb25lbnRzIHVzZSB0aGlzIHByb3BlcnR5IHRvIGRldGVjdCBpZiB0aGUgc2lkZWJhciBoYXMgbW9iaWxlIGJlaGF2aW9yLlxuICAgIC0taXMtbW9iaWxlOiB0cnVlO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQgKyAxO1xuXG4gICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICY6bm90KC5jLXNpZGViYXItcmlnaHQpe1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgICAgJi5jLXNpZGViYXItcmlnaHQge1xuICAgICAgICByaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICY6bm90KC5jLXNpZGViYXItcmlnaHQpe1xuICAgICAgICByaWdodDogMDtcbiAgICAgIH1cbiAgICAgICYuYy1zaWRlYmFyLXJpZ2h0IHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBsdHIge1xuICAgICY6bm90KC5jLXNpZGViYXItcmlnaHQpe1xuICAgICAgbWFyZ2luLWxlZnQ6IC0gJHNpZGViYXItd2lkdGg7XG4gICAgfVxuICAgICYuYy1zaWRlYmFyLXJpZ2h0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogLSAkc2lkZWJhci13aWR0aDtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBydGwge1xuICAgICY6bm90KC5jLXNpZGViYXItcmlnaHQpe1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtICRzaWRlYmFyLXdpZHRoO1xuICAgIH1cbiAgICAmLmMtc2lkZWJhci1yaWdodCB7XG4gICAgICBtYXJnaW4tbGVmdDogLSAkc2lkZWJhci13aWR0aDtcbiAgICB9XG4gIH1cblxuICAmW2NsYXNzKj1cImJnLVwiXSAge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgkYmxhY2ssIC4xKTtcbiAgfVxuXG4gIEBlYWNoICR3aWR0aCwgJHZhbHVlIGluICRzaWRlYmFyLXdpZHRocyB7XG4gICAgJi5jLXNpZGViYXItI3skd2lkdGh9IHtcbiAgICAgIGZsZXg6IDAgMCAkdmFsdWU7XG4gICAgICB3aWR0aDogJHZhbHVlO1xuXG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICAmOm5vdCguYy1zaWRlYmFyLXJpZ2h0KXtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLSAkdmFsdWU7XG4gICAgICAgIH1cbiAgICAgICAgJi5jLXNpZGViYXItcmlnaHQge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogLSAkdmFsdWU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgJjpub3QoLmMtc2lkZWJhci1yaWdodCl7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtICR2YWx1ZTtcbiAgICAgICAgfVxuICAgICAgICAmLmMtc2lkZWJhci1yaWdodCB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0gJHZhbHVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5jLXNpZGViYXItZml4ZWQge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG1vYmlsZS1icmVha3BvaW50KSB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xuXG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICAmOm5vdCguYy1zaWRlYmFyLXJpZ2h0KSB7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYy1zaWRlYmFyLXJpZ2h0IHtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICAmOm5vdCguYy1zaWRlYmFyLXJpZ2h0KSB7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmLmMtc2lkZWJhci1yaWdodCB7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuYy1zaWRlYmFyLW92ZXJsYWlkIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiAkemluZGV4LWZpeGVkICsgMjtcblxuICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAmOm5vdCguYy1zaWRlYmFyLXJpZ2h0KSB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG5cbiAgICAgICYuYy1zaWRlYmFyLXJpZ2h0IHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICY6bm90KC5jLXNpZGViYXItcmlnaHQpIHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICB9XG5cbiAgICAgICYuYy1zaWRlYmFyLXJpZ2h0IHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy9cbi8vIFNpZGViYXIgY29tcG9uZW50c1xuLy9cblxuLmMtc2lkZWJhci1jbG9zZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6ICRzaWRlYmFyLWJyYW5kLWhlaWdodDtcbiAgaGVpZ2h0OiAkc2lkZWJhci1icmFuZC1oZWlnaHQ7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIGx0ciB7XG4gICAgcmlnaHQ6IDA7XG4gIH1cblxuICBAaW5jbHVkZSBydGwge1xuICAgIGxlZnQ6IDA7XG4gIH1cbn1cblxuLmMtc2lkZWJhci1icmFuZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDAgMCAkc2lkZWJhci1icmFuZC1oZWlnaHQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gIC5jLXNpZGViYXItYnJhbmQtbWluaW1pemVkIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5jLXNpZGViYXItaGVhZGVyIHtcbiAgZmxleDogMCAwICRzaWRlYmFyLWhlYWRlci1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRzaWRlYmFyLWhlYWRlci1wYWRkaW5nLXkgJHNpZGViYXItaGVhZGVyLXBhZGRpbmcteDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0cmFuc2l0aW9uOiAkbGF5b3V0LXRyYW5zaXRpb24tc3BlZWQ7XG59XG5cbi8vIFNpZGViYXIgbmF2aWdhdGlvblxuXG4uYy1zaWRlYmFyLW5hdiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMTtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gICYucHMge1xuICAgIC8vIEZpcmVmb3hcbiAgICBvdmVyZmxvdzogLW1vei1zY3JvbGxiYXJzLW5vbmU7XG4gICAgLy8gSUUgMTArXG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lO1xuICAgIC8vIENocm9tZSwgRWRnZSwgU2FmYXJpLCBPcGVyYVxuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgIHdpZHRoOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbi5jLXNpZGViYXItbmF2LXRpdGxlIHtcbiAgcGFkZGluZzogJHNpZGViYXItbmF2LXRpdGxlLXBhZGRpbmcteSAkc2lkZWJhci1uYXYtdGl0bGUtcGFkZGluZy14O1xuICBtYXJnaW4tdG9wOiAkc2lkZWJhci1uYXYtdGl0bGUtbWFyZ2luLXRvcDtcbiAgZm9udC1zaXplOiA4MCU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRyYW5zaXRpb246ICRsYXlvdXQtdHJhbnNpdGlvbi1zcGVlZDtcbn1cblxuLmMtc2lkZWJhci1uYXYtZGl2aWRlciB7XG4gIGhlaWdodDogMTBweDtcbiAgdHJhbnNpdGlvbjogaGVpZ2h0ICRsYXlvdXQtdHJhbnNpdGlvbi1zcGVlZDtcbn1cblxuLmMtc2lkZWJhci1uYXYtaXRlbSB7XG4gIHdpZHRoOiBpbmhlcml0O1xufVxuXG4uYy1zaWRlYmFyLW5hdi1saW5rIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogJHNpZGViYXItbmF2LWxpbmstcGFkZGluZy15ICRzaWRlYmFyLW5hdi1saW5rLXBhZGRpbmcteDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kICRsYXlvdXQtdHJhbnNpdGlvbi1zcGVlZCwgY29sb3IgJGxheW91dC10cmFuc2l0aW9uLXNwZWVkO1xuICBAaWYgJGVuYWJsZS1zaWRlYmFyLW5hdi1yb3VuZGVkIHtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgfVxuXG4gIC5iYWRnZSB7XG4gICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIH1cbiAgICBAaW5jbHVkZSBydGwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gICYuYy1kaXNhYmxlZCB7XG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICB9XG4gIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gICAgJjpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5jLXNpZGViYXItbmF2LWljb24ge1xuICBmbGV4OiAwIDAgJHNpZGViYXItbmF2LWljb24td2lkdGg7XG4gIGhlaWdodDogKCRmb250LXNpemUtYmFzZSAqIDEuMjUpO1xuICBmb250LXNpemU6ICgkZm9udC1zaXplLWJhc2UgKiAxLjI1KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0cmFuc2l0aW9uOiAkbGF5b3V0LXRyYW5zaXRpb24tc3BlZWQ7XG4gIGZpbGw6IGN1cnJlbnRDb2xvcjtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0gJHNpZGViYXItbmF2LWxpbmstcGFkZGluZy14O1xuICAgIH1cbiAgICBAaW5jbHVkZSBydGwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtICRzaWRlYmFyLW5hdi1saW5rLXBhZGRpbmcteDtcbiAgICB9XG4gIH1cbn1cblxuLmMtc2lkZWJhci1uYXYtZHJvcGRvd24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgJGxheW91dC10cmFuc2l0aW9uLXNwZWVkIGVhc2UtaW4tb3V0O1xuXG4gICYuYy1zaG93IHtcbiAgICBAaWYgJGVuYWJsZS1zaWRlYmFyLW5hdi1yb3VuZGVkIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgIH1cbiAgICA+IC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIHtcbiAgICAgIG1heC1oZWlnaHQ6IDE1MDBweDtcbiAgICB9XG5cbiAgICA+IC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDI3MGRlZyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgKyAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi5jLXNob3cge1xuICAgICAgbWFyZ2luLXRvcDogMXB4O1xuICAgIH1cbiAgfVxufVxuXG4uYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUge1xuICBAZXh0ZW5kIC5jLXNpZGViYXItbmF2LWxpbms7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxleDogMCA4cHg7XG4gICAgaGVpZ2h0OiA4cHg7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJGxheW91dC10cmFuc2l0aW9uLXNwZWVkO1xuXG4gICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIH1cbiAgICBAaW5jbHVkZSBydGwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICB9XG4gIH1cblxuICAuYmFkZ2Uge1xuICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRzaWRlYmFyLW5hdi1saW5rLXBhZGRpbmcteDtcbiAgICB9XG4gICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkc2lkZWJhci1uYXYtbGluay1wYWRkaW5nLXg7XG4gICAgfVxuICB9XG59XG5cbi5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIHtcbiAgbWF4LWhlaWdodDogMDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0ICRsYXlvdXQtdHJhbnNpdGlvbi1zcGVlZCBlYXNlLWluLW91dDtcblxuICAuYy1zaWRlYmFyLW5hdi1saW5rIHtcbiAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgcGFkZGluZy1sZWZ0OiAkc2lkZWJhci1uYXYtaWNvbi13aWR0aDtcbiAgICB9XG4gICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRzaWRlYmFyLW5hdi1pY29uLXdpZHRoO1xuICAgIH1cblxuICAgIC5jLXNpZGViYXItbmF2LWljb24ge1xuICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0gJHNpZGViYXItbmF2LWljb24td2lkdGg7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0gJHNpZGViYXItbmF2LWljb24td2lkdGg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLmMtc2lkZWJhci1uYXZbZGF0YS1pbmRlbnRhdGlvbj1cInRydWVcIl0ge1xuICAkd3JhcHBlci1jbGFzcy1uYW1lOiBcIi5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zXCI7XG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJHNpZGViYXItbmF2LWluZGVudGF0aW9uLWxldmVscyB7XG4gICAgI3skd3JhcHBlci1jbGFzcy1uYW1lfSB7XG4gICAgICAuYy1zaWRlYmFyLW5hdi1saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRzaWRlYmFyLW5hdi1pY29uLXdpZHRoICsgKCRpICogJHNpZGViYXItbmF2LWluZGVudGF0aW9uLXNpemUpO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogJHNpZGViYXItbmF2LWljb24td2lkdGggKyAoJGkgKiAkc2lkZWJhci1uYXYtaW5kZW50YXRpb24tc2l6ZSk7XG4gICAgICAgIH1cbiAgICAgICAgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gICAgICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtICRzaWRlYmFyLW5hdi1pY29uLXdpZHRoO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtICRzaWRlYmFyLW5hdi1pY29uLXdpZHRoO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAkd3JhcHBlci1jbGFzcy1uYW1lOiBzZWxlY3Rvci1uZXN0KCR3cmFwcGVyLWNsYXNzLW5hbWUsICR3cmFwcGVyLWNsYXNzLW5hbWUpO1xuICB9XG59XG5cbi5jLXNpZGViYXItbmF2LWxhYmVsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogKCRzaWRlYmFyLW5hdi1saW5rLXBhZGRpbmcteSAvIDQpICRzaWRlYmFyLW5hdi1saW5rLXBhZGRpbmcteDtcbiAgdHJhbnNpdGlvbjogJGxheW91dC10cmFuc2l0aW9uLXNwZWVkO1xuXG4gICY6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC5jLXNpZGViYXItbmF2LWljb24ge1xuICAgIG1hcmdpbi10b3A6IDFweDtcbiAgfVxufVxuXG4uYy1zaWRlYmFyLWZvb3RlciB7XG4gIGZsZXg6IDAgMCAkc2lkZWJhci1mb290ZXItaGVpZ2h0O1xuICBwYWRkaW5nOiAkc2lkZWJhci1mb290ZXItcGFkZGluZy15ICRzaWRlYmFyLWZvb3Rlci1wYWRkaW5nLXg7XG4gIHRyYW5zaXRpb246ICRsYXlvdXQtdHJhbnNpdGlvbi1zcGVlZDtcbn1cblxuLmMtc2lkZWJhci1taW5pbWl6ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAwIDAgJHNpZGViYXItbWluaW1pemVyLWhlaWdodDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgd2lkdGg6IGluaGVyaXQ7XG4gIHBhZGRpbmc6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyOiAwO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihicmVha3BvaW50LWJlZm9yZSgkbW9iaWxlLWJyZWFrcG9pbnQpKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRzaWRlYmFyLW1pbmltaXplci1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkc2lkZWJhci1taW5pbWl6ZXItaGVpZ2h0O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiAkc2lkZWJhci1taW5pbWl6ZXItaGVpZ2h0IC8gNDtcbiAgICB0cmFuc2l0aW9uOiAkbGF5b3V0LXRyYW5zaXRpb24tc3BlZWQ7XG5cbiAgICBAaW5jbHVkZSBydGwge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICB9XG4gIH1cblxuICAmOmZvY3VzLFxuICAmLmMtZm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cblxuICAuYy1zaWRlYmFyLXJpZ2h0ICYge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gTW9kYWwgYmFja2dyb3VuZFxuLmMtc2lkZWJhci1iYWNrZHJvcCB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihicmVha3BvaW50LWJlZm9yZSgkbW9iaWxlLWJyZWFrcG9pbnQpKSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQ7XG4gICAgd2lkdGg6IDEwMHZ3O1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNpZGViYXItYmFja2Ryb3AtYmc7XG4gICAgdHJhbnNpdGlvbjogJGxheW91dC10cmFuc2l0aW9uLXNwZWVkO1xuXG4gICAgLy8gRmFkZSBmb3IgYmFja2Ryb3BcbiAgICAmLmMtZmFkZSB7IG9wYWNpdHk6IDA7IH1cbiAgICAmLmMtc2hvdyB7IG9wYWNpdHk6ICRzaWRlYmFyLWJhY2tkcm9wLW9wYWNpdHk7IH1cbiAgfVxufVxuXG4vLyBNaW5pbWl6ZWQgU2lkZWJhclxuXG4uYy1zaWRlYmFyLW1pbmltaXplZCB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG1vYmlsZS1icmVha3BvaW50KSB7XG4gICAgei1pbmRleDogJHppbmRleC1maXhlZCArIDE7XG4gICAgZmxleDogMCAwICRzaWRlYmFyLW1pbmltaXplZC13aWR0aDtcblxuICAgICYuYy1zaWRlYmFyLWZpeGVkIHtcbiAgICAgIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQgKyAxO1xuICAgICAgd2lkdGg6ICRzaWRlYmFyLW1pbmltaXplZC13aWR0aDtcbiAgICB9XG5cbiAgICAmOm5vdCguYy1zaWRlYmFyLXJpZ2h0KXtcbiAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtICRzaWRlYmFyLW1pbmltaXplZC13aWR0aDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLSAkc2lkZWJhci1taW5pbWl6ZWQtd2lkdGg7XG4gICAgICB9XG4gICAgfVxuICAgICYuYy1zaWRlYmFyLXJpZ2h0IHtcbiAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLSAkc2lkZWJhci1taW5pbWl6ZWQtd2lkdGg7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBtYXJnaW4tbGVmdDogLSAkc2lkZWJhci1taW5pbWl6ZWQtd2lkdGg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmMtc2lkZWJhci1icmFuZC1mdWxsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLmMtc2lkZWJhci1icmFuZC1taW5pbWl6ZWQge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLmMtc2lkZWJhci1uYXYge1xuICAgICAgcGFkZGluZy1ib3R0b206ICRzaWRlYmFyLW1pbmltaXplci1oZWlnaHQ7XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB9XG5cbiAgICAuYy1kLW1pbmltaXplZC1ub25lLFxuICAgIC5jLXNpZGViYXItbmF2LWRpdmlkZXIsXG4gICAgLmMtc2lkZWJhci1uYXYtbGFiZWwsXG4gICAgLmMtc2lkZWJhci1uYXYtdGl0bGUsXG4gICAgLmMtc2lkZWJhci1mb290ZXIsXG4gICAgLmMtc2lkZWJhci1mb3JtLFxuICAgIC5jLXNpZGViYXItaGVhZGVyIHtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cblxuICAgIC8vIFRlbXBvcmFyeSBmaXggZm9yIHRoaXMgaXNzdWU6IGh0dHBzOi8vZ2l0aHViLmNvbS9jb3JldWkvY29yZXVpLWZyZWUtYm9vdHN0cmFwLWFkbWluLXRlbXBsYXRlL2lzc3Vlcy80MDRcbiAgICAvLyBUT0RPOiBmaW5kIGJldHRlciBzb2x1dGlvblxuICAgIC5jLXNpZGViYXItbWluaW1pemVyIHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHdpZHRoOiBpbmhlcml0O1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmMtc2lkZWJhci1yaWdodCAuYy1zaWRlYmFyLW1pbmltaXplcjo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmMtc2lkZWJhci1yaWdodCAuYy1zaWRlYmFyLW5hdiB7XG4gICAgICA+IC5jLXNpZGViYXItbmF2LWl0ZW06aG92ZXIsXG4gICAgICA+IC5jLXNpZGViYXItbmF2LWRyb3Bkb3duOmhvdmVyIHtcbiAgICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLSAkc2lkZWJhci13aWR0aDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogLSAkc2lkZWJhci13aWR0aDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5jLXNpZGViYXItbmF2LWxpbmssXG4gICAgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgYm9yZGVyLWxlZnQ6IDA7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICB3aWR0aDogJHNpZGViYXItd2lkdGggKyAkc2lkZWJhci1taW5pbWl6ZWQtd2lkdGg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIHtcbiAgICAgIC5jLXNpZGViYXItbmF2LWxpbmsge1xuICAgICAgICB3aWR0aDogJHNpZGViYXItd2lkdGg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnNcbiAgICAuYy1zaWRlYmFyLW5hdiA+IC5jLXNpZGViYXItbmF2LWRyb3Bkb3duIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgPiAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgLmMtc2lkZWJhci1uYXYtZHJvcGRvd246bm90KC5jLXNob3cpID4gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIHtcbiAgICAgICAgbWF4LWhlaWdodDogMTUwMHB4O1xuICAgICAgfVxuXG5cbiAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgd2lkdGg6ICRzaWRlYmFyLXdpZHRoICsgJHNpZGViYXItbWluaW1pemVkLXdpZHRoO1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAgICAgICA+IC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuXG4gICAgICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgICAgIGxlZnQ6ICRzaWRlYmFyLW1pbmltaXplZC13aWR0aDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgICAgIHJpZ2h0OiAkc2lkZWJhci1taW5pbWl6ZWQtd2lkdGg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5jLXNpZGViYXItcmlnaHQgPiAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bjpob3ZlciA+IC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIHtcbiAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICByaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmMtc2lkZWJhci11bmZvbGRhYmxlOm5vdCg6aG92ZXIpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbW9iaWxlLWJyZWFrcG9pbnQpIHtcbiAgICB6LWluZGV4OiAkemluZGV4LWZpeGVkICsgMTtcbiAgICBmbGV4OiAwIDAgJHNpZGViYXItbWluaW1pemVkLXdpZHRoO1xuXG4gICAgJi5jLXNpZGViYXItZml4ZWQge1xuICAgICAgei1pbmRleDogJHppbmRleC1maXhlZCArIDE7XG4gICAgICB3aWR0aDogJHNpZGViYXItbWluaW1pemVkLXdpZHRoO1xuICAgIH1cblxuICAgICY6bm90KC5jLXNpZGViYXItcmlnaHQpe1xuICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0gJHNpZGViYXItbWluaW1pemVkLXdpZHRoO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtICRzaWRlYmFyLW1pbmltaXplZC13aWR0aDtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5jLXNpZGViYXItcmlnaHQge1xuICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtICRzaWRlYmFyLW1pbmltaXplZC13aWR0aDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtICRzaWRlYmFyLW1pbmltaXplZC13aWR0aDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYy1zaWRlYmFyLWJyYW5kLWZ1bGwge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuYy1zaWRlYmFyLWJyYW5kLW1pbmltaXplZCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAuYy1zaWRlYmFyLW5hdiB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogJHNpZGViYXItbWluaW1pemVyLWhlaWdodDtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC5jLWQtbWluaW1pemVkLW5vbmUsXG4gICAgLmMtc2lkZWJhci1uYXYtZGl2aWRlcixcbiAgICAuYy1zaWRlYmFyLW5hdi1sYWJlbCxcbiAgICAuYy1zaWRlYmFyLW5hdi10aXRsZSxcbiAgICAuYy1zaWRlYmFyLWZvb3RlcixcbiAgICAuYy1zaWRlYmFyLWZvcm0sXG4gICAgLmMtc2lkZWJhci1oZWFkZXIge1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuXG4gICAgLy8gVGVtcG9yYXJ5IGZpeCBmb3IgdGhpcyBpc3N1ZTogaHR0cHM6Ly9naXRodWIuY29tL2NvcmV1aS9jb3JldWktZnJlZS1ib290c3RyYXAtYWRtaW4tdGVtcGxhdGUvaXNzdWVzLzQwNFxuICAgIC8vIFRPRE86IGZpbmQgYmV0dGVyIHNvbHV0aW9uXG4gICAgLmMtc2lkZWJhci1taW5pbWl6ZXIge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgd2lkdGg6IGluaGVyaXQ7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuYy1zaWRlYmFyLXJpZ2h0IC5jLXNpZGViYXItbWluaW1pemVyOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuYy1zaWRlYmFyLXJpZ2h0IC5jLXNpZGViYXItbmF2IHtcbiAgICAgID4gLmMtc2lkZWJhci1uYXYtaXRlbTpob3ZlcixcbiAgICAgID4gLmMtc2lkZWJhci1uYXYtZHJvcGRvd246aG92ZXIge1xuICAgICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtICRzaWRlYmFyLXdpZHRoO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtICRzaWRlYmFyLXdpZHRoO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmMtc2lkZWJhci1uYXYtbGluayxcbiAgICAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICBib3JkZXItbGVmdDogMDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIHdpZHRoOiAkc2lkZWJhci13aWR0aCArICRzaWRlYmFyLW1pbmltaXplZC13aWR0aDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMge1xuICAgICAgLmMtc2lkZWJhci1uYXYtbGluayB7XG4gICAgICAgIHdpZHRoOiAkc2lkZWJhci13aWR0aDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuICAgIC5jLXNpZGViYXItbmF2ID4gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICA+IC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bjpub3QoLmMtc2hvdykgPiAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIGZpeCBmb3IgcGVyZmVjdCBzY3JvbGxiYXJcbiAgLnBzIHtcbiAgICBvdmVyZmxvdzogaW5pdGlhbCAhaW1wb3J0YW50O1xuICB9XG59XG4uYy1zaWRlYmFyLXVuZm9sZGFibGUge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRtb2JpbGUtYnJlYWtwb2ludCkge1xuICAgIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQgKyAxICFpbXBvcnRhbnQ7XG4gICAgJjpob3ZlciB7XG4gICAgICAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi1pdGVtcyB7XG4gICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICAgIH1cblxuICAgICAgLmMtc2lkZWJhci1taW5pbWl6ZXI6OmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBSZXNwb25zaXZlIGJlaGF2aW9yXG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgICAuYy1zaWRlYmFyLmMtc2lkZWJhciN7JGluZml4fS1zaG93LFxuICAgIC5jLXNpZGViYXIuYy1zaWRlYmFyLXNob3cge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGJyZWFrcG9pbnQtYmVmb3JlKCRtb2JpbGUtYnJlYWtwb2ludCkpIHtcbiAgICAgICAgQGluY2x1ZGUgZWxldmF0aW9uKDMpO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRtb2JpbGUtYnJlYWtwb2ludCkge1xuICAgICAgICAmLmMtc2lkZWJhci1maXhlZCB7XG4gICAgICAgICAgQGluY2x1ZGUgZWxldmF0aW9uKDIpO1xuICAgICAgICB9XG4gICAgICAgICYuYy1zaWRlYmFyLXVuZm9sZGFibGUge1xuICAgICAgICAgIEBpbmNsdWRlIGVsZXZhdGlvbigzKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmMtc2lkZWJhci1vdmVybGFpZCB7XG4gICAgICAgIEBpbmNsdWRlIGVsZXZhdGlvbigzKTtcbiAgICAgIH1cblxuICAgICAgJjpub3QoLmMtc2lkZWJhci1yaWdodCl7XG4gICAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbW9iaWxlLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAmLmMtc2lkZWJhci1maXhlZCB7XG4gICAgICAgICAgICB+IC5jLXdyYXBwZXIge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAkc2lkZWJhci13aWR0aDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogJHNpZGViYXItd2lkdGg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBlYWNoICR3aWR0aCwgJHZhbHVlIGluICRzaWRlYmFyLXdpZHRocyB7XG4gICAgICAgICAgICAgICYuYy1zaWRlYmFyLSN7JHdpZHRofSB7XG4gICAgICAgICAgICAgICAgfiAuYy13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAkdmFsdWU7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6ICR2YWx1ZTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy1zaWRlYmFyLW1pbmltaXplZCxcbiAgICAgICAgICAgICYuYy1zaWRlYmFyLXVuZm9sZGFibGUge1xuICAgICAgICAgICAgICB+IC5jLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogJHNpZGViYXItbWluaW1pemVkLXdpZHRoO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAkc2lkZWJhci1taW5pbWl6ZWQtd2lkdGg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmMtc2lkZWJhci1yaWdodCB7XG4gICAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbW9iaWxlLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAmLmMtc2lkZWJhci1maXhlZCB7XG4gICAgICAgICAgICB+IC5jLXdyYXBwZXIge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogJHNpZGViYXItd2lkdGg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogJHNpZGViYXItd2lkdGg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBlYWNoICR3aWR0aCwgJHZhbHVlIGluICRzaWRlYmFyLXdpZHRocyB7XG4gICAgICAgICAgICAgICYuYy1zaWRlYmFyLSN7JHdpZHRofSB7XG4gICAgICAgICAgICAgICAgfiAuYy13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogJHZhbHVlO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6ICR2YWx1ZTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYy1zaWRlYmFyLW1pbmltaXplZCxcbiAgICAgICAgICAgICYuYy1zaWRlYmFyLXVuZm9sZGFibGUge1xuICAgICAgICAgICAgICB+IC5jLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6ICRzaWRlYmFyLW1pbmltaXplZC13aWR0aDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAkc2lkZWJhci1taW5pbWl6ZWQtd2lkdGg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIHRoZW1lcygkc2lkZWJhci10aGVtZS1tYXAsICRjcmVhdGU6IGFwcGVuZCwgJHBhcmVudDogXCIuYy1zaWRlYmFyXCIpIHtcbiAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLWNvbG9yXCIpO1xuICBiYWNrZ3JvdW5kOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1iZ1wiKTtcblxuICBAaW5jbHVkZSBib3JkZXJzKHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLWJvcmRlcnNcIikpO1xuXG4gIEBpbmNsdWRlIGx0ciB7XG4gICAgJi5jLXNpZGViYXItcmlnaHQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVycyh0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1ib3JkZXJzXCIpLHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHJ0bCB7XG4gICAgQGluY2x1ZGUgYm9yZGVycyh0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1ib3JkZXJzXCIpLHRydWUpO1xuICAgICYuYy1zaWRlYmFyLXJpZ2h0IHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlcnModGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItYm9yZGVyc1wiKSk7XG4gICAgfVxuICB9XG5cbiAgLmMtc2lkZWJhci1jbG9zZSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLWNvbG9yXCIpO1xuICB9XG5cbiAgLmMtc2lkZWJhci1icmFuZCB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLWJyYW5kLWNvbG9yXCIpO1xuICAgIGJhY2tncm91bmQ6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLWJyYW5kLWJnXCIpO1xuICB9XG5cbiAgLmMtc2lkZWJhci1oZWFkZXIge1xuICAgIGJhY2tncm91bmQ6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLWhlYWRlci1iZ1wiKTtcbiAgfVxuXG4gIC5jLXNpZGViYXItZm9ybSAuYy1mb3JtLWNvbnRyb2wge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1mb3JtLWNvbG9yXCIpO1xuICAgIGJhY2tncm91bmQ6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLWZvcm0tYmdcIik7XG4gICAgYm9yZGVyOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1mb3JtLWJvcmRlclwiKTtcblxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1mb3JtLXBsYWNlaG9sZGVyLWNvbG9yXCIpO1xuICAgIH1cbiAgfVxuXG4gIC5jLXNpZGViYXItbmF2LXRpdGxlIHtcbiAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItbmF2LXRpdGxlLWNvbG9yXCIpO1xuICB9XG5cbiAgLmMtc2lkZWJhci1uYXYtbGluayB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW5hdi1saW5rLWNvbG9yXCIpO1xuICAgIGJhY2tncm91bmQ6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW5hdi1saW5rLWJnXCIpO1xuICAgIEBpbmNsdWRlIGJvcmRlcnModGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItbmF2LWxpbmstYm9yZGVyc1wiKSk7XG5cbiAgICAuYy1zaWRlYmFyLW5hdi1pY29uIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1pY29uLWNvbG9yXCIpO1xuICAgIH1cblxuICAgICYuYy1hY3RpdmUge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW5hdi1saW5rLWFjdGl2ZS1jb2xvclwiKTtcbiAgICAgIGJhY2tncm91bmQ6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW5hdi1saW5rLWFjdGl2ZS1iZ1wiKTtcbiAgICAgIEBpbmNsdWRlIGJvcmRlcnModGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItbmF2LWxpbmstYWN0aXZlLWJvcmRlcnNcIikpO1xuXG4gICAgICAuYy1zaWRlYmFyLW5hdi1pY29uIHtcbiAgICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW5hdi1saW5rLWFjdGl2ZS1pY29uLWNvbG9yXCIpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG4gICAgQG1lZGlhIChob3ZlcjogaG92ZXIpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItbmF2LWxpbmstaG92ZXItY29sb3JcIik7XG4gICAgICAgIGJhY2tncm91bmQ6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW5hdi1saW5rLWhvdmVyLWJnXCIpO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXJzKHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW5hdi1saW5rLWhvdmVyLWJvcmRlcnNcIikpO1xuXG4gICAgICAgIC5jLXNpZGViYXItbmF2LWljb24ge1xuICAgICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1ob3Zlci1pY29uLWNvbG9yXCIpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW5hdi1kcm9wZG93bi1pbmRpY2F0b3ItaG92ZXJcIik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmMtZGlzYWJsZWQge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW5hdi1saW5rLWRpc2FibGVkLWNvbG9yXCIpO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBAaW5jbHVkZSBib3JkZXJzKHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW5hdi1saW5rLWRpc2FibGVkLWJvcmRlcnNcIikpO1xuXG4gICAgICAuYy1zaWRlYmFyLW5hdi1pY29uIHtcbiAgICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW5hdi1saW5rLWRpc2FibGVkLWljb24tY29sb3JcIik7XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItbmF2LWxpbmstZGlzYWJsZWQtY29sb3JcIik7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlcnModGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItbmF2LWxpbmstaG92ZXItYm9yZGVyc1wiKSk7XG5cbiAgICAgICAgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gICAgICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW5hdi1saW5rLWRpc2FibGVkLWljb24tY29sb3JcIik7XG4gICAgICAgIH1cblxuICAgICAgICAmLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItbmF2LWRyb3Bkb3duLWluZGljYXRvci1ob3ZlclwiKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuYy1zaWRlYmFyLW5hdi1kcm9wZG93bi10b2dnbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW5hdi1kcm9wZG93bi1pbmRpY2F0b3JcIik7XG4gICAgfVxuICB9XG5cbiAgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24uYy1zaG93IHtcbiAgICBiYWNrZ3JvdW5kOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtZHJvcGRvd24tYmdcIik7XG4gICAgQGluY2x1ZGUgYm9yZGVycyh0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtZHJvcGRvd24tYm9yZGVyc1wiKSk7XG5cbiAgICAuYy1zaWRlYmFyLW5hdi1saW5rIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtZHJvcGRvd24tY29sb3JcIik7XG5cbiAgICAgICYuYy1kaXNhYmxlZCB7XG4gICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1kaXNhYmxlZC1jb2xvclwiKTtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW5hdi1saW5rLWRpc2FibGVkLWNvbG9yXCIpO1xuXG4gICAgICAgICAgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItbmF2LWxpbmstZGlzYWJsZWQtaWNvbi1jb2xvclwiKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYy1zaWRlYmFyLW5hdi1sYWJlbCB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW5hdi10aXRsZS1jb2xvclwiKTtcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLWNvbG9yXCIpO1xuICAgIH1cblxuICAgIC5jLXNpZGViYXItbmF2LWljb24ge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW5hdi1saW5rLWljb24tY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgQGlmIChsaWdodG5lc3ModGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItYmdcIikpIDwgNDApIHtcbiAgICAuYy1wcm9ncmVzcyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLWJnXCIpLCAxNSUpICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLmMtc2lkZWJhci1mb290ZXIge1xuICAgIGJhY2tncm91bmQ6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLWZvb3Rlci1iZ1wiKTtcbiAgICBAaW5jbHVkZSBib3JkZXJzKHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLWZvb3Rlci1ib3JkZXJzXCIpKTtcbiAgfVxuXG4gIC5jLXNpZGViYXItbWluaW1pemVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1taW5pbWl6ZXItYmdcIik7XG4gICAgQGluY2x1ZGUgYm9yZGVycyh0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1taW5pbWl6ZXItYm9yZGVyc1wiKSk7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItbWluaW1pemVyLWluZGljYXRvclwiKTtcbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICYuYy1mb2N1cyB7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItbWluaW1pemVyLWhvdmVyLWJnXCIpO1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdGhlbWVzLWdldC12YWx1ZShcInNpZGViYXItbWluaW1pemVyLWhvdmVyLWluZGljYXRvclwiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5jLXNpZGViYXItbWluaW1pemVkIHtcblxuICAgIC5jLXNpZGViYXItbmF2LWl0ZW0ge1xuXG4gICAgICAmOmhvdmVyIHtcblxuICAgICAgICA+IC5jLXNpZGViYXItbmF2LWxpbmssIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1ob3Zlci1iZ1wiKTtcblxuICAgICAgICAgIC5jLXNpZGViYXItbmF2LWljb24ge1xuICAgICAgICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW5hdi1saW5rLWhvdmVyLWNvbG9yXCIpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuYy1kaXNhYmxlZCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1kaXNhYmxlZC1iZ1wiKTtcblxuICAgICAgICAgICAgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gICAgICAgICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1uYXYtbGluay1kaXNhYmxlZC1pY29uLWNvbG9yXCIpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5jLXNpZGViYXItbmF2IHtcbiAgICAgID4gLmMtc2lkZWJhci1uYXYtZHJvcGRvd24ge1xuICAgICAgICA+IC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLWl0ZW1zIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0aGVtZXMtZ2V0LXZhbHVlKFwic2lkZWJhci1iZ1wiKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6IHRoZW1lcy1nZXQtdmFsdWUoXCJzaWRlYmFyLW5hdi1saW5rLWhvdmVyLWJnXCIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4uYy1zaWRlYmFyIHtcbiAgQGluY2x1ZGUgdGhlbWUtdmFyaWFudCgpIHtcbiAgICAuYy1zaWRlYmFyLW5hdi1saW5rIHtcbiAgICAgICYuYy1zaWRlYmFyLW5hdi1saW5rLSN7JGNvbG9yfSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICR2YWx1ZTtcbiAgICAgICAgLmMtc2lkZWJhci1uYXYtaWNvbiB7XG4gICAgICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjcpO1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6IGRhcmtlbigkdmFsdWUsIDUlKTtcbiAgICAgICAgICAuYy1zaWRlYmFyLW5hdi1pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJcbi8vIE9wdGlvbnNcbi8vXG4vLyBRdWlja2x5IG1vZGlmeSBnbG9iYWwgc3R5bGluZyBieSBlbmFibGluZyBvciBkaXNhYmxpbmcgb3B0aW9uYWwgZmVhdHVyZXMuXG5cbiR0aGVtZS1zdWZmaXg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC10aGVtZSAhZGVmYXVsdDtcbiRtb2JpbGUtYnJlYWtwb2ludDogICAgICAgICAgICAgICAgICAgICAgICAgIGxnICFkZWZhdWx0O1xuJGVuYWJsZS1sdHI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcnRsOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWNhcmV0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yb3VuZGVkOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtc2hhZG93czogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS1ncmFkaWVudHM6ICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXRyYW5zaXRpb25zOiAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLW1lZGlhLXF1ZXJ5OiAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnk6ICAgICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkLCBubyBsb25nZXIgYWZmZWN0cyBhbnkgY29tcGlsZWQgQ1NTXG4kZW5hYmxlLWdyaWQtY2xhc3NlczogICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wb2ludGVyLWN1cnNvci1mb3ItYnV0dG9uczogICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcHJpbnQtc3R5bGVzOiAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplczogICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtdmFsaWRhdGlvbi1pY29uczogICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWRlcHJlY2F0aW9uLW1lc3NhZ2VzOiAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtc2lkZWJhci1uYXYtcm91bmRlZDogICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGxheW91dC10cmFuc2l0aW9uLXNwZWVkOiAgICAgICAgICAgICAgICAgICAgLjNzICFkZWZhdWx0O1xuJGVuYWJsZS1lbGV2YXRpb25zOiAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcHJlZmVycy1jb2xvci1zY2hlbWU6ICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuXG4kb3B0aW9uczogKCkgIWRlZmF1bHQ7XG5cbiRkZWZhdWx0LXRoZW1lczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGRlZmF1bHQtdGhlbWVzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBkZWZhdWx0OiAoXG4gICAgICBcImRlZmF1bHRcIjogICAgICAgdHJ1ZSxcbiAgICAgIFwidGhlbWUtY29sb3JzXCI6ICAkdGhlbWUtY29sb3JzLFxuICAgICAgXCJncmF5c1wiOiAgICAgICAgICRncmF5cyxcbiAgICAgIFwiZ3JhZGllbnRzXCI6ICAgICAkdGhlbWUtZ3JhZGllbnRzXG4gICAgKVxuICApLFxuICAkZGVmYXVsdC10aGVtZXNcbik7XG5cbi8vIFRPRE86IGFkZCB0aGlzIGZlYXR1cmVcbi8vICRlbmFibGUtcHJlZmVycy1jb2xvci1zY2hlbWU6ICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuIiwiLy8gVmFyaWFibGVzXG4vL1xuLy8gVmFyaWFibGVzIHNob3VsZCBmb2xsb3cgdGhlIGAkY29tcG9uZW50LXN0YXRlLXByb3BlcnR5LXNpemVgIGZvcm11bGEgZm9yXG4vLyBjb25zaXN0ZW50IG5hbWluZy4gRXg6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvciBhbmQgJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cy5cblxuLy8gQ29sb3Igc3lzdGVtXG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbG9yc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9icmFuZC1jb2xvcnNcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvZ3JhZGllbnRzXCI7XG5cbi8vIE9wdGlvbnNcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvb3B0aW9uc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9zcGFjaW5nXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL3otaW5kZXhcIjtcblxuQGltcG9ydCBcInZhcmlhYmxlcy9ib2R5XCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvc2hhcmVkXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL3R5cG9ncmFwaHlcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvZ3JpZFwiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9lbGV2YXRpb25cIjtcblxuLy8gQ29tcG9uZW50c1xuQGltcG9ydCBcInZhcmlhYmxlcy9jb21wb25lbnRzL2xpbmtzXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvdGFibGVzXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvYnV0dG9ucy1mb3Jtc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9jb21wb25lbnRzL2N1c3RvbS1mb3Jtc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9jb21wb25lbnRzL25hdnNcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29tcG9uZW50cy9uYXZiYXJcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29tcG9uZW50cy9oZWFkZXJcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29tcG9uZW50cy9zdWJoZWFkZXJcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29tcG9uZW50cy9zaWRlYmFyXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvZm9vdGVyXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvZHJvcGRvd25zXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvcGFnaW5hdGlvblwiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9jb21wb25lbnRzL2NhcmRzXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvanVtYm90cm9uXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvdG9vbHRpcHNcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29tcG9uZW50cy9wb3BvdmVyc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9jb21wb25lbnRzL3RvYXN0c1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9jb21wb25lbnRzL2JhZGdlc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9jb21wb25lbnRzL21vZGFsc1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9jb21wb25lbnRzL2FsZXJ0c1wiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9jb21wb25lbnRzL3Byb2dyZXNzLWJhcnNcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29tcG9uZW50cy9saXN0LWdyb3VwXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvaW1hZ2VzXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvYnJlYWRjcnVtYlwiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9jb21wb25lbnRzL2Nhcm91c2VsXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvc3Bpbm5lcnNcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29tcG9uZW50cy9hdmF0YXJzXCI7XG5AaW1wb3J0IFwidmFyaWFibGVzL2NvbXBvbmVudHMvc3dpdGNoZXNcIjtcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29tcG9uZW50cy9jbG9zZVwiO1xuQGltcG9ydCBcInZhcmlhYmxlcy9jb21wb25lbnRzL2NvZGVcIjtcblxuLy8gUFJPIENvbXBvbmVudHNcbkBpbXBvcnQgXCJ2YXJpYWJsZXMvY29tcG9uZW50cy9tdWx0aS1zZWxlY3RcIjtcblxuLy8gVXRpbGl0aWVzXG5AaW1wb3J0IFwidmFyaWFibGVzL3V0aWxpdGllc1wiO1xuXG5cbi8vIFByaW50aW5nXG5AaW1wb3J0IFwidmFyaWFibGVzL3ByaW50aW5nXCI7XG5cbi8vIEN1cnNvclxuJGN1cnNvci1kaXNhYmxlZDogZGVmYXVsdCAhZGVmYXVsdDtcblxuLy8gQXBwc1xuQGltcG9ydCBcInZhcmlhYmxlcy9hcHBzL2VtYWlsXCI7XG4iLCIvL1xuLy8gUm90YXRpbmcgYm9yZGVyXG4vL1xuXG5Aa2V5ZnJhbWVzIHNwaW5uZXItYm9yZGVyIHtcbiAgdG8geyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9XG59XG5cbi5zcGlubmVyLWJvcmRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoO1xuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodDtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xuICBib3JkZXI6ICRzcGlubmVyLWJvcmRlci13aWR0aCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBhbmltYXRpb246IHNwaW5uZXItYm9yZGVyIC43NXMgbGluZWFyIGluZmluaXRlO1xufVxuXG4uc3Bpbm5lci1ib3JkZXItc20ge1xuICB3aWR0aDogJHNwaW5uZXItd2lkdGgtc207XG4gIGhlaWdodDogJHNwaW5uZXItaGVpZ2h0LXNtO1xuICBib3JkZXItd2lkdGg6ICRzcGlubmVyLWJvcmRlci13aWR0aC1zbTtcbn1cblxuLy9cbi8vIEdyb3dpbmcgY2lyY2xlXG4vL1xuXG5Aa2V5ZnJhbWVzIHNwaW5uZXItZ3JvdyB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuLnNwaW5uZXItZ3JvdyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRzcGlubmVyLXdpZHRoO1xuICBoZWlnaHQ6ICRzcGlubmVyLWhlaWdodDtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1ibGFja2xpc3RcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBvcGFjaXR5OiAwO1xuICBhbmltYXRpb246IHNwaW5uZXItZ3JvdyAuNzVzIGxpbmVhciBpbmZpbml0ZTtcbn1cblxuLnNwaW5uZXItZ3Jvdy1zbSB7XG4gIHdpZHRoOiAkc3Bpbm5lci13aWR0aC1zbTtcbiAgaGVpZ2h0OiAkc3Bpbm5lci1oZWlnaHQtc207XG59XG4iLCIvLyBTcGlubmVyc1xuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwaW5uZXJcbiRzcGlubmVyLXdpZHRoOiAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1oZWlnaHQ6ICAgICAgICAkc3Bpbm5lci13aWR0aCAhZGVmYXVsdDtcbiRzcGlubmVyLWJvcmRlci13aWR0aDogIC4yNWVtICFkZWZhdWx0O1xuXG4kc3Bpbm5lci13aWR0aC1zbTogICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0LXNtOiAgICAgICAgJHNwaW5uZXItd2lkdGgtc20gIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGgtc206ICAuMmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBzcGlubmVyXG4iLCIuYy1zdWJoZWFkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6ICRzdWJoZWFkZXItaGVpZ2h0O1xuXG4gICZbY2xhc3MqPVwiYmctXCJdICB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKCRibGFjaywgLjEpO1xuICB9XG5cbiAgJi5jLXN1YmhlYWRlci1maXhlZCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogJHppbmRleC1maXhlZDtcbiAgICBAaW5jbHVkZSBlbGV2YXRpb24oMiwgXCJib3R0b21cIik7XG4gIH1cbn1cblxuLmMtc3ViaGVhZGVyLW5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1pbi1oZWlnaHQ6ICRzdWJoZWFkZXItaGVpZ2h0O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIC5jLXN1YmhlYWRlci1uYXYtaXRlbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLmMtc3ViaGVhZGVyLW5hdi1idG4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogJGJ0bi1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAuYy1zdWJoZWFkZXItbmF2LWxpbmssXG4gIC5jLXN1YmhlYWRlci1uYXYtYnRuIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZy1yaWdodDogJGhlYWRlci1uYXYtbGluay1wYWRkaW5nLXg7XG4gICAgcGFkZGluZy1sZWZ0OiAkaGVhZGVyLW5hdi1saW5rLXBhZGRpbmcteDtcblxuICAgIC5iYWRnZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIG1hcmdpbi10b3A6IC0xNnB4O1xuICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIHJpZ2h0OiA1MCU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLy9cbi8vIFN1YmhlYWRlciB2YXJpYW50c1xuLy9cblxuQGluY2x1ZGUgdGhlbWVzKCRzdWJoZWFkZXItdGhlbWUtbWFwLCAkY3JlYXRlOiBhcHBlbmQsICRwYXJlbnQ6IFwiLmMtc3ViaGVhZGVyXCIpIHtcbiAgYmFja2dyb3VuZDogdGhlbWVzLWdldC12YWx1ZShcInN1YmhlYWRlci1iZ1wiKTtcbiAgQGluY2x1ZGUgYm9yZGVycyh0aGVtZXMtZ2V0LXZhbHVlKFwic3ViaGVhZGVyLWJvcmRlclwiKSk7XG5cbiAgLmMtc3ViaGVhZGVyLW5hdiB7XG4gICAgLmMtc3ViaGVhZGVyLW5hdi1saW5rLFxuICAgIC5jLXN1YmhlYWRlci1uYXYtYnRuIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic3ViaGVhZGVyLWNvbG9yXCIpO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic3ViaGVhZGVyLWhvdmVyLWNvbG9yXCIpO1xuICAgICAgfVxuXG4gICAgICAmLmMtZGlzYWJsZWQge1xuICAgICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInN1YmhlYWRlci1kaXNhYmxlZC1jb2xvclwiKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYy1zaG93ID4gLmMtc3ViaGVhZGVyLW5hdi1saW5rLFxuICAgIC5jLWFjdGl2ZSA+IC5jLXN1YmhlYWRlci1uYXYtbGluayxcbiAgICAuYy1zdWJoZWFkZXItbmF2LWxpbmsuYy1zaG93LFxuICAgIC5jLXN1YmhlYWRlci1uYXYtbGluay5jLWFjdGl2ZSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInN1YmhlYWRlci1hY3RpdmUtY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgLmMtc3ViaGVhZGVyLXRleHQge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic3ViaGVhZGVyLWNvbG9yXCIpO1xuICAgIGEge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJzdWJoZWFkZXItYWN0aXZlLWNvbG9yXCIpO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwic3ViaGVhZGVyLWFjdGl2ZS1jb2xvclwiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIFN1YmhlYWRlclxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHN1YmhlYWRlclxuJHN1YmhlYWRlci1oZWlnaHQ6ICAgICAgIDQ4cHggIWRlZmF1bHQ7XG5cbiRzdWJoZWFkZXItcGFkZGluZy15OiAgJHNwYWNlciAvIDIgIWRlZmF1bHQ7XG4kc3ViaGVhZGVyLXBhZGRpbmcteDogICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRzdWJoZWFkZXItbmF2LWxpbmstcGFkZGluZy14OiAgLjVyZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHN1YmhlYWRlclxuXG4vLyBEZWZhdWx0IHRoZW1lXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc3ViaGVhZGVyLWRlZmF1bHQtdGhlbWVzXG4kc3ViaGVhZGVyLWRhcmstYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktYmFzZSAhZGVmYXVsdDtcbiRzdWJoZWFkZXItZGFyay1jb2xvcjogICAgICAgICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjc1KSAhZGVmYXVsdDtcbiRzdWJoZWFkZXItZGFyay1ib3JkZXI6ICAgICAgICAgICAgICAgICAoIGJvdHRvbTogMXB4IHNvbGlkICRncmF5LTgwMCApICFkZWZhdWx0O1xuJHN1YmhlYWRlci1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuOSkgIWRlZmF1bHQ7XG4kc3ViaGVhZGVyLWRhcmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHN1YmhlYWRlci1kYXJrLWRpc2FibGVkLWNvbG9yOiAgICAgICAgIHJnYmEoJHdoaXRlLCAuMjUpICFkZWZhdWx0O1xuXG4kc3ViaGVhZGVyLWxpZ2h0LWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRzdWJoZWFkZXItbGlnaHQtY29sb3I6ICAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRzdWJoZWFkZXItbGlnaHQtYm9yZGVyOiAgICAgICAgICAgICAgICAgKCBib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yICkgIWRlZmF1bHQ7XG4kc3ViaGVhZGVyLWxpZ2h0LWhvdmVyLWNvbG9yOiAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNykgIWRlZmF1bHQ7XG4kc3ViaGVhZGVyLWxpZ2h0LWFjdGl2ZS1jb2xvcjogICAgICAgICAgIHJnYmEoJGJsYWNrLCAuOSkgIWRlZmF1bHQ7XG4kc3ViaGVhZGVyLWxpZ2h0LWRpc2FibGVkLWNvbG9yOiAgICAgICAgIHJnYmEoJGJsYWNrLCAuMykgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHN1YmhlYWRlci1kZWZhdWx0LXRoZW1lc1xuXG5cbiRzdWJoZWFkZXItdmFyaWFudHMtbWFwOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kc3ViaGVhZGVyLXZhcmlhbnRzLW1hcDogbWFwLW1lcmdlKFxuICAoXG4gICAgZGFyazogKFxuICAgICAgXCJzdWJoZWFkZXItYmdcIjogICAgICAgICAgICAgICAgICAgICAgJHN1YmhlYWRlci1kYXJrLWJnLFxuICAgICAgXCJzdWJoZWFkZXItY29sb3JcIjogICAgICAgICAgICAgICAgICAgJHN1YmhlYWRlci1kYXJrLWNvbG9yLFxuICAgICAgXCJzdWJoZWFkZXItYm9yZGVyXCI6ICAgICAgICAgICAgICAgICAgJHN1YmhlYWRlci1kYXJrLWJvcmRlcixcbiAgICAgIFwic3ViaGVhZGVyLWhvdmVyLWNvbG9yXCI6ICAgICAgICAgICAgICRzdWJoZWFkZXItZGFyay1ob3Zlci1jb2xvcixcbiAgICAgIFwic3ViaGVhZGVyLWFjdGl2ZS1jb2xvclwiOiAgICAgICAgICAgICRzdWJoZWFkZXItZGFyay1hY3RpdmUtY29sb3IsXG4gICAgICBcInN1YmhlYWRlci1kaXNhYmxlZC1jb2xvclwiOiAgICAgICAgICAkc3ViaGVhZGVyLWRhcmstZGlzYWJsZWQtY29sb3IsXG4gICAgKSxcbiAgICBsaWdodDogKFxuICAgICAgXCJzdWJoZWFkZXItYmdcIjogICAgICAgICAgICAgICAgICAgICAgJHN1YmhlYWRlci1saWdodC1iZyxcbiAgICAgIFwic3ViaGVhZGVyLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICRzdWJoZWFkZXItbGlnaHQtY29sb3IsXG4gICAgICBcInN1YmhlYWRlci1ib3JkZXJcIjogICAgICAgICAgICAgICAgICAkc3ViaGVhZGVyLWxpZ2h0LWJvcmRlcixcbiAgICAgIFwic3ViaGVhZGVyLWhvdmVyLWNvbG9yXCI6ICAgICAgICAgICAgICRzdWJoZWFkZXItbGlnaHQtaG92ZXItY29sb3IsXG4gICAgICBcInN1YmhlYWRlci1hY3RpdmUtY29sb3JcIjogICAgICAgICAgICAkc3ViaGVhZGVyLWxpZ2h0LWFjdGl2ZS1jb2xvcixcbiAgICAgIFwic3ViaGVhZGVyLWRpc2FibGVkLWNvbG9yXCI6ICAgICAgICAgICRzdWJoZWFkZXItbGlnaHQtZGlzYWJsZWQtY29sb3IsXG4gICAgKVxuICApLFxuICAkc3ViaGVhZGVyLXZhcmlhbnRzLW1hcFxuKTtcblxuJHN1YmhlYWRlci1kZWZhdWx0LXZhcmlhbnQ6IFwibGlnaHRcIiAhZGVmYXVsdDtcbiRzdWJoZWFkZXItdmFyaWFudHM6IChcbiAgZGVmYXVsdDogICRzdWJoZWFkZXItZGVmYXVsdC12YXJpYW50LFxuICBtYXA6ICAgICAgJHN1YmhlYWRlci12YXJpYW50cy1tYXBcbikgIWRlZmF1bHQ7XG5cbiRzdWJoZWFkZXItdGhlbWUtbWFwOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kc3ViaGVhZGVyLXRoZW1lLW1hcDogbWFwLW1lcmdlKFxuICAoXG4gICAgZGVmYXVsdDogICRzdWJoZWFkZXItdmFyaWFudHNcbiAgKSxcbiAgJHN1YmhlYWRlci10aGVtZS1tYXBcbik7XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5jLXN3aXRjaCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRzd2l0Y2gtd2lkdGg7XG4gIGhlaWdodDogJHN3aXRjaC1oZWlnaHQ7XG59XG5cbi5jLXN3aXRjaC1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogLTE7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5jLXN3aXRjaC1zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IGluaGVyaXQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkO1xuICB0cmFuc2l0aW9uOiAuMTVzIGVhc2Utb3V0O1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcblxuICBAaW5jbHVkZSB0aGVtZXMoJGZvcm0tdGhlbWUtbWFwKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImlucHV0LWJnXCIpO1xuICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImlucHV0LWJvcmRlci1jb2xvclwiKTtcbiAgfVxuXG4gICY6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogJHN3aXRjaC1oYW5kbGUtbWFyZ2luO1xuICAgIGxlZnQ6ICRzd2l0Y2gtaGFuZGxlLW1hcmdpbjtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAkc3dpdGNoLWhlaWdodCAtICgkc3dpdGNoLWhhbmRsZS1tYXJnaW4gKiAyKSAtICgkYm9yZGVyLXdpZHRoICogMik7XG4gICAgaGVpZ2h0OiAkc3dpdGNoLWhlaWdodCAtICgkc3dpdGNoLWhhbmRsZS1tYXJnaW4gKiAyKSAtICgkYm9yZGVyLXdpZHRoICogMik7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICB0cmFuc2l0aW9uOiAuMTVzIGVhc2Utb3V0O1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMgLyAyKTtcbiAgfVxufVxuXG4uYy1zd2l0Y2gtaW5wdXQ6Y2hlY2tlZCB+IC5jLXN3aXRjaC1zbGlkZXIge1xuICAmOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkc3dpdGNoLXdpZHRoIC0gJHN3aXRjaC1oZWlnaHQpO1xuICB9XG59XG5cbi5jLXN3aXRjaC1pbnB1dDpmb2N1cyB+IC5jLXN3aXRjaC1zbGlkZXIge1xuICBAaW5jbHVkZSB0aGVtZXMoJGZvcm0tdGhlbWUtbWFwKSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJpbnB1dC1mb2N1cy1jb2xvclwiKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaW5wdXQtZm9jdXMtYmdcIik7XG4gICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yXCIpO1xuICB9XG4gIG91dGxpbmU6IDA7XG4gIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgYm94LXNoYWRvdzogJGlucHV0LWJveC1zaGFkb3csICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICB9IEBlbHNlIHtcbiAgICBib3gtc2hhZG93OiAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgfVxufVxuXG4uYy1zd2l0Y2gtaW5wdXQ6ZGlzYWJsZWQgfiAuYy1zd2l0Y2gtc2xpZGVyIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgb3BhY2l0eTogLjU7XG59XG5cbi8vXG4vLyBTd2l0Y2ggU2l6ZXNcbi8vXG5cbi5jLXN3aXRjaC1sZyB7XG4gIEBpbmNsdWRlIHN3aXRjaC1zaXplKCRzd2l0Y2gtbGctd2lkdGgsICRzd2l0Y2gtbGctaGVpZ2h0LCAkc3dpdGNoLWxnLWZvbnQtc2l6ZSwgJHN3aXRjaC1oYW5kbGUtbWFyZ2luKTtcbn1cblxuLmMtc3dpdGNoLXNtIHtcbiAgQGluY2x1ZGUgc3dpdGNoLXNpemUoJHN3aXRjaC1zbS13aWR0aCwgJHN3aXRjaC1zbS1oZWlnaHQsICRzd2l0Y2gtc20tZm9udC1zaXplLCAkc3dpdGNoLWhhbmRsZS1tYXJnaW4pO1xufVxuXG4vL1xuLy8gU3dpdGNoIHdpdGggbGFiZWxcbi8vXG4uYy1zd2l0Y2gtbGFiZWwge1xuICB3aWR0aDogJHN3aXRjaC1sYWJlbC13aWR0aDtcblxuICAuYy1zd2l0Y2gtc2xpZGVyIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgei1pbmRleDogMjtcbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIG1hcmdpbi10b3A6IC0uNWVtO1xuICAgICAgZm9udC1zaXplOiAkc3dpdGNoLWZvbnQtc2l6ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIGNvbG9yOiAkZ3JheS0zMDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgY29udGVudDogYXR0cihkYXRhLXVuY2hlY2tlZCk7XG4gICAgICB0cmFuc2l0aW9uOiBpbmhlcml0O1xuXG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICByaWdodDogMXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jLXN3aXRjaC1pbnB1dDpjaGVja2VkIH4gLmMtc3dpdGNoLXNsaWRlciB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkc3dpdGNoLWxhYmVsLXdpZHRoIC0gJHN3aXRjaC1oZWlnaHQpO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBsZWZ0OiAxcHg7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgY29udGVudDogYXR0cihkYXRhLWNoZWNrZWQpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNpemVzXG4gICYuYy1zd2l0Y2gtbGcge1xuICAgIEBpbmNsdWRlIHN3aXRjaC1zaXplKCRzd2l0Y2gtbGFiZWwtbGctd2lkdGgsICRzd2l0Y2gtbGctaGVpZ2h0LCAkc3dpdGNoLWxnLWZvbnQtc2l6ZSwgJHN3aXRjaC1oYW5kbGUtbWFyZ2luKTtcbiAgfVxuXG4gICYuYy1zd2l0Y2gtc20ge1xuICAgIEBpbmNsdWRlIHN3aXRjaC1zaXplKCRzd2l0Y2gtbGFiZWwtc20td2lkdGgsICRzd2l0Y2gtc20taGVpZ2h0LCAkc3dpdGNoLXNtLWZvbnQtc2l6ZSwgJHN3aXRjaC1oYW5kbGUtbWFyZ2luKTtcbiAgfVxufVxuXG4vL1xuLy8gU3dpdGNoIDNkXG4vL1xuXG4uYy1zd2l0Y2hbY2xhc3MqPVwiLTNkXCJdIHtcbiAgLmMtc3dpdGNoLXNsaWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktMTAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwZW07XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgdG9wOiAtMXB4O1xuICAgICAgbGVmdDogLTFweDtcbiAgICAgIHdpZHRoOiAkc3dpdGNoLWhlaWdodDtcbiAgICAgIGhlaWdodDogJHN3aXRjaC1oZWlnaHQ7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MGVtO1xuICAgICAgYm94LXNoYWRvdzogMCAycHggNXB4IHJnYmEoJGJsYWNrLCAuMyk7XG4gICAgfVxuICB9XG5cbiAgLy8gU2l6ZXNcbiAgJi5jLXN3aXRjaC1sZyB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLTNkLXNpemUoJHN3aXRjaC1sZy13aWR0aCwgJHN3aXRjaC1sZy1oZWlnaHQpO1xuICB9XG5cbiAgJi5jLXN3aXRjaC1zbSB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLTNkLXNpemUoJHN3aXRjaC1zbS13aWR0aCwgJHN3aXRjaC1zbS1oZWlnaHQpO1xuICB9XG59XG5cbi8vXG4vLyBTd2l0Y2ggVmFyaWFudHNcbi8vXG5cbkBpbmNsdWRlIHRoZW1lLXZhcmlhbnQoKSB7XG4gIC8vbm9ybWFsIHN0eWxlXG4gIC5jLXN3aXRjaC0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIHN3aXRjaC12YXJpYW50KCR2YWx1ZSk7XG4gIH1cbiAgLy8gM3Mgc3R5bGVcbiAgLmMtc3dpdGNoLTNkLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLTNkLXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxuICAvLyBvdXRsaW5lIHN0eWxlXG4gIC5jLXN3aXRjaC1vdXRsaW5lLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLW91dGxpbmUtdmFyaWFudCgkdmFsdWUpO1xuICB9XG4gIC8vIG9wb3NpdGVcbiAgLmMtc3dpdGNoLW9wcG9zaXRlLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLW9wcG9zaXRlLXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuXG4vL1xuLy8gUGlsbCBTdHlsZVxuLy9cblxuLmMtc3dpdGNoLXBpbGwge1xuICAuYy1zd2l0Y2gtc2xpZGVyIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MGVtO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwZW07XG4gICAgfVxuICB9XG59XG5cbi5jLXN3aXRjaC1zcXVhcmUge1xuICAuYy1zd2l0Y2gtc2xpZGVyIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBTd2l0Y2hlc1xuLy8gc2Nzcy1kb2NzLXN0YXJ0IHN3aXRjaFxuJHN3aXRjaC13aWR0aDogICAgICA0MHB4ICFkZWZhdWx0O1xuJHN3aXRjaC1oZWlnaHQ6ICAgICAyNnB4ICFkZWZhdWx0O1xuJHN3aXRjaC1mb250LXNpemU6ICAxMHB4ICFkZWZhdWx0O1xuXG4kc3dpdGNoLWxnLXdpZHRoOiAgICAgIDQ4cHggIWRlZmF1bHQ7XG4kc3dpdGNoLWxnLWhlaWdodDogICAgIDMwcHggIWRlZmF1bHQ7XG4kc3dpdGNoLWxnLWZvbnQtc2l6ZTogIDEycHggIWRlZmF1bHQ7XG5cbiRzd2l0Y2gtc20td2lkdGg6ICAgICAgMzJweCAhZGVmYXVsdDtcbiRzd2l0Y2gtc20taGVpZ2h0OiAgICAgMjJweCAhZGVmYXVsdDtcbiRzd2l0Y2gtc20tZm9udC1zaXplOiAgOHB4ICFkZWZhdWx0O1xuXG4kc3dpdGNoLWxhYmVsLXdpZHRoOiAgICAgNDhweCAhZGVmYXVsdDtcbiRzd2l0Y2gtbGFiZWwtbGctd2lkdGg6ICA1NnB4ICFkZWZhdWx0O1xuJHN3aXRjaC1sYWJlbC1zbS13aWR0aDogIDQwcHggIWRlZmF1bHQ7XG5cbiRzd2l0Y2gtaGFuZGxlLW1hcmdpbjogIDJweCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgc3dpdGNoXG4iLCJAbWl4aW4gc3dpdGNoLXNpemUoJHdpZHRoLCAkaGVpZ2h0LCAkZm9udC1zaXplLCAkaGFuZGxlLW1hcmdpbikge1xuICB3aWR0aDogJHdpZHRoO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG5cbiAgLmMtc3dpdGNoLXNsaWRlciB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHdpZHRoOiAkaGVpZ2h0IC0gKCRoYW5kbGUtbWFyZ2luICogMikgLSAoJGJvcmRlci13aWR0aCAqIDIpO1xuICAgICAgaGVpZ2h0OiAkaGVpZ2h0IC0gKCRoYW5kbGUtbWFyZ2luICogMikgLSAoJGJvcmRlci13aWR0aCAqIDIpO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gICAgfVxuICB9XG5cbiAgLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgfiAuYy1zd2l0Y2gtc2xpZGVyIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCR3aWR0aCAtICRoZWlnaHQpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc3dpdGNoLTNkLXNpemUoJHdpZHRoLCAkaGVpZ2h0KSB7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcblxuICAuYy1zd2l0Y2gtc2xpZGVyOjpiZWZvcmUge1xuICAgIHdpZHRoOiAkaGVpZ2h0O1xuICAgIGhlaWdodDogJGhlaWdodDtcbiAgfVxuXG4gIC5jLXN3aXRjaC1pbnB1dDpjaGVja2VkIH4gLmMtc3dpdGNoLXNsaWRlciB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkd2lkdGggLSAkaGVpZ2h0KTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHN3aXRjaC0zZC12YXJpYW50KCRjb2xvcikge1xuICAuYy1zd2l0Y2gtaW5wdXQ6Y2hlY2tlZCArIC5jLXN3aXRjaC1zbGlkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG5AbWl4aW4gc3dpdGNoLXZhcmlhbnQoJGNvbG9yKSB7XG4gIC5jLXN3aXRjaC1pbnB1dDpjaGVja2VkICsgLmMtc3dpdGNoLXNsaWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzd2l0Y2gtb3V0bGluZS12YXJpYW50KCRjb2xvcikge1xuICAuYy1zd2l0Y2gtaW5wdXQ6Y2hlY2tlZCArIC5jLXN3aXRjaC1zbGlkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgfVxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzd2l0Y2gtb3Bwb3NpdGUtdmFyaWFudCgkY29sb3IpIHtcbiAgLmMtc3dpdGNoLWlucHV0OmNoZWNrZWQgKyAuYy1zd2l0Y2gtc2xpZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2ljIEJvb3RzdHJhcCB0YWJsZVxuLy9cblxuLnRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG5cbiAgQGluY2x1ZGUgdGhlbWVzKCR0YWJsZS10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwidGFibGUtY29sb3JcIik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInRhYmxlLWJnXCIpO1xuICB9XG5cbiAgdGgsXG4gIHRkIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgYm9yZGVyLXRvcDogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZDtcblxuICAgIEBpbmNsdWRlIHRoZW1lcygkdGFibGUtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0YWJsZS1ib3JkZXItY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgdGhlYWQgdGgge1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgYm9yZGVyLWJvdHRvbTogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKSBzb2xpZDtcblxuICAgIEBpbmNsdWRlIHRoZW1lcygkdGFibGUtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0YWJsZS1ib3JkZXItY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgdGJvZHkgKyB0Ym9keSB7XG4gICAgYm9yZGVyLXRvcDogKDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoKSBzb2xpZDtcblxuICAgIEBpbmNsdWRlIHRoZW1lcygkdGFibGUtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0YWJsZS1ib3JkZXItY29sb3JcIik7XG4gICAgfVxuICB9XG59XG5cblxuLy9cbi8vIENvbmRlbnNlZCB0YWJsZSB3LyBoYWxmIHBhZGRpbmdcbi8vXG5cbi50YWJsZS1zbSB7XG4gIHRoLFxuICB0ZCB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZy1zbTtcbiAgfVxufVxuXG5cbi8vIEJvcmRlciB2ZXJzaW9uc1xuLy9cbi8vIEFkZCBvciByZW1vdmUgYm9yZGVycyBhbGwgYXJvdW5kIHRoZSB0YWJsZSBhbmQgYmV0d2VlbiBhbGwgdGhlIGNvbHVtbnMuXG5cbi50YWJsZS1ib3JkZXJlZCB7XG4gIGJvcmRlcjogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZDtcblxuICBAaW5jbHVkZSB0aGVtZXMoJHRhYmxlLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwidGFibGUtYm9yZGVyLWNvbG9yXCIpO1xuICB9XG5cbiAgdGgsXG4gIHRkIHtcbiAgICBib3JkZXI6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQ7XG5cbiAgICBAaW5jbHVkZSB0aGVtZXMoJHRhYmxlLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0YWJsZS1ib3JkZXItY29sb3JcIik7XG4gICAgfVxuICB9XG5cbiAgdGhlYWQge1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxufVxuXG4udGFibGUtYm9yZGVybGVzcyB7XG4gIHRoLFxuICB0ZCxcbiAgdGhlYWQgdGgsXG4gIHRib2R5ICsgdGJvZHkge1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG4vLyBaZWJyYS1zdHJpcGluZ1xuLy9cbi8vIERlZmF1bHQgemVicmEtc3RyaXBlIHN0eWxlcyAoYWx0ZXJuYXRpbmcgZ3JheSBhbmQgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMpXG5cbi50YWJsZS1zdHJpcGVkIHtcbiAgdGJvZHkgdHI6bnRoLW9mLXR5cGUoI3skdGFibGUtc3RyaXBlZC1vcmRlcn0pIHtcblxuICAgIEBpbmNsdWRlIHRoZW1lcygkdGFibGUtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0YWJsZS1hY2NlbnQtYmdcIik7XG4gICAgfVxuICB9XG59XG5cblxuLy8gSG92ZXIgZWZmZWN0XG4vL1xuLy8gUGxhY2VkIGhlcmUgc2luY2UgaXQgaGFzIHRvIGNvbWUgYWZ0ZXIgdGhlIHBvdGVudGlhbCB6ZWJyYSBzdHJpcGluZ1xuXG4udGFibGUtaG92ZXIge1xuICB0Ym9keSB0ciB7XG4gICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICBAaW5jbHVkZSB0aGVtZXMoJHRhYmxlLXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwidGFibGUtaG92ZXItY29sb3JcIik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0YWJsZS1ob3Zlci1iZ1wiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBUYWJsZSBiYWNrZ3JvdW5kc1xuLy9cbi8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XG4vLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuXG5AaW5jbHVkZSB0aGVtZS12YXJpYW50KCkge1xuICBAaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgkY29sb3IsICB0aGVtZS1jb2xvci1sZXZlbCgkdmFsdWUsICR0YWJsZS1iZy1sZXZlbCksICB0aGVtZS1jb2xvci1sZXZlbCgkdmFsdWUsICR0YWJsZS1ib3JkZXItbGV2ZWwpKTtcbn1cblxuQGluY2x1ZGUgdGhlbWVzKCR0YWJsZS10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICBAaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudChhY3RpdmUsIHRoZW1lcy1nZXQtdmFsdWUoXCJ0YWJsZS1hY3RpdmUtYmdcIikpO1xuICBAaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudChzZWxlY3RlZCwgdGhlbWVzLWdldC12YWx1ZShcInRhYmxlLWFjdGl2ZS1iZ1wiKSwgdGhlbWVzLWdldC12YWx1ZShcInRhYmxlLWFjdGl2ZS1iZ1wiKSk7XG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4udGFibGUge1xuICB0Ym9keSB0ciB7XG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCR0YWJsZS10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInRhYmxlLWhvdmVyLWNvbG9yXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwidGFibGUtaG92ZXItYmdcIik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gRGFyayBzdHlsZXNcbi8vXG4vLyBTYW1lIHRhYmxlIG1hcmt1cCwgYnV0IGludmVydGVkIGNvbG9yIHNjaGVtZTogZGFyayBiYWNrZ3JvdW5kIGFuZCBsaWdodCB0ZXh0LlxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuLnRhYmxlIHtcbiAgLnRoZWFkLWRhcmsge1xuICAgIHRoIHtcbiAgICAgIEBpbmNsdWRlIHRoZW1lcygkdGFibGUtdGhlbWUtbWFwKSB7XG4gICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwidGFibGUtZGFyay1jb2xvclwiKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInRhYmxlLWRhcmstYmdcIik7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInRhYmxlLWRhcmstYm9yZGVyLWNvbG9yXCIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC50aGVhZC1saWdodCB7XG4gICAgdGgge1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCR0YWJsZS10aGVtZS1tYXApIHtcbiAgICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0YWJsZS1oZWFkLWNvbG9yXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwidGFibGUtaGVhZC1iZ1wiKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwidGFibGUtYm9yZGVyLWNvbG9yXCIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4udGFibGUtZGFyayB7XG4gIEBpbmNsdWRlIHRoZW1lcygkdGFibGUtdGhlbWUtbWFwKSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0YWJsZS1kYXJrLWNvbG9yXCIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0YWJsZS1kYXJrLWJnXCIpO1xuICB9XG5cbiAgdGgsXG4gIHRkLFxuICB0aGVhZCB0aCB7XG4gICAgQGluY2x1ZGUgdGhlbWVzKCR0YWJsZS10aGVtZS1tYXApIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInRhYmxlLWRhcmstYm9yZGVyLWNvbG9yXCIpO1xuICAgIH1cbiAgfVxuXG4gICYudGFibGUtYm9yZGVyZWQge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gICYudGFibGUtc3RyaXBlZCB7XG4gICAgdGJvZHkgdHI6bnRoLW9mLXR5cGUoI3skdGFibGUtc3RyaXBlZC1vcmRlcn0pIHtcbiAgICAgIEBpbmNsdWRlIHRoZW1lcygkdGFibGUtdGhlbWUtbWFwKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0YWJsZS1kYXJrLWFjY2VudC1iZ1wiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLnRhYmxlLWhvdmVyIHtcbiAgICB0Ym9keSB0ciB7XG4gICAgICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICAgICAgQGluY2x1ZGUgdGhlbWVzKCR0YWJsZS10aGVtZS1tYXApIHtcbiAgICAgICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInRhYmxlLWRhcmstaG92ZXItY29sb3JcIik7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInRhYmxlLWRhcmstaG92ZXItYmdcIik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBSZXNwb25zaXZlIHRhYmxlc1xuLy9cbi8vIEdlbmVyYXRlIHNlcmllcyBvZiBgLnRhYmxlLXJlc3BvbnNpdmUtKmAgY2xhc3NlcyBmb3IgY29uZmlndXJpbmcgdGhlIHNjcmVlblxuLy8gc2l6ZSBvZiB3aGVyZSB5b3VyIHRhYmxlIHdpbGwgb3ZlcmZsb3cuXG5cbi50YWJsZS1yZXNwb25zaXZlIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRuZXh0LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAmI3skaW5maXh9IHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnJlYWtwb2ludCkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuICAgICAgICAvLyBQcmV2ZW50IGRvdWJsZSBib3JkZXIgb24gaG9yaXpvbnRhbCBzY3JvbGwgZHVlIHRvIHVzZSBvZiBgZGlzcGxheTogYmxvY2s7YFxuICAgICAgICA+IC50YWJsZS1ib3JkZXJlZCB7XG4gICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi50YWJsZS1vdXRsaW5lIHtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG5cbiAgQGluY2x1ZGUgdGhlbWVzKCR0YWJsZS10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInRhYmxlLWJvcmRlci1jb2xvclwiKTtcbiAgfVxuXG4gIHRkIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG59XG5cbi50YWJsZS1hbGlnbi1taWRkbGUge1xuXG4gIHRkIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG59XG5cbi50YWJsZS1jbGVhciB7XG4gIHRkIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cbiIsIi8vIFRhYmxlc1xuXG5AbWl4aW4gdGFibGUtcm93LXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGJvcmRlcjogbnVsbCkge1xuICAvLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuICAvLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuICAudGFibGUtI3skc3RhdGV9IHtcbiAgICAmLFxuICAgID4gdGgsXG4gICAgPiB0ZCB7XG4gICAgICBAaWYgbWFwLWhhcy1rZXkoJHlpcS10aGVtZS1tYXAsICRjdXJyZW50LXRoZW1lKSB7XG4gICAgICAgIGNvbG9yOiBjb2xvci15aXEoJGJhY2tncm91bmQsIG1hcC1nZXQobWFwLWdldCgkeWlxLXRoZW1lLW1hcCwgJGN1cnJlbnQtdGhlbWUpLCBcInlpcS10ZXh0LWRhcmtcIiksIG1hcC1nZXQobWFwLWdldCgkeWlxLXRoZW1lLW1hcCwgJGN1cnJlbnQtdGhlbWUpLCBcInlpcS10ZXh0LWxpZ2h0XCIpKTtcbiAgICAgIH1cbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cblxuICAgIEBpZiAkYm9yZGVyICE9IG51bGwge1xuICAgICAgdGgsXG4gICAgICB0ZCxcbiAgICAgIHRoZWFkIHRoLFxuICAgICAgdGJvZHkgKyB0Ym9keSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZXMgZm9yIGAudGFibGUtaG92ZXJgXG4gIC8vIE5vdGU6IHRoaXMgaXMgbm90IGF2YWlsYWJsZSBmb3IgY2VsbHMgb3Igcm93cyB3aXRoaW4gYHRoZWFkYCBvciBgdGZvb3RgLlxuICAudGFibGUtaG92ZXIge1xuICAgICRob3Zlci1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcblxuICAgIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xuXG4gICAgICAgID4gdGQsXG4gICAgICAgID4gdGgge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIudG9hc3Qge1xuICB3aWR0aDogJHRvYXN0LW1heC13aWR0aDtcbiAgbWF4LXdpZHRoOiAkdG9hc3QtbWF4LXdpZHRoO1xuICBvdmVyZmxvdzogaGlkZGVuOyAvLyBjaGVhcCByb3VuZGVkIGNvcm5lcnMgb24gbmVzdGVkIGl0ZW1zXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkdG9hc3QtZm9udC1zaXplKTtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkdG9hc3QtYm9yZGVyLXdpZHRoIHNvbGlkO1xuICBib3gtc2hhZG93OiAkdG9hc3QtYm94LXNoYWRvdztcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xuICBvcGFjaXR5OiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0b2FzdC1ib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgdGhlbWVzKCR0b2FzdC10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwidG9hc3QtY29sb3JcIik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInRvYXN0LWJhY2tncm91bmQtY29sb3JcIik7XG4gICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwidG9hc3QtYm9yZGVyLWNvbG9yXCIpO1xuICB9XG5cbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkdG9hc3QtcGFkZGluZy14O1xuICB9XG5cbiAgJi5zaG93aW5nIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJi5zaG93IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJi5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi50b2FzdC1mdWxsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLnRvYXN0LWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6ICR0b2FzdC1wYWRkaW5nLXkgJHRvYXN0LXBhZGRpbmcteDtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyLWJvdHRvbTogJHRvYXN0LWJvcmRlci13aWR0aCBzb2xpZDtcbiAgQGluY2x1ZGUgdGhlbWVzKCR0b2FzdC10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwidG9hc3QtaGVhZGVyLWNvbG9yXCIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0b2FzdC1oZWFkZXItYmFja2dyb3VuZC1jb2xvclwiKTtcbiAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yXCIpO1xuICB9XG59XG5cbi50b2FzdC1ib2R5IHtcbiAgcGFkZGluZzogJHRvYXN0LXBhZGRpbmcteDsgLy8gYXBwbHkgdG8gYm90aCB2ZXJ0aWNhbCBhbmQgaG9yaXpvbnRhbFxufVxuXG4udG9hc3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICgkc3BhY2VyIC8gNCkgKCRzcGFjZXIgLyAyKTtcblxuICAmLXRvcC1mdWxsLFxuICAmLXRvcC1jZW50ZXIsXG4gICYtdG9wLXJpZ2h0LFxuICAmLXRvcC1sZWZ0LFxuICAmLWJvdHRvbS1mdWxsLFxuICAmLWJvdHRvbS1jZW50ZXIsXG4gICYtYm90dG9tLXJpZ2h0LFxuICAmLWJvdHRvbS1sZWZ0IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogJHppbmRleC10b2FzdGVyO1xuICAgIHdpZHRoOiAkdG9hc3QtbWF4LXdpZHRoO1xuICB9XG5cbiAgJi10b3AtZnVsbCxcbiAgJi10b3AtY2VudGVyLFxuICAmLXRvcC1yaWdodCxcbiAgJi10b3AtbGVmdCB7XG4gICAgdG9wOiAwO1xuICB9XG5cbiAgJi1ib3R0b20tZnVsbCxcbiAgJi1ib3R0b20tY2VudGVyLFxuICAmLWJvdHRvbS1yaWdodCxcbiAgJi1ib3R0b20tbGVmdCB7XG4gICAgYm90dG9tOiAwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cblxuICAmLXRvcC1mdWxsLFxuICAmLWJvdHRvbS1mdWxsIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gICYtdG9wLWNlbnRlcixcbiAgJi1ib3R0b20tY2VudGVyIHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB9XG5cbiAgJi10b3AtZnVsbCxcbiAgJi1ib3R0b20tZnVsbCxcbiAgJi10b3AtcmlnaHQsXG4gICYtYm90dG9tLXJpZ2h0IHtcbiAgICByaWdodDogMDtcbiAgfVxuXG4gICYtdG9wLWZ1bGwsXG4gICYtYm90dG9tLWZ1bGwsXG4gICYtdG9wLWxlZnQsXG4gICYtYm90dG9tLWxlZnQge1xuICAgIGxlZnQ6IDA7XG4gIH1cblxuICAudG9hc3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAoJHNwYWNlciAvIDgpO1xuICAgIG1hcmdpbi1ib3R0b206ICgkc3BhY2VyIC8gOCk7XG4gIH1cbn1cblxuLy8gQWx0ZXJuYXRlIHN0eWxlc1xuLy9cbi8vIEdlbmVyYXRlIGNvbnRleHR1YWwgbW9kaWZpZXIgY2xhc3NlcyBmb3IgY29sb3JpemluZyB0aGUgdG9hc3QuXG5cbkBpbmNsdWRlIHRoZW1lLXZhcmlhbnQoKSB7XG4gIC50b2FzdC0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIHRvYXN0LXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuXG4iLCIvLyBUb2FzdHNcbi8vIHNjc3MtZG9jcy1zdGFydCB0b2FzdFxuJHRvYXN0LW1heC13aWR0aDogICAgICAgICAgICAgICAgMzUwcHggIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy14OiAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy15OiAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtZm9udC1zaXplOiAgICAgICAgICAgICAgICAuODc1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgMCAuMjVyZW0gLjc1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRvYXN0XG5cbi8vIERlZmF1bHQgdGhlbWVcbi8vIHNjc3MtZG9jcy1zdGFydCB0b2FzdC1kZWZhdWx0LXRoZW1lXG4kdG9hc3QtYmFja2dyb3VuZC1jb2xvcjogIHJnYmEoJHdoaXRlLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWNvbG9yOiAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1jb2xvcjogICAgICByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kdG9hc3QtaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3I6ICByZ2JhKCR3aGl0ZSwgLjg1KSAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgIHJnYmEoJGJsYWNrLCAuMDUpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0b2FzdC1kZWZhdWx0LXRoZW1lXG5cbiR0b2FzdC10aGVtZS1tYXA6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiR0b2FzdC10aGVtZS1tYXA6IG1hcC1tZXJnZShcbiAgKFxuICAgIGRlZmF1bHQ6IChcbiAgICAgIFwidG9hc3QtYmFja2dyb3VuZC1jb2xvclwiOiAgICAgICAgICR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yLFxuICAgICAgXCJ0b2FzdC1jb2xvclwiOiAgICAgICAgICAgICAgICAgICAgJHRvYXN0LWNvbG9yLFxuICAgICAgXCJ0b2FzdC1ib3JkZXItY29sb3JcIjogICAgICAgICAgICAgJHRvYXN0LWJvcmRlci1jb2xvcixcbiAgICAgIFwidG9hc3QtaGVhZGVyLWNvbG9yXCI6ICAgICAgICAgICAgICR0b2FzdC1oZWFkZXItY29sb3IsXG4gICAgICBcInRvYXN0LWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yXCI6ICAkdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3IsXG4gICAgICBcInRvYXN0LWhlYWRlci1ib3JkZXItY29sb3JcIjogICAgICAkdG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvclxuICAgIClcbiAgKSxcbiAgJHRvYXN0LXRoZW1lLW1hcFxuKTtcbiIsIkBtaXhpbiB0b2FzdC12YXJpYW50KCRiYWNrZ3JvdW5kKSB7XG4gIGNvbG9yOiBjb2xvci15aXEoJGJhY2tncm91bmQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSk7XG5cbiAgLnRvYXN0LWhlYWRlciB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG4gICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSk7XG4gIH1cbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi50b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAkemluZGV4LXRvb2x0aXA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46ICR0b29sdGlwLW1hcmdpbjtcbiAgLy8gT3VyIHBhcmVudCBlbGVtZW50IGNhbiBiZSBhcmJpdHJhcnkgc2luY2UgdG9vbHRpcHMgYXJlIGJ5IGRlZmF1bHQgaW5zZXJ0ZWQgYXMgYSBzaWJsaW5nIG9mIHRoZWlyIHRhcmdldCBlbGVtZW50LlxuICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxuICBAaW5jbHVkZSByZXNldC10ZXh0KCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkdG9vbHRpcC1mb250LXNpemUpO1xuICAvLyBBbGxvdyBicmVha2luZyB2ZXJ5IGxvbmcgd29yZHMgc28gdGhleSBkb24ndCBvdmVyZmxvdyB0aGUgdG9vbHRpcCdzIGJvdW5kc1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIG9wYWNpdHk6IDA7XG5cbiAgJi5zaG93IHsgb3BhY2l0eTogJHRvb2x0aXAtb3BhY2l0eTsgfVxuXG4gIC50b29sdGlwLWFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIH1cbiAgfVxufVxuXG4lYnMtdG9vbHRpcC10b3AsXG4lYnMtdG9vbHRpcC1ib3R0b20ge1xuICBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgMDtcblxuICAudG9vbHRpcC1hcnJvdyB7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICB9XG59XG5cbiVicy10b29sdGlwLXJpZ2h0LFxuJWJzLXRvb2x0aXAtbGVmdCB7XG4gIHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gIC50b29sdGlwLWFycm93IHtcbiAgICB3aWR0aDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gIH1cbn1cblxuJWJzLXRvb2x0aXAtdG9wIHtcbiAgLnRvb2x0aXAtYXJyb3cge1xuICAgIGJvdHRvbTogMDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbiVicy10b29sdGlwLXJpZ2h0IHtcbiAgLnRvb2x0aXAtYXJyb3cge1xuICAgIGxlZnQ6IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAvIDIpICR0b29sdGlwLWFycm93LWhlaWdodCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuJWJzLXRvb2x0aXAtYm90dG9tIHtcbiAgLnRvb2x0aXAtYXJyb3cge1xuICAgIHRvcDogMDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbiVicy10b29sdGlwLWxlZnQge1xuICAudG9vbHRpcC1hcnJvdyB7XG4gICAgcmlnaHQ6IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvcmRlci13aWR0aDogKCR0b29sdGlwLWFycm93LXdpZHRoIC8gMikgMCAoJHRvb2x0aXAtYXJyb3ctd2lkdGggLyAyKSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4udG9vbHRpcCB7XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAlYnMtdG9vbHRpcC10b3A7XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwicmlnaHRcIl0ge1xuICAgIEBleHRlbmQgJWJzLXRvb2x0aXAtcmlnaHQ7XG4gIH1cbiAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICBAZXh0ZW5kICVicy10b29sdGlwLWJvdHRvbTtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kICVicy10b29sdGlwLWxlZnQ7XG4gIH1cbn1cblxuLy8gV3JhcHBlciBmb3IgdGhlIHRvb2x0aXAgY29udGVudFxuLnRvb2x0aXAtaW5uZXIge1xuICBtYXgtd2lkdGg6ICR0b29sdGlwLW1heC13aWR0aDtcbiAgcGFkZGluZzogJHRvb2x0aXAtcGFkZGluZy15ICR0b29sdGlwLXBhZGRpbmcteDtcbiAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0b29sdGlwLWJvcmRlci1yYWRpdXMpO1xufVxuIiwiLmZhZGUge1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWZhZGUpO1xuXG4gICY6bm90KC5zaG93KSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4uY29sbGFwc2Uge1xuICAmOm5vdCguc2hvdykge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmNvbGxhcHNpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1jb2xsYXBzZSk7XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5mYWRlLWluIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbjtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbn1cblxuLy9cbi8vIENvbXBvbmVudHNcbi8vXG5cbi5jLXdyYXBwZXIge1xuICB0cmFuc2l0aW9uOiBtYXJnaW4gJGxheW91dC10cmFuc2l0aW9uLXNwZWVkO1xufVxuXG4uYy1zaWRlYmFyIHtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAkbGF5b3V0LXRyYW5zaXRpb24tc3BlZWQgJGxheW91dC10cmFuc2l0aW9uLXNwZWVkIC8gMiwgdHJhbnNmb3JtICRsYXlvdXQtdHJhbnNpdGlvbi1zcGVlZCwgbWFyZ2luLWxlZnQgJGxheW91dC10cmFuc2l0aW9uLXNwZWVkLCBtYXJnaW4tcmlnaHQgJGxheW91dC10cmFuc2l0aW9uLXNwZWVkLCB3aWR0aCAkbGF5b3V0LXRyYW5zaXRpb24tc3BlZWQsIHotaW5kZXggMHMgZWFzZSAkbGF5b3V0LXRyYW5zaXRpb24tc3BlZWQ7XG4gICYuYy1zaWRlYmFyLXVuZm9sZGFibGUge1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkbGF5b3V0LXRyYW5zaXRpb24tc3BlZWQsIG1hcmdpbi1sZWZ0ICRsYXlvdXQtdHJhbnNpdGlvbi1zcGVlZCwgbWFyZ2luLXJpZ2h0ICRsYXlvdXQtdHJhbnNpdGlvbi1zcGVlZCwgd2lkdGggJGxheW91dC10cmFuc2l0aW9uLXNwZWVkLCB6LWluZGV4IDBzIGVhc2UgMHM7XG4gIH1cbn1cblxuLmMtbm8tbGF5b3V0LXRyYW5zaXRpb24ge1xuICAuYy13cmFwcGVyLFxuICAuYy1zaWRlYmFyIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuXG4gICAgLmMtc2lkZWJhci1oZWFkZXIsXG4gICAgLmMtc2lkZWJhci1uYXYtdGl0bGUsXG4gICAgLmMtc2lkZWJhci1uYXYtZGl2aWRlcixcbiAgICAuYy1zaWRlYmFyLW5hdi1saW5rLFxuICAgIC5jLXNpZGViYXItbmF2LWljb24sXG4gICAgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24sXG4gICAgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24tdG9nZ2xlLFxuICAgIC5jLXNpZGViYXItbmF2LWRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIsXG4gICAgLmMtc2lkZWJhci1uYXYtZHJvcGRvd24taXRlbXMsXG4gICAgLmMtc2lkZWJhci1uYXYtbGFiZWwsXG4gICAgLmMtc2lkZWJhci1mb290ZXIsXG4gICAgLmMtc2lkZWJhci1taW5pbWl6ZXIgIHtcbiAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5jLW5vLXRyYW5zaXRpb24ge1xuICB0cmFuc2l0aW9uOiBub25lO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXJcblxuLy9cbi8vIEhlYWRpbmdzXG4vL1xuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LFxuLmgxLCAuaDIsIC5oMywgLmg0LCAuaDUsIC5oNiB7XG4gIG1hcmdpbi1ib3R0b206ICRoZWFkaW5ncy1tYXJnaW4tYm90dG9tO1xuICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGhlYWRpbmdzLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xufVxuXG5oMSwgLmgxIHsgQGluY2x1ZGUgZm9udC1zaXplKCRoMS1mb250LXNpemUpOyB9XG5oMiwgLmgyIHsgQGluY2x1ZGUgZm9udC1zaXplKCRoMi1mb250LXNpemUpOyB9XG5oMywgLmgzIHsgQGluY2x1ZGUgZm9udC1zaXplKCRoMy1mb250LXNpemUpOyB9XG5oNCwgLmg0IHsgQGluY2x1ZGUgZm9udC1zaXplKCRoNC1mb250LXNpemUpOyB9XG5oNSwgLmg1IHsgQGluY2x1ZGUgZm9udC1zaXplKCRoNS1mb250LXNpemUpOyB9XG5oNiwgLmg2IHsgQGluY2x1ZGUgZm9udC1zaXplKCRoNi1mb250LXNpemUpOyB9XG5cbi5sZWFkIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRsZWFkLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkbGVhZC1mb250LXdlaWdodDtcbn1cblxuLy8gVHlwZSBkaXNwbGF5IGNsYXNzZXNcbi5kaXNwbGF5LTEge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGRpc3BsYXkxLXNpemUpO1xuICBmb250LXdlaWdodDogJGRpc3BsYXkxLXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuLmRpc3BsYXktMiB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTItc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTItd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG4uZGlzcGxheS0zIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkaXNwbGF5My1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5My13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cbi5kaXNwbGF5LTQge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGRpc3BsYXk0LXNpemUpO1xuICBmb250LXdlaWdodDogJGRpc3BsYXk0LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuXG5cbi8vXG4vLyBIb3Jpem9udGFsIHJ1bGVzXG4vL1xuXG5ociB7XG4gIG1hcmdpbi10b3A6ICRoci1tYXJnaW4teTtcbiAgbWFyZ2luLWJvdHRvbTogJGhyLW1hcmdpbi15O1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci10b3A6ICRoci1ib3JkZXItd2lkdGggc29saWQ7XG4gIEBpbmNsdWRlIHRoZW1lcygkdHlwb2dyYXBoeS10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImhyLWJvcmRlci1jb2xvclwiKTtcbiAgfVxufVxuXG4vL1xuLy8gVmVydGljYWwgcnVsZXNcbi8vXG5cbi5jLXZyIHtcbiAgd2lkdGg6ICR2ci13aWR0aDtcbiAgQGluY2x1ZGUgdGhlbWVzKCR0eXBvZ3JhcGh5LXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcInZyLWJnXCIpO1xuICB9XG59XG5cbi8vXG4vLyBFbXBoYXNpc1xuLy9cblxuc21hbGwsXG4uc21hbGwge1xuICBAaW5jbHVkZSBmb250LXNpemUoJHNtYWxsLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xufVxuXG5tYXJrLFxuLm1hcmsge1xuICBwYWRkaW5nOiAkbWFyay1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFyay1iZztcbn1cblxuXG4vL1xuLy8gTGlzdHNcbi8vXG5cbi5saXN0LXVuc3R5bGVkIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuXG4vLyBJbmxpbmUgdHVybnMgbGlzdCBpdGVtcyBpbnRvIGlubGluZS1ibG9ja1xuLmxpc3QtaW5saW5lIHtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuLmxpc3QtaW5saW5lLWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRsaXN0LWlubGluZS1wYWRkaW5nO1xuICB9XG59XG5cblxuLy9cbi8vIE1pc2Ncbi8vXG5cbi8vIEJ1aWxkcyBvbiBgYWJicmBcbi5pbml0aWFsaXNtIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDkwJSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi8vIEJsb2NrcXVvdGVzXG4uYmxvY2txdW90ZSB7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXI7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmxvY2txdW90ZS1mb250LXNpemUpO1xufVxuXG4uYmxvY2txdW90ZS1mb290ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRibG9ja3F1b3RlLXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkYmxvY2txdW90ZS1zbWFsbC1jb2xvcjtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFwyMDE0XFwwMEEwXCI7IC8vIGVtIGRhc2gsIG5ic3BcbiAgfVxufVxuIiwiLy9cbi8vIExvYWRpbmcgYnV0dG9uXG4vL1xuXG4uYy1sb2FkaW5nLWJ1dHRvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmMtbG9hZGluZy1idXR0b24tcHJvZ3Jlc3Mge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5jLWxvYWRpbmctYnV0dG9uLXNwaW5uZXIge1xuICBtYXJnaW4tcmlnaHQ6ICRzcGFjZXI7XG4gIG1hcmdpbi1sZWZ0OiAtICgkc3BhY2VyICogMik7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG1hcmdpbiAkbGF5b3V0LXRyYW5zaXRpb24tc3BlZWQsIG9wYWNpdHkgJGxheW91dC10cmFuc2l0aW9uLXNwZWVkLCBib3JkZXIgJGxheW91dC10cmFuc2l0aW9uLXNwZWVkO1xufVxuXG4uYy1sb2FkaW5nLWJ1dHRvbi1sb2FkaW5nIHtcblxuICAuYy1sb2FkaW5nLWJ1dHRvbi1zcGlubmVyIHtcbiAgICB3aWR0aDogMXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG4iLCIvL1xuLy8gTXVsdGkgc2VsZWN0XG4vL1xuXG4vLyAuYy1tdWx0aS1zZWxlY3Rcbi8vIC5jLW11bHRpLXNlbGVjdC1zZWFyY2hcbi8vIC5jLW11bHRpLXNlbGVjdC10YWdzXG4vLyAuYy1tdWx0aS1zZWxlY3Qtb3B0aW9uXG4vLyAuYy1tdWx0aS1zZWxlY3Qtb3B0aW9uc1xuLy8gLmMtbXVsdGktc2VsZWN0LW9wdGdyb3VwXG4vLyAuYy1tdWx0aS1zZWxlY3Qtb3B0Z3JvdXAtbGFiZWxcblxuLmMtbXVsdGktc2VsZWN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAkYy1tdWx0aS1zZWxlY3QtaGVpZ2h0O1xuICBwYWRkaW5nOiAkYy1tdWx0aS1zZWxlY3QtcGFkZGluZy15ICgkYy1tdWx0aS1zZWxlY3QtcGFkZGluZy14ICsgJGMtbXVsdGktc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAkYy1tdWx0aS1zZWxlY3QtcGFkZGluZy15ICRjLW11bHRpLXNlbGVjdC1wYWRkaW5nLXg7XG4gIGZvbnQtZmFtaWx5OiAkYy1tdWx0aS1zZWxlY3QtZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGMtbXVsdGktc2VsZWN0LWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRjLW11bHRpLXNlbGVjdC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRjLW11bHRpLXNlbGVjdC1saW5lLWhlaWdodDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYm9yZGVyOiAkYy1tdWx0aS1zZWxlY3QtYm9yZGVyLXdpZHRoIHNvbGlkO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjLW11bHRpLXNlbGVjdC1ib3JkZXItcmFkaXVzLCAwKTtcbiAgLy8gQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXNlbGVjdC1ib3gtc2hhZG93KTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgQGluY2x1ZGUgdGhlbWVzKCRjLW11bHRpLXNlbGVjdC10aGVtZS1tYXApIHtcbiAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImMtbXVsdGktc2VsZWN0LWNvbG9yXCIpO1xuICAgIGJhY2tncm91bmQ6IHRoZW1lcy1nZXQtdmFsdWUoXCJjLW11bHRpLXNlbGVjdC1iZ1wiKSB0aGVtZXMtZ2V0LXZhbHVlKFwiYy1tdWx0aS1zZWxlY3QtYmFja2dyb3VuZFwiKTtcbiAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjLW11bHRpLXNlbGVjdC1ib3JkZXItY29sb3JcIik7XG4gIH1cblxuICAmOmRpc2FibGVkLFxuICAmLmMtZGlzYWJsZWQge1xuICAgIEBpbmNsdWRlIHRoZW1lcygkYy1tdWx0aS1zZWxlY3QtdGhlbWUtbWFwKSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImMtbXVsdGktc2VsZWN0LWRpc2FibGVkLWNvbG9yXCIpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImMtbXVsdGktc2VsZWN0LWRpc2FibGVkLWJnXCIpO1xuICAgIH1cbiAgfVxufVxuXG4uYy1tdWx0aS1zZWxlY3Qtc2VsZWN0aW9uLXRhZ3Mge1xuICBwYWRkaW5nOiAycHggKCRjLW11bHRpLXNlbGVjdC1wYWRkaW5nLXggKyAkYy1tdWx0aS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcpIDJweCAycHg7XG5cbiAgJjpub3QoLmMtbXVsdGktc2VsZWN0LWlubGluZSkge1xuICAgIC5jLW11bHRpLXNlbGVjdC1zZWFyY2gge1xuICAgICAgaGVpZ2h0OiAkYy1tdWx0aS1zZWxlY3QtdGFnLWhlaWdodCArIDRweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkYy1tdWx0aS1zZWxlY3QtcGFkZGluZy14O1xuXG4gICAgICAmW3NpemVdIHtcbiAgICAgICAgaGVpZ2h0OiAkYy1tdWx0aS1zZWxlY3QtdGFnLWhlaWdodDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmMtbXVsdGktc2VsZWN0LXNlbGVjdGlvbiB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgcGFkZGluZzogMDtcbn1cblxuLmMtbXVsdGktc2VsZWN0LXNlbGVjdGlvbi1jbGVhbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDEuNXJlbTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aWR0aDogMnJlbTtcbiAgaGVpZ2h0OiAycmVtO1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvcGFjaXR5OiAuNTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXG4gIEBpbmNsdWRlIHRoZW1lcygkY2xvc2UtdGhlbWUtbWFwLCAkY3JlYXRlOiBwYXJlbnQpIHtcbiAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImNsb3NlLWNvbG9yXCIpO1xuICAgIHRleHQtc2hhZG93OiB0aGVtZXMtZ2V0LXZhbHVlKFwiY2xvc2UtdGV4dC1zaGFkb3dcIik7XG4gIH1cblxuICAvLyBPdmVycmlkZSA8YT4ncyBob3ZlciBzdHlsZVxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGluY2x1ZGUgdGhlbWVzKCRjbG9zZS10aGVtZS1tYXAsICRjcmVhdGU6IHBhcmVudCkge1xuICAgICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjbG9zZS1jb2xvclwiKTtcbiAgICB9XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpIHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIG9wYWNpdHk6IC43NTtcbiAgICB9XG4gIH1cbn1cblxuLmMtbXVsdGktc2VsZWN0LXNlYXJjaCB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBib3JkZXI6IDA7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYy1tdWx0aS1zZWxlY3Qtc2VhcmNoLWJvcmRlci1yYWRpdXMsIDApO1xuXG4gIEBpbmNsdWRlIHRoZW1lcygkYy1tdWx0aS1zZWxlY3QtdGhlbWUtbWFwKSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjLW11bHRpLXNlbGVjdC1zZWFyY2gtY29sb3JcIik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImMtbXVsdGktc2VsZWN0LXNlYXJjaC1iZ1wiKTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cblxuICAmW3NpemVdIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1hcmdpbi1sZWZ0OiAkYy1tdWx0aS1zZWxlY3QtcGFkZGluZy14O1xuICB9XG59XG5cbi5jLW11bHRpLXNlbGVjdC1vcHRpb25zIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IG5vbmU7IC8vIG5vbmUgYnkgZGVmYXVsdCwgYnV0IGJsb2NrIG9uIFwib3BlblwiIG9mIHRoZSBtZW51XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJGMtbXVsdGktc2VsZWN0LW9wdGlvbnMtcGFkZGluZy15ICRjLW11bHRpLXNlbGVjdC1vcHRpb25zLXBhZGRpbmcteDtcbiAgbWFyZ2luLXRvcDogJGMtbXVsdGktc2VsZWN0LW9wdGlvbnMtbWFyZ2luLXRvcDtcbiAgZm9udC1zaXplOiAkYy1tdWx0aS1zZWxlY3Qtb3B0aW9ucy1mb250LXNpemU7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEVuc3VyZXMgcHJvcGVyIGFsaWdubWVudCBpZiBwYXJlbnQgaGFzIGl0IGNoYW5nZWQgKGUuZy4sIG1vZGFsIGZvb3RlcilcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkYy1tdWx0aS1zZWxlY3Qtb3B0aW9ucy1ib3JkZXItd2lkdGggc29saWQ7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGMtbXVsdGktc2VsZWN0LW9wdGlvbnMtYm9yZGVyLXJhZGl1cyk7XG4gIC8vIEBpbmNsdWRlIGJveC1zaGFkb3coJGRyb3Bkb3duLWJveC1zaGFkb3cpO1xuXG4gIEBpbmNsdWRlIHRoZW1lcygkYy1tdWx0aS1zZWxlY3QtdGhlbWUtbWFwKSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjLW11bHRpLXNlbGVjdC1vcHRpb25zLWNvbG9yXCIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjLW11bHRpLXNlbGVjdC1vcHRpb25zLWJnXCIpO1xuICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImMtbXVsdGktc2VsZWN0LW9wdGlvbnMtYm9yZGVyLWNvbG9yXCIpO1xuICB9XG4gIEBpbmNsdWRlIGVsZXZhdGlvbig0KTtcbn1cblxuLmMtbXVsdGktc2VsZWN0LW9wdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogJGMtbXVsdGktc2VsZWN0LW9wdGlvbi1wYWRkaW5nLXkgJGMtbXVsdGktc2VsZWN0LW9wdGlvbi1wYWRkaW5nLXggJGMtbXVsdGktc2VsZWN0LW9wdGlvbi1wYWRkaW5nLXkgKCRjLW11bHRpLXNlbGVjdC1vcHRpb24tcGFkZGluZy14ICsgJGMtbXVsdGktc2VsZWN0LWluZGljYXRvci1zaXplKTtcbiAgLy8gcGFkZGluZy1sZWZ0OiAycmVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDJweDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGMtbXVsdGktc2VsZWN0LW9wdGlvbi1ib3JkZXItcmFkaXVzLCAwKTtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgLy8gQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGRyb3Bkb3duLWxpbmstaG92ZXItYmcpO1xuXG4gICAgQGluY2x1ZGUgdGhlbWVzKCRjLW11bHRpLXNlbGVjdC10aGVtZS1tYXApIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiYy1tdWx0aS1zZWxlY3Qtb3B0aW9uLWhvdmVyLWNvbG9yXCIpO1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodGhlbWVzLWdldC12YWx1ZShcImMtbXVsdGktc2VsZWN0LW9wdGlvbi1ob3Zlci1iZ1wiKSk7XG4gICAgfVxuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgdGhlbWVzKCRjLW11bHRpLXNlbGVjdC10aGVtZS1tYXApIHtcbiAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiYy1tdWx0aS1zZWxlY3Qtb3B0aW9uLWRpc2FibGVkLWNvbG9yXCIpO1xuICAgIH1cbiAgfVxuXG4gICY6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLjdyZW07XG4gICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgIGxlZnQ6ICRjLW11bHRpLXNlbGVjdC1vcHRpb24tcGFkZGluZy14IC8gMjtcbiAgICB9XG4gICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgIHJpZ2h0OiAkYy1tdWx0aS1zZWxlY3Qtb3B0aW9uLXBhZGRpbmcteCAvIDI7XG4gICAgfVxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkYy1tdWx0aS1zZWxlY3QtaW5kaWNhdG9yLXNpemU7XG4gICAgaGVpZ2h0OiAkYy1tdWx0aS1zZWxlY3QtaW5kaWNhdG9yLXNpemU7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXI6IHNvbGlkICRjLW11bHRpLXNlbGVjdC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoO1xuXG4gICAgQGluY2x1ZGUgdGhlbWVzKCRjLW11bHRpLXNlbGVjdC10aGVtZS1tYXApIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjLW11bHRpLXNlbGVjdC1pbmRpY2F0b3ItYmdcIik7XG4gICAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjLW11bHRpLXNlbGVjdC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yXCIpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjLW11bHRpLXNlbGVjdC1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLjdyZW07XG4gICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgIGxlZnQ6ICRjLW11bHRpLXNlbGVjdC1vcHRpb24tcGFkZGluZy14IC8gMjtcbiAgICB9XG4gICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgIHJpZ2h0OiAkYy1tdWx0aS1zZWxlY3Qtb3B0aW9uLXBhZGRpbmcteCAvIDI7XG4gICAgfVxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkYy1tdWx0aS1zZWxlY3QtaW5kaWNhdG9yLXNpemU7XG4gICAgaGVpZ2h0OiAkYy1tdWx0aS1zZWxlY3QtaW5kaWNhdG9yLXNpemU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kOiBuby1yZXBlYXQgNTAlIC8gI3skYy1tdWx0aS1zZWxlY3QtaW5kaWNhdG9yLWJnLXNpemV9O1xuICB9XG5cbiAgJi5jLW11bHRpLXNlbGVjdGVkIHtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGMtbXVsdGktc2VsZWN0LXRoZW1lLW1hcCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImMtbXVsdGktc2VsZWN0LW9wdGlvbi1zZWxlY3RlZC1iZ1wiKTtcbiAgICB9XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIHRoZW1lcygkYy1tdWx0aS1zZWxlY3QtdGhlbWUtbWFwKSB7XG4gICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiYy1tdWx0aS1zZWxlY3Qtb3B0aW9uLWluZGljYXRvci1jaGVja2VkLWNvbG9yXCIpO1xuICAgICAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjLW11bHRpLXNlbGVjdC1vcHRpb24taW5kaWNhdG9yLWNoZWNrZWQtYm9yZGVyLWNvbG9yXCIpO1xuICAgICAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh0aGVtZXMtZ2V0LXZhbHVlKFwiYy1tdWx0aS1zZWxlY3Qtb3B0aW9uLWluZGljYXRvci1jaGVja2VkLWJnXCIpKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRjLW11bHRpLXNlbGVjdC10aGVtZS1tYXApIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2Zyh0aGVtZXMtZ2V0LXZhbHVlKFwiYy1tdWx0aS1zZWxlY3Qtb3B0aW9uLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWRcIikpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uYy1tdWx0aS1zZWxlY3Qtb3B0Z3JvdXAtbGFiZWwge1xuICBwYWRkaW5nOiAkYy1tdWx0aS1zZWxlY3Qtb3B0aW9uLXBhZGRpbmcteSAoJGMtbXVsdGktc2VsZWN0LW9wdGlvbi1wYWRkaW5nLXggLyAyKTtcbiAgZm9udC13ZWlnaHQ6ICRjLW11bHRpLXNlbGVjdC1vcHRncm91cC1sYWJlbC1mb250LXdlaWdodDtcbn1cblxuLmMtbXVsdGktc2VsZWN0LW9wdGlvbnMtZW1wdHl7XG4gIHBhZGRpbmc6ICRjLW11bHRpLXNlbGVjdC1vcHRpb24tcGFkZGluZy15ICRjLW11bHRpLXNlbGVjdC1vcHRpb24tcGFkZGluZy14O1xufVxuXG5cbi5jLW11bHRpLXNlbGVjdC10YWcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogJGMtbXVsdGktc2VsZWN0LXRhZy1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRjLW11bHRpLXNlbGVjdC10YWctcGFkZGluZy15ICRjLW11bHRpLXNlbGVjdC10YWctcGFkZGluZy14O1xuICBtYXJnaW46ICRjLW11bHRpLXNlbGVjdC10YWctbWFyZ2luO1xuICBib3JkZXI6ICRjLW11bHRpLXNlbGVjdC10YWctYm9yZGVyLXdpZHRoIHNvbGlkO1xuICBib3JkZXItcmFkaXVzOiAkYy1tdWx0aS1zZWxlY3QtdGFnLWJvcmRlci1yYWRpdXM7XG5cbiAgQGluY2x1ZGUgdGhlbWVzKCRjLW11bHRpLXNlbGVjdC10aGVtZS1tYXApIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiYy1tdWx0aS1zZWxlY3QtdGFnLWJnXCIpO1xuICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImMtbXVsdGktc2VsZWN0LXRhZy1ib3JkZXItY29sb3JcIik7XG4gIH1cbn1cblxuLmMtbXVsdGktc2VsZWN0LXRhZy1kZWxldGUge1xuICBtYXJnaW4tbGVmdDogNnB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5jLW11bHRpLXNlbGVjdC5jLXNob3cge1xuXG4gIEBpbmNsdWRlIHRoZW1lcygkYy1tdWx0aS1zZWxlY3QtdGhlbWUtbWFwKSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJjLW11bHRpLXNlbGVjdC1mb2N1cy1jb2xvclwiKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiYy1tdWx0aS1zZWxlY3QtZm9jdXMtYmdcIik7XG4gICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiYy1tdWx0aS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yXCIpO1xuICB9XG5cbiAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYy1tdWx0aS1zZWxlY3QtYm94LXNoYWRvdywgJGMtbXVsdGktc2VsZWN0LWZvY3VzLWJveC1zaGFkb3cpO1xuICB9IEBlbHNlIHtcbiAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgYm94LXNoYWRvdzogJGMtbXVsdGktc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cblxuICAuYy1tdWx0aS1zZWxlY3Qtc2VhcmNoW3NpemVdIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gIH1cblxuICAuYy1tdWx0aS1zZWxlY3Qtb3B0aW9ucyB7XG4gICAgei1pbmRleDogJHppbmRleC1kcm9wZG93bjtcbiAgICBkaXNwbGF5OiBpbml0aWFsO1xuICB9XG59XG5cblxuLmMtbXVsdGktc2VsZWN0LWlubGluZSB7XG4gIHBhZGRpbmc6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteTtcbiAgQGluY2x1ZGUgdGhlbWVzKCRjLW11bHRpLXNlbGVjdC10aGVtZS1tYXApIHtcbiAgICBiYWNrZ3JvdW5kOiB0aGVtZXMtZ2V0LXZhbHVlKFwiYy1tdWx0aS1zZWxlY3QtYmdcIik7XG4gIH1cblxuICAuYy1tdWx0aS1zZWxlY3Qtc2VsZWN0aW9ue1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206ICRjLW11bHRpLXNlbGVjdC1wYWRkaW5nLXk7XG4gIH1cblxuICAmOm5vdCguYy1tdWx0aS1zZWxlY3Qtc2VsZWN0aW9uLXRhZ3MpIHtcbiAgICAuYy1tdWx0aS1zZWxlY3Qtc2VsZWN0aW9ue1xuICAgICAgcGFkZGluZzogJGMtbXVsdGktc2VsZWN0LXBhZGRpbmcteTtcbiAgICB9XG4gIH1cblxuICAuYy1tdWx0aS1zZWxlY3Qtc2VhcmNoIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAkYy1tdWx0aS1zZWxlY3QtcGFkZGluZy15ICRjLW11bHRpLXNlbGVjdC1wYWRkaW5nLXg7XG4gICAgYm9yZGVyOiAkYy1tdWx0aS1zZWxlY3Qtc2VhcmNoLWJvcmRlci13aWR0aCBzb2xpZDtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGMtbXVsdGktc2VsZWN0LXRoZW1lLW1hcCkge1xuICAgICAgYm9yZGVyLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiYy1tdWx0aS1zZWxlY3Qtc2VhcmNoLWJvcmRlci1jb2xvclwiKTtcbiAgICB9XG4gIH1cbiAgLmMtbXVsdGktc2VsZWN0LW9wdGlvbnMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAwO1xuICAgIEBpbmNsdWRlIGVsZXZhdGlvbigwKTtcbiAgfVxufVxuIiwiJGMtbXVsdGktc2VsZWN0LWhlaWdodDogICAgICAgICAgICAgJGlucHV0LWhlaWdodCAhZGVmYXVsdDtcbiRjLW11bHRpLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZzogIDFyZW0gIWRlZmF1bHQ7IC8vIEV4dHJhIHBhZGRpbmcgdG8gYWNjb3VudCBmb3IgdGhlIHByZXNlbmNlIG9mIHRoZSBiYWNrZ3JvdW5kLWltYWdlIGJhc2VkIGluZGljYXRvclxuJGMtbXVsdGktc2VsZWN0LXBhZGRpbmcteTogICAgICAgICAgJGlucHV0LXBhZGRpbmcteSAhZGVmYXVsdDtcbiRjLW11bHRpLXNlbGVjdC1wYWRkaW5nLXg6ICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cbiRjLW11bHRpLXNlbGVjdC1mb250LWZhbWlseTogICAgICAgICRpbnB1dC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRjLW11bHRpLXNlbGVjdC1mb250LXNpemU6ICAgICAgICAgICRpbnB1dC1mb250LXNpemUgIWRlZmF1bHQ7XG4kYy1tdWx0aS1zZWxlY3QtZm9udC13ZWlnaHQ6ICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kYy1tdWx0aS1zZWxlY3QtbGluZS1oZWlnaHQ6ICAgICAgICAkaW5wdXQtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRjLW11bHRpLXNlbGVjdC1iZy1zaXplOiAgICAgICAgICAgIDhweCAxMHB4ICFkZWZhdWx0OyAvLyBJbiBwaXhlbHMgYmVjYXVzZSBpbWFnZSBkaW1lbnNpb25zXG5cbiRjLW11bHRpLXNlbGVjdC1ib3JkZXItd2lkdGg6ICAgJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjLW11bHRpLXNlbGVjdC1ib3JkZXItcmFkaXVzOiAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRjLW11bHRpLXNlbGVjdC1ib3gtc2hhZG93OiAgICAgICAgaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRjLW11bHRpLXNlbGVjdC1mb2N1cy13aWR0aDogICAgICAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGMtbXVsdGktc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c6ICAwIDAgMCAkYy1tdWx0aS1zZWxlY3QtZm9jdXMtd2lkdGggJGlucHV0LWJ0bi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcblxuJGMtbXVsdGktc2VsZWN0LXRhZy1oZWlnaHQ6ICAgICAgICAgMjVweCAhZGVmYXVsdDtcbiRjLW11bHRpLXNlbGVjdC10YWctYm9yZGVyLXdpZHRoOiAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kYy1tdWx0aS1zZWxlY3QtdGFnLWJvcmRlci1yYWRpdXM6ICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjLW11bHRpLXNlbGVjdC10YWctcGFkZGluZy15OiAgICAgIDAgIWRlZmF1bHQ7XG4kYy1tdWx0aS1zZWxlY3QtdGFnLXBhZGRpbmcteDogICAgICAuNXJlbSAhZGVmYXVsdDtcbiRjLW11bHRpLXNlbGVjdC10YWctbWFyZ2luOiAgICAgICAgIDJweCAhZGVmYXVsdDtcblxuJGMtbXVsdGktc2VsZWN0LXNlYXJjaC1ib3JkZXItd2lkdGg6ICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kYy1tdWx0aS1zZWxlY3Qtc2VhcmNoLWJvcmRlci1yYWRpdXM6ICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGMtbXVsdGktc2VsZWN0LW9wdGlvbnMtcGFkZGluZy15OiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGMtbXVsdGktc2VsZWN0LW9wdGlvbnMtcGFkZGluZy14OiAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRjLW11bHRpLXNlbGVjdC1vcHRpb25zLW1hcmdpbi10b3A6ICAgICAuNjI1cmVtICFkZWZhdWx0O1xuJGMtbXVsdGktc2VsZWN0LW9wdGlvbnMtZm9udC1zaXplOiAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRjLW11bHRpLXNlbGVjdC1vcHRpb25zLWJvcmRlci1yYWRpdXM6ICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjLW11bHRpLXNlbGVjdC1vcHRpb25zLWJvcmRlci13aWR0aDogICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYy1tdWx0aS1zZWxlY3Qtb3B0aW9uLXBhZGRpbmcteTogICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGMtbXVsdGktc2VsZWN0LW9wdGlvbi1wYWRkaW5nLXg6ICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGMtbXVsdGktc2VsZWN0LWluZGljYXRvci1zaXplOiAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGMtbXVsdGktc2VsZWN0LWluZGljYXRvci1iZy1zaXplOiAgICAgICA1MCUgNTAlICFkZWZhdWx0O1xuJGMtbXVsdGktc2VsZWN0LWluZGljYXRvci1ib3JkZXItd2lkdGg6ICAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGMtbXVsdGktc2VsZWN0LW9wdGlvbi1ib3JkZXItcmFkaXVzOiAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGMtbXVsdGktc2VsZWN0LWNoZWNrYm94LWluZGljYXRvci1ib3JkZXItcmFkaXVzOiAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRjLW11bHRpLXNlbGVjdC1vcHRncm91cC1sYWJlbC1mb250LXdlaWdodDogICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG5cbi8vIERlZmF1bHQgdGhlbWVcblxuJGMtbXVsdGktc2VsZWN0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kYy1tdWx0aS1zZWxlY3QtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRjLW11bHRpLXNlbGVjdC1iZzogICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGMtbXVsdGktc2VsZWN0LWRpc2FibGVkLWJnOiAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kYy1tdWx0aS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yOiAgICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiRjLW11bHRpLXNlbGVjdC1pbmRpY2F0b3I6ICAgICAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nNCcgaGVpZ2h0PSc1JyB2aWV3Qm94PScwIDAgNCA1Jz48cGF0aCBmaWxsPScjeyRjLW11bHRpLXNlbGVjdC1pbmRpY2F0b3ItY29sb3J9JyBkPSdNMiAwTDAgMmg0em0wIDVMMCAzaDR6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGMtbXVsdGktc2VsZWN0LWluZGljYXRvci1iZzogICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kYy1tdWx0aS1zZWxlY3QtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjogICRncmF5LTUwMCAhZGVmYXVsdDtcbiRjLW11bHRpLXNlbGVjdC1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgZXNjYXBlLXN2ZygkYy1tdWx0aS1zZWxlY3QtaW5kaWNhdG9yKSBuby1yZXBlYXQgcmlnaHQgJGMtbXVsdGktc2VsZWN0LXBhZGRpbmcteCBjZW50ZXIgLyAkYy1tdWx0aS1zZWxlY3QtYmctc2l6ZSAhZGVmYXVsdDsgLy8gVXNlZCBzbyB3ZSBjYW4gaGF2ZSBtdWx0aXBsZSBiYWNrZ3JvdW5kIGVsZW1lbnRzIChlLmcuLCBhcnJvdyBhbmQgZmVlZGJhY2sgaWNvbilcbiRjLW11bHRpLXNlbGVjdC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGMtbXVsdGktc2VsZWN0LWZvY3VzLWJnOiAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRjLW11bHRpLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I6ICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAyNSUpICFkZWZhdWx0O1xuJGMtbXVsdGktc2VsZWN0LWZvY3VzLWNvbG9yOiAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcblxuJGMtbXVsdGktc2VsZWN0LXRhZy1iZzogICAgICAgICAgICAgdGhlbWUtY29sb3IoXCJsaWdodFwiKSAhZGVmYXVsdDtcbiRjLW11bHRpLXNlbGVjdC10YWctYm9yZGVyLWNvbG9yOiAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRjLW11bHRpLXNlbGVjdC1zZWFyY2gtY29sb3I6ICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGMtbXVsdGktc2VsZWN0LXNlYXJjaC1iZzogICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kYy1tdWx0aS1zZWxlY3Qtc2VhcmNoLWJvcmRlci1jb2xvcjogICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRjLW11bHRpLXNlbGVjdC1vcHRpb25zLWNvbG9yOiAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGMtbXVsdGktc2VsZWN0LW9wdGlvbnMtYmc6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGMtbXVsdGktc2VsZWN0LW9wdGlvbnMtYm9yZGVyLWNvbG9yOiAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGMtbXVsdGktc2VsZWN0LW9wdGlvbi1ob3Zlci1jb2xvcjogICAgIGRhcmtlbigkZ3JheS05MDAsIDUlKSAhZGVmYXVsdDtcbiRjLW11bHRpLXNlbGVjdC1vcHRpb24taG92ZXItYmc6ICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kYy1tdWx0aS1zZWxlY3Qtb3B0aW9uLWRpc2FibGVkLWNvbG9yOiAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGMtbXVsdGktc2VsZWN0LW9wdGlvbi1zZWxlY3RlZC1iZzogICAgIHRoZW1lLWNvbG9yKFwibGlnaHRcIikgIWRlZmF1bHQ7XG5cbiRjLW11bHRpLXNlbGVjdC1vcHRpb24taW5kaWNhdG9yLWNoZWNrZWQtY29sb3I6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGMtbXVsdGktc2VsZWN0LW9wdGlvbi1pbmRpY2F0b3ItY2hlY2tlZC1iZzogICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kYy1tdWx0aS1zZWxlY3Qtb3B0aW9uLWluZGljYXRvci1jaGVja2VkLWJvcmRlci1jb2xvcjogICAkYy1tdWx0aS1zZWxlY3Qtb3B0aW9uLWluZGljYXRvci1jaGVja2VkLWJnICFkZWZhdWx0O1xuJGMtbXVsdGktc2VsZWN0LW9wdGlvbi1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1jaGVja2VkOiAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBmaWxsPScjeyRjLW11bHRpLXNlbGVjdC1vcHRpb24taW5kaWNhdG9yLWNoZWNrZWQtY29sb3J9JyBkPSdNNi41NjQuNzVsLTMuNTkgMy42MTItMS41MzgtMS41NUwwIDQuMjZsMi45NzQgMi45OUw4IDIuMTkzeicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGMtbXVsdGktc2VsZWN0LXRoZW1lLW1hcDogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGMtbXVsdGktc2VsZWN0LXRoZW1lLW1hcDogbWFwLW1lcmdlKFxuICAoXG4gICAgZGVmYXVsdDogKFxuICAgICAgXCJjLW11bHRpLXNlbGVjdC1jb2xvclwiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGMtbXVsdGktc2VsZWN0LWNvbG9yLFxuICAgICAgXCJjLW11bHRpLXNlbGVjdC1iZ1wiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGMtbXVsdGktc2VsZWN0LWJnLFxuICAgICAgXCJjLW11bHRpLXNlbGVjdC1iYWNrZ3JvdW5kXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGMtbXVsdGktc2VsZWN0LWJhY2tncm91bmQsXG4gICAgICBcImMtbXVsdGktc2VsZWN0LWJvcmRlci1jb2xvclwiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkYy1tdWx0aS1zZWxlY3QtYm9yZGVyLWNvbG9yLFxuICAgICAgXCJjLW11bHRpLXNlbGVjdC1mb2N1cy1iZ1wiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGMtbXVsdGktc2VsZWN0LWZvY3VzLWJnLFxuICAgICAgXCJjLW11bHRpLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3JcIjogICAgICAgICAgICAgICAgICAgICAgJGMtbXVsdGktc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcixcbiAgICAgIFwiYy1tdWx0aS1zZWxlY3QtZm9jdXMtY29sb3JcIjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICRjLW11bHRpLXNlbGVjdC1mb2N1cy1jb2xvcixcbiAgICAgIFwiYy1tdWx0aS1zZWxlY3QtdGFnLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRjLW11bHRpLXNlbGVjdC10YWctYmcsXG4gICAgICBcImMtbXVsdGktc2VsZWN0LXRhZy1ib3JkZXItY29sb3JcIjogICAgICAgICAgICAgICAgICAgICAgICAkYy1tdWx0aS1zZWxlY3QtdGFnLWJvcmRlci1jb2xvcixcbiAgICAgIFwiYy1tdWx0aS1zZWxlY3QtZGlzYWJsZWQtY29sb3JcIjogICAgICAgICAgICAgICAgICAgICAgICAgICRjLW11bHRpLXNlbGVjdC1kaXNhYmxlZC1jb2xvcixcbiAgICAgIFwiYy1tdWx0aS1zZWxlY3QtZGlzYWJsZWQtYmdcIjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICRjLW11bHRpLXNlbGVjdC1kaXNhYmxlZC1iZyxcbiAgICAgIFwiYy1tdWx0aS1zZWxlY3Qtc2VhcmNoLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRjLW11bHRpLXNlbGVjdC1zZWFyY2gtY29sb3IsXG4gICAgICBcImMtbXVsdGktc2VsZWN0LXNlYXJjaC1iZ1wiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkYy1tdWx0aS1zZWxlY3Qtc2VhcmNoLWJnLFxuICAgICAgXCJjLW11bHRpLXNlbGVjdC1zZWFyY2gtYm9yZGVyLWNvbG9yXCI6ICAgICAgICAgICAgICAgICAgICAgJGMtbXVsdGktc2VsZWN0LXNlYXJjaC1ib3JkZXItY29sb3IsXG4gICAgICBcImMtbXVsdGktc2VsZWN0LW9wdGlvbnMtY29sb3JcIjogICAgICAgICAgICAgICAgICAgICAgICAgICAkYy1tdWx0aS1zZWxlY3Qtb3B0aW9ucy1jb2xvcixcbiAgICAgIFwiYy1tdWx0aS1zZWxlY3Qtb3B0aW9ucy1iZ1wiOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRjLW11bHRpLXNlbGVjdC1vcHRpb25zLWJnLFxuICAgICAgXCJjLW11bHRpLXNlbGVjdC1vcHRpb25zLWJvcmRlci1jb2xvclwiOiAgICAgICAgICAgICAgICAgICAgJGMtbXVsdGktc2VsZWN0LW9wdGlvbnMtYm9yZGVyLWNvbG9yLFxuICAgICAgXCJjLW11bHRpLXNlbGVjdC1vcHRpb24taG92ZXItY29sb3JcIjogICAgICAgICAgICAgICAgICAgICAgJGMtbXVsdGktc2VsZWN0LW9wdGlvbi1ob3Zlci1jb2xvcixcbiAgICAgIFwiYy1tdWx0aS1zZWxlY3Qtb3B0aW9uLWhvdmVyLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICRjLW11bHRpLXNlbGVjdC1vcHRpb24taG92ZXItYmcsXG4gICAgICBcImMtbXVsdGktc2VsZWN0LW9wdGlvbi1kaXNhYmxlZC1jb2xvclwiOiAgICAgICAgICAgICAgICAgICAkYy1tdWx0aS1zZWxlY3Qtb3B0aW9uLWRpc2FibGVkLWNvbG9yLFxuICAgICAgXCJjLW11bHRpLXNlbGVjdC1vcHRpb24tc2VsZWN0ZWQtYmdcIjogICAgICAgICAgICAgICAgICAgICAgJGMtbXVsdGktc2VsZWN0LW9wdGlvbi1zZWxlY3RlZC1iZyxcbiAgICAgIFwiYy1tdWx0aS1zZWxlY3QtaW5kaWNhdG9yLWJnXCI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRjLW11bHRpLXNlbGVjdC1pbmRpY2F0b3ItYmcsXG4gICAgICBcImMtbXVsdGktc2VsZWN0LWluZGljYXRvci1ib3JkZXItY29sb3JcIjogICAgICAgICAgICAgICAgICAkYy1tdWx0aS1zZWxlY3QtaW5kaWNhdG9yLWJvcmRlci1jb2xvcixcbiAgICAgIFwiYy1tdWx0aS1zZWxlY3Qtb3B0aW9uLWluZGljYXRvci1jaGVja2VkLWNvbG9yXCI6ICAgICAgICAgICRjLW11bHRpLXNlbGVjdC1vcHRpb24taW5kaWNhdG9yLWNoZWNrZWQtY29sb3IsXG4gICAgICBcImMtbXVsdGktc2VsZWN0LW9wdGlvbi1pbmRpY2F0b3ItY2hlY2tlZC1iZ1wiOiAgICAgICAgICAgICAkYy1tdWx0aS1zZWxlY3Qtb3B0aW9uLWluZGljYXRvci1jaGVja2VkLWJnLFxuICAgICAgXCJjLW11bHRpLXNlbGVjdC1vcHRpb24taW5kaWNhdG9yLWNoZWNrZWQtYm9yZGVyLWNvbG9yXCI6ICAgJGMtbXVsdGktc2VsZWN0LW9wdGlvbi1pbmRpY2F0b3ItY2hlY2tlZC1ib3JkZXItY29sb3IsXG4gICAgICBcImMtbXVsdGktc2VsZWN0LW9wdGlvbi1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1jaGVja2VkXCI6ICAkYy1tdWx0aS1zZWxlY3Qtb3B0aW9uLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWRcbiAgICApXG4gICksXG4gICRjLW11bHRpLXNlbGVjdC10aGVtZS1tYXBcbik7XG4iLCIvL1xuLy8gQ29yZVVJIGRlZmF1bHQgbGF5b3V0XG4vL1xuXG4uYy1hcHAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbn1cblxuLy8gSUUxMCYxMSBGbGV4Ym94IGZpeFxuQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIGh0bWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxufVxuXG4uYy13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMTtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWluLXdpZHRoOiAwO1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcblxuICAmOm5vdCguYy13cmFwcGVyLWZsdWlkKSB7XG5cbiAgICAuYy1zdWJoZWFkZXItZml4ZWQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cblxuICAgIC5jLWhlYWRlci1maXhlZCB7XG4gICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgdG9wOiAwO1xuXG4gICAgICBAbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICBtYXJnaW46IGluaGVyaXQ7XG5cbiAgICAgICAgfiAuYy1ib2R5IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxMDRweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5jLWZvb3Rlci1maXhlZCB7XG4gICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgYm90dG9tOiAwO1xuXG4gICAgICBAbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICBtYXJnaW46IGluaGVyaXQ7XG5cbiAgICAgICAgfiAuYy1ib2R5IHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0OXB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmMtYm9keSB7XG4gICAgICAvLyBkZXByZWNhdGUgdjRcbiAgICAgIC8vIGZpeCBmb290ZXIgcG9zaXRpb24gdG8gYXZvaWQgYnJlYWtpbmcgY2hhbmdlLlxuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAvLyAtLS1cblxuICAgICAgZmxleC1ncm93OiAxO1xuICAgIH1cbiAgfVxuXG4gIC8vIGRlcHJlY2F0ZSB2NFxuICAmLmMtd3JhcHBlci1mbHVpZCB7XG4gICAgbWluLWhlaWdodDogMTAwdmg7XG5cbiAgICAuYy1oZWFkZXItZml4ZWQge1xuICAgICAgbWFyZ2luOiBpbmhlcml0O1xuICAgIH1cbiAgfVxufVxuXG4uYy1tYWluIHtcbiAgZmxleC1iYXNpczogYXV0bztcbiAgZmxleC1zaHJpbms6IDA7XG4gIGZsZXgtZ3JvdzogMTtcbiAgbWluLXdpZHRoOiAwO1xuICBwYWRkaW5nLXRvcDogMiAqICRzcGFjZXI7XG5cbiAgPiAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkZ3JpZC1ndXR0ZXItd2lkdGg7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRncmlkLWd1dHRlci13aWR0aDtcbiAgICB9XG4gIH1cbn1cblxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi5hbGlnbi1iYXNlbGluZSAgICB7IHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9IC8vIEJyb3dzZXIgZGVmYXVsdFxuLmFsaWduLXRvcCAgICAgICAgIHsgdmVydGljYWwtYWxpZ246IHRvcCAhaW1wb3J0YW50OyB9XG4uYWxpZ24tbWlkZGxlICAgICAgeyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi1ib3R0b20gICAgICB7IHZlcnRpY2FsLWFsaWduOiBib3R0b20gIWltcG9ydGFudDsgfVxuLmFsaWduLXRleHQtYm90dG9tIHsgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi10ZXh0LXRvcCAgICB7IHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcCAhaW1wb3J0YW50OyB9XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gQ29udGV4dHVhbCBiYWNrZ3JvdW5kc1xuXG5AbWl4aW4gYmctdmFyaWFudCgkcGFyZW50LCAkY29sb3IsICRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbiAgYSN7JHBhcmVudH0sXG4gIGJ1dHRvbiN7JHBhcmVudH0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYGJnLXZhcmlhbnRgIG1peGluXCIsIFwidjQuNC4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cblxuQG1peGluIGJnLWdyYWRpZW50LXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvciBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCBtaXgoJGJvZHktYmcsICRjb2xvciwgMTUlKSwgJGNvbG9yKSByZXBlYXQteCAhaW1wb3J0YW50O1xuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgYmctZ3JhZGllbnQtdmFyaWFudGAgbWl4aW5cIiwgXCJ2NC41LjBcIiwgXCJ2NVwiLCAkaWdub3JlLXdhcm5pbmcpO1xufVxuXG5AbWl4aW4gY29yZXVpLWJnLWdyYWRpZW50LXZhcmlhbnQoJHBhcmVudCwgJGNvbG9ycykge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRjb2xvcnMsIFwic3RvcFwiKSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg0NWRlZywgbWFwLWdldCgkY29sb3JzLCBcInN0YXJ0XCIpIDAlLCBtYXAtZ2V0KCRjb2xvcnMsIFwic3RvcFwiKSAxMDAlKSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1jb2xvcjogbWFwLWdldCgkY29sb3JzLCBcInN0b3BcIikgIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5AaW5jbHVkZSB0aGVtZS12YXJpYW50KCkge1xuICBAaW5jbHVkZSBiZy12YXJpYW50KFwiLmJnLSN7JGNvbG9yfVwiLCAkdmFsdWUsIHRydWUpO1xufVxuXG4vLyBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuLy8gICBAaW5jbHVkZSB0aGVtZS12YXJpYW50KCkge1xuLy8gICAgIEBpbmNsdWRlIGJnLWdyYWRpZW50LXZhcmlhbnQoXCIuYmctZ3JhZGllbnQtI3skY29sb3J9XCIsICR2YWx1ZSwgdHJ1ZSk7XG4vLyAgIH1cbi8vIH1cblxuQGluY2x1ZGUgdGhlbWUtZ3JhZGllbnRzKCkge1xuICBAaW5jbHVkZSBjb3JldWktYmctZ3JhZGllbnQtdmFyaWFudChcIi5iZy1ncmFkaWVudC0jeyRncmFkaWVudH1cIiwgJHZhbHVlKTtcbn1cblxuLmJnLXdoaXRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi5iZy10cmFuc3BhcmVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG5cbltjbGFzc149XCJiZy1cIl0ge1xuICBjb2xvcjogJHdoaXRlO1xufVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkYnJhbmRzLWNvbG9ycyB7XG4gIEBpbmNsdWRlIGJnLXZhcmlhbnQoXCIuYmctI3skY29sb3J9XCIsICR2YWx1ZSk7XG59XG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICRncmF5cyB7XG4gIEBpbmNsdWRlIGJnLXZhcmlhbnQoXCIuYmctZ3JheS0jeyRjb2xvcn1cIiwgJHZhbHVlKTtcbn1cblxuLmJnLWJveCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aWR0aDogKCRzcGFjZXIgKiAyLjUpO1xuICBoZWlnaHQ6ICgkc3BhY2VyICogMi41KTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWJsYWNrbGlzdCwgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBCb3JkZXJcbi8vXG5cbkBpbmNsdWRlIHRoZW1lcygkYm9yZGVyLXRoZW1lLW1hcCkge1xuICAuYm9yZGVyICAgICAgICAgeyBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgdGhlbWVzLWdldC12YWx1ZShcImJvcmRlci1jb2xvclwiKSAhaW1wb3J0YW50OyB9XG4gIC5ib3JkZXItdG9wICAgICB7IGJvcmRlci10b3A6ICRib3JkZXItd2lkdGggc29saWQgdGhlbWVzLWdldC12YWx1ZShcImJvcmRlci1jb2xvclwiKSAhaW1wb3J0YW50OyB9XG4gIC5ib3JkZXItcmlnaHQgICB7IGJvcmRlci1yaWdodDogJGJvcmRlci13aWR0aCBzb2xpZCB0aGVtZXMtZ2V0LXZhbHVlKFwiYm9yZGVyLWNvbG9yXCIpICFpbXBvcnRhbnQ7IH1cbiAgLmJvcmRlci1ib3R0b20gIHsgYm9yZGVyLWJvdHRvbTogJGJvcmRlci13aWR0aCBzb2xpZCB0aGVtZXMtZ2V0LXZhbHVlKFwiYm9yZGVyLWNvbG9yXCIpICFpbXBvcnRhbnQ7IH1cbiAgLmJvcmRlci1sZWZ0ICAgIHsgYm9yZGVyLWxlZnQ6ICRib3JkZXItd2lkdGggc29saWQgdGhlbWVzLWdldC12YWx1ZShcImJvcmRlci1jb2xvclwiKSAhaW1wb3J0YW50OyB9XG59XG5cbi5ib3JkZXItMCAgICAgICAgeyBib3JkZXI6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci10b3AtMCAgICB7IGJvcmRlci10b3A6IDAgIWltcG9ydGFudDsgfVxuLmJvcmRlci1yaWdodC0wICB7IGJvcmRlci1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWJvdHRvbS0wIHsgYm9yZGVyLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4uYm9yZGVyLWxlZnQtMCAgIHsgYm9yZGVyLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuXG5AaW5jbHVkZSB0aGVtZS12YXJpYW50KCkge1xuICAuYm9yZGVyLSN7JGNvbG9yfSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6ICR2YWx1ZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5ib3JkZXItd2hpdGUge1xuICBib3JkZXItY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4vL1xuLy8gQm9yZGVyLXJhZGl1c1xuLy9cblxuLnJvdW5kZWQtc20ge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1zbSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZCB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLXRvcCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1yaWdodCB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbn1cblxuLnJvdW5kZWQtYm90dG9tIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWxlZnQge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1sZyB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxnICFpbXBvcnRhbnQ7XG59XG5cbi5yb3VuZGVkLWNpcmNsZSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC1waWxsIHtcbiAgYm9yZGVyLXJhZGl1czogJHJvdW5kZWQtcGlsbCAhaW1wb3J0YW50O1xufVxuXG4ucm91bmRlZC0wIHtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuXG5AZWFjaCAkcHJvcCwgJGFiYnJldiBpbiAoYm9yZGVyOiBiKSB7XG4gIEBlYWNoICRzaXplIGluICgwLDEsMikge1xuICAgIEBpZiAkc2l6ZSA9PSAwIHtcbiAgICAgIC4jeyRhYmJyZXZ9LWEtI3skc2l6ZX0geyAjeyRwcm9wfTogMCAhaW1wb3J0YW50OyB9IC8vIGEgPSBBbGwgc2lkZXNcbiAgICAgIC4jeyRhYmJyZXZ9LXQtI3skc2l6ZX0geyAjeyRwcm9wfS10b3A6IDAgIWltcG9ydGFudDsgfVxuICAgICAgLiN7JGFiYnJldn0tci0jeyRzaXplfSB7ICN7JHByb3B9LXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cbiAgICAgIC4jeyRhYmJyZXZ9LWItI3skc2l6ZX0geyAjeyRwcm9wfS1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuICAgICAgLiN7JGFiYnJldn0tbC0jeyRzaXplfSB7ICN7JHByb3B9LWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgLiN7JGFiYnJldn0tYS0jeyRzaXplfSB7ICN7JHByb3B9OiAkc2l6ZSAqICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvcjsgfSAvLyBhID0gQWxsIHNpZGVzXG4gICAgICAuI3skYWJicmV2fS10LSN7JHNpemV9IHsgI3skcHJvcH0tdG9wOiAkc2l6ZSAqICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvcjsgfVxuICAgICAgLiN7JGFiYnJldn0tci0jeyRzaXplfSB7ICN7JHByb3B9LXJpZ2h0OiAkc2l6ZSAqICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvcjsgfVxuICAgICAgLiN7JGFiYnJldn0tYi0jeyRzaXplfSB7ICN7JHByb3B9LWJvdHRvbTogJHNpemUgKiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3I7IH1cbiAgICAgIC4jeyRhYmJyZXZ9LWwtI3skc2l6ZX0geyAjeyRwcm9wfS1sZWZ0OiAkc2l6ZSAqICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvcjsgfVxuICAgIH1cbiAgfVxufVxuIiwiLmNvbnRlbnQtY2VudGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBVdGlsaXRpZXMgZm9yIGNvbW1vbiBgZGlzcGxheWAgdmFsdWVzXG4vL1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICAgQGVhY2ggJHZhbHVlIGluICRkaXNwbGF5cyB7XG4gICAgICAuZCN7JGluZml4fS0jeyR2YWx1ZX0geyBkaXNwbGF5OiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxufVxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICAgLmQjeyRpbmZpeH0tZG93bi1ub25lIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuQGVhY2ggJHRoZW1lIGluIG1hcC1rZXlzKCRkZWZhdWx0LXRoZW1lcykge1xuICAuYy0jeyR0aGVtZX0jeyR0aGVtZS1zdWZmaXh9IHtcbiAgICAuYy1kLSN7JHRoZW1lfS1ub25lIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIH1cbiAgQGlmIG1hcC1nZXQobWFwLWdldCgkZGVmYXVsdC10aGVtZXMsICR0aGVtZSksIFwiZGVmYXVsdFwiKSB7XG4gICAgJG90aGVyLXRoZW1lczogbWFwLXJlbW92ZSgkZGVmYXVsdC10aGVtZXMsICR0aGVtZSk7XG5cbiAgICAkc2VsZWN0b3I6IHNlbGVjdG9yLWFwcGVuZChcIi5jLWFwcFwiKTtcbiAgICBAZWFjaCAkb3RoZXItdGhlbWUgaW4gbWFwLWtleXMoJG90aGVyLXRoZW1lcykge1xuICAgICAgJHNlbGVjdG9yOiBzZWxlY3Rvci1hcHBlbmQoJHNlbGVjdG9yLCBcIjpub3QoLmMtI3skb3RoZXItdGhlbWV9I3skdGhlbWUtc3VmZml4fSlcIik7XG4gICAgICAvLyAuYy1hcHAge1xuICAgICAgLy8gICAmOm5vdCguYy0jeyRvdGhlci10aGVtZX0jeyR0aGVtZS1zdWZmaXh9KSB7XG4gICAgICAvLyAgICAgLmMtZC0jeyR0aGVtZX0tbm9uZSB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAgICAgLy8gICB9XG4gICAgICAvLyB9XG4gICAgfVxuICAgIEBpZiAoJHNlbGVjdG9yICE9IHNlbGVjdG9yLWFwcGVuZChcIi5jLWFwcFwiKSkge1xuICAgICAgI3skc2VsZWN0b3J9IHtcbiAgICAgICAgLmMtZC0jeyR0aGVtZX0tbm9uZSB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBVdGlsaXRpZXMgZm9yIHRvZ2dsaW5nIGBkaXNwbGF5YCBpbiBwcmludFxuLy9cblxuQG1lZGlhIHByaW50IHtcbiAgQGVhY2ggJHZhbHVlIGluICRkaXNwbGF5cyB7XG4gICAgLmQtcHJpbnQtI3skdmFsdWV9IHsgZGlzcGxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuIiwiQGVhY2ggJGxldmVsLCAkdmFsdWUgaW4gJGVsZXZhdGlvbnMge1xuICAuYy1lbGV2YXRpb24tI3skbGV2ZWx9IHtcbiAgICBib3JkZXI6IDA7XG4gICAgYm94LXNoYWRvdzogdW5xdW90ZSgkdmFsdWUpICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gIH1cbn1cbiIsIi8vIENyZWRpdDogTmljb2xhcyBHYWxsYWdoZXIgYW5kIFNVSVQgQ1NTLlxuXG4uZW1iZWQtcmVzcG9uc2l2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gIC5lbWJlZC1yZXNwb25zaXZlLWl0ZW0sXG4gIGlmcmFtZSxcbiAgZW1iZWQsXG4gIG9iamVjdCxcbiAgdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG5AZWFjaCAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8gaW4gJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvcyB7XG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby14OiBudGgoJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLCAxKTtcbiAgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXk6IG50aCgkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW8sIDIpO1xuXG4gIC5lbWJlZC1yZXNwb25zaXZlLSN7JGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXh9YnkjeyRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15fSB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBhZGRpbmctdG9wOiBwZXJjZW50YWdlKCRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpby15IC8gJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvLXgpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIEZsZXggdmFyaWF0aW9uXG4vL1xuLy8gQ3VzdG9tIHN0eWxlcyBmb3IgYWRkaXRpb25hbCBmbGV4IGFsaWdubWVudCBvcHRpb25zLlxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAuZmxleCN7JGluZml4fS1yb3cgICAgICAgICAgICB7IGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWNvbHVtbiAgICAgICAgIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tcm93LXJldmVyc2UgICAgeyBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2UgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LWNvbHVtbi1yZXZlcnNlIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cblxuICAgIC5mbGV4I3skaW5maXh9LXdyYXAgICAgICAgICB7IGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tbm93cmFwICAgICAgIHsgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXdyYXAtcmV2ZXJzZSB7IGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1maWxsICAgICAgICAgeyBmbGV4OiAxIDEgYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLmZsZXgjeyRpbmZpeH0tZ3Jvdy0wICAgICAgIHsgZmxleC1ncm93OiAwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1ncm93LTEgICAgICAgeyBmbGV4LWdyb3c6IDEgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4I3skaW5maXh9LXNocmluay0wICAgICB7IGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleCN7JGluZml4fS1zaHJpbmstMSAgICAgeyBmbGV4LXNocmluazogMSAhaW1wb3J0YW50OyB9XG5cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LXN0YXJ0ICAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tZW5kICAgICB7IGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tY2VudGVyICB7IGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAuanVzdGlmeS1jb250ZW50I3skaW5maXh9LWJldHdlZW4geyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuICAgIC5qdXN0aWZ5LWNvbnRlbnQjeyRpbmZpeH0tYXJvdW5kICB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1zdGFydCAgICB7IGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24taXRlbXMjeyRpbmZpeH0tZW5kICAgICAgeyBhbGlnbi1pdGVtczogZmxleC1lbmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1jZW50ZXIgICB7IGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1pdGVtcyN7JGluZml4fS1iYXNlbGluZSB7IGFsaWduLWl0ZW1zOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWl0ZW1zI3skaW5maXh9LXN0cmV0Y2ggIHsgYWxpZ24taXRlbXM6IHN0cmV0Y2ggIWltcG9ydGFudDsgfVxuXG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tc3RhcnQgICB7IGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWVuZCAgICAgeyBhbGlnbi1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tY2VudGVyICB7IGFsaWduLWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLWNvbnRlbnQjeyRpbmZpeH0tYmV0d2VlbiB7IGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LWFyb3VuZCAgeyBhbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQgIWltcG9ydGFudDsgfVxuICAgIC5hbGlnbi1jb250ZW50I3skaW5maXh9LXN0cmV0Y2ggeyBhbGlnbi1jb250ZW50OiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cblxuICAgIC5hbGlnbi1zZWxmI3skaW5maXh9LWF1dG8gICAgIHsgYWxpZ24tc2VsZjogYXV0byAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tc3RhcnQgICAgeyBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1lbmQgICAgICB7IGFsaWduLXNlbGY6IGZsZXgtZW5kICFpbXBvcnRhbnQ7IH1cbiAgICAuYWxpZ24tc2VsZiN7JGluZml4fS1jZW50ZXIgICB7IGFsaWduLXNlbGY6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tYmFzZWxpbmUgeyBhbGlnbi1zZWxmOiBiYXNlbGluZSAhaW1wb3J0YW50OyB9XG4gICAgLmFsaWduLXNlbGYjeyRpbmZpeH0tc3RyZXRjaCAgeyBhbGlnbi1zZWxmOiBzdHJldGNoICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5mbG9hdCN7JGluZml4fS1sZWZ0ICB7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIC5mbG9hdCN7JGluZml4fS1yaWdodCB7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIC5mbG9hdCN7JGluZml4fS1ub25lICB7IGZsb2F0OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICR2YWx1ZSBpbiAkdXNlci1zZWxlY3RzIHtcbiAgLnVzZXItc2VsZWN0LSN7JHZhbHVlfSB7IHVzZXItc2VsZWN0OiAkdmFsdWUgIWltcG9ydGFudDsgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbkBlYWNoICR2YWx1ZSBpbiAkb3ZlcmZsb3dzIHtcbiAgLm92ZXJmbG93LSN7JHZhbHVlfSB7IG92ZXJmbG93OiAkdmFsdWUgIWltcG9ydGFudDsgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIENvbW1vbiB2YWx1ZXNcbkBlYWNoICRwb3NpdGlvbiBpbiAkcG9zaXRpb25zIHtcbiAgLnBvc2l0aW9uLSN7JHBvc2l0aW9ufSB7IHBvc2l0aW9uOiAkcG9zaXRpb24gIWltcG9ydGFudDsgfVxufVxuXG4vLyBTaG9ydGhhbmRcblxuLmZpeGVkLXRvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLmZpeGVkLWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLnN0aWNreS10b3Age1xuICBAc3VwcG9ydHMgKHBvc2l0aW9uOiBzdGlja3kpIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAkemluZGV4LXN0aWNreTtcbiAgfVxufVxuIiwiLy9cbi8vIFNjcmVlbnJlYWRlcnNcbi8vXG5cbi5zci1vbmx5IHtcbiAgQGluY2x1ZGUgc3Itb25seSgpO1xufVxuXG4uc3Itb25seS1mb2N1c2FibGUge1xuICBAaW5jbHVkZSBzci1vbmx5LWZvY3VzYWJsZSgpO1xufVxuIiwiLy8gT25seSBkaXNwbGF5IGNvbnRlbnQgdG8gc2NyZWVuIHJlYWRlcnNcbi8vXG4vLyBTZWU6IGh0dHBzOi8vYTExeXByb2plY3QuY29tL3Bvc3RzL2hvdy10by1oaWRlLWNvbnRlbnQvXG4vLyBTZWU6IGh0dHBzOi8vaHVnb2dpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuXG5AbWl4aW4gc3Itb25seSgpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMXB4OyAvLyBGaXggZm9yIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjU2ODZcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCAuc3Itb25seSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZC5cbi8vXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi8yMDEzL05PVEUtV0NBRzIwLVRFQ0hTLTIwMTMwOTA1L0cxXG4vL1xuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxuXG5AbWl4aW4gc3Itb25seS1mb2N1c2FibGUoKSB7XG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4uc2hhZG93LXNtIHsgYm94LXNoYWRvdzogJGJveC1zaGFkb3ctc20gIWltcG9ydGFudDsgfVxuLnNoYWRvdyB7IGJveC1zaGFkb3c6ICRib3gtc2hhZG93ICFpbXBvcnRhbnQ7IH1cbi5zaGFkb3ctbGcgeyBib3gtc2hhZG93OiAkYm94LXNoYWRvdy1sZyAhaW1wb3J0YW50OyB9XG4uc2hhZG93LW5vbmUgeyBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7IH1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBXaWR0aCBhbmQgaGVpZ2h0XG5cbkBlYWNoICRwcm9wLCAkYWJicmV2IGluICh3aWR0aDogdywgaGVpZ2h0OiBoKSB7XG4gIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzaXplcyB7XG4gICAgLiN7JGFiYnJldn0tI3skc2l6ZX0geyAjeyRwcm9wfTogJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuLm13LTEwMCB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4ubWgtMTAwIHsgbWF4LWhlaWdodDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbi8vIFZpZXdwb3J0IGFkZGl0aW9uYWwgaGVscGVyc1xuXG4ubWluLXZ3LTEwMCB7IG1pbi13aWR0aDogMTAwdncgIWltcG9ydGFudDsgfVxuLm1pbi12aC0xMDAgeyBtaW4taGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50OyB9XG5cbi52dy0xMDAgeyB3aWR0aDogMTAwdncgIWltcG9ydGFudDsgfVxuLnZoLTEwMCB7IGhlaWdodDogMTAwdmggIWltcG9ydGFudDsgfVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIE1hcmdpbiBhbmQgUGFkZGluZ1xuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICBAZWFjaCAkcHJvcCwgJGFiYnJldiBpbiAobWFyZ2luOiBtLCBwYWRkaW5nOiBwKSB7XG4gICAgICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc3BhY2VycyB7XG4gICAgICAgIC4jeyRhYmJyZXZ9I3skaW5maXh9LSN7JHNpemV9IHsgI3skcHJvcH06ICRsZW5ndGggIWltcG9ydGFudDsgfVxuICAgICAgICAuI3skYWJicmV2fXQjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgIC4jeyRhYmJyZXZ9eSN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgI3skcHJvcH0tdG9wOiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1yI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXgjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LXJpZ2h0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1iI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAuI3skYWJicmV2fXkjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICN7JHByb3B9LWJvdHRvbTogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC4jeyRhYmJyZXZ9bCN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgLiN7JGFiYnJldn14I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAjeyRwcm9wfS1sZWZ0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAuI3skYWJicmV2fWZzI3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICAgICAgI3skcHJvcH0tbGVmdDogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICAgICAgI3skcHJvcH0tcmlnaHQ6ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGFiYnJldn1mZSN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgICAgICN7JHByb3B9LXJpZ2h0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgICAgICAjeyRwcm9wfS1sZWZ0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmVnYXRpdmUgbWFyZ2lucyAoZS5nLiwgd2hlcmUgYC5tYi1uMWAgaXMgbmVnYXRpdmUgdmVyc2lvbiBvZiBgLm1iLTFgKVxuICAgIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzcGFjZXJzIHtcbiAgICAgIEBpZiAkc2l6ZSAhPSAwIHtcbiAgICAgICAgLm0jeyRpbmZpeH0tbiN7JHNpemV9IHsgbWFyZ2luOiAtJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gICAgICAgIC5tdCN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teSN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLm1yI3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm14I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5tYiN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgIC5teSN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLm1sI3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgLm14I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAubWZzI3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaW5jbHVkZSBydGwge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubWZlI3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgQGluY2x1ZGUgbHRyIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNvbWUgc3BlY2lhbCBtYXJnaW4gdXRpbHNcbiAgICAubSN7JGluZml4fS1hdXRvIHsgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAubXQjeyRpbmZpeH0tYXV0byxcbiAgICAubXkjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tciN7JGluZml4fS1hdXRvLFxuICAgIC5teCN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubWIjeyRpbmZpeH0tYXV0byxcbiAgICAubXkjeyRpbmZpeH0tYXV0byB7XG4gICAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tbCN7JGluZml4fS1hdXRvLFxuICAgIC5teCN7JGluZml4fS1hdXRvIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLy8gU29tZSBzcGVjaWFsIG1hcmdpbiB1dGlscyBmb3IgZmxleCwgd29yayBvbmx5IHdpdGggZmxleC1kaXJlY3Rpb246IHJvd1xuICAgIC5tZnMjeyRpbmZpeH0tYXV0byB7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIC5tZmUjeyRpbmZpeH0tYXV0byB7XG4gICAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gU3RyZXRjaGVkIGxpbmtcbi8vXG5cbi5zdHJldGNoZWQtbGluayB7XG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDE7XG4gICAgLy8gSnVzdCBpbiBjYXNlIGBwb2ludGVyLWV2ZW50czogbm9uZWAgaXMgc2V0IG9uIGEgcGFyZW50XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgY29udGVudDogXCJcIjtcbiAgICAvLyBJRTEwIGJ1Z2ZpeCwgc2VlIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzE2OTQ3OTY3L2llMTAtaG92ZXItcHNldWRvLWNsYXNzLWRvZXNudC13b3JrLXdpdGhvdXQtYmFja2dyb3VuZC1jb2xvclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrLCAwKTtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBUZXh0XG4vL1xuXG4udGV4dC1tb25vc3BhY2UgeyBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhaW1wb3J0YW50OyB9XG5cbi8vIEFsaWdubWVudFxuXG4udGV4dC1qdXN0aWZ5ICB7IHRleHQtYWxpZ246IGp1c3RpZnkgIWltcG9ydGFudDsgfVxuLnRleHQtd3JhcCAgICAgeyB3aGl0ZS1zcGFjZTogbm9ybWFsICFpbXBvcnRhbnQ7IH1cbi50ZXh0LW5vd3JhcCAgIHsgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG4udGV4dC10cnVuY2F0ZSB7IEBpbmNsdWRlIHRleHQtdHJ1bmNhdGUoKTsgfVxuXG4vLyBSZXNwb25zaXZlIGFsaWdubWVudFxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAudGV4dCN7JGluZml4fS1sZWZ0ICAgeyB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICAudGV4dCN7JGluZml4fS1yaWdodCAgeyB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgLnRleHQjeyRpbmZpeH0tY2VudGVyIHsgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG4vLyBUcmFuc2Zvcm1hdGlvblxuXG4udGV4dC1sb3dlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC11cHBlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC1jYXBpdGFsaXplIHsgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemUgIWltcG9ydGFudDsgfVxuXG4vLyBXZWlnaHQgYW5kIGl0YWxpY3NcblxuLmZvbnQtd2VpZ2h0LWxpZ2h0ICAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWxpZ2h0ICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1saWdodGVyIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1saWdodGVyICFpbXBvcnRhbnQ7IH1cbi5mb250LXdlaWdodC1ub3JtYWwgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LWJvbGQgICAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWltcG9ydGFudDsgfVxuLmZvbnQtd2VpZ2h0LWJvbGRlciAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGRlciAhaW1wb3J0YW50OyB9XG4uZm9udC1pdGFsaWMgICAgICAgICB7IGZvbnQtc3R5bGU6IGl0YWxpYyAhaW1wb3J0YW50OyB9XG5cbi8vIENvbnRleHR1YWwgY29sb3JzXG5cbi50ZXh0LXdoaXRlIHsgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50OyB9XG5cbkBpbmNsdWRlIHRoZW1lLXZhcmlhbnQoKSB7XG4gIEBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudChcIi50ZXh0LSN7JGNvbG9yfVwiLCAkdmFsdWUsIHRydWUpO1xufVxuXG4udGV4dC1ib2R5IHsgY29sb3I6ICRib2R5LWNvbG9yICFpbXBvcnRhbnQ7IH1cbi50ZXh0LW11dGVkIHtcbiAgQGluY2x1ZGUgdGhlbWVzKCR0eXBvZ3JhcGh5LXRoZW1lLW1hcCwgJGNyZWF0ZTogcGFyZW50KSB7XG4gICAgY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJ0ZXh0LW11dGVkXCIpICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnRleHQtYmxhY2stNTAgeyBjb2xvcjogcmdiYSgkYmxhY2ssIC41KSAhaW1wb3J0YW50OyB9XG4udGV4dC13aGl0ZS01MCB7IGNvbG9yOiByZ2JhKCR3aGl0ZSwgLjUpICFpbXBvcnRhbnQ7IH1cblxuLy8gTWlzY1xuXG4udGV4dC1oaWRlIHtcbiAgQGluY2x1ZGUgdGV4dC1oaWRlKCRpZ25vcmUtd2FybmluZzogdHJ1ZSk7XG59XG5cbi50ZXh0LWRlY29yYXRpb24tbm9uZSB7IHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LWJyZWFrIHtcbiAgd29yZC1icmVhazogYnJlYWstd29yZCAhaW1wb3J0YW50OyAvLyBJRSAmIDwgRWRnZSAxOFxuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkICFpbXBvcnRhbnQ7XG59XG5cbi8vIFJlc2V0XG5cbi50ZXh0LXJlc2V0IHsgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDsgfVxuIiwiLy8gVGV4dCB0cnVuY2F0ZVxuLy8gUmVxdWlyZXMgaW5saW5lLWJsb2NrIG9yIGJsb2NrIGZvciBwcm9wZXIgc3R5bGluZ1xuXG5AbWl4aW4gdGV4dC10cnVuY2F0ZSgpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8gVHlwb2dyYXBoeVxuXG5AbWl4aW4gdGV4dC1lbXBoYXNpcy12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBjb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbiAgQGlmICRlbXBoYXNpemVkLWxpbmstaG92ZXItZGFya2VuLXBlcmNlbnRhZ2UgIT0gMCB7XG4gICAgYSN7JHBhcmVudH0ge1xuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAkZW1waGFzaXplZC1saW5rLWhvdmVyLWRhcmtlbi1wZXJjZW50YWdlKSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgdGV4dC1lbXBoYXNpcy12YXJpYW50KClgXCIsIFwidjQuNC4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIENTUyBpbWFnZSByZXBsYWNlbWVudFxuQG1peGluIHRleHQtaGlkZSgkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBmb250LWZhbWlseS1uby1taXNzaW5nLWdlbmVyaWMtZmFtaWx5LWtleXdvcmRcbiAgZm9udDogMC8wIGE7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG5cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYHRleHQtaGlkZSgpYFwiLCBcInY0LjEuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG4iLCJib2R5IHtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuLmZvbnQteHMge1xuICBmb250LXNpemU6IC43NXJlbSAhaW1wb3J0YW50O1xufVxuXG4uZm9udC1zbSB7XG4gIGZvbnQtc2l6ZTogLjg1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5mb250LWxnIHtcbiAgZm9udC1zaXplOiAxcmVtICFpbXBvcnRhbnQ7XG59XG5cbi5mb250LXhsIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5mb250LTJ4bCB7XG4gIGZvbnQtc2l6ZTogMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5mb250LTN4bCB7XG4gIGZvbnQtc2l6ZTogMS43NXJlbSAhaW1wb3J0YW50O1xufVxuXG4uZm9udC00eGwge1xuICBmb250LXNpemU6IDJyZW0gIWltcG9ydGFudDtcbn1cblxuLmZvbnQtNXhsIHtcbiAgZm9udC1zaXplOiAyLjVyZW0gIWltcG9ydGFudDtcbn1cblxuW2NsYXNzXj1cInRleHQtdmFsdWVcIl0ge1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4udGV4dC12YWx1ZS14cyB7XG4gIGZvbnQtc2l6ZTogKCRmb250LXNpemUtYmFzZSAqIC43NSk7XG59XG5cbi50ZXh0LXZhbHVlLXNtIHtcbiAgZm9udC1zaXplOiAoJGZvbnQtc2l6ZS1iYXNlICogLjg1KTtcbn1cblxuLnRleHQtdmFsdWUge1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbn1cblxuLnRleHQtdmFsdWUtbGcge1xuICBmb250LXNpemU6ICgkZm9udC1zaXplLWJhc2UgKiAxLjUpO1xufVxuXG4udGV4dC12YWx1ZS14bCB7XG4gIGZvbnQtc2l6ZTogKCRmb250LXNpemUtYmFzZSAqIDEuNzUpO1xufVxuXG4udGV4dC13aGl0ZSAudGV4dC1tdXRlZCB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC42KSAhaW1wb3J0YW50O1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vXG4vLyBWaXNpYmlsaXR5IHV0aWxpdGllc1xuLy9cblxuLnZpc2libGUge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG59XG5cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cbiIsIi8vXG4vLyBSVEwgU3VwcG9ydFxuLy9cbkBpbmNsdWRlIHJ0bCB7XG4gIGRpcmVjdGlvbjogcnRsO1xuICB1bmljb2RlLWJpZGk6IGVtYmVkO1xuXG4gIGJvZHkge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG59XG4iLCIuYy1lbWFpbC1hcHAge1xuICBAaW5jbHVkZSB0aGVtZXMoJGVtYWlsLWFwcC10aGVtZS1tYXApIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiZW1haWwtYXBwLWJnXCIpO1xuICB9XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgIC5jLWJvZHkge1xuICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmMtc2lkZWJhciB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuICB9XG4gIC5jLXRvb2xiYXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZDtcbiAgICBAaW5jbHVkZSB0aGVtZXMoJGVtYWlsLWFwcC10aGVtZS1tYXApIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImVtYWlsLWFwcC1ib3JkZXItY29sb3JcIik7XG4gICAgfVxuICB9XG5cblxuICAvLyAuYy1tZXNzYWdlcyB7XG4gIC8vICAgcGFkZGluZzogJHNwYWNlcjtcbiAgLy8gfVxuXG4gIC5jLW1lc3NhZ2Uge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGluY2x1ZGUgdGhlbWVzKCRlbWFpbC1hcHAtdGhlbWUtbWFwKSB7XG4gICAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImVtYWlsLWFwcC1tZXNzYWdlLWNvbG9yXCIpO1xuICAgIH1cblxuICAgICYuYy1tZXNzYWdlLXJlYWQge1xuICAgICAgQGluY2x1ZGUgdGhlbWVzKCRlbWFpbC1hcHAtdGhlbWUtbWFwKSB7XG4gICAgICAgIGNvbG9yOiB0aGVtZXMtZ2V0LXZhbHVlKFwiZW1haWwtYXBwLW1lc3NhZ2UtcmVhZC1jb2xvclwiKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQgLmMtbWVzc2FnZS1kZXRhaWxzIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICB9XG4gIH1cblxuICAuYy1tZXNzYWdlLWFjdGlvbnMge1xuICAgIEBpbmNsdWRlIGx0ciB7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRzcGFjZXI7XG4gICAgfVxuICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICBtYXJnaW4tbGVmdDogJHNwYWNlcjtcbiAgICB9XG4gIH1cblxuICAuYy1tZXNzYWdlLWRldGFpbHMge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBwYWRkaW5nLWJvdHRvbTogJHNwYWNlcjtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7XG4gICAgQGluY2x1ZGUgdGhlbWVzKCRlbWFpbC1hcHAtdGhlbWUtbWFwKSB7XG4gICAgICBib3JkZXItY29sb3I6IHRoZW1lcy1nZXQtdmFsdWUoXCJlbWFpbC1hcHAtYm9yZGVyLWNvbG9yXCIpO1xuICAgIH1cbiAgfVxuXG4gIC5jLW1lc3NhZ2UtaGVhZGVycyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAuYy1tZXNzYWdlLWhlYWRlcnMtZnJvbSB7XG4gICAgLy8gZm9udC13ZWlnaHQ6IDYwMDtcbiAgfVxuXG4gIC5jLW1lc3NhZ2UtaGVhZGVycy1kYXRlIHtcbiAgICBAaW5jbHVkZSBsdHIge1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgfVxuICAgIEBpbmNsdWRlIHJ0bCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgLmMtbWVzc2FnZS1oZWFkZXJzLXN1YmplY3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sZztcbiAgICBmb250LXdlaWdodDogNjAwO1xuICB9XG5cbiAgLmMtbWVzc2FnZS1ib2R5IHtcbiAgICBjb2xvcjogdGhlbWVzLWdldC12YWx1ZShcImVtYWlsLWFwcC1tZXNzYWdlLWJvZHktY29sb3JcIik7XG4gIH1cblxuICAuYy1tZXNzYWdlLWF0dGFjaG1lbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxufVxuIiwiLmllLWN1c3RvbS1wcm9wZXJ0aWVzIHtcbiAgLy8gQ3VzdG9tIHZhcmlhYmxlIHZhbHVlcyBvbmx5IHN1cHBvcnQgU2Fzc1NjcmlwdCBpbnNpZGUgYCN7fWAuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAgICN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGJwLCAkdmFsdWUgaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgIGJyZWFrcG9pbnQtI3skYnB9OiAjeyR2YWx1ZX07XG4gIH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvYmxvYi9tYXN0ZXIvc3JjL2Nzcy9tYWluLmNzc1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gUHJpbnQgc3R5bGVzLlxuLy8gSW5saW5lZCB0byBhdm9pZCB0aGUgYWRkaXRpb25hbCBIVFRQIHJlcXVlc3Q6XG4vLyBodHRwczovL3d3dy5waHBpZWQuY29tL2RlbGF5LWxvYWRpbmcteW91ci1wcmludC1jc3MvXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYgJGVuYWJsZS1wcmludC1zdHlsZXMge1xuICBAbWVkaWEgcHJpbnQge1xuICAgICosXG4gICAgKjo6YmVmb3JlLFxuICAgICo6OmFmdGVyIHtcbiAgICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYzsgY29tbWVudCBvdXQgYGNvbG9yYCBhbmQgYGJhY2tncm91bmRgXG4gICAgICAvL2NvbG9yOiAkYmxhY2sgIWltcG9ydGFudDsgLy8gQmxhY2sgcHJpbnRzIGZhc3RlclxuICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIC8vYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICY6bm90KC5idG4pIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljOyBjb21tZW50IHRoZSBmb2xsb3dpbmcgc2VsZWN0b3Igb3V0XG4gICAgLy9hW2hyZWZdOjphZnRlciB7XG4gICAgLy8gIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiO1xuICAgIC8vfVxuXG4gICAgYWJiclt0aXRsZV06OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWM7IGNvbW1lbnQgdGhlIGZvbGxvd2luZyBzZWxlY3RvciBvdXRcbiAgICAvL1xuICAgIC8vIERvbid0IHNob3cgbGlua3MgdGhhdCBhcmUgZnJhZ21lbnQgaWRlbnRpZmllcnMsXG4gICAgLy8gb3IgdXNlIHRoZSBgamF2YXNjcmlwdDpgIHBzZXVkbyBwcm90b2NvbFxuICAgIC8vXG5cbiAgICAvL2FbaHJlZl49XCIjXCJdOjphZnRlcixcbiAgICAvL2FbaHJlZl49XCJqYXZhc2NyaXB0OlwiXTo6YWZ0ZXIge1xuICAgIC8vIGNvbnRlbnQ6IFwiXCI7XG4gICAgLy99XG5cbiAgICBwcmUge1xuICAgICAgd2hpdGUtc3BhY2U6IHByZS13cmFwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIHByZSxcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkZ3JheS01MDA7IC8vIEJvb3RzdHJhcCBjdXN0b20gY29kZTsgdXNpbmcgYCRib3JkZXItd2lkdGhgIGluc3RlYWQgb2YgMXB4XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy9cbiAgICAvLyBQcmludGluZyBUYWJsZXM6XG4gICAgLy8gaHR0cDovL2Nzcy1kaXNjdXNzLmluY3V0aW8uY29tL3dpa2kvUHJpbnRpbmdfVGFibGVzXG4gICAgLy9cblxuICAgIHRoZWFkIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDtcbiAgICB9XG5cbiAgICB0cixcbiAgICBpbWcge1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIHAsXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgb3JwaGFuczogMztcbiAgICAgIHdpZG93czogMztcbiAgICB9XG5cbiAgICBoMixcbiAgICBoMyB7XG4gICAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWMgY2hhbmdlcyBzdGFydFxuXG4gICAgLy8gU3BlY2lmeSBhIHNpemUgYW5kIG1pbi13aWR0aCB0byBtYWtlIHByaW50aW5nIGNsb3NlciBhY3Jvc3MgYnJvd3NlcnMuXG4gICAgLy8gV2UgZG9uJ3Qgc2V0IG1hcmdpbiBoZXJlIGJlY2F1c2UgaXQgYnJlYWtzIGBzaXplYCBpbiBDaHJvbWUuIFdlIGFsc29cbiAgICAvLyBkb24ndCB1c2UgYCFpbXBvcnRhbnRgIG9uIGBzaXplYCBhcyBpdCBicmVha3MgaW4gQ2hyb21lLlxuICAgIEBwYWdlIHtcbiAgICAgIHNpemU6ICRwcmludC1wYWdlLXNpemU7XG4gICAgfVxuICAgIGJvZHkge1xuICAgICAgbWluLXdpZHRoOiAkcHJpbnQtYm9keS1taW4td2lkdGggIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICBtaW4td2lkdGg6ICRwcmludC1ib2R5LW1pbi13aWR0aCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBjb21wb25lbnRzXG4gICAgLm5hdmJhciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuYmFkZ2Uge1xuICAgICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRibGFjaztcbiAgICB9XG5cbiAgICAudGFibGUge1xuICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZSAhaW1wb3J0YW50O1xuXG4gICAgICB0ZCxcbiAgICAgIHRoIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRhYmxlLWJvcmRlcmVkIHtcbiAgICAgIHRoLFxuICAgICAgdGQge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JheS0zMDAgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUtZGFyayB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcblxuICAgICAgdGgsXG4gICAgICB0ZCxcbiAgICAgIHRoZWFkIHRoLFxuICAgICAgdGJvZHkgKyB0Ym9keSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUgLnRoZWFkLWRhcmsgdGgge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgZW5kXG4gIH1cbn1cbiIsIlxuLy8gUHJpbnRpbmdcblxuJHByaW50LXBhZ2Utc2l6ZTogICAgICAgYTMgIWRlZmF1bHQ7XG4kcHJpbnQtYm9keS1taW4td2lkdGg6ICBtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBcImxnXCIpICFkZWZhdWx0O1xuIiwiLypcbiAqICBVc2FnZTpcbiAqXG4gICAgICA8ZGl2IGNsYXNzPVwic2stcm90YXRpbmctcGxhbmVcIj48L2Rpdj5cbiAqXG4gKi9cbkBpbXBvcnQgXCIuLi92YXJpYWJsZXNcIjtcblxuLnNrLXJvdGF0aW5nLXBsYW5lIHtcbiAgd2lkdGg6ICRzcGlua2l0LXNpemU7XG4gIGhlaWdodDogJHNwaW5raXQtc2l6ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNwaW5raXQtc3Bpbm5lci1jb2xvcjtcbiAgbWFyZ2luOiAkc3BpbmtpdC1zcGlubmVyLW1hcmdpbjtcbiAgYW5pbWF0aW9uOiBzay1yb3RhdGVQbGFuZSAxLjJzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xufVxuXG5Aa2V5ZnJhbWVzIHNrLXJvdGF0ZVBsYW5lIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTIwcHgpIHJvdGF0ZVgoMGRlZykgcm90YXRlWSgwZGVnKTtcbiAgfSA1MCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTIwcHgpIHJvdGF0ZVgoLTE4MC4xZGVnKSByb3RhdGVZKDBkZWcpO1xuICB9IDEwMCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTIwcHgpIHJvdGF0ZVgoLTE4MGRlZykgcm90YXRlWSgtMTc5LjlkZWcpO1xuICB9XG59XG4iLCIkc3BpbmtpdC1zcGlubmVyLW1hcmdpbjogNDBweCBhdXRvICFkZWZhdWx0O1xuJHNwaW5raXQtc2l6ZTogNDBweCAhZGVmYXVsdDtcbiRzcGlua2l0LXNwaW5uZXItY29sb3I6ICMzMzMgIWRlZmF1bHQ7XG4iLCIvKlxuICogIFVzYWdlOlxuICpcbiAgICAgIDxkaXYgY2xhc3M9XCJzay1kb3VibGUtYm91bmNlXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jaGlsZCBzay1kb3VibGUtYm91bmNlMVwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2hpbGQgc2stZG91YmxlLWJvdW5jZTJcIj48L2Rpdj5cbiAgICAgIDwvZGl2PlxuICpcbiAqL1xuQGltcG9ydCBcIi4uL3ZhcmlhYmxlc1wiO1xuXG4uc2stZG91YmxlLWJvdW5jZSB7XG4gIHdpZHRoOiAkc3BpbmtpdC1zaXplO1xuICBoZWlnaHQ6ICRzcGlua2l0LXNpemU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAkc3BpbmtpdC1zcGlubmVyLW1hcmdpbjtcblxuICAuc2stY2hpbGQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNwaW5raXQtc3Bpbm5lci1jb2xvcjtcbiAgICBvcGFjaXR5OiAwLjY7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGFuaW1hdGlvbjogc2stZG91YmxlQm91bmNlIDIuMHMgaW5maW5pdGUgZWFzZS1pbi1vdXQ7XG4gIH1cblxuICAuc2stZG91YmxlLWJvdW5jZTIge1xuICAgIGFuaW1hdGlvbi1kZWxheTogLTEuMHM7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzay1kb3VibGVCb3VuY2Uge1xuICAwJSwgMTAwJSB7IHRyYW5zZm9ybTogc2NhbGUoMCkgfVxuICA1MCUgeyB0cmFuc2Zvcm06IHNjYWxlKDEuMCkgfVxufVxuIiwiLypcbiAqICBVc2FnZTpcbiAqXG4gICAgICA8ZGl2IGNsYXNzPVwic2std2F2ZVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stcmVjdCBzay1yZWN0MVwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stcmVjdCBzay1yZWN0MlwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stcmVjdCBzay1yZWN0M1wiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stcmVjdCBzay1yZWN0NFwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stcmVjdCBzay1yZWN0NVwiPjwvZGl2PlxuICAgICAgPC9kaXY+XG4gKlxuICovXG5AaW1wb3J0IFwiLi4vdmFyaWFibGVzXCI7XG5cbi5zay13YXZlIHtcbiAgJHJlY3RDb3VudDogNTtcbiAgJGFuaW1hdGlvbkR1cmF0aW9uOiAxLjJzO1xuICAkZGVsYXlSYW5nZTogMC40cztcblxuICBtYXJnaW46ICRzcGlua2l0LXNwaW5uZXItbWFyZ2luO1xuICB3aWR0aDogJHNwaW5raXQtc2l6ZSAqIDEuMjU7XG4gIGhlaWdodDogJHNwaW5raXQtc2l6ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDEwcHg7XG5cbiAgLnNrLXJlY3Qge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzcGlua2l0LXNwaW5uZXItY29sb3I7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiA2cHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGFuaW1hdGlvbjogc2std2F2ZVN0cmV0Y2hEZWxheSAkYW5pbWF0aW9uRHVyYXRpb24gaW5maW5pdGUgZWFzZS1pbi1vdXQ7XG4gIH1cblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRyZWN0Q291bnQge1xuICAgIC5zay1yZWN0I3skaX0geyBhbmltYXRpb24tZGVsYXk6IC0gJGFuaW1hdGlvbkR1cmF0aW9uICsgJGRlbGF5UmFuZ2UgLyAoJHJlY3RDb3VudCAtIDEpICogKCRpIC0gMSk7IH1cbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNrLXdhdmVTdHJldGNoRGVsYXkge1xuICAwJSwgNDAlLCAxMDAlIHsgdHJhbnNmb3JtOiBzY2FsZVkoMC40KSB9XG4gIDIwJSB7IHRyYW5zZm9ybTogc2NhbGVZKDEuMCkgfVxufVxuIiwiLypcbiAqICBVc2FnZTpcbiAqXG4gICAgICA8ZGl2IGNsYXNzPVwic2std2FuZGVyaW5nLWN1YmVzXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jdWJlIHNrLWN1YmUxXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jdWJlIHNrLWN1YmUyXCI+PC9kaXY+XG4gICAgICA8L2Rpdj5cbiAqXG4gKi9cbkBpbXBvcnQgXCIuLi92YXJpYWJsZXNcIjtcblxuLnNrLXdhbmRlcmluZy1jdWJlcyB7XG4gICRhbmltYXRpb25EdXJhdGlvbjogMS44cztcblxuICBtYXJnaW46ICRzcGlua2l0LXNwaW5uZXItbWFyZ2luO1xuICB3aWR0aDogJHNwaW5raXQtc2l6ZTtcbiAgaGVpZ2h0OiAkc3BpbmtpdC1zaXplO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLnNrLWN1YmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzcGlua2l0LXNwaW5uZXItY29sb3I7XG4gICAgd2lkdGg6IDEwcHg7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBhbmltYXRpb246IHNrLXdhbmRlcmluZ0N1YmUgJGFuaW1hdGlvbkR1cmF0aW9uIGVhc2UtaW4tb3V0ICN7LSRhbmltYXRpb25EdXJhdGlvbn0gaW5maW5pdGUgYm90aDtcbiAgfVxuXG4gIC5zay1jdWJlMiB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAtJGFuaW1hdGlvbkR1cmF0aW9uIC8gMjtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNrLXdhbmRlcmluZ0N1YmUge1xuICAkY3ViZURpc3RhbmNlOiAzMHB4O1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH0gMjUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJGN1YmVEaXN0YW5jZSkgcm90YXRlKC05MGRlZykgc2NhbGUoMC41KTtcbiAgfSA1MCUge1xuICAgIC8qIEhhY2sgdG8gbWFrZSBGRiByb3RhdGUgaW4gdGhlIHJpZ2h0IGRpcmVjdGlvbiAqL1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkY3ViZURpc3RhbmNlKSB0cmFuc2xhdGVZKCRjdWJlRGlzdGFuY2UpIHJvdGF0ZSgtMTc5ZGVnKTtcbiAgfSA1MC4xJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCRjdWJlRGlzdGFuY2UpIHRyYW5zbGF0ZVkoJGN1YmVEaXN0YW5jZSkgcm90YXRlKC0xODBkZWcpO1xuICB9IDc1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApIHRyYW5zbGF0ZVkoJGN1YmVEaXN0YW5jZSkgcm90YXRlKC0yNzBkZWcpIHNjYWxlKDAuNSk7XG4gIH0gMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTM2MGRlZyk7XG4gIH1cbn1cbiIsIi8qXG4gKiAgVXNhZ2U6XG4gKlxuICAgICAgPGRpdiBjbGFzcz1cInNrLXNwaW5uZXIgc2stc3Bpbm5lci1wdWxzZVwiPjwvZGl2PlxuICpcbiAqL1xuQGltcG9ydCBcIi4uL3ZhcmlhYmxlc1wiO1xuXG4uc2stc3Bpbm5lci1wdWxzZSB7XG4gIHdpZHRoOiAkc3BpbmtpdC1zaXplO1xuICBoZWlnaHQ6ICRzcGlua2l0LXNpemU7XG4gIG1hcmdpbjogJHNwaW5raXQtc3Bpbm5lci1tYXJnaW47XG4gIGJhY2tncm91bmQtY29sb3I6ICRzcGlua2l0LXNwaW5uZXItY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGFuaW1hdGlvbjogc2stcHVsc2VTY2FsZU91dCAxLjBzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xufVxuXG5Aa2V5ZnJhbWVzIHNrLXB1bHNlU2NhbGVPdXQge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfSAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMCk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuIiwiLypcbiAqICBVc2FnZTpcbiAqXG4gICAgICA8ZGl2IGNsYXNzPVwic2stY2hhc2luZy1kb3RzXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jaGlsZCBzay1kb3QxXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jaGlsZCBzay1kb3QyXCI+PC9kaXY+XG4gICAgICA8L2Rpdj5cbiAqXG4gKi9cbkBpbXBvcnQgXCIuLi92YXJpYWJsZXNcIjtcblxuLnNrLWNoYXNpbmctZG90cyB7XG4gICRhbmltYXRpb25EdXJhdGlvbjogMi4wcztcblxuICBtYXJnaW46ICRzcGlua2l0LXNwaW5uZXItbWFyZ2luO1xuICB3aWR0aDogJHNwaW5raXQtc2l6ZTtcbiAgaGVpZ2h0OiAkc3BpbmtpdC1zaXplO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYW5pbWF0aW9uOiBzay1jaGFzaW5nRG90c1JvdGF0ZSAkYW5pbWF0aW9uRHVyYXRpb24gaW5maW5pdGUgbGluZWFyO1xuXG4gIC5zay1jaGlsZCB7XG4gICAgd2lkdGg6IDYwJTtcbiAgICBoZWlnaHQ6IDYwJTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3BpbmtpdC1zcGlubmVyLWNvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgYW5pbWF0aW9uOiBzay1jaGFzaW5nRG90c0JvdW5jZSAkYW5pbWF0aW9uRHVyYXRpb24gaW5maW5pdGUgZWFzZS1pbi1vdXQ7XG4gIH1cblxuICAuc2stZG90MiB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMDtcbiAgICBhbmltYXRpb24tZGVsYXk6IC0gJGFuaW1hdGlvbkR1cmF0aW9uLzI7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzay1jaGFzaW5nRG90c1JvdGF0ZSB7XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzay1jaGFzaW5nRG90c0JvdW5jZSB7XG4gIDAlLCAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB9IDUwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjApO1xuICB9XG59XG4iLCIvKlxuICogIFVzYWdlOlxuICpcbiAgICAgIDxkaXYgY2xhc3M9XCJzay10aHJlZS1ib3VuY2VcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNoaWxkIHNrLWJvdW5jZTFcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNoaWxkIHNrLWJvdW5jZTJcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNoaWxkIHNrLWJvdW5jZTNcIj48L2Rpdj5cbiAgICAgIDwvZGl2PlxuICpcbiAqL1xuIEBpbXBvcnQgXCIuLi92YXJpYWJsZXNcIjtcblxuLnNrLXRocmVlLWJvdW5jZSB7XG4gICRhbmltYXRpb25EdXJhdGlvbjogMS40cztcbiAgJGRlbGF5UmFuZ2U6IDAuMzJzO1xuICBtYXJnaW46ICRzcGlua2l0LXNwaW5uZXItbWFyZ2luO1xuICB3aWR0aDogJHNwaW5raXQtc2l6ZSAqIDI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAuc2stY2hpbGQge1xuICAgIHdpZHRoOiAkc3BpbmtpdC1zaXplIC8gMjtcbiAgICBoZWlnaHQ6ICRzcGlua2l0LXNpemUgLyAyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzcGlua2l0LXNwaW5uZXItY29sb3I7XG5cbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBhbmltYXRpb246IHNrLXRocmVlLWJvdW5jZSAkYW5pbWF0aW9uRHVyYXRpb24gZWFzZS1pbi1vdXQgMHMgaW5maW5pdGUgYm90aDtcbiAgfVxuXG4gIC5zay1ib3VuY2UxIHsgYW5pbWF0aW9uLWRlbGF5OiAtJGRlbGF5UmFuZ2U7IH1cbiAgLnNrLWJvdW5jZTIgeyBhbmltYXRpb24tZGVsYXk6IC0kZGVsYXlSYW5nZSAvIDI7IH1cbn1cblxuQGtleWZyYW1lcyBzay10aHJlZS1ib3VuY2Uge1xuICAwJSwgODAlLCAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB9IDQwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjApO1xuICB9XG59XG4iLCIvKlxuICogIFVzYWdlOlxuICpcbiAgICAgIDxkaXYgY2xhc3M9XCJzay1jaXJjbGVcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZTEgc2stY2hpbGRcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZTIgc2stY2hpbGRcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZTMgc2stY2hpbGRcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZTQgc2stY2hpbGRcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZTUgc2stY2hpbGRcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZTYgc2stY2hpbGRcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZTcgc2stY2hpbGRcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZTggc2stY2hpbGRcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZTkgc2stY2hpbGRcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZTEwIHNrLWNoaWxkXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jaXJjbGUxMSBzay1jaGlsZFwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2lyY2xlMTIgc2stY2hpbGRcIj48L2Rpdj5cbiAgICAgIDwvZGl2PlxuICpcbiAqL1xuQGltcG9ydCBcIi4uL3ZhcmlhYmxlc1wiO1xuXG4uc2stY2lyY2xlIHtcbiAgJGNpcmNsZUNvdW50OiAxMjtcbiAgJGFuaW1hdGlvbkR1cmF0aW9uOiAxLjJzO1xuXG4gIG1hcmdpbjogJHNwaW5raXQtc3Bpbm5lci1tYXJnaW47XG4gIHdpZHRoOiAkc3BpbmtpdC1zaXplO1xuICBoZWlnaHQ6ICRzcGlua2l0LXNpemU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAuc2stY2hpbGQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gIH1cblxuICAuc2stY2hpbGQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB3aWR0aDogMTUlO1xuICAgIGhlaWdodDogMTUlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzcGlua2l0LXNwaW5uZXItY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICBhbmltYXRpb246IHNrLWNpcmNsZUJvdW5jZURlbGF5ICRhbmltYXRpb25EdXJhdGlvbiBpbmZpbml0ZSBlYXNlLWluLW91dCBib3RoO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkY2lyY2xlQ291bnQge1xuICAgIC5zay1jaXJjbGUjeyRpfSB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyAvICRjaXJjbGVDb3VudCAqICgkaSAtIDEpKTsgfVxuICB9XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkY2lyY2xlQ291bnQge1xuICAgIC5zay1jaXJjbGUjeyRpfTpiZWZvcmUgeyBhbmltYXRpb24tZGVsYXk6IC0gJGFuaW1hdGlvbkR1cmF0aW9uICsgJGFuaW1hdGlvbkR1cmF0aW9uIC8gJGNpcmNsZUNvdW50ICogKCRpIC0gMSk7IH1cbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNrLWNpcmNsZUJvdW5jZURlbGF5IHtcbiAgMCUsIDgwJSwgMTAwJSB7IHRyYW5zZm9ybTogc2NhbGUoMCkgfVxuICA0MCUgeyB0cmFuc2Zvcm06IHNjYWxlKDEuMCkgfVxufVxuIiwiLypcbiAqICBVc2FnZTpcbiAqXG4gICAgICA8ZGl2IGNsYXNzPVwic2stY3ViZS1ncmlkXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jdWJlIHNrLWN1YmUxXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jdWJlIHNrLWN1YmUyXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jdWJlIHNrLWN1YmUzXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jdWJlIHNrLWN1YmU0XCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jdWJlIHNrLWN1YmU1XCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jdWJlIHNrLWN1YmU2XCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jdWJlIHNrLWN1YmU3XCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jdWJlIHNrLWN1YmU4XCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jdWJlIHNrLWN1YmU5XCI+PC9kaXY+XG4gICAgICA8L2Rpdj5cbiAqXG4gKi9cbkBpbXBvcnQgXCIuLi92YXJpYWJsZXNcIjtcblxuLnNrLWN1YmUtZ3JpZCB7XG4gICRkZWxheVJhbmdlOiAwLjRzO1xuXG4gIHdpZHRoOiAkc3BpbmtpdC1zaXplO1xuICBoZWlnaHQ6ICRzcGlua2l0LXNpemU7XG4gIG1hcmdpbjogJHNwaW5raXQtc3Bpbm5lci1tYXJnaW47XG5cbiAgLnNrLWN1YmUge1xuICAgIHdpZHRoOiAzMy4zMyU7XG4gICAgaGVpZ2h0OiAzMy4zMyU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNwaW5raXQtc3Bpbm5lci1jb2xvcjtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBhbmltYXRpb246IHNrLWN1YmVHcmlkU2NhbGVEZWxheSAxLjNzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xuICB9XG5cbiAgLypcbiAgICogU3Bpbm5lciBwb3NpdGlvbnNcbiAgICogMSAyIDNcbiAgICogNCA1IDZcbiAgICogNyA4IDlcbiAgICovXG5cbiAgLnNrLWN1YmUxIHsgYW5pbWF0aW9uLWRlbGF5OiAkZGVsYXlSYW5nZSAqIDAuNTAgfVxuICAuc2stY3ViZTIgeyBhbmltYXRpb24tZGVsYXk6ICRkZWxheVJhbmdlICogMC43NSB9XG4gIC5zay1jdWJlMyB7IGFuaW1hdGlvbi1kZWxheTogJGRlbGF5UmFuZ2UgfVxuICAuc2stY3ViZTQgeyBhbmltYXRpb24tZGVsYXk6ICRkZWxheVJhbmdlICogMC4yNSB9XG4gIC5zay1jdWJlNSB7IGFuaW1hdGlvbi1kZWxheTogJGRlbGF5UmFuZ2UgKiAwLjUwIH1cbiAgLnNrLWN1YmU2IHsgYW5pbWF0aW9uLWRlbGF5OiAkZGVsYXlSYW5nZSAqIDAuNzUgfVxuICAuc2stY3ViZTcgeyBhbmltYXRpb24tZGVsYXk6IDAuMHMgfVxuICAuc2stY3ViZTggeyBhbmltYXRpb24tZGVsYXk6ICRkZWxheVJhbmdlICogMC4yNSB9XG4gIC5zay1jdWJlOSB7IGFuaW1hdGlvbi1kZWxheTogJGRlbGF5UmFuZ2UgKiAwLjUwIH1cbn1cblxuQGtleWZyYW1lcyBzay1jdWJlR3JpZFNjYWxlRGVsYXkge1xuICAwJSwgNzAlLCAxMDAlIHsgdHJhbnNmb3JtOnNjYWxlM0QoMS4wLCAxLjAsIDEuMCkgfVxuICAzNSUgICAgICAgICAgIHsgdHJhbnNmb3JtOnNjYWxlM0QoMC4wLCAwLjAsIDEuMCkgfVxufVxuIiwiLypcbiAqICBVc2FnZTpcbiAqXG4gICAgICA8ZGl2IGNsYXNzPVwic2stZmFkaW5nLWNpcmNsZVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2lyY2xlMSBzay1jaXJjbGVcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZTIgc2stY2lyY2xlXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jaXJjbGUzIHNrLWNpcmNsZVwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2lyY2xlNCBzay1jaXJjbGVcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZTUgc2stY2lyY2xlXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jaXJjbGU2IHNrLWNpcmNsZVwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2lyY2xlNyBzay1jaXJjbGVcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZTggc2stY2lyY2xlXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jaXJjbGU5IHNrLWNpcmNsZVwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY2lyY2xlMTAgc2stY2lyY2xlXCI+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzay1jaXJjbGUxMSBzay1jaXJjbGVcIj48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNrLWNpcmNsZTEyIHNrLWNpcmNsZVwiPjwvZGl2PlxuICAgICAgPC9kaXY+XG4gKlxuICovXG5AaW1wb3J0IFwiLi4vdmFyaWFibGVzXCI7XG5cbi5zay1mYWRpbmctY2lyY2xlIHtcbiAgJGNpcmNsZUNvdW50OiAxMjtcbiAgJGFuaW1hdGlvbkR1cmF0aW9uOiAxLjJzO1xuXG4gIG1hcmdpbjogJHNwaW5raXQtc3Bpbm5lci1tYXJnaW47XG4gIHdpZHRoOiAkc3BpbmtpdC1zaXplO1xuICBoZWlnaHQ6ICRzcGlua2l0LXNpemU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAuc2stY2lyY2xlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICB9XG5cbiAgLnNrLWNpcmNsZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHdpZHRoOiAxNSU7XG4gICAgaGVpZ2h0OiAxNSU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNwaW5raXQtc3Bpbm5lci1jb2xvcjtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIGFuaW1hdGlvbjogc2stY2lyY2xlRmFkZURlbGF5ICRhbmltYXRpb25EdXJhdGlvbiBpbmZpbml0ZSBlYXNlLWluLW91dCBib3RoO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkY2lyY2xlQ291bnQge1xuICAgIC5zay1jaXJjbGUjeyRpfSB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyAvICRjaXJjbGVDb3VudCAqICgkaSAtIDEpKTsgfVxuICB9XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkY2lyY2xlQ291bnQge1xuICAgIC5zay1jaXJjbGUjeyRpfTpiZWZvcmUgeyBhbmltYXRpb24tZGVsYXk6IC0gJGFuaW1hdGlvbkR1cmF0aW9uICsgJGFuaW1hdGlvbkR1cmF0aW9uIC8gJGNpcmNsZUNvdW50ICogKCRpIC0gMSk7IH1cbiAgfVxuXG59XG5cbkBrZXlmcmFtZXMgc2stY2lyY2xlRmFkZURlbGF5IHtcbiAgMCUsIDM5JSwgMTAwJSB7IG9wYWNpdHk6IDAgfVxuICA0MCUgeyBvcGFjaXR5OiAxIH1cbn1cbiIsIi8qXG4gKiAgVXNhZ2U6XG4gKlxuICAgICAgPGRpdiBjbGFzcz1cInNrLWZvbGRpbmctY3ViZVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY3ViZTEgc2stY3ViZVwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY3ViZTIgc2stY3ViZVwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY3ViZTQgc2stY3ViZVwiPjwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2stY3ViZTMgc2stY3ViZVwiPjwvZGl2PlxuICAgICAgPC9kaXY+XG4gKlxuICovXG5AaW1wb3J0IFwiLi4vdmFyaWFibGVzXCI7XG5cbi5zay1mb2xkaW5nLWN1YmUge1xuICAkY3ViZUNvdW50OiA0O1xuICAkYW5pbWF0aW9uRHVyYXRpb246IDIuNHM7XG4gICRkZWxheVJhbmdlOiAkYW5pbWF0aW9uRHVyYXRpb24vMjtcblxuICBtYXJnaW46ICRzcGlua2l0LXNwaW5uZXItbWFyZ2luO1xuICB3aWR0aDogJHNwaW5raXQtc2l6ZTtcbiAgaGVpZ2h0OiAkc3BpbmtpdC1zaXplO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zZm9ybTogcm90YXRlWig0NWRlZyk7XG5cbiAgLnNrLWN1YmUge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA1MCU7XG4gICAgaGVpZ2h0OiA1MCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgfVxuXG4gIC5zay1jdWJlOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3BpbmtpdC1zcGlubmVyLWNvbG9yO1xuICAgIGFuaW1hdGlvbjogc2stZm9sZEN1YmVBbmdsZSAkYW5pbWF0aW9uRHVyYXRpb24gaW5maW5pdGUgbGluZWFyIGJvdGg7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAxMDAlO1xuICB9XG5cbiAgLy8gUm90YXRpb24gLyBhbmdsZVxuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRjdWJlQ291bnQge1xuICAgIC5zay1jdWJlI3skaX0ge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpIHJvdGF0ZVooOTBkZWcgKiAoJGkgLSAxKSk7XG4gICAgfVxuICB9XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkY3ViZUNvdW50IHtcbiAgICAuc2stY3ViZSN7JGl9OmJlZm9yZSB7XG4gICAgICBhbmltYXRpb24tZGVsYXk6ICRkZWxheVJhbmdlIC8gJGN1YmVDb3VudCAqICgkaSAtIDEpO1xuICAgIH1cbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNrLWZvbGRDdWJlQW5nbGUge1xuICAwJSwgMTAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDE0MHB4KSByb3RhdGVYKC0xODBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH0gMjUlLCA3NSUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTQwcHgpIHJvdGF0ZVgoMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfSA5MCUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMTQwcHgpIHJvdGF0ZVkoMTgwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG4iLCIvKipcbiAqIFN3aXBlciA2LjguNFxuICogTW9zdCBtb2Rlcm4gbW9iaWxlIHRvdWNoIHNsaWRlciBhbmQgZnJhbWV3b3JrIHdpdGggaGFyZHdhcmUgYWNjZWxlcmF0ZWQgdHJhbnNpdGlvbnNcbiAqIGh0dHBzOi8vc3dpcGVyanMuY29tXG4gKlxuICogQ29weXJpZ2h0IDIwMTQtMjAyMSBWbGFkaW1pciBLaGFybGFtcGlkaVxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZVxuICpcbiAqIFJlbGVhc2VkIG9uOiBBdWd1c3QgMjMsIDIwMjFcbiAqL1xuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdzd2lwZXItaWNvbnMnO1xuICBzcmM6IHVybCgnZGF0YTphcHBsaWNhdGlvbi9mb250LXdvZmY7Y2hhcnNldD11dGYtODtiYXNlNjQsIGQwOUdSZ0FCQUFBQUFBWmdBQkFBQUFBQURBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCR1JsUk5BQUFHUkFBQUFCb0FBQUFjaTZxSGtVZEVSVVlBQUFXZ0FBQUFJd0FBQUNRQVlBQlhSMUJQVXdBQUJoUUFBQUF1QUFBQU51QVk3K3hIVTFWQ0FBQUZ4QUFBQUZBQUFBQm0yZlBjelU5VEx6SUFBQUhjQUFBQVNnQUFBR0JQOVY1UlkyMWhjQUFBQWtRQUFBQ0lBQUFCWXQ2RjBjQmpkblFnQUFBQ3pBQUFBQVFBQUFBRUFCRUJSR2RoYzNBQUFBV1lBQUFBQ0FBQUFBai8vd0FEWjJ4NVpnQUFBeXdBQUFETUFBQUQyTUh0cnlWb1pXRmtBQUFCYkFBQUFEQUFBQUEyRTIrZW9XaG9aV0VBQUFHY0FBQUFId0FBQUNRQzlnRHphRzEwZUFBQUFpZ0FBQUFaQUFBQXJnSmtBQkZzYjJOaEFBQUMwQUFBQUZvQUFBQmFGUUFVR0cxaGVIQUFBQUc4QUFBQUh3QUFBQ0FBY0FCQWJtRnRaUUFBQS9nQUFBRTVBQUFDWHZGZEJ3bHdiM04wQUFBRk5BQUFBR0lBQUFDRTVzNzRoWGphWTJCa1lHQUFZcGY1SHUvaitXMitNbkF6TVlEQXphWDZRakQ2LzQvL0J4ajVHQThBdVJ3TVlHa0FQeXdMMTNqYVkyQmtZR0E4OFA4QWd4NGorLzhmUURZZkExQUVCV2dEQUlCMkJPb0FlTnBqWUdSZ1lOQmg0R2RnWWdBQkVNbklBQkp6WU5BRENRQUFDV2dBc1FCNDJtTmdZZnpDT0lHQmxZR0IwWWN4allHQndSMUtmMldRWkdoaFlHQmlZR1ZtZ0FGR0JpUVFrT2Fhd3REQW9NQlF4WGpnL3dFR1BjWUREQTR3TlVBMkNDZ3dzQUFBTzRFTDZnQUFlTnBqMk0wZ3lBQUNxeGdHTldCa1oyRDQvd01BK3hrRGRnQUFBSGphWTJCZ1lHYUFZQmtHUmdZUWlBSHlHTUY4RmdZSElNM0R3TUhBQkdRck1PZ3lXRExFTTFUOS93OFVCZkVNZ0x6RS8vLy9QLzUvL2YvVi94dityNGVhQUFlTWJBeHdJVVltSU1IRWdLWUFZalVjc0RBd3NMS3hjM0J5Y2ZQdzhqRVFBL2daQkFTRmhFVkV4Y1FsSktXa1pXVGw1QlVVbFpSVlZOWFVOVFFaQmdNQUFNUitFK2dBRVFGRUFBQUFLZ0FxQUNvQU5BQStBRWdBVWdCY0FHWUFjQUI2QUlRQWpnQ1lBS0lBckFDMkFNQUF5Z0RVQU40QTZBRHlBUHdCQmdFUUFSb0JKQUV1QVRnQlFnRk1BVllCWUFGcUFYUUJmZ0dJQVpJQm5BR21BYklCemdIc0FBQjQydTJOTVE2Q1VBeUdXNTY4eDlBbmVZWWdtNE1KYmhLRmFFeElPQVZYOEFwZXdTdDRCaWM0QWZlQWlkM1ZPQml4RHhmUFlFemE1TytYZmkwNFlBRGdnaVVJVUxDdUVKSzhWaE80YlN2cGRua3RISTVRQ1l0ZGkyc2w4Wm5YYUhscVVyTkt6ZEtjVDhjamxxK3J3WlN2SVZjek5pZXpzZm5QL3V6bm1mUEZCTk9ETTJLN01UUTQ1WUVBWnFHUDgxQW1HR2NGM2lQcU9vcDByMVNQVGFUYlZrZlVlNEhYajk3d1lFK3lOd1dZeHdXdTR2MXVnV0hnbzNTMVhkWkVWcVdNN0VUMGNmbkxHeFdma2dSNDJvMlB2V3JETUJTRmovSUhMYUYwektqUmdkaVZNd1NjTlJBb1dVb0g3OFkyaWNCL3lJWTA5QW42QUgyQmR1L1VCK3l4b3BZc2hRaUV2bnZ1MGRVUmdEdDhRZUM4UER3N0ZwamkzZkVBNHovUEVKNllPQjVoS2g0ZGozRXZYaHhQcUgvU0tVWTNySjdzclo0RlpuaDFQTUF0UGh3UDZmbDJQTUpNUERnZVE0clk4WVQ2R3phbzBlQUVBNDA5RHVnZ21UbkZuT2NTQ2lFaUxNZ3hDaVRJNkNxNURaVWQzUW1wMTB2TzBMYUxUZDJjak40Zk91bWxjN2xVWWJTUWNaRmt1dFJHN2c2SktaS3kwUm1kTFk2ODBDRG5FSitVTWtwRkZlMVJON254ZFZwWHJDNGFUdG5hdXJPblllcmNaZzJZVm1MTi9kL2djemZFaW1yRS9mcy9iT3VxMjlabW44dGxvT1JhWGdaZ0dhNzh5TzkvY25YbTJCcGFHdnEyNUR2OVM0RTkrNVNJYzlQcXVwSktoWUZTU2w0NytRY3IxbVlOQUFBQWVOcHR3MGNLd2tBQUFNRFpKQThRN09VSnZrTHNQZlo2ekZWRVJQeThxSGgyWUVSKzNpL0JQODN2SUJMTHlTc29LaW1ycUtxcGEyaHA2K2pxNlJzWUdobWJtSnFaU3kwc3JheHRiTzNzSFJ5ZG5FTVU0dVI2eXg3SkpYdmVQN1dyRHljQUFBQUFBQUgvL3dBQ2VOcGpZR1JnWU9BQlloa2daZ0pDWmdaTkJrWUdMUVp0SUpzRkxNWUFBQXczQUxnQWVOb2xpekVLZ0RBUUJDY2hSYkMyc0ZFUjBZRDZxVlFpQkN2L0g5ZXpHSTZaNVhCQXc4Q0JLL201aVFRVmF1VmJYTG5Pck1adjJvTGRLRmE4UGp1cnUyaEp6R2FibU9TTHpOTXp2dXRwQjNONDJtTmdaR0JnNEdLUVl6QmhZTXhKTE1sajRHQmdBWW93L1AvUEFKSmhMTTZzU29XS2ZXQ0FBd0RBamdiUkFBQjQybU5nWUdCa0FJSWJDWm81SVBybVVuMGhHQTBBTzhFRlRRQUEnKSBmb3JtYXQoJ3dvZmYnKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuOnJvb3Qge1xuICAtLXN3aXBlci10aGVtZS1jb2xvcjogIzAwN2FmZjtcbn1cbi5zd2lwZXItY29udGFpbmVyIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICAvKiBGaXggb2YgV2Via2l0IGZsaWNrZXJpbmcgKi9cbiAgei1pbmRleDogMTtcbn1cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci13cmFwcGVyIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbi5zd2lwZXItd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogZmxleDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbn1cbi5zd2lwZXItY29udGFpbmVyLWFuZHJvaWQgLnN3aXBlci1zbGlkZSxcbi5zd2lwZXItd3JhcHBlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwLCAwKTtcbn1cbi5zd2lwZXItY29udGFpbmVyLW11bHRpcm93ID4gLnN3aXBlci13cmFwcGVyIHtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuLnN3aXBlci1jb250YWluZXItbXVsdGlyb3ctY29sdW1uID4gLnN3aXBlci13cmFwcGVyIHtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuLnN3aXBlci1jb250YWluZXItZnJlZS1tb2RlID4gLnN3aXBlci13cmFwcGVyIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICBtYXJnaW46IDAgYXV0bztcbn1cbi5zd2lwZXItY29udGFpbmVyLXBvaW50ZXItZXZlbnRzIHtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbn1cbi5zd2lwZXItY29udGFpbmVyLXBvaW50ZXItZXZlbnRzLnN3aXBlci1jb250YWluZXItdmVydGljYWwge1xuICB0b3VjaC1hY3Rpb246IHBhbi14O1xufVxuLnN3aXBlci1zbGlkZSB7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbn1cbi5zd2lwZXItc2xpZGUtaW52aXNpYmxlLWJsYW5rIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLyogQXV0byBIZWlnaHQgKi9cbi5zd2lwZXItY29udGFpbmVyLWF1dG9oZWlnaHQsXG4uc3dpcGVyLWNvbnRhaW5lci1hdXRvaGVpZ2h0IC5zd2lwZXItc2xpZGUge1xuICBoZWlnaHQ6IGF1dG87XG59XG4uc3dpcGVyLWNvbnRhaW5lci1hdXRvaGVpZ2h0IC5zd2lwZXItd3JhcHBlciB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIGhlaWdodDtcbn1cbi8qIDNEIEVmZmVjdHMgKi9cbi5zd2lwZXItY29udGFpbmVyLTNkIHtcbiAgcGVyc3BlY3RpdmU6IDEyMDBweDtcbn1cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItd3JhcHBlcixcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3AsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20sXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLWN1YmUtc2hhZG93IHtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbn1cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgei1pbmRleDogMTA7XG59XG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGxlZnQsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG59XG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbn1cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG59XG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xufVxuLyogQ1NTIE1vZGUgKi9cbi5zd2lwZXItY29udGFpbmVyLWNzcy1tb2RlID4gLnN3aXBlci13cmFwcGVyIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHNjcm9sbGJhci13aWR0aDogbm9uZTtcbiAgLyogRm9yIEZpcmVmb3ggKi9cbiAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lO1xuICAvKiBGb3IgSW50ZXJuZXQgRXhwbG9yZXIgYW5kIEVkZ2UgKi9cbn1cbi5zd2lwZXItY29udGFpbmVyLWNzcy1tb2RlID4gLnN3aXBlci13cmFwcGVyOjotd2Via2l0LXNjcm9sbGJhciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1jc3MtbW9kZSA+IC5zd2lwZXItd3JhcHBlciA+IC5zd2lwZXItc2xpZGUge1xuICBzY3JvbGwtc25hcC1hbGlnbjogc3RhcnQgc3RhcnQ7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsLnN3aXBlci1jb250YWluZXItY3NzLW1vZGUgPiAuc3dpcGVyLXdyYXBwZXIge1xuICBzY3JvbGwtc25hcC10eXBlOiB4IG1hbmRhdG9yeTtcbn1cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsLnN3aXBlci1jb250YWluZXItY3NzLW1vZGUgPiAuc3dpcGVyLXdyYXBwZXIge1xuICBzY3JvbGwtc25hcC10eXBlOiB5IG1hbmRhdG9yeTtcbn1cbjpyb290IHtcbiAgLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplOiA0NHB4O1xuICAvKlxuICAtLXN3aXBlci1uYXZpZ2F0aW9uLWNvbG9yOiB2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpO1xuICAqL1xufVxuLnN3aXBlci1idXR0b24tcHJldixcbi5zd2lwZXItYnV0dG9uLW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB3aWR0aDogY2FsYyh2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplKSAvIDQ0ICogMjcpO1xuICBoZWlnaHQ6IHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpO1xuICBtYXJnaW4tdG9wOiBjYWxjKDBweCAtICh2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplKSAvIDIpKTtcbiAgei1pbmRleDogMTA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGNvbG9yOiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1jb2xvciwgdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKSk7XG59XG4uc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24tZGlzYWJsZWQsXG4uc3dpcGVyLWJ1dHRvbi1uZXh0LnN3aXBlci1idXR0b24tZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjM1O1xuICBjdXJzb3I6IGF1dG87XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLnN3aXBlci1idXR0b24tcHJldjphZnRlcixcbi5zd2lwZXItYnV0dG9uLW5leHQ6YWZ0ZXIge1xuICBmb250LWZhbWlseTogc3dpcGVyLWljb25zO1xuICBmb250LXNpemU6IHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGZvbnQtdmFyaWFudDogaW5pdGlhbDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG4uc3dpcGVyLWJ1dHRvbi1wcmV2LFxuLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItYnV0dG9uLW5leHQge1xuICBsZWZ0OiAxMHB4O1xuICByaWdodDogYXV0bztcbn1cbi5zd2lwZXItYnV0dG9uLXByZXY6YWZ0ZXIsXG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tbmV4dDphZnRlciB7XG4gIGNvbnRlbnQ6ICdwcmV2Jztcbn1cbi5zd2lwZXItYnV0dG9uLW5leHQsXG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tcHJldiB7XG4gIHJpZ2h0OiAxMHB4O1xuICBsZWZ0OiBhdXRvO1xufVxuLnN3aXBlci1idXR0b24tbmV4dDphZnRlcixcbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2OmFmdGVyIHtcbiAgY29udGVudDogJ25leHQnO1xufVxuLnN3aXBlci1idXR0b24tcHJldi5zd2lwZXItYnV0dG9uLXdoaXRlLFxuLnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLXdoaXRlIHtcbiAgLS1zd2lwZXItbmF2aWdhdGlvbi1jb2xvcjogI2ZmZmZmZjtcbn1cbi5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi1ibGFjayxcbi5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi1ibGFjayB7XG4gIC0tc3dpcGVyLW5hdmlnYXRpb24tY29sb3I6ICMwMDAwMDA7XG59XG4uc3dpcGVyLWJ1dHRvbi1sb2NrIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbjpyb290IHtcbiAgLypcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1jb2xvcjogdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKTtcbiAgKi9cbn1cbi5zd2lwZXItcGFnaW5hdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0cmFuc2l0aW9uOiAzMDBtcyBvcGFjaXR5O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB6LWluZGV4OiAxMDtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi5zd2lwZXItcGFnaW5hdGlvbi1oaWRkZW4ge1xuICBvcGFjaXR5OiAwO1xufVxuLyogQ29tbW9uIFN0eWxlcyAqL1xuLnN3aXBlci1wYWdpbmF0aW9uLWZyYWN0aW9uLFxuLnN3aXBlci1wYWdpbmF0aW9uLWN1c3RvbSxcbi5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyB7XG4gIGJvdHRvbTogMTBweDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG4vKiBCdWxsZXRzICovXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZm9udC1zaXplOiAwO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLW1haW4ge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1wcmV2IHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjY2KTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtcHJldi1wcmV2IHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtbmV4dCB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC42Nik7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLW5leHQtbmV4dCB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC4zMyk7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgd2lkdGg6IDhweDtcbiAgaGVpZ2h0OiA4cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICBvcGFjaXR5OiAwLjI7XG59XG5idXR0b24uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWNsaWNrYWJsZSAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldDpvbmx5LWNoaWxkIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICBvcGFjaXR5OiAxO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1jb2xvciwgdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKSk7XG59XG4uc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIHtcbiAgcmlnaHQ6IDEwcHg7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgLTUwJSwgMCk7XG59XG4uc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICBtYXJnaW46IDZweCAwO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIHtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgd2lkdGg6IDhweDtcbn1cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSwgMjAwbXMgdG9wO1xufVxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICBtYXJnaW46IDAgNHB4O1xufVxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyB7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgdHJhbnNpdGlvbjogMjAwbXMgdHJhbnNmb3JtLCAyMDBtcyBsZWZ0O1xufVxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbC5zd2lwZXItY29udGFpbmVyLXJ0bCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIHRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSwgMjAwbXMgcmlnaHQ7XG59XG4vKiBQcm9ncmVzcyAqL1xuLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1maWxsIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tY29sb3IsIHZhcigtLXN3aXBlci10aGVtZS1jb2xvcikpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1maWxsIHtcbiAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgdG9wO1xufVxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhcixcbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLW9wcG9zaXRlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNHB4O1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG59XG4uc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhcixcbi5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItb3Bwb3NpdGUge1xuICB3aWR0aDogNHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi13aGl0ZSB7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tY29sb3I6ICNmZmZmZmY7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYmxhY2sge1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLWNvbG9yOiAjMDAwMDAwO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWxvY2sge1xuICBkaXNwbGF5OiBub25lO1xufVxuLyogU2Nyb2xsYmFyICovXG4uc3dpcGVyLXNjcm9sbGJhciB7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItc2Nyb2xsYmFyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAxJTtcbiAgYm90dG9tOiAzcHg7XG4gIHotaW5kZXg6IDUwO1xuICBoZWlnaHQ6IDVweDtcbiAgd2lkdGg6IDk4JTtcbn1cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1zY3JvbGxiYXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAzcHg7XG4gIHRvcDogMSU7XG4gIHotaW5kZXg6IDUwO1xuICB3aWR0aDogNXB4O1xuICBoZWlnaHQ6IDk4JTtcbn1cbi5zd2lwZXItc2Nyb2xsYmFyLWRyYWcge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xufVxuLnN3aXBlci1zY3JvbGxiYXItY3Vyc29yLWRyYWcge1xuICBjdXJzb3I6IG1vdmU7XG59XG4uc3dpcGVyLXNjcm9sbGJhci1sb2NrIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5zd2lwZXItem9vbS1jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnN3aXBlci16b29tLWNvbnRhaW5lciA+IGltZyxcbi5zd2lwZXItem9vbS1jb250YWluZXIgPiBzdmcsXG4uc3dpcGVyLXpvb20tY29udGFpbmVyID4gY2FudmFzIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb250YWluO1xufVxuLnN3aXBlci1zbGlkZS16b29tZWQge1xuICBjdXJzb3I6IG1vdmU7XG59XG4vKiBQcmVsb2FkZXIgKi9cbjpyb290IHtcbiAgLypcbiAgLS1zd2lwZXItcHJlbG9hZGVyLWNvbG9yOiB2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpO1xuICAqL1xufVxuLnN3aXBlci1sYXp5LXByZWxvYWRlciB7XG4gIHdpZHRoOiA0MnB4O1xuICBoZWlnaHQ6IDQycHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC0yMXB4O1xuICBtYXJnaW4tdG9wOiAtMjFweDtcbiAgei1pbmRleDogMTA7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJTtcbiAgYW5pbWF0aW9uOiBzd2lwZXItcHJlbG9hZGVyLXNwaW4gMXMgaW5maW5pdGUgbGluZWFyO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3JkZXI6IDRweCBzb2xpZCB2YXIoLS1zd2lwZXItcHJlbG9hZGVyLWNvbG9yLCB2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpKTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5zd2lwZXItbGF6eS1wcmVsb2FkZXItd2hpdGUge1xuICAtLXN3aXBlci1wcmVsb2FkZXItY29sb3I6ICNmZmY7XG59XG4uc3dpcGVyLWxhenktcHJlbG9hZGVyLWJsYWNrIHtcbiAgLS1zd2lwZXItcHJlbG9hZGVyLWNvbG9yOiAjMDAwO1xufVxuQGtleWZyYW1lcyBzd2lwZXItcHJlbG9hZGVyLXNwaW4ge1xuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG4vKiBhMTF5ICovXG4uc3dpcGVyLWNvbnRhaW5lciAuc3dpcGVyLW5vdGlmaWNhdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgb3BhY2l0eTogMDtcbiAgei1pbmRleDogLTEwMDA7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1mYWRlLnN3aXBlci1jb250YWluZXItZnJlZS1tb2RlIC5zd2lwZXItc2xpZGUge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1mYWRlIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbn1cbi5zd2lwZXItY29udGFpbmVyLWZhZGUgLnN3aXBlci1zbGlkZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1mYWRlIC5zd2lwZXItc2xpZGUtYWN0aXZlLFxuLnN3aXBlci1jb250YWluZXItZmFkZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xufVxuLnN3aXBlci1jb250YWluZXItY3ViZSB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgei1pbmRleDogMTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUgLnN3aXBlci1zbGlkZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLnN3aXBlci1jb250YWluZXItY3ViZS5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLXNsaWRlIHtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAwO1xufVxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSxcbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1hY3RpdmUgLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbn1cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1hY3RpdmUsXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtbmV4dCxcbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1wcmV2LFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLW5leHQgKyAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCxcbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCB7XG4gIHotaW5kZXg6IDA7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1jdWJlLXNoYWRvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9wYWNpdHk6IDAuNjtcbiAgei1pbmRleDogMDtcbn1cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1jdWJlLXNoYWRvdzpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIGZpbHRlcjogYmx1cig1MHB4KTtcbn1cbi5zd2lwZXItY29udGFpbmVyLWZsaXAge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHotaW5kZXg6IDE7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUgLnN3aXBlci1zbGlkZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlLWFjdGl2ZSxcbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZS1hY3RpdmUgLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbn1cbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wLFxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20sXG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsXG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0IHtcbiAgei1pbmRleDogMDtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuIiwiLyogYmFzZWQgb24gYW5ndWxhci10b2FzdHIgY3NzIGh0dHBzOi8vZ2l0aHViLmNvbS9Gb3hhbmR4c3MvYW5ndWxhci10b2FzdHIvYmxvYi9jYjUwOGZlNjgwMWQ2YjI4OGQzYWZjNTI1YmI0MGZlZTFiMTAxNjUwL2Rpc3QvYW5ndWxhci10b2FzdHIuY3NzICovXG5cbi8qIHBvc2l0aW9uICovXG4udG9hc3QtY2VudGVyLWNlbnRlciB7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuLnRvYXN0LXRvcC1jZW50ZXIge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogMTAwJTtcbn1cbi50b2FzdC1ib3R0b20tY2VudGVyIHtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG4udG9hc3QtdG9wLWZ1bGwtd2lkdGgge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogMTAwJTtcbn1cbi50b2FzdC1ib3R0b20tZnVsbC13aWR0aCB7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnRvYXN0LXRvcC1sZWZ0IHtcbiAgdG9wOiAxMnB4O1xuICBsZWZ0OiAxMnB4O1xufVxuLnRvYXN0LXRvcC1yaWdodCB7XG4gIHRvcDogMTJweDtcbiAgcmlnaHQ6IDEycHg7XG59XG4udG9hc3QtYm90dG9tLXJpZ2h0IHtcbiAgcmlnaHQ6IDEycHg7XG4gIGJvdHRvbTogMTJweDtcbn1cbi50b2FzdC1ib3R0b20tbGVmdCB7XG4gIGJvdHRvbTogMTJweDtcbiAgbGVmdDogMTJweDtcbn1cblxuLyogdG9hc3Qgc3R5bGVzICovXG4udG9hc3QtdGl0bGUge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbi50b2FzdC1tZXNzYWdlIHtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xufVxuLnRvYXN0LW1lc3NhZ2UgYSxcbi50b2FzdC1tZXNzYWdlIGxhYmVsIHtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4udG9hc3QtbWVzc2FnZSBhOmhvdmVyIHtcbiAgY29sb3I6ICNDQ0NDQ0M7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi50b2FzdC1jbG9zZS1idXR0b24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHJpZ2h0OiAtMC4zZW07XG4gIHRvcDogLTAuM2VtO1xuICBmbG9hdDogcmlnaHQ7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LXNoYWRvdzogMCAxcHggMCAjZmZmZmZmO1xuICAvKiBvcGFjaXR5OiAwLjg7ICovXG59XG4udG9hc3QtY2xvc2UtYnV0dG9uOmhvdmVyLFxuLnRvYXN0LWNsb3NlLWJ1dHRvbjpmb2N1cyB7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3BhY2l0eTogMC40O1xufVxuLypBZGRpdGlvbmFsIHByb3BlcnRpZXMgZm9yIGJ1dHRvbiB2ZXJzaW9uXG4gaU9TIHJlcXVpcmVzIHRoZSBidXR0b24gZWxlbWVudCBpbnN0ZWFkIG9mIGFuIGFuY2hvciB0YWcuXG4gSWYgeW91IHdhbnQgdGhlIGFuY2hvciB2ZXJzaW9uLCBpdCByZXF1aXJlcyBgaHJlZj1cIiNcImAuKi9cbmJ1dHRvbi50b2FzdC1jbG9zZS1idXR0b24ge1xuICBwYWRkaW5nOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG59XG4udG9hc3QtY29udGFpbmVyIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogOTk5OTk5O1xufVxuLnRvYXN0LWNvbnRhaW5lciAqIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cbi50b2FzdC1jb250YWluZXIgLm5neC10b2FzdHIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbjogMCAwIDZweDtcbiAgcGFkZGluZzogMTVweCAxNXB4IDE1cHggNTBweDtcbiAgd2lkdGg6IDMwMHB4O1xuICBib3JkZXItcmFkaXVzOiAzcHggM3B4IDNweCAzcHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDE1cHggY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDI0cHg7XG4gIGJveC1zaGFkb3c6IDAgMCAxMnB4ICM5OTk5OTk7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnRvYXN0LWNvbnRhaW5lciAubmd4LXRvYXN0cjpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMCAxMnB4ICMwMDAwMDA7XG4gIG9wYWNpdHk6IDE7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi8qIGh0dHBzOi8vZ2l0aHViLmNvbS9Gb3J0QXdlc29tZS9Gb250LUF3ZXNvbWUtUHJvL2Jsb2IvbWFzdGVyL2FkdmFuY2VkLW9wdGlvbnMvcmF3LXN2Zy9yZWd1bGFyL2luZm8tY2lyY2xlLnN2ZyAqL1xuLnRvYXN0LWluZm8ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA1MTIgNTEyJyB3aWR0aD0nNTEyJyBoZWlnaHQ9JzUxMiclM0UlM0NwYXRoIGZpbGw9J3JnYigyNTUsMjU1LDI1NSknIGQ9J00yNTYgOEMxMTkuMDQzIDggOCAxMTkuMDgzIDggMjU2YzAgMTM2Ljk5NyAxMTEuMDQzIDI0OCAyNDggMjQ4czI0OC0xMTEuMDAzIDI0OC0yNDhDNTA0IDExOS4wODMgMzkyLjk1NyA4IDI1NiA4em0wIDExMGMyMy4xOTYgMCA0MiAxOC44MDQgNDIgNDJzLTE4LjgwNCA0Mi00MiA0Mi00Mi0xOC44MDQtNDItNDIgMTguODA0LTQyIDQyLTQyem01NiAyNTRjMCA2LjYyNy01LjM3MyAxMi0xMiAxMmgtODhjLTYuNjI3IDAtMTItNS4zNzMtMTItMTJ2LTI0YzAtNi42MjcgNS4zNzMtMTIgMTItMTJoMTJ2LTY0aC0xMmMtNi42MjcgMC0xMi01LjM3My0xMi0xMnYtMjRjMC02LjYyNyA1LjM3My0xMiAxMi0xMmg2NGM2LjYyNyAwIDEyIDUuMzczIDEyIDEydjEwMGgxMmM2LjYyNyAwIDEyIDUuMzczIDEyIDEydjI0eicvJTNFJTNDL3N2ZyUzRVwiKTtcbn1cbi8qIGh0dHBzOi8vZ2l0aHViLmNvbS9Gb3J0QXdlc29tZS9Gb250LUF3ZXNvbWUtUHJvL2Jsb2IvbWFzdGVyL2FkdmFuY2VkLW9wdGlvbnMvcmF3LXN2Zy9yZWd1bGFyL3RpbWVzLWNpcmNsZS5zdmcgKi9cbi50b2FzdC1lcnJvciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDUxMiA1MTInIHdpZHRoPSc1MTInIGhlaWdodD0nNTEyJyUzRSUzQ3BhdGggZmlsbD0ncmdiKDI1NSwyNTUsMjU1KScgZD0nTTI1NiA4QzExOSA4IDggMTE5IDggMjU2czExMSAyNDggMjQ4IDI0OCAyNDgtMTExIDI0OC0yNDhTMzkzIDggMjU2IDh6bTEyMS42IDMxMy4xYzQuNyA0LjcgNC43IDEyLjMgMCAxN0wzMzggMzc3LjZjLTQuNyA0LjctMTIuMyA0LjctMTcgMEwyNTYgMzEybC02NS4xIDY1LjZjLTQuNyA0LjctMTIuMyA0LjctMTcgMEwxMzQuNCAzMzhjLTQuNy00LjctNC43LTEyLjMgMC0xN2w2NS42LTY1LTY1LjYtNjUuMWMtNC43LTQuNy00LjctMTIuMyAwLTE3bDM5LjYtMzkuNmM0LjctNC43IDEyLjMtNC43IDE3IDBsNjUgNjUuNyA2NS4xLTY1LjZjNC43LTQuNyAxMi4zLTQuNyAxNyAwbDM5LjYgMzkuNmM0LjcgNC43IDQuNyAxMi4zIDAgMTdMMzEyIDI1Nmw2NS42IDY1LjF6Jy8lM0UlM0Mvc3ZnJTNFXCIpO1xufVxuLyogaHR0cHM6Ly9naXRodWIuY29tL0ZvcnRBd2Vzb21lL0ZvbnQtQXdlc29tZS1Qcm8vYmxvYi9tYXN0ZXIvYWR2YW5jZWQtb3B0aW9ucy9yYXctc3ZnL3JlZ3VsYXIvY2hlY2suc3ZnICovXG4udG9hc3Qtc3VjY2VzcyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDUxMiA1MTInIHdpZHRoPSc1MTInIGhlaWdodD0nNTEyJyUzRSUzQ3BhdGggZmlsbD0ncmdiKDI1NSwyNTUsMjU1KScgZD0nTTE3My44OTggNDM5LjQwNGwtMTY2LjQtMTY2LjRjLTkuOTk3LTkuOTk3LTkuOTk3LTI2LjIwNiAwLTM2LjIwNGwzNi4yMDMtMzYuMjA0YzkuOTk3LTkuOTk4IDI2LjIwNy05Ljk5OCAzNi4yMDQgMEwxOTIgMzEyLjY5IDQzMi4wOTUgNzIuNTk2YzkuOTk3LTkuOTk3IDI2LjIwNy05Ljk5NyAzNi4yMDQgMGwzNi4yMDMgMzYuMjA0YzkuOTk3IDkuOTk3IDkuOTk3IDI2LjIwNiAwIDM2LjIwNGwtMjk0LjQgMjk0LjQwMWMtOS45OTggOS45OTctMjYuMjA3IDkuOTk3LTM2LjIwNC0uMDAxeicvJTNFJTNDL3N2ZyUzRVwiKTtcbn1cbi8qIGh0dHBzOi8vZ2l0aHViLmNvbS9Gb3J0QXdlc29tZS9Gb250LUF3ZXNvbWUtUHJvL2Jsb2IvbWFzdGVyL2FkdmFuY2VkLW9wdGlvbnMvcmF3LXN2Zy9yZWd1bGFyL2V4Y2xhbWF0aW9uLXRyaWFuZ2xlLnN2ZyAqL1xuLnRvYXN0LXdhcm5pbmcge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA1NzYgNTEyJyB3aWR0aD0nNTc2JyBoZWlnaHQ9JzUxMiclM0UlM0NwYXRoIGZpbGw9J3JnYigyNTUsMjU1LDI1NSknIGQ9J001NjkuNTE3IDQ0MC4wMTNDNTg3Ljk3NSA0NzIuMDA3IDU2NC44MDYgNTEyIDUyNy45NCA1MTJINDguMDU0Yy0zNi45MzcgMC01OS45OTktNDAuMDU1LTQxLjU3Ny03MS45ODdMMjQ2LjQyMyAyMy45ODVjMTguNDY3LTMyLjAwOSA2NC43Mi0zMS45NTEgODMuMTU0IDBsMjM5Ljk0IDQxNi4wMjh6TTI4OCAzNTRjLTI1LjQwNSAwLTQ2IDIwLjU5NS00NiA0NnMyMC41OTUgNDYgNDYgNDYgNDYtMjAuNTk1IDQ2LTQ2LTIwLjU5NS00Ni00Ni00NnptLTQzLjY3My0xNjUuMzQ2bDcuNDE4IDEzNmMuMzQ3IDYuMzY0IDUuNjA5IDExLjM0NiAxMS45ODIgMTEuMzQ2aDQ4LjU0NmM2LjM3MyAwIDExLjYzNS00Ljk4MiAxMS45ODItMTEuMzQ2bDcuNDE4LTEzNmMuMzc1LTYuODc0LTUuMDk4LTEyLjY1NC0xMS45ODItMTIuNjU0aC02My4zODNjLTYuODg0IDAtMTIuMzU2IDUuNzgtMTEuOTgxIDEyLjY1NHonLyUzRSUzQy9zdmclM0VcIik7XG59XG4udG9hc3QtY29udGFpbmVyLnRvYXN0LXRvcC1jZW50ZXIgLm5neC10b2FzdHIsXG4udG9hc3QtY29udGFpbmVyLnRvYXN0LWJvdHRvbS1jZW50ZXIgLm5neC10b2FzdHIge1xuICB3aWR0aDogMzAwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG4udG9hc3QtY29udGFpbmVyLnRvYXN0LXRvcC1mdWxsLXdpZHRoIC5uZ3gtdG9hc3RyLFxuLnRvYXN0LWNvbnRhaW5lci50b2FzdC1ib3R0b20tZnVsbC13aWR0aCAubmd4LXRvYXN0ciB7XG4gIHdpZHRoOiA5NiU7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG4ubmd4LXRvYXN0ciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMzAzMDM7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xufVxuLnRvYXN0LXN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTFBMzUxO1xufVxuLnRvYXN0LWVycm9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0JEMzYyRjtcbn1cbi50b2FzdC1pbmZvIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJGOTZCNDtcbn1cbi50b2FzdC13YXJuaW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y4OTQwNjtcbn1cbi50b2FzdC1wcm9ncmVzcyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICBoZWlnaHQ6IDRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgb3BhY2l0eTogMC40O1xufVxuLyogUmVzcG9uc2l2ZSBEZXNpZ24gKi9cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDI0MHB4KSB7XG4gIC50b2FzdC1jb250YWluZXIgLm5neC10b2FzdHIuZGl2IHtcbiAgICBwYWRkaW5nOiA4cHggOHB4IDhweCA1MHB4O1xuICAgIHdpZHRoOiAxMWVtO1xuICB9XG4gIC50b2FzdC1jb250YWluZXIgLnRvYXN0LWNsb3NlLWJ1dHRvbiB7XG4gICAgcmlnaHQ6IC0wLjJlbTtcbiAgICB0b3A6IC0wLjJlbTtcbiAgfVxufVxuQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogMjQxcHgpIGFuZCAobWF4LXdpZHRoOiA0ODBweCkge1xuICAudG9hc3QtY29udGFpbmVyIC5uZ3gtdG9hc3RyLmRpdiB7XG4gICAgcGFkZGluZzogOHB4IDhweCA4cHggNTBweDtcbiAgICB3aWR0aDogMThlbTtcbiAgfVxuICAudG9hc3QtY29udGFpbmVyIC50b2FzdC1jbG9zZS1idXR0b24ge1xuICAgIHJpZ2h0OiAtMC4yZW07XG4gICAgdG9wOiAtMC4yZW07XG4gIH1cbn1cbkBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6IDQ4MXB4KSBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLnRvYXN0LWNvbnRhaW5lciAubmd4LXRvYXN0ci5kaXYge1xuICAgIHBhZGRpbmc6IDE1cHggMTVweCAxNXB4IDUwcHg7XG4gICAgd2lkdGg6IDI1ZW07XG4gIH1cbn1cbiJdfQ== */
