@import url(https://use.fontawesome.com/releases/v5.7.1/css/all.css);
/*
 * The 'app.css' just augments the 'web.css', so we don't need to reload the
 * entire bootstrap system - we can just render the specific style rules
 * required for the authenticated sections of the application
 */
/**
 * bootstrap-select
 */
/**
 *  Custom Mixins
 *
 */
/*
 * Render sass rules specifically for the app only areas of the application
 */
.alert {
  text-align: center;
  font-weight: 500;
  letter-spacing: 0.5px;
  padding: 0;
  border: 0;
  margin-bottom: 0;
  border: 1px solid transparent;
  padding: 0.375rem 1rem;
  font-size: 0.875rem;
  line-height: 1.71429;
  border-radius: 0.3125rem;
}

.alert-success {
  background-color: #67c600;
  border-color: #67c600;
  background-image: url("/svg/alert-success.svg");
  background-repeat: no-repeat;
  background-position: 0.625rem 0.4375rem;
  color: #fff;
}

.alert-danger {
  background-color: #d0021b;
  border-color: #d0021b;
  background-image: url("/svg/alert-danger.svg");
  background-repeat: no-repeat;
  background-position: 0.625rem 0.4375rem;
  color: #fff;
}

.alert-dismissible .close {
  padding: 0.45rem 0.95rem;
  text-shadow: inherit;
  opacity: 1;
}
.alert-dismissible .close .alert-close {
  width: 1.125rem;
  height: 1.125rem;
}

.navbar.fixed-top .navbar-nav .dropdown-menu {
  position: absolute;
  top: 2.7rem;
  border-radius: 0;
  min-width: 14rem;
  border-bottom-right-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}

.widget-form {
  border: 0.0625rem dashed #000000;
}

.widget-app {
  margin: 1.25rem 0;
  padding: 1.25rem 0.625rem 1.875rem;
}

.app {
  background-color: #d8e2e8;
}

[v-cloak] {
  display: none;
}

.info-centre {
  text-align: center;
  background-color: #ffffff;
  padding: 0.9375rem;
  margin-bottom: 2.5rem;
}

.title-navy {
  margin-bottom: 3rem;
  font-family: "Lato", sans-serif;
  font-size: 1.25rem;
}

.info-icon {
  margin: -0.25rem 0.625rem 0 0;
}

.mcl-logo {
  text-align: center;
  margin-bottom: 3.125rem;
}
.mcl-logo svg {
  margin: -0.3125rem 1.25rem 0 0;
}
.mcl-logo .title-navy {
  margin: 0;
}

.profile-nav {
  margin-bottom: 0.9375rem;
  padding: 0.625rem 0.9375rem;
  margin-right: 0.9375rem;
  background-color: #ffffff;
  color: #003d51;
  border-radius: 0.25rem;
  display: flex;
  align-items: center;
  width: 10rem;
  position: relative;
}
.profile-nav svg {
  margin-right: 0.3125rem;
}
.profile-nav span {
  font-weight: 700;
  font-size: 0.75rem;
  line-height: 1;
}
.profile-nav .confirm-number {
  color: #00addc;
  font-size: 1.625rem;
  padding-right: 0.125rem;
}
.profile-nav.active {
  background-color: #4a4a4a;
  color: #ffffff;
}
.profile-nav.active .path path {
  fill: #ffffff;
}
.profile-nav.active .stroke path {
  stroke: #ffffff;
}

.profile-navs {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 1.25rem;
}

.dob, .time {
  display: inline-block;
}
.dob::-moz-placeholder, .time::-moz-placeholder {
  font-size: 0.75rem;
}
.dob::placeholder, .time::placeholder {
  font-size: 0.75rem;
}

.dob.day, .dob.month, .time.hour, .time.minute {
  width: 3.5rem;
  margin-right: 0.625rem;
  padding: 0.6875rem;
}

.dob.month, time.minute {
  width: 3.75rem;
}

.dob.year {
  width: 4.375rem;
  padding: 0.6875rem 0.5rem;
}

.search-fields .top {
  justify-content: center;
  position: relative;
  margin-bottom: 1.875rem;
}
.search-fields .top .btn {
  position: absolute;
  right: 1.125rem;
}
.search-fields .top .notification {
  background-color: #67c600;
  border-radius: 0.25rem;
  padding: 0.4375rem 0;
  color: #ffffff;
}
.search-fields .top .notification svg {
  margin: -0.0625rem 0.625rem 0;
  width: 1.125rem;
  height: 1.125rem;
}
.search-fields .bottom {
  display: flex;
  flex-wrap: wrap;
}

.leaflet {
  height: 31.25rem;
  margin: 1.25rem 0;
}

.index-results {
  height: 1.875rem;
}

.results-index {
  padding-top: 1.25rem;
}

span.check-mark {
  display: none;
}

.selected span.check-mark {
  width: 0.9375rem;
  display: inline-block;
}

ul.validation-errors {
  padding: 0;
  list-style-type: none;
}
ul.validation-errors li {
  color: #d0021b;
}

.leaflet-shadow-pane img {
  display: none;
}

.trix-content {
  overflow-y: auto;
}

.modal-footer {
  background-color: #ffffff;
  margin-top: 0;
}

#galleryImageModal .modal-dialog {
  position: relative;
  top: 20%;
}
#galleryImageModal .modal-content {
  padding: 1.25rem 0;
}

.portrait {
  height: 15rem;
  width: 100%;
  margin: 0 0 1.25rem 0;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  border-radius: 0.1875rem;
}

.cookie-consent {
  position: fixed;
  bottom: 0.625rem;
  left: 0;
  width: 100%;
  text-align: center;
}
.cookie-consent .message {
  font-family: "Lato", sans-serif;
  font-weight: 700;
  text-align: left;
  background-color: #ffd400;
  color: #4a4a4a;
  width: -moz-fit-content;
  width: fit-content;
  display: block;
  margin: 0 auto;
  border-radius: 0.3125rem;
  padding: 0.3125rem 3.125rem;
}
.cookie-consent .message .btn {
  margin-left: 0.625rem;
  padding: 0.125rem 1.25rem;
}

.back-btn-header {
  position: absolute;
  right: 0.625rem;
  top: 0.3125rem;
  z-index: 10;
}

@media (max-width: 768px) {
  .back-btn-header {
    top: -1.25rem;
  }
  .profile-nav {
    width: 48%;
    margin-right: 2%;
  }
  .profile-nav:nth-child(even) {
    margin-right: 0;
    margin-left: 2%;
  }
}
.card-header {
  text-align: center;
  background-color: #00addc;
  color: #ffffff;
  font-size: 0.875rem;
  font-weight: 700;
}
.card-header svg {
  margin-right: 0.625rem;
}

.card-body {
  position: relative;
  background-color: #ffffff;
  padding: 0.9375rem 1.375rem 1.25rem;
  border-bottom-left-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
}
.card-body li {
  list-style: none;
  margin-bottom: 0.625rem;
}
.card-body li a {
  text-decoration: underline;
  text-decoration-color: #00addc;
  color: #003d51;
}
.card-body li .date {
  font-size: 0.625rem;
  color: #9b9b9b;
  margin: 0;
}
.card-body.renew .total-pay {
  text-align: center;
  font-size: 1.25rem;
  color: #00addc;
}

.card {
  margin-bottom: 1.25rem;
  border-radius: 0.25rem;
}
.card .btn-contain {
  margin: 0 auto;
  display: block;
  width: -moz-fit-content;
  width: fit-content;
}
.card .info-icon {
  margin: 0.375rem 0.625rem 0 0;
}
.card .btn-live {
  width: 7.5rem;
  height: 2.375rem;
  margin-bottom: 1.4375rem;
}
.card .fixture .date {
  color: #4a4a4a;
  font-weight: 700;
}
.card .fixture .time {
  background-color: #e3336f;
  font-size: 0.5rem;
  color: #ffffff;
  padding: 0.0625rem 0.25rem;
  margin-left: 0.625rem;
}
.card .fixture a {
  font-size: 0.75rem;
  text-decoration: none;
  display: block;
  font-weight: 700;
}
.card .profile-image {
  text-align: center;
}
.card .profile-image img {
  margin: 0 auto 1.1875rem;
  display: block;
}
.card .profile-details {
  margin: 2.1875rem 0 2.9375rem;
}
.card .profile-details .title {
  font-weight: 400;
  margin-bottom: 1.25rem;
}
.card .profile-details h3.player-info {
  font-size: 1.25rem;
  font-weight: bold;
}
.card .profile-details h4.player-info {
  font-size: 1rem;
  font-weight: normal;
}
.card .profile-details h5.player-info {
  font-size: 0.75rem;
  font-weight: bold;
}
.card .profile-update {
  text-align: center;
}

.card-info {
  display: flex;
  background-color: #f4f4f4;
  padding: 0.9375rem 0.9375rem 0;
  font-size: 0.75rem;
  margin-bottom: 0.9375rem;
  font-family: "Lato", sans-serif;
  font-weight: 700;
  color: #003d51;
}

.card-right .text-center {
  font-size: 0.75rem;
  font-weight: 700;
  color: #003d51;
}

.available-players {
  border-radius: 0;
  border: 1px solid #003d51;
}
.available-players .card-header {
  border-radius: 0;
  background-color: #003d51;
}
.available-players .card-body {
  padding-bottom: 0;
}
.available-players .card-body .search {
  margin-bottom: 0.9375rem;
}
.available-players .card-body li {
  margin: 0 -1.375rem;
  padding: 0.9375rem 0 0.9375rem 3.125rem;
  border-bottom: 1px solid #d8e2e8;
  color: #003d51;
  font-weight: 700;
  cursor: pointer;
}
.available-players .card-body li:active {
  background-color: #e3336f;
  color: #ffffff;
}

.admin-sidebar-menu .card-body {
  border-radius: 0.5rem;
  height: 85px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  font-size: 0.75rem;
  font-weight: 700;
  color: #003d51;
  padding: 0;
}
.admin-sidebar-menu .card-body .confirm-number {
  color: #00addc;
  font-size: 36px;
  line-height: 30px;
}

.gallery-images .image {
  max-width: 100%;
  height: 100%;
  display: block;
  margin: 0 auto;
  height: 100%;
  -o-object-fit: scale-down;
     object-fit: scale-down;
}
.gallery-images .image-display {
  margin-bottom: 1.25rem;
  height: 12.5rem;
  position: relative;
}
.gallery-images .image-display .delete-button, .gallery-images .image-display .change-button {
  position: absolute;
  top: 0;
  cursor: pointer;
  color: #ffffff;
  background-color: #003d51;
  padding: 0.125rem 0.625rem;
  border-radius: 0.25rem;
  margin: 0.3125rem;
}
.gallery-images .image-display .delete-button {
  right: 0;
}
@media (min-width: 768px) and (max-width: 991px) {
  .gallery-images .image-display .delete-button {
    top: auto;
    bottom: 0;
    left: 0;
    right: auto;
  }
}
.gallery-images .image-display .change-button {
  left: 0;
}

.image-club {
  width: 200px;
}

.profile-container {
  width: 150px;
  height: 150px;
  border-radius: 75px;
  background-size: cover;
}

.club-sponsor-image {
  max-width: 70%;
}
.club-sponsor-image img {
  max-width: 100%;
}

.profile-menu-wrapper {
  position: absolute;
  top: 0;
  right: 0;
}

@media (min-width: 992px) {
  .card-body.renew {
    padding: 0.9375rem 11.875rem 1.25rem;
  }
}
.table th {
  background-color: #c5c4c5;
  color: #4a4a4a;
  border: none;
}
.table td {
  color: #003d51;
  border-bottom: 1px solid #d8e2e8;
  font-weight: 500;
  vertical-align: middle;
}
.table td .btn {
  font-size: 0.875rem;
  padding-top: 0.125rem;
  padding-bottom: 0.125rem;
}
.table td.large {
  font-size: 1.125rem;
}
.table td.small {
  font-size: 0.875rem;
}
.table td.small a {
  text-decoration: underline;
  text-decoration-color: #00addc;
}
.table td.button {
  width: 10%;
}
.table td li, .table td p {
  color: #003d51;
  font-weight: 500;
  vertical-align: middle;
  font-family: inherit;
  font-size: inherit;
  line-height: normal;
}
.table td .actions a {
  cursor: pointer;
}
.table .team {
  text-align: center;
  width: 40%;
}
.table .button {
  text-align: right;
}

.app .player-starrings .position-1 td {
  background-color: #ececec;
}
.app .player-starrings.danger {
  border: 1px solid #d0021b;
}

