.node-312220 .card.image-card .card-title {
  font-size: 2.25rem;
  line-height: 2.35rem; }

@media (min-width: 992px) {
  .extra-cell-padding .col-icon_card .card-text {
    padding: 0 1rem; } }

@media (min-width: 1200px) {
  .extra-cell-padding .col-icon_card .card-text {
    padding: 0 2rem; } }

@media (min-width: 1460px) {
  .extra-cell-padding .col-icon_card .card-text {
    padding: 0 4.5rem; } }

.lead-heading {
  font-size: 2rem;
  line-height: 2.5rem;
  letter-spacing: -0.05rem;
  margin-bottom: 1rem; }

.lead-friends-heading {
  font-size: 2.25rem;
  line-height: 2.5rem;
  letter-spacing: -0.05rem;
  margin-bottom: .5rem; }

.no-list-margin ul {
  -webkit-padding-start: 20px;
          padding-inline-start: 20px; }

ol.large-orange-numbers {
  counter-reset: large-number-counter;
  list-style: none;
  padding-left: 40px; }
  ol.large-orange-numbers li {
    margin: 0 0 1rem 0;
    counter-increment: large-number-counter;
    position: relative;
    padding-top: .4rem; }
    ol.large-orange-numbers li:before {
      content: counter(large-number-counter) ". ";
      color: #F76902;
      font-size: 1.9rem;
      font-weight: bold;
      position: absolute;
      --size: 30px;
      left: calc(-1 * var(--size) - 10px);
      line-height: var(--size);
      width: var(--size);
      height: var(--size);
      top: 0; }

@media (max-width: 879.98px) {
  .jumbotron-adjust .jumbotron h2 {
    font-size: 2rem; } }

@media (min-width: 768px) {
  .page-row.page-row--right-sidebar .right-sidebar-larger .page-column.page-column-right {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .page-row.page-row--right-sidebar .right-sidebar-larger .page-column.page-column-left {
    flex: 0 0 66.66667%;
    max-width: 66.66667%;
    padding: 0 1rem; } }

@media (min-width: 992px) {
  .page-row.page-row--right-sidebar .right-sidebar-larger .page-column.page-column-right {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .page-row.page-row--right-sidebar .right-sidebar-larger .page-column.page-column-left {
    flex: 0 0 58.33333%;
    max-width: 58.33333%;
    margin-left: 8.33333%;
    padding: 0 3rem; } }

#block-rit-bootstrap-subtheme-rit-main-menu .nav.no-slab-nav .dropdown .dropdown-menu.show {
  min-width: 19rem !important; }

#block-rit-bootstrap-subtheme-rit-main-menu .nav.no-slab-nav .dropdown:nth-of-type(3) .dropdown-menu.show {
  min-width: 16rem !important; }

.no-slab-nav .dropdown-item {
  display: block; }

.node-357 .page-header {
  display: none !important; }

.node-357 .card.statistic .card-header {
  font-size: 2rem;
  line-height: 1;
  font-weight: bold !important; }

.node-357 .jumbotron-5703 {
  padding-top: 9rem !important;
  padding-bottom: 9rem !important; }
  .node-357 .jumbotron-5703 .background-image:after {
    content: none; }

@media (min-width: 768px) {
  .node-357 .jumbotron-5707 {
    padding-top: 9rem !important;
    padding-bottom: 9rem !important; } }

.view-directory-card .views-exposed-form .form--inline {
  display: flex;
  flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px;
  padding-left: 1rem;
  padding-right: 1rem; }
  .view-directory-card .views-exposed-form .form--inline .form-item {
    width: calc(100% - 101px);
    margin-right: 0;
    margin-top: 0;
    margin-bottom: 1.5rem; }
    .view-directory-card .views-exposed-form .form--inline .form-item label {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      white-space: nowrap;
      border: 0; }
    .view-directory-card .views-exposed-form .form--inline .form-item input {
      height: 50px;
      margin-top: 0; }
  .view-directory-card .views-exposed-form .form--inline .form-actions {
    margin-top: 0;
    margin-bottom: 1.5rem; }

.webform-submission-textbook-request-form #add-book-link {
  display: block;
  text-align: right;
  margin-bottom: 0.875em; }

.webform-submission-textbook-request-form .rem-book-link {
  position: absolute;
  top: 1.75em;
  right: 0;
  margin-top: 0.21875em; }

.webform-submission-textbook-request-form fieldset {
  display: none;
  position: relative;
  margin: 1.5rem 0; }
  .webform-submission-textbook-request-form fieldset legend {
    display: block;
    width: 100%;
    border-top: 1px solid #ddd;
    padding-top: 1.75em;
    margin-top: 0.875em; }
  .webform-submission-textbook-request-form fieldset .form-group {
    margin-top: 1.25rem !important; }
  .webform-submission-textbook-request-form fieldset:first-of-type {
    display: block; }
    .webform-submission-textbook-request-form fieldset:first-of-type legend {
      border-top: 0 none;
      padding-top: .5em; }
    .webform-submission-textbook-request-form fieldset:first-of-type .rem-book-link {
      display: none; }

label:not(.custom-control-label) {
  line-height: 1.2; }

.custom-control-input:checked ~ .custom-control-label::before {
  border-color: #F76902; }

.custom-control:not(.custom-radio) .custom-control-input:focus ~ .custom-control-label::before {
  border-color: black; }

.custom-control.custom-checkbox .custom-control-label:before, .custom-control.custom-checkbox .custom-control-label:after {
  left: -1rem !important;
  width: 1rem !important;
  height: 1rem !important;
  top: 50% !important;
  -webkit-transform: translateY(-50%) !important;
          transform: translateY(-50%) !important; }

.custom-control.custom-checkbox .custom-control-label, .custom-control.custom-radio .custom-control-label {
  display: inline-block !important;
  margin-left: 1.6rem !important; }
  .custom-control.custom-checkbox .custom-control-label:before, .custom-control.custom-checkbox .custom-control-label:after, .custom-control.custom-radio .custom-control-label:before, .custom-control.custom-radio .custom-control-label:after {
    left: -1.6rem !important; }
  .custom-control.custom-checkbox .custom-control-label:hover, .custom-control.custom-radio .custom-control-label:hover {
    cursor: pointer !important; }

.custom-control.custom-checkbox .form-checkbox, .custom-control.custom-radio .form-checkbox {
  position: absolute !important; }

.custom-control.custom-checkbox .custom-control-label {
  margin: 0 0 0 .5rem !important; }

.custom-control.custom-radio .custom-control-label:before, .custom-control.custom-radio .custom-control-label:after {
  top: 0 !important; }

.form-group:not(.custom-radio):not(.custom-checkbox) .custom-control-label:before {
  content: none; }

.custom-radio.custom-control {
  padding-left: 0; }

.form--basetheme.form--basetheme input[type="email"],
.form--basetheme.form--basetheme input[type="tel"],
.form--basetheme.form--basetheme input[type="text"],
.webform-submission-form.form--basetheme input[type="email"],
.webform-submission-form.form--basetheme input[type="tel"],
.webform-submission-form.form--basetheme input[type="text"] {
  height: auto; }

.form--basetheme.form--basetheme textarea,
.webform-submission-form.form--basetheme textarea {
  height: auto; }

.form--basetheme label.form_label,
.form--basetheme label.custom-control-label:not(.option),
.form--basetheme legend,
.webform-submission-form label.form_label,
.webform-submission-form label.custom-control-label:not(.option),
.webform-submission-form legend {
  font-size: 1.25rem !important;
  line-height: 1.5rem !important;
  font-family: "Helvetica Neue", "Helvetica", "Roboto", "Arial", sans-serif;
  font-weight: normal;
  margin-bottom: .5rem !important; }
  @media (max-width: 879.98px) {
    .form--basetheme label.form_label,
    .form--basetheme label.custom-control-label:not(.option),
    .form--basetheme legend,
    .webform-submission-form label.form_label,
    .webform-submission-form label.custom-control-label:not(.option),
    .webform-submission-form legend {
      font-size: 1rem !important;
      line-height: 1.25; } }

.form--basetheme .form-group:not(.custom-radio):not(.custom-checkbox),
.form--basetheme .radios--wrapper,
.form--basetheme .checkboxes--wrapper,
.webform-submission-form .form-group:not(.custom-radio):not(.custom-checkbox),
.webform-submission-form .radios--wrapper,
.webform-submission-form .checkboxes--wrapper {
  margin-bottom: 1rem; }

.form--basetheme .form-control, .form--basetheme input[type="email"],
.form--basetheme input[type="tel"],
.form--basetheme input[type="text"],
.webform-submission-form.form--basetheme input[type="email"],
.webform-submission-form.form--basetheme input[type="tel"],
.webform-submission-form.form--basetheme input[type="text"], .form--basetheme textarea,
.webform-submission-form.form--basetheme textarea,
.webform-submission-form .form-control,
.webform-submission-form .form--basetheme.form--basetheme input[type="email"],
.form--basetheme.form--basetheme .webform-submission-form input[type="email"],
.webform-submission-form .form--basetheme.form--basetheme input[type="tel"],
.form--basetheme.form--basetheme .webform-submission-form input[type="tel"],
.webform-submission-form .form--basetheme.form--basetheme input[type="text"],
.form--basetheme.form--basetheme .webform-submission-form input[type="text"],
.webform-submission-form.form--basetheme input[type="email"],
.webform-submission-form.form--basetheme input[type="tel"],
.webform-submission-form.form--basetheme input[type="text"],
.webform-submission-form .form--basetheme.form--basetheme textarea,
.form--basetheme.form--basetheme .webform-submission-form textarea,
.webform-submission-form.form--basetheme textarea {
  height: auto; }

.form--basetheme .form-type-datelist .container-inline,
.webform-submission-form .form-type-datelist .container-inline {
  display: flex; }
  .form--basetheme .form-type-datelist .container-inline .form-type-select,
  .webform-submission-form .form-type-datelist .container-inline .form-type-select {
    width: 33.333333%; }
    .form--basetheme .form-type-datelist .container-inline .form-type-select:not(:last-child),
    .webform-submission-form .form-type-datelist .container-inline .form-type-select:not(:last-child) {
      margin-right: px-to-rem(5); }

.form--basetheme .form-group:not(.custom-radio):not(.custom-checkbox) .custom-control-label:before,
.webform-submission-form .form-group:not(.custom-radio):not(.custom-checkbox) .custom-control-label:before {
  content: none; }

.form--basetheme .form-group:not(.custom-radio):not(.custom-checkbox) .custom-control-label:after,
.webform-submission-form .form-group:not(.custom-radio):not(.custom-checkbox) .custom-control-label:after {
  left: initial;
  top: auto;
  position: inherit;
  width: 6px;
  height: 6px;
  background-size: 100%;
  display: inline-block; }

.form--basetheme .form-group:not(.custom-radio):not(.custom-checkbox) .custom-control-label.form-required:after,
.webform-submission-form .form-group:not(.custom-radio):not(.custom-checkbox) .custom-control-label.form-required:after {
  background-image: url(/core/misc/icons/ee0000/required.svg); }

.form--basetheme .custom-control.custom-checkbox,
.webform-submission-form .custom-control.custom-checkbox {
  padding-left: .5rem !important; }

.form--basetheme .custom-control.custom-radio,
.webform-submission-form .custom-control.custom-radio {
  padding-left: .5rem !important; }
  .form--basetheme .custom-control.custom-radio input[type="radio"],
  .webform-submission-form .custom-control.custom-radio input[type="radio"] {
    position: absolute; }

.form--basetheme .custom-control.custom-checkbox, .form--basetheme .custom-control.custom-radio,
.webform-submission-form .custom-control.custom-checkbox,
.webform-submission-form .custom-control.custom-radio {
  margin-bottom: 1rem !important; }
  .form--basetheme .custom-control.custom-checkbox .custom-control-label, .form--basetheme .custom-control.custom-radio .custom-control-label,
  .webform-submission-form .custom-control.custom-checkbox .custom-control-label,
  .webform-submission-form .custom-control.custom-radio .custom-control-label {
    display: inline-block !important;
    margin: 0 0 0 .5rem !important;
    padding: .5rem !important; }
    .form--basetheme .custom-control.custom-checkbox .custom-control-label:before, .form--basetheme .custom-control.custom-checkbox .custom-control-label:after, .form--basetheme .custom-control.custom-radio .custom-control-label:before, .form--basetheme .custom-control.custom-radio .custom-control-label:after,
    .webform-submission-form .custom-control.custom-checkbox .custom-control-label:before,
    .webform-submission-form .custom-control.custom-checkbox .custom-control-label:after,
    .webform-submission-form .custom-control.custom-radio .custom-control-label:before,
    .webform-submission-form .custom-control.custom-radio .custom-control-label:after {
      left: -1rem !important;
      width: 1rem !important;
      height: 1rem !important;
      top: 50% !important;
      -webkit-transform: translateY(-50%) !important;
              transform: translateY(-50%) !important; }
  .form--basetheme .custom-control.custom-checkbox .form-required:after, .form--basetheme .custom-control.custom-radio .form-required:after,
  .webform-submission-form .custom-control.custom-checkbox .form-required:after,
  .webform-submission-form .custom-control.custom-radio .form-required:after {
    background-size: 6px 6px !important;
    left: auto !important;
    right: 0;
    background-position: right !important; }
  .form--basetheme .custom-control.custom-checkbox .form-checkbox, .form--basetheme .custom-control.custom-radio .form-checkbox,
  .webform-submission-form .custom-control.custom-checkbox .form-checkbox,
  .webform-submission-form .custom-control.custom-radio .form-checkbox {
    position: absolute; }

@media (min-width: 400px) {
  .form--basetheme .webform-options-display-two-columns,
  .webform-submission-form .webform-options-display-two-columns {
    width: 100%;
    display: block; } }

@media (max-width: 879.98px) {
  .form--basetheme .webform-options-display-two-columns,
  .webform-submission-form .webform-options-display-two-columns {
    -webkit-column-count: 1;
       -moz-column-count: 1;
            column-count: 1; } }

.webform-confirmation__message .custom-control-label {
  font-weight: bold; }
  .webform-confirmation__message .custom-control-label:after {
    content: ": ";
    position: relative !important;
    top: auto !important;
    bottom: auto;
    right: auto !important;
    left: auto !important;
    display: inline !important; }

ul.list-arrows-before {
  padding-left: 0;
  list-style-type: none; }
  ul.list-arrows-before li {
    line-height: 1.25;
    margin-bottom: .75rem;
    padding-left: 2rem;
    position: relative; }
    ul.list-arrows-before li:before {
      font-family: 'Font Awesome 5 Pro';
      content: '\f061';
      font-weight: normal;
      position: absolute;
      top: 2px;
      left: 0; }

.border-quote {
  border-left: 10px solid #f76902;
  padding-left: 1.25rem;
  margin-bottom: 2rem; }

.underlined {
  text-decoration: underline; }

.smaller-text {
  font-size: 1rem !important; }

@media (min-width: 768px) {
  #footer--site--bottom ul.nav-0 {
    margin-top: -1rem; }
    #footer--site--bottom ul.nav-0 > li {
      margin-top: 1rem; } }