td.club-name {
  width: 20%;
}
td.edit {
  width: 30px;
}
td.empty {
  width: auto;
}
td.accept-reject {
  width: 180px;
}
td svg {
  width: 1.125rem;
  height: 1.125rem;
}
td .accept-reject {
  width: 47%;
  padding: 0;
  margin: 0;
}
td .accept-reject svg {
  width: 1rem;
  height: 1rem;
}
td.captain svg path {
  stroke: #ffd400 !important;
  fill: #ffd400 !important;
}

.team-sheet-table td {
  width: auto !important;
}

.table-responsive td {
  width: 1%;
}

.user-image img {
  height: 5.625rem;
  width: auto;
}

.table-cost {
  width: 50%;
  margin: 0 auto 2.5rem;
}
.table-cost td {
  text-align: left;
}
.table-cost tbody td {
  font-weight: 400;
}
@media (max-width: 767px) {
  .table-cost {
    width: 100%;
  }
}

.admin-menu-collapse {
  margin: 1.25rem 0;
  padding: 0 0.9375rem;
  background-color: #003d51;
  color: #ffffff;
  font-size: 0.75rem;
  font-weight: 700;
  border-radius: 0.25rem;
  position: relative;
  transition: 0.5s;
}
.admin-menu-collapse svg {
  margin-right: 0.3125rem;
}
.admin-menu-collapse:before {
  content: "";
  background-image: url("/svg/rectangle-19-copy.svg");
  width: 1.5625rem;
  height: 1.5625rem;
  background-repeat: no-repeat;
  position: absolute;
  display: block;
  top: -0.6875rem;
  right: 2.5rem;
}

.admin-nav-item {
  margin: 1.25rem 0;
}
.admin-nav-item a {
  color: #fff;
}

.app-menu > div > a {
  height: 42px;
  width: 100%;
  border-bottom: 1px solid #9b9b9b;
  line-height: 42px;
  display: block;
  font-size: 0.75rem;
  font-weight: bold;
  letter-spacing: normal;
  color: #003d51;
}
.app-menu > div > a:hover {
  text-decoration: none;
}
.app-menu > div > a .image {
  margin-left: 16px;
  margin-right: 8px;
}

@media (max-width: 768px) {
  .admin-nav-item a {
    font-size: 0.625rem;
  }
  .admin-nav-item a svg {
    width: 1rem;
    height: auto;
  }
}
select.bs-select-hidden,
.bootstrap-select > select.bs-select-hidden,
select.selectpicker {
  display: none !important;
}

.bootstrap-select {
  width: 220px \0 ; /*IE9 and below*/
  vertical-align: middle;
}
.bootstrap-select > .dropdown-toggle {
  position: relative;
  width: 100%;
  z-index: 1;
  text-align: right;
  white-space: nowrap;
}
.bootstrap-select > .dropdown-toggle.bs-placeholder, .bootstrap-select > .dropdown-toggle.bs-placeholder:hover, .bootstrap-select > .dropdown-toggle.bs-placeholder:focus, .bootstrap-select > .dropdown-toggle.bs-placeholder:active {
  color: #999;
}
.bootstrap-select > .dropdown-toggle.bs-placeholder.btn-primary, .bootstrap-select > .dropdown-toggle.bs-placeholder.btn-primary:hover, .bootstrap-select > .dropdown-toggle.bs-placeholder.btn-primary:focus, .bootstrap-select > .dropdown-toggle.bs-placeholder.btn-primary:active, .bootstrap-select > .dropdown-toggle.bs-placeholder.btn-secondary, .bootstrap-select > .dropdown-toggle.bs-placeholder.btn-secondary:hover, .bootstrap-select > .dropdown-toggle.bs-placeholder.btn-secondary:focus, .bootstrap-select > .dropdown-toggle.bs-placeholder.btn-secondary:active, .bootstrap-select > .dropdown-toggle.bs-placeholder.btn-success, .bootstrap-select > .dropdown-toggle.bs-placeholder.btn-success:hover, .bootstrap-select > .dropdown-toggle.bs-placeholder.btn-success:focus, .bootstrap-select > .dropdown-toggle.bs-placeholder.btn-success:active, .bootstrap-select > .dropdown-toggle.bs-placeholder.btn-danger, .bootstrap-select > .dropdown-toggle.bs-placeholder.btn-danger:hover, .bootstrap-select > .dropdown-toggle.bs-placeholder.btn-danger:focus, .bootstrap-select > .dropdown-toggle.bs-placeholder.btn-danger:active, .bootstrap-select > .dropdown-toggle.bs-placeholder.btn-info, .bootstrap-select > .dropdown-toggle.bs-placeholder.btn-info:hover, .bootstrap-select > .dropdown-toggle.bs-placeholder.btn-info:focus, .bootstrap-select > .dropdown-toggle.bs-placeholder.btn-info:active, .bootstrap-select > .dropdown-toggle.bs-placeholder.btn-dark, .bootstrap-select > .dropdown-toggle.bs-placeholder.btn-dark:hover, .bootstrap-select > .dropdown-toggle.bs-placeholder.btn-dark:focus, .bootstrap-select > .dropdown-toggle.bs-placeholder.btn-dark:active {
  color: rgba(255, 255, 255, 0.5);
}
.bootstrap-select > select {
  position: absolute !important;
  bottom: 0;
  left: 50%;
  display: block !important;
  width: 0.5px !important;
  height: 100% !important;
  padding: 0 !important;
  opacity: 0 !important;
  border: none;
}
.bootstrap-select > select.mobile-device {
  top: 0;
  left: 0;
  display: block !important;
  width: 100% !important;
  z-index: 2;
}
.has-error .bootstrap-select .dropdown-toggle, .error .bootstrap-select .dropdown-toggle, .bootstrap-select.is-invalid .dropdown-toggle, .was-validated .bootstrap-select .selectpicker:invalid + .dropdown-toggle {
  border-color: rgb(185, 74, 72);
}
.bootstrap-select.is-valid .dropdown-toggle, .was-validated .bootstrap-select .selectpicker:valid + .dropdown-toggle {
  border-color: #28a745;
}
.bootstrap-select.fit-width {
  width: auto !important;
}
.bootstrap-select:not([class*=col-]):not([class*=form-control]):not(.input-group-btn) {
  width: 220px;
}
.bootstrap-select > select.mobile-device:focus + .dropdown-toggle,
.bootstrap-select .dropdown-toggle:focus {
  outline: thin dotted #333333 !important;
  outline: 5px auto -webkit-focus-ring-color !important;
  outline-offset: -2px;
}

.bootstrap-select.form-control {
  margin-bottom: 0;
  padding: 0;
  border: none;
}
:not(.input-group) > .bootstrap-select.form-control:not([class*=col-]) {
  width: 100%;
}
.bootstrap-select.form-control.input-group-btn {
  z-index: auto;
}
.bootstrap-select.form-control.input-group-btn:not(:first-child):not(:last-child) > .btn {
  border-radius: 0;
}

.bootstrap-select:not(.input-group-btn), .bootstrap-select[class*=col-] {
  float: none;
  display: inline-block;
  margin-left: 0;
}
.bootstrap-select.dropdown-menu-right, .bootstrap-select[class*=col-].dropdown-menu-right, .row .bootstrap-select[class*=col-].dropdown-menu-right {
  float: right;
}
.form-inline .bootstrap-select, .form-horizontal .bootstrap-select, .form-group .bootstrap-select {
  margin-bottom: 0;
}
.form-group-lg .bootstrap-select.form-control, .form-group-sm .bootstrap-select.form-control {
  padding: 0;
}
.form-group-lg .bootstrap-select.form-control .dropdown-toggle, .form-group-sm .bootstrap-select.form-control .dropdown-toggle {
  height: 100%;
  font-size: inherit;
  line-height: inherit;
  border-radius: inherit;
}
.bootstrap-select.form-control-sm .dropdown-toggle, .bootstrap-select.form-control-lg .dropdown-toggle {
  font-size: inherit;
  line-height: inherit;
  border-radius: inherit;
}
.bootstrap-select.form-control-sm .dropdown-toggle {
  padding: 0.25rem 0.5rem;
}
.bootstrap-select.form-control-lg .dropdown-toggle {
  padding: 0.5rem 1rem;
}
.form-inline .bootstrap-select .form-control {
  width: 100%;
}
.bootstrap-select.disabled,
.bootstrap-select > .disabled {
  cursor: not-allowed;
}
.bootstrap-select.disabled:focus,
.bootstrap-select > .disabled:focus {
  outline: none !important;
}
.bootstrap-select.bs-container {
  position: absolute;
  top: 0;
  left: 0;
  height: 0 !important;
  padding: 0 !important;
}
.bootstrap-select.bs-container .dropdown-menu {
  z-index: 1060;
}
.bootstrap-select .dropdown-toggle:before {
  content: "";
  display: inline-block;
}
.bootstrap-select .dropdown-toggle .filter-option {
  position: absolute;
  top: 0;
  left: 0;
  padding-top: inherit;
  padding-right: inherit;
  padding-bottom: inherit;
  padding-left: inherit;
  height: 100%;
  width: 100%;
  text-align: left;
}
.bootstrap-select .dropdown-toggle .filter-option-inner {
  padding-right: inherit;
}
.bootstrap-select .dropdown-toggle .filter-option-inner-inner {
  overflow: hidden;
}
.bootstrap-select .dropdown-toggle .caret {
  position: absolute;
  top: 50%;
  right: 12px;
  margin-top: -2px;
  vertical-align: middle;
}
.input-group .bootstrap-select.form-control .dropdown-toggle {
  border-radius: inherit;
}
.bootstrap-select[class*=col-] .dropdown-toggle {
  width: 100%;
}
.bootstrap-select .dropdown-menu {
  min-width: 100%;
  box-sizing: border-box;
}
.bootstrap-select .dropdown-menu > .inner:focus {
  outline: none !important;
}
.bootstrap-select .dropdown-menu.inner {
  position: static;
  float: none;
  border: 0;
  padding: 0;
  margin: 0;
  border-radius: 0;
  box-shadow: none;
}
.bootstrap-select .dropdown-menu li {
  position: relative;
}
.bootstrap-select .dropdown-menu li.active small {
  color: rgba(255, 255, 255, 0.5) !important;
}
.bootstrap-select .dropdown-menu li.disabled a {
  cursor: not-allowed;
}
.bootstrap-select .dropdown-menu li a {
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.bootstrap-select .dropdown-menu li a.opt {
  position: relative;
  padding-left: 2.25em;
}
.bootstrap-select .dropdown-menu li a span.check-mark {
  display: none;
}
.bootstrap-select .dropdown-menu li a span.text {
  display: inline-block;
}
.bootstrap-select .dropdown-menu li small {
  padding-left: 0.5em;
}
.bootstrap-select .dropdown-menu .notify {
  position: absolute;
  bottom: 5px;
  width: 96%;
  margin: 0 2%;
  min-height: 26px;
  padding: 3px 5px;
  background: rgb(245, 245, 245);
  border: 1px solid rgb(227, 227, 227);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
  pointer-events: none;
  opacity: 0.9;
  box-sizing: border-box;
}
.bootstrap-select .no-results {
  padding: 3px;
  background: #f5f5f5;
  margin: 0 5px;
  white-space: nowrap;
}
.bootstrap-select.fit-width .dropdown-toggle .filter-option {
  position: static;
  display: inline;
  padding: 0;
}
.bootstrap-select.fit-width .dropdown-toggle .filter-option-inner,
.bootstrap-select.fit-width .dropdown-toggle .filter-option-inner-inner {
  display: inline;
}
.bootstrap-select.fit-width .dropdown-toggle .caret {
  position: static;
  top: auto;
  margin-top: -1px;
}
.bootstrap-select.show-tick .dropdown-menu .selected span.check-mark {
  position: absolute;
  display: inline-block;
  right: 15px;
  top: 5px;
}
.bootstrap-select.show-tick .dropdown-menu li a span.text {
  margin-right: 34px;
}
.bootstrap-select .bs-ok-default:after {
  content: "";
  display: block;
  width: 0.5em;
  height: 1em;
  border-style: solid;
  border-width: 0 0.26em 0.26em 0;
  transform: rotate(45deg);
}

.bootstrap-select.show-menu-arrow.open > .dropdown-toggle, .bootstrap-select.show-menu-arrow.show > .dropdown-toggle {
  z-index: 1061;
}
.bootstrap-select.show-menu-arrow .dropdown-toggle .filter-option:before {
  content: "";
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-bottom: 7px solid rgba(204, 204, 204, 0.2);
  position: absolute;
  bottom: -4px;
  left: 9px;
  display: none;
}
.bootstrap-select.show-menu-arrow .dropdown-toggle .filter-option:after {
  content: "";
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-bottom: 6px solid white;
  position: absolute;
  bottom: -4px;
  left: 10px;
  display: none;
}
.bootstrap-select.show-menu-arrow.dropup .dropdown-toggle .filter-option:before {
  bottom: auto;
  top: -4px;
  border-top: 7px solid rgba(204, 204, 204, 0.2);
  border-bottom: 0;
}
.bootstrap-select.show-menu-arrow.dropup .dropdown-toggle .filter-option:after {
  bottom: auto;
  top: -4px;
  border-top: 6px solid white;
  border-bottom: 0;
}
.bootstrap-select.show-menu-arrow.pull-right .dropdown-toggle .filter-option:before {
  right: 12px;
  left: auto;
}
.bootstrap-select.show-menu-arrow.pull-right .dropdown-toggle .filter-option:after {
  right: 13px;
  left: auto;
}
.bootstrap-select.show-menu-arrow.open > .dropdown-toggle .filter-option:before, .bootstrap-select.show-menu-arrow.open > .dropdown-toggle .filter-option:after, .bootstrap-select.show-menu-arrow.show > .dropdown-toggle .filter-option:before, .bootstrap-select.show-menu-arrow.show > .dropdown-toggle .filter-option:after {
  display: block;
}

.bs-searchbox,
.bs-actionsbox,
.bs-donebutton {
  padding: 4px 8px;
}

.bs-actionsbox {
  width: 100%;
  box-sizing: border-box;
}
.bs-actionsbox .btn-group button {
  width: 50%;
}

.bs-donebutton {
  float: left;
  width: 100%;
  box-sizing: border-box;
}
.bs-donebutton .btn-group button {
  width: 100%;
}

.bs-searchbox + .bs-actionsbox {
  padding: 0 8px 4px;
}
.bs-searchbox .form-control {
  margin-bottom: 0;
  width: 100%;
  float: none;
}

.player-starrings .category {
  margin-top: 2.125rem;
  margin-bottom: 1.875rem;
}
.player-starrings .category .form-group label {
  padding-bottom: 0.5rem;
}
.player-starrings .category .styledSelect, .player-starrings .category .select-options {
  width: 15.625rem;
}
.player-starrings .table td {
  width: 100%;
}
.player-starrings .position_1 {
  background-color: #ececec;
}
.player-starrings .position_2 {
  background-color: #f4f4f4;
}
.player-starrings .position span {
  background-color: #00addc;
  color: #ffffff;
  border-radius: 0.25rem;
  padding: 0.125rem 0.3125rem;
}
.player-starrings.danger {
  border: 1px solid #d0021b;
}
.player-starrings.warning {
  border: 1px solid #fd7e14;
}
.player-starrings th {
  width: 1%;
}

.available-players .players {
  max-height: 37.5rem;
  overflow-y: auto;
  overflow-x: hidden;
  margin: 0 -1.375rem;
  padding: 0 1.375rem;
}

@media (max-width: 767.98px) {
  .available-players-wrapper {
    position: fixed;
    top: 0;
    right: -0.9375rem;
    z-index: 99999;
    width: 0;
  }
  .available-players-wrapper.active {
    width: 100%;
  }
  .available-players-wrapper .available-players {
    border: none;
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.5);
  }
  .available-players-wrapper .available-players .card-body {
    padding: 1.25rem 0.625rem 0;
  }
  .available-players-wrapper .available-players .card-body li {
    margin: 0 -0.625rem;
    padding-left: 1.25rem;
  }
  .available-players-wrapper .available-players .card-header {
    text-align: left;
    color: #003d51;
    border: none;
    background-color: #ffffff;
    padding: 2.125rem 0.625rem 0;
  }
  .available-players-wrapper .available-players .card-header p {
    text-align: center;
    margin: 2.25rem 0 0;
  }
  .available-players-wrapper .available-players .card-header img {
    width: 1rem;
    height: 1rem;
    margin: -0.125rem 0.3125rem 0 0;
  }
  .available-players-wrapper .available-players .players {
    max-height: 65vh;
  }
}
.team-sheet .title {
  color: #003d51;
  margin: 1.875rem 0;
  font-weight: 700;
}
.team-sheet .table tbody {
  background-color: #ececec;
}
.team-sheet .table td {
  border: none;
  font-family: "Lato", sans-serif;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.3;
  color: #003d51;
}
.team-sheet .table td img {
  width: 5rem;
  height: 5rem;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 50%;
}

#captainModal .captain-header {
  position: relative;
  width: 100%;
  text-align: center;
}
#captainModal .captain-header svg {
  position: absolute;
  top: 0.3125rem;
  right: 0;
}
#captainModal .captain-footer .btn-success {
  margin-right: 1.25rem;
}

.print {
  padding-top: 0rem;
}
.print .title {
  margin: 0.625rem 0;
}
.print .card-body {
  padding-top: 0;
  padding-bottom: 0;
}
.print .card {
  margin-bottom: 0;
}
.print .team-sheet .table td {
  background-color: #ececec !important;
}
.print .team-sheet .table td .age-group {
  padding: 0.5rem 3.125rem;
  border: 1px solid #4a4a4a;
}
.print .team-sheet .table td img {
  width: 4rem;
  height: 4rem;
}
.print .team-sheet .table th {
  background-color: #c5c4c5 !important;
}
.print .signature {
  display: table;
  width: 100%;
}
.print .signature span {
  display: table-cell;
}
.print .signature span:first-child {
  width: 15%;
}
.print .signature span:nth-child(2) {
  border-bottom: 1px solid #4a4a4a;
}
.print .right {
  right: 0;
}

/**
* The CSS shown here will not be introduced in the Quickstart guide, but
* shows how you can use CSS to style your Element's container.
*/
.StripeElement {
  display: block;
  width: 100%;
  height: calc(2.25000375rem + 2px);
  padding: 11px 0.75rem 0.375rem;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.71429;
  color: #495057;
  background-color: #ffffff;
  background-clip: padding-box;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
.StripeElement.invalid {
  border-color: #d0021b;
}

.StripeElement--focus {
  border-color: #00addc;
  box-shadow: none;
}

.StripeElement--invalid {
  border-color: #fa755a;
}

.StripeElement--webkit-autofill {
  background-color: #fefde5 !important;
}

.loading {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.5);
}

.loading-wheel {
  width: 20px;
  height: 20px;
  margin-top: -40px;
  margin-left: -40px;
  position: absolute;
  top: 50%;
  left: 50%;
  border-width: 30px;
  border-radius: 50%;
  -webkit-animation: spin 1s linear infinite;
}