ol.big-numbers {
  list-style: none;
  counter-reset: li;
  -webkit-margin-start: 3rem;
          margin-inline-start: 3rem; }
  ol.big-numbers > li {
    font-size: 3.3rem;
    counter-increment: li; }
    ol.big-numbers > li:before {
      content: counter(li) ".";
      display: inline-block;
      margin-left: -3.7rem;
      vertical-align: baseline;
      line-height: 1; }
    ol.big-numbers > li > p {
      vertical-align: top; }
      ol.big-numbers > li > p:first-of-type {
        vertical-align: baseline; }
    ol.big-numbers > li p {
      display: inline-block; }
    ol.big-numbers > li p:not(.h6),
    ol.big-numbers > li ul,
    ol.big-numbers > li li,
    ol.big-numbers > li span,
    ol.big-numbers > li div,
    ol.big-numbers > li a {
      font-size: 1rem; }
    ol.big-numbers > li li > p {
      vertical-align: top; }

.person-full hr.position-absolute {
  bottom: -45px; }

.person-full .person-right-column hr.position-absolute {
  width: calc(100% - 30px); }

.person-full .desktop-title + hr.position-absolute {
  width: calc(100% - 30px); }
  @media (min-width: 1200px) {
    .person-full .desktop-title + hr.position-absolute {
      width: calc(100% - 3rem); } }

.person-full .leadership-image img {
  max-width: 100%; }
  @media (min-width: 768px) {
    .person-full .leadership-image img {
      width: 200px; } }

.justify-content-center .row {
  justify-content: center; }

.table-schedule {
  border-top: solid black 2px;
  border-bottom: solid black 1px; }
  .table-schedule th {
    font-size: 1.125rem !important;
    color: black !important; }
  .table-schedule tr {
    border-color: black; }
    .table-schedule tr td {
      border-color: black; }
      @media (min-width: 992px) {
        .table-schedule tr td:first-of-type {
          width: 33%; } }

.paragraph--type--embed-person-accordion-item .embed-person:last-of-type .field-content {
  border-bottom: none !important; }

@media (min-width: 576px) {
  .paragraph--type--embed-person-accordion-item .embed-person--extra-text {
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
    line-height: 1.4; } }

.embed-student .embed-person--extra-text {
  padding-bottom: 0.5rem !important; }
  .embed-student .embed-person--extra-text p {
    margin-bottom: 0 !important; }

.icon-cards--outlined .card.icon-card {
  border: solid 5px white;
  padding: 0 1rem; }

@media (max-width: 879.98px) {
  .icon-cards--outlined .col-icon_card {
    margin: 1rem 0; } }

.icon-cards--outlined.with-color.warm-colors .col-icon_card:nth-of-type(2n) .icon-card {
  border-color: #F76902; }

.icon-cards--outlined.with-color.warm-colors .col-icon_card:nth-of-type(2n + 1) .icon-card {
  border-color: #F6BE00; }

.icon-cards--outlined.with-color.warm-colors .col-icon_card:nth-of-type(3n + 1) .icon-card {
  border-color: #DA291C; }

.icon-cards--outlined.with-color .col-icon_card:nth-of-type(2n) .icon-card {
  border-color: #009CBD; }

.icon-cards--outlined.with-color .col-icon_card:nth-of-type(2n + 1) .icon-card {
  border-color: #F6BE00; }

.icon-cards--outlined.with-color .col-icon_card:nth-of-type(3n + 1) .icon-card {
  border-color: #7D55C7; }

.icon-cards--outlined.orange-outline .card.icon-card {
  border-color: #F76902; }

.icon-cards--outlined.black-outline .card.icon-card {
  border-color: black; }

.node-83167 .even-width-container-5859 .image-card--image {
  width: 75% !important; }

.award-nominee .award-divider {
  width: 2rem;
  border-top: 5px solid #F76902; }

@media (min-width: 768px) {
  .award-nominee .team-photo .card-img-top {
    max-width: calc(100% - (56.25% / 2)); } }

@media (min-width: 880px) and (max-width: 991.98px) {
  .award-nominee .team-photo .card-img-top {
    max-width: 96.015%; } }

.table-calendar thead tr {
  border-bottom: 1px solid black !important; }

.table-calendar tr td, .table-calendar tr th {
  border-bottom: 1px solid black;
  padding: 1.25rem 1rem 1.25rem 0;
  border-top: 1px solid black; }

.table-calendar tr th {
  border-top: 2px solid black !important;
  color: black !important;
  font-size: 1.25rem !important;
  font-weight: bold !important;
  padding: .75rem 1rem .75rem 0 !important; }

.table-calendar tr:last-of-type td {
  border-bottom: 0 none; }

.table-menu {
  border: 1px solid; }
  .table-menu tr td, .table-menu tr th {
    border: 1px solid !important;
    border-right: 1px solid;
    font-size: 1rem;
    text-align: center; }
  .table-menu tr th {
    font-weight: bold;
    background-color: #EEEEEE; }

.card.icon-card .card-body .card-text p {
  margin-bottom: 1rem !important; }

#footer--site--top #footer--site--top-left--site-logo a img {
  height: 70px;
  max-height: 70px;
  max-width: 100%; }

body.progress-nav--none .single-column-container .field--name-field-content.field--type-text-long p, body.progress-nav--none .single-column-container .field--name-field-content.field--type-text-long ul:not(.columns-3):not(.columns-4), body.progress-nav--none .single-column-container .field--name-field-content.field--type-text-long ol,
body.progress-nav--top .single-column-container .field--name-field-content.field--type-text-long p,
body.progress-nav--top .single-column-container .field--name-field-content.field--type-text-long ul:not(.columns-3):not(.columns-4),
body.progress-nav--top .single-column-container .field--name-field-content.field--type-text-long ol {
  max-width: 800px;
  margin-left: auto;
  margin-right: auto; }

@media (min-width: 768px) {
  .title--left-align .row--title {
    text-align: left !important; } }

@media (max-width: 767.98px) {
  .even-width-container .paragraph--type--text-content > div p:last-child {
    margin-bottom: 2rem; } }

.font-base {
  font: 400 1rem/1.5 "Helvetica Neue", "Helvetica", "Roboto", "Arial", sans-serif !important; }

.jumbotron-header h2.row--title {
  font-size: 3rem;
  line-height: 3.25rem;
  margin-bottom: 2rem;
  letter-spacing: -0.2px; }

.border-5 {
  border-width: 5px !important; }

.border-2 {
  border-width: 2px !important; }

@media (min-width: 768px) {
  .reduced-title-text .hero-content .inner-content {
    width: 735px !important; } }

.reduced-title-text .hero-content .inner-content .h1 {
  font-size: 3rem; }

.bg-black:not(.icon-card--white-on-black) .icon-orange-divider .card.icon-card .card-body .card-text hr.divider {
  border-top-color: #F76902 !important; }

#footer--global.bg-black .text-white p a:not(.btn) {
  text-decoration: underline !important; }

@media (max-width: 767.98px) {
  .reverse-2col-order-mobile .page-column-left {
    order: 1; }
  .reverse-2col-order-mobile .page-column-right {
    order: 0; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInBhZ2VzL19wYWdlcy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3dlYl93d3cvaG9tZS93LW1jdXRpbGl0aWVzL3d3dy9hc3NldHMvc2Nzcy9fYm9vdHN0cmFwLWN1c3RvbWl6YXRpb25zLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmlkLnNjc3MiLCJwYWdlcy9faG9tZS5zY3NzIiwicGFnZXMvX2RpcmVjdG9yeS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fc2NyZWVuLXJlYWRlci5zY3NzIiwiYmFzZS9fZm9ybS5zY3NzIiwiYmFzZS9fbGlzdHMuc2NzcyIsImJhc2UvX3R5cG9ncmFwaHkuc2NzcyIsIl9nbG9iYWwuc2NzcyIsInBhZ2VzL19zZXJ2aWNlcy5zY3NzIiwiY29tcG9uZW50cy9fYXdhcmRzLnNjc3MiLCJjb21wb25lbnRzL190YWJsZXMuc2NzcyIsInBhcmFncmFwaHMvX2ljb24tY2FyZHMuc2NzcyIsIl9vdmVycmlkZXMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUVJLGtCQUFrQjtFQUNsQixvQkFBb0IsRUFBQTs7QUN5RHBCO0VEdERKO0lBSVEsZUFBZSxFQUFBLEVBUWxCOztBQzBDRDtFRHRESjtJQU9RLGVBQWUsRUFBQSxFQUtsQjs7QUMwQ0Q7RUR0REo7SUFVUSxpQkFBaUIsRUFBQSxFQUVwQjs7QUFHTDtFQUNJLGVBQWU7RUFDZixtQkFBbUI7RUFDbkIsd0JBQXdCO0VBQ3hCLG1CQUFrQixFQUFBOztBQUd0QjtFQUNJLGtCQUFrQjtFQUNsQixtQkFBbUI7RUFDbkIsd0JBQXdCO0VBQ3hCLG9CQUFtQixFQUFBOztBQUd2QjtFQUVJLDJCQUEwQjtVQUExQiwwQkFBMEIsRUFBQTs7QUFJ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cUJRLHFCQUFxQixFQUFBOztBQU03QjtFQUNFLGlCQUFpQixFQUFBO0VBRG5CO0lBSU0sNEJBQWlEO0lBQ2pELHVCQUF1QjtJQUN2QixlQUFlO0lBQ2Ysa0JBQWtCLEVBQUE7RUFQeEI7SUFXTSxpQkFBaUI7SUFDakIseUJBQXlCLEVBQUE7O0FDdkMvQjtFQUdNLDhCQUE4QixFQUFBOztBQ0hwQztFQUNJLFlBQVk7RUFDWixnQkFBZ0I7RUFDaEIsZUFBZSxFQUFBOztBQUduQjs7OztFQUdJLGdCQUFnQjtFQUNoQixpQkFBaUI7RUFDakIsa0JBQWtCLEVBQUE7O0FkaURsQjtFYzdDSjtJQUdNLDJCQUEyQixFQUFBLEVBRTlCOztBZHFEQztFY2xESjtJQUVJLG1CQUFtQixFQUFBLEVBRXRCOztBQUVEO0VBQ0UsMEZBQTBGLEVBQUE7O0FBRzVGO0VBQ0UsZUFBZTtFQUNmLG9CQUFvQjtFQUNwQixtQkFBbUI7RUFDbkIsc0JBQXNCLEVBQUE7O0FBR3hCO0VBQ0UsNEJBQTRCLEVBQUE7O0FBRzlCO0VBQ0UsNEJBQTRCLEVBQUE7O0FkZTFCO0VjWko7SUFJSSx1QkFBdUIsRUFBQSxFQU14Qjs7QUFWSDtFQVFJLGVBQWUsRUFBQTs7QUFPbkI7RUFDSSxvQ0FBcUMsRUFBQTs7QUFHekM7RUFDRSxxQ0FBcUMsRUFBQTs7QWRLbkM7RWNESjtJQUdNLFFBQVEsRUFBQTtFQUhkO0lBTU0sUUFBUSxFQUFBLEVBQ1QiLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLm5vZGUtMzEyMjIwe1xuICAuY2FyZC5pbWFnZS1jYXJkIC5jYXJkLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDIuMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDIuMzVyZW07XG4gIH1cbn1cbi5leHRyYS1jZWxsLXBhZGRpbmd7XG4gIC5jb2wtaWNvbl9jYXJke1xuICAgIC5jYXJkLXRleHR7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMXJlbTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgICAgICAgcGFkZGluZzogMCAycmVtO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4eGwpIHtcbiAgICAgICAgcGFkZGluZzogMCA0LjVyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4ubGVhZC1oZWFkaW5ne1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICBsaW5lLWhlaWdodDogMi41cmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XG59XG5cbi5sZWFkLWZyaWVuZHMtaGVhZGluZ3tcbiAgICBmb250LXNpemU6IDIuMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDIuNXJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTouNXJlbTtcbn1cblxuLm5vLWxpc3QtbWFyZ2lue1xuICB1bHtcbiAgICBwYWRkaW5nLWlubGluZS1zdGFydDogMjBweDtcbiAgfVxufVxuXG5vbC5sYXJnZS1vcmFuZ2UtbnVtYmVyc3tcbiAgY291bnRlci1yZXNldDogbGFyZ2UtbnVtYmVyLWNvdW50ZXI7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmctbGVmdDogNDBweDtcbiAgbGkge1xuICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICBjb3VudGVyLWluY3JlbWVudDogbGFyZ2UtbnVtYmVyLWNvdW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctdG9wOiAuNHJlbTtcbiAgICAmOmJlZm9yZXtcbiAgICAgIGNvbnRlbnQ6IGNvdW50ZXIobGFyZ2UtbnVtYmVyLWNvdW50ZXIpIFwiLiBcIjtcbiAgICAgIGNvbG9yOnRoZW1lLWNvbG9yKFwicml0LW9yYW5nZVwiKTtcbiAgICAgIGZvbnQtc2l6ZTogMS45cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAtLXNpemU6IDMwcHg7XG4gICAgICBsZWZ0OiBjYWxjKC0xICogdmFyKC0tc2l6ZSkgLSAxMHB4KTtcbiAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1zaXplKTtcbiAgICAgIHdpZHRoOiB2YXIoLS1zaXplKTtcbiAgICAgIGhlaWdodDogdmFyKC0tc2l6ZSk7XG4gICAgICB0b3A6IDA7XG4gICAgfVxuICB9XG59XG5cbi5qdW1ib3Ryb24tYWRqdXN0e1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAuanVtYm90cm9uIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICB9XG4gIH1cbn1cblxuLnBhZ2Utcm93IHtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG5cblx0XHQmLnBhZ2Utcm93LS1yaWdodC1zaWRlYmFyIC5yaWdodC1zaWRlYmFyLWxhcmdlciAucGFnZS1jb2x1bW4ucGFnZS1jb2x1bW4tcmlnaHQge1xuXHRcdFx0QGluY2x1ZGUgbWFrZS1jb2woNCk7XG5cdFx0fVxuXG5cdFx0Ji5wYWdlLXJvdy0tcmlnaHQtc2lkZWJhciAucmlnaHQtc2lkZWJhci1sYXJnZXIgLnBhZ2UtY29sdW1uLnBhZ2UtY29sdW1uLWxlZnQge1xuXHRcdFx0QGluY2x1ZGUgbWFrZS1jb2woOCk7XG4gICAgICBwYWRkaW5nOiAwIDFyZW07XG5cdFx0fVxuXG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG5cblx0XHQmLnBhZ2Utcm93LS1yaWdodC1zaWRlYmFyIC5yaWdodC1zaWRlYmFyLWxhcmdlciAucGFnZS1jb2x1bW4ucGFnZS1jb2x1bW4tcmlnaHQge1xuXHRcdFx0QGluY2x1ZGUgbWFrZS1jb2woNCk7XG5cdFx0fVxuXG5cdFx0Ji5wYWdlLXJvdy0tcmlnaHQtc2lkZWJhciAucmlnaHQtc2lkZWJhci1sYXJnZXIgLnBhZ2UtY29sdW1uLnBhZ2UtY29sdW1uLWxlZnQge1xuXHRcdFx0QGluY2x1ZGUgbWFrZS1jb2woNyk7XG4gICAgICBAaW5jbHVkZSBtYWtlLWNvbC1vZmZzZXQoMSk7XG4gICAgICBwYWRkaW5nOiAwIDNyZW07XG5cdFx0fVxuXG4gIH1cblxufVxuXG4uYmxvY2staW5zdGFncmFtLWJsb2Nre1xuICBhLmltZy1yZXNwb25zaXZle1xuICAgIC8vcGFkZGluZy1ib3R0b206IDEwMCUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4jYmxvY2stcml0LWJvb3RzdHJhcC1zdWJ0aGVtZS1yaXQtbWFpbi1tZW51IC5uYXYubm8tc2xhYi1uYXYgLmRyb3Bkb3duIC5kcm9wZG93bi1tZW51LnNob3cge1xuICAgIG1pbi13aWR0aDogMTlyZW0gIWltcG9ydGFudDtcbn1cblxuI2Jsb2NrLXJpdC1ib290c3RyYXAtc3VidGhlbWUtcml0LW1haW4tbWVudSAubmF2Lm5vLXNsYWItbmF2IC5kcm9wZG93bjpudGgtb2YtdHlwZSgzKSAuZHJvcGRvd24tbWVudS5zaG93IHtcbiAgICBtaW4td2lkdGg6IDE2cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5uby1zbGFiLW5hdntcbiAgLmRyb3Bkb3duLWl0ZW17XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbiIsIi8vIEJyZWFrcG9pbnQgdmlld3BvcnQgc2l6ZXMgYW5kIG1lZGlhIHF1ZXJpZXMuXG4vL1xuLy8gQnJlYWtwb2ludHMgYXJlIGRlZmluZWQgYXMgYSBtYXAgb2YgKG5hbWU6IG1pbmltdW0gd2lkdGgpLCBvcmRlciBmcm9tIHNtYWxsIHRvIGxhcmdlOlxuLy9cbi8vICAgICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweClcbi8vXG4vLyBUaGUgbWFwIGRlZmluZWQgaW4gdGhlIGAkZ3JpZC1icmVha3BvaW50c2AgZ2xvYmFsIHZhcmlhYmxlIGlzIHVzZWQgYXMgdGhlIGAkYnJlYWtwb2ludHNgIGFyZ3VtZW50IGJ5IGRlZmF1bHQuXG5cbi8vIE5hbWUgb2YgdGhlIG5leHQgYnJlYWtwb2ludCwgb3IgbnVsbCBmb3IgdGhlIGxhc3QgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20pXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgJGJyZWFrcG9pbnQtbmFtZXM6ICh4cyBzbSBtZCBsZyB4bCkpXG4vLyAgICBtZFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cykpIHtcbiAgJG46IGluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG4gIT0gbnVsbCBhbmQgJG4gPCBsZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLCBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSksIG51bGwpO1xufVxuXG4vLyBNaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBzbWFsbGVzdCAoZmlyc3QpIGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1taW4oc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA1NzZweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1pbiAhPSAwLCAkbWluLCBudWxsKTtcbn1cblxuLy8gTWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgbGFyZ2VzdCAobGFzdCkgYnJlYWtwb2ludC5cbi8vIFRoZSBtYXhpbXVtIHZhbHVlIGlzIGNhbGN1bGF0ZWQgYXMgdGhlIG1pbmltdW0gb2YgdGhlIG5leHQgb25lIGxlc3MgMC4wMnB4XG4vLyB0byB3b3JrIGFyb3VuZCB0aGUgbGltaXRhdGlvbnMgb2YgYG1pbi1gIGFuZCBgbWF4LWAgcHJlZml4ZXMgYW5kIHZpZXdwb3J0cyB3aXRoIGZyYWN0aW9uYWwgd2lkdGhzLlxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9tZWRpYXF1ZXJpZXMtNC8jbXEtbWluLW1heFxuLy8gVXNlcyAwLjAycHggcmF0aGVyIHRoYW4gMC4wMXB4IHRvIHdvcmsgYXJvdW5kIGEgY3VycmVudCByb3VuZGluZyBidWcgaW4gU2FmYXJpLlxuLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzgyNjFcbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1heChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIDc2Ny45OHB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQHJldHVybiBpZigkbmV4dCwgYnJlYWtwb2ludC1taW4oJG5leHQsICRicmVha3BvaW50cykgLSAuMDIsIG51bGwpO1xufVxuXG4vLyBSZXR1cm5zIGEgYmxhbmsgc3RyaW5nIGlmIHNtYWxsZXN0IGJyZWFrcG9pbnQsIG90aGVyd2lzZSByZXR1cm5zIHRoZSBuYW1lIHdpdGggYSBkYXNoIGluIGZyb250LlxuLy8gVXNlZnVsIGZvciBtYWtpbmcgcmVzcG9uc2l2ZSB1dGlsaXRpZXMuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeCh4cywgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIFwiXCIgIChSZXR1cm5zIGEgYmxhbmsgc3RyaW5nKVxuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIFwiLXNtXCJcbkBmdW5jdGlvbiBicmVha3BvaW50LWluZml4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEByZXR1cm4gaWYoYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cykgPT0gbnVsbCwgXCJcIiwgXCItI3skbmFtZX1cIik7XG59XG5cbi8vIE1lZGlhIG9mIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgd2lkZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtaW4ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIG9mIGF0IG1vc3QgdGhlIG1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBsYXJnZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtYXgge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIHRoYXQgc3BhbnMgbXVsdGlwbGUgYnJlYWtwb2ludCB3aWR0aHMuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgYmV0d2VlbiB0aGUgbWluIGFuZCBtYXggYnJlYWtwb2ludHNcbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWJldHdlZW4oJGxvd2VyLCAkdXBwZXIsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJGxvd2VyLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkdXBwZXIsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGxvd2VyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkdXBwZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIE1lZGlhIGJldHdlZW4gdGhlIGJyZWFrcG9pbnQncyBtaW5pbXVtIGFuZCBtYXhpbXVtIHdpZHRocy5cbi8vIE5vIG1pbmltdW0gZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LCBhbmQgbm8gbWF4aW11bSBmb3IgdGhlIGxhcmdlc3Qgb25lLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IG9ubHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQsIG5vdCB2aWV3cG9ydHMgYW55IHdpZGVyIG9yIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtb25seSgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuIiwiXG4vLyBvdmVycmlkZSBCb290c3RyYXAgdmFyaWFibGVzIGhlcmVcbi8vIHNlZTogbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL192YXJpYWJsZXMuc2Nzc1xuXG4kYWNjZW50LWNvbG9yczogKFxuXHRcInRlYWxcIjogIzAwNWU1ZCxcblx0XCJncmVlblwiOiAjODRCRDAwLFxuXHRcImJsdWVcIjogIzAwOWNiZCxcblx0XCJwdXJwbGVcIjogIzdENTVDNyxcblx0XCJyZWRcIjogI0RBMjkxQyxcblx0XCJ5ZWxsb3dcIjogI0Y2QkUwMFxuKTtcblxuJG5ldXRyYWwtY29sb3JzOiAoXG5cdFwiZ3JheS1tZWRpdW1cIjogIzk0OTQ5NCxcblx0XCJjb29sLWdyYXktZGFya1wiOiAjNzI3NTc4LFxuXHRcImNvb2wtZ3JheVwiOiAjZDlkOWQ2LFxuXHRcIm5ldXRyYWwtZ3JheS1kYXJrXCI6ICM2MDYwNjAsXG5cdFwid2FybS1ncmF5XCI6ICNEN0QyQ0IsXG5cdFwiZm9ybS1ncmF5XCI6ICM3Mjc0NzgsXG5cdFwiZ3JlZW5cIjogIzgyOTk5NSxcblx0XCJicm93blwiOiAjQTM5MzgyXG4pO1xuXG4kdGhlbWUtY29sb3JzOiAoXG5cdFwibGlnaHRcIjogI0VFRSxcblx0XCJyaXQtb3JhbmdlXCI6ICNGNzY5MDIsIC8vICNlODc0MDAsXG5cdFwid2NhZy1vcmFuZ2VcIjogI0M3NTMwMCxcblx0Ly8gXCJ3Y2FnLWdyZWVuXCI6ICM3MkEzMDAsXG4pO1xuJHByaW1hcnk6IHRoZW1lLWNvbG9yKFwicml0LW9yYW5nZVwiKTtcblxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6IFwiSGVsdmV0aWNhIE5ldWVcIiwgXCJIZWx2ZXRpY2FcIiwgXCJSb2JvdG9cIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuJGZvbnQtZmFtaWx5LWhlbHZldGljYS1saWdodDogXCJIZWx2ZXRpY2FOZXVlLUxpZ2h0XCIsIFwiSGVsdmV0aWNhIE5ldWUgTGlnaHRcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBcIkhlbHZldGljYVwiLCBcIlJvYm90b1wiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG5cbiRmb250LXNpemUtbGc6IDEuMTY3cmVtO1xuXG4kaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTogMi42cmVtO1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiBib2xkO1xuXG4kaDEtZm9udC1zaXplOiBweC10by1yZW0oNjgpO1xuJGgyLWZvbnQtc2l6ZTogcHgtdG8tcmVtKDM2KTtcbiRoMy1mb250LXNpemU6IHB4LXRvLXJlbSgzMik7XG4kaDQtZm9udC1zaXplOiBweC10by1yZW0oMjgpO1xuJGg1LWZvbnQtc2l6ZTogcHgtdG8tcmVtKDI0KTtcbiRoNi1mb250LXNpemU6IHB4LXRvLXJlbSgyMCk7XG5cbiRib3JkZXItcmFkaXVzOiAwO1xuJGJvcmRlci1yYWRpdXMtbGc6IDA7XG4kYm9yZGVyLXJhZGl1cy1zbTogMDtcbiRpbnB1dC1idG4tYm9yZGVyLXdpZHRoOiAxcHg7XG5cbiRsaW5rLXVuZGVybGluZS1vZmZzZXQ6IDAuMTI1cmVtO1xuJGxpbmstdW5kZXJsaW5lLXNpemU6IDAuMTI1cmVtO1xuJGJvZHktdGV4dC1jb2xvcjogIzIxMjUyOTtcbiRsaW5rLWRlY29yYXRpb246IHVuZGVybGluZSB0cmFuc3BhcmVudCBzb2xpZCAkbGluay11bmRlcmxpbmUtc2l6ZTtcbiRsaW5rLWhvdmVyLWRlY29yYXRpb246IHVuZGVybGluZSB0cmFuc3BhcmVudCBzb2xpZCAkbGluay11bmRlcmxpbmUtc2l6ZTtcblxuXG4kZ3JpZC1icmVha3BvaW50czogKFxuXHQvLyBFeHRyYSBzbWFsbCBzY3JlZW4gLyBwaG9uZVxuXHR4czogMCxcblx0Ly8gU21hbGwgc2NyZWVuIC8gcGhvbmVcblx0c206IDU3NnB4LFxuXHQvLyBNZWRpdW0gc2NyZWVuIC8gdGFibGV0XG5cdG1kOiA3NjhweCxcblx0Ly8gQ1VTVE9NXG5cdG1kbGc6IDg4MHB4LFxuXHQvLyBMYXJnZSBzY3JlZW4gLyBkZXNrdG9wXG5cdGxnOiA5OTJweCxcblx0Ly8gRXh0cmEgbGFyZ2Ugc2NyZWVuIC8gd2lkZSBkZXNrdG9wXG5cdHhsOiAxMjAwcHgsXG5cdC8vIEV4dHJhIGV4dHJhIGxhcmdlIHNjcmVlbiAvIHdpZGVyIGRlc2t0b3Bcblx0eHhsOiAxNDYwcHhcbik7XG5cbiRjb250YWluZXItbWF4LXdpZHRoczogKFxuXHRzbTogNTQwcHgsXG5cdG1kOiA3MjBweCxcblx0bWRsZzogODQwcHgsXG5cdGxnOiA5NjBweCxcblx0eGw6IDExNDBweCxcblx0eHhsOiAxNDAwcHhcbik7XG5cbiRzcGFjZXI6IDFyZW0gIWRlZmF1bHQ7XG4kc3BhY2VyczogKFxuXHQ2OiAoJHNwYWNlciAqIDQuNSksXG5cdDc6ICgkc3BhY2VyICogNilcbik7XG5cblxuJGNhcmQtY2FwLWJnOiB0cmFuc3BhcmVudDtcbiRjYXJkLWJvcmRlci13aWR0aDogMDtcblxuLy8gQnV0dG9uIE92ZXJyaWRlc1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1zbTogICAgICAuNXJlbTtcbiRpbnB1dC1idG4tcGFkZGluZy14LXNtOiAgICAgIDFyZW07XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LWxnOiAgICAgIC42MjVyZW07XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1sZzogICAgICAxLjI1cmVtO1xuXG5cbi8vIEZvcm1zXG4kaW5wdXQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuNXJlbTtcbiRpbnB1dC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDFyZW07XG4vLyAkaW5wdXQtZm9udC1zaXplOlx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0JGZvbnQtc2l6ZS1sZztcbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJsYWNrO1xuLy8gJGlucHV0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwX2dldCgkbmV1dHJhbC1jb2xvcnMsICd3YXJtLWdyYXknKTtcbiRpbnB1dC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluc2V0IDAgMXB4IDFweCByZ2JhKGJsYWNrLCAuMDc1KTtcbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICAgICAgICAgIDJweDtcbiRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgIGJsYWNrO1xuJGlucHV0LWZvY3VzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmxhY2s7XG4kaW5wdXQtZm9jdXMtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgICBub25lO1xuLy8gJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgbWFwX2dldCgkbmV1dHJhbC1jb2xvcnMsICd3YXJtLWdyYXknKTtcbiRpbnB1dC1wbGFpbnRleHQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgIGJsYWNrO1xuLy8gJGlucHV0LWhlaWdodC1pbm5lcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgYXV0bztcbi8vICRpbnB1dC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF1dG87XG5cbiRjdXN0b20tY29udHJvbC1ndXR0ZXI6ICAgICAgICAgICAgICAgICAgICAgICAgIC41cmVtO1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplOiAgICAgICAgICAgICAgICAgMS4yNXJlbTtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc6ICAgICAgICAgICAgICAgICAgIHdoaXRlO1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3gtc2hhZG93OiAgICAgICAgICAgbm9uZTtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZzogICAgICAgICAgIHRoZW1lLWNvbG9yKCdyaXQtb3JhbmdlJyk7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJveC1zaGFkb3c6ICAgICBub25lO1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm94LXNoYWRvdzogICAgbm9uZTtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgIDJweDtcblxuJGxpbmstdGhlbWU6IChcblx0XCJ3aGl0ZVwiOiAoXG5cdFx0XCJpbmxpbmUtbGlua1wiOihcblx0XHRcdFwiY29sb3JcIjogJGJvZHktdGV4dC1jb2xvcixcblx0XHRcdFwiZGVjb3JhdGlvbi1jb2xvclwiOiAkcHJpbWFyeSxcblx0XHRcdFwiaG92ZXItZGVjb3JhdGlvbi1jb2xvclwiOiB0cmFuc3BhcmVudCxcblx0XHRcdFwiaG92ZXItY29sb3JcIjogbWFwLWdldCgkbmV1dHJhbC1jb2xvcnMsIFwiY29vbC1ncmF5LWRhcmtcIiksXG5cdFx0XHRcImZvbnQtd2VpZ2h0XCI6IG51bGxcblx0XHQpLFxuXHRcdFwibm9uLWlubGluZS1saW5rXCI6KFxuXHRcdFx0XCJjb2xvclwiOiBudWxsLFxuXHRcdFx0XCJkZWNvcmF0aW9uLWNvbG9yXCI6IHRyYW5zcGFyZW50LFxuXHRcdFx0XCJob3Zlci1kZWNvcmF0aW9uLWNvbG9yXCI6ICRwcmltYXJ5LFxuXHRcdFx0XCJob3Zlci1jb2xvclwiOiAkYm9keS10ZXh0LWNvbG9yLFxuXHRcdFx0XCJmb250LXdlaWdodFwiOiBudWxsXG5cdFx0KSxcblx0XHRcImxpbmtzLWxpc3RcIjooXG5cdFx0XHRcImNvbG9yXCI6ICRib2R5LXRleHQtY29sb3IsXG5cdFx0XHRcImRlY29yYXRpb24tY29sb3JcIjogdHJhbnNwYXJlbnQsXG5cdFx0XHRcImhvdmVyLWRlY29yYXRpb24tY29sb3JcIjogJHByaW1hcnksXG5cdFx0XHRcImhvdmVyLWNvbG9yXCI6IG51bGwsXG5cdFx0XHRcImZvbnQtd2VpZ2h0XCI6IGJvbGRcblx0XHQpLFxuXHRcdFwiY3RhXCI6KFxuXHRcdFx0XCJjb2xvclwiOiBudWxsLFxuXHRcdFx0XCJkZWNvcmF0aW9uLWNvbG9yXCI6IHRyYW5zcGFyZW50LFxuXHRcdFx0XCJob3Zlci1kZWNvcmF0aW9uLWNvbG9yXCI6ICRwcmltYXJ5LFxuXHRcdFx0XCJob3Zlci1jb2xvclwiOiAkYm9keS10ZXh0LWNvbG9yLFxuXHRcdFx0XCJmb250LXdlaWdodFwiOiBib2xkXG5cdFx0KSxcblx0XHRcImhlYWRlclwiOihcblx0XHRcdFwiY29sb3JcIjogaW5oZXJpdCxcblx0XHRcdFwiZGVjb3JhdGlvbi1jb2xvclwiOiB0cmFuc3BhcmVudCxcblx0XHRcdFwiaG92ZXItZGVjb3JhdGlvbi1jb2xvclwiOiAkcHJpbWFyeSxcblx0XHRcdFwiaG92ZXItY29sb3JcIjogaW5oZXJpdCxcblx0XHRcdFwiZm9udC13ZWlnaHRcIjogbnVsbFxuXHRcdClcblx0KSxcblx0XCJibGFja1wiOiAoXG5cdFx0XCJpbmxpbmUtbGlua1wiOihcblx0XHRcdFwiY29sb3JcIjogd2hpdGUsXG5cdFx0XHRcImRlY29yYXRpb24tY29sb3JcIjogJHByaW1hcnksXG5cdFx0XHRcImhvdmVyLWRlY29yYXRpb24tY29sb3JcIjogdHJhbnNwYXJlbnQsXG5cdFx0XHRcImhvdmVyLWNvbG9yXCI6IG1hcC1nZXQoJG5ldXRyYWwtY29sb3JzLCBcImNvb2wtZ3JheS1kYXJrXCIpLFxuXHRcdFx0XCJmb250LXdlaWdodFwiOiBudWxsXG5cdFx0KSxcblx0XHRcIm5vbi1pbmxpbmUtbGlua1wiOihcblx0XHRcdFwiY29sb3JcIjogbnVsbCxcblx0XHRcdFwiZGVjb3JhdGlvbi1jb2xvclwiOiB0cmFuc3BhcmVudCxcblx0XHRcdFwiaG92ZXItZGVjb3JhdGlvbi1jb2xvclwiOiAkcHJpbWFyeSxcblx0XHRcdFwiaG92ZXItY29sb3JcIjogd2hpdGUsXG5cdFx0XHRcImZvbnQtd2VpZ2h0XCI6IG51bGxcblx0XHQpLFxuXHRcdFwibGlua3MtbGlzdFwiOihcblx0XHRcdFwiY29sb3JcIjogd2hpdGUsXG5cdFx0XHRcImRlY29yYXRpb24tY29sb3JcIjogdHJhbnNwYXJlbnQsXG5cdFx0XHRcImhvdmVyLWRlY29yYXRpb24tY29sb3JcIjogJHByaW1hcnksXG5cdFx0XHRcImhvdmVyLWNvbG9yXCI6IG51bGwsXG5cdFx0XHRcImZvbnQtd2VpZ2h0XCI6IGJvbGRcblx0XHQpLFxuXHRcdFwiY3RhXCI6KFxuXHRcdFx0XCJjb2xvclwiOiBudWxsLFxuXHRcdFx0XCJkZWNvcmF0aW9uLWNvbG9yXCI6IHRyYW5zcGFyZW50LFxuXHRcdFx0XCJob3Zlci1kZWNvcmF0aW9uLWNvbG9yXCI6ICRwcmltYXJ5LFxuXHRcdFx0XCJob3Zlci1jb2xvclwiOiB3aGl0ZSxcblx0XHRcdFwiZm9udC13ZWlnaHRcIjogYm9sZFxuXHRcdCksXG5cdFx0XCJoZWFkZXJcIjooXG5cdFx0XHRcImNvbG9yXCI6IGluaGVyaXQsXG5cdFx0XHRcImRlY29yYXRpb24tY29sb3JcIjogdHJhbnNwYXJlbnQsXG5cdFx0XHRcImhvdmVyLWRlY29yYXRpb24tY29sb3JcIjogJHByaW1hcnksXG5cdFx0XHRcImhvdmVyLWNvbG9yXCI6IGluaGVyaXQsXG5cdFx0XHRcImZvbnQtd2VpZ2h0XCI6IG51bGxcblx0XHQpLFxuXHRcdFwiZm9vdGVyLWRpc2NsYWltZXJcIjooXG5cdFx0XHRcImNvbG9yXCI6ICM5Njk2OTYsXG5cdFx0XHRcImRlY29yYXRpb24tY29sb3JcIjogdHJhbnNwYXJlbnQsXG5cdFx0XHRcImhvdmVyLWRlY29yYXRpb24tY29sb3JcIjogIzk2OTY5Nixcblx0XHRcdFwiaG92ZXItY29sb3JcIjogIzk2OTY5Nixcblx0XHRcdFwiZm9udC13ZWlnaHRcIjogbnVsbFxuXHRcdClcblx0KSxcblx0XCJwcmltYXJ5XCI6IChcblx0XHRcImlubGluZS1saW5rXCI6KFxuXHRcdFx0XCJjb2xvclwiOiB3aGl0ZSxcblx0XHRcdFwiZGVjb3JhdGlvbi1jb2xvclwiOiB3aGl0ZSxcblx0XHRcdFwiaG92ZXItZGVjb3JhdGlvbi1jb2xvclwiOiB0cmFuc3BhcmVudCxcblx0XHRcdFwiaG92ZXItY29sb3JcIjogbnVsbCxcblx0XHRcdFwiZm9udC13ZWlnaHRcIjogbnVsbFxuXHRcdCksXG5cdFx0XCJub24taW5saW5lLWxpbmtcIjooXG5cdFx0XHRcImNvbG9yXCI6IG51bGwsXG5cdFx0XHRcImRlY29yYXRpb24tY29sb3JcIjogdHJhbnNwYXJlbnQsXG5cdFx0XHRcImhvdmVyLWRlY29yYXRpb24tY29sb3JcIjogd2hpdGUsXG5cdFx0XHRcImhvdmVyLWNvbG9yXCI6IG51bGwsXG5cdFx0XHRcImZvbnQtd2VpZ2h0XCI6IG51bGxcblx0XHQpLFxuXHRcdFwibGlua3MtbGlzdFwiOihcblx0XHRcdFwiY29sb3JcIjogd2hpdGUsXG5cdFx0XHRcImRlY29yYXRpb24tY29sb3JcIjogdHJhbnNwYXJlbnQsXG5cdFx0XHRcImhvdmVyLWRlY29yYXRpb24tY29sb3JcIjogd2hpdGUsXG5cdFx0XHRcImhvdmVyLWNvbG9yXCI6IG51bGwsXG5cdFx0XHRcImZvbnQtd2VpZ2h0XCI6IGJvbGRcblx0XHQpLFxuXHRcdFwiY3RhXCI6KFxuXHRcdFx0XCJjb2xvclwiOiBudWxsLFxuXHRcdFx0XCJkZWNvcmF0aW9uLWNvbG9yXCI6IHRyYW5zcGFyZW50LFxuXHRcdFx0XCJob3Zlci1kZWNvcmF0aW9uLWNvbG9yXCI6IHdoaXRlLFxuXHRcdFx0XCJob3Zlci1jb2xvclwiOiB3aGl0ZSxcblx0XHRcdFwiZm9udC13ZWlnaHRcIjogYm9sZFxuXHRcdCksXG5cdFx0XCJoZWFkZXJcIjooXG5cdFx0XHRcImNvbG9yXCI6IGluaGVyaXQsXG5cdFx0XHRcImRlY29yYXRpb24tY29sb3JcIjogdHJhbnNwYXJlbnQsXG5cdFx0XHRcImhvdmVyLWRlY29yYXRpb24tY29sb3JcIjogd2hpdGUsXG5cdFx0XHRcImhvdmVyLWNvbG9yXCI6IGluaGVyaXQsXG5cdFx0XHRcImZvbnQtd2VpZ2h0XCI6IG51bGxcblx0XHQpXG5cdCksXG5cdFwiZ3JheVwiOiAoXG5cdFx0XCJpbmxpbmUtbGlua1wiOihcblx0XHRcdFwiY29sb3JcIjogJGJvZHktdGV4dC1jb2xvcixcblx0XHRcdFwiZGVjb3JhdGlvbi1jb2xvclwiOiAkYm9keS10ZXh0LWNvbG9yLFxuXHRcdFx0XCJob3Zlci1kZWNvcmF0aW9uLWNvbG9yXCI6IHRyYW5zcGFyZW50LFxuXHRcdFx0XCJob3Zlci1jb2xvclwiOiAgbWFwLWdldCgkbmV1dHJhbC1jb2xvcnMsIFwibmV1dHJhbC1ncmF5LWRhcmtcIiksXG5cdFx0XHRcImZvbnQtd2VpZ2h0XCI6IG51bGxcblx0XHQpLFxuXHRcdFwibm9uLWlubGluZS1saW5rXCI6KFxuXHRcdFx0XCJjb2xvclwiOiBudWxsLFxuXHRcdFx0XCJkZWNvcmF0aW9uLWNvbG9yXCI6IHRyYW5zcGFyZW50LFxuXHRcdFx0XCJob3Zlci1kZWNvcmF0aW9uLWNvbG9yXCI6ICRib2R5LXRleHQtY29sb3IsXG5cdFx0XHRcImhvdmVyLWNvbG9yXCI6ICRib2R5LXRleHQtY29sb3IsXG5cdFx0XHRcImZvbnQtd2VpZ2h0XCI6IG51bGxcblx0XHQpLFxuXHRcdFwibGlua3MtbGlzdFwiOihcblx0XHRcdFwiY29sb3JcIjogJGJvZHktdGV4dC1jb2xvcixcblx0XHRcdFwiZGVjb3JhdGlvbi1jb2xvclwiOiB0cmFuc3BhcmVudCxcblx0XHRcdFwiaG92ZXItZGVjb3JhdGlvbi1jb2xvclwiOiAkYm9keS10ZXh0LWNvbG9yLFxuXHRcdFx0XCJob3Zlci1jb2xvclwiOiBudWxsLFxuXHRcdFx0XCJmb250LXdlaWdodFwiOiBib2xkXG5cdFx0KSxcblx0XHRcImN0YVwiOihcblx0XHRcdFwiY29sb3JcIjogbnVsbCxcblx0XHRcdFwiZGVjb3JhdGlvbi1jb2xvclwiOiB0cmFuc3BhcmVudCxcblx0XHRcdFwiaG92ZXItZGVjb3JhdGlvbi1jb2xvclwiOiAkYm9keS10ZXh0LWNvbG9yLFxuXHRcdFx0XCJob3Zlci1jb2xvclwiOiAkYm9keS10ZXh0LWNvbG9yLFxuXHRcdFx0XCJmb250LXdlaWdodFwiOiBib2xkXG5cdFx0KSxcblx0XHRcImhlYWRlclwiOihcblx0XHRcdFwiY29sb3JcIjogaW5oZXJpdCxcblx0XHRcdFwiZGVjb3JhdGlvbi1jb2xvclwiOiB0cmFuc3BhcmVudCxcblx0XHRcdFwiaG92ZXItZGVjb3JhdGlvbi1jb2xvclwiOiAkYm9keS10ZXh0LWNvbG9yLFxuXHRcdFx0XCJob3Zlci1jb2xvclwiOiBpbmhlcml0LFxuXHRcdFx0XCJmb250LXdlaWdodFwiOiBudWxsXG5cdFx0KSxcblx0XHRcInNpdGUtZm9vdGVyXCI6KFxuXHRcdFx0XCJjb2xvclwiOiAjNDk1MDU3LFxuXHRcdFx0XCJkZWNvcmF0aW9uLWNvbG9yXCI6IHRyYW5zcGFyZW50LFxuXHRcdFx0XCJob3Zlci1kZWNvcmF0aW9uLWNvbG9yXCI6ICM0OTUwNTcsXG5cdFx0XHRcImhvdmVyLWNvbG9yXCI6IG51bGwsXG5cdFx0XHRcImZvbnQtd2VpZ2h0XCI6IG51bGxcblx0XHQpXG5cdClcbik7IiwiLy8vIEdyaWQgc3lzdGVtXG4vL1xuLy8gR2VuZXJhdGUgc2VtYW50aWMgZ3JpZCBjb2x1bW5zIHdpdGggdGhlc2UgbWl4aW5zLlxuXG5AbWl4aW4gbWFrZS1jb250YWluZXIoJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyIC8gMjtcbiAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyIC8gMjtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuXG4vLyBGb3IgZWFjaCBicmVha3BvaW50LCBkZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgdGhlIGNvbnRhaW5lciBpbiBhIG1lZGlhIHF1ZXJ5XG5AbWl4aW4gbWFrZS1jb250YWluZXItbWF4LXdpZHRocygkbWF4LXdpZHRoczogJGNvbnRhaW5lci1tYXgtd2lkdGhzLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkbWF4LXdpZHRocyB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBtYXgtd2lkdGg6ICRjb250YWluZXItbWF4LXdpZHRoO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWFrZS1yb3coJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAtJGd1dHRlciAvIDI7XG4gIG1hcmdpbi1sZWZ0OiAtJGd1dHRlciAvIDI7XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1yZWFkeSgkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBiZWNvbWluZyB0b28gbmFycm93IHdoZW4gYXQgc21hbGxlciBncmlkIHRpZXJzIGJ5XG4gIC8vIGFsd2F5cyBzZXR0aW5nIGB3aWR0aDogMTAwJTtgLiBUaGlzIHdvcmtzIGJlY2F1c2Ugd2UgdXNlIGBmbGV4YCB2YWx1ZXNcbiAgLy8gbGF0ZXIgb24gdG8gb3ZlcnJpZGUgdGhpcyBpbml0aWFsIHdpZHRoLlxuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogJGd1dHRlciAvIDI7XG4gIHBhZGRpbmctbGVmdDogJGd1dHRlciAvIDI7XG59XG5cbkBtaXhpbiBtYWtlLWNvbCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgZmxleDogMCAwIHBlcmNlbnRhZ2UoJHNpemUgLyAkY29sdW1ucyk7XG4gIC8vIEFkZCBhIGBtYXgtd2lkdGhgIHRvIGVuc3VyZSBjb250ZW50IHdpdGhpbiBlYWNoIGNvbHVtbiBkb2VzIG5vdCBibG93IG91dFxuICAvLyB0aGUgd2lkdGggb2YgdGhlIGNvbHVtbi4gQXBwbGllcyB0byBJRTEwKyBhbmQgRmlyZWZveC4gQ2hyb21lIGFuZCBTYWZhcmlcbiAgLy8gZG8gbm90IGFwcGVhciB0byByZXF1aXJlIHRoaXMuXG4gIG1heC13aWR0aDogcGVyY2VudGFnZSgkc2l6ZSAvICRjb2x1bW5zKTtcbn1cblxuQG1peGluIG1ha2UtY29sLWF1dG8oKSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyBSZXNldCBlYXJsaWVyIGdyaWQgdGllcnNcbn1cblxuQG1peGluIG1ha2UtY29sLW9mZnNldCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgJG51bTogJHNpemUgLyAkY29sdW1ucztcbiAgbWFyZ2luLWxlZnQ6IGlmKCRudW0gPT0gMCwgMCwgcGVyY2VudGFnZSgkbnVtKSk7XG59XG5cbi8vIFJvdyBjb2x1bW5zXG4vL1xuLy8gU3BlY2lmeSBvbiBhIHBhcmVudCBlbGVtZW50KGUuZy4sIC5yb3cpIHRvIGZvcmNlIGltbWVkaWF0ZSBjaGlsZHJlbiBpbnRvIE5OXG4vLyBudW1iZXJvZiBjb2x1bW5zLiBTdXBwb3J0cyB3cmFwcGluZyB0byBuZXcgbGluZXMsIGJ1dCBkb2VzIG5vdCBkbyBhIE1hc29ucnlcbi8vIHN0eWxlIGdyaWQuXG5AbWl4aW4gcm93LWNvbHMoJGNvdW50KSB7XG4gICYgPiAqIHtcbiAgICBmbGV4OiAwIDAgMTAwJSAvICRjb3VudDtcbiAgICBtYXgtd2lkdGg6IDEwMCUgLyAkY291bnQ7XG4gIH1cbn1cbiIsIi5ub2RlLTM1NyB7XG5cbiAgLnBhZ2UtaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAgIC5jYXJkLnN0YXRpc3RpYyB7XG4gICAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuanVtYm90cm9uLTU3MDMge1xuICAgICAgICBwYWRkaW5nLXRvcDogOXJlbSAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogOXJlbSAhaW1wb3J0YW50O1xuICAgICAgICAuYmFja2dyb3VuZC1pbWFnZSB7XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5qdW1ib3Ryb24tNTcwNyB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA5cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogOXJlbSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLnZpZXctZGlyZWN0b3J5LWNhcmR7XG4gIC52aWV3cy1leHBvc2VkLWZvcm17XG4gICAgLmZvcm0tLWlubGluZXtcbiAgICAgIEBpbmNsdWRlIG1ha2Utcm93KCk7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICAgICAgLmZvcm0taXRlbXtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEwMXB4KTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgICAgIGxhYmVse1xuICAgICAgICAgIEBpbmNsdWRlIHNyLW9ubHkoKTtcbiAgICAgICAgfVxuICAgICAgICBpbnB1dHtcbiAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmZvcm0tYWN0aW9uc3tcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gT25seSBkaXNwbGF5IGNvbnRlbnQgdG8gc2NyZWVuIHJlYWRlcnNcbi8vXG4vLyBTZWU6IGh0dHBzOi8vYTExeXByb2plY3QuY29tL3Bvc3RzL2hvdy10by1oaWRlLWNvbnRlbnQvXG4vLyBTZWU6IGh0dHBzOi8vaHVnb2dpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuXG5AbWl4aW4gc3Itb25seSgpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMXB4OyAvLyBGaXggZm9yIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjU2ODZcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBVc2UgaW4gY29uanVuY3Rpb24gd2l0aCAuc3Itb25seSB0byBvbmx5IGRpc3BsYXkgY29udGVudCB3aGVuIGl0J3MgZm9jdXNlZC5cbi8vXG4vLyBVc2VmdWwgZm9yIFwiU2tpcCB0byBtYWluIGNvbnRlbnRcIiBsaW5rczsgc2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi8yMDEzL05PVEUtV0NBRzIwLVRFQ0hTLTIwMTMwOTA1L0cxXG4vL1xuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxuXG5AbWl4aW4gc3Itb25seS1mb2N1c2FibGUoKSB7XG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIH1cbn1cbiIsIi8vVGV4dGJvb2sgUmVxdWVzdCBmb3JtXG4ud2ViZm9ybS1zdWJtaXNzaW9uLXRleHRib29rLXJlcXVlc3QtZm9ybXtcbiAgI2FkZC1ib29rLWxpbmsge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIG1hcmdpbi1ib3R0b206IDAuODc1ZW07XG4gIH1cblxuICAucmVtLWJvb2stbGluayB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMS43NWVtO1xuICAgIHJpZ2h0OiAwO1xuICAgIG1hcmdpbi10b3A6IDAuMjE4NzVlbTtcbiAgfVxuXG4gIGZpZWxkc2V0e1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjoxLjVyZW0gMDtcblxuICAgIGxlZ2VuZHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2RkZDtcbiAgICAgIHBhZGRpbmctdG9wOiAxLjc1ZW07XG4gICAgICBtYXJnaW4tdG9wOiAwLjg3NWVtO1xuICAgIH1cblxuICAgIC5mb3JtLWdyb3Vwe1xuICAgICAgbWFyZ2luLXRvcDogMS4yNXJlbSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICY6Zmlyc3Qtb2YtdHlwZXtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbGVnZW5ke1xuICAgICAgICBib3JkZXItdG9wOiAwIG5vbmU7XG4gICAgICAgIHBhZGRpbmctdG9wOiAuNWVtO1xuICAgICAgfVxuICAgICAgLnJlbS1ib29rLWxpbmt7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxubGFiZWw6bm90KC5jdXN0b20tY29udHJvbC1sYWJlbCkge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5cbi5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIGJvcmRlci1jb2xvcjogdGhlbWUtY29sb3IoJ3JpdC1vcmFuZ2UnKTtcbn1cblxuLmN1c3RvbS1jb250cm9sOm5vdCguY3VzdG9tLXJhZGlvKSAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Zm9jdXMgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgYm9yZGVyLWNvbG9yOiBibGFjaztcbn1cblxuXG4uY3VzdG9tLWNvbnRyb2wuY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1sYWJlbHtcbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXJ7XG4gICAgbGVmdDogLTFyZW0gIWltcG9ydGFudDtcbiAgICB3aWR0aDogMXJlbSAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICAgIHRvcDogNTAlICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8gLmZvcm0tY29udHJvbDpmb2N1cyB7XG4vLyAgICAgYm9yZGVyLXdpZHRoOiAycHg7IC8vIFRoaXMgaXMgcGFydCBvZiB0aGUgc3R5bGVndWlkZSBidXQgSSBkb24ndCB0aGluayB0aGUganVtcGluZyB0cmFuc2l0aW9uaW5nIHRvIGFjdGl2ZSBtYWtlcyBzZW5zZVxuLy8gfVxuXG4vLyBDaGVja2JveGVzXG4vLyBMb2NhbGlzaW5nIHRvIGNoZWNrYm94ZXMgdW50aWwgaXQgY2FuIGJlIGRldGVybWluZWQgaWYgYSBnbG9iYWwgY2hhbmdlIGNhbiB3b3JrLlxuLmN1c3RvbS1jb250cm9sIHtcbiAgICAmLmN1c3RvbS1jaGVja2JveCxcbiAgICAmLmN1c3RvbS1yYWRpbyB7XG4gICAgICAgIC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxLjZyZW0gIWltcG9ydGFudDtcblxuXG4gICAgICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0xLjZyZW0gIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZm9ybS1jaGVja2JveCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG5cbiAgICB9XG5cbiAgICAmLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgICBtYXJnaW46IDAgMCAwIC41cmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJi5jdXN0b20tcmFkaW8gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgICAgJjpiZWZvcmUsXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mb3JtLWdyb3VwOm5vdCguY3VzdG9tLXJhZGlvKTpub3QoLmN1c3RvbS1jaGVja2JveCkge1xuICAgIC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jdXN0b20tcmFkaW8uY3VzdG9tLWNvbnRyb2wge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLy8gRHJ1cGFsIFdlYmZvcm1zIGFuZCBvdGhlciBmb3Jtc1xuLmZvcm0tLWJhc2V0aGVtZSxcbi53ZWJmb3JtLXN1Ym1pc3Npb24tZm9ybSB7XG5cdC8vIHN0eWxlcyBmb3Igb25seSBub24tZHJ1cGFsIGZvcm1zIHVzaW5nIHRoaXMgd3JhcHBlciBjbGFzc1xuXHQmLmZvcm0tLWJhc2V0aGVtZSB7XG5cdFx0aW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuXHRcdGlucHV0W3R5cGU9XCJ0ZWxcIl0sXG5cdFx0aW5wdXRbdHlwZT1cInRleHRcIl0ge1xuXHRcdFx0QGV4dGVuZCAuZm9ybS1jb250cm9sO1xuXHRcdFx0QGV4dGVuZCAuZm9ybS10ZXh0ICFvcHRpb25hbDtcblx0XHRcdGhlaWdodDogYXV0bztcblx0XHR9XG5cblx0XHR0ZXh0YXJlYSB7XG5cdFx0XHRAZXh0ZW5kIC5mb3JtLWNvbnRyb2w7XG5cdFx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0fVxuXHR9XG5cblxuXG5cdC8vIHN0eWxlcyBmb3IgbW9zdGx5IGRydXBhbCBmb3Jtc1xuXHRsYWJlbC5mb3JtX2xhYmVsLFxuICAgIGxhYmVsLmN1c3RvbS1jb250cm9sLWxhYmVsOm5vdCgub3B0aW9uKSxcbiAgICBsZWdlbmQge1xuICAgICAgICBmb250LXNpemU6IDEuMjVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNXJlbSAhaW1wb3J0YW50O1xuICAgICAgICBmb250LWZhbWlseTogXCJIZWx2ZXRpY2EgTmV1ZVwiLCBcIkhlbHZldGljYVwiLCBcIlJvYm90b1wiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC41cmVtICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKXtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZm9ybS1ncm91cDpub3QoLmN1c3RvbS1yYWRpbyk6bm90KC5jdXN0b20tY2hlY2tib3gpLFxuICAgIC5yYWRpb3MtLXdyYXBwZXIsXG4gICAgLmNoZWNrYm94ZXMtLXdyYXBwZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIH1cblxuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgLmZvcm0tdHlwZS1kYXRlbGlzdCB7XG4gICAgICAgIC5jb250YWluZXItaW5saW5lIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgICAgIC5mb3JtLXR5cGUtc2VsZWN0IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzMuMzMzMzMzJTtcbiAgICAgICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHB4LXRvLXJlbSg1KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZm9ybS1ncm91cDpub3QoLmN1c3RvbS1yYWRpbyk6bm90KC5jdXN0b20tY2hlY2tib3gpIHtcbiAgICAgICAgLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiBpbml0aWFsO1xuICAgICAgICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICB3aWR0aDogNnB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNnB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5mb3JtLXJlcXVpcmVkIHtcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9jb3JlL21pc2MvaWNvbnMvZWUwMDAwL3JlcXVpcmVkLnN2Zyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmN1c3RvbS1jb250cm9sIHtcbiAgICAgICAgJi5jdXN0b20tY2hlY2tib3gge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAuNXJlbSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5jdXN0b20tcmFkaW8ge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAuNXJlbSAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuY3VzdG9tLWNoZWNrYm94LFxuICAgICAgICAmLmN1c3RvbS1yYWRpbyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgIC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMCAuNXJlbSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IC41cmVtICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogLTFyZW0gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDFyZW0gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogNTAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZvcm0tcmVxdWlyZWQ6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogNnB4IDZweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZm9ybS1jaGVja2JveCB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA0MDBweCkgeyAvLyBVc2luZyB0aGlzIGJyZWFrcG9pbnQgdG8gbWF0Y2ggd2ViZm9ybXMgQ1NTXG4gICAgICAgIC53ZWJmb3JtLW9wdGlvbnMtZGlzcGxheS10d28tY29sdW1ucyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIC8vbGluZSBiZWxvdyBmaXhlcyBidWcgaW4gc2FmYXJpIHRoYXQgY2F1c2VzIHRoZSBncm91cCB0byBoYXZlIHRoZSBzYW1lIGhlaWdodCBhcyBpZiB0aGV5IHdlcmUgaW4gYSBzaW5nbGUgY29sdW1uXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgICAud2ViZm9ybS1vcHRpb25zLWRpc3BsYXktdHdvLWNvbHVtbnMge1xuICAgICAgICAgICAgY29sdW1uLWNvdW50OiAxO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ud2ViZm9ybS1jb25maXJtYXRpb25fX21lc3NhZ2UgLmN1c3RvbS1jb250cm9sLWxhYmVse1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgJjphZnRlcntcbiAgICBjb250ZW50OlwiOiBcIjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICB0b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgICBib3R0b206IGF1dG87XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsInVse1xuICAmLmxpc3QtYXJyb3dzLWJlZm9yZXtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIGxpe1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAuNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnRm9udCBBd2Vzb21lIDUgUHJvJztcbiAgICAgICAgY29udGVudDogJ1xcZjA2MSc7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAycHg7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuYm9yZGVyLXF1b3RlIHtcbiAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgI2Y3NjkwMjtcbiAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuXG4udW5kZXJsaW5lZHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5zbWFsbGVyLXRleHR7XG4gIGZvbnQtc2l6ZTogMXJlbSAhaW1wb3J0YW50O1xufVxuIiwiI2Zvb3Rlci0tc2l0ZS0tYm90dG9tIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKXtcbiAgICAgICAgdWwubmF2LTAge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTFyZW07XG5cbiAgICAgICAgICAgICYgPiBsaSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG5vbC5iaWctbnVtYmVycyB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBjb3VudGVyLXJlc2V0OiBsaTtcbiAgICBtYXJnaW4taW5saW5lLXN0YXJ0IDogM3JlbTtcblxuICAgID4gbGkge1xuICAgICAgICBmb250LXNpemU6IDMuM3JlbTtcbiAgICAgICAgY291bnRlci1pbmNyZW1lbnQ6IGxpO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IGNvdW50ZXIobGkpIFwiLlwiO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0zLjdyZW07XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgfVxuXG4gICAgICAgID4gcCB7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIHA6bm90KC5oNiksXG4gICAgICAgIHVsLFxuICAgICAgICBsaSxcbiAgICAgICAgc3BhbixcbiAgICAgICAgZGl2LFxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIGxpID4gcCB7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi5wZXJzb24tZnVsbCB7XG5cbiAgICBoci5wb3NpdGlvbi1hYnNvbHV0ZSB7XG4gICAgICAgIGJvdHRvbTogLTQ1cHg7XG4gICAgfVxuXG4gICAgLnBlcnNvbi1yaWdodC1jb2x1bW4gaHIucG9zaXRpb24tYWJzb2x1dGUge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMzBweCk7XG4gICAgfVxuXG4gICAgLmRlc2t0b3AtdGl0bGUgKyBoci5wb3NpdGlvbi1hYnNvbHV0ZSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzMHB4KTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gM3JlbSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubGVhZGVyc2hpcC1pbWFnZSB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5qdXN0aWZ5LWNvbnRlbnQtY2VudGVye1xuICAucm93e1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG59XG5cbi50YWJsZS1zY2hlZHVsZXtcbiAgYm9yZGVyLXRvcDpzb2xpZCBibGFjayAycHg7XG4gIGJvcmRlci1ib3R0b206c29saWQgYmxhY2sgMXB4O1xuXG5cbiAgdGh7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOmJsYWNrICFpbXBvcnRhbnQ7XG4gIH1cblxuXG4gIHRye1xuICAgIGJvcmRlci1jb2xvcjogYmxhY2s7XG4gICAgdGR7XG4gICAgICBib3JkZXItY29sb3I6IGJsYWNrO1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZyl7XG4gICAgICAgICY6Zmlyc3Qtb2YtdHlwZXtcbiAgICAgICAgICB3aWR0aDozMyU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4ucGFyYWdyYXBoLS10eXBlLS1lbWJlZC1wZXJzb24tYWNjb3JkaW9uLWl0ZW17XG4gIC5lbWJlZC1wZXJzb246bGFzdC1vZi10eXBlIC5maWVsZC1jb250ZW50e1xuICAgIGJvcmRlci1ib3R0b206IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5lbWJlZC1wZXJzb24tLWV4dHJhLXRleHR7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSl7XG4gICAgICAgQGluY2x1ZGUgbWFrZS1jb2woNCk7XG4gICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICB9XG4gIH1cbn1cblxuLmVtYmVkLXN0dWRlbnR7XG4gIC5lbWJlZC1wZXJzb24tLWV4dHJhLXRleHR7XG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xuICAgIHB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gIH1cbn1cblxuLy8gT3V0bGluZWQgaWNvbiBjYXJkc1xuLmljb24tY2FyZHMtLW91dGxpbmVkIHtcblx0LmNhcmQuaWNvbi1jYXJkIHtcblx0XHRib3JkZXI6IHNvbGlkIDVweCB3aGl0ZTtcblx0XHRwYWRkaW5nOiAwIDFyZW07XG5cdH1cbiAgLmNvbC1pY29uX2NhcmR7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG5cdFx0XHRtYXJnaW46IDFyZW0gMDtcblx0XHR9XG4gIH1cblxuXHQmLndpdGgtY29sb3Ige1xuXHRcdCYud2FybS1jb2xvcnMge1xuXHRcdFx0LmNvbC1pY29uX2NhcmQge1xuXHRcdFx0XHQmOm50aC1vZi10eXBlKDJuKSAuaWNvbi1jYXJkIHtcblx0XHRcdFx0XHRib3JkZXItY29sb3I6IHRoZW1lLWNvbG9yKCdwcmltYXJ5Jyk7XG5cdFx0XHRcdH1cblx0XHRcdFx0JjpudGgtb2YtdHlwZSgybiArIDEpIC5pY29uLWNhcmQge1xuXHRcdFx0XHRcdGJvcmRlci1jb2xvcjogI0Y2QkUwMDtcblx0XHRcdFx0fVxuXHRcdFx0XHQmOm50aC1vZi10eXBlKDNuICsgMSkgLmljb24tY2FyZCB7XG5cdFx0XHRcdFx0Ym9yZGVyLWNvbG9yOiAjREEyOTFDO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmNvbC1pY29uX2NhcmQge1xuXHRcdFx0JjpudGgtb2YtdHlwZSgybikgLmljb24tY2FyZCB7XG5cdFx0XHRcdGJvcmRlci1jb2xvcjogIzAwOUNCRDtcblx0XHRcdH1cblx0XHRcdCY6bnRoLW9mLXR5cGUoMm4gKyAxKSAuaWNvbi1jYXJkIHtcblx0XHRcdFx0Ym9yZGVyLWNvbG9yOiAjRjZCRTAwO1xuXHRcdFx0fVxuXHRcdFx0JjpudGgtb2YtdHlwZSgzbiArIDEpIC5pY29uLWNhcmQge1xuXHRcdFx0XHRib3JkZXItY29sb3I6ICM3RDU1Qzc7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cbiAgJi5vcmFuZ2Utb3V0bGluZXtcbiAgICAuY2FyZC5pY29uLWNhcmR7XG4gICAgICBib3JkZXItY29sb3I6IHRoZW1lLWNvbG9yKCdwcmltYXJ5Jyk7XG4gICAgfVxuICB9XG5cbiAgJi5ibGFjay1vdXRsaW5le1xuICAgIC5jYXJkLmljb24tY2FyZHtcbiAgICAgIGJvcmRlci1jb2xvcjogYmxhY2s7XG4gICAgfVxuICB9XG59XG4iLCIubm9kZS04MzE2NyB7XG4gICAgLmV2ZW4td2lkdGgtY29udGFpbmVyLTU4NTkge1xuICAgICAgICAuaW1hZ2UtY2FyZC0taW1hZ2Uge1xuICAgICAgICAgICAgd2lkdGg6IDc1JSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLmF3YXJkLW5vbWluZWV7XG4gIC5hd2FyZC1kaXZpZGVye1xuICAgIHdpZHRoOiAycmVtO1xuICAgIGJvcmRlci10b3A6IDVweCBzb2xpZCAkcHJpbWFyeTtcbiAgfVxuICAudGVhbS1waG90b3tcbiAgICAuY2FyZC1pbWctdG9we1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCl7XG4gICAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gKDU2LjI1JSAvIDIpKTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtb25seShtZGxnKXtcbiAgICAgICAgbWF4LXdpZHRoOiA5Ni4wMTUlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLnRhYmxlLWNhbGVuZGFye1xuICB0aGVhZHtcbiAgICB0cntcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBibGFjayAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICB0cntcbiAgICB0ZCwgdGh7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgYmxhY2s7XG4gICAgICBwYWRkaW5nOiAxLjI1cmVtIDFyZW0gMS4yNXJlbSAwO1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGJsYWNrO1xuICAgIH1cbiAgICB0aHtcbiAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCBibGFjayAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW0gIWltcG9ydGFudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAuNzVyZW0gMXJlbSAuNzVyZW0gMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAmOmxhc3Qtb2YtdHlwZXtcbiAgICAgIHRke1xuICAgICAgICBib3JkZXItYm90dG9tOiAwIG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi50YWJsZS1tZW51e1xuICBib3JkZXI6IDFweCBzb2xpZCB0aGVtZS1jb2xvcignYmxhY2snKTtcbiAgdHJ7XG4gICAgdGQsdGh7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB0aGVtZS1jb2xvcignYmxhY2snKSAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdGhlbWUtY29sb3IoJ2JsYWNrJyk7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICAgIHRoe1xuICAgICAgY29sb3I6IHRoZW1lLWNvbG9yKCdibGFjaycpO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUVFRUVFO1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpe1xuICAgIC8vIGRpc3BsYXk6IGZsZXg7XG4gICAgLy8gdGhlYWR7XG4gICAgLy8gICBkaXNwbGF5OiBmbGV4O1xuICAgIC8vICAgdHJ7XG4gICAgLy8gICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgLy8gICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgLy8gICB9XG4gICAgLy8gfVxuICAgIC8vIHRib2R5e1xuICAgIC8vICAgZGlzcGxheTogZmxleDtcbiAgICAvLyAgIHRye1xuICAgIC8vICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIC8vICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIC8vICAgfVxuICAgIC8vIH1cbiAgICAvLyB0aCwgdGR7XG4gICAgLy8gICBtaW4taGVpZ2h0OiBjYWxjKDEwMCUgKiAxLzYpO1xuICAgIC8vIH1cbiAgfVxufVxuIiwiLmNhcmQuaWNvbi1jYXJke1xuICAuY2FyZC1ib2R5e1xuICAgIC5jYXJkLXRleHQgcHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIiNmb290ZXItLXNpdGUtLXRvcCAjZm9vdGVyLS1zaXRlLS10b3AtbGVmdC0tc2l0ZS1sb2dvIGEgaW1nIHtcbiAgICBoZWlnaHQ6IDcwcHg7XG4gICAgbWF4LWhlaWdodDogNzBweDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbmJvZHkucHJvZ3Jlc3MtbmF2LS1ub25lIC5zaW5nbGUtY29sdW1uLWNvbnRhaW5lciAuZmllbGQtLW5hbWUtZmllbGQtY29udGVudC5maWVsZC0tdHlwZS10ZXh0LWxvbmcsXG5ib2R5LnByb2dyZXNzLW5hdi0tdG9wIC5zaW5nbGUtY29sdW1uLWNvbnRhaW5lciAuZmllbGQtLW5hbWUtZmllbGQtY29udGVudC5maWVsZC0tdHlwZS10ZXh0LWxvbmcge1xuICBwLHVsOm5vdCguY29sdW1ucy0zKTpub3QoLmNvbHVtbnMtNCksb2x7XG4gICAgbWF4LXdpZHRoOiA4MDBweDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cbn1cblxuLnRpdGxlLS1sZWZ0LWFsaWdue1xuICAucm93LS10aXRsZXtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKXtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuLmV2ZW4td2lkdGgtY29udGFpbmVyIC5wYXJhZ3JhcGgtLXR5cGUtLXRleHQtY29udGVudCA+IGRpdiBwOmxhc3QtY2hpbGR7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSl7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgfVxufVxuXG4uZm9udC1iYXNle1xuICBmb250OiA0MDAgMXJlbS8xLjUgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBcIkhlbHZldGljYVwiLCBcIlJvYm90b1wiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWYgIWltcG9ydGFudDtcbn1cblxuLmp1bWJvdHJvbi1oZWFkZXIgaDIucm93LS10aXRsZXtcbiAgZm9udC1zaXplOiAzcmVtO1xuICBsaW5lLWhlaWdodDogMy4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjJweDtcbn1cblxuLmJvcmRlci01e1xuICBib3JkZXItd2lkdGg6IDVweCAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLTJ7XG4gIGJvcmRlci13aWR0aDogMnB4ICFpbXBvcnRhbnQ7XG59XG5cbi5yZWR1Y2VkLXRpdGxlLXRleHR7XG5cdC5oZXJvLWNvbnRlbnR7XG5cdFx0LmlubmVyLWNvbnRlbnR7XG5cdFx0XHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKXtcblx0XHRcdFx0d2lkdGg6IDczNXB4ICFpbXBvcnRhbnQ7XG5cdFx0XHR9XG5cblx0XHRcdC5oMXtcblx0XHRcdFx0Zm9udC1zaXplOiAzcmVtO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG5cbi5iZy1ibGFjazpub3QoLmljb24tY2FyZC0td2hpdGUtb24tYmxhY2spIC5pY29uLW9yYW5nZS1kaXZpZGVyIC5jYXJkLmljb24tY2FyZCAuY2FyZC1ib2R5IC5jYXJkLXRleHQgaHIuZGl2aWRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJHByaW1hcnkgIWltcG9ydGFudDtcbn1cblxuI2Zvb3Rlci0tZ2xvYmFsLmJnLWJsYWNrIC50ZXh0LXdoaXRlIHAgYTpub3QoLmJ0bil7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lICFpbXBvcnRhbnQ7XG59XG5cblxuLnJldmVyc2UtMmNvbC1vcmRlci1tb2JpbGUge1xuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oc20pe1xuICAgIC5wYWdlLWNvbHVtbi1sZWZ0IHtcbiAgICAgIG9yZGVyOiAxO1xuICAgIH1cbiAgICAucGFnZS1jb2x1bW4tcmlnaHQge1xuICAgICAgb3JkZXI6IDA7XG4gICAgfVxuICB9XG59XG4iXX0= */