.loading .loading-wheel {
  border-style: double;
  border-color: #ccc transparent;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3NzL2FwcC5jc3MiLCJtYXBwaW5ncyI6IjtBQUVBOzs7O0VBQUE7QUNrQ0E7O0VBQUE7QUNwQ0E7OztFQUFBO0FGb0JBOztFQUFBO0FHcEJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSGlCSjs7QUdkQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSGlCSjs7QUdkQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSGlCSjs7QUdiSTtFQUNJO0VBQ0E7RUFDQTtBSGdCUjtBR2RRO0VBQ0k7RUFDQTtBSGdCWjs7QUl0RFE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQ21DUjtFQUNBO0FMdUJKOztBTWpFQTtFQUNJO0FOb0VKOztBTWxFQTtFQUNJO0VBQ0E7QU5xRUo7O0FPMUVBO0VBQ0k7QVA2RUo7O0FPMUVBO0VBQ0k7QVA2RUo7O0FPMUVBO0VBQ0k7RUFDQSx5QkNGSTtFREdKO0VBQ0E7QVA2RUo7O0FPM0VBO0VBQ0k7RUFDQSwrQkMwQmdCO0VEekJoQjtBUDhFSjs7QU81RUE7RUFDSTtBUCtFSjs7QU83RUE7RUFDSTtFQUNBO0FQZ0ZKO0FPL0VJO0VBQ0k7QVBpRlI7QU8vRUk7RUFDSTtBUGlGUjs7QU85RUE7RUFDSTtFQUNBO0VBQ0E7RUFDQSx5QkM1Qkk7RUQ2QkosY0NqQ1E7RURrQ1I7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUGlGSjtBT2hGSTtFQUNJO0FQa0ZSO0FPaEZJO0VBQ0ksZ0JDY1c7RURiWDtFQUNBO0FQa0ZSO0FPaEZJO0VBQ0ksY0M3Q0Q7RUQ4Q0M7RUFDQTtBUGtGUjtBT2hGSTtFQUNJLHlCQ3BEQTtFRHFEQSxjQ2xEQTtBUm9JUjtBT2pGUTtFQUNJLGFDcERKO0FSdUlSO0FPakZRO0VBQ0ksZUN2REo7QVIwSVI7O0FPL0VBO0VBQ0k7RUFDQTtFQUNBO0FQa0ZKOztBT2hGQTtFQUNJO0FQbUZKO0FPbEZJO0VBQ0k7QVBvRlI7QU9yRkk7RUFDSTtBUG9GUjs7QU9qRkE7RUFDSTtFQUNBO0VBQ0E7QVBvRko7O0FPakZBO0VBQ0k7QVBvRko7O0FPakZBO0VBQ0k7RUFDQTtBUG9GSjs7QU9oRkk7RUFDSTtFQUNBO0VBQ0E7QVBtRlI7QU9sRlE7RUFDSTtFQUNBO0FQb0ZaO0FPbEZRO0VBQ0kseUJDOUZKO0VEK0ZJO0VBQ0E7RUFDQSxjQ2xHSjtBUnNMUjtBT25GWTtFQUNJO0VBQ0E7RUFDQTtBUHFGaEI7QU9qRkk7RUFDSTtFQUNBO0FQbUZSOztBT2hGQTtFQUNJO0VBQ0E7QVBtRko7O0FPaEZBO0VBQ0k7QVBtRko7O0FPakZBO0VBQ0k7QVBvRko7O0FPakZBO0VBQ0k7QVBvRko7O0FPakZBO0VBQ0k7RUFDQTtBUG9GSjs7QU9qRkE7RUFDSTtFQUNBO0FQb0ZKO0FPbkZJO0VBQ0k7QVBxRlI7O0FPaEZJO0VBQ0k7QVBtRlI7O0FPaEZBO0VBQ0k7QVBtRko7O0FPakZBO0VBQ0kseUJDckpJO0VEc0pKO0FQb0ZKOztBT2pGSTtFQUNJO0VBQ0E7QVBvRlI7QU9sRkk7RUFDSTtBUG9GUjs7QU9oRkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUG1GSjs7QU9qRkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FQb0ZKO0FPbkZJO0VBQ0ksK0JDaEpZO0VEaUpaLGdCQzlIVztFRCtIWDtFQUNBLHlCQ2xMQztFRG1MRCxjQ3pMQTtFRDBMQTtFQUFBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVBxRlI7QU9wRlE7RUFDSTtFQUNBO0FQc0ZaOztBT2pGQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FQb0ZKOztBT2pGQTtFQUNJO0lBQ0k7RVBvRk47RU9sRkU7SUFDSTtJQUNBO0VQb0ZOO0VPbkZNO0lBQ0k7SUFDQTtFUHFGVjtBQUNGO0FTalRBO0VBQ0k7RUFDQSx5QkRLRztFQ0pILGNES0k7RUNKSjtFQUNBLGdCRHdEZTtBUjJQbkI7QVNsVEk7RUFDSTtBVG9UUjs7QVNqVEE7RUFDSTtFQUNBLHlCREpJO0VDS0o7RUFDQTtFQUNBO0FUb1RKO0FTblRJO0VBQ0k7RUFDQTtBVHFUUjtBU3BUUTtFQUNJO0VBQ0EsOEJEZEw7RUNlSyxjRGxCQTtBUndVWjtBU3BUUTtFQUNJO0VBQ0EsY0R4QkQ7RUN5QkM7QVRzVFo7QVNsVFE7RUFDSTtFQUNBO0VBQ0EsY0QzQkw7QVIrVVA7O0FTaFRBO0VBQ0k7RUFDQTtBVG1USjtBU2xUSTtFQUNJO0VBQ0E7RUFDQTtFQUFBO0FUb1RSO0FTbFRJO0VBQ0k7QVRvVFI7QVNsVEk7RUFDSTtFQUNBO0VBQ0E7QVRvVFI7QVNqVFE7RUFDSSxjRG5ESjtFQ29ESSxnQkRJTztBUitTbkI7QVNqVFE7RUFDSSx5QkR0REw7RUN1REs7RUFDQSxjRHRESjtFQ3VESTtFQUNBO0FUbVRaO0FTalRRO0VBQ0k7RUFDQTtFQUNBO0VBQ0EsZ0JEVE87QVI0VG5CO0FTaFRJO0VBQ0k7QVRrVFI7QVNqVFE7RUFDSTtFQUNBO0FUbVRaO0FTaFRJO0VBQ0k7QVRrVFI7QVNoVFE7RUFDSSxnQkR6QlM7RUMwQlQ7QVRrVFo7QVMvU1E7RUFDSTtFQUNBO0FUaVRaO0FTOVNRO0VBQ0k7RUFDQTtBVGdUWjtBUzdTUTtFQUNJO0VBQ0E7QVQrU1o7QVMzU0k7RUFDSTtBVDZTUjs7QVMxU0E7RUFDSTtFQUNBLHlCRDlHUztFQytHVDtFQUNBO0VBQ0E7RUFDQSwrQkR4RWdCO0VDeUVoQixnQkR0RGU7RUN1RGYsY0RoSFE7QVI2Wlo7O0FTMVNJO0VBQ0k7RUFDQSxnQkQ1RFc7RUM2RFgsY0R0SEk7QVJtYVo7O0FTelNBO0VBQ0k7RUFDQTtBVDRTSjtBUzNTSTtFQUNJO0VBQ0EseUJEL0hJO0FSNGFaO0FTM1NJO0VBQ0k7QVQ2U1I7QVM1U1E7RUFDSTtBVDhTWjtBUzVTUTtFQUNJO0VBQ0E7RUFDQTtFQUNBLGNEMUlBO0VDMklBLGdCRGxGTztFQ21GUDtBVDhTWjtBUzdTWTtFQUNJLHlCRDVJVDtFQzZJUyxjRDNJUjtBUjBiUjs7QVN4U0k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVDJTUjtBUzFTUTtFQUNJLGNEL0pMO0VDZ0tLO0VBQ0E7QVQ0U1o7O0FTclNJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0tBQUE7QVR3U1I7QVN0U0k7RUFDSTtFQUNBO0VBQ0E7QVR3U1I7QVN2U1E7RUFDSTtFQUNBO0VBQ0E7RUFDQSxjRHZMSjtFQ3dMSSx5QkQ1TEE7RUM2TEE7RUFDQTtFQUNBO0FUeVNaO0FTdlNRO0VBQ0k7QVR5U1o7QVN2U1k7RUFISjtJQUlRO0lBQ0E7SUFDQTtJQUNBO0VUMFNkO0FBQ0Y7QVN4U1E7RUFDSTtBVDBTWjs7QVNyU0E7RUFDSTtBVHdTSjs7QVNyU0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBVHdTSjs7QVN0U0E7RUFDSTtBVHlTSjtBU3hTSTtFQUNJO0FUMFNSOztBU3ZTQTtFQUNJO0VBQ0E7RUFDQTtBVDBTSjs7QVN2U0E7RUFDSTtJQUNJO0VUMFNOO0FBQ0Y7QVV2aEJJO0VBQ0k7RUFDQSxjRkVBO0VFREE7QVZ5aEJSO0FVdmhCSTtFQUNJLGNGSEk7RUVJSjtFQUNBLGdCRm1EZTtFRWxEZjtBVnloQlI7QVV4aEJRO0VBQ0k7RUFDQTtFQUNBO0FWMGhCWjtBVXhoQlE7RUFDSTtBVjBoQlo7QVV4aEJRO0VBQ0k7QVYwaEJaO0FVemhCWTtFQUNJO0VBQ0EsOEJGaEJUO0FSMmlCUDtBVXhoQlE7RUFDSTtBVjBoQlo7QVV2aEJRO0VBQ0ksY0YzQkE7RUU0QkEsZ0JGNEJXO0VFM0JYO0VBQ0E7RUFDQTtFQUNBO0FWeWhCWjtBVXRoQlE7RUFDSTtBVndoQlo7QVVyaEJJO0VBQ0k7RUFDQTtBVnVoQlI7QVVyaEJJO0VBQ0k7QVZ1aEJSOztBVW5oQkk7RUFDSTtBVnNoQlI7QVVwaEJJO0VBQ0k7QVZzaEJSOztBVWxoQkk7RUFBYTtBVnNoQmpCO0FVcmhCSTtFQUFRO0FWd2hCWjtBVXZoQkk7RUFBUztBVjBoQmI7QVV6aEJJO0VBQWtCO0FWNGhCdEI7QVUzaEJJO0VBQ0k7RUFDQTtBVjZoQlI7QVUzaEJJO0VBQ0k7RUFDQTtFQUNBO0FWNmhCUjtBVTVoQlE7RUFDSTtFQUNBO0FWOGhCWjtBVXpoQlk7RUFDSTtFQUNB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STtFQUNJO0FiZ2lDUjtBYTloQ0k7RUFDSTtBYmdpQ1I7O0FhNWhDSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWIraENSOztBYTVoQ0E7RUFDSTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWIraENOO0VhOWhDTTtJQUNJO0ViZ2lDVjtFYTloQ007SUFDSTtJQUNBO0ViZ2lDVjtFYS9oQ1U7SUFDSTtFYmlpQ2Q7RWFoaUNjO0lBQ0k7SUFDQTtFYmtpQ2xCO0VhL2hDVTtJQUNJO0lBQ0EsY0xoRUo7SUtpRUk7SUFDQSx5Qkw5RFI7SUsrRFE7RWJpaUNkO0VhaGlDYztJQUNJO0lBQ0E7RWJraUNsQjtFYWhpQ2M7SUFDSTtJQUNBO0lBQ0E7RWJraUNsQjtFYS9oQ1U7SUFDSTtFYmlpQ2Q7QUFDRjtBYTVoQ0k7RUFDSSxjTHRGSTtFS3VGSjtFQUNBLGdCTC9CVztBUjZqQ25CO0FhM2hDUTtFQUNJO0FiNmhDWjtBYTNoQ1E7RUFDSTtFQUNBLCtCTDFEUTtFSzJEUjtFQUNBLGdCTHpDTztFSzBDUDtFQUNBLGNMcEdBO0FSaW9DWjtBYTVoQ1k7RUFDSTtFQUNBO0VBQ0E7S0FBQTtFQUNBO0FiOGhDaEI7O0FjMW9DSTtFQUNJO0VBQ0E7RUFDQTtBZDZvQ1I7QWM1b0NRO0VBQ0k7RUFDQTtFQUNBO0FkOG9DWjtBYzFvQ1E7RUFDSTtBZDRvQ1o7O0FlenBDQTtFQUNJO0FmNHBDSjtBZTNwQ0k7RUFDSTtBZjZwQ1I7QWUzcENJO0VBQ0k7RUFDQTtBZjZwQ1I7QWUzcENJO0VBQ0k7QWY2cENSO0FlMXBDUTtFQUNJO0FmNHBDWjtBZTNwQ1k7RUFDSTtFQUNBO0FmNnBDaEI7QWUzcENZO0VBQ0k7RUFDQTtBZjZwQ2hCO0FleHBDUTtFQUNJO0FmMHBDWjtBZXZwQ0k7RUFDSTtFQUNBO0FmeXBDUjtBZXhwQ1E7RUFDSTtBZjBwQ1o7QWV6cENZO0VBQ0k7QWYycENoQjtBZXpwQ1k7RUFDSTtBZjJwQ2hCO0FldnBDSTtFQUNJO0FmeXBDUjs7QWdCcnNDQTs7O0NBQUE7QUFJQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0FoQnlzQ0o7QWdCdnNDSTtFQUNFLHFCUlpBO0FScXRDTjs7QWdCcHNDQTtFQUNJO0VBRUE7QWhCdXNDSjs7QWdCcHNDQTtFQUNFO0FoQnVzQ0Y7O0FnQnBzQ0E7RUFDRTtBaEJ1c0NGOztBZ0Jwc0NBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEJ1c0NGOztBZ0Jyc0NBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7QWhCc3NDRjs7QWdCcHNDQTtFQUNFO0VBQ0E7QWhCdXNDRixDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvYXBwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvYXBwL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy9hcHAvX21peGlucy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzL2FwcC9fYWxlcnQuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy9hcHAvX3RvcC1uYXYuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvYXBwL193aWRnZXQuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy9hcHAvX2NvbW1vbi5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzL3dlYi9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvYXBwL19jYXJkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvYXBwL190YWJsZS5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzL2FwcC9fbWVudS5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzL2FwcC9fYm9vdHN0cmFwLXNlbGVjdC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzL2FwcC9fc3RhcnJpbmdzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvYXBwL19tb2RhbHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9yZXNvdXJjZXMvc2Fzcy9hcHAvX3ByaW50LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvYXBwL19zdHJpcGUuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IHVybChcImh0dHBzOi8vdXNlLmZvbnRhd2Vzb21lLmNvbS9yZWxlYXNlcy92NS43LjEvY3NzL2FsbC5jc3NcIik7XG5cbi8qXG4gKiBUaGUgJ2FwcC5jc3MnIGp1c3QgYXVnbWVudHMgdGhlICd3ZWIuY3NzJywgc28gd2UgZG9uJ3QgbmVlZCB0byByZWxvYWQgdGhlXG4gKiBlbnRpcmUgYm9vdHN0cmFwIHN5c3RlbSAtIHdlIGNhbiBqdXN0IHJlbmRlciB0aGUgc3BlY2lmaWMgc3R5bGUgcnVsZXNcbiAqIHJlcXVpcmVkIGZvciB0aGUgYXV0aGVudGljYXRlZCBzZWN0aW9ucyBvZiB0aGUgYXBwbGljYXRpb25cbiAqL1xuXG5cbi8vIFdlIHN0aWxsIG5lZWQgdG8gZW5zdXJlIHRoYXQgYWxsIHRoZSBmdW5jdGlvbnMsIHZhcmlhYmxlcyBhbmQgbWl4aW5zIGFyZVxuLy8gYXZhaWxhYmxlIGZvciB1c2VcbkBpbXBvcnQgXCJmdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJ+Ym9vdHN0cmFwL3Njc3MvZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwiYXBwL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIndlYi92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJ+Ym9vdHN0cmFwL3Njc3MvdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwifmJvb3RzdHJhcC9zY3NzL21peGluc1wiO1xuLy8gQWRkIG91ciBvd24gbWl4aW5zIGlmIG5lZWRlZFxuQGltcG9ydCBcImFwcC9taXhpbnNcIjtcblxuLypcbiAqIFJlbmRlciBzYXNzIHJ1bGVzIHNwZWNpZmljYWxseSBmb3IgdGhlIGFwcCBvbmx5IGFyZWFzIG9mIHRoZSBhcHBsaWNhdGlvblxuICovXG5cbkBpbXBvcnQgXCJhcHAvYWxlcnRcIjtcbkBpbXBvcnQgXCJhcHAvdG9wLW5hdlwiO1xuQGltcG9ydCBcImFwcC93aWRnZXRcIjtcbkBpbXBvcnQgXCJhcHAvY29tbW9uXCI7XG5AaW1wb3J0IFwiYXBwL2NhcmRcIjtcbkBpbXBvcnQgXCJhcHAvdGFibGVcIjtcbkBpbXBvcnQgXCJhcHAvbWVudVwiO1xuQGltcG9ydCBcImFwcC9ib290c3RyYXAtc2VsZWN0XCI7XG5AaW1wb3J0IFwiYXBwL3N0YXJyaW5nc1wiO1xuQGltcG9ydCBcImFwcC9tb2RhbHNcIjtcbkBpbXBvcnQgXCJhcHAvcHJpbnRcIjtcbkBpbXBvcnQgXCJhcHAvc3RyaXBlXCI7IiwiJGNvbG9yczogKFxuICBcImJsdWVcIjogIzFGNzFBMSxcbiAgXCJsaWdodC1ibHVlXCI6ICMzQzhDQkMsXG4gIFwiZGFyay1ibHVlXCI6ICMwMjFDMkMsXG4gIFwicmVkXCI6ICNERTM0MzQsXG4gIFwib3JhbmdlXCI6ICNGMEFENEUsXG4gIFwieWVsbG93XCI6ICNGRkQ4NkMsXG4pO1xuXG4kdGhlbWUtY29sb3JzOiAoXG4gIFwicHJpbWFyeVwiOiAjMUY3MUExLFxuICBcImRhbmdlclwiOiAjREUzNDM0LFxuICBcIndhcm5pbmdcIjogI0YwQUQ0RSxcbiAgXCJzdWNjZXNzXCIgOiAjNjdjNjAwLFxuICBcImxpZ2h0LWJsdWVcIjogbWFwX2dldCgkY29sb3JzLCAnbGlnaHQtYmx1ZScpLFxuKTtcblxuJGxpZ2h0LWJsdWU6IG1hcF9nZXQoJGNvbG9ycywgJ2xpZ2h0LWJsdWUnKTtcbiRsaWdodC1ibHVlOiBtYXBfZ2V0KCRjb2xvcnMsICdsaWdodC1ibHVlJyk7XG4kbWVkaXVtLWJsdWU6ICMwMzM4NTc7XG4kZGFyay1ibHVlOiAjMDIxQzJDO1xuXG4kZm9udC1mYW1pbHktbGF0bzogICdMYXRvJywgc2Fucy1zZXJpZjtcbiRmb250LWZhbWlseS1yb2JvdG86ICAnUm9ib3RvJywgc2Fucy1zZXJpZjtcbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgJGZvbnQtZmFtaWx5LWxhdG87XG4kYnJlYWRjcnVtYi1iZzogdHJhbnNwYXJlbnQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLXg6IDA7XG5cblxuJGZvbnQtc2l6ZS1iYXNlOiAwLjlyZW07XG4kaDEtZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2UgKiAyO1xuXG5cbiRidG4tZm9udC13ZWlnaHQ6IDcwMDtcblxuXG4vKipcbiAqIGJvb3RzdHJhcC1zZWxlY3RcbiAqL1xuJGNvbG9yLXJlZC1lcnJvcjogcmdiKDE4NSwgNzQsIDcyKSAhZGVmYXVsdDtcbiRjb2xvci1ncmVlbi1zdWNjZXNzOiAjMjhhNzQ1O1xuJGNvbG9yLWdyZXktYXJyb3c6IHJnYmEoMjA0LCAyMDQsIDIwNCwgMC4yKSAhZGVmYXVsdDtcblxuJHdpZHRoLWRlZmF1bHQ6IDIyMHB4ICFkZWZhdWx0OyAvLyAzIDk2MHB4LWdyaWQgY29sdW1uc1xuXG4kemluZGV4LXNlbGVjdC1kcm9wZG93bjogMTA2MCAhZGVmYXVsdDsgLy8gbXVzdCBiZSBoaWdoZXIgdGhhbiBhIG1vZGFsIGJhY2tncm91bmQgKDEwNTApXG5cbi8vKiogUGxhY2Vob2xkZXIgdGV4dCBjb2xvclxuJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyOiAjOTk5ICFkZWZhdWx0O1xuJGlucHV0LWFsdC1jb2xvci1wbGFjZWhvbGRlcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LXNtOiAuMjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LXNtOiAuNXJlbSAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1sZzogMC41cmVtICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1sZzogMXJlbSAhZGVmYXVsdDsiLCIvKipcbiAqICBDdXN0b20gTWl4aW5zXG4gKlxuICovXG5cblxuLy8gQGltcG9ydCBcIm1peGlucy9mb3Jtc1wiO1xuIiwiLmFsZXJ0IHtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgICBwYWRkaW5nOjA7XG4gICAgYm9yZGVyOjA7XG4gICAgbWFyZ2luLWJvdHRvbTowO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIHBhZGRpbmc6IDAuMzc1cmVtIDFyZW07XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS43MTQyOTtcbiAgICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07XG59XG5cbi5hbGVydC1zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZS1jb2xvcignc3VjY2VzcycpO1xuICAgIGJvcmRlci1jb2xvcjogdGhlbWUtY29sb3IoJ3N1Y2Nlc3MnKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9zdmcvYWxlcnQtc3VjY2Vzcy5zdmcnKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJlbSgxMCkgcmVtKDcpO1xuICAgIGNvbG9yOiAjZmZmO1xufVxuXG4uYWxlcnQtZGFuZ2VyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0aGVtZS1jb2xvcignZGFuZ2VyJyk7XG4gICAgYm9yZGVyLWNvbG9yOiB0aGVtZS1jb2xvcignZGFuZ2VyJyk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvc3ZnL2FsZXJ0LWRhbmdlci5zdmcnKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJlbSgxMCkgcmVtKDcpO1xuICAgIGNvbG9yOiAjZmZmO1xufVxuXG4uYWxlcnQtZGlzbWlzc2libGV7XG4gICAgLmNsb3NlIHtcbiAgICAgICAgcGFkZGluZzogMC40NXJlbSAwLjk1cmVtO1xuICAgICAgICB0ZXh0LXNoYWRvdzogaW5oZXJpdDtcbiAgICAgICAgb3BhY2l0eTogMTtcblxuICAgICAgICAuYWxlcnQtY2xvc2Uge1xuICAgICAgICAgICAgd2lkdGg6IHJlbSgxOCk7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbSgxOCk7XG4gICAgICAgIH0gICAgICAgICAgICBcbiAgICB9XG59XG5cbiIsIi5uYXZiYXIuZml4ZWQtdG9wIHtcbiAgICAubmF2YmFyLW5hdiB7XG4gICAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMi43cmVtO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgIG1pbi13aWR0aDogMTRyZW07XG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgICAvLyBhLmRyb3Bkb3duLWl0ZW0ge1xuICAgICAgICAgICAgLy8gICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAvLyAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAvLyAgICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgICAgICAgLy8gICAgICAgICBiYWNrZ3JvdW5kOiAkZ3JheS05MDA7XG4gICAgICAgICAgICAvLyAgICAgfVxuICAgICAgICAgICAgLy8gfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4vLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byByZXBsYWNlIG5lZ2F0aXZlIHZhbHVlcyB3aXRoIDBcbkBmdW5jdGlvbiB2YWxpZC1yYWRpdXMoJHJhZGl1cykge1xuICAkcmV0dXJuOiAoKTtcbiAgQGVhY2ggJHZhbHVlIGluICRyYWRpdXMge1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gbnVtYmVyIHtcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCBtYXgoJHZhbHVlLCAwKSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkcmV0dXJuOiBhcHBlbmQoJHJldHVybiwgJHZhbHVlKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkcmV0dXJuO1xufVxuXG5AbWl4aW4gYm9yZGVyLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cywgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM6IGZhbHNlKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxuICBAZWxzZSBpZiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cyAhPSBmYWxzZSB7XG4gICAgYm9yZGVyLXJhZGl1czogJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG4iLCIud2lkZ2V0LWZvcm0ge1xuICAgIGJvcmRlcjogcmVtKDFweCkgZGFzaGVkICMwMDAwMDA7XG59XG4ud2lkZ2V0LWFwcCB7XG4gICAgbWFyZ2luOiByZW0oMjBweCkgMDtcbiAgICBwYWRkaW5nOiByZW0oMjBweCkgcmVtKDEwcHgpIHJlbSgzMHB4KTtcbn1cbiIsIi5hcHAge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmV5O1xufVxuXG5bdi1jbG9ha10ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5pbmZvLWNlbnRyZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBwYWRkaW5nOiByZW0oMTUpO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbSg0MCk7XG59XG4udGl0bGUtbmF2eSB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtKDQ4KTtcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWxhdG87XG4gICAgZm9udC1zaXplOiByZW0oMjApO1xufVxuLmluZm8taWNvbiB7XG4gICAgbWFyZ2luOiByZW0oLTQpIHJlbSgxMCkgMCAwO1xufVxuLm1jbC1sb2dvIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtKDUwKTtcbiAgICBzdmcge1xuICAgICAgICBtYXJnaW46IHJlbSgtNSkgcmVtKDIwKSAwIDA7XG4gICAgfVxuICAgIC50aXRsZS1uYXZ5IHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbn1cbi5wcm9maWxlLW5hdiB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtKDE1KTtcbiAgICBwYWRkaW5nOiByZW0oMTApIHJlbSgxNSk7XG4gICAgbWFyZ2luLXJpZ2h0OiByZW0oMTUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBjb2xvcjogJG5hdnktZGFyaztcbiAgICBib3JkZXItcmFkaXVzOiByZW0oNCk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHdpZHRoOiByZW0oMTYwKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgc3ZnIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0oNSk7XG4gICAgfVxuICAgIHNwYW4ge1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDEyKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgfVxuICAgIC5jb25maXJtLW51bWJlciB7XG4gICAgICAgIGNvbG9yOiAkYmx1ZTtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMjYpO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0oMik7XG4gICAgfVxuICAgICYuYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAucGF0aCBwYXRoIHtcbiAgICAgICAgICAgIGZpbGw6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgICAuc3Ryb2tlIHBhdGgge1xuICAgICAgICAgICAgc3Ryb2tlOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICB9XG59XG4ucHJvZmlsZS1uYXZzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0oMjApO1xufVxuLmRvYiwgLnRpbWUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDEyKTtcbiAgICB9XG59XG4uZG9iLmRheSwgLmRvYi5tb250aCwgLnRpbWUuaG91ciwgLnRpbWUubWludXRlIHtcbiAgICB3aWR0aDogcmVtKDU2KTtcbiAgICBtYXJnaW4tcmlnaHQ6IHJlbSgxMCk7XG4gICAgcGFkZGluZzogcmVtKDExKTtcbn1cblxuLmRvYi5tb250aCwgdGltZS5taW51dGUge1xuICAgIHdpZHRoOiByZW0oNjApXG59XG5cbi5kb2IueWVhciB7XG4gICAgd2lkdGg6IHJlbSg3MCk7XG4gICAgcGFkZGluZzogcmVtKDExKSByZW0oOCk7XG59XG5cbi5zZWFyY2gtZmllbGRzIHtcbiAgICAudG9we1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMzApO1xuICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiByZW0oMTgpO1xuICAgICAgICB9XG4gICAgICAgIC5ub3RpZmljYXRpb24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZWVuO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtKDQpO1xuICAgICAgICAgICAgcGFkZGluZzogcmVtKDcpIDA7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IHJlbSgtMSkgcmVtKDEwKSAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiByZW0oMTgpO1xuICAgICAgICAgICAgICAgIGhlaWdodDogcmVtKDE4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuYm90dG9tIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgIH1cbn1cbi5sZWFmbGV0IHtcbiAgICBoZWlnaHQ6IHJlbSg1MDApO1xuICAgIG1hcmdpbjogcmVtKDIwKSAwO1xufVxuXG4uaW5kZXgtcmVzdWx0cyB7XG4gICAgaGVpZ2h0OiByZW0oMzApO1xufVxuLnJlc3VsdHMtaW5kZXgge1xuICAgIHBhZGRpbmctdG9wOiByZW0oMjApO1xufVxuXG5zcGFuLmNoZWNrLW1hcmsge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zZWxlY3RlZCBzcGFuLmNoZWNrLW1hcmsge1xuICAgIHdpZHRoOiByZW0oMTUpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxudWwudmFsaWRhdGlvbi1lcnJvcnMge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIGxpIHtcbiAgICAgICAgY29sb3I6ICNkMDAyMWI7XG4gICAgfVxufVxuXG4ubGVhZmxldC1zaGFkb3ctcGFuZSB7XG4gICAgaW1nIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG4udHJpeC1jb250ZW50IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xufVxuLm1vZGFsLWZvb3RlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIG1hcmdpbi10b3A6IDA7XG59XG4jZ2FsbGVyeUltYWdlTW9kYWwge1xuICAgIC5tb2RhbC1kaWFsb2cge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogMjAlO1xuICAgIH1cbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IHJlbSgyMCkgMDtcbiAgICB9XG59XG5cbi5wb3J0cmFpdCB7XG4gICAgaGVpZ2h0OiByZW0oMjQwKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDAgMCByZW0oMjApIDA7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJvcmRlci1yYWRpdXM6IHJlbSgzKVxufVxuLmNvb2tpZS1jb25zZW50IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgYm90dG9tOiByZW0oMTApO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIC5tZXNzYWdlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1sYXRvO1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBib3JkZXItcmFkaXVzOiByZW0oNSk7XG4gICAgICAgIHBhZGRpbmc6IHJlbSg1KSByZW0oNTApO1xuICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0oMTApO1xuICAgICAgICAgICAgcGFkZGluZzogcmVtKDIpIHJlbSgyMCk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5iYWNrLWJ0bi1oZWFkZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogcmVtKDEwcHgpO1xuICAgIHRvcDogcmVtKDVweCk7XG4gICAgei1pbmRleDogMTA7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIC5iYWNrLWJ0bi1oZWFkZXIge1xuICAgICAgICB0b3A6IHJlbSgtMjBweCk7XG4gICAgfVxuICAgIC5wcm9maWxlLW5hdiB7XG4gICAgICAgIHdpZHRoOiA0OCU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMiU7XG4gICAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyJTtcbiAgICAgICAgICB9XG4gICAgfVxufVxuIiwiJGdyZXktbGlnaHQ6ICNmNGY0ZjQ7XG4kZ3JleTogI2Q4ZTJlODtcbiRncmV5LW1pZDogIzliOWI5YjtcbiRncmV5LWRhcms6ICM0YTRhNGE7XG4kbmF2eS1kYXJrOiAjMDAzZDUxO1xuJGJsYWNrOiAjNGE0YTRhO1xuJHBpbms6ICNlMzMzNmY7XG4kYmx1ZTogIzAwYWRkYztcbiR3aGl0ZTogI2ZmZmZmZjtcbiRncmVlbjogIzY3YzYwMDtcbiRyZWQ6ICNkMDAyMWI7XG4keWVsbG93OiAjZmZkNDAwO1xuJHByaW1hcnk6ICRuYXZ5LWRhcms7XG4kc2Vjb25kYXJ5OiAkcGluaztcblxuJGNvbG9yczogKFxuICAgICdncmV5LWxpZ2h0JzogJGdyZXktbGlnaHQsXG4gICAgJ2dyZXknOiAkZ3JleSxcbiAgICAnZ3JleS1taWQnOiAkZ3JleS1taWQsXG4gICAgJ2dyZXktZGFyayc6ICRncmV5LWRhcmssXG4gICAgJ25hdnktZGFyayc6ICRuYXZ5LWRhcmssXG4gICAgJ3BpbmsnOiAkcGluayxcbiAgICAnYmx1ZSc6ICRibHVlLFxuICAgICd3aGl0ZSc6ICR3aGl0ZSxcbiAgICAnYmxhY2snOiAkYmxhY2ssXG4pO1xuXG4kdGhlbWUtY29sb3JzOiAoXG4gICAgJ2JsYWNrJyA6ICRibGFjayxcbiAgICAnZ3JleS1saWdodCcgOiAkZ3JleS1saWdodCxcbik7XG5cbiRuYXZiYXItaGVpZ2h0OiByZW0oMTA2KTtcblxuJGJ0bi1ib3JkZXItcmFkaXVzOiByZW0oNSk7XG4kYnRuLWJvcmRlci1yYWRpdXMtbGc6IHJlbSg1KTtcbiRidG4tYm9yZGVyLXJhZGl1cy1zbTogcmVtKDUpO1xuXG4kYnRuLXBhZGRpbmcteDogMXJlbTtcblxuJGJvZHktYmc6ICR3aGl0ZTtcblxuJGZvbnQtZmFtaWx5LWxhdG86ICAnTGF0bycsIHNhbnMtc2VyaWY7XG4kZm9udC1mYW1pbHktcm9ib3RvOiAnUm9ib3RvJywgc2Fucy1zZXJpZjtcblxuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICAkZm9udC1mYW1pbHktbGF0bztcblxuJGJyZWFkY3J1bWItYmc6IHRyYW5zcGFyZW50O1xuJGJyZWFkY3J1bWItcGFkZGluZy14OiAwO1xuXG5cbiRmb250LXNpemUtYmFzZTogcmVtKDE0KTsgLy8gQXNzdW1lcyB0aGUgYnJvd3NlciBkZWZhdWx0LCB0eXBpY2FsbHkgYDE2cHhgXG4kbGluZS1oZWlnaHQtYmFzZTogMS43MTQyOTtcblxuJGZvbnQtc2l6ZS1zbTogcmVtKDEyKTtcbiRzbWFsbC1mb250LXNpemU6ICRmb250LXNpemUtc207XG4kZm9udC1zaXplLXNtYWxsOiAkc21hbGwtZm9udC1zaXplO1xuXG4kZm9udC13ZWlnaHQtbGlnaHQ6IDMwMDtcbiRmb250LXdlaWdodC1ub3JtYWw6IDQwMDtcbiRmb250LXdlaWdodC1zZW1pYm9sZDogNTAwO1xuJGZvbnQtd2VpZ2h0LWJvbGQ6IDcwMDtcbiRmb250LXdlaWdodC1leHRyYWJvbGQ6IDkwMDtcblxuJGgxLWZvbnQtc2l6ZTogcmVtKDQyKTtcbiRoMi1mb250LXNpemU6IHJlbSgzNik7XG4kaDMtZm9udC1zaXplOiByZW0oMzIpO1xuJGg0LWZvbnQtc2l6ZTogcmVtKDI4KTtcbiRoNS1mb250LXNpemU6IHJlbSgyNCk7XG4kaDYtZm9udC1zaXplOiByZW0oMjEpO1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaWJvbGQ7XG4kaGVhZGluZ3MtY29sb3I6ICRncmV5LWRhcms7XG5cblxuJGJ0bi1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDsiLCIuY2FyZC1oZWFkZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGZvbnQtc2l6ZTogcmVtKDE0KTtcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgc3ZnIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0oMTApO1xuICAgIH1cbn1cbi5jYXJkLWJvZHkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgcGFkZGluZzogcmVtKDE1KSByZW0oMjIpIHJlbSgyMCk7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogcmVtKDQpO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiByZW0oNCk7XG4gICAgbGkge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMTApO1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiAkYmx1ZTtcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2eS1kYXJrO1xuICAgICAgICB9XG4gICAgICAgIC5kYXRlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDEwKTtcbiAgICAgICAgICAgIGNvbG9yOiAkZ3JleS1taWQ7XG4gICAgICAgICAgICBtYXJnaW46IDBcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnJlbmV3IHtcbiAgICAgICAgLnRvdGFsLXBheSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgyMCk7XG4gICAgICAgICAgICBjb2xvcjogJGJsdWU7XG4gICAgICAgIH1cbiAgICB9XG59XG4uY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtKDIwKTtcbiAgICBib3JkZXItcmFkaXVzOiByZW0oNCk7XG4gICAgLmJ0bi1jb250YWluIHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgfVxuICAgIC5pbmZvLWljb24ge1xuICAgICAgICBtYXJnaW46IHJlbSg2KSByZW0oMTApIDAgMDtcbiAgICB9XG4gICAgLmJ0bi1saXZlIHtcbiAgICAgICAgd2lkdGg6IHJlbSgxMjApO1xuICAgICAgICBoZWlnaHQ6IHJlbSgzOCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgyMyk7XG4gICAgfVxuICAgIC5maXh0dXJlIHtcbiAgICAgICAgLmRhdGUge1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgICAgfVxuICAgICAgICAudGltZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGluaztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDgpO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbSgxKSByZW0oNCk7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogcmVtKDEwKTtcbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDEyKTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5wcm9maWxlLWltYWdlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gcmVtKDE5KTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5wcm9maWxlLWRldGFpbHMge1xuICAgICAgICBtYXJnaW46IHJlbSgzNSkgMCByZW0oNDcpO1xuXG4gICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgyMCk7XG4gICAgICAgIH1cblxuICAgICAgICBoMy5wbGF5ZXItaW5mbyB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgyMCk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgfVxuXG4gICAgICAgIGg0LnBsYXllci1pbmZvIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDE2KTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIH1cblxuICAgICAgICBoNS5wbGF5ZXItaW5mbyB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgxMik7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wcm9maWxlLXVwZGF0ZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG59XG4uY2FyZC1pbmZvIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmV5LWxpZ2h0O1xuICAgIHBhZGRpbmc6IHJlbSgxNSkgcmVtKDE1KSAwO1xuICAgIGZvbnQtc2l6ZTogcmVtKDEyKTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0oMTUpO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbGF0bztcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgY29sb3I6ICRuYXZ5LWRhcms7XG59XG4uY2FyZC1yaWdodCB7XG4gICAgLnRleHQtY2VudGVyIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTIpO1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICAgIGNvbG9yOiAkbmF2eS1kYXJrO1xuICAgIH1cbn1cblxuLmF2YWlsYWJsZS1wbGF5ZXJzIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRuYXZ5LWRhcms7XG4gICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdnktZGFyaztcbiAgICB9XG4gICAgLmNhcmQtYm9keSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICAuc2VhcmNoIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgxNSk7XG4gICAgICAgIH1cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgbWFyZ2luOiAwIHJlbSgtMjIpO1xuICAgICAgICAgICAgcGFkZGluZzogcmVtKDE1KSAwIHJlbSgxNSkgcmVtKDUwKTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JleTtcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2eS1kYXJrO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwaW5rO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5hZG1pbi1zaWRlYmFyLW1lbnV7XG4gICAgLmNhcmQtYm9keSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHJlbSg4KTtcbiAgICAgICAgaGVpZ2h0OiA4NXB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBjb2xvcjogIzAwM2Q1MTtcbiAgICAgICAgcGFkZGluZzowO1xuICAgICAgICAuY29uZmlybS1udW1iZXIge1xuICAgICAgICAgICAgY29sb3I6ICRibHVlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAzNnB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuLmdhbGxlcnktaW1hZ2VzIHtcbiAgICAuaW1hZ2Uge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG9iamVjdC1maXQ6IHNjYWxlLWRvd247XG4gICAgfVxuICAgIC5pbWFnZS1kaXNwbGF5IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDIwKTtcbiAgICAgICAgaGVpZ2h0OiByZW0oMjAwKTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAuZGVsZXRlLWJ1dHRvbiwgLmNoYW5nZS1idXR0b24ge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZ5LWRhcms7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW0oMikgcmVtKDEwKTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHJlbSg0KTtcbiAgICAgICAgICAgIG1hcmdpbjogcmVtKDUpO1xuICAgICAgICB9XG4gICAgICAgIC5kZWxldGUtYnV0dG9uIHtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuY2hhbmdlLWJ1dHRvbiB7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uaW1hZ2UtY2x1YiB7XG4gICAgd2lkdGg6IDIwMHB4O1xufVxuXG4ucHJvZmlsZS1jb250YWluZXIge1xuICAgIHdpZHRoOiAxNTBweDtcbiAgICBoZWlnaHQ6IDE1MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDc1cHg7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcbn1cbi5jbHViLXNwb25zb3ItaW1hZ2Uge1xuICAgIG1heC13aWR0aDogNzAlO1xuICAgIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG59XG4ucHJvZmlsZS1tZW51LXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIC5jYXJkLWJvZHkucmVuZXcge1xuICAgICAgICBwYWRkaW5nOiByZW0oMTUpIHJlbSgxOTApIHJlbSgyMCk7XG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcblxufVxuIiwiLnRhYmxlIHtcbiAgICB0aCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjNWM0YzU7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICB9XG4gICAgdGQge1xuICAgICAgICBjb2xvcjogJG5hdnktZGFyaztcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmV5O1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXNlbWlib2xkO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDE0KTtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0oMik7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDIpO1xuICAgICAgICB9XG4gICAgICAgICYubGFyZ2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTgpO1xuICAgICAgICB9XG4gICAgICAgICYuc21hbGwge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTQpO1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiAkYmx1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLmJ1dHRvbiB7XG4gICAgICAgICAgICB3aWR0aDogMTAlO1xuICAgICAgICB9XG5cbiAgICAgICAgbGksIHAge1xuICAgICAgICAgICAgY29sb3I6ICRuYXZ5LWRhcms7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXNlbWlib2xkO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDsgICAgICAgICAgIFxuICAgICAgICB9XG5cbiAgICAgICAgLmFjdGlvbnMgYSB7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnRlYW0ge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiA0MCU7XG4gICAgfVxuICAgIC5idXR0b24ge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG59XG4uYXBwIC5wbGF5ZXItc3RhcnJpbmdzIHtcbiAgICAucG9zaXRpb24tMSB0ZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlY2VjZWM7XG4gICAgfVxuICAgICYuZGFuZ2VyIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHJlZDtcbiAgICB9XG59XG50ZCB7XG4gICAgJi5jbHViLW5hbWUge3dpZHRoOiAyMCU7fVxuICAgICYuZWRpdCB7d2lkdGg6IDMwcHg7fVxuICAgICYuZW1wdHkge3dpZHRoOiBhdXRvO31cbiAgICAmLmFjY2VwdC1yZWplY3QgeyB3aWR0aDogMTgwcHggfVxuICAgIHN2ZyB7XG4gICAgICAgIHdpZHRoOiByZW0oMTgpO1xuICAgICAgICBoZWlnaHQ6IHJlbSgxOCk7XG4gICAgfVxuICAgIC5hY2NlcHQtcmVqZWN0IHtcbiAgICAgICAgd2lkdGg6IDQ3JTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBzdmcge1xuICAgICAgICAgICAgd2lkdGg6IHJlbSgxNik7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbSgxNik7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5jYXB0YWluIHtcbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIHBhdGgge1xuICAgICAgICAgICAgICAgIHN0cm9rZTogJHllbGxvdyFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgZmlsbDogICR5ZWxsb3chaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuLnRlYW0tc2hlZXQtdGFibGUge1xuICAgIHRkIHtcbiAgICAgICAgd2lkdGg6IGF1dG8haW1wb3J0YW50O1xuICAgIH1cbn1cbi50YWJsZS1yZXNwb25zaXZlIHtcbiAgICB0ZCB7XG4gICAgICAgIHdpZHRoOiAxJTtcbiAgICB9XG59XG4udXNlci1pbWFnZSB7XG4gICAgaW1nIHtcbiAgICAgICAgaGVpZ2h0OiByZW0oOTApO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICB9XG59XG5cbi50YWJsZS1jb3N0IHtcbiAgICB3aWR0aDogNTAlOyBcbiAgICBtYXJnaW46IDAgYXV0byByZW0oNDApO1xuXG4gICAgdGQge1xuICAgICAgICB0ZXh0LWFsaWduOmxlZnQ7ICAgICAgICBcbiAgICB9XG5cbiAgICB0Ym9keSB0ZCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn0iLCIuYWRtaW4tbWVudS1jb2xsYXBzZSB7XG4gICAgbWFyZ2luOiByZW0oMjApIDA7XG4gICAgcGFkZGluZzogMCByZW0oMTUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZ5LWRhcms7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBmb250LXNpemU6IHJlbSgxMik7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgIGJvcmRlci1yYWRpdXM6IHJlbSg0KTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdHJhbnNpdGlvbjogMC41cztcbiAgICBzdmcge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbSg1KTtcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvc3ZnL3JlY3RhbmdsZS0xOS1jb3B5LnN2ZycpO1xuICAgICAgICB3aWR0aDogcmVtKDI1KTtcbiAgICAgICAgaGVpZ2h0OiByZW0oMjUpO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0b3A6IHJlbSgtMTEpO1xuICAgICAgICByaWdodDogcmVtKDQwKTtcbiAgICB9XG59XG4uYWRtaW4tbmF2LWl0ZW0ge1xuICAgIG1hcmdpbjogcmVtKDIwKSAwO1xuICAgIGEge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG59XG5cbi5hcHAtbWVudSB7XG4gICAgPiBkaXYgPiBhIHtcbiAgICAgICAgaGVpZ2h0OiA0MnB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM5YjliOWI7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0MnB4O1xuICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICBmb250LXNpemU6IHJlbSgxMik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICAgICAgICBjb2xvcjogIzAwM2Q1MTsgICAgICAgIFxuXG4gICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6MTZweDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDo4cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtZWRpYShtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgLmFkbWluLW5hdi1pdGVtIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgxMHB4KTtcbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IHJlbSgxNnB4KTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLy8gTWl4aW5zXG5AbWl4aW4gY3Vyc29yLWRpc2FibGVkKCkge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG5AbWl4aW4gYm94LXNpemluZygkZm10KSB7XG4gIC13ZWJraXQtYm94LXNpemluZzogJGZtdDtcbiAgICAgLW1vei1ib3gtc2l6aW5nOiAkZm10O1xuICAgICAgICAgIGJveC1zaXppbmc6ICRmbXQ7XG59XG5cbkBtaXhpbiBib3gtc2hhZG93KCRmbXQpIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAkZm10O1xuICAgICAgICAgIGJveC1zaGFkb3c6ICRmbXQ7XG59XG5cbkBmdW5jdGlvbiBmYWRlKCRjb2xvciwgJGFtbnQpIHtcbiAgQGlmICRhbW50ID4gMSB7XG4gICAgJGFtbnQ6IGNhbGMoJGFtbnQgLyAxMDApOyAvLyBjb252ZXJ0IHRvIHBlcmNlbnRhZ2UgaWYgaW50XG4gIH1cbiAgQHJldHVybiByZ2JhKCRjb2xvciwgJGFtbnQpO1xufVxuXG4vLyBSdWxlc1xuc2VsZWN0LmJzLXNlbGVjdC1oaWRkZW4sXG4uYm9vdHN0cmFwLXNlbGVjdCA+IHNlbGVjdC5icy1zZWxlY3QtaGlkZGVuLFxuc2VsZWN0LnNlbGVjdHBpY2tlciB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmJvb3RzdHJhcC1zZWxlY3Qge1xuICB3aWR0aDogMjIwcHggXFwwOyAvKklFOSBhbmQgYmVsb3cqL1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gIC8vIFRoZSBzZWxlY3RwaWNrZXIgYnV0dG9uXG4gID4gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgLy8gbmVjZXNzYXJ5IGZvciBwcm9wZXIgcG9zaXRpb25pbmcgb2YgY2FyZXQgaW4gQm9vdHN0cmFwIDQgKHB1c2hlcyBjYXJldCB0byB0aGUgcmlnaHQpXG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgICYuYnMtcGxhY2Vob2xkZXIge1xuICAgICAgJixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzLFxuICAgICAgJjphY3RpdmUge1xuICAgICAgICBjb2xvcjogJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyO1xuICAgICAgfVxuXG4gICAgICAmLmJ0bi1wcmltYXJ5LFxuICAgICAgJi5idG4tc2Vjb25kYXJ5LFxuICAgICAgJi5idG4tc3VjY2VzcyxcbiAgICAgICYuYnRuLWRhbmdlcixcbiAgICAgICYuYnRuLWluZm8sXG4gICAgICAmLmJ0bi1kYXJrIHtcbiAgICAgICAgJixcbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgIGNvbG9yOiAkaW5wdXQtYWx0LWNvbG9yLXBsYWNlaG9sZGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgPiBzZWxlY3Qge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMC41cHggIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgb3BhY2l0eTogMCAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogbm9uZTtcblxuICAgICYubW9iaWxlLWRldmljZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICB6LWluZGV4OiAyO1xuICAgIH1cbiAgfVxuXG4gIC8vIEVycm9yIGRpc3BsYXlcbiAgLmhhcy1lcnJvciAmIC5kcm9wZG93bi10b2dnbGUsXG4gIC5lcnJvciAmIC5kcm9wZG93bi10b2dnbGUsXG4gICYuaXMtaW52YWxpZCAuZHJvcGRvd24tdG9nZ2xlLFxuICAud2FzLXZhbGlkYXRlZCAmIC5zZWxlY3RwaWNrZXI6aW52YWxpZCArIC5kcm9wZG93bi10b2dnbGUge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXJlZC1lcnJvcjtcbiAgfVxuXG4gICYuaXMtdmFsaWQgLmRyb3Bkb3duLXRvZ2dsZSxcbiAgLndhcy12YWxpZGF0ZWQgJiAuc2VsZWN0cGlja2VyOnZhbGlkICsgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItZ3JlZW4tc3VjY2VzcztcbiAgfVxuXG4gICYuZml0LXdpZHRoIHtcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgJjpub3QoW2NsYXNzKj1cImNvbC1cIl0pOm5vdChbY2xhc3MqPVwiZm9ybS1jb250cm9sXCJdKTpub3QoLmlucHV0LWdyb3VwLWJ0bikge1xuICAgIHdpZHRoOiAkd2lkdGgtZGVmYXVsdDtcbiAgfVxuXG4gID4gc2VsZWN0Lm1vYmlsZS1kZXZpY2U6Zm9jdXMgKyAuZHJvcGRvd24tdG9nZ2xlLFxuICAuZHJvcGRvd24tdG9nZ2xlOmZvY3VzIHtcbiAgICBvdXRsaW5lOiB0aGluIGRvdHRlZCAjMzMzMzMzICFpbXBvcnRhbnQ7XG4gICAgb3V0bGluZTogNXB4IGF1dG8gLXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG4gIH1cbn1cblxuLmJvb3RzdHJhcC1zZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiBub25lO1xuXG4gIDpub3QoLmlucHV0LWdyb3VwKSA+ICY6bm90KFtjbGFzcyo9XCJjb2wtXCJdKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAmLmlucHV0LWdyb3VwLWJ0biB7XG4gICAgei1pbmRleDogYXV0bztcblxuICAgICY6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICA+IC5idG4ge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBUaGUgc2VsZWN0cGlja2VyIGNvbXBvbmVudHNcbi5ib290c3RyYXAtc2VsZWN0IHtcbiAgJjpub3QoLmlucHV0LWdyb3VwLWJ0biksXG4gICZbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgLy8gRm9yY2VzIHRoZSBwdWxsIHRvIHRoZSByaWdodCwgaWYgbmVjZXNzYXJ5XG4gICYsXG4gICZbY2xhc3MqPVwiY29sLVwiXSxcbiAgLnJvdyAmW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgICYuZHJvcGRvd24tbWVudS1yaWdodCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLmZvcm0taW5saW5lICYsXG4gIC5mb3JtLWhvcml6b250YWwgJixcbiAgLmZvcm0tZ3JvdXAgJiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIC5mb3JtLWdyb3VwLWxnICYuZm9ybS1jb250cm9sLFxuICAuZm9ybS1ncm91cC1zbSAmLmZvcm0tY29udHJvbCB7XG4gICAgcGFkZGluZzogMDtcblxuICAgIC5kcm9wZG93bi10b2dnbGUge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICBib3JkZXItcmFkaXVzOiBpbmhlcml0O1xuICAgIH1cbiAgfVxuXG4gICYuZm9ybS1jb250cm9sLXNtIC5kcm9wZG93bi10b2dnbGUsXG4gICYuZm9ybS1jb250cm9sLWxnIC5kcm9wZG93bi10b2dnbGUge1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICBib3JkZXItcmFkaXVzOiBpbmhlcml0O1xuICB9XG5cbiAgJi5mb3JtLWNvbnRyb2wtc20gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICB9XG5cbiAgJi5mb3JtLWNvbnRyb2wtbGcgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICB9XG5cbiAgLy8gU2V0IHRoZSB3aWR0aCBvZiB0aGUgbGl2ZSBzZWFyY2ggKGFuZCBhbnkgb3RoZXIgZm9ybSBjb250cm9sIHdpdGhpbiBhbiBpbmxpbmUgZm9ybSlcbiAgLy8gc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zaWx2aW9tb3JldG8vYm9vdHN0cmFwLXNlbGVjdC9pc3N1ZXMvNjg1XG4gIC5mb3JtLWlubGluZSAmIC5mb3JtLWNvbnRyb2wge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgPiAuZGlzYWJsZWQge1xuICAgIEBpbmNsdWRlIGN1cnNvci1kaXNhYmxlZCgpO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgJi5icy1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBoZWlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICB6LWluZGV4OiAkemluZGV4LXNlbGVjdC1kcm9wZG93bjtcbiAgICB9XG4gIH1cblxuICAvLyBUaGUgc2VsZWN0cGlja2VyIGJ1dHRvblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAvLyBuZWNlc3NhcnkgdG8gbWFpbnRhaW4gcHJvcGVyIGJ1dHRvbiBoZWlnaHQgd2l0aCBCb290c3RyYXAgM1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC5maWx0ZXItb3B0aW9uIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXRvcDogaW5oZXJpdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IGluaGVyaXQ7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogaW5oZXJpdDsgLy8gbmVlZGVkIGZvciBwcm9wZXIgYWxpZ25tZW50IG9mIHNob3ctbWVudS1hcnJvd1xuICAgICAgcGFkZGluZy1sZWZ0OiBpbmhlcml0O1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cblxuICAgIC5maWx0ZXItb3B0aW9uLWlubmVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgLmZpbHRlci1vcHRpb24taW5uZXItaW5uZXIge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAuY2FyZXQge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICByaWdodDogMTJweDtcbiAgICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cCAmLmZvcm0tY29udHJvbCAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBib3JkZXItcmFkaXVzOiBpbmhlcml0O1xuICB9XG5cbiAgJltjbGFzcyo9XCJjb2wtXCJdIC5kcm9wZG93bi10b2dnbGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLy8gVGhlIHNlbGVjdHBpY2tlciBkcm9wZG93blxuICAuZHJvcGRvd24tbWVudSB7XG4gICAgbWluLXdpZHRoOiAxMDAlO1xuICAgIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XG5cbiAgICA+IC5pbm5lcjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJi5pbm5lciB7XG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuXG4gICAgbGkge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAmLmFjdGl2ZSBzbWFsbCB7XG4gICAgICAgIGNvbG9yOiAkaW5wdXQtYWx0LWNvbG9yLXBsYWNlaG9sZGVyICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgICYuZGlzYWJsZWQgYSB7XG4gICAgICAgIEBpbmNsdWRlIGN1cnNvci1kaXNhYmxlZCgpO1xuICAgICAgfVxuXG4gICAgICBhIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcblxuICAgICAgICAmLm9wdCB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMi4yNWVtO1xuICAgICAgICB9XG5cbiAgICAgICAgc3Bhbi5jaGVjay1tYXJrIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgc3Bhbi50ZXh0IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgc21hbGwge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNWVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5ub3RpZnkge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiA1cHg7XG4gICAgICB3aWR0aDogOTYlO1xuICAgICAgbWFyZ2luOiAwIDIlO1xuICAgICAgbWluLWhlaWdodDogMjZweDtcbiAgICAgIHBhZGRpbmc6IDNweCA1cHg7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2IoMjQ1LCAyNDUsIDI0NSk7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2IoMjI3LCAyMjcsIDIyNyk7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgMXB4IDFweCBmYWRlKHJnYigwLCAwLCAwKSwgNSkpO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICBvcGFjaXR5OiAwLjk7XG4gICAgICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xuICAgIH1cbiAgfVxuXG4gIC5uby1yZXN1bHRzIHtcbiAgICBwYWRkaW5nOiAzcHg7XG4gICAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgICBtYXJnaW46IDAgNXB4O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cblxuICAmLmZpdC13aWR0aCAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAuZmlsdGVyLW9wdGlvbiB7XG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAuZmlsdGVyLW9wdGlvbi1pbm5lcixcbiAgICAuZmlsdGVyLW9wdGlvbi1pbm5lci1pbm5lciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgfVxuXG4gICAgLmNhcmV0IHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICB0b3A6IGF1dG87XG4gICAgICBtYXJnaW4tdG9wOiAtMXB4O1xuICAgIH1cbiAgfVxuXG4gICYuc2hvdy10aWNrIC5kcm9wZG93bi1tZW51IHtcbiAgICAuc2VsZWN0ZWQgc3Bhbi5jaGVjay1tYXJrIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHJpZ2h0OiAxNXB4O1xuICAgICAgdG9wOiA1cHg7XG4gICAgfVxuXG4gICAgbGkgYSBzcGFuLnRleHQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAzNHB4O1xuICAgIH1cbiAgfVxuXG4gIC8vIGRlZmF1bHQgY2hlY2sgbWFyayBmb3IgdXNlIHdpdGhvdXQgYW4gaWNvbiBmb250XG4gIC5icy1vay1kZWZhdWx0OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMC41ZW07XG4gICAgaGVpZ2h0OiAxZW07XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDAgMC4yNmVtIDAuMjZlbSAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgfVxufVxuXG4uYm9vdHN0cmFwLXNlbGVjdC5zaG93LW1lbnUtYXJyb3cge1xuICAmLm9wZW4gPiAuZHJvcGRvd24tdG9nZ2xlLFxuICAmLnNob3cgPiAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICB6LWluZGV4OiAoJHppbmRleC1zZWxlY3QtZHJvcGRvd24gKyAxKTtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUgLmZpbHRlci1vcHRpb24ge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgYm9yZGVyLWxlZnQ6IDdweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yaWdodDogN3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWJvdHRvbTogN3B4IHNvbGlkICRjb2xvci1ncmV5LWFycm93O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAtNHB4O1xuICAgICAgbGVmdDogOXB4O1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgYm9yZGVyLWxlZnQ6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yaWdodDogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWJvdHRvbTogNnB4IHNvbGlkIHdoaXRlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAtNHB4O1xuICAgICAgbGVmdDogMTBweDtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJi5kcm9wdXAgLmRyb3Bkb3duLXRvZ2dsZSAuZmlsdGVyLW9wdGlvbiB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgdG9wOiAtNHB4O1xuICAgICAgYm9yZGVyLXRvcDogN3B4IHNvbGlkICRjb2xvci1ncmV5LWFycm93O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgIHRvcDogLTRweDtcbiAgICAgIGJvcmRlci10b3A6IDZweCBzb2xpZCB3aGl0ZTtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgJi5wdWxsLXJpZ2h0IC5kcm9wZG93bi10b2dnbGUgLmZpbHRlci1vcHRpb24ge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAxMnB4O1xuICAgICAgbGVmdDogYXV0bztcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIHJpZ2h0OiAxM3B4O1xuICAgICAgbGVmdDogYXV0bztcbiAgICB9XG4gIH1cblxuICAmLm9wZW4gPiAuZHJvcGRvd24tdG9nZ2xlIC5maWx0ZXItb3B0aW9uLFxuICAmLnNob3cgPiAuZHJvcGRvd24tdG9nZ2xlIC5maWx0ZXItb3B0aW9uIHtcbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtc2VhcmNoYm94LFxuLmJzLWFjdGlvbnNib3gsXG4uYnMtZG9uZWJ1dHRvbiB7XG4gIHBhZGRpbmc6IDRweCA4cHg7XG59XG5cbi5icy1hY3Rpb25zYm94IHtcbiAgd2lkdGg6IDEwMCU7XG4gIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XG5cbiAgJiAuYnRuLWdyb3VwIGJ1dHRvbiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuXG4uYnMtZG9uZWJ1dHRvbiB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbiAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcblxuICAmIC5idG4tZ3JvdXAgYnV0dG9uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uYnMtc2VhcmNoYm94IHtcbiAgJiArIC5icy1hY3Rpb25zYm94IHtcbiAgICBwYWRkaW5nOiAwIDhweCA0cHg7XG4gIH1cblxuICAmIC5mb3JtLWNvbnRyb2wge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbn1cbiIsIi5wbGF5ZXItc3RhcnJpbmdzIHtcbiAgICAuY2F0ZWdvcnkge1xuICAgICAgICBtYXJnaW4tdG9wOiByZW0oMzQpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMzApO1xuICAgICAgICAuZm9ybS1ncm91cCBsYWJlbCB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDgpO1xuICAgICAgICB9XG4gICAgICAgIC5zdHlsZWRTZWxlY3QsIC5zZWxlY3Qtb3B0aW9ucyB7XG4gICAgICAgICAgICB3aWR0aDogcmVtKDI1MCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUgdGQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gICAgLnBvc2l0aW9uXzEge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNlY2VjO1xuICAgIH1cbiAgICAucG9zaXRpb25fMiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmNGY0ZjQ7XG4gICAgfVxuICAgIC5wb3NpdGlvbiBzcGFuIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsdWU7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHJlbSg0KTtcbiAgICAgICAgcGFkZGluZzogcmVtKDIpIHJlbSg1KTtcbiAgICB9XG4gICAgJi5kYW5nZXIge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkcmVkO1xuICAgIH1cbiAgICAmLndhcm5pbmcge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkb3JhbmdlO1xuICAgIH1cbiAgICB0aCB7XG4gICAgICAgIHdpZHRoOiAxJTtcbiAgICB9XG59XG4uYXZhaWxhYmxlLXBsYXllcnMge1xuICAgIC5wbGF5ZXJzIHtcbiAgICAgICAgbWF4LWhlaWdodDogcmVtKDYwMCk7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICAgICAgbWFyZ2luOiAwIHJlbSgtMjIpO1xuICAgICAgICBwYWRkaW5nOiAwIHJlbSgyMik7XG4gICAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7IFxuICAgIC5hdmFpbGFibGUtcGxheWVycy13cmFwcGVyIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiByZW0oLTE1KTtcbiAgICAgICAgei1pbmRleDogOTk5OTk7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJSA7XG4gICAgICAgIH1cbiAgICAgICAgLmF2YWlsYWJsZS1wbGF5ZXJzIHtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDRweCAwIHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICAgICAgICAgIC5jYXJkLWJvZHkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHJlbSgyMCkgcmVtKDEwKSAwO1xuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIHJlbSgtMTApO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbSgyMCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbmF2eS1kYXJrO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzpyZW0oMzQpIHJlbSgxMCkgMDtcbiAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IHJlbSgzNikgMCAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogcmVtKDE2KTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiByZW0oMTYpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IHJlbSgtMikgcmVtKDUpIDAgMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucGxheWVyc3tcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiA2NXZoO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuLnRlYW0tc2hlZXQge1xuICAgIC50aXRsZSB7XG4gICAgICAgIGNvbG9yOiAkbmF2eS1kYXJrO1xuICAgICAgICBtYXJnaW46IHJlbSgzMCkgMDtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgIH1cbiAgICAudGFibGUge1xuICAgICAgICB0Ym9keSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNlY2VjO1xuICAgICAgICB9XG4gICAgICAgIHRkIHtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbGF0bztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDIwKTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICAgICAgICBjb2xvcjogJG5hdnktZGFyaztcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IHJlbSg4MCk7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiByZW0oODApO1xuICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIjY2FwdGFpbk1vZGFsIHtcbiAgICAuY2FwdGFpbi1oZWFkZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IHJlbSg1KTtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5jYXB0YWluLWZvb3RlciB7XG4gICAgICAgIC5idG4tc3VjY2VzcyB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbSgyMCk7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLnByaW50IHtcbiAgICBwYWRkaW5nLXRvcDogcmVtKDApO1xuICAgIC50aXRsZSB7XG4gICAgICAgIG1hcmdpbjogcmVtKDEwKSAwO1xuICAgIH1cbiAgICAuY2FyZC1ib2R5IHtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIH1cbiAgICAuY2FyZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICAgIC50ZWFtLXNoZWV0IC50YWJsZSB7XG4gICAgICAgIHRkIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlY2VjZWMhaW1wb3J0YW50O1xuICAgICAgICAgICAgLmFnZS1ncm91cCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogcmVtKDgpIHJlbSg1MCk7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJsYWNrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogcmVtKDY0KTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHJlbSg2NCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdGJvZHkge1xuICAgICAgICB9XG4gICAgICAgIHRoIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjNWM0YzUhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuICAgIC5zaWduYXR1cmUge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxNSU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRibGFjaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAucmlnaHQge1xuICAgICAgICByaWdodDogMDtcbiAgICB9XG59IiwiLyoqXG4qIFRoZSBDU1Mgc2hvd24gaGVyZSB3aWxsIG5vdCBiZSBpbnRyb2R1Y2VkIGluIHRoZSBRdWlja3N0YXJ0IGd1aWRlLCBidXRcbiogc2hvd3MgaG93IHlvdSBjYW4gdXNlIENTUyB0byBzdHlsZSB5b3VyIEVsZW1lbnQncyBjb250YWluZXIuXG4qL1xuLlN0cmlwZUVsZW1lbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogY2FsYygyLjI1MDAwMzc1cmVtICsgMnB4KTtcbiAgICBwYWRkaW5nOiAxMXB4IDAuNzVyZW0gMC4zNzVyZW07XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjcxNDI5O1xuICAgIGNvbG9yOiAjNDk1MDU3O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjY2VkNGRhO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIC13ZWJraXQtYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIC13ZWJraXQtYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0LCAtd2Via2l0LWJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XG4gICAgJi5pbnZhbGlkIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJHJlZDtcbiAgICB9XG59XG5cblxuLlN0cmlwZUVsZW1lbnQtLWZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICMwMGFkZGM7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi5TdHJpcGVFbGVtZW50LS1pbnZhbGlkIHtcbiAgYm9yZGVyLWNvbG9yOiAjZmE3NTVhO1xufVxuXG4uU3RyaXBlRWxlbWVudC0td2Via2l0LWF1dG9maWxsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmRlNSAhaW1wb3J0YW50O1xufVxuXG4ubG9hZGluZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLC41KTtcbn1cbi5sb2FkaW5nLXdoZWVsIHtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgbWFyZ2luLXRvcDogLTQwcHg7XG4gIG1hcmdpbi1sZWZ0OiAtNDBweDtcbiAgXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgXG4gIGJvcmRlci13aWR0aDogMzBweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAtd2Via2l0LWFuaW1hdGlvbjogc3BpbiAxcyBsaW5lYXIgaW5maW5pdGU7XG59XG4ubG9hZGluZyAubG9hZGluZy13aGVlbCB7XG4gIGJvcmRlci1zdHlsZTogZG91YmxlO1xuICBib3JkZXItY29sb3I6ICNjY2MgdHJhbnNwYXJlbnQ7XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgc3BpbiB7XG4gIDAlIHtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn0iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=*/