::-webkit-scrollbar {
    width: 8px;
    height: 8px;
    background-color: #fafafa;
}

::-webkit-scrollbar, ::-webkit-scrollbar-thumb {
    -webkit-border-radius: 100px;
    border-radius: 100px;
}

::-webkit-scrollbar-thumb {
    background: rgba(0,0,0,.2);
    min-height: 30px;
}

b,
strong {
  font-weight: 700; }

.opacity-25 {
  opacity: .25 !important; }

.opacity-50 {
  opacity: .5 !important; }

.opacity-75 {
  opacity: .75 !important; }

.opacity-100 {
  opacity: 1 !important; }

.text-tiny {
  font-size: 70% !important; }

.text-big {
  font-size: 112% !important; }

.text-large {
  font-size: 150% !important; }

.text-xlarge {
  font-size: 170% !important; }

.line-height-1 {
  line-height: 1 !important; }

.line-height-condenced {
  line-height: 1.3 !important; }

.line-height-inherit {
  line-height: inherit !important; }

.text-expanded {
  letter-spacing: 0.06991em !important; }

.font-weight-semibold {
  font-weight: 500 !important; }

.text-transform-none {
  text-transform: none !important; }

.text-sans-serif {
  font-family: "Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif !important; }

.text-serif {
  font-family: Georgia, "Times New Roman", serif !important; }

.cursor-pointer {
  cursor: pointer !important; }

.cursor-move {
  cursor: move !important;
  cursor: -webkit-grab !important;
  cursor: grab !important; }

.container-p-x {
  padding-right: 1rem !important;
  padding-left: 1rem !important; }
  @media (min-width: 992px) {
    .container-p-x {
      padding-right: 2rem !important;
      padding-left: 2rem !important; } }

.container-m-nx {
  margin-right: -1rem !important;
  margin-left: -1rem !important; }
  @media (min-width: 992px) {
    .container-m-nx {
      margin-right: -2rem !important;
      margin-left: -2rem !important; } }

.container-p-y:not([class^="pt-"]):not([class*=" pt-"]) {
  padding-top: 1.5rem !important; }

.container-p-y:not([class^="pb-"]):not([class*=" pb-"]) {
  padding-bottom: 1.5rem !important; }

.container-m-ny:not([class^="mt-"]):not([class*=" mt-"]) {
  margin-top: -1.5rem !important; }

.container-m-ny:not([class^="mb-"]):not([class*=" mb-"]) {
  margin-bottom: -1.5rem !important; }

.rotate-90 {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg); }

.rotate-180 {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg); }

.rotate-270 {
  -webkit-transform: rotate(270deg);
          transform: rotate(270deg); }

.rotate--90 {
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg); }

.rotate--180 {
  -webkit-transform: rotate(-180deg);
          transform: rotate(-180deg); }

.rotate--270 {
  -webkit-transform: rotate(-270deg);
          transform: rotate(-270deg); }

.rotate-0 {
  -webkit-transform: rotate(0deg) !important;
          transform: rotate(0deg) !important; }

.scaleX--1 {
  -webkit-transform: scaleX(-1);
          transform: scaleX(-1); }

.scaleY--1 {
  -webkit-transform: scaleY(-1);
          transform: scaleY(-1); }

.row-bordered {
  overflow: hidden; }
  .row-bordered > .col,
  .row-bordered > [class^="col-"],
  .row-bordered > [class*=" col-"],
  .row-bordered > [class^="col "],
  .row-bordered > [class*=" col "],
  .row-bordered > [class$=" col"],
  .row-bordered > [class="col"] {
    position: relative;
    padding-top: 1px; }
    .row-bordered > .col::before,
    .row-bordered > [class^="col-"]::before,
    .row-bordered > [class*=" col-"]::before,
    .row-bordered > [class^="col "]::before,
    .row-bordered > [class*=" col "]::before,
    .row-bordered > [class$=" col"]::before,
    .row-bordered > [class="col"]::before {
      content: "";
      position: absolute;
      right: 0;
      bottom: -1px;
      left: 0;
      display: block;
      height: 0;
      border-top: 1px solid rgba(24, 28, 33, 0.06); }
    .row-bordered > .col::after,
    .row-bordered > [class^="col-"]::after,
    .row-bordered > [class*=" col-"]::after,
    .row-bordered > [class^="col "]::after,
    .row-bordered > [class*=" col "]::after,
    .row-bordered > [class$=" col"]::after,
    .row-bordered > [class="col"]::after {
      content: "";
      position: absolute;
      top: 0;
      bottom: 0;
      left: -1px;
      display: block;
      width: 0;
      border-left: 1px solid rgba(24, 28, 33, 0.06); }
  .row-bordered.row-border-light > .col::before, .row-bordered.row-border-light > .col::after,
  .row-bordered.row-border-light > [class^="col-"]::before,
  .row-bordered.row-border-light > [class^="col-"]::after,
  .row-bordered.row-border-light > [class*=" col-"]::before,
  .row-bordered.row-border-light > [class*=" col-"]::after,
  .row-bordered.row-border-light > [class^="col "]::before,
  .row-bordered.row-border-light > [class^="col "]::after,
  .row-bordered.row-border-light > [class*=" col "]::before,
  .row-bordered.row-border-light > [class*=" col "]::after,
  .row-bordered.row-border-light > [class$=" col"]::before,
  .row-bordered.row-border-light > [class$=" col"]::after,
  .row-bordered.row-border-light > [class="col"]::before,
  .row-bordered.row-border-light > [class="col"]::after {
    border-color: rgba(24, 28, 33, 0.06); }

@media (min-width: 576px) {
  .w-sm-100 {
    width: 100% !important; }
  .w-sm-auto {
    width: auto !important; } }

@media (min-width: 768px) {
  .w-md-100 {
    width: 100% !important; }
  .w-md-auto {
    width: auto !important; } }

@media (min-width: 992px) {
  .w-lg-100 {
    width: 100% !important; }
  .w-lg-auto {
    width: auto !important; } }

@media (min-width: 1200px) {
  .w-xl-100 {
    width: 100% !important; }
  .w-xl-auto {
    width: auto !important; } }

.cell-fit {
  width: .1%;
  white-space: nowrap; }

.flex-truncate {
  min-width: 0 !important; }

.flex-basis-100 {
  -ms-flex-preferred-size: 100% !important;
      flex-basis: 100% !important; }

.flex-basis-auto {
  -ms-flex-preferred-size: auto !important;
      flex-basis: auto !important; }

@media (min-width: 576px) {
  .flex-basis-sm-100 {
    -ms-flex-preferred-size: 100% !important;
        flex-basis: 100% !important; }
  .flex-basis-sm-auto {
    -ms-flex-preferred-size: auto !important;
        flex-basis: auto !important; } }

@media (min-width: 768px) {
  .flex-basis-md-100 {
    -ms-flex-preferred-size: 100% !important;
        flex-basis: 100% !important; }
  .flex-basis-md-auto {
    -ms-flex-preferred-size: auto !important;
        flex-basis: auto !important; } }

@media (min-width: 992px) {
  .flex-basis-lg-100 {
    -ms-flex-preferred-size: 100% !important;
        flex-basis: 100% !important; }
  .flex-basis-lg-auto {
    -ms-flex-preferred-size: auto !important;
        flex-basis: auto !important; } }

@media (min-width: 1200px) {
  .flex-basis-xl-100 {
    -ms-flex-preferred-size: 100% !important;
        flex-basis: 100% !important; }
  .flex-basis-xl-auto {
    -ms-flex-preferred-size: auto !important;
        flex-basis: auto !important; } }

.d-flex,
.d-inline-flex,
.media,
.media > :not(.media-body),
.jumbotron,
.card {
  -ms-flex-negative: 1;
      flex-shrink: 1; }

.ie-mh-1 {
  min-height: 1px; }

.text-body[href]:hover {
  color: #3c8ae2 !important; }

.text-muted[href]:hover, .text-muted[href]:focus {
  color: #8c8e90 !important; }

.text-light {
  color: #babbbc !important; }
  .text-light[href]:hover, .text-light[href]:focus {
    color: #8c8e90 !important; }

.text-lighter {
  color: #d1d2d3 !important; }
  .text-lighter[href]:hover, .text-lighter[href]:focus {
    color: #8c8e90 !important; }

.text-lightest {
  color: #e8e8e9 !important; }
  .text-lightest[href]:hover, .text-lightest[href]:focus {
    color: #8c8e90 !important; }

.bg-dark {
  background-color: rgba(24, 28, 33, 0.9) !important; }

a.bg-dark:hover, a.bg-dark:focus {
  background-color: rgba(24, 28, 33, 0.9) !important; }

.bg-light {
  background-color: rgba(24, 28, 33, 0.06) !important; }

a.bg-light:hover, a.bg-light:focus {
  background-color: rgba(24, 28, 33, 0.1) !important; }

.bg-lighter {
  background-color: rgba(24, 28, 33, 0.03) !important; }

a.bg-lighter:hover, a.bg-lighter:focus {
  background-color: rgba(24, 28, 33, 0.06) !important; }

.bg-lightest {
  background-color: rgba(24, 28, 33, 0.015) !important; }

a.bg-lightest:hover, a.bg-lightest:focus {
  background-color: rgba(24, 28, 33, 0.03) !important; }

.bg-transparent {
  background-image: none !important; }

.border-light {
  border-color: rgba(24, 28, 33, 0.06) !important; }

.border-transparent {
  border-color: transparent !important; }

body {
  -moz-font-feature-settings: "liga" on;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility; }

@media (min-width: 768px) {
  button.list-group-item {
    outline: none; } }

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .card,
  .card-body,
  .media,
  .flex-column,
  .tab-content {
    min-height: 1px; }
  img {
    min-height: 1px;
    height: auto; } }

.container,
.container-fluid {
  padding-right: 1rem;
  padding-left: 1rem; }
  @media (min-width: 992px) {
    .container,
    .container-fluid {
      padding-right: 2rem;
      padding-left: 2rem; } }

.img-thumbnail {
  position: relative;
  display: block; }

.img-thumbnail img {
  z-index: 1; }

.img-thumbnail-content {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 3;
  display: block;
  opacity: 0;
  transition: all .2s ease-in-out;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); }
  .img-thumbnail:hover .img-thumbnail-content,
  .img-thumbnail:focus .img-thumbnail-content {
    opacity: 1; }

.img-thumbnail-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2;
  display: block;
  transition: all .2s ease-in-out; }
  .img-thumbnail:not(:hover):not(:focus) .img-thumbnail-overlay {
    opacity: 0 !important; }

.img-thumbnail-shadow {
  transition: box-shadow .2s; }
  .img-thumbnail-shadow:hover, .img-thumbnail-shadow:focus {
    box-shadow: 0 5px 20px rgba(24, 28, 33, 0.4); }

.img-thumbnail-zoom-in {
  overflow: hidden; }
  .img-thumbnail-zoom-in img {
    transition: all .3s ease-in-out;
    -webkit-transform: translate3d(0);
            transform: translate3d(0); }
  .img-thumbnail-zoom-in .img-thumbnail-content {
    -webkit-transform: translate(-50%, -50%) scale(0.6);
            transform: translate(-50%, -50%) scale(0.6); }
  .img-thumbnail-zoom-in:hover img, .img-thumbnail-zoom-in:focus img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1); }
  .img-thumbnail-zoom-in:hover .img-thumbnail-content, .img-thumbnail-zoom-in:focus .img-thumbnail-content {
    -webkit-transform: translate(-50%, -50%) scale(1);
            transform: translate(-50%, -50%) scale(1); }

@-webkit-keyframes dropdownAnimation {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes dropdownAnimation {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

.table .table-secondary,
.table .table-secondary > th,
.table .table-secondary > td {
  border-color: rgba(0, 0, 0, 0.035) !important;
  background-color: #f3f5f7;
  color: #616263; }

.table-hover .table-secondary:hover,
.table-hover .table-secondary:hover > td,
.table-hover .table-secondary:hover > th {
  background-color: #f1f3f5; }

.table .table-success,
.table .table-success > th,
.table .table-success > td {
  border-color: rgba(0, 0, 0, 0.035) !important;
  background-color: #e6f8f1;
  color: #5c6360; }

.table-hover .table-success:hover,
.table-hover .table-success:hover > td,
.table-hover .table-success:hover > th {
  background-color: #e4f6ef; }

.table .table-info,
.table .table-info > th,
.table .table-info > td {
  border-color: rgba(0, 0, 0, 0.035) !important;
  background-color: #eaf9fb;
  color: #5e6464; }

.table-hover .table-info:hover,
.table-hover .table-info:hover > td,
.table-hover .table-info:hover > th {
  background-color: #e8f7f8; }

.table .table-warning,
.table .table-warning > th,
.table .table-warning > td {
  border-color: rgba(0, 0, 0, 0.035) !important;
  background-color: #fffbee;
  color: #66645f; }

.table-hover .table-warning:hover,
.table-hover .table-warning:hover > td,
.table-hover .table-warning:hover > th {
  background-color: #fcf8ec; }

.table .table-danger,
.table .table-danger > th,
.table .table-danger > td {
  border-color: rgba(0, 0, 0, 0.035) !important;
  background-color: #fbeeed;
  color: #645f5f; }

.table-hover .table-danger:hover,
.table-hover .table-danger:hover > td,
.table-hover .table-danger:hover > th {
  background-color: #f8eceb; }

.table .table-dark,
.table .table-dark > th,
.table .table-dark > td {
  border-color: rgba(0, 0, 0, 0.035) !important;
  background-color: #e8e8e9;
  color: #5d5d5d; }

.table-hover .table-dark:hover,
.table-hover .table-dark:hover > td,
.table-hover .table-dark:hover > th {
  background-color: #e6e6e7; }

.table.table-fixed {
  table-layout: fixed; }

.table th {
  font-weight: 500; }

.table > tr,
#bootstrap-table-mytasks > tbody > tr {
  cursor: pointer !important; }

.table-active,
.table-active > th,
.table-active > td {
  border-color: rgba(24, 28, 33, 0.035);
  background-color: #f7f7f7; }

.table-hover .table-active:hover,
.table-hover .table-active:hover > td,
.table-hover .table-active:hover > th {
  background-color: whitesmoke; }

.card-table {
  margin-bottom: 0; }

.card .table:not(.table-dark),
.card .table:not(.table-dark) thead:not(.thead-dark) th,
.card .table:not(.table-dark) td,
.nav-tabs-top .table:not(.table-dark),
.nav-tabs-top .table:not(.table-dark) thead:not(.thead-dark) th,
.nav-tabs-top .table:not(.table-dark) td,
.nav-tabs-right .table:not(.table-dark),
.nav-tabs-right .table:not(.table-dark) thead:not(.thead-dark) th,
.nav-tabs-right .table:not(.table-dark) td,
.nav-tabs-bottom .table:not(.table-dark),
.nav-tabs-bottom .table:not(.table-dark) thead:not(.thead-dark) th,
.nav-tabs-bottom .table:not(.table-dark) td,
.nav-tabs-left .table:not(.table-dark),
.nav-tabs-left .table:not(.table-dark) thead:not(.thead-dark) th,
.nav-tabs-left .table:not(.table-dark) td {
  border-color: #eeeeee; }

.card-table > thead:first-child > tr:first-child > td,
.card-table > thead:first-child > tr:first-child > th,
.card-table > tbody:first-child > tr:first-child > td,
.card-table > tbody:first-child > tr:first-child > th,
.card-table > tfoot:first-child > tr:first-child > td,
.card-table > tfoot:first-child > tr:first-child > th {
  border-top: 0; }

.card-table > thead > tr > td:first-child,
.card-table > thead > tr > th:first-child,
.card-table > tbody > tr > td:first-child,
.card-table > tbody > tr > th:first-child,
.card-table > tfoot > tr > td:first-child,
.card-table > tfoot > tr > th:first-child {
  padding-left: 1.5rem;
  border-left: 0; }

.card-table > thead > tr > td:last-child,
.card-table > thead > tr > th:last-child,
.card-table > tbody > tr > td:last-child,
.card-table > tbody > tr > th:last-child,
.card-table > tfoot > tr > td:last-child,
.card-table > tfoot > tr > th:last-child {
  padding-right: 1.5rem;
  border-right: 0; }

.card-condenced .card-table > thead > tr > td:first-child,
.card-condenced .card-table > thead > tr > th:first-child,
.card-condenced .card-table > tbody > tr > td:first-child,
.card-condenced .card-table > tbody > tr > th:first-child,
.card-condenced .card-table > tfoot > tr > td:first-child,
.card-condenced .card-table > tfoot > tr > th:first-child {
  padding-left: 1rem;
  border-left: 0; }

.card-condenced .card-table > thead > tr > td:last-child,
.card-condenced .card-table > thead > tr > th:last-child,
.card-condenced .card-table > tbody > tr > td:last-child,
.card-condenced .card-table > tbody > tr > th:last-child,
.card-condenced .card-table > tfoot > tr > td:last-child,
.card-condenced .card-table > tfoot > tr > th:last-child {
  padding-right: 1rem;
  border-right: 0; }

.btn {
  cursor: pointer; }
  .btn.disabled, .btn:disabled {
    cursor: default; }

.btn .badge {
  transition: all 0.2s ease-in-out; }
  @media (prefers-reduced-motion: reduce) {
    .btn .badge {
      transition: none; } }

label.btn {
  margin-bottom: 0; }

.btn-secondary {
  border-color: transparent;
  background: #8897AA;
  color: #fff; }
  .btn-secondary:hover {
    border-color: transparent;
    background: #818fa2;
    color: #fff; }
  .btn-secondary:focus, .btn-secondary.focus {
    box-shadow: 0 0 0 2px rgba(136, 151, 170, 0.4); }
  .btn-secondary.disabled, .btn-secondary:disabled {
    border-color: transparent !important;
    background: #8897AA !important;
    box-shadow: none !important;
    color: #fff !important; }

.btn-secondary .badge {
  background: #fff;
  color: #8897AA; }

.btn-secondary:active,
.btn-secondary.active,
.show > .btn-secondary.dropdown-toggle {
  border-color: transparent;
  background: #768394;
  box-shadow: none; }

.btn-group .btn-secondary,
.input-group-prepend .btn-secondary,
.input-group-append .btn-secondary {
  border-right: 1px solid #768394;
  border-left: 1px solid #768394; }

.btn-outline-secondary {
  border-color: #8897AA;
  background: transparent;
  color: #8897AA; }
  .btn-outline-secondary:hover {
    border-color: transparent;
    background: #8897AA;
    color: #fff; }
  .btn-outline-secondary:focus, .btn-outline-secondary.focus {
    box-shadow: 0 0 0 2px rgba(136, 151, 170, 0.4); }
  .btn-outline-secondary.disabled, .btn-outline-secondary:disabled {
    border-color: #8897AA !important;
    background: transparent !important;
    color: #8897AA !important; }

.btn-outline-secondary:active,
.btn-outline-secondary.active,
.show > .btn-outline-secondary.dropdown-toggle {
  border-color: transparent;
  background: #818fa2;
  color: #fff;
  box-shadow: none; }

.btn-outline-secondary .badge {
  background: #8897AA;
  border-color: #8897AA;
  color: #fff; }

.btn-outline-secondary:hover .badge,
.btn-outline-secondary:focus .badge,
.btn-outline-secondary:active .badge,
.btn-outline-secondary.active .badge,
.show > .btn-outline-secondary.dropdown-toggle .badge {
  background: #fff;
  border-color: #fff;
  color: #8897AA; }

.btn-success {
  border-color: transparent;
  background: #02BC77;
  color: #fff; }
  .btn-success:hover {
    border-color: transparent;
    background: #02b371;
    color: #fff; }
  .btn-success:focus, .btn-success.focus {
    box-shadow: 0 0 0 2px rgba(2, 188, 119, 0.4); }
  .btn-success.disabled, .btn-success:disabled {
    border-color: transparent !important;
    background: #02BC77 !important;
    box-shadow: none !important;
    color: #fff !important; }

.btn-success .badge {
  background: #fff;
  color: #02BC77; }

.btn-success:active,
.btn-success.active,
.show > .btn-success.dropdown-toggle {
  border-color: transparent;
  background: #02a468;
  box-shadow: none; }

.btn-group .btn-success,
.input-group-prepend .btn-success,
.input-group-append .btn-success {
  border-right: 1px solid #02a468;
  border-left: 1px solid #02a468; }

.btn-outline-success {
  border-color: #02BC77;
  background: transparent;
  color: #02BC77; }
  .btn-outline-success:hover {
    border-color: transparent;
    background: #02BC77;
    color: #fff; }
  .btn-outline-success:focus, .btn-outline-success.focus {
    box-shadow: 0 0 0 2px rgba(2, 188, 119, 0.4); }
  .btn-outline-success.disabled, .btn-outline-success:disabled {
    border-color: #02BC77 !important;
    background: transparent !important;
    color: #02BC77 !important; }

.btn-outline-success:active,
.btn-outline-success.active,
.show > .btn-outline-success.dropdown-toggle {
  border-color: transparent;
  background: #02b371;
  color: #fff;
  box-shadow: none; }

.btn-outline-success .badge {
  background: #02BC77;
  border-color: #02BC77;
  color: #fff; }

.btn-outline-success:hover .badge,
.btn-outline-success:focus .badge,
.btn-outline-success:active .badge,
.btn-outline-success.active .badge,
.show > .btn-outline-success.dropdown-toggle .badge {
  background: #fff;
  border-color: #fff;
  color: #02BC77; }

.btn-info {
  border-color: transparent;
  background: #28c3d7;
  color: #fff; }
  .btn-info:hover {
    border-color: transparent;
    background: #26b9cc;
    color: #fff; }
  .btn-info:focus, .btn-info.focus {
    box-shadow: 0 0 0 2px rgba(40, 195, 215, 0.4); }
  .btn-info.disabled, .btn-info:disabled {
    border-color: transparent !important;
    background: #28c3d7 !important;
    box-shadow: none !important;
    color: #fff !important; }

.btn-info .badge {
  background: #fff;
  color: #28c3d7; }

.btn-info:active,
.btn-info.active,
.show > .btn-info.dropdown-toggle {
  border-color: transparent;
  background: #23aabb;
  box-shadow: none; }

.btn-group .btn-info,
.input-group-prepend .btn-info,
.input-group-append .btn-info {
  border-right: 1px solid #23aabb;
  border-left: 1px solid #23aabb; }

.btn-outline-info {
  border-color: #28c3d7;
  background: transparent;
  color: #28c3d7; }
  .btn-outline-info:hover {
    border-color: transparent;
    background: #28c3d7;
    color: #fff; }
  .btn-outline-info:focus, .btn-outline-info.focus {
    box-shadow: 0 0 0 2px rgba(40, 195, 215, 0.4); }
  .btn-outline-info.disabled, .btn-outline-info:disabled {
    border-color: #28c3d7 !important;
    background: transparent !important;
    color: #28c3d7 !important; }

.btn-outline-info:active,
.btn-outline-info.active,
.show > .btn-outline-info.dropdown-toggle {
  border-color: transparent;
  background: #26b9cc;
  color: #fff;
  box-shadow: none; }

.btn-outline-info .badge {
  background: #28c3d7;
  border-color: #28c3d7;
  color: #fff; }

.btn-outline-info:hover .badge,
.btn-outline-info:focus .badge,
.btn-outline-info:active .badge,
.btn-outline-info.active .badge,
.show > .btn-outline-info.dropdown-toggle .badge {
  background: #fff;
  border-color: #fff;
  color: #28c3d7; }

.btn-warning {
  border-color: transparent;
  background: #FFD950;
  color: #665720; }
  .btn-warning:hover {
    border-color: transparent;
    background: #f2ce4c;
    color: #665720; }
  .btn-warning:focus, .btn-warning.focus {
    box-shadow: 0 0 0 2px rgba(255, 217, 80, 0.4); }
  .btn-warning.disabled, .btn-warning:disabled {
    border-color: transparent !important;
    background: #FFD950 !important;
    box-shadow: none !important;
    color: #665720 !important; }

.btn-warning .badge {
  background: #665720;
  color: #FFD950; }

.btn-warning:active,
.btn-warning.active,
.show > .btn-warning.dropdown-toggle {
  border-color: transparent;
  background: #debd46;
  box-shadow: none; }

.btn-group .btn-warning,
.input-group-prepend .btn-warning,
.input-group-append .btn-warning {
  border-right: 1px solid #debd46;
  border-left: 1px solid #debd46; }

.btn-outline-warning {
  border-color: #FFD950;
  background: transparent;
  color: #FFD950; }
  .btn-outline-warning:hover {
    border-color: transparent;
    background: #FFD950;
    color: #665720; }
  .btn-outline-warning:focus, .btn-outline-warning.focus {
    box-shadow: 0 0 0 2px rgba(255, 217, 80, 0.4); }
  .btn-outline-warning.disabled, .btn-outline-warning:disabled {
    border-color: #FFD950 !important;
    background: transparent !important;
    color: #FFD950 !important; }

.btn-outline-warning:active,
.btn-outline-warning.active,
.show > .btn-outline-warning.dropdown-toggle {
  border-color: transparent;
  background: #f2ce4c;
  color: #665720;
  box-shadow: none; }

.btn-outline-warning .badge {
  background: #FFD950;
  border-color: #FFD950;
  color: #fff; }

.btn-outline-warning:hover .badge,
.btn-outline-warning:focus .badge,
.btn-outline-warning:active .badge,
.btn-outline-warning.active .badge,
.show > .btn-outline-warning.dropdown-toggle .badge {
  background: #665720;
  border-color: #665720;
  color: #FFD950; }

.btn-danger {
  border-color: transparent;
  background: #d9534f;
  color: #fff; }
  .btn-danger:hover {
    border-color: transparent;
    background: #ce4f4b;
    color: #fff; }
  .btn-danger:focus, .btn-danger.focus {
    box-shadow: 0 0 0 2px rgba(217, 83, 79, 0.4); }
  .btn-danger.disabled, .btn-danger:disabled {
    border-color: transparent !important;
    background: #d9534f !important;
    box-shadow: none !important;
    color: #fff !important; }

.btn-danger .badge {
  background: #fff;
  color: #d9534f; }

.btn-danger:active,
.btn-danger.active,
.show > .btn-danger.dropdown-toggle {
  border-color: transparent;
  background: #bd4845;
  box-shadow: none; }

.btn-group .btn-danger,
.input-group-prepend .btn-danger,
.input-group-append .btn-danger {
  border-right: 1px solid #bd4845;
  border-left: 1px solid #bd4845; }

.btn-outline-danger {
  border-color: #d9534f;
  background: transparent;
  color: #d9534f; }
  .btn-outline-danger:hover {
    border-color: transparent;
    background: #d9534f;
    color: #fff; }
  .btn-outline-danger:focus, .btn-outline-danger.focus {
    box-shadow: 0 0 0 2px rgba(217, 83, 79, 0.4); }
  .btn-outline-danger.disabled, .btn-outline-danger:disabled {
    border-color: #d9534f !important;
    background: transparent !important;
    color: #d9534f !important; }

.btn-outline-danger:active,
.btn-outline-danger.active,
.show > .btn-outline-danger.dropdown-toggle {
  border-color: transparent;
  background: #ce4f4b;
  color: #fff;
  box-shadow: none; }

.btn-outline-danger .badge {
  background: #d9534f;
  border-color: #d9534f;
  color: #fff; }

.btn-outline-danger:hover .badge,
.btn-outline-danger:focus .badge,
.btn-outline-danger:active .badge,
.btn-outline-danger.active .badge,
.show > .btn-outline-danger.dropdown-toggle .badge {
  background: #fff;
  border-color: #fff;
  color: #d9534f; }

.btn-light {
  border-color: transparent;
  background: rgba(24, 28, 33, 0.06);
  color: #0a0b0d; }
  .btn-light:hover {
    border-color: transparent;
    background: rgba(24, 28, 33, 0.11);
    color: #0a0b0d; }
  .btn-light:focus, .btn-light.focus {
    box-shadow: 0 0 0 2px rgba(24, 28, 33, 0.027); }
  .btn-light.disabled, .btn-light:disabled {
    border-color: transparent !important;
    background: rgba(24, 28, 33, 0.06) !important;
    box-shadow: none !important;
    color: #0a0b0d !important; }

.btn-light .badge {
  background: #0a0b0d;
  color: #f1f1f2; }

.btn-light:active,
.btn-light.active,
.show > .btn-light.dropdown-toggle {
  border-color: transparent;
  background: rgba(24, 28, 33, 0.19);
  box-shadow: none; }

.btn-group .btn-light,
.input-group-prepend .btn-light,
.input-group-append .btn-light {
  border-right: 1px solid rgba(24, 28, 33, 0.19);
  border-left: 1px solid rgba(24, 28, 33, 0.19); }

.btn-outline-light {
  border-color: rgba(24, 28, 33, 0.06);
  background: transparent;
  color: rgba(24, 28, 33, 0.06); }
  .btn-outline-light:hover {
    border-color: transparent;
    background: rgba(24, 28, 33, 0.06);
    color: #0a0b0d; }
  .btn-outline-light:focus, .btn-outline-light.focus {
    box-shadow: 0 0 0 2px rgba(24, 28, 33, 0.027); }
  .btn-outline-light.disabled, .btn-outline-light:disabled {
    border-color: rgba(24, 28, 33, 0.06) !important;
    background: transparent !important;
    color: rgba(24, 28, 33, 0.06) !important; }

.btn-outline-light:active,
.btn-outline-light.active,
.show > .btn-outline-light.dropdown-toggle {
  border-color: transparent;
  background: rgba(24, 28, 33, 0.11);
  color: #0a0b0d;
  box-shadow: none; }

.btn-outline-light .badge {
  background: rgba(24, 28, 33, 0.06);
  border-color: rgba(24, 28, 33, 0.06);
  color: #fff; }

.btn-outline-light:hover .badge,
.btn-outline-light:focus .badge,
.btn-outline-light:active .badge,
.btn-outline-light.active .badge,
.show > .btn-outline-light.dropdown-toggle .badge {
  background: #0a0b0d;
  border-color: #0a0b0d;
  color: #fff; }

.btn-dark {
  border-color: transparent;
  background: rgba(24, 28, 33, 0.9);
  color: #fff; }
  .btn-dark:hover {
    border-color: transparent;
    background: rgba(24, 28, 33, 0.95);
    color: #fff; }
  .btn-dark:focus, .btn-dark.focus {
    box-shadow: 0 0 0 2px rgba(24, 28, 33, 0.405); }
  .btn-dark.disabled, .btn-dark:disabled {
    border-color: transparent !important;
    background: rgba(24, 28, 33, 0.9) !important;
    box-shadow: none !important;
    color: #fff !important; }

.btn-dark .badge {
  background: #fff;
  color: #2f3337; }

.btn-dark:active,
.btn-dark.active,
.show > .btn-dark.dropdown-toggle {
  border-color: transparent;
  background: #181c21;
  box-shadow: none; }

.btn-group .btn-dark,
.input-group-prepend .btn-dark,
.input-group-append .btn-dark {
  border-right: 1px solid #181c21;
  border-left: 1px solid #181c21; }

.btn-outline-dark {
  border-color: rgba(24, 28, 33, 0.9);
  background: transparent;
  color: rgba(24, 28, 33, 0.9); }
  .btn-outline-dark:hover {
    border-color: transparent;
    background: rgba(24, 28, 33, 0.9);
    color: #fff; }
  .btn-outline-dark:focus, .btn-outline-dark.focus {
    box-shadow: 0 0 0 2px rgba(24, 28, 33, 0.405); }
  .btn-outline-dark.disabled, .btn-outline-dark:disabled {
    border-color: rgba(24, 28, 33, 0.9) !important;
    background: transparent !important;
    color: rgba(24, 28, 33, 0.9) !important; }

.btn-outline-dark:active,
.btn-outline-dark.active,
.show > .btn-outline-dark.dropdown-toggle {
  border-color: transparent;
  background: rgba(24, 28, 33, 0.95);
  color: #fff;
  box-shadow: none; }

.btn-outline-dark .badge {
  background: rgba(24, 28, 33, 0.9);
  border-color: rgba(24, 28, 33, 0.9);
  color: #fff; }

.btn-outline-dark:hover .badge,
.btn-outline-dark:focus .badge,
.btn-outline-dark:active .badge,
.btn-outline-dark.active .badge,
.show > .btn-outline-dark.dropdown-toggle .badge {
  background: #fff;
  border-color: #fff;
  color: #666666; }

.btn-default {
  border-color: rgba(24, 28, 33, 0.1);
  background: transparent;
  color: #4E5155; }
  .btn-default:hover {
    border-color: rgba(24, 28, 33, 0.1);
    background: rgba(24, 28, 33, 0.06);
    color: #4E5155; }
  .btn-default:focus, .btn-default.focus {
    box-shadow: 0 0 0 2px rgba(2, 3, 3, 0.05); }
  .btn-default.disabled, .btn-default:disabled {
    border-color: rgba(24, 28, 33, 0.1) !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #4E5155 !important; }

.btn-default .badge {
  background: #4E5155;
  color: white; }

.btn-default:active,
.btn-default.active,
.show > .btn-default.dropdown-toggle {
  border-color: rgba(24, 28, 33, 0.1);
  background: rgba(24, 28, 33, 0.12);
  box-shadow: none; }

.btn-group .btn-default,
.input-group-prepend .btn-default,
.input-group-append .btn-default {
  border-right: 1px solid rgba(24, 28, 33, 0.12);
  border-left: 1px solid rgba(24, 28, 33, 0.12); }

.btn-outline-default {
  border-color: rgba(24, 28, 33, 0.1);
  background: transparent;
  color: rgba(24, 28, 33, 0.1); }
  .btn-outline-default:hover {
    border-color: transparent;
    background: rgba(24, 28, 33, 0.1);
    color: #4E5155; }
  .btn-outline-default:focus, .btn-outline-default.focus {
    box-shadow: 0 0 0 2px rgba(24, 28, 33, 0.045); }
  .btn-outline-default.disabled, .btn-outline-default:disabled {
    border-color: rgba(24, 28, 33, 0.1) !important;
    background: transparent !important;
    color: rgba(24, 28, 33, 0.1) !important; }

.btn-outline-default:active,
.btn-outline-default.active,
.show > .btn-outline-default.dropdown-toggle {
  border-color: transparent;
  background: rgba(24, 28, 33, 0.15);
  color: #4E5155;
  box-shadow: none; }

.btn-outline-default .badge {
  background: rgba(24, 28, 33, 0.1);
  border-color: rgba(24, 28, 33, 0.1);
  color: #fff; }

.btn-outline-default:hover .badge,
.btn-outline-default:focus .badge,
.btn-outline-default:active .badge,
.btn-outline-default.active .badge,
.show > .btn-outline-default.dropdown-toggle .badge {
  background: #4E5155;
  border-color: #4E5155;
  color: #fff; }

.btn-xl, .btn-group-xl > .btn {
  padding: 0.875rem 2.125rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.25rem; }

.btn-xs, .btn-group-xs > .btn {
  padding: 0 0.5rem;
  font-size: 0.75rem;
  line-height: 1.5;
  border-radius: 0.25rem; }

.btn.btn-link {
  font-size: inherit; }

.icon-btn {
  width: calc(2.25276rem + 2px);
  padding: 0;
  line-height: 2.25276rem; }
  .icon-btn.btn-xl, .btn-group-xl > .icon-btn.btn {
    width: calc(3.625rem + 2px);
    line-height: 3.625rem; }
  .icon-btn.btn-lg {
    width: calc(3rem + 2px);
    line-height: 3rem; }
  .icon-btn.btn-sm {
    width: calc(1.501rem + 2px);
    line-height: 1.501rem; }
  .icon-btn.btn-xs, .btn-group-xs > .icon-btn.btn {
    width: calc(1.125rem + 2px);
    line-height: 1.125rem; }

.btn.borderless:not(.active):not(:active):not(:hover):not(:focus),
:not(.show) > .btn.borderless.dropdown-toggle:not(:hover):not(:focus) {
  border-color: transparent;
  box-shadow: none; }

:not(.btn-group):not(.input-group-prepend):not(.input-group-append) > .btn-group > .btn:not(.btn-default):not([class*="btn-outline-"]):first-child,
.btn-group > .btn-group:first-child > .btn:not(.btn-default):not([class*="btn-outline-"]):first-child,
.input-group-prepend > .btn:not(.btn-default):not([class*="btn-outline-"]):first-child,
.input-group-append > .btn:not(.btn-default):not([class*="btn-outline-"]):first-child,
.input-group-prepend > .btn-group:first-child > .btn:not(.btn-default):not([class*="btn-outline-"]):first-child,
.input-group-append > .btn-group:first-child > .btn:not(.btn-default):not([class*="btn-outline-"]):first-child {
  border-left-color: transparent; }

:not(.btn-group):not(.input-group-prepend):not(.input-group-append) > .btn-group > .btn:not(.btn-default):not([class*="btn-outline-"]):last-of-type,
.btn-group > .btn-group:last-child > .btn:not(.btn-default):not([class*="btn-outline-"]):last-of-type,
.input-group-append > .btn:not(.btn-default):not([class*="btn-outline-"]):last-of-type,
.input-group-prepend > .btn:not(.btn-default):not([class*="btn-outline-"]):last-of-type,
.input-group-append > .btn-group:last-child > .btn:not(.btn-default):not([class*="btn-outline-"]):last-of-type,
.input-group-prepend > .btn-group:last-child > .btn:not(.btn-default):not([class*="btn-outline-"]):last-of-type {
  border-right-color: transparent; }

.dropdown-toggle-split,
.btn-lg + .dropdown-toggle-split,
.btn-group-lg > .btn + .dropdown-toggle-split,
.input-group-lg .btn + .dropdown-toggle-split,
.btn-xl + .dropdown-toggle-split,
.btn-group-xl > .btn + .dropdown-toggle-split,
.btn-group-xl > .btn + .dropdown-toggle-split {
  padding-right: .7em;
  padding-left: .7em; }

.btn-sm + .dropdown-toggle-split,
.btn-group-sm > .btn + .dropdown-toggle-split,
.input-group-sm .btn + .dropdown-toggle-split {
  padding-right: .6em;
  padding-left: .6em; }

.btn-xs + .dropdown-toggle-split, .btn-group-xs > .btn + .dropdown-toggle-split,
.btn-group-xs > .btn + .dropdown-toggle-split {
  padding-right: .5em;
  padding-left: .5em; }

.badge-secondary {
  background-color: #8897AA;
  color: #fff; }

.badge-secondary[href]:hover, .badge-secondary[href]:focus {
  background-color: #818fa2;
  color: #fff;
  text-decoration: none; }

.btn .badge-secondary {
  background: #8897AA !important;
  border-color: #8897AA !important;
  color: #fff !important; }

.badge-outline-secondary {
  background-color: transparent;
  box-shadow: 0 0 0 1px #8897AA inset;
  color: #8897AA; }

.badge-outline-secondary[href]:hover, .badge-outline-secondary[href]:focus {
  color: #8897AA;
  text-decoration: none; }

.btn .badge-outline-secondary {
  background-color: transparent !important;
  box-shadow: 0 0 0 1px #8897AA inset !important;
  color: #8897AA !important; }

.badge-success {
  background-color: #02BC77;
  color: #fff; }

.badge-success[href]:hover, .badge-success[href]:focus {
  background-color: #02b371;
  color: #fff;
  text-decoration: none; }

.btn .badge-success {
  background: #02BC77 !important;
  border-color: #02BC77 !important;
  color: #fff !important; }

.badge-outline-success {
  background-color: transparent;
  box-shadow: 0 0 0 1px #02BC77 inset;
  color: #02BC77; }

.badge-outline-success[href]:hover, .badge-outline-success[href]:focus {
  color: #02BC77;
  text-decoration: none; }

.btn .badge-outline-success {
  background-color: transparent !important;
  box-shadow: 0 0 0 1px #02BC77 inset !important;
  color: #02BC77 !important; }

.badge-info {
  background-color: #28c3d7;
  color: #fff; }

.badge-info[href]:hover, .badge-info[href]:focus {
  background-color: #26b9cc;
  color: #fff;
  text-decoration: none; }

.btn .badge-info {
  background: #28c3d7 !important;
  border-color: #28c3d7 !important;
  color: #fff !important; }

.badge-outline-info {
  background-color: transparent;
  box-shadow: 0 0 0 1px #28c3d7 inset;
  color: #28c3d7; }

.badge-outline-info[href]:hover, .badge-outline-info[href]:focus {
  color: #28c3d7;
  text-decoration: none; }

.btn .badge-outline-info {
  background-color: transparent !important;
  box-shadow: 0 0 0 1px #28c3d7 inset !important;
  color: #28c3d7 !important; }

.badge-warning {
  background-color: #FFD950;
  color: #665720; }

.badge-warning[href]:hover, .badge-warning[href]:focus {
  background-color: #f2ce4c;
  color: #665720;
  text-decoration: none; }

.btn .badge-warning {
  background: #FFD950 !important;
  border-color: #FFD950 !important;
  color: #665720 !important; }

.badge-outline-warning {
  background-color: transparent;
  box-shadow: 0 0 0 1px #FFD950 inset;
  color: #FFD950; }

.badge-outline-warning[href]:hover, .badge-outline-warning[href]:focus {
  color: #FFD950;
  text-decoration: none; }

.btn .badge-outline-warning {
  background-color: transparent !important;
  box-shadow: 0 0 0 1px #FFD950 inset !important;
  color: #FFD950 !important; }

.badge-danger {
  background-color: #d9534f;
  color: #fff; }

.badge-danger[href]:hover, .badge-danger[href]:focus {
  background-color: #ce4f4b;
  color: #fff;
  text-decoration: none; }

.btn .badge-danger {
  background: #d9534f !important;
  border-color: #d9534f !important;
  color: #fff !important; }

.badge-outline-danger {
  background-color: transparent;
  box-shadow: 0 0 0 1px #d9534f inset;
  color: #d9534f; }

.badge-outline-danger[href]:hover, .badge-outline-danger[href]:focus {
  color: #d9534f;
  text-decoration: none; }

.btn .badge-outline-danger {
  background-color: transparent !important;
  box-shadow: 0 0 0 1px #d9534f inset !important;
  color: #d9534f !important; }

.badge-dark {
  background-color: rgba(24, 28, 33, 0.9);
  color: #fff; }

.badge-dark[href]:hover, .badge-dark[href]:focus {
  background-color: rgba(24, 28, 33, 0.93);
  color: #fff;
  text-decoration: none; }

.btn .badge-dark {
  background: rgba(24, 28, 33, 0.9) !important;
  border-color: rgba(24, 28, 33, 0.9) !important;
  color: #fff !important; }

.badge-outline-dark {
  background-color: transparent;
  box-shadow: 0 0 0 1px rgba(24, 28, 33, 0.9) inset;
  color: rgba(24, 28, 33, 0.9); }

.badge-outline-dark[href]:hover, .badge-outline-dark[href]:focus {
  color: rgba(24, 28, 33, 0.9);
  text-decoration: none; }

.btn .badge-outline-dark {
  background-color: transparent !important;
  box-shadow: 0 0 0 1px rgba(24, 28, 33, 0.9) inset !important;
  color: rgba(24, 28, 33, 0.9) !important; }

.badge-default {
  background-color: rgba(24, 28, 33, 0.1);
  color: #4E5155; }

.badge-default[href]:hover, .badge-default[href]:focus {
  background-color: rgba(24, 28, 33, 0.13);
  color: #4E5155;
  text-decoration: none; }

.btn .badge-default {
  background: rgba(24, 28, 33, 0.1) !important;
  border-color: rgba(24, 28, 33, 0.1) !important;
  color: #4E5155 !important; }

.badge-outline-default {
  background-color: transparent;
  box-shadow: 0 0 0 1px rgba(24, 28, 33, 0.1) inset;
  color: #4E5155; }

.badge-outline-default[href]:hover, .badge-outline-default[href]:focus {
  color: #4E5155;
  text-decoration: none; }

.btn .badge-outline-default {
  background-color: transparent !important;
  box-shadow: 0 0 0 1px rgba(24, 28, 33, 0.1) inset !important;
  color: #4E5155 !important; }

.badge.badge-dot {
  display: inline-block;
  margin: 0;
  padding: 0;
  width: .5em;
  height: .5em;
  border-radius: 50%;
  vertical-align: middle; }

.badge.indicator {
  position: absolute;
  top: auto;
  display: inline-block;
  margin: 0;
  -webkit-transform: translate(-50%, 25%);
          transform: translate(-50%, 25%); }
  .badge.indicator:not(.badge-dot) {
    padding: 0 .2em;
    font-size: .6em;
    line-height: 1.2em;
    -webkit-transform: translate(-50%, -10%);
            transform: translate(-50%, -10%); }

[data-trigger=hover] {
  outline: 0; }

.dropdown-menu {
  margin: 0.125rem 0;
  box-shadow: 0 1px 6px rgba(0, 0, 0, 0.09);
  -webkit-animation: dropdownAnimation .1s;
          animation: dropdownAnimation .1s; }
  .mega-dropdown > .dropdown-menu {
    left: 0 !important;
    right: 0 !important; }

.dropdown-item {
  line-height: 1.54; }

.dropdown-menu .badge[class^="float-"],
.dropdown-menu .badge[class*=" float-"] {
  position: relative;
  top: .071em; }

.dropdown-toggle.hide-arrow::before, .dropdown-toggle.hide-arrow::after,
.dropdown-toggle-hide-arrow > .dropdown-toggle::before,
.dropdown-toggle-hide-arrow > .dropdown-toggle::after {
  display: none; }

.dropdown-menu > li:not(.dropdown-item) > a:not(.dropdown-item) {
  display: block;
  clear: both;
  padding: 0.438rem 1.25rem;
  width: 100%;
  border: 0;
  background: none;
  color: #4E5155;
  text-align: inherit;
  white-space: nowrap;
  font-weight: 400;
  line-height: 1.54; }
  .dropdown-menu > li:not(.dropdown-item) > a:not(.dropdown-item):hover, .dropdown-menu > li:not(.dropdown-item) > a:not(.dropdown-item):focus {
    background-color: rgba(24, 28, 33, 0.03);
    color: #4E5155;
    text-decoration: none; }

.dropdown-menu > li:not(.dropdown-item).active > a:not(.dropdown-item),
.dropdown-menu > li:not(.dropdown-item) > a:not(.dropdown-item):active {
  background-color: #6610f2;
  color: #fff;
  text-decoration: none; }

.dropdown-menu > li:not(.dropdown-item).disabled > a:not(.dropdown-item) {
  background-color: transparent;
  color: #d1d2d3; }

.dropleft .dropdown-toggle::before,
.dropright .dropdown-toggle::after {
  vertical-align: middle; }

.dropdown-toggle-split::after,
.dropdown-toggle-split::before {
  margin-right: 0 !important;
  margin-left: 0 !important; }

.dropdown-menu .dropdown-toggle {
  position: relative; }
  .dropdown-menu .dropdown-toggle::after {
    display: none; }

.dropdown-menu .dropdown-toggle > .dropdown-item {
  position: relative;
  cursor: default; }

@media (max-width: 767px) {
  .dropdown-menu .dropdown-menu {
    position: static;
    display: block;
    margin: 0;
    padding-left: 1.25rem;
    width: 100%;
    border-width: 0;
    border-radius: 0;
    box-shadow: none; } }

@media (min-width: 768px) {
  .dropdown-menu .dropdown-toggle > .dropdown-item::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0.625rem;
    display: block;
    width: .375rem;
    height: .375rem;
    border: 1px solid #a3a4a6;
    border-top: 0;
    border-left: 0;
    -webkit-transform: rotate(-45deg) translate(0, -50%);
            transform: rotate(-45deg) translate(0, -50%); }
  .dropdown-menu .dropdown-toggle:hover > .dropdown-item:not(.disabled) {
    background: rgba(24, 28, 33, 0.03);
    color: #4E5155; }
    .dropdown-menu .dropdown-toggle:hover > .dropdown-item:not(.disabled) + .dropdown-menu {
      display: block; }
  .dropdown-menu .dropdown-menu {
    top: 0;
    left: 100%; }
  .dropdown-menu-right .dropdown-menu {
    right: 100%;
    left: auto; } }

.nav-link {
  line-height: 1.54; }
  .nav-link.disabled {
    border-color: transparent !important;
    background: transparent !important;
    color: #d1d2d3 !important; }

.nav .nav-item,
.nav .nav-link,
.tab-pane,
.tab-pane .card-body {
  outline: none !important; }

.nav-tabs .nav-link:not(.active),
.nav-pills .nav-link:not(.active) {
  color: #8c8e90; }
  .nav-tabs .nav-link:not(.active):hover, .nav-tabs .nav-link:not(.active):focus,
  .nav-pills .nav-link:not(.active):hover,
  .nav-pills .nav-link:not(.active):focus {
    color: #4E5155; }

.nav-tabs:not(.nav-fill):not(.nav-justified) .nav-link,
.nav-pills:not(.nav-fill):not(.nav-justified) .nav-link {
  margin-right: 0.125rem; }

.nav-tabs .nav-link .badge,
.nav-pills .nav-link .badge {
  position: relative;
  top: -1px; }

.nav-tabs .nav-item.show .nav-link:not(.active),
.nav-pills .nav-item.show .nav-link:not(.active) {
  background-color: transparent; }

.nav-tabs .nav-link {
  background-clip: padding-box; }
  .nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
    border-bottom-color: transparent; }
  .nav-tabs .nav-link.active {
    border-bottom-color: #fff; }

.nav-tabs.tabs-alt .nav-link, .nav-tabs.tabs-alt .nav-link.active,
.tabs-alt > .nav-tabs .nav-link,
.tabs-alt > .nav-tabs .nav-link.active {
  border-width: 0;
  border-radius: 0;
  background-color: transparent; }

.nav-lg > .nav .nav-link,
.nav-lg.nav .nav-link {
  padding: 0.875rem 1.3125rem;
  font-size: 1rem;
  line-height: 1.5; }

.nav-sm > .nav .nav-link,
.nav-sm.nav .nav-link {
  padding: 0.3125rem 0.875rem;
  font-size: 0.75rem;
  line-height: 1.5; }

.nav-tabs-top,
.nav-tabs-right,
.nav-tabs-bottom,
.nav-tabs-left {
  display: -ms-flexbox;
  display: flex; }
  .nav-tabs-top > .nav,
  .nav-tabs-top > div > .nav,
  .nav-tabs-right > .nav,
  .nav-tabs-right > div > .nav,
  .nav-tabs-bottom > .nav,
  .nav-tabs-bottom > div > .nav,
  .nav-tabs-left > .nav,
  .nav-tabs-left > div > .nav {
    position: relative;
    z-index: 1;
    border: 0; }
  .nav-tabs-top > .nav .nav-link:hover, .nav-tabs-top > .nav .nav-link:focus,
  .nav-tabs-top > div > .nav .nav-link:hover,
  .nav-tabs-top > div > .nav .nav-link:focus,
  .nav-tabs-right > .nav .nav-link:hover,
  .nav-tabs-right > .nav .nav-link:focus,
  .nav-tabs-right > div > .nav .nav-link:hover,
  .nav-tabs-right > div > .nav .nav-link:focus,
  .nav-tabs-bottom > .nav .nav-link:hover,
  .nav-tabs-bottom > .nav .nav-link:focus,
  .nav-tabs-bottom > div > .nav .nav-link:hover,
  .nav-tabs-bottom > div > .nav .nav-link:focus,
  .nav-tabs-left > .nav .nav-link:hover,
  .nav-tabs-left > .nav .nav-link:focus,
  .nav-tabs-left > div > .nav .nav-link:hover,
  .nav-tabs-left > div > .nav .nav-link:focus {
    border-color: rgba(24, 28, 33, 0.06); }
  .nav-tabs-top > .nav .nav-link.active,
  .nav-tabs-top > div > .nav .nav-link.active,
  .nav-tabs-right > .nav .nav-link.active,
  .nav-tabs-right > div > .nav .nav-link.active,
  .nav-tabs-bottom > .nav .nav-link.active,
  .nav-tabs-bottom > div > .nav .nav-link.active,
  .nav-tabs-left > .nav .nav-link.active,
  .nav-tabs-left > div > .nav .nav-link.active {
    border-color: rgba(24, 28, 33, 0.06); }
  .nav-tabs-top .row-bordered > [class^="col-"]::before, .nav-tabs-top .row-bordered > [class^="col-"]::after,
  .nav-tabs-top .row-bordered > [class*=" col-"]::before,
  .nav-tabs-top .row-bordered > [class*=" col-"]::after,
  .nav-tabs-top .row-bordered > [class^="col "]::before,
  .nav-tabs-top .row-bordered > [class^="col "]::after,
  .nav-tabs-top .row-bordered > [class*=" col "]::before,
  .nav-tabs-top .row-bordered > [class*=" col "]::after,
  .nav-tabs-top .row-bordered > [class$=" col"]::before,
  .nav-tabs-top .row-bordered > [class$=" col"]::after,
  .nav-tabs-top .row-bordered > [class="col"]::before,
  .nav-tabs-top .row-bordered > [class="col"]::after,
  .nav-tabs-right .row-bordered > [class^="col-"]::before,
  .nav-tabs-right .row-bordered > [class^="col-"]::after,
  .nav-tabs-right .row-bordered > [class*=" col-"]::before,
  .nav-tabs-right .row-bordered > [class*=" col-"]::after,
  .nav-tabs-right .row-bordered > [class^="col "]::before,
  .nav-tabs-right .row-bordered > [class^="col "]::after,
  .nav-tabs-right .row-bordered > [class*=" col "]::before,
  .nav-tabs-right .row-bordered > [class*=" col "]::after,
  .nav-tabs-right .row-bordered > [class$=" col"]::before,
  .nav-tabs-right .row-bordered > [class$=" col"]::after,
  .nav-tabs-right .row-bordered > [class="col"]::before,
  .nav-tabs-right .row-bordered > [class="col"]::after,
  .nav-tabs-bottom .row-bordered > [class^="col-"]::before,
  .nav-tabs-bottom .row-bordered > [class^="col-"]::after,
  .nav-tabs-bottom .row-bordered > [class*=" col-"]::before,
  .nav-tabs-bottom .row-bordered > [class*=" col-"]::after,
  .nav-tabs-bottom .row-bordered > [class^="col "]::before,
  .nav-tabs-bottom .row-bordered > [class^="col "]::after,
  .nav-tabs-bottom .row-bordered > [class*=" col "]::before,
  .nav-tabs-bottom .row-bordered > [class*=" col "]::after,
  .nav-tabs-bottom .row-bordered > [class$=" col"]::before,
  .nav-tabs-bottom .row-bordered > [class$=" col"]::after,
  .nav-tabs-bottom .row-bordered > [class="col"]::before,
  .nav-tabs-bottom .row-bordered > [class="col"]::after,
  .nav-tabs-left .row-bordered > [class^="col-"]::before,
  .nav-tabs-left .row-bordered > [class^="col-"]::after,
  .nav-tabs-left .row-bordered > [class*=" col-"]::before,
  .nav-tabs-left .row-bordered > [class*=" col-"]::after,
  .nav-tabs-left .row-bordered > [class^="col "]::before,
  .nav-tabs-left .row-bordered > [class^="col "]::after,
  .nav-tabs-left .row-bordered > [class*=" col "]::before,
  .nav-tabs-left .row-bordered > [class*=" col "]::after,
  .nav-tabs-left .row-bordered > [class$=" col"]::before,
  .nav-tabs-left .row-bordered > [class$=" col"]::after,
  .nav-tabs-left .row-bordered > [class="col"]::before,
  .nav-tabs-left .row-bordered > [class="col"]::after {
    border-color: rgba(24, 28, 33, 0.075); }

.nav-tabs-right,
.nav-tabs-left {
  -ms-flex-align: stretch;
      align-items: stretch; }
  .nav-tabs-right > .nav,
  .nav-tabs-right > div > .nav,
  .nav-tabs-left > .nav,
  .nav-tabs-left > div > .nav {
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex-positive: 0;
        flex-grow: 0; }
  .nav-tabs-right > .nav .nav-link,
  .nav-tabs-right > div > .nav .nav-link,
  .nav-tabs-left > .nav .nav-link,
  .nav-tabs-left > div > .nav .nav-link {
    margin: 0 0 0.125rem 0 !important; }
  .nav-tabs-right > .tab-content,
  .nav-tabs-left > .tab-content {
    -ms-flex-positive: 1;
        flex-grow: 1; }

.nav-tabs-top {
  -ms-flex-direction: column;
      flex-direction: column; }
  .nav-tabs-top > .nav .nav-link:hover, .nav-tabs-top > .nav .nav-link:focus,
  .nav-tabs-top > div > .nav .nav-link:hover,
  .nav-tabs-top > div > .nav .nav-link:focus {
    border-bottom-color: transparent; }
  .nav-tabs-top > .nav .nav-link.active,
  .nav-tabs-top > div > .nav .nav-link.active {
    border-bottom-color: #fff; }

.nav-tabs-right {
  -ms-flex-direction: row-reverse;
      flex-direction: row-reverse; }
  .nav-tabs-right > .nav .nav-item,
  .nav-tabs-right > div > .nav .nav-item {
    margin-bottom: 0;
    margin-left: -1px; }
  .nav-tabs-right > .nav .nav-link,
  .nav-tabs-right > div > .nav .nav-link {
    border-radius: 0 0.25rem 0.25rem 0; }
    .nav-tabs-right > .nav .nav-link:hover, .nav-tabs-right > .nav .nav-link:focus,
    .nav-tabs-right > div > .nav .nav-link:hover,
    .nav-tabs-right > div > .nav .nav-link:focus {
      border-left-color: transparent; }
    .nav-tabs-right > .nav .nav-link.active,
    .nav-tabs-right > div > .nav .nav-link.active {
      border-left-color: #fff; }

.nav-tabs-bottom {
  -ms-flex-direction: column-reverse;
      flex-direction: column-reverse; }
  .nav-tabs-bottom > .nav .nav-item,
  .nav-tabs-bottom > div > .nav .nav-item {
    margin-top: -1px;
    margin-bottom: 0; }
  .nav-tabs-bottom > .nav .nav-link,
  .nav-tabs-bottom > div > .nav .nav-link {
    border-radius: 0 0 0.25rem 0.25rem; }
    .nav-tabs-bottom > .nav .nav-link:hover, .nav-tabs-bottom > .nav .nav-link:focus,
    .nav-tabs-bottom > div > .nav .nav-link:hover,
    .nav-tabs-bottom > div > .nav .nav-link:focus {
      border-top-color: transparent; }
    .nav-tabs-bottom > .nav .nav-link.active,
    .nav-tabs-bottom > div > .nav .nav-link.active {
      border-top-color: #fff; }

.nav-tabs-left > .nav .nav-item,
.nav-tabs-left > div > .nav .nav-item {
  margin-right: -1px;
  margin-bottom: 0; }

.nav-tabs-left > .nav .nav-link,
.nav-tabs-left > div > .nav .nav-link {
  border-radius: 0.25rem 0 0 0.25rem; }
  .nav-tabs-left > .nav .nav-link:hover, .nav-tabs-left > .nav .nav-link:focus,
  .nav-tabs-left > div > .nav .nav-link:hover,
  .nav-tabs-left > div > .nav .nav-link:focus {
    border-right-color: transparent; }
  .nav-tabs-left > .nav .nav-link.active,
  .nav-tabs-left > div > .nav .nav-link.active {
    border-right-color: #fff; }

.nav-tabs-top > .tab-content,
.nav-tabs-right > .tab-content,
.nav-tabs-bottom > .tab-content,
.nav-tabs-left > .tab-content {
  -ms-flex-negative: 1;
      flex-shrink: 1;
  border: 1px solid rgba(24, 28, 33, 0.06);
  background: #fff;
  background-clip: padding-box;
  box-shadow: 0 1px 4px rgba(24, 28, 33, 0.012); }

.nav-tabs-top > .tab-content {
  border-radius: 0 0 0.25rem 0.25rem; }

.nav-tabs-right > .tab-content {
  border-radius: 0.25rem 0 0 0.25rem; }

.nav-tabs-bottom > .tab-content {
  border-radius: 0.25rem 0.25rem 0 0; }

.nav-tabs-left > .tab-content {
  border-radius: 0 0.25rem 0.25rem 0; }

@media (max-width: 575px) {
  .nav-responsive-sm > .nav,
  .nav-responsive-sm > div > .nav {
    -ms-flex-direction: column;
        flex-direction: column;
    border: 0; }
    .nav-responsive-sm > .nav .nav-item,
    .nav-responsive-sm > div > .nav .nav-item {
      -ms-flex-preferred-size: auto;
          flex-basis: auto; }
    .nav-responsive-sm > .nav.card-header-tabs, .nav-responsive-sm > .nav.card-header-pills,
    .nav-responsive-sm > div > .nav.card-header-tabs,
    .nav-responsive-sm > div > .nav.card-header-pills {
      margin-bottom: -0.125rem; }
  .nav-responsive-sm > .nav-tabs .nav-item,
  .nav-responsive-sm > .nav-pills .nav-item,
  .nav-responsive-sm > div > .nav-tabs .nav-item,
  .nav-responsive-sm > div > .nav-pills .nav-item {
    margin: 0 !important; }
  .nav-responsive-sm > .nav-tabs .nav-link,
  .nav-responsive-sm > .nav-pills .nav-link,
  .nav-responsive-sm > div > .nav-tabs .nav-link,
  .nav-responsive-sm > div > .nav-pills .nav-link {
    margin: 0 0 0.125rem 0 !important; }
  .nav-responsive-sm > .nav-tabs:not(.tabs-alt) .nav-link,
  .nav-responsive-sm > div > .nav-tabs:not(.tabs-alt) .nav-link {
    border-radius: 0.25rem; }
    .nav-responsive-sm > .nav-tabs:not(.tabs-alt) .nav-link:hover, .nav-responsive-sm > .nav-tabs:not(.tabs-alt) .nav-link:focus,
    .nav-responsive-sm > div > .nav-tabs:not(.tabs-alt) .nav-link:hover,
    .nav-responsive-sm > div > .nav-tabs:not(.tabs-alt) .nav-link:focus {
      border-color: rgba(24, 28, 33, 0.06); }
  .nav-responsive-sm > .nav-tabs:not(.tabs-alt) .nav-link.active,
  .nav-responsive-sm > div > .nav-tabs:not(.tabs-alt) .nav-link.active {
    border-color: rgba(24, 28, 33, 0.06); }
  .nav-responsive-sm.nav-tabs-top > .tab-content,
  .nav-responsive-sm.nav-tabs-right > .tab-content,
  .nav-responsive-sm.nav-tabs-bottom > .tab-content,
  .nav-responsive-sm.nav-tabs-left > .tab-content {
    border-radius: 0.25rem; }
  .nav-responsive-sm.nav-tabs-bottom, .nav-responsive-sm.nav-tabs-right, .nav-responsive-sm.nav-tabs-left {
    -ms-flex-direction: column;
        flex-direction: column; } }

@media (max-width: 767px) {
  .nav-responsive-md > .nav,
  .nav-responsive-md > div > .nav {
    -ms-flex-direction: column;
        flex-direction: column;
    border: 0; }
    .nav-responsive-md > .nav .nav-item,
    .nav-responsive-md > div > .nav .nav-item {
      -ms-flex-preferred-size: auto;
          flex-basis: auto; }
    .nav-responsive-md > .nav.card-header-tabs, .nav-responsive-md > .nav.card-header-pills,
    .nav-responsive-md > div > .nav.card-header-tabs,
    .nav-responsive-md > div > .nav.card-header-pills {
      margin-bottom: -0.125rem; }
  .nav-responsive-md > .nav-tabs .nav-item,
  .nav-responsive-md > .nav-pills .nav-item,
  .nav-responsive-md > div > .nav-tabs .nav-item,
  .nav-responsive-md > div > .nav-pills .nav-item {
    margin: 0 !important; }
  .nav-responsive-md > .nav-tabs .nav-link,
  .nav-responsive-md > .nav-pills .nav-link,
  .nav-responsive-md > div > .nav-tabs .nav-link,
  .nav-responsive-md > div > .nav-pills .nav-link {
    margin: 0 0 0.125rem 0 !important; }
  .nav-responsive-md > .nav-tabs:not(.tabs-alt) .nav-link,
  .nav-responsive-md > div > .nav-tabs:not(.tabs-alt) .nav-link {
    border-radius: 0.25rem; }
    .nav-responsive-md > .nav-tabs:not(.tabs-alt) .nav-link:hover, .nav-responsive-md > .nav-tabs:not(.tabs-alt) .nav-link:focus,
    .nav-responsive-md > div > .nav-tabs:not(.tabs-alt) .nav-link:hover,
    .nav-responsive-md > div > .nav-tabs:not(.tabs-alt) .nav-link:focus {
      border-color: rgba(24, 28, 33, 0.06); }
  .nav-responsive-md > .nav-tabs:not(.tabs-alt) .nav-link.active,
  .nav-responsive-md > div > .nav-tabs:not(.tabs-alt) .nav-link.active {
    border-color: rgba(24, 28, 33, 0.06); }
  .nav-responsive-md.nav-tabs-top > .tab-content,
  .nav-responsive-md.nav-tabs-right > .tab-content,
  .nav-responsive-md.nav-tabs-bottom > .tab-content,
  .nav-responsive-md.nav-tabs-left > .tab-content {
    border-radius: 0.25rem; }
  .nav-responsive-md.nav-tabs-bottom, .nav-responsive-md.nav-tabs-right, .nav-responsive-md.nav-tabs-left {
    -ms-flex-direction: column;
        flex-direction: column; } }

@media (max-width: 991px) {
  .nav-responsive-lg > .nav,
  .nav-responsive-lg > div > .nav {
    -ms-flex-direction: column;
        flex-direction: column;
    border: 0; }
    .nav-responsive-lg > .nav .nav-item,
    .nav-responsive-lg > div > .nav .nav-item {
      -ms-flex-preferred-size: auto;
          flex-basis: auto; }
    .nav-responsive-lg > .nav.card-header-tabs, .nav-responsive-lg > .nav.card-header-pills,
    .nav-responsive-lg > div > .nav.card-header-tabs,
    .nav-responsive-lg > div > .nav.card-header-pills {
      margin-bottom: -0.125rem; }
  .nav-responsive-lg > .nav-tabs .nav-item,
  .nav-responsive-lg > .nav-pills .nav-item,
  .nav-responsive-lg > div > .nav-tabs .nav-item,
  .nav-responsive-lg > div > .nav-pills .nav-item {
    margin: 0 !important; }
  .nav-responsive-lg > .nav-tabs .nav-link,
  .nav-responsive-lg > .nav-pills .nav-link,
  .nav-responsive-lg > div > .nav-tabs .nav-link,
  .nav-responsive-lg > div > .nav-pills .nav-link {
    margin: 0 0 0.125rem 0 !important; }
  .nav-responsive-lg > .nav-tabs:not(.tabs-alt) .nav-link,
  .nav-responsive-lg > div > .nav-tabs:not(.tabs-alt) .nav-link {
    border-radius: 0.25rem; }
    .nav-responsive-lg > .nav-tabs:not(.tabs-alt) .nav-link:hover, .nav-responsive-lg > .nav-tabs:not(.tabs-alt) .nav-link:focus,
    .nav-responsive-lg > div > .nav-tabs:not(.tabs-alt) .nav-link:hover,
    .nav-responsive-lg > div > .nav-tabs:not(.tabs-alt) .nav-link:focus {
      border-color: rgba(24, 28, 33, 0.06); }
  .nav-responsive-lg > .nav-tabs:not(.tabs-alt) .nav-link.active,
  .nav-responsive-lg > div > .nav-tabs:not(.tabs-alt) .nav-link.active {
    border-color: rgba(24, 28, 33, 0.06); }
  .nav-responsive-lg.nav-tabs-top > .tab-content,
  .nav-responsive-lg.nav-tabs-right > .tab-content,
  .nav-responsive-lg.nav-tabs-bottom > .tab-content,
  .nav-responsive-lg.nav-tabs-left > .tab-content {
    border-radius: 0.25rem; }
  .nav-responsive-lg.nav-tabs-bottom, .nav-responsive-lg.nav-tabs-right, .nav-responsive-lg.nav-tabs-left {
    -ms-flex-direction: column;
        flex-direction: column; } }

@media (max-width: 1199px) {
  .nav-responsive-xl > .nav,
  .nav-responsive-xl > div > .nav {
    -ms-flex-direction: column;
        flex-direction: column;
    border: 0; }
    .nav-responsive-xl > .nav .nav-item,
    .nav-responsive-xl > div > .nav .nav-item {
      -ms-flex-preferred-size: auto;
          flex-basis: auto; }
    .nav-responsive-xl > .nav.card-header-tabs, .nav-responsive-xl > .nav.card-header-pills,
    .nav-responsive-xl > div > .nav.card-header-tabs,
    .nav-responsive-xl > div > .nav.card-header-pills {
      margin-bottom: -0.125rem; }
  .nav-responsive-xl > .nav-tabs .nav-item,
  .nav-responsive-xl > .nav-pills .nav-item,
  .nav-responsive-xl > div > .nav-tabs .nav-item,
  .nav-responsive-xl > div > .nav-pills .nav-item {
    margin: 0 !important; }
  .nav-responsive-xl > .nav-tabs .nav-link,
  .nav-responsive-xl > .nav-pills .nav-link,
  .nav-responsive-xl > div > .nav-tabs .nav-link,
  .nav-responsive-xl > div > .nav-pills .nav-link {
    margin: 0 0 0.125rem 0 !important; }
  .nav-responsive-xl > .nav-tabs:not(.tabs-alt) .nav-link,
  .nav-responsive-xl > div > .nav-tabs:not(.tabs-alt) .nav-link {
    border-radius: 0.25rem; }
    .nav-responsive-xl > .nav-tabs:not(.tabs-alt) .nav-link:hover, .nav-responsive-xl > .nav-tabs:not(.tabs-alt) .nav-link:focus,
    .nav-responsive-xl > div > .nav-tabs:not(.tabs-alt) .nav-link:hover,
    .nav-responsive-xl > div > .nav-tabs:not(.tabs-alt) .nav-link:focus {
      border-color: rgba(24, 28, 33, 0.06); }
  .nav-responsive-xl > .nav-tabs:not(.tabs-alt) .nav-link.active,
  .nav-responsive-xl > div > .nav-tabs:not(.tabs-alt) .nav-link.active {
    border-color: rgba(24, 28, 33, 0.06); }
  .nav-responsive-xl.nav-tabs-top > .tab-content,
  .nav-responsive-xl.nav-tabs-right > .tab-content,
  .nav-responsive-xl.nav-tabs-bottom > .tab-content,
  .nav-responsive-xl.nav-tabs-left > .tab-content {
    border-radius: 0.25rem; }
  .nav-responsive-xl.nav-tabs-bottom, .nav-responsive-xl.nav-tabs-right, .nav-responsive-xl.nav-tabs-left {
    -ms-flex-direction: column;
        flex-direction: column; } }

.page-item + .page-item .page-link,
.pagination li + li > a:not(.page-link) {
  margin-left: 0.1875rem; }

.page-link,
.page-link > a {
  min-width: calc(2.144rem + 2px);
  text-align: center;
  line-height: 1;
  border-radius: 0.25rem; }
  .page-link:focus,
  .page-link > a:focus {
    color: #4E5155; }

.page-link.btn-primary {
  box-shadow: none !important; }

.pagination > li > a:not(.page-link) {
  position: relative;
  display: block;
  padding: 0.625rem 0.3125rem;
  min-width: calc(2.144rem + 2px);
  border: 1px solid rgba(24, 28, 33, 0.075);
  background-color: transparent;
  color: #a3a4a6;
  text-align: center;
  line-height: 1 !important;
  border-radius: 0.25rem; }
  .pagination > li > a:not(.page-link):hover, .pagination > li > a:not(.page-link):focus {
    border-color: rgba(24, 28, 33, 0.1);
    background-color: transparent;
    color: #4E5155;
    text-decoration: none; }
  .pagination > li > a:not(.page-link):focus {
    color: #4E5155; }

.pagination-lg .page-link,
.pagination-lg > li > a:not(.page-link) {
  min-width: calc(2.875rem + 2px);
  line-height: 1;
  border-radius: 0.25rem; }

.pagination-sm .page-link,
.pagination-sm > li > a:not(.page-link) {
  min-width: calc(1.5rem + 2px);
  line-height: 1;
  border-radius: 0.25rem; }

.alert-secondary {
  border-color: #dfe1e3;
  background-color: #edeff2;
  color: #5f6061; }
  .alert-secondary hr {
    border-top-color: #dfe1e3; }
  .alert-secondary .alert-link {
    color: #5f6061; }

.alert-dark-secondary {
  background-color: #8897AA;
  color: #fff; }
  .alert-dark-secondary hr {
    border-top-color: rgba(255, 255, 255, 0.2); }
  .alert-dark-secondary .close,
  .alert-dark-secondary .alert-link {
    color: #fff; }

.alert-success {
  border-color: #cce6dd;
  background-color: #d9f5eb;
  color: #57625e; }
  .alert-success hr {
    border-top-color: #cce6dd; }
  .alert-success .alert-link {
    color: #57625e; }

.alert-dark-success {
  background-color: #02BC77;
  color: #fff; }
  .alert-dark-success hr {
    border-top-color: rgba(255, 255, 255, 0.2); }
  .alert-dark-success .close,
  .alert-dark-success .alert-link {
    color: #fff; }

.alert-info {
  border-color: #d2e7ea;
  background-color: #dff6f9;
  color: #596264; }
  .alert-info hr {
    border-top-color: #d2e7ea; }
  .alert-info .alert-link {
    color: #596264; }

.alert-dark-info {
  background-color: #28c3d7;
  color: #fff; }
  .alert-dark-info hr {
    border-top-color: rgba(255, 255, 255, 0.2); }
  .alert-dark-info .close,
  .alert-dark-info .alert-link {
    color: #fff; }

.alert-warning {
  border-color: #f0ead7;
  background-color: #fff9e5;
  color: #66645c; }
  .alert-warning hr {
    border-top-color: #f0ead7; }
  .alert-warning .alert-link {
    color: #66645c; }

.alert-dark-warning {
  background-color: #FFD950;
  color: #665720; }
  .alert-dark-warning hr {
    border-top-color: rgba(102, 87, 32, 0.2); }
  .alert-dark-warning .close,
  .alert-dark-warning .alert-link {
    color: #665720; }

.alert-danger {
  border-color: #ead7d7;
  background-color: #f9e5e5;
  color: #645c5c; }
  .alert-danger hr {
    border-top-color: #ead7d7; }
  .alert-danger .alert-link {
    color: #645c5c; }

.alert-dark-danger {
  background-color: #d9534f;
  color: #fff; }
  .alert-dark-danger hr {
    border-top-color: rgba(255, 255, 255, 0.2); }
  .alert-dark-danger .close,
  .alert-dark-danger .alert-link {
    color: #fff; }

.alert-dark {
  border-color: #cfd0d1;
  background-color: #dcddde;
  color: #585859; }
  .alert-dark hr {
    border-top-color: #cfd0d1; }
  .alert-dark .alert-link {
    color: #585859; }

.alert-dark-dark {
  background-color: rgba(24, 28, 33, 0.9);
  color: #fff; }
  .alert-dark-dark hr {
    border-top-color: rgba(255, 255, 255, 0.2); }
  .alert-dark-dark .close,
  .alert-dark-dark .alert-link {
    color: #fff; }

.tooltip-inner {
  box-shadow: none; }

.modal-open .tooltip {
  z-index: 1092; }

.tooltip-secondary .tooltip-inner, .tooltip-secondary > .tooltip .tooltip-inner, .ngb-tooltip-secondary + ngb-tooltip-window .tooltip-inner {
  background: #8897AA;
  color: #fff; }

.tooltip-secondary.bs-tooltip-top .arrow::before, .tooltip-secondary.bs-tooltip-auto[x-placement^="top"] .arrow::before, .tooltip-secondary > .tooltip.bs-tooltip-top .arrow::before, .tooltip-secondary > .tooltip.bs-tooltip-auto[x-placement^="top"] .arrow::before, .ngb-tooltip-secondary + ngb-tooltip-window.bs-tooltip-top .arrow::before, .ngb-tooltip-secondary + ngb-tooltip-window.bs-tooltip-auto[x-placement^="top"] .arrow::before {
  border-top-color: #8897AA; }

.tooltip-secondary.bs-tooltip-right .arrow::before, .tooltip-secondary.bs-tooltip-auto[x-placement^="right"] .arrow::before, .tooltip-secondary > .tooltip.bs-tooltip-right .arrow::before, .tooltip-secondary > .tooltip.bs-tooltip-auto[x-placement^="right"] .arrow::before, .ngb-tooltip-secondary + ngb-tooltip-window.bs-tooltip-right .arrow::before, .ngb-tooltip-secondary + ngb-tooltip-window.bs-tooltip-auto[x-placement^="right"] .arrow::before {
  border-right-color: #8897AA; }

.tooltip-secondary.bs-tooltip-bottom .arrow::before, .tooltip-secondary.bs-tooltip-auto[x-placement^="bottom"] .arrow::before, .tooltip-secondary > .tooltip.bs-tooltip-bottom .arrow::before, .tooltip-secondary > .tooltip.bs-tooltip-auto[x-placement^="bottom"] .arrow::before, .ngb-tooltip-secondary + ngb-tooltip-window.bs-tooltip-bottom .arrow::before, .ngb-tooltip-secondary + ngb-tooltip-window.bs-tooltip-auto[x-placement^="bottom"] .arrow::before {
  border-bottom-color: #8897AA; }

.tooltip-secondary.bs-tooltip-left .arrow::before, .tooltip-secondary.bs-tooltip-auto[x-placement^="left"] .arrow::before, .tooltip-secondary > .tooltip.bs-tooltip-left .arrow::before, .tooltip-secondary > .tooltip.bs-tooltip-auto[x-placement^="left"] .arrow::before, .ngb-tooltip-secondary + ngb-tooltip-window.bs-tooltip-left .arrow::before, .ngb-tooltip-secondary + ngb-tooltip-window.bs-tooltip-auto[x-placement^="left"] .arrow::before {
  border-left-color: #8897AA; }

.tooltip-success .tooltip-inner, .tooltip-success > .tooltip .tooltip-inner, .ngb-tooltip-success + ngb-tooltip-window .tooltip-inner {
  background: #02BC77;
  color: #fff; }

.tooltip-success.bs-tooltip-top .arrow::before, .tooltip-success.bs-tooltip-auto[x-placement^="top"] .arrow::before, .tooltip-success > .tooltip.bs-tooltip-top .arrow::before, .tooltip-success > .tooltip.bs-tooltip-auto[x-placement^="top"] .arrow::before, .ngb-tooltip-success + ngb-tooltip-window.bs-tooltip-top .arrow::before, .ngb-tooltip-success + ngb-tooltip-window.bs-tooltip-auto[x-placement^="top"] .arrow::before {
  border-top-color: #02BC77; }

.tooltip-success.bs-tooltip-right .arrow::before, .tooltip-success.bs-tooltip-auto[x-placement^="right"] .arrow::before, .tooltip-success > .tooltip.bs-tooltip-right .arrow::before, .tooltip-success > .tooltip.bs-tooltip-auto[x-placement^="right"] .arrow::before, .ngb-tooltip-success + ngb-tooltip-window.bs-tooltip-right .arrow::before, .ngb-tooltip-success + ngb-tooltip-window.bs-tooltip-auto[x-placement^="right"] .arrow::before {
  border-right-color: #02BC77; }

.tooltip-success.bs-tooltip-bottom .arrow::before, .tooltip-success.bs-tooltip-auto[x-placement^="bottom"] .arrow::before, .tooltip-success > .tooltip.bs-tooltip-bottom .arrow::before, .tooltip-success > .tooltip.bs-tooltip-auto[x-placement^="bottom"] .arrow::before, .ngb-tooltip-success + ngb-tooltip-window.bs-tooltip-bottom .arrow::before, .ngb-tooltip-success + ngb-tooltip-window.bs-tooltip-auto[x-placement^="bottom"] .arrow::before {
  border-bottom-color: #02BC77; }

.tooltip-success.bs-tooltip-left .arrow::before, .tooltip-success.bs-tooltip-auto[x-placement^="left"] .arrow::before, .tooltip-success > .tooltip.bs-tooltip-left .arrow::before, .tooltip-success > .tooltip.bs-tooltip-auto[x-placement^="left"] .arrow::before, .ngb-tooltip-success + ngb-tooltip-window.bs-tooltip-left .arrow::before, .ngb-tooltip-success + ngb-tooltip-window.bs-tooltip-auto[x-placement^="left"] .arrow::before {
  border-left-color: #02BC77; }

.tooltip-info .tooltip-inner, .tooltip-info > .tooltip .tooltip-inner, .ngb-tooltip-info + ngb-tooltip-window .tooltip-inner {
  background: #28c3d7;
  color: #fff; }

.tooltip-info.bs-tooltip-top .arrow::before, .tooltip-info.bs-tooltip-auto[x-placement^="top"] .arrow::before, .tooltip-info > .tooltip.bs-tooltip-top .arrow::before, .tooltip-info > .tooltip.bs-tooltip-auto[x-placement^="top"] .arrow::before, .ngb-tooltip-info + ngb-tooltip-window.bs-tooltip-top .arrow::before, .ngb-tooltip-info + ngb-tooltip-window.bs-tooltip-auto[x-placement^="top"] .arrow::before {
  border-top-color: #28c3d7; }

.tooltip-info.bs-tooltip-right .arrow::before, .tooltip-info.bs-tooltip-auto[x-placement^="right"] .arrow::before, .tooltip-info > .tooltip.bs-tooltip-right .arrow::before, .tooltip-info > .tooltip.bs-tooltip-auto[x-placement^="right"] .arrow::before, .ngb-tooltip-info + ngb-tooltip-window.bs-tooltip-right .arrow::before, .ngb-tooltip-info + ngb-tooltip-window.bs-tooltip-auto[x-placement^="right"] .arrow::before {
  border-right-color: #28c3d7; }

.tooltip-info.bs-tooltip-bottom .arrow::before, .tooltip-info.bs-tooltip-auto[x-placement^="bottom"] .arrow::before, .tooltip-info > .tooltip.bs-tooltip-bottom .arrow::before, .tooltip-info > .tooltip.bs-tooltip-auto[x-placement^="bottom"] .arrow::before, .ngb-tooltip-info + ngb-tooltip-window.bs-tooltip-bottom .arrow::before, .ngb-tooltip-info + ngb-tooltip-window.bs-tooltip-auto[x-placement^="bottom"] .arrow::before {
  border-bottom-color: #28c3d7; }

.tooltip-info.bs-tooltip-left .arrow::before, .tooltip-info.bs-tooltip-auto[x-placement^="left"] .arrow::before, .tooltip-info > .tooltip.bs-tooltip-left .arrow::before, .tooltip-info > .tooltip.bs-tooltip-auto[x-placement^="left"] .arrow::before, .ngb-tooltip-info + ngb-tooltip-window.bs-tooltip-left .arrow::before, .ngb-tooltip-info + ngb-tooltip-window.bs-tooltip-auto[x-placement^="left"] .arrow::before {
  border-left-color: #28c3d7; }

.tooltip-warning .tooltip-inner, .tooltip-warning > .tooltip .tooltip-inner, .ngb-tooltip-warning + ngb-tooltip-window .tooltip-inner {
  background: #FFD950;
  color: #665720; }

.tooltip-warning.bs-tooltip-top .arrow::before, .tooltip-warning.bs-tooltip-auto[x-placement^="top"] .arrow::before, .tooltip-warning > .tooltip.bs-tooltip-top .arrow::before, .tooltip-warning > .tooltip.bs-tooltip-auto[x-placement^="top"] .arrow::before, .ngb-tooltip-warning + ngb-tooltip-window.bs-tooltip-top .arrow::before, .ngb-tooltip-warning + ngb-tooltip-window.bs-tooltip-auto[x-placement^="top"] .arrow::before {
  border-top-color: #FFD950; }

.tooltip-warning.bs-tooltip-right .arrow::before, .tooltip-warning.bs-tooltip-auto[x-placement^="right"] .arrow::before, .tooltip-warning > .tooltip.bs-tooltip-right .arrow::before, .tooltip-warning > .tooltip.bs-tooltip-auto[x-placement^="right"] .arrow::before, .ngb-tooltip-warning + ngb-tooltip-window.bs-tooltip-right .arrow::before, .ngb-tooltip-warning + ngb-tooltip-window.bs-tooltip-auto[x-placement^="right"] .arrow::before {
  border-right-color: #FFD950; }

.tooltip-warning.bs-tooltip-bottom .arrow::before, .tooltip-warning.bs-tooltip-auto[x-placement^="bottom"] .arrow::before, .tooltip-warning > .tooltip.bs-tooltip-bottom .arrow::before, .tooltip-warning > .tooltip.bs-tooltip-auto[x-placement^="bottom"] .arrow::before, .ngb-tooltip-warning + ngb-tooltip-window.bs-tooltip-bottom .arrow::before, .ngb-tooltip-warning + ngb-tooltip-window.bs-tooltip-auto[x-placement^="bottom"] .arrow::before {
  border-bottom-color: #FFD950; }

.tooltip-warning.bs-tooltip-left .arrow::before, .tooltip-warning.bs-tooltip-auto[x-placement^="left"] .arrow::before, .tooltip-warning > .tooltip.bs-tooltip-left .arrow::before, .tooltip-warning > .tooltip.bs-tooltip-auto[x-placement^="left"] .arrow::before, .ngb-tooltip-warning + ngb-tooltip-window.bs-tooltip-left .arrow::before, .ngb-tooltip-warning + ngb-tooltip-window.bs-tooltip-auto[x-placement^="left"] .arrow::before {
  border-left-color: #FFD950; }

.tooltip-danger .tooltip-inner, .tooltip-danger > .tooltip .tooltip-inner, .ngb-tooltip-danger + ngb-tooltip-window .tooltip-inner {
  background: #d9534f;
  color: #fff; }

.tooltip-danger.bs-tooltip-top .arrow::before, .tooltip-danger.bs-tooltip-auto[x-placement^="top"] .arrow::before, .tooltip-danger > .tooltip.bs-tooltip-top .arrow::before, .tooltip-danger > .tooltip.bs-tooltip-auto[x-placement^="top"] .arrow::before, .ngb-tooltip-danger + ngb-tooltip-window.bs-tooltip-top .arrow::before, .ngb-tooltip-danger + ngb-tooltip-window.bs-tooltip-auto[x-placement^="top"] .arrow::before {
  border-top-color: #d9534f; }

.tooltip-danger.bs-tooltip-right .arrow::before, .tooltip-danger.bs-tooltip-auto[x-placement^="right"] .arrow::before, .tooltip-danger > .tooltip.bs-tooltip-right .arrow::before, .tooltip-danger > .tooltip.bs-tooltip-auto[x-placement^="right"] .arrow::before, .ngb-tooltip-danger + ngb-tooltip-window.bs-tooltip-right .arrow::before, .ngb-tooltip-danger + ngb-tooltip-window.bs-tooltip-auto[x-placement^="right"] .arrow::before {
  border-right-color: #d9534f; }

.tooltip-danger.bs-tooltip-bottom .arrow::before, .tooltip-danger.bs-tooltip-auto[x-placement^="bottom"] .arrow::before, .tooltip-danger > .tooltip.bs-tooltip-bottom .arrow::before, .tooltip-danger > .tooltip.bs-tooltip-auto[x-placement^="bottom"] .arrow::before, .ngb-tooltip-danger + ngb-tooltip-window.bs-tooltip-bottom .arrow::before, .ngb-tooltip-danger + ngb-tooltip-window.bs-tooltip-auto[x-placement^="bottom"] .arrow::before {
  border-bottom-color: #d9534f; }

.tooltip-danger.bs-tooltip-left .arrow::before, .tooltip-danger.bs-tooltip-auto[x-placement^="left"] .arrow::before, .tooltip-danger > .tooltip.bs-tooltip-left .arrow::before, .tooltip-danger > .tooltip.bs-tooltip-auto[x-placement^="left"] .arrow::before, .ngb-tooltip-danger + ngb-tooltip-window.bs-tooltip-left .arrow::before, .ngb-tooltip-danger + ngb-tooltip-window.bs-tooltip-auto[x-placement^="left"] .arrow::before {
  border-left-color: #d9534f; }

.tooltip-dark .tooltip-inner, .tooltip-dark > .tooltip .tooltip-inner, .ngb-tooltip-dark + ngb-tooltip-window .tooltip-inner {
  background: #2f3337;
  color: #fff; }

.tooltip-dark.bs-tooltip-top .arrow::before, .tooltip-dark.bs-tooltip-auto[x-placement^="top"] .arrow::before, .tooltip-dark > .tooltip.bs-tooltip-top .arrow::before, .tooltip-dark > .tooltip.bs-tooltip-auto[x-placement^="top"] .arrow::before, .ngb-tooltip-dark + ngb-tooltip-window.bs-tooltip-top .arrow::before, .ngb-tooltip-dark + ngb-tooltip-window.bs-tooltip-auto[x-placement^="top"] .arrow::before {
  border-top-color: #2f3337; }

.tooltip-dark.bs-tooltip-right .arrow::before, .tooltip-dark.bs-tooltip-auto[x-placement^="right"] .arrow::before, .tooltip-dark > .tooltip.bs-tooltip-right .arrow::before, .tooltip-dark > .tooltip.bs-tooltip-auto[x-placement^="right"] .arrow::before, .ngb-tooltip-dark + ngb-tooltip-window.bs-tooltip-right .arrow::before, .ngb-tooltip-dark + ngb-tooltip-window.bs-tooltip-auto[x-placement^="right"] .arrow::before {
  border-right-color: #2f3337; }

.tooltip-dark.bs-tooltip-bottom .arrow::before, .tooltip-dark.bs-tooltip-auto[x-placement^="bottom"] .arrow::before, .tooltip-dark > .tooltip.bs-tooltip-bottom .arrow::before, .tooltip-dark > .tooltip.bs-tooltip-auto[x-placement^="bottom"] .arrow::before, .ngb-tooltip-dark + ngb-tooltip-window.bs-tooltip-bottom .arrow::before, .ngb-tooltip-dark + ngb-tooltip-window.bs-tooltip-auto[x-placement^="bottom"] .arrow::before {
  border-bottom-color: #2f3337; }

.tooltip-dark.bs-tooltip-left .arrow::before, .tooltip-dark.bs-tooltip-auto[x-placement^="left"] .arrow::before, .tooltip-dark > .tooltip.bs-tooltip-left .arrow::before, .tooltip-dark > .tooltip.bs-tooltip-auto[x-placement^="left"] .arrow::before, .ngb-tooltip-dark + ngb-tooltip-window.bs-tooltip-left .arrow::before, .ngb-tooltip-dark + ngb-tooltip-window.bs-tooltip-auto[x-placement^="left"] .arrow::before {
  border-left-color: #2f3337; }

.popover {
  box-shadow: 0 1px 6px rgba(0, 0, 0, 0.09); }
  .popover .arrow {
    z-index: 1; }

.modal-open .popover {
  z-index: 1091; }

.popover-secondary, .popover-secondary > .popover, .ngb-popover-secondary + ngb-popover-window {
  border-color: transparent;
  background: #8897AA; }
  .popover-secondary .popover-header, .popover-secondary > .popover .popover-header, .ngb-popover-secondary + ngb-popover-window .popover-header {
    border-color: rgba(255, 255, 255, 0.2);
    background: transparent;
    color: #fff; }
  .popover-secondary .popover-body, .popover-secondary > .popover .popover-body, .ngb-popover-secondary + ngb-popover-window .popover-body {
    background: transparent;
    color: #fff; }
  .popover-secondary > .arrow::before, .popover-secondary > .popover > .arrow::before, .ngb-popover-secondary + ngb-popover-window > .arrow::before {
    border-color: transparent; }
  .popover-secondary.bs-popover-top > .arrow::after, .popover-secondary.bs-popover-auto[x-placement^="top"] > .arrow::after, .popover-secondary > .popover.bs-popover-top > .arrow::after, .popover-secondary > .popover.bs-popover-auto[x-placement^="top"] > .arrow::after, .ngb-popover-secondary + ngb-popover-window.bs-popover-top > .arrow::after, .ngb-popover-secondary + ngb-popover-window.bs-popover-auto[x-placement^="top"] > .arrow::after {
    border-top-color: #8897AA; }
  .popover-secondary.bs-popover-right > .arrow::after, .popover-secondary.bs-popover-auto[x-placement^="right"] > .arrow::after, .popover-secondary > .popover.bs-popover-right > .arrow::after, .popover-secondary > .popover.bs-popover-auto[x-placement^="right"] > .arrow::after, .ngb-popover-secondary + ngb-popover-window.bs-popover-right > .arrow::after, .ngb-popover-secondary + ngb-popover-window.bs-popover-auto[x-placement^="right"] > .arrow::after {
    border-right-color: #8897AA; }
  .popover-secondary.bs-popover-bottom > .arrow::after, .popover-secondary.bs-popover-auto[x-placement^="bottom"] > .arrow::after, .popover-secondary > .popover.bs-popover-bottom > .arrow::after, .popover-secondary > .popover.bs-popover-auto[x-placement^="bottom"] > .arrow::after, .ngb-popover-secondary + ngb-popover-window.bs-popover-bottom > .arrow::after, .ngb-popover-secondary + ngb-popover-window.bs-popover-auto[x-placement^="bottom"] > .arrow::after {
    border-bottom-color: #8897AA; }
  .popover-secondary.bs-popover-left > .arrow::after, .popover-secondary.bs-popover-auto[x-placement^="left"] > .arrow::after, .popover-secondary > .popover.bs-popover-left > .arrow::after, .popover-secondary > .popover.bs-popover-auto[x-placement^="left"] > .arrow::after, .ngb-popover-secondary + ngb-popover-window.bs-popover-left > .arrow::after, .ngb-popover-secondary + ngb-popover-window.bs-popover-auto[x-placement^="left"] > .arrow::after {
    border-left-color: #8897AA; }

.popover-success, .popover-success > .popover, .ngb-popover-success + ngb-popover-window {
  border-color: transparent;
  background: #02BC77; }
  .popover-success .popover-header, .popover-success > .popover .popover-header, .ngb-popover-success + ngb-popover-window .popover-header {
    border-color: rgba(255, 255, 255, 0.2);
    background: transparent;
    color: #fff; }
  .popover-success .popover-body, .popover-success > .popover .popover-body, .ngb-popover-success + ngb-popover-window .popover-body {
    background: transparent;
    color: #fff; }
  .popover-success > .arrow::before, .popover-success > .popover > .arrow::before, .ngb-popover-success + ngb-popover-window > .arrow::before {
    border-color: transparent; }
  .popover-success.bs-popover-top > .arrow::after, .popover-success.bs-popover-auto[x-placement^="top"] > .arrow::after, .popover-success > .popover.bs-popover-top > .arrow::after, .popover-success > .popover.bs-popover-auto[x-placement^="top"] > .arrow::after, .ngb-popover-success + ngb-popover-window.bs-popover-top > .arrow::after, .ngb-popover-success + ngb-popover-window.bs-popover-auto[x-placement^="top"] > .arrow::after {
    border-top-color: #02BC77; }
  .popover-success.bs-popover-right > .arrow::after, .popover-success.bs-popover-auto[x-placement^="right"] > .arrow::after, .popover-success > .popover.bs-popover-right > .arrow::after, .popover-success > .popover.bs-popover-auto[x-placement^="right"] > .arrow::after, .ngb-popover-success + ngb-popover-window.bs-popover-right > .arrow::after, .ngb-popover-success + ngb-popover-window.bs-popover-auto[x-placement^="right"] > .arrow::after {
    border-right-color: #02BC77; }
  .popover-success.bs-popover-bottom > .arrow::after, .popover-success.bs-popover-auto[x-placement^="bottom"] > .arrow::after, .popover-success > .popover.bs-popover-bottom > .arrow::after, .popover-success > .popover.bs-popover-auto[x-placement^="bottom"] > .arrow::after, .ngb-popover-success + ngb-popover-window.bs-popover-bottom > .arrow::after, .ngb-popover-success + ngb-popover-window.bs-popover-auto[x-placement^="bottom"] > .arrow::after {
    border-bottom-color: #02BC77; }
  .popover-success.bs-popover-left > .arrow::after, .popover-success.bs-popover-auto[x-placement^="left"] > .arrow::after, .popover-success > .popover.bs-popover-left > .arrow::after, .popover-success > .popover.bs-popover-auto[x-placement^="left"] > .arrow::after, .ngb-popover-success + ngb-popover-window.bs-popover-left > .arrow::after, .ngb-popover-success + ngb-popover-window.bs-popover-auto[x-placement^="left"] > .arrow::after {
    border-left-color: #02BC77; }

.popover-info, .popover-info > .popover, .ngb-popover-info + ngb-popover-window {
  border-color: transparent;
  background: #28c3d7; }
  .popover-info .popover-header, .popover-info > .popover .popover-header, .ngb-popover-info + ngb-popover-window .popover-header {
    border-color: rgba(255, 255, 255, 0.2);
    background: transparent;
    color: #fff; }
  .popover-info .popover-body, .popover-info > .popover .popover-body, .ngb-popover-info + ngb-popover-window .popover-body {
    background: transparent;
    color: #fff; }
  .popover-info > .arrow::before, .popover-info > .popover > .arrow::before, .ngb-popover-info + ngb-popover-window > .arrow::before {
    border-color: transparent; }
  .popover-info.bs-popover-top > .arrow::after, .popover-info.bs-popover-auto[x-placement^="top"] > .arrow::after, .popover-info > .popover.bs-popover-top > .arrow::after, .popover-info > .popover.bs-popover-auto[x-placement^="top"] > .arrow::after, .ngb-popover-info + ngb-popover-window.bs-popover-top > .arrow::after, .ngb-popover-info + ngb-popover-window.bs-popover-auto[x-placement^="top"] > .arrow::after {
    border-top-color: #28c3d7; }
  .popover-info.bs-popover-right > .arrow::after, .popover-info.bs-popover-auto[x-placement^="right"] > .arrow::after, .popover-info > .popover.bs-popover-right > .arrow::after, .popover-info > .popover.bs-popover-auto[x-placement^="right"] > .arrow::after, .ngb-popover-info + ngb-popover-window.bs-popover-right > .arrow::after, .ngb-popover-info + ngb-popover-window.bs-popover-auto[x-placement^="right"] > .arrow::after {
    border-right-color: #28c3d7; }
  .popover-info.bs-popover-bottom > .arrow::after, .popover-info.bs-popover-auto[x-placement^="bottom"] > .arrow::after, .popover-info > .popover.bs-popover-bottom > .arrow::after, .popover-info > .popover.bs-popover-auto[x-placement^="bottom"] > .arrow::after, .ngb-popover-info + ngb-popover-window.bs-popover-bottom > .arrow::after, .ngb-popover-info + ngb-popover-window.bs-popover-auto[x-placement^="bottom"] > .arrow::after {
    border-bottom-color: #28c3d7; }
  .popover-info.bs-popover-left > .arrow::after, .popover-info.bs-popover-auto[x-placement^="left"] > .arrow::after, .popover-info > .popover.bs-popover-left > .arrow::after, .popover-info > .popover.bs-popover-auto[x-placement^="left"] > .arrow::after, .ngb-popover-info + ngb-popover-window.bs-popover-left > .arrow::after, .ngb-popover-info + ngb-popover-window.bs-popover-auto[x-placement^="left"] > .arrow::after {
    border-left-color: #28c3d7; }

.popover-warning, .popover-warning > .popover, .ngb-popover-warning + ngb-popover-window {
  border-color: transparent;
  background: #FFD950; }
  .popover-warning .popover-header, .popover-warning > .popover .popover-header, .ngb-popover-warning + ngb-popover-window .popover-header {
    border-color: rgba(102, 87, 32, 0.2);
    background: transparent;
    color: #665720; }
  .popover-warning .popover-body, .popover-warning > .popover .popover-body, .ngb-popover-warning + ngb-popover-window .popover-body {
    background: transparent;
    color: #665720; }
  .popover-warning > .arrow::before, .popover-warning > .popover > .arrow::before, .ngb-popover-warning + ngb-popover-window > .arrow::before {
    border-color: transparent; }
  .popover-warning.bs-popover-top > .arrow::after, .popover-warning.bs-popover-auto[x-placement^="top"] > .arrow::after, .popover-warning > .popover.bs-popover-top > .arrow::after, .popover-warning > .popover.bs-popover-auto[x-placement^="top"] > .arrow::after, .ngb-popover-warning + ngb-popover-window.bs-popover-top > .arrow::after, .ngb-popover-warning + ngb-popover-window.bs-popover-auto[x-placement^="top"] > .arrow::after {
    border-top-color: #FFD950; }
  .popover-warning.bs-popover-right > .arrow::after, .popover-warning.bs-popover-auto[x-placement^="right"] > .arrow::after, .popover-warning > .popover.bs-popover-right > .arrow::after, .popover-warning > .popover.bs-popover-auto[x-placement^="right"] > .arrow::after, .ngb-popover-warning + ngb-popover-window.bs-popover-right > .arrow::after, .ngb-popover-warning + ngb-popover-window.bs-popover-auto[x-placement^="right"] > .arrow::after {
    border-right-color: #FFD950; }
  .popover-warning.bs-popover-bottom > .arrow::after, .popover-warning.bs-popover-auto[x-placement^="bottom"] > .arrow::after, .popover-warning > .popover.bs-popover-bottom > .arrow::after, .popover-warning > .popover.bs-popover-auto[x-placement^="bottom"] > .arrow::after, .ngb-popover-warning + ngb-popover-window.bs-popover-bottom > .arrow::after, .ngb-popover-warning + ngb-popover-window.bs-popover-auto[x-placement^="bottom"] > .arrow::after {
    border-bottom-color: #FFD950; }
  .popover-warning.bs-popover-left > .arrow::after, .popover-warning.bs-popover-auto[x-placement^="left"] > .arrow::after, .popover-warning > .popover.bs-popover-left > .arrow::after, .popover-warning > .popover.bs-popover-auto[x-placement^="left"] > .arrow::after, .ngb-popover-warning + ngb-popover-window.bs-popover-left > .arrow::after, .ngb-popover-warning + ngb-popover-window.bs-popover-auto[x-placement^="left"] > .arrow::after {
    border-left-color: #FFD950; }

.popover-danger, .popover-danger > .popover, .ngb-popover-danger + ngb-popover-window {
  border-color: transparent;
  background: #d9534f; }
  .popover-danger .popover-header, .popover-danger > .popover .popover-header, .ngb-popover-danger + ngb-popover-window .popover-header {
    border-color: rgba(255, 255, 255, 0.2);
    background: transparent;
    color: #fff; }
  .popover-danger .popover-body, .popover-danger > .popover .popover-body, .ngb-popover-danger + ngb-popover-window .popover-body {
    background: transparent;
    color: #fff; }
  .popover-danger > .arrow::before, .popover-danger > .popover > .arrow::before, .ngb-popover-danger + ngb-popover-window > .arrow::before {
    border-color: transparent; }
  .popover-danger.bs-popover-top > .arrow::after, .popover-danger.bs-popover-auto[x-placement^="top"] > .arrow::after, .popover-danger > .popover.bs-popover-top > .arrow::after, .popover-danger > .popover.bs-popover-auto[x-placement^="top"] > .arrow::after, .ngb-popover-danger + ngb-popover-window.bs-popover-top > .arrow::after, .ngb-popover-danger + ngb-popover-window.bs-popover-auto[x-placement^="top"] > .arrow::after {
    border-top-color: #d9534f; }
  .popover-danger.bs-popover-right > .arrow::after, .popover-danger.bs-popover-auto[x-placement^="right"] > .arrow::after, .popover-danger > .popover.bs-popover-right > .arrow::after, .popover-danger > .popover.bs-popover-auto[x-placement^="right"] > .arrow::after, .ngb-popover-danger + ngb-popover-window.bs-popover-right > .arrow::after, .ngb-popover-danger + ngb-popover-window.bs-popover-auto[x-placement^="right"] > .arrow::after {
    border-right-color: #d9534f; }
  .popover-danger.bs-popover-bottom > .arrow::after, .popover-danger.bs-popover-auto[x-placement^="bottom"] > .arrow::after, .popover-danger > .popover.bs-popover-bottom > .arrow::after, .popover-danger > .popover.bs-popover-auto[x-placement^="bottom"] > .arrow::after, .ngb-popover-danger + ngb-popover-window.bs-popover-bottom > .arrow::after, .ngb-popover-danger + ngb-popover-window.bs-popover-auto[x-placement^="bottom"] > .arrow::after {
    border-bottom-color: #d9534f; }
  .popover-danger.bs-popover-left > .arrow::after, .popover-danger.bs-popover-auto[x-placement^="left"] > .arrow::after, .popover-danger > .popover.bs-popover-left > .arrow::after, .popover-danger > .popover.bs-popover-auto[x-placement^="left"] > .arrow::after, .ngb-popover-danger + ngb-popover-window.bs-popover-left > .arrow::after, .ngb-popover-danger + ngb-popover-window.bs-popover-auto[x-placement^="left"] > .arrow::after {
    border-left-color: #d9534f; }

.popover-dark, .popover-dark > .popover, .ngb-popover-dark + ngb-popover-window {
  border-color: transparent;
  background: #2f3337; }
  .popover-dark .popover-header, .popover-dark > .popover .popover-header, .ngb-popover-dark + ngb-popover-window .popover-header {
    border-color: rgba(255, 255, 255, 0.2);
    background: transparent;
    color: #fff; }
  .popover-dark .popover-body, .popover-dark > .popover .popover-body, .ngb-popover-dark + ngb-popover-window .popover-body {
    background: transparent;
    color: #fff; }
  .popover-dark > .arrow::before, .popover-dark > .popover > .arrow::before, .ngb-popover-dark + ngb-popover-window > .arrow::before {
    border-color: transparent; }
  .popover-dark.bs-popover-top > .arrow::after, .popover-dark.bs-popover-auto[x-placement^="top"] > .arrow::after, .popover-dark > .popover.bs-popover-top > .arrow::after, .popover-dark > .popover.bs-popover-auto[x-placement^="top"] > .arrow::after, .ngb-popover-dark + ngb-popover-window.bs-popover-top > .arrow::after, .ngb-popover-dark + ngb-popover-window.bs-popover-auto[x-placement^="top"] > .arrow::after {
    border-top-color: #2f3337; }
  .popover-dark.bs-popover-right > .arrow::after, .popover-dark.bs-popover-auto[x-placement^="right"] > .arrow::after, .popover-dark > .popover.bs-popover-right > .arrow::after, .popover-dark > .popover.bs-popover-auto[x-placement^="right"] > .arrow::after, .ngb-popover-dark + ngb-popover-window.bs-popover-right > .arrow::after, .ngb-popover-dark + ngb-popover-window.bs-popover-auto[x-placement^="right"] > .arrow::after {
    border-right-color: #2f3337; }
  .popover-dark.bs-popover-bottom > .arrow::after, .popover-dark.bs-popover-auto[x-placement^="bottom"] > .arrow::after, .popover-dark > .popover.bs-popover-bottom > .arrow::after, .popover-dark > .popover.bs-popover-auto[x-placement^="bottom"] > .arrow::after, .ngb-popover-dark + ngb-popover-window.bs-popover-bottom > .arrow::after, .ngb-popover-dark + ngb-popover-window.bs-popover-auto[x-placement^="bottom"] > .arrow::after {
    border-bottom-color: #2f3337; }
  .popover-dark.bs-popover-left > .arrow::after, .popover-dark.bs-popover-auto[x-placement^="left"] > .arrow::after, .popover-dark > .popover.bs-popover-left > .arrow::after, .popover-dark > .popover.bs-popover-auto[x-placement^="left"] > .arrow::after, .ngb-popover-dark + ngb-popover-window.bs-popover-left > .arrow::after, .ngb-popover-dark + ngb-popover-window.bs-popover-auto[x-placement^="left"] > .arrow::after {
    border-left-color: #2f3337; }

select.form-control[size="0"]:not([multiple]) {
  height: calc(1.54em + 0.876rem + 2px); }

select.form-control-sm[size="0"]:not([multiple]) {
  height: calc(1.5em + 0.376rem + 2px); }

select.form-control-lg[size="0"]:not([multiple]) {
  height: calc(1.5em + 1.5rem + 2px); }

.form-control-inverted {
  border-color: rgba(255, 255, 255, 0.3); }
  .form-control-inverted, .form-control-inverted:hover, .form-control-inverted:focus {
    background-color: rgba(255, 255, 255, 0.3);
    color: #fff; }
  .form-control-inverted::-webkit-input-placeholder {
    color: rgba(255, 255, 255, 0.7); }
  .form-control-inverted::-moz-placeholder {
    color: rgba(255, 255, 255, 0.7); }
  .form-control-inverted:-ms-input-placeholder {
    color: rgba(255, 255, 255, 0.7); }
  .form-control-inverted::-ms-input-placeholder {
    color: rgba(255, 255, 255, 0.7); }
  .form-control-inverted::placeholder {
    color: rgba(255, 255, 255, 0.7); }
  .form-control-inverted:disabled {
    background-color: rgba(255, 255, 255, 0.1) !important;
    color: #fff !important;
    border-color: rgba(255, 255, 255, 0.1) !important; }
  .form-control-inverted option {
    color: #4E5155 !important; }

.form-label,
.col-form-label {
  margin-bottom: calc(0.438rem - 2px);
  font-weight: 500;
  font-size: 0.83125rem;
  padding-bottom: 0; }

.form-label-sm,
.col-form-label-sm {
  font-size: 0.75rem; }

.form-label-lg,
.col-form-label-lg {
  font-size: 1rem; }

.form-check {
  min-height: 1.31418rem; }

.valid-feedback {
  display: none;
  font-size: 85%;
  width: 100%;
  margin-top: 0.25rem;
  color: #02BC77; }

.valid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: .1rem;
  font-size: 0.75rem;
  line-height: 1.47;
  color: #fff;
  background-color: #02bc77;
  border-radius: 0.25rem; }

.was-validated .form-control:valid ~ .valid-feedback,
.was-validated .form-control:valid ~ .valid-tooltip, .form-control.is-valid ~ .valid-feedback,
.form-control.is-valid ~ .valid-tooltip, .was-validated .custom-select:valid ~ .valid-feedback,
.was-validated .custom-select:valid ~ .valid-tooltip, .custom-select.is-valid ~ .valid-feedback,
.custom-select.is-valid ~ .valid-tooltip, .was-validated .form-control-file:valid ~ .valid-feedback,
.was-validated .form-control-file:valid ~ .valid-tooltip, .form-control-file.is-valid ~ .valid-feedback,
.form-control-file.is-valid ~ .valid-tooltip, .was-validated .custom-control-input:valid ~ .valid-feedback,
.was-validated .custom-control-input:valid ~ .valid-tooltip, .custom-control-input.is-valid ~ .valid-feedback,
.custom-control-input.is-valid ~ .valid-tooltip {
  display: block; }

.was-validated .form-control:valid, .form-control.is-valid, .was-validated .custom-select:valid, .custom-select.is-valid {
  border-color: #02BC77; }

.was-validated .custom-control[class] .custom-control-input:valid ~ .custom-control-label, .custom-control[class] .custom-control-input.is-valid ~ .custom-control-label {
  color: #02BC77; }

.was-validated .custom-control[class] .custom-control-input:valid ~ .custom-control-label::before,
.was-validated .custom-control[class] .custom-control-input:valid:focus ~ .custom-control-label::before,
.was-validated .custom-control[class] .custom-control-input:valid:active ~ .custom-control-label::before, .custom-control[class] .custom-control-input.is-valid ~ .custom-control-label::before,
.custom-control[class] .custom-control-input.is-valid:focus ~ .custom-control-label::before,
.custom-control[class] .custom-control-input.is-valid:active ~ .custom-control-label::before {
  border-color: #02BC77; }

.was-validated .custom-control[class] .custom-control-input:valid:focus ~ .custom-control-label::before, .custom-control[class] .custom-control-input.is-valid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 2px rgba(2, 188, 119, 0.4); }

.was-validated .custom-control[class] .custom-control-input:valid:checked ~ .custom-control-label::before, .custom-control[class] .custom-control-input.is-valid:checked ~ .custom-control-label::before {
  border-color: #02BC77;
  background-color: #02BC77; }

.was-validated .custom-checkbox .custom-control-input:valid:checked ~ .custom-control-label::before, .custom-checkbox .custom-control-input.is-valid:checked ~ .custom-control-label::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 9.5 7.5'%3E%3Cpolyline points='0.75 4.35 4.18 6.75 8.75 0.75' style='fill:none;stroke:%23fff;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px'/%3E%3C/svg%3E"); }

.was-validated .custom-radio .custom-control-input:valid:checked ~ .custom-control-label::before, .custom-radio .custom-control-input.is-valid:checked ~ .custom-control-label::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23fff'/%3E%3C/svg%3E"); }

.was-validated .custom-file-input:valid ~ .custom-file-label, .custom-file-input.is-valid ~ .custom-file-label {
  border-color: #02BC77; }
  .was-validated .custom-file-input:valid ~ .custom-file-label::after, .custom-file-input.is-valid ~ .custom-file-label::after {
    border-color: inherit; }

.invalid-feedback {
  display: none;
  font-size: 85%;
  width: 100%;
  margin-top: 0.25rem;
  color: #d9534f; }

.invalid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: .1rem;
  font-size: 0.75rem;
  line-height: 1.47;
  color: #fff;
  background-color: #d9534f;
  border-radius: 0.25rem; }

.was-validated .form-control:invalid ~ .invalid-feedback,
.was-validated .form-control:invalid ~ .invalid-tooltip, .form-control.is-invalid ~ .invalid-feedback,
.form-control.is-invalid ~ .invalid-tooltip, .was-validated .custom-select:invalid ~ .invalid-feedback,
.was-validated .custom-select:invalid ~ .invalid-tooltip, .custom-select.is-invalid ~ .invalid-feedback,
.custom-select.is-invalid ~ .invalid-tooltip, .was-validated .form-control-file:invalid ~ .invalid-feedback,
.was-validated .form-control-file:invalid ~ .invalid-tooltip, .form-control-file.is-invalid ~ .invalid-feedback,
.form-control-file.is-invalid ~ .invalid-tooltip, .was-validated .custom-control-input:invalid ~ .invalid-feedback,
.was-validated .custom-control-input:invalid ~ .invalid-tooltip, .custom-control-input.is-invalid ~ .invalid-feedback,
.custom-control-input.is-invalid ~ .invalid-tooltip {
  display: block; }

.was-validated .form-control:invalid, .form-control.is-invalid, .was-validated .custom-select:invalid, .custom-select.is-invalid {
  border-color: #d9534f; }

.was-validated .custom-control[class] .custom-control-input:invalid ~ .custom-control-label, .custom-control[class] .custom-control-input.is-invalid ~ .custom-control-label {
  color: #d9534f; }

.was-validated .custom-control[class] .custom-control-input:invalid ~ .custom-control-label::before,
.was-validated .custom-control[class] .custom-control-input:invalid:focus ~ .custom-control-label::before,
.was-validated .custom-control[class] .custom-control-input:invalid:active ~ .custom-control-label::before, .custom-control[class] .custom-control-input.is-invalid ~ .custom-control-label::before,
.custom-control[class] .custom-control-input.is-invalid:focus ~ .custom-control-label::before,
.custom-control[class] .custom-control-input.is-invalid:active ~ .custom-control-label::before {
  border-color: #d9534f; }

.was-validated .custom-control[class] .custom-control-input:invalid:focus ~ .custom-control-label::before, .custom-control[class] .custom-control-input.is-invalid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 2px rgba(217, 83, 79, 0.4); }

.was-validated .custom-control[class] .custom-control-input:invalid:checked ~ .custom-control-label::before, .custom-control[class] .custom-control-input.is-invalid:checked ~ .custom-control-label::before {
  border-color: #d9534f;
  background-color: #d9534f; }

.was-validated .custom-checkbox .custom-control-input:invalid:checked ~ .custom-control-label::before, .custom-checkbox .custom-control-input.is-invalid:checked ~ .custom-control-label::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 9.5 7.5'%3E%3Cpolyline points='0.75 4.35 4.18 6.75 8.75 0.75' style='fill:none;stroke:%23fff;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px'/%3E%3C/svg%3E"); }

.was-validated .custom-radio .custom-control-input:invalid:checked ~ .custom-control-label::before, .custom-radio .custom-control-input.is-invalid:checked ~ .custom-control-label::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23fff'/%3E%3C/svg%3E"); }

.was-validated .custom-file-input:invalid ~ .custom-file-label, .custom-file-input.is-invalid ~ .custom-file-label {
  border-color: #d9534f; }
  .was-validated .custom-file-input:invalid ~ .custom-file-label::after, .custom-file-input.is-invalid ~ .custom-file-label::after {
    border-color: inherit; }

.form-inline .custom-control {
  width: 100%; }

@media (min-width: 576px) {
  .form-inline .custom-control,
  .form-inline .custom-select,
  .form-inline .form-control-plaintext {
    width: auto; }
  .form-inline .form-text {
    margin-top: 0; } }

.custom-control {
  min-height: 1.125rem;
  cursor: default; }

.custom-control-label {
  position: static; }
  .custom-control-label::before {
    top: 0.0625rem;
    left: 0;
    background-position: center center;
    background-repeat: no-repeat;
    background-clip: padding-box;
    transition: all .2s;
    pointer-events: auto; }
  .custom-control-label::after {
    display: none; }

.custom-checkbox .custom-control-label::before {
  background-size: 65%; }

.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before {
  background-size: 0.5rem; }

.custom-radio .custom-control-label::before {
  background-size: 0.5rem; }

.custom-control-input:active ~ .custom-control-label::before {
  box-shadow: none; }

.custom-control-input:not(:checked):active ~ .custom-control-label::before {
  background-color: #fff; }

.custom-control-input:disabled ~ .custom-control-label::before {
  border-color: rgba(24, 28, 33, 0.1) !important;
  background-color: #f1f1f2 !important; }

.custom-control.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3E%3Cpath stroke='%23a3a4a6' d='M0 2h4'/%3E%3C/svg%3E"); }

.custom-control.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 9.5 7.5'%3E%3Cpolyline points='0.75 4.35 4.18 6.75 8.75 0.75' style='fill:none;stroke:%23a3a4a6;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px'/%3E%3C/svg%3E"); }

.custom-control.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23a3a4a6'/%3E%3C/svg%3E"); }

.custom-controls-stacked .custom-control {
  display: block;
  margin-bottom: .5rem; }

.custom-select {
  display: block;
  background-clip: padding-box; }

.custom-select-inverted {
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACIAAAAYCAYAAACfpi8JAAAABGdBTUEAALGPC/xhBQAAAJ5JREFUSA3t1G0KgCAMBuCMDtZlojOFhzVfUaFlH44N/0yIspw+vGhTCGHFNQ1u8+D16/IGqVHkB0vEEqEJ0P5CX3D78V+0x9qNWe/FNqtz7ogIz4B41IpBAGBgEgK1opBOTEWoQH5iLgg1yAfmhlCFPGCaCIwVO76YrNWwgePRTp/yZm4N04dg1TdAUYmfmjJx790gNDFLxBKhCdD+CQ3GHngvJTGKAAAAAElFTkSuQmCC"); }
  .custom-select-inverted, .custom-select-inverted:focus {
    background-color: rgba(255, 255, 255, 0.3);
    color: #fff;
    border-color: rgba(255, 255, 255, 0.3); }
  .custom-select-inverted:disabled {
    background-color: rgba(255, 255, 255, 0.1);
    color: #fff;
    border-color: rgba(255, 255, 255, 0.1); }
  .custom-select-inverted::-webkit-input-placeholder {
    color: rgba(255, 255, 255, 0.7); }
  .custom-select-inverted::-moz-placeholder {
    color: rgba(255, 255, 255, 0.7); }
  .custom-select-inverted:-ms-input-placeholder {
    color: rgba(255, 255, 255, 0.7); }
  .custom-select-inverted::-ms-input-placeholder {
    color: rgba(255, 255, 255, 0.7); }
  .custom-select-inverted::placeholder {
    color: rgba(255, 255, 255, 0.7); }
  .custom-select-inverted option {
    color: #4E5155; }

.custom-select-sm,
.input-group-sm .custom-select {
  padding-right: 2.5rem;
  background-position: right 0.625rem center;
  line-height: 1.5; }
  .custom-select-sm[size="0"]:not([multiple]),
  .input-group-sm .custom-select[size="0"]:not([multiple]) {
    padding-right: 2.5rem; }

.custom-select-lg,
.input-group-lg .custom-select {
  padding-right: 3.125rem;
  background-position: right 1.25rem center;
  line-height: 1.5; }
  .custom-select-lg[size="0"]:not([multiple]),
  .input-group-lg .custom-select[size="0"]:not([multiple]) {
    padding-right: 3.125rem; }

.custom-select[multiple],
.custom-select[size]:not([size="1"]) {
  padding-right: 0.875rem;
  padding-left: 0.875rem; }

.custom-select-sm[multiple], .custom-select-sm[size]:not([size="1"]),
.input-group-sm .custom-select[multiple],
.input-group-sm .custom-select[size]:not([size="1"]) {
  padding-right: 0.625rem;
  padding-left: 0.625rem; }

.custom-select-lg[multiple], .custom-select-lg[size]:not([size="1"]),
.input-group-lg .custom-select[multiple],
.input-group-lg .custom-select[size]:not([size="1"]) {
  padding-right: 1.25rem;
  padding-left: 1.25rem; }

.custom-file {
  display: block; }

.custom-file-label {
  background-clip: padding-box;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; }
  .custom-file-input:disabled ~ .custom-file-label {
    background: #f1f1f2; }
    .custom-file-input:disabled ~ .custom-file-label::before {
      opacity: .65; }

.custom-range::-webkit-slider-thumb {
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1), 0 1px 6px rgba(0, 0, 0, 0.09);
  transition: -webkit-transform .2s;
  transition: transform .2s;
  transition: transform .2s, -webkit-transform .2s;
  -webkit-transform-origin: center;
          transform-origin: center; }
  .custom-range::-webkit-slider-thumb:active {
    -webkit-transform: scale(1.4, 1.4);
            transform: scale(1.4, 1.4); }

.custom-range::-moz-range-thumb {
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1), 0 1px 6px rgba(0, 0, 0, 0.09);
  transition: -webkit-transform .2s;
  transition: transform .2s;
  transition: transform .2s, -webkit-transform .2s;
  transform-origin: center; }
  .custom-range::-moz-range-thumb:active {
    transform: scale(1.4, 1.4); }

.custom-range::-ms-thumb {
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1), 0 1px 6px rgba(0, 0, 0, 0.09);
  transition: -webkit-transform .2s;
  transition: transform .2s;
  transition: transform .2s, -webkit-transform .2s;
  transform-origin: center; }
  .custom-range::-ms-thumb:active {
    transform: scale(1.4, 1.4); }

.custom-range:disabled::-webkit-slider-runnable-track {
  background-color: rgba(24, 28, 33, 0.03); }

.custom-range:disabled::-moz-range-track {
  background-color: rgba(24, 28, 33, 0.03); }

.custom-range:disabled::-ms-fill-lower {
  background-color: rgba(24, 28, 33, 0.03); }

.custom-range:disabled::-ms-fill-upper {
  background-color: rgba(24, 28, 33, 0.03); }

.switcher {
  position: relative;
  display: inline-block;
  margin-right: 0.75rem;
  margin-bottom: 0;
  border-radius: 60rem;
  vertical-align: middle;
  font-weight: normal;
  cursor: default;
  padding-left: 2.375rem;
  min-height: 1.375rem;
  font-size: 0.894rem;
  line-height: 1.4; }
  .switcher .switcher-indicator {
    width: 2.375rem;
    height: 1.375rem;
    font-size: 0.625rem;
    line-height: 1.375rem;
    top: 0; }
  .switcher .switcher-label {
    top: 0.0617rem; }
  .switcher .switcher-input:checked ~ .switcher-indicator::after {
    left: 1rem; }
  .switcher .switcher-indicator::after {
    top: 0;
    margin: 0.25rem 0 0 0.25rem;
    width: 0.875rem;
    height: 0.875rem; }
  .switcher .switcher-no {
    padding-right: 0.25rem;
    padding-left: 1.125rem; }
  .switcher .switcher-yes {
    padding-right: 1.125rem;
    padding-left: 0.25rem; }
  @media (min-width: 576px) {
    .form-inline .switcher {
      display: block;
      margin-right: 0; } }

.switcher-input {
  position: absolute;
  z-index: -1;
  margin: 0;
  padding: 0;
  opacity: 0; }

.switcher-indicator {
  position: absolute;
  left: 0;
  overflow: hidden;
  border-radius: 60rem;
  background: rgba(24, 28, 33, 0.1);
  color: rgba(24, 28, 33, 0.3);
  font-weight: bold;
  cursor: default;
  transition-duration: .2s;
  transition-property: left, right, background, box-shadow;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }

.switcher-label {
  position: relative;
  display: inline-block;
  padding-left: 0.5rem;
  color: #4E5155;
  font-weight: 400;
  cursor: default; }

.switcher-no,
.switcher-yes {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  transition-duration: .2s;
  transition-property: left, right; }

.switcher-no {
  left: 0; }

.switcher-yes {
  left: -100%; }
  .switcher-input:not(:checked) ~ .switcher-indicator .switcher-yes {
    color: transparent; }

.switcher-input:checked ~ .switcher-indicator .switcher-no {
  left: 100%;
  color: transparent; }

.switcher-input:checked ~ .switcher-indicator .switcher-yes {
  left: 0; }

.switcher-indicator::after {
  content: "";
  position: absolute;
  left: 0;
  display: block;
  border-radius: 999px;
  background: #fff;
  box-shadow: 0 0 0 1px rgba(24, 28, 33, 0.04), 0 1px 6px rgba(24, 28, 33, 0.09);
  transition-duration: .2s;
  transition-property: left, right, background; }

.switcher-input:disabled ~ .switcher-indicator {
  opacity: .5; }
  .switcher-input:disabled ~ .switcher-indicator::after {
    box-shadow: none; }

.switcher-input:disabled ~ .switcher-label {
  color: #a3a4a6; }

.switchers-stacked::after {
  display: block;
  clear: both;
  content: ""; }

.switchers-stacked .switcher {
  display: block;
  margin-right: 0;
  margin-bottom: 0.5rem; }

.switcher-square,
.switcher-square .switcher-indicator {
  border-radius: 0.25rem; }

.switcher-square .switcher-indicator::after {
  border-radius: calc(0.25rem - 2px); }

.switcher-sm,
.form-group-sm .switcher {
  padding-left: 2rem;
  min-height: 1.125rem;
  font-size: 0.75rem;
  line-height: 1.486; }
  .switcher-sm .switcher-indicator,
  .form-group-sm .switcher .switcher-indicator {
    width: 2rem;
    height: 1.125rem;
    font-size: 0.625rem;
    line-height: 1.125rem;
    top: 0; }
  .switcher-sm .switcher-label,
  .form-group-sm .switcher .switcher-label {
    top: 0.00525rem; }
  .switcher-sm .switcher-input:checked ~ .switcher-indicator::after,
  .form-group-sm .switcher .switcher-input:checked ~ .switcher-indicator::after {
    left: 0.875rem; }
  .switcher-sm .switcher-indicator::after,
  .form-group-sm .switcher .switcher-indicator::after {
    top: 0;
    margin: 0.25rem 0 0 0.25rem;
    width: 0.625rem;
    height: 0.625rem; }
  .switcher-sm .switcher-no,
  .form-group-sm .switcher .switcher-no {
    padding-right: 0.25rem;
    padding-left: 0.875rem; }
  .switcher-sm .switcher-yes,
  .form-group-sm .switcher .switcher-yes {
    padding-right: 0.875rem;
    padding-left: 0.25rem; }

.switcher-lg,
.form-group-lg .switcher {
  padding-left: 3.25rem;
  min-height: 1.75rem;
  font-size: 1rem;
  line-height: 1.47; }
  .switcher-lg .switcher-indicator,
  .form-group-lg .switcher .switcher-indicator {
    width: 3.25rem;
    height: 1.75rem;
    font-size: 0.625rem;
    line-height: 1.75rem;
    top: 0; }
  .switcher-lg .switcher-label,
  .form-group-lg .switcher .switcher-label {
    top: 0.14rem; }
  .switcher-lg .switcher-input:checked ~ .switcher-indicator::after,
  .form-group-lg .switcher .switcher-input:checked ~ .switcher-indicator::after {
    left: 1.5rem; }
  .switcher-lg .switcher-indicator::after,
  .form-group-lg .switcher .switcher-indicator::after {
    top: 0;
    margin: 0.25rem 0 0 0.25rem;
    width: 1.25rem;
    height: 1.25rem; }
  .switcher-lg .switcher-no,
  .form-group-lg .switcher .switcher-no {
    padding-right: 0.25rem;
    padding-left: 1.5rem; }
  .switcher-lg .switcher-yes,
  .form-group-lg .switcher .switcher-yes {
    padding-right: 1.5rem;
    padding-left: 0.25rem; }

.switcher-secondary.switcher .switcher-input:checked ~ .switcher-indicator {
  background: #8897AA;
  color: #fff; }

.switcher-secondary.switcher .switcher-input:focus ~ .switcher-indicator {
  box-shadow: 0 0 0 2px rgba(136, 151, 170, 0.4); }

.switcher-secondary.switcher .switcher-input:active ~ .switcher-indicator {
  box-shadow: none; }

.switcher-success.switcher .switcher-input:checked ~ .switcher-indicator {
  background: #02BC77;
  color: #fff; }

.switcher-success.switcher .switcher-input:focus ~ .switcher-indicator {
  box-shadow: 0 0 0 2px rgba(2, 188, 119, 0.4); }

.switcher-success.switcher .switcher-input:active ~ .switcher-indicator {
  box-shadow: none; }

.switcher-info.switcher .switcher-input:checked ~ .switcher-indicator {
  background: #28c3d7;
  color: #fff; }

.switcher-info.switcher .switcher-input:focus ~ .switcher-indicator {
  box-shadow: 0 0 0 2px rgba(40, 195, 215, 0.4); }

.switcher-info.switcher .switcher-input:active ~ .switcher-indicator {
  box-shadow: none; }

.switcher-warning.switcher .switcher-input:checked ~ .switcher-indicator {
  background: #FFD950;
  color: #665720; }

.switcher-warning.switcher .switcher-input:focus ~ .switcher-indicator {
  box-shadow: 0 0 0 2px rgba(255, 217, 80, 0.4); }

.switcher-warning.switcher .switcher-input:active ~ .switcher-indicator {
  box-shadow: none; }

.switcher-danger.switcher .switcher-input:checked ~ .switcher-indicator {
  background: #d9534f;
  color: #fff; }

.switcher-danger.switcher .switcher-input:focus ~ .switcher-indicator {
  box-shadow: 0 0 0 2px rgba(217, 83, 79, 0.4); }

.switcher-danger.switcher .switcher-input:active ~ .switcher-indicator {
  box-shadow: none; }

.switcher-dark.switcher .switcher-input:checked ~ .switcher-indicator {
  background: rgba(24, 28, 33, 0.9);
  color: #fff; }

.switcher-dark.switcher .switcher-input:focus ~ .switcher-indicator {
  box-shadow: 0 0 0 2px rgba(24, 28, 33, 0.4); }

.switcher-dark.switcher .switcher-input:active ~ .switcher-indicator {
  box-shadow: none; }

.switcher .valid-feedback,
.switcher .invalid-feedback {
  padding-left: 0.5rem; }

.was-validated .switcher-input[class]:valid:checked ~ .switcher-indicator, .switcher-input[class].is-valid:checked ~ .switcher-indicator {
  background: #02BC77;
  color: #fff; }

.was-validated .switcher-input[class]:valid:focus ~ .switcher-indicator, .switcher-input[class].is-valid:focus ~ .switcher-indicator {
  box-shadow: 0 0 0 2px rgba(2, 188, 119, 0.4); }

.was-validated .switcher-input[class]:valid:active ~ .switcher-indicator, .switcher-input[class].is-valid:active ~ .switcher-indicator {
  box-shadow: none; }

.was-validated .switcher-input[class]:valid ~ .switcher-label, .switcher-input[class].is-valid ~ .switcher-label {
  color: #02BC77; }

.was-validated .switcher-input[class]:valid ~ .valid-feedback,
.was-validated .switcher-input[class]:valid ~ .valid-tooltip, .switcher-input[class].is-valid ~ .valid-feedback,
.switcher-input[class].is-valid ~ .valid-tooltip {
  display: block; }

.was-validated .switcher-input[class]:invalid:checked ~ .switcher-indicator, .switcher-input[class].is-invalid:checked ~ .switcher-indicator {
  background: #d9534f;
  color: #fff; }

.was-validated .switcher-input[class]:invalid:focus ~ .switcher-indicator, .switcher-input[class].is-invalid:focus ~ .switcher-indicator {
  box-shadow: 0 0 0 2px rgba(217, 83, 79, 0.4); }

.was-validated .switcher-input[class]:invalid:active ~ .switcher-indicator, .switcher-input[class].is-invalid:active ~ .switcher-indicator {
  box-shadow: none; }

.was-validated .switcher-input[class]:invalid ~ .switcher-label, .switcher-input[class].is-invalid ~ .switcher-label {
  color: #d9534f; }

.was-validated .switcher-input[class]:invalid ~ .invalid-feedback,
.was-validated .switcher-input[class]:invalid ~ .invalid-tooltip, .switcher-input[class].is-invalid ~ .invalid-feedback,
.switcher-input[class].is-invalid ~ .invalid-tooltip {
  display: block; }

.input-group .custom-select {
  -ms-flex: 0 1 auto;
      flex: 0 1 auto;
  width: auto; }

.input-group-text {
  background-clip: padding-box; }

.input-group > .input-group-append > .btn-group > .btn,
.input-group > .input-group-prepend:first-child > .btn-group:not(:first-child) > .btn,
.input-group > .input-group-prepend:not(:first-child) > .btn-group > .btn {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0; }

.input-group > .input-group-prepend > .btn-group > .btn,
.input-group > .input-group-append:last-child > .btn-group:not(:last-child) > .btn,
.input-group > .input-group-append:not(:last-child) > .btn-group > .btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0; }

.input-group-append .btn + .btn-group,
.input-group-append .btn-group + .btn,
.input-group-append .btn-group + .btn-group,
.input-group-append .btn-group + .input-group-text,
.input-group-append .input-group-text + .btn-group,
.input-group-prepend .btn + .btn-group,
.input-group-prepend .btn-group + .btn,
.input-group-prepend .btn-group + .btn-group,
.input-group-prepend .btn-group + .input-group-text,
.input-group-prepend .input-group-text + .btn-group {
  margin-left: -1px; }

.modal {
  z-index: 1090; }

.modal-backdrop {
  z-index: 1089; }

.modal-content {
  box-shadow: 0 1px 6px rgba(0, 0, 0, 0.09); }

.modal-header {
  position: relative;
  padding-right: 2.5625rem; }

.modal-footer {
  padding: 1.25rem 1.5625rem; }

.modal-header .close,
.modal-slide .close {
  position: absolute;
  top: 50%;
  right: 1.5625rem;
  margin: 0;
  padding: 0;
  line-height: 1.47;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%); }

@media (min-width: 576px) {
  .modal-content {
    box-shadow: 0 1px 6px rgba(0, 0, 0, 0.09); }
  ngb-modal-window.modal-sm {
    max-width: none; }
  .modal-sm .modal-dialog {
    max-width: 22.5rem; } }

@media (min-width: 992px) {
  ngb-modal-window.modal-lg,
  ngb-modal-window.modal-xl {
    max-width: none; }
  .modal-lg .modal-dialog,
  .modal-xl .modal-dialog {
    max-width: 50rem; } }

@media (min-width: 1200px) {
  ngb-modal-window.modal-xl {
    max-width: none; }
  .modal-xl .modal-dialog {
    max-width: 1140px; } }

.modal-top .modal-dialog {
  margin-top: 0; }

.modal-top .modal-content {
  border-top-left-radius: 0;
  border-top-right-radius: 0; }

.modal-slide,
.modal-slide .modal {
  overflow: hidden !important;
  padding: 0 !important; }

.modal-slide .modal-dialog {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: auto;
  margin: 0;
  max-width: none;
  width: 100%; }
  @media (min-width: 576px) {
    .modal-slide .modal-dialog {
      width: 20rem; } }

.modal-slide .modal-content {
  overflow: auto;
  padding-top: 3.22127rem;
  padding-bottom: 3.22127rem;
  height: 100%;
  border-radius: 0; }

.modal-slide .modal-body {
  -ms-flex-positive: 0;
      flex-grow: 0;
  margin: auto 0;
  padding-top: 0;
  padding-bottom: 0; }

.modal-slide .close {
  top: 0.625rem;
  z-index: 10;
  -webkit-transform: none;
          transform: none; }

.modal-fill-in .modal-dialog {
  display: -ms-flexbox;
  display: flex;
  margin: 0 auto;
  padding-top: 3.22127rem;
  padding-bottom: 3.22127rem;
  min-height: 100vh; }

.modal-fill-in .modal-content {
  margin: auto;
  width: 100%;
  border: 0;
  background: transparent;
  box-shadow: none; }

.modal-fill-in .close {
  position: absolute;
  top: -2rem;
  right: 1.5625rem;
  font-size: 2rem;
  -webkit-transform: none;
          transform: none; }

.modal.fade .modal-dialog {
  -webkit-transform: translateY(150px) scale(0.8);
          transform: translateY(150px) scale(0.8); }

.modal.show .modal-dialog {
  -webkit-transform: translateY(0) scale(1);
          transform: translateY(0) scale(1); }

.modal-top.fade .modal-dialog,
.modal-top .modal.fade .modal-dialog {
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%); }

.modal-top.show .modal-dialog,
.modal-top .modal.show .modal-dialog {
  -webkit-transform: translateY(0);
          transform: translateY(0); }

.modal-slide.fade .modal-dialog,
.modal-slide .modal.fade .modal-dialog {
  -webkit-transform: translateX(100%);
          transform: translateX(100%); }

.modal-slide.show .modal-dialog,
.modal-slide .modal.show .modal-dialog {
  -webkit-transform: translateX(0) !important;
          transform: translateX(0) !important; }

.modal-fill-in.fade .modal-dialog,
.modal-fill-in .modal.fade .modal-dialog {
  -webkit-transform: scale(0.5, 0.5);
          transform: scale(0.5, 0.5); }

.modal-fill-in.show .modal-dialog,
.modal-fill-in .modal.show .modal-dialog {
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1); }

.breadcrumb-item,
.breadcrumb-item a {
  color: #a3a4a6; }
  .breadcrumb-item:hover, .breadcrumb-item:focus,
  .breadcrumb-item a:hover,
  .breadcrumb-item a:focus {
    color: #4E5155; }

.breadcrumb-item.active a, .breadcrumb-item.active a:hover, .breadcrumb-item.active a:focus, .breadcrumb-item.active a:active {
  color: inherit; }

.list-group-item-secondary {
  border-color: rgba(0, 0, 0, 0.07);
  background-color: #f3f5f7;
  color: #616263; }

a.list-group-item-secondary,
button.list-group-item-secondary {
  color: #616263; }
  a.list-group-item-secondary:hover, a.list-group-item-secondary:focus,
  button.list-group-item-secondary:hover,
  button.list-group-item-secondary:focus {
    background-color: #f1f3f5;
    color: #616263; }
  a.list-group-item-secondary.active,
  button.list-group-item-secondary.active {
    border-color: #8897AA;
    background-color: #8897AA;
    color: #616263; }

.list-group-item-success {
  border-color: rgba(0, 0, 0, 0.07);
  background-color: #e6f8f1;
  color: #5c6360; }

a.list-group-item-success,
button.list-group-item-success {
  color: #5c6360; }
  a.list-group-item-success:hover, a.list-group-item-success:focus,
  button.list-group-item-success:hover,
  button.list-group-item-success:focus {
    background-color: #e4f6ef;
    color: #5c6360; }
  a.list-group-item-success.active,
  button.list-group-item-success.active {
    border-color: #02BC77;
    background-color: #02BC77;
    color: #5c6360; }

.list-group-item-info {
  border-color: rgba(0, 0, 0, 0.07);
  background-color: #eaf9fb;
  color: #5e6464; }

a.list-group-item-info,
button.list-group-item-info {
  color: #5e6464; }
  a.list-group-item-info:hover, a.list-group-item-info:focus,
  button.list-group-item-info:hover,
  button.list-group-item-info:focus {
    background-color: #e8f7f8;
    color: #5e6464; }
  a.list-group-item-info.active,
  button.list-group-item-info.active {
    border-color: #28c3d7;
    background-color: #28c3d7;
    color: #5e6464; }

.list-group-item-warning {
  border-color: rgba(0, 0, 0, 0.07);
  background-color: #fffbee;
  color: #66645f; }

a.list-group-item-warning,
button.list-group-item-warning {
  color: #66645f; }
  a.list-group-item-warning:hover, a.list-group-item-warning:focus,
  button.list-group-item-warning:hover,
  button.list-group-item-warning:focus {
    background-color: #fcf8ec;
    color: #66645f; }
  a.list-group-item-warning.active,
  button.list-group-item-warning.active {
    border-color: #FFD950;
    background-color: #FFD950;
    color: #66645f; }

.list-group-item-danger {
  border-color: rgba(0, 0, 0, 0.07);
  background-color: #fbeeed;
  color: #645f5f; }

a.list-group-item-danger,
button.list-group-item-danger {
  color: #645f5f; }
  a.list-group-item-danger:hover, a.list-group-item-danger:focus,
  button.list-group-item-danger:hover,
  button.list-group-item-danger:focus {
    background-color: #f8eceb;
    color: #645f5f; }
  a.list-group-item-danger.active,
  button.list-group-item-danger.active {
    border-color: #d9534f;
    background-color: #d9534f;
    color: #645f5f; }

.list-group-item-dark {
  border-color: rgba(0, 0, 0, 0.07);
  background-color: #e8e8e9;
  color: #5d5d5d; }

a.list-group-item-dark,
button.list-group-item-dark {
  color: #5d5d5d; }
  a.list-group-item-dark:hover, a.list-group-item-dark:focus,
  button.list-group-item-dark:hover,
  button.list-group-item-dark:focus {
    background-color: #e6e6e7;
    color: #5d5d5d; }
  a.list-group-item-dark.active,
  button.list-group-item-dark.active {
    border-color: rgba(24, 28, 33, 0.9);
    background-color: rgba(24, 28, 33, 0.9);
    color: #5d5d5d; }

.navbar {
  z-index: 2; }

.fixed-top {
  z-index: 1030; }

.navbar.navbar-dark {
  color: rgba(255, 255, 255, 0.8); }

.navbar-dark .navbar-nav .nav-link.disabled {
  color: rgba(255, 255, 255, 0.4) !important; }

.navbar.navbar-light {
  color: rgba(24, 28, 33, 0.4); }

.navbar-light .navbar-nav .nav-link.disabled {
  color: rgba(24, 28, 33, 0.2) !important; }

.navbar-collapse,
.navbar-brand,
.navbar-text {
  -ms-flex-negative: 1;
      flex-shrink: 1; }

.navbar-dark hr {
  border-color: rgba(255, 255, 255, 0.1); }

.navbar-light hr {
  border-color: rgba(24, 28, 33, 0.06); }

.navbar-icon {
  font-size: 130%; }

.navbar-search-box {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  margin: 0; }
  .navbar-search-box:not(.active) {
    cursor: pointer; }

.navbar-search-input {
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  -ms-flex-align: center;
      align-items: center;
  max-width: 0;
  transition: max-width .3s ease-in-out; }
  .navbar-search-box.active .navbar-search-input {
    max-width: 100vw; }
  .navbar-search-input .form-control {
    padding-right: 0;
    padding-left: 0;
    width: auto;
    border: 0;
    border-radius: 0;
    background: none;
    color: inherit !important; }
    .navbar-dark .navbar-search-input .form-control::-webkit-input-placeholder {
      color: rgba(255, 255, 255, 0.4); }
    .navbar-dark .navbar-search-input .form-control::-moz-placeholder {
      color: rgba(255, 255, 255, 0.4); }
    .navbar-dark .navbar-search-input .form-control:-ms-input-placeholder {
      color: rgba(255, 255, 255, 0.4); }
    .navbar-dark .navbar-search-input .form-control::-ms-input-placeholder {
      color: rgba(255, 255, 255, 0.4); }
    .navbar-dark .navbar-search-input .form-control::placeholder {
      color: rgba(255, 255, 255, 0.4); }
    .navbar-light .navbar-search-input .form-control::-webkit-input-placeholder {
      color: rgba(24, 28, 33, 0.2); }
    .navbar-light .navbar-search-input .form-control::-moz-placeholder {
      color: rgba(24, 28, 33, 0.2); }
    .navbar-light .navbar-search-input .form-control:-ms-input-placeholder {
      color: rgba(24, 28, 33, 0.2); }
    .navbar-light .navbar-search-input .form-control::-ms-input-placeholder {
      color: rgba(24, 28, 33, 0.2); }
    .navbar-light .navbar-search-input .form-control::placeholder {
      color: rgba(24, 28, 33, 0.2); }

.navbar-search-cancel {
  color: inherit !important;
  font-weight: 100;
  font-size: 1.55em;
  line-height: 1;
  opacity: .5; }
  .navbar-search-cancel:hover, .navbar-search-cancel:focus {
    opacity: 1; }

.navbar-expand-sm .navbar-search-box.nav-link {
  padding-top: 0;
  padding-bottom: 0; }

@media (max-width: 575.98px) {
  .navbar-expand-sm .navbar-search-input {
    max-width: 100vw;
    width: 100%; }
  .navbar-expand-sm .navbar-search-input .form-control {
    width: 100% !important; }
  .navbar-expand-sm .navbar-search-cancel {
    display: none; }
  .navbar-expand-sm.navbar-dark .navbar-search-box {
    color: #fff !important; }
  .navbar-expand-sm.navbar-light .navbar-search-box {
    color: #4E5155 !important; } }

@media (min-width: 576px) {
  .navbar-expand-md .navbar-search-box.nav-link {
    padding-top: 0;
    padding-bottom: 0; } }

@media (max-width: 767.98px) {
  .navbar-expand-md .navbar-search-input {
    max-width: 100vw;
    width: 100%; }
  .navbar-expand-md .navbar-search-input .form-control {
    width: 100% !important; }
  .navbar-expand-md .navbar-search-cancel {
    display: none; }
  .navbar-expand-md.navbar-dark .navbar-search-box {
    color: #fff !important; }
  .navbar-expand-md.navbar-light .navbar-search-box {
    color: #4E5155 !important; } }

@media (min-width: 768px) {
  .navbar-expand-lg .navbar-search-box.nav-link {
    padding-top: 0;
    padding-bottom: 0; } }

@media (max-width: 991.98px) {
  .navbar-expand-lg .navbar-search-input {
    max-width: 100vw;
    width: 100%; }
  .navbar-expand-lg .navbar-search-input .form-control {
    width: 100% !important; }
  .navbar-expand-lg .navbar-search-cancel {
    display: none; }
  .navbar-expand-lg.navbar-dark .navbar-search-box {
    color: #fff !important; }
  .navbar-expand-lg.navbar-light .navbar-search-box {
    color: #4E5155 !important; } }

@media (min-width: 992px) {
  .navbar-expand-xl .navbar-search-box.nav-link {
    padding-top: 0;
    padding-bottom: 0; } }

@media (max-width: 1199.98px) {
  .navbar-expand-xl .navbar-search-input {
    max-width: 100vw;
    width: 100%; }
  .navbar-expand-xl .navbar-search-input .form-control {
    width: 100% !important; }
  .navbar-expand-xl .navbar-search-cancel {
    display: none; }
  .navbar-expand-xl.navbar-dark .navbar-search-box {
    color: #fff !important; }
  .navbar-expand-xl.navbar-light .navbar-search-box {
    color: #4E5155 !important; } }

@media (min-width: 1200px) {
  .navbar-expand .navbar-search-box.nav-link {
    padding-top: 0;
    padding-bottom: 0; } }

.navbar-expand .navbar-search-input {
  max-width: 100vw;
  width: 100%; }

.navbar-expand .navbar-search-input .form-control {
  width: 100% !important; }

.navbar-expand .navbar-search-cancel {
  display: none; }

.navbar-expand.navbar-dark .navbar-search-box {
  color: #fff !important; }

.navbar-expand.navbar-light .navbar-search-box {
  color: #4E5155 !important; }

.mega-dropdown .dropdown-menu {
  width: 100%; }

.mega-dropdown .dropdown-toggle {
  outline: 0; }

.card {
  border-radius: 8px;
  background-clip: padding-box;
  box-shadow: 0 1px 4px rgba(24, 28, 33, 0.012); }

.card-link {
  display: inline-block; }

.card-header {
  line-height: 1.54; }

.card-header,
.card-footer,
.card hr {
  border-color: rgba(24, 28, 33, 0.075); }

.card .list-group-item {
  border-color: #eeeeee; }

.card .row-bordered > [class^="col-"]::before, .card .row-bordered > [class^="col-"]::after,
.card .row-bordered > [class*=" col-"]::before,
.card .row-bordered > [class*=" col-"]::after,
.card .row-bordered > [class^="col "]::before,
.card .row-bordered > [class^="col "]::after,
.card .row-bordered > [class*=" col "]::before,
.card .row-bordered > [class*=" col "]::after,
.card .row-bordered > [class$=" col"]::before,
.card .row-bordered > [class$=" col"]::after,
.card .row-bordered > [class="col"]::before,
.card .row-bordered > [class="col"]::after {
  border-color: rgba(24, 28, 33, 0.075); }

.card-header.with-elements,
.card-title.with-elements {
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }

.card-header.with-elements {
  padding-top: 0.4375rem;
  padding-bottom: 0.4375rem; }

.card-header-elements,
.card-title-elements {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .card-header-elements + .card-header-elements,
  .card-header-elements > * + *,
  .card-title-elements + .card-header-elements,
  .card-title-elements > * + *, .card-header-elements +
  .card-title-elements,
  .card-title-elements +
  .card-title-elements {
    margin-left: .25rem; }

.card-header-title {
  padding: 0.4375rem 0; }

.card-header-elements {
  padding-top: .25rem;
  padding-bottom: .25rem; }

.card > .list-group .list-group-item {
  padding-right: 1.5rem;
  padding-left: 1.5rem; }

.card-condenced .card-header,
.card-condenced .card-footer,
.card-condenced > .list-group .list-group-item {
  padding-right: 1rem;
  padding-left: 1rem; }

.card-condenced .card-body,
.card-condenced .card-img-overlay {
  padding: 1rem; }

html:not([dir=rtl]) .card-hover[class],
html[dir=rtl] .card-hover[class] {
  transition: all .2s; }
  html:not([dir=rtl]) .card-hover[class]:not(:hover),
  html[dir=rtl] .card-hover[class]:not(:hover) {
    color: #4E5155 !important;
    border-color: transparent !important;
    background: transparent !important;
    box-shadow: none !important; }

.collapse-icon {
  position: relative;
  display: block;
  -ms-flex-item-align: center;
      align-self: center;
  width: .875rem;
  height: .875rem; }
  .collapse-icon::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    margin-top: -.25rem;
    margin-left: -.25rem;
    width: .5rem;
    height: .5rem;
    border-bottom: 0.0625rem solid rgba(24, 28, 33, 0.3);
    border-left: 0.0625rem solid rgba(24, 28, 33, 0.3);
    transition: all .3s;
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg); }
    [aria-expanded="true"] .collapse-icon::after {
      -webkit-transform: rotate(135deg);
              transform: rotate(135deg); }

.accordion > .card {
  border-radius: 0.25rem !important;
  border: 1px solid rgba(24, 28, 33, 0.06) !important; }
  .accordion > .card .card-header:last-child {
    border-bottom: 0; }

.close:focus {
  outline: 0; }

.toast.bs4-toast {
  background-color: rgba(255, 255, 255, 0.85);
  background-clip: padding-box; }

.bs4-toast[class^="bg-"],
.bs4-toast[class*=" bg-"] {
  border: none; }

.bg-secondary.bs4-toast {
  color: #fff;
  background-color: rgba(136, 151, 170, 0.9) !important; }
  .bg-secondary.bs4-toast .toast-header {
    color: #fff;
    background-color: rgba(255, 255, 255, 0.1); }

.bg-success.bs4-toast {
  color: #fff;
  background-color: rgba(2, 188, 119, 0.9) !important; }
  .bg-success.bs4-toast .toast-header {
    color: #fff;
    background-color: rgba(255, 255, 255, 0.1); }

.bg-info.bs4-toast {
  color: #fff;
  background-color: rgba(40, 195, 215, 0.9) !important; }
  .bg-info.bs4-toast .toast-header {
    color: #fff;
    background-color: rgba(255, 255, 255, 0.1); }

.bg-warning.bs4-toast {
  color: #665720;
  background-color: rgba(255, 217, 80, 0.9) !important; }
  .bg-warning.bs4-toast .toast-header {
    color: #665720;
    background-color: rgba(102, 87, 32, 0.1); }

.bg-danger.bs4-toast {
  color: #fff;
  background-color: rgba(217, 83, 79, 0.9) !important; }
  .bg-danger.bs4-toast .toast-header {
    color: #fff;
    background-color: rgba(255, 255, 255, 0.1); }

.bg-light.bs4-toast {
  color: #0a0b0d;
  background-color: rgba(24, 28, 33, 0.9) !important; }
  .bg-light.bs4-toast .toast-header {
    color: #0a0b0d;
    background-color: rgba(10, 11, 13, 0.1); }

.bg-dark.bs4-toast {
  color: #fff;
  background-color: rgba(24, 28, 33, 0.9) !important; }
  .bg-dark.bs4-toast .toast-header {
    color: #fff;
    background-color: rgba(255, 255, 255, 0.1); }

.footer-link {
    display: inline-block;
    color: #a3a4a6;
}

.footer-dark {
  color: rgba(255, 255, 255, 0.8); }
  .footer-dark .footer-link {
    color: rgba(255, 255, 255, 0.8); }
    .footer-dark .footer-link:hover, .footer-dark .footer-link:focus {
      color: #fff; }
    .footer-dark .footer-link.disabled {
      color: rgba(255, 255, 255, 0.4) !important; }
  .footer-dark .footer-text {
    color: #fff; }
  .footer-dark .show > .footer-link,
  .footer-dark .active > .footer-link,
  .footer-dark .footer-link.show,
  .footer-dark .footer-link.active {
    color: #fff; }
  .footer-dark hr {
    border-color: rgba(255, 255, 255, 0.2); }

.footer-light {
  color: rgba(24, 28, 33, 0.4); }
  .footer-light .footer-link {
    color: rgba(24, 28, 33, 0.4); }
    .footer-light .footer-link:hover, .footer-light .footer-link:focus {
      color: #4E5155; }
    .footer-light .footer-link.disabled {
      color: rgba(24, 28, 33, 0.2) !important; }
  .footer-light .footer-text {
    color: #4E5155; }
  .footer-light .show > .footer-link,
  .footer-light .active > .footer-link,
  .footer-light .footer-link.show,
  .footer-light .footer-link.active {
    color: #4E5155; }
  .footer-light hr {
    border-color: rgba(0, 0, 0, 0.06); }

.sidenav {
  display: -ms-flexbox;
  display: flex; }
  .sidenav .ps__thumb-y,
  .sidenav .ps__rail-y {
    width: .125rem !important; }
  .sidenav .ps__rail-y {
    right: .25rem !important;
    left: auto !important;
    background: none !important; }
  .sidenav .ps__rail-y:hover,
  .sidenav .ps__rail-y:focus,
  .sidenav .ps__rail-y.ps--clicking,
  .sidenav .ps__rail-y:hover > .ps__thumb-y,
  .sidenav .ps__rail-y:focus > .ps__thumb-y,
  .sidenav .ps__rail-y.ps--clicking > .ps__thumb-y {
    width: .375rem !important; }

.sidenav-inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
      align-items: flex-start;
  -ms-flex-pack: start;
      justify-content: flex-start;
  margin: 0;
  padding: 0; }

.sidenav-item,
.sidenav-header,
.sidenav-divider,
.sidenav-block {
  -ms-flex: 0 0 auto;
      flex: 0 0 auto;
  -ms-flex-direction: column;
      flex-direction: column;
  margin: 0;
  padding: 0;
  list-style: none; }

.sidenav-item {
  -ms-flex-align: start;
      align-items: flex-start;
  -ms-flex-pack: start;
      justify-content: flex-start; }
  .sidenav-item.sidenav-item-animating {
    transition: height 0.2s ease-in-out; }

.sidenav-item .sidenav-link {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex: 0 1 auto;
      flex: 0 1 auto; }
  .sidenav-item.active > .sidenav-item .sidenav-link {
    font-weight: 500; }
  .sidenav-item.disabled .sidenav-item .sidenav-link {
    cursor: default !important; }
  .sidenav:not(.sidenav-no-animation) .sidenav-item .sidenav-link {
    transition-duration: 0.2s;
    transition-property: color, background-color; }
  .sidenav-item .sidenav-link > :not(.sidenav-icon) {
    -ms-flex: 0 1 auto;
        flex: 0 1 auto; }

.sidenav-toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  display: block;
  width: 0.42em;
  height: 0.42em;
  border: 1px solid;
  border-top: 0;
  border-right: 0;
  -webkit-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg); }
  .sidenav-item.open:not(.sidenav-item-closing) > .sidenav-toggle::after {
    -webkit-transform: translateY(-50%) rotate(-45deg);
            transform: translateY(-50%) rotate(-45deg); }
  .sidenav:not(.sidenav-no-animation) .sidenav-toggle::after {
    transition-duration: 0.2s;
    transition-property: -webkit-transform, transform; }

.sidenav-menu {
  display: none;
  -ms-flex-direction: column;
      flex-direction: column;
  margin: 0;
  padding: 0; }
  .sidenav:not(.sidenav-no-animation) .sidenav-menu {
    transition: background-color 0.2s; }
  .sidenav-item.open > .sidenav-menu {
    display: -ms-flexbox;
    display: flex; }

.sidenav-icon {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-right: 0.25rem;
  font-size: 1rem; }

.sidenav-divider {
  width: 100%;
  border: 0;
  border-top: 1px solid; }

.sidenav-vertical {
  overflow: hidden;
  -ms-flex-direction: column;
      flex-direction: column; }
  .sidenav-vertical:not(.sidenav-no-animation) {
    transition: width 0.2s; }
  .sidenav-vertical,
  .sidenav-vertical .sidenav-block,
  .sidenav-vertical .sidenav-inner > .sidenav-item,
  .sidenav-vertical .sidenav-inner > .sidenav-header {
    width: 15.625rem; }
  .sidenav-vertical .sidenav-inner {
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex: 1 1 auto;
        flex: 1 1 auto; }
    .sidenav-vertical .sidenav-inner > .sidenav-item {
      padding: 2px 10px; }
  .sidenav-vertical .sidenav-item .sidenav-link,
  .sidenav-vertical .sidenav-header,
  .sidenav-vertical .sidenav-block {
    padding: 0.75rem 2rem; }
  .sidenav-vertical .sidenav-divider {
    margin-top: 0.75rem;
    margin-bottom: 0.75rem;
    padding: 0; }
  .sidenav-vertical .sidenav-item .sidenav-toggle {
    padding-right: calc(2rem + 1.26em); }
    .sidenav-vertical .sidenav-item .sidenav-toggle::after {
      right: 2rem; }
  .sidenav-vertical .sidenav-menu {
    padding-top: 0.625rem;
    padding-bottom: 0.625rem; }
    .sidenav-vertical .sidenav-menu .sidenav-link {
      padding-top: 0.625rem;
      padding-bottom: 0.625rem; }
  .sidenav-vertical .sidenav-icon {
    width: 1.75rem; }
  .sidenav-vertical .sidenav-menu .sidenav-icon {
    margin-right: 0; }
  .sidenav-vertical .sidenav-menu .sidenav-link {
    padding-left: 4rem; }
  .sidenav-vertical .sidenav-menu .sidenav-menu .sidenav-link {
    padding-left: 5rem; }
  .sidenav-vertical .sidenav-menu .sidenav-menu .sidenav-menu .sidenav-link {
    padding-left: 6rem; }
  .sidenav-vertical .sidenav-menu .sidenav-menu .sidenav-menu .sidenav-menu .sidenav-link {
    padding-left: 7rem; }
  .sidenav-vertical .sidenav-menu .sidenav-menu .sidenav-menu .sidenav-menu .sidenav-menu .sidenav-link {
    padding-left: 8rem; }

.sidenav-horizontal {
  -ms-flex-direction: row;
      flex-direction: row;
  width: 100%; }
  .sidenav-horizontal .sidenav-inner {
    overflow: hidden;
    -ms-flex-direction: row;
        flex-direction: row;
    -ms-flex: 0 1 100%;
        flex: 0 1 100%; }
  .sidenav-horizontal .sidenav-item .sidenav-link {
    padding: 1rem 1rem; }
  .sidenav-horizontal .sidenav-item .sidenav-toggle {
    padding-right: calc(1rem + 1.26em); }
    .sidenav-horizontal .sidenav-item .sidenav-toggle::after {
      right: 1rem; }
  .sidenav-horizontal .sidenav-inner > .sidenav-item > .sidenav-toggle::after {
    -webkit-transform: translateY(-50%) rotate(-45deg);
            transform: translateY(-50%) rotate(-45deg); }
  .sidenav-horizontal .sidenav-inner > .sidenav-item:not(.sidenav-item-closing).open > .sidenav-toggle::after {
    -webkit-transform: translateY(-50%) rotate(135deg);
            transform: translateY(-50%) rotate(135deg); }
  .sidenav-horizontal .sidenav-header,
  .sidenav-horizontal .sidenav-divider {
    display: none !important; }
  .sidenav-horizontal .sidenav-menu {
    position: absolute;
    width: 12.5rem; }
    .sidenav-horizontal .sidenav-menu .sidenav-menu {
      position: static;
      width: auto; }
    .sidenav-horizontal .sidenav-menu .sidenav-link {
      padding-top: 0.625rem;
      padding-bottom: 0.625rem; }
  .sidenav-horizontal .sidenav-inner > .sidenav-item > .sidenav-menu {
    border-bottom-right-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem; }
  .sidenav-horizontal:not(.sidenav-no-animation) .sidenav-inner > .sidenav-item.open > .sidenav-menu {
    -webkit-animation: sidenavDropdownShow 0.2s ease-in-out;
            animation: sidenavDropdownShow 0.2s ease-in-out; }
  .sidenav-horizontal .sidenav-menu .sidenav-menu .sidenav-link {
    padding-left: 2rem; }
  .sidenav-horizontal .sidenav-menu .sidenav-menu .sidenav-menu .sidenav-link {
    padding-left: 3rem; }
  .sidenav-horizontal .sidenav-menu .sidenav-menu .sidenav-menu .sidenav-menu .sidenav-link {
    padding-left: 4rem; }
  .sidenav-horizontal .sidenav-menu .sidenav-menu .sidenav-menu .sidenav-menu .sidenav-menu .sidenav-link {
    padding-left: 5rem; }

.sidenav-horizontal-wrapper {
  overflow: hidden;
  -ms-flex: 0 1 100%;
      flex: 0 1 100%;
  width: 0; }
  .sidenav:not(.sidenav-no-animation) .sidenav-horizontal-wrapper .sidenav-inner {
    transition: margin 0.2s; }

.sidenav-horizontal-prev,
.sidenav-horizontal-next {
  position: relative;
  display: block;
  -ms-flex: 0 0 auto;
      flex: 0 0 auto;
  width: 2.25rem; }
  .sidenav-horizontal-prev::after,
  .sidenav-horizontal-next::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    width: 0.5rem;
    height: 0.5rem;
    border: 1px solid;
    border-top: 0; }
  .sidenav-horizontal-prev.disabled,
  .sidenav-horizontal-next.disabled {
    cursor: default !important; }

.sidenav-horizontal-prev::after {
  border-right: 0;
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
          transform: translate(-50%, -50%) rotate(45deg); }

.sidenav-horizontal-next::after {
  border-left: 0;
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg); }

@-webkit-keyframes sidenavDropdownShow {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-0.5rem);
            transform: translateY(-0.5rem); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

@keyframes sidenavDropdownShow {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-0.5rem);
            transform: translateY(-0.5rem); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

.sidenav-dark {
  color: rgba(255, 255, 255, 0.8); }
  .sidenav-dark .sidenav-link,
  .sidenav-dark .sidenav-horizontal-prev,
  .sidenav-dark .sidenav-horizontal-next {
    color: rgba(255, 255, 255, 0.8); }
    .sidenav-dark .sidenav-link:hover, .sidenav-dark .sidenav-link:focus,
    .sidenav-dark .sidenav-horizontal-prev:hover,
    .sidenav-dark .sidenav-horizontal-prev:focus,
    .sidenav-dark .sidenav-horizontal-next:hover,
    .sidenav-dark .sidenav-horizontal-next:focus {
      color: #fff; }
    .sidenav-dark .sidenav-link.active,
    .sidenav-dark .sidenav-horizontal-prev.active,
    .sidenav-dark .sidenav-horizontal-next.active {
      color: #fff; }
  .sidenav-dark .sidenav-item.disabled .sidenav-link {
    color: rgba(255, 255, 255, 0.4) !important; }
  .sidenav-dark .sidenav-item.open:not(.sidenav-item-closing) > .sidenav-toggle,
  .sidenav-dark .sidenav-item.active > .sidenav-link {
    color: #fff; }
  .sidenav-dark .sidenav-item.active > .sidenav-link:not(.sidenav-toggle) {
    background: rgba(0, 0, 0, 0.06); }
  .sidenav-dark .sidenav-inner > .sidenav-item.sidenav-item-closing .sidenav-item.open .sidenav-menu,
  .sidenav-dark .sidenav-inner > .sidenav-item.sidenav-item-closing .sidenav-item.open .sidenav-toggle {
    color: rgba(255, 255, 255, 0.8); }
  .sidenav-dark .sidenav-text {
    color: #fff; }
  .sidenav-dark .sidenav-header {
    color: rgba(255, 255, 255, 0.8); }
  .sidenav-dark hr,
  .sidenav-dark .sidenav-divider,
  .sidenav-dark .sidenav-inner > .sidenav-item.open > .sidenav-menu::before {
    border-color: rgba(255, 255, 255, 0.2) !important; }
  .sidenav-dark .sidenav-inner > .sidenav-header::before,
  .sidenav-dark .sidenav-block::before {
    background-color: rgba(255, 255, 255, 0.4); }
  .sidenav-dark .sidenav-inner > .sidenav-item.open .sidenav-item.open > .sidenav-toggle::before {
    background-color: rgba(255, 255, 255, 0.2); }
  .sidenav-dark .sidenav-inner > .sidenav-item.open .sidenav-item.active > .sidenav-link::before {
    background-color: #fff; }
  .sidenav-dark .ps__thumb-y {
    background: rgba(255, 255, 255, 0.8) !important; }

.sidenav-light {
  color: rgba(24, 28, 33, 0.4); }
  .sidenav-light .sidenav-link,
  .sidenav-light .sidenav-horizontal-prev,
  .sidenav-light .sidenav-horizontal-next {
    color: rgba(24, 28, 33, 0.4); }
    .sidenav-light .sidenav-link:hover, .sidenav-light .sidenav-link:focus,
    .sidenav-light .sidenav-horizontal-prev:hover,
    .sidenav-light .sidenav-horizontal-prev:focus,
    .sidenav-light .sidenav-horizontal-next:hover,
    .sidenav-light .sidenav-horizontal-next:focus {
      color: #4E5155; }
    .sidenav-light .sidenav-link.active,
    .sidenav-light .sidenav-horizontal-prev.active,
    .sidenav-light .sidenav-horizontal-next.active {
      color: #4E5155; }
  .sidenav-light .sidenav-item.disabled .sidenav-link {
    color: rgba(24, 28, 33, 0.2) !important; }
  .sidenav-light .sidenav-item.open:not(.sidenav-item-closing) > .sidenav-toggle,
  .sidenav-light .sidenav-item.active > .sidenav-link {
    color: #4E5155; }
  .sidenav-light .sidenav-item.active > .sidenav-link:not(.sidenav-toggle) {
    background: rgba(0, 0, 0, 0.05); }
  .sidenav-light .sidenav-inner > .sidenav-item.sidenav-item-closing .sidenav-item.open .sidenav-menu,
  .sidenav-light .sidenav-inner > .sidenav-item.sidenav-item-closing .sidenav-item.open .sidenav-toggle {
    color: rgba(24, 28, 33, 0.4); }
  .sidenav-light .sidenav-text {
    color: #4E5155; }
  .sidenav-light .sidenav-header {
    color: rgba(24, 28, 33, 0.4); }
  .sidenav-light hr,
  .sidenav-light .sidenav-divider,
  .sidenav-light .sidenav-inner > .sidenav-item.open > .sidenav-menu::before {
    border-color: rgba(0, 0, 0, 0.06) !important; }
  .sidenav-light .sidenav-inner > .sidenav-header::before,
  .sidenav-light .sidenav-block::before {
    background-color: rgba(24, 28, 33, 0.2); }
  .sidenav-light .sidenav-inner > .sidenav-item.open .sidenav-item.open > .sidenav-toggle::before {
    background-color: rgba(0, 0, 0, 0.06); }
  .sidenav-light .sidenav-inner > .sidenav-item.open .sidenav-item.active > .sidenav-link::before {
    background-color: #4E5155; }
  .sidenav-light .ps__thumb-y {
    background: rgba(24, 28, 33, 0.4) !important; }

.sidenav-collapsed:not(:hover) {
  width: 4.375rem; }
  .sidenav-collapsed:not(:hover) .sidenav-inner > .sidenav-item {
    width: 16.25rem; }
  .sidenav-collapsed:not(:hover) .sidenav-inner > .sidenav-item > .sidenav-link {
    padding-left: 4.375rem; }
  .sidenav-collapsed:not(:hover) .sidenav-inner > .sidenav-header,
  .sidenav-collapsed:not(:hover) .sidenav-block {
    position: relative;
    margin-left: 4.375rem;
    padding-right: 3.75rem;
    padding-left: 0.25rem;
    width: 15.625rem; }
    .sidenav-collapsed:not(:hover) .sidenav-inner > .sidenav-header::before,
    .sidenav-collapsed:not(:hover) .sidenav-block::before {
      content: "";
      position: absolute;
      top: 0.75rem;
      bottom: 0.75rem;
      left: -3.28125rem;
      display: block;
      width: 2.1875rem; }
  .sidenav-collapsed:not(:hover) .sidenav-inner > .sidenav-item > .sidenav-menu,
  .sidenav-collapsed:not(:hover) .sidenav-inner > .sidenav-item.open > .sidenav-menu {
    position: relative;
    margin-left: 0.625rem;
    background: none !important; }
    .sidenav-collapsed:not(:hover) .sidenav-inner > .sidenav-item > .sidenav-menu .sidenav-link,
    .sidenav-collapsed:not(:hover) .sidenav-inner > .sidenav-item.open > .sidenav-menu .sidenav-link {
      background: none !important;
      transition: none !important; }
  .sidenav-collapsed:not(:hover) .sidenav-inner > .sidenav-item.open > .sidenav-menu::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: calc(2.1875rem - 1px);
    display: block;
    margin-left: -0.625rem;
    width: 0;
    border-left: 2px solid; }
  .sidenav-collapsed:not(:hover) .sidenav-inner > .sidenav-item.open .sidenav-item.open > .sidenav-toggle::before,
  .sidenav-collapsed:not(:hover) .sidenav-inner > .sidenav-item.open .sidenav-item.active > .sidenav-link::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    display: block;
    margin-top: -4px;
    margin-left: calc(1.5625rem - 4px);
    width: 8px;
    height: 8px;
    border-radius: 50%; }
  .sidenav-collapsed:not(:hover) .sidenav-inner > .sidenav-item > .sidenav-toggle::after {
    right: auto;
    left: 3.5rem; }
  .sidenav-collapsed:not(:hover) .sidenav-inner > .sidenav-item > .sidenav-link .sidenav-icon {
    margin-left: -4.375rem;
    width: 4.375rem;
    text-align: center; }

.layout-wrapper,
.layout-inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: stretch;
      align-items: stretch;
  -ms-flex: 1 1 auto;
      flex: 1 1 auto;
  width: 100%; }

.layout-offcanvas .layout-wrapper,
.layout-fixed-offcanvas .layout-wrapper {
  overflow: hidden; }

.layout-inner {
  min-height: 100vh; }

.layout-container,
.layout-content,
.layout-content > *,
.layout-sidenav {
  min-height: 1px; }

.layout-container {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: stretch;
      align-items: stretch;
  -ms-flex: 1 1 auto;
      flex: 1 1 auto;
  padding: 0; }
  .layout-without-sidenav .layout-container {
    padding-right: 0 !important;
    padding-left: 0 !important; }

.layout-content {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: stretch;
      align-items: stretch;
  -ms-flex: 1 1 auto;
      flex: 1 1 auto;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: justify;
      justify-content: space-between; }

.layout-navbar,
.layout-footer {
  -ms-flex: 0 0 auto;
      flex: 0 0 auto; }

.layout-navbar {
  position: relative;
  z-index: 2; }
  .layout-navbar .navbar {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }

.layout-sidenav {
    border-right: 1px solid #e6e5e7;
    position: relative;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
}
  .layout-sidenav .sidenav {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }
  .layout-sidenav .sidenav-vertical {
    height: 100%; }

.layout-1 .layout-inner {
  -ms-flex-direction: column;
      flex-direction: column; }

.layout-1 .layout-content {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  width: 0;
  min-width: 0;
  max-width: 100%; }

.layout-2 .layout-container {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  -ms-flex-direction: column;
      flex-direction: column;
  width: 0;
  min-width: 0;
  max-width: 100%; }

.layout-2 .layout-content {
  width: 100%; }

.layout-reversed .layout-1 .layout-container {
  -ms-flex-direction: row-reverse;
      flex-direction: row-reverse; }

.layout-reversed .layout-2 .layout-inner {
  -ms-flex-direction: row-reverse;
      flex-direction: row-reverse; }

.layout-sidenav-toggle {
  display: block; }

@media (max-width: 991px) {
  .layout-sidenav {
    position: fixed !important;
    top: 0 !important;
    height: 100% !important;
    left: 0 !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0);
    will-change: transform, -webkit-transform; }
    .layout-reversed .layout-sidenav {
      right: 0 !important;
      left: auto !important;
      -webkit-transform: translate3d(100%, 0, 0);
              transform: translate3d(100%, 0, 0); }
    .layout-expanded .layout-sidenav {
      -webkit-transform: translate3d(0, 0, 0) !important;
              transform: translate3d(0, 0, 0) !important; }
  .layout-expanded body {
    overflow: hidden; }
  .layout-overlay {
    position: fixed;
    top: 0;
    right: 0;
    height: 100% !important;
    left: 0;
    display: none;
    background: #181C21;
    opacity: 0.5;
    cursor: pointer; }
    .layout-expanded .layout-overlay {
      display: block; }
  .layout-sidenav-100vh .layout-sidenav,
  .layout-sidenav-100vh .layout-overlay {
    height: 100vh !important; } }

@media (min-width: 992px) {
  .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav .sidenav-vertical,
  .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav.sidenav-vertical {
    width: 4.375rem; }
    .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav .sidenav-vertical .sidenav-inner > .sidenav-item,
    .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav.sidenav-vertical .sidenav-inner > .sidenav-item {
      width: 16.25rem; }
    .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav .sidenav-vertical .sidenav-inner > .sidenav-item > .sidenav-link,
    .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav.sidenav-vertical .sidenav-inner > .sidenav-item > .sidenav-link {
      padding-left: 4.375rem; }
    .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav .sidenav-vertical .sidenav-inner > .sidenav-header,
    .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav .sidenav-vertical .sidenav-block,
    .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav.sidenav-vertical .sidenav-inner > .sidenav-header,
    .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav.sidenav-vertical .sidenav-block {
      position: relative;
      margin-left: 4.375rem;
      padding-right: 3.75rem;
      padding-left: 0.25rem;
      width: 15.625rem; }
      .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav .sidenav-vertical .sidenav-inner > .sidenav-header::before,
      .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav .sidenav-vertical .sidenav-block::before,
      .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav.sidenav-vertical .sidenav-inner > .sidenav-header::before,
      .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav.sidenav-vertical .sidenav-block::before {
        content: "";
        position: absolute;
        top: 0.75rem;
        bottom: 0.75rem;
        left: -3.28125rem;
        display: block;
        width: 2.1875rem; }
    .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav .sidenav-vertical .sidenav-inner > .sidenav-item > .sidenav-menu,
    .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav .sidenav-vertical .sidenav-inner > .sidenav-item.open > .sidenav-menu,
    .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav.sidenav-vertical .sidenav-inner > .sidenav-item > .sidenav-menu,
    .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav.sidenav-vertical .sidenav-inner > .sidenav-item.open > .sidenav-menu {
      position: relative;
      margin-left: 0.625rem;
      background: none !important; }
      .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav .sidenav-vertical .sidenav-inner > .sidenav-item > .sidenav-menu .sidenav-link,
      .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav .sidenav-vertical .sidenav-inner > .sidenav-item.open > .sidenav-menu .sidenav-link,
      .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav.sidenav-vertical .sidenav-inner > .sidenav-item > .sidenav-menu .sidenav-link,
      .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav.sidenav-vertical .sidenav-inner > .sidenav-item.open > .sidenav-menu .sidenav-link {
        background: none !important;
        transition: none !important; }
    .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav .sidenav-vertical .sidenav-inner > .sidenav-item.open > .sidenav-menu::before,
    .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav.sidenav-vertical .sidenav-inner > .sidenav-item.open > .sidenav-menu::before {
      content: "";
      position: absolute;
      top: 0;
      bottom: 0;
      left: calc(2.1875rem - 1px);
      display: block;
      margin-left: -0.625rem;
      width: 0;
      border-left: 2px solid; }
    .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav .sidenav-vertical .sidenav-inner > .sidenav-item.open .sidenav-item.open > .sidenav-toggle::before,
    .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav .sidenav-vertical .sidenav-inner > .sidenav-item.open .sidenav-item.active > .sidenav-link::before,
    .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav.sidenav-vertical .sidenav-inner > .sidenav-item.open .sidenav-item.open > .sidenav-toggle::before,
    .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav.sidenav-vertical .sidenav-inner > .sidenav-item.open .sidenav-item.active > .sidenav-link::before {
      content: "";
      position: absolute;
      top: 50%;
      left: 0;
      display: block;
      margin-top: -4px;
      margin-left: calc(1.5625rem - 4px);
      width: 8px;
      height: 8px;
      border-radius: 50%; }
    .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav .sidenav-vertical .sidenav-inner > .sidenav-item > .sidenav-toggle::after,
    .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav.sidenav-vertical .sidenav-inner > .sidenav-item > .sidenav-toggle::after {
      right: auto;
      left: 3.5rem; }
    .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav .sidenav-vertical .sidenav-inner > .sidenav-item > .sidenav-link .sidenav-icon,
    .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav.sidenav-vertical .sidenav-inner > .sidenav-item > .sidenav-link .sidenav-icon {
      margin-left: -4.375rem;
      width: 4.375rem;
      text-align: center; }
  .layout-sidenav-hover.layout-collapsed .layout-sidenav {
    margin-right: -11.25rem; }
  .layout-sidenav-hover.layout-collapsed.layout-reversed .layout-sidenav {
    margin-right: 0;
    margin-left: -11.25rem; } }

@media (min-width: 992px) {
  .layout-collapsed.layout-offcanvas .layout-sidenav {
    margin-right: -15.625rem;
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%); }
  .layout-collapsed.layout-offcanvas.layout-reversed .layout-sidenav {
    margin-right: 0;
    margin-left: -15.625rem;
    -webkit-transform: translateX(100%);
            transform: translateX(100%); } }

@media (min-width: 992px) {
  .layout-fixed .layout-sidenav,
  .layout-fixed-offcanvas .layout-sidenav {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    margin-right: 0 !important;
    margin-left: 0 !important; }
  .layout-fixed.layout-reversed .layout-sidenav,
  .layout-fixed-offcanvas.layout-reversed .layout-sidenav {
    right: 0;
    left: auto; }
  .layout-fixed-offcanvas.layout-collapsed .layout-sidenav {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%); }
  .layout-fixed-offcanvas.layout-collapsed.layout-reversed .layout-sidenav {
    -webkit-transform: translateX(100%);
            transform: translateX(100%); }
  .layout-fixed:not(.layout-collapsed) .layout-container,
  .layout-fixed-offcanvas:not(.layout-collapsed) .layout-container {
    padding-left: 15.625rem; }
  .layout-fixed:not(.layout-collapsed).layout-reversed .layout-container,
  .layout-fixed-offcanvas:not(.layout-collapsed).layout-reversed .layout-container {
    padding-right: 15.625rem;
    padding-left: 0; }
  .layout-fixed.layout-collapsed .layout-container {
    padding-left: 4.375rem; }
  .layout-fixed.layout-collapsed.layout-reversed .layout-container {
    padding-right: 4.375rem;
    padding-left: 0; } }

html:not(.layout-navbar-fixed):not(.layout-fixed):not(.layout-fixed-offcanvas) .layout-container,
html:not(.layout-navbar-fixed) .layout-2 .layout-container {
  padding-top: 0 !important; }

html:not(.layout-footer-fixed) .layout-content {
  padding-bottom: 0 !important; }

@media (max-width: 991px) {
  .layout-fixed .layout-wrapper.layout-1 .layout-sidenav,
  .layout-fixed-offcanvas .layout-wrapper.layout-1 .layout-sidenav {
    top: 0 !important; }
  html:not(.layout-navbar-fixed) .layout-1 .layout-container {
    padding-top: 0 !important; } }

.layout-navbar-fixed .layout-navbar {
  position: fixed;
  top: 0;
  right: 0;
  left: 0; }

@media (min-width: 992px) {
  .layout-fixed .layout-1 .layout-navbar,
  .layout-fixed-offcanvas .layout-1 .layout-navbar {
    position: fixed;
    top: 0;
    right: 0;
    left: 0; }
  .layout-navbar-fixed:not(.layout-collapsed) .layout-2 .layout-navbar,
  .layout-fixed.layout-navbar-fixed:not(.layout-collapsed) .layout-2 .layout-navbar,
  .layout-fixed-offcanvas.layout-navbar-fixed:not(.layout-collapsed) .layout-2 .layout-navbar {
    left: 15.625rem; }
  .layout-navbar-fixed:not(.layout-collapsed).layout-reversed .layout-2 .layout-navbar,
  .layout-fixed.layout-navbar-fixed:not(.layout-collapsed).layout-reversed .layout-2 .layout-navbar,
  .layout-fixed-offcanvas.layout-navbar-fixed:not(.layout-collapsed).layout-reversed .layout-2 .layout-navbar {
    right: 15.625rem;
    left: 0; }
  .layout-navbar-fixed.layout-collapsed:not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-2 .layout-navbar,
  .layout-fixed.layout-navbar-fixed.layout-collapsed .layout-2 .layout-navbar {
    left: 4.375rem; }
  .layout-navbar-fixed.layout-collapsed:not(.layout-offcanvas):not(.layout-fixed-offcanvas).layout-reversed .layout-2 .layout-navbar,
  .layout-fixed.layout-navbar-fixed.layout-collapsed.layout-reversed .layout-2 .layout-navbar {
    right: 4.375rem;
    left: 0; } }

.layout-footer-fixed .layout-footer {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0; }

@media (min-width: 992px) {
  .layout-footer-fixed:not(.layout-collapsed) .layout-wrapper:not(.layout-without-sidenav) .layout-footer {
    left: 15.625rem; }
  .layout-footer-fixed:not(.layout-collapsed).layout-reversed .layout-wrapper:not(.layout-without-sidenav) .layout-footer {
    right: 15.625rem;
    left: 0; }
  .layout-footer-fixed.layout-collapsed:not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-wrapper:not(.layout-without-sidenav) .layout-footer {
    left: 4.375rem; }
  .layout-footer-fixed.layout-collapsed:not(.layout-offcanvas):not(.layout-fixed-offcanvas).layout-reversed .layout-wrapper:not(.layout-without-sidenav) .layout-footer {
    right: 4.375rem;
    left: 0; } }

.layout-navbar-fixed body:not(.modal-open) .layout-1 .layout-navbar,
.layout-fixed body:not(.modal-open) .layout-1 .layout-navbar,
.layout-fixed-offcanvas body:not(.modal-open) .layout-1 .layout-navbar {
  z-index: 1080; }

.layout-navbar-fixed body:not(.modal-open) .layout-2 .layout-navbar,
.layout-fixed body:not(.modal-open) .layout-2 .layout-navbar,
.layout-fixed-offcanvas body:not(.modal-open) .layout-2 .layout-navbar {
  z-index: 1075; }

.layout-footer-fixed .layout-footer {
  z-index: 1030; }

.layout-sidenav-horizontal {
  z-index: 9; }

@media (max-width: 991px) {
  .layout-sidenav {
    z-index: 1100; }
  .layout-overlay {
    z-index: 1099; } }

@media (min-width: 992px) {
  .layout-1 .layout-navbar {
    z-index: 10; }
  .layout-1 .layout-sidenav {
    z-index: 9; }
  .layout-2 .layout-navbar {
    z-index: 9; }
  .layout-2 .layout-sidenav {
    z-index: 10; }
  .layout-collapsed:not(.layout-offcanvas):not(.layout-fixed-offcanvas).layout-sidenav-hover .layout-1 .layout-sidenav {
    z-index: 1075 !important; }
  .layout-collapsed:not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-2 .layout-sidenav {
    z-index: 1085 !important; }
  .layout-fixed body:not(.modal-open) .layout-1 .layout-sidenav,
  .layout-fixed-offcanvas body:not(.modal-open) .layout-1 .layout-sidenav {
    z-index: 1075; }
  .layout-navbar-fixed body:not(.modal-open) .layout-2 .layout-sidenav,
  .layout-fixed body:not(.modal-open) .layout-2 .layout-sidenav,
  .layout-fixed-offcanvas body:not(.modal-open) .layout-2 .layout-sidenav {
    z-index: 1080; } }

.layout-sidenav-link-no-transition .layout-sidenav .sidenav-link,
.layout-sidenav-link-no-transition .layout-sidenav-horizontal .sidenav-link {
  transition: none !important;
  -webkit-animation: none !important;
          animation: none !important; }

.layout-no-transition .layout-sidenav,
.layout-no-transition .layout-sidenav .sidenav,
.layout-no-transition .layout-sidenav .sidenav-item,
.layout-no-transition .layout-sidenav-horizontal,
.layout-no-transition .layout-sidenav-horizontal .sidenav,
.layout-no-transition .layout-sidenav-horizontal .sidenav-item {
  transition: none !important;
  -webkit-animation: none !important;
          animation: none !important; }

@media (max-width: 991px) {
  .layout-transitioning .layout-overlay {
    -webkit-animation: layoutSidenavAnimation 0.2s;
            animation: layoutSidenavAnimation 0.2s; }
  .layout-transitioning .layout-sidenav {
    transition-duration: 0.2s;
    transition-property: transform, -webkit-transform; } }

@media (min-width: 992px) {
  .layout-collapsed:not(.layout-transitioning):not(.layout-offcanvas):not(.layout-fixed):not(.layout-fixed-offcanvas) .layout-sidenav {
    transition-duration: 0.2s;
    transition-property: margin-left, margin-right, width; }
  .layout-transitioning.layout-offcanvas .layout-sidenav {
    transition-duration: 0.2s;
    transition-property: margin-left, margin-right, transform, -webkit-transform; }
  .layout-transitioning.layout-fixed .layout-container, .layout-transitioning.layout-fixed-offcanvas .layout-container {
    transition-duration: 0.2s;
    transition-property: padding-left, padding-right; }
  .layout-transitioning.layout-fixed .layout-sidenav {
    transition: width 0.2s; }
  .layout-transitioning.layout-fixed-offcanvas .layout-sidenav {
    transition-duration: 0.2s;
    transition-property: transform, -webkit-transform; }
  .layout-transitioning.layout-navbar-fixed .layout-2 .layout-navbar,
  .layout-transitioning.layout-footer-fixed .layout-footer {
    transition-duration: 0.2s;
    transition-property: left, right; }
  .layout-transitioning:not(.layout-offcanvas):not(.layout-fixed):not(.layout-fixed-offcanvas) .layout-sidenav {
    transition-duration: 0.2s;
    transition-property: margin-left, margin-right, width; } }

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .sidenav,
  .layout-sidenav,
  .layout-container,
  .layout-navbar,
  .layout-footer {
    transition: none !important;
    transition-duration: 0s !important; }
  .layout-overlay {
    -webkit-animation: none !important;
            animation: none !important; } }

@-webkit-keyframes layoutSidenavAnimation {
  0% {
    opacity: 0; }
  100% {
    opacity: 0.5; } }

@keyframes layoutSidenavAnimation {
  0% {
    opacity: 0; }
  100% {
    opacity: 0.5; } }

.app-brand {
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  line-height: 1;
  min-height: 1px; }

.app-brand-logo {
  display: block;
  overflow: hidden;
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  min-height: 1px; }
  .app-brand-logo img,
  .app-brand-logo svg {
    display: block; }

.app-brand-text {
  display: block;
  -ms-flex-negative: 0;
      flex-shrink: 0; }

.app-brand .layout-sidenav-toggle {
  display: block; }

.sidenav-vertical .app-brand {
  padding-right: 1.75rem;
  padding-left: 1.75rem; }

.sidenav-horizontal .app-brand,
.sidenav-horizontal .app-brand + .sidenav-divider {
  display: none !important; }

:not(.layout-sidenav) > .sidenav-vertical.sidenav-collapsed:not(.layout-sidenav):not(:hover) .app-brand {
  padding-right: 0;
  padding-left: 0;
  width: 4.375rem; }

:not(.layout-sidenav) > .sidenav-vertical.sidenav-collapsed:not(.layout-sidenav):not(:hover) .app-brand-logo,
:not(.layout-sidenav) > .sidenav-vertical.sidenav-collapsed:not(.layout-sidenav):not(:hover) .app-brand-text {
  margin-right: auto;
  margin-left: auto; }

:not(.layout-sidenav) > .sidenav-vertical.sidenav-collapsed:not(.layout-sidenav):not(:hover) .app-brand-logo ~ .app-brand-text,
:not(.layout-sidenav) > .sidenav-vertical.sidenav-collapsed:not(.layout-sidenav):not(:hover) .app-brand .layout-sidenav-toggle {
  display: none; }

@media (min-width: 992px) {
  .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav .app-brand {
    padding-right: 0;
    padding-left: 0;
    width: 4.375rem; }
  .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav .app-brand-logo,
  .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav .app-brand-text {
    margin-right: auto;
    margin-left: auto; }
  .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav .app-brand-logo ~ .app-brand-text,
  .layout-collapsed:not(.layout-sidenav-hover):not(.layout-offcanvas):not(.layout-fixed-offcanvas) .layout-sidenav .app-brand .layout-sidenav-toggle {
    display: none; } }

@-webkit-keyframes spinner-border-rtl {
  to {
    -webkit-transform: rotate(-360deg);
            transform: rotate(-360deg); } }

@keyframes spinner-border-rtl {
  to {
    -webkit-transform: rotate(-360deg);
            transform: rotate(-360deg); } }

.btn .spinner-border,
.btn .spinner-grow {
  height: 1em;
  width: 1em;
  top: -.0625rem;
  position: relative; }

.btn .spinner-border {
  border-width: .15em; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVuZG9yL2Nzcy9hcHB3b3JrLmNzcyIsInNvdXJjZXMiOlsidmVuZG9yL2Nzcy9hcHB3b3JrLnNjc3MiLCJ2ZW5kb3IvY3NzL19hcHB3b3JrL19pbmNsdWRlLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Z1bmN0aW9ucy5zY3NzIiwidmVuZG9yL2Nzcy9fYXBwd29yay9fZnVuY3Rpb25zLnNjc3MiLCJ2ZW5kb3IvY3NzL19jdXN0b20tdmFyaWFibGVzL19hcHB3b3JrLnNjc3MiLCJ2ZW5kb3IvY3NzL19hcHB3b3JrL192YXJpYWJsZXMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdmFyaWFibGVzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX21peGlucy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3ZlbmRvci9fcmZzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19kZXByZWNhdGUuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ob3Zlci5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9faW1hZ2Uuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JhZGdlLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19yZXNpemUuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3NjcmVlbi1yZWFkZXIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3NpemUuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3Jlc2V0LXRleHQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtZW1waGFzaXMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RleHQtaGlkZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC10cnVuY2F0ZS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdmlzaWJpbGl0eS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYWxlcnQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2J1dHRvbnMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NhcmV0LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19wYWdpbmF0aW9uLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19saXN0cy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbGlzdC1ncm91cC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fbmF2LWRpdmlkZXIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2Zvcm1zLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190YWJsZS1yb3cuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JhY2tncm91bmQtdmFyaWFudC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYm9yZGVyLXJhZGl1cy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYm94LXNoYWRvdy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JhZGllbnRzLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190cmFuc2l0aW9uLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JpZC1mcmFtZXdvcmsuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyaWQuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2Zsb2F0LnNjc3MiLCJ2ZW5kb3IvY3NzL19hcHB3b3JrL19taXhpbnMuc2NzcyIsInZlbmRvci9jc3MvX2FwcHdvcmsvX3JlYm9vdC5zY3NzIiwidmVuZG9yL2Nzcy9fYXBwd29yay9fdHlwZS5zY3NzIiwidmVuZG9yL2Nzcy9fYXBwd29yay9fdXRpbGl0aWVzLnNjc3MiLCJ2ZW5kb3IvY3NzL19hcHB3b3JrL19iYXNlLnNjc3MiLCJ2ZW5kb3IvY3NzL19hcHB3b3JrL190YWJsZXMuc2NzcyIsInZlbmRvci9jc3MvX2FwcHdvcmsvX2J1dHRvbnMuc2NzcyIsInZlbmRvci9jc3MvX2FwcHdvcmsvX2J1dHRvbi1ncm91cC5zY3NzIiwidmVuZG9yL2Nzcy9fYXBwd29yay9fYmFkZ2Uuc2NzcyIsInZlbmRvci9jc3MvX2FwcHdvcmsvX2Ryb3Bkb3duLnNjc3MiLCJ2ZW5kb3IvY3NzL19hcHB3b3JrL19uYXYuc2NzcyIsInZlbmRvci9jc3MvX2FwcHdvcmsvX3BhZ2luYXRpb24uc2NzcyIsInZlbmRvci9jc3MvX2FwcHdvcmsvX2FsZXJ0LnNjc3MiLCJ2ZW5kb3IvY3NzL19hcHB3b3JrL190b29sdGlwLnNjc3MiLCJ2ZW5kb3IvY3NzL19hcHB3b3JrL19wb3BvdmVyLnNjc3MiLCJ2ZW5kb3IvY3NzL19hcHB3b3JrL19mb3Jtcy5zY3NzIiwidmVuZG9yL2Nzcy9fYXBwd29yay9fY3VzdG9tLWZvcm1zLnNjc3MiLCJ2ZW5kb3IvY3NzL19hcHB3b3JrL19zd2l0Y2hlci5zY3NzIiwidmVuZG9yL2Nzcy9fYXBwd29yay9faW5wdXQtZ3JvdXAuc2NzcyIsInZlbmRvci9jc3MvX2FwcHdvcmsvX21vZGFsLnNjc3MiLCJ2ZW5kb3IvY3NzL19hcHB3b3JrL19icmVhZGNydW1iLnNjc3MiLCJ2ZW5kb3IvY3NzL19hcHB3b3JrL19saXN0LWdyb3VwLnNjc3MiLCJ2ZW5kb3IvY3NzL19hcHB3b3JrL19uYXZiYXIuc2NzcyIsInZlbmRvci9jc3MvX2FwcHdvcmsvX2NhcmQuc2NzcyIsInZlbmRvci9jc3MvX2FwcHdvcmsvX2FjY29yZGlvbi5zY3NzIiwidmVuZG9yL2Nzcy9fYXBwd29yay9fY2Fyb3VzZWwuc2NzcyIsInZlbmRvci9jc3MvX2FwcHdvcmsvX2Nsb3NlLnNjc3MiLCJ2ZW5kb3IvY3NzL19hcHB3b3JrL190b2FzdHMuc2NzcyIsInZlbmRvci9jc3MvX2FwcHdvcmsvX2Zvb3Rlci5zY3NzIiwidmVuZG9yL2Nzcy9fYXBwd29yay9fc2lkZW5hdi5zY3NzIiwidmVuZG9yL2Nzcy9fYXBwd29yay9fbGF5b3V0LnNjc3MiLCJ2ZW5kb3IvY3NzL19hcHB3b3JrL19hcHAtYnJhbmQuc2NzcyIsInZlbmRvci9jc3MvX2FwcHdvcmsvX3NwaW5uZXJzLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCAnX2FwcHdvcmsvaW5jbHVkZSc7XG5AaW1wb3J0ICdfYXBwd29yay9yZWJvb3QnO1xuQGltcG9ydCAnX2FwcHdvcmsvdHlwZSc7XG5AaW1wb3J0ICdfYXBwd29yay91dGlsaXRpZXMnO1xuQGltcG9ydCAnX2FwcHdvcmsvYmFzZSc7XG5AaW1wb3J0ICdfYXBwd29yay90YWJsZXMnO1xuQGltcG9ydCAnX2FwcHdvcmsvYnV0dG9ucyc7XG5AaW1wb3J0ICdfYXBwd29yay9idXR0b24tZ3JvdXAnO1xuQGltcG9ydCAnX2FwcHdvcmsvYmFkZ2UnO1xuQGltcG9ydCAnX2FwcHdvcmsvZHJvcGRvd24nO1xuQGltcG9ydCAnX2FwcHdvcmsvbmF2JztcbkBpbXBvcnQgJ19hcHB3b3JrL3BhZ2luYXRpb24nO1xuQGltcG9ydCAnX2FwcHdvcmsvYWxlcnQnO1xuQGltcG9ydCAnX2FwcHdvcmsvdG9vbHRpcCc7XG5AaW1wb3J0ICdfYXBwd29yay9wb3BvdmVyJztcbkBpbXBvcnQgJ19hcHB3b3JrL2Zvcm1zJztcbkBpbXBvcnQgJ19hcHB3b3JrL2N1c3RvbS1mb3Jtcyc7XG5AaW1wb3J0ICdfYXBwd29yay9zd2l0Y2hlcic7XG5AaW1wb3J0ICdfYXBwd29yay9pbnB1dC1ncm91cCc7XG5AaW1wb3J0ICdfYXBwd29yay9tb2RhbCc7XG5AaW1wb3J0ICdfYXBwd29yay9icmVhZGNydW1iJztcbkBpbXBvcnQgJ19hcHB3b3JrL2xpc3QtZ3JvdXAnO1xuQGltcG9ydCAnX2FwcHdvcmsvbmF2YmFyJztcbkBpbXBvcnQgJ19hcHB3b3JrL2NhcmQnO1xuQGltcG9ydCAnX2FwcHdvcmsvYWNjb3JkaW9uJztcbkBpbXBvcnQgJ19hcHB3b3JrL2Nhcm91c2VsJztcbkBpbXBvcnQgJ19hcHB3b3JrL2Nsb3NlJztcbkBpbXBvcnQgJ19hcHB3b3JrL3RvYXN0cyc7XG5AaW1wb3J0ICdfYXBwd29yay9mb290ZXInO1xuQGltcG9ydCAnX2FwcHdvcmsvc2lkZW5hdic7XG5AaW1wb3J0ICdfYXBwd29yay9sYXlvdXQnO1xuQGltcG9ydCAnX2FwcHdvcmsvYXBwLWJyYW5kJztcbkBpbXBvcnQgJ19hcHB3b3JrL3NwaW5uZXJzJztcbiIsIkBpbXBvcnQgJy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mdW5jdGlvbnMnO1xuQGltcG9ydCAnZnVuY3Rpb25zJztcbkBpbXBvcnQgJy4uL19jdXN0b20tdmFyaWFibGVzL2FwcHdvcmsnO1xuQGltcG9ydCAndmFyaWFibGVzJztcbkBpbXBvcnQgJy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy92YXJpYWJsZXMnO1xuQGltcG9ydCAnLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucyc7XG5AaW1wb3J0ICdtaXhpbnMnO1xuIiwiLy8gQm9vdHN0cmFwIGZ1bmN0aW9uc1xuLy9cbi8vIFV0aWxpdHkgbWl4aW5zIGFuZCBmdW5jdGlvbnMgZm9yIGV2YWx1YXRpbmcgc291cmNlIGNvZGUgYWNyb3NzIG91ciB2YXJpYWJsZXMsIG1hcHMsIGFuZCBtaXhpbnMuXG5cbi8vIEFzY2VuZGluZ1xuLy8gVXNlZCB0byBldmFsdWF0ZSBTYXNzIG1hcHMgbGlrZSBvdXIgZ3JpZCBicmVha3BvaW50cy5cbkBtaXhpbiBfYXNzZXJ0LWFzY2VuZGluZygkbWFwLCAkbWFwLW5hbWUpIHtcbiAgJHByZXYta2V5OiBudWxsO1xuICAkcHJldi1udW06IG51bGw7XG4gIEBlYWNoICRrZXksICRudW0gaW4gJG1hcCB7XG4gICAgQGlmICRwcmV2LW51bSA9PSBudWxsIG9yIHVuaXQoJG51bSkgPT0gXCIlXCIge1xuICAgICAgLy8gRG8gbm90aGluZ1xuICAgIH0gQGVsc2UgaWYgbm90IGNvbXBhcmFibGUoJHByZXYtbnVtLCAkbnVtKSB7XG4gICAgICBAd2FybiBcIlBvdGVudGlhbGx5IGludmFsaWQgdmFsdWUgZm9yICN7JG1hcC1uYW1lfTogVGhpcyBtYXAgbXVzdCBiZSBpbiBhc2NlbmRpbmcgb3JkZXIsIGJ1dCBrZXkgJyN7JGtleX0nIGhhcyB2YWx1ZSAjeyRudW19IHdob3NlIHVuaXQgbWFrZXMgaXQgaW5jb21wYXJhYmxlIHRvICN7JHByZXYtbnVtfSwgdGhlIHZhbHVlIG9mIHRoZSBwcmV2aW91cyBrZXkgJyN7JHByZXYta2V5fScgIVwiO1xuICAgIH0gQGVsc2UgaWYgJHByZXYtbnVtID49ICRudW0ge1xuICAgICAgQHdhcm4gXCJJbnZhbGlkIHZhbHVlIGZvciAjeyRtYXAtbmFtZX06IFRoaXMgbWFwIG11c3QgYmUgaW4gYXNjZW5kaW5nIG9yZGVyLCBidXQga2V5ICcjeyRrZXl9JyBoYXMgdmFsdWUgI3skbnVtfSB3aGljaCBpc24ndCBncmVhdGVyIHRoYW4gI3skcHJldi1udW19LCB0aGUgdmFsdWUgb2YgdGhlIHByZXZpb3VzIGtleSAnI3skcHJldi1rZXl9JyAhXCI7XG4gICAgfVxuICAgICRwcmV2LWtleTogJGtleTtcbiAgICAkcHJldi1udW06ICRudW07XG4gIH1cbn1cblxuLy8gU3RhcnRzIGF0IHplcm9cbi8vIFVzZWQgdG8gZW5zdXJlIHRoZSBtaW4td2lkdGggb2YgdGhlIGxvd2VzdCBicmVha3BvaW50IHN0YXJ0cyBhdCAwLlxuQG1peGluIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJG1hcCwgJG1hcC1uYW1lOiBcIiRncmlkLWJyZWFrcG9pbnRzXCIpIHtcbiAgJHZhbHVlczogbWFwLXZhbHVlcygkbWFwKTtcbiAgJGZpcnN0LXZhbHVlOiBudGgoJHZhbHVlcywgMSk7XG4gIEBpZiAkZmlyc3QtdmFsdWUgIT0gMCB7XG4gICAgQHdhcm4gXCJGaXJzdCBicmVha3BvaW50IGluICN7JG1hcC1uYW1lfSBtdXN0IHN0YXJ0IGF0IDAsIGJ1dCBzdGFydHMgYXQgI3skZmlyc3QtdmFsdWV9LlwiO1xuICB9XG59XG5cbi8vIFJlcGxhY2UgYCRzZWFyY2hgIHdpdGggYCRyZXBsYWNlYCBpbiBgJHN0cmluZ2Bcbi8vIFVzZWQgb24gb3VyIFNWRyBpY29uIGJhY2tncm91bmRzIGZvciBjdXN0b20gZm9ybXMuXG4vL1xuLy8gQGF1dGhvciBIdWdvIEdpcmF1ZGVsXG4vLyBAcGFyYW0ge1N0cmluZ30gJHN0cmluZyAtIEluaXRpYWwgc3RyaW5nXG4vLyBAcGFyYW0ge1N0cmluZ30gJHNlYXJjaCAtIFN1YnN0cmluZyB0byByZXBsYWNlXG4vLyBAcGFyYW0ge1N0cmluZ30gJHJlcGxhY2UgKCcnKSAtIE5ldyB2YWx1ZVxuLy8gQHJldHVybiB7U3RyaW5nfSAtIFVwZGF0ZWQgc3RyaW5nXG5AZnVuY3Rpb24gc3RyLXJlcGxhY2UoJHN0cmluZywgJHNlYXJjaCwgJHJlcGxhY2U6IFwiXCIpIHtcbiAgJGluZGV4OiBzdHItaW5kZXgoJHN0cmluZywgJHNlYXJjaCk7XG5cbiAgQGlmICRpbmRleCB7XG4gICAgQHJldHVybiBzdHItc2xpY2UoJHN0cmluZywgMSwgJGluZGV4IC0gMSkgKyAkcmVwbGFjZSArIHN0ci1yZXBsYWNlKHN0ci1zbGljZSgkc3RyaW5nLCAkaW5kZXggKyBzdHItbGVuZ3RoKCRzZWFyY2gpKSwgJHNlYXJjaCwgJHJlcGxhY2UpO1xuICB9XG5cbiAgQHJldHVybiAkc3RyaW5nO1xufVxuXG4vLyBDb2xvciBjb250cmFzdFxuQGZ1bmN0aW9uIGNvbG9yLXlpcSgkY29sb3IsICRkYXJrOiAkeWlxLXRleHQtZGFyaywgJGxpZ2h0OiAkeWlxLXRleHQtbGlnaHQpIHtcbiAgJHI6IHJlZCgkY29sb3IpO1xuICAkZzogZ3JlZW4oJGNvbG9yKTtcbiAgJGI6IGJsdWUoJGNvbG9yKTtcblxuICAkeWlxOiAoKCRyICogMjk5KSArICgkZyAqIDU4NykgKyAoJGIgKiAxMTQpKSAvIDEwMDA7XG5cbiAgQGlmICgkeWlxID49ICR5aXEtY29udHJhc3RlZC10aHJlc2hvbGQpIHtcbiAgICBAcmV0dXJuICRkYXJrO1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuICRsaWdodDtcbiAgfVxufVxuXG4vLyBSZXRyaWV2ZSBjb2xvciBTYXNzIG1hcHNcbkBmdW5jdGlvbiBjb2xvcigka2V5OiBcImJsdWVcIikge1xuICBAcmV0dXJuIG1hcC1nZXQoJGNvbG9ycywgJGtleSk7XG59XG5cbkBmdW5jdGlvbiB0aGVtZS1jb2xvcigka2V5OiBcInByaW1hcnlcIikge1xuICBAcmV0dXJuIG1hcC1nZXQoJHRoZW1lLWNvbG9ycywgJGtleSk7XG59XG5cbkBmdW5jdGlvbiBncmF5KCRrZXk6IFwiMTAwXCIpIHtcbiAgQHJldHVybiBtYXAtZ2V0KCRncmF5cywgJGtleSk7XG59XG5cbi8vIFJlcXVlc3QgYSB0aGVtZSBjb2xvciBsZXZlbFxuQGZ1bmN0aW9uIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvci1uYW1lOiBcInByaW1hcnlcIiwgJGxldmVsOiAwKSB7XG4gICRjb2xvcjogdGhlbWUtY29sb3IoJGNvbG9yLW5hbWUpO1xuICAkY29sb3ItYmFzZTogaWYoJGxldmVsID4gMCwgJGJsYWNrLCAkd2hpdGUpO1xuICAkbGV2ZWw6IGFicygkbGV2ZWwpO1xuXG4gIEByZXR1cm4gbWl4KCRjb2xvci1iYXNlLCAkY29sb3IsICRsZXZlbCAqICR0aGVtZS1jb2xvci1pbnRlcnZhbCk7XG59XG4iLCIvLyBGdW5jdGlvbnNcbi8vXG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogTWF0aFxuXG4kcGk6IDMuMTQxNTkyNjUzNTk7XG4kX3ByZWNpc2lvbjogMTA7XG5cbkBmdW5jdGlvbiBwb3coJGJhc2UsICRleHApIHtcbiAgJHZhbHVlOiAkYmFzZTtcbiAgQGlmICRleHAgPiAxIHtcbiAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRleHAge1xuICAgICAgJHZhbHVlOiAkdmFsdWUgKiAkYmFzZTtcbiAgICB9XG4gIH1cbiAgQGlmICRleHAgPCAxe1xuICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggLSRleHAge1xuICAgICAgJHZhbHVlOiAkdmFsdWUgLyAkYmFzZTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkdmFsdWU7XG59XG5cbkBmdW5jdGlvbiBzcXJ0KCRyKSB7XG4gICR4MDogMTtcbiAgJHgxOiAkeDA7XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAxMCB7XG4gICAgJHgxOiAkeDAgLSAoJHgwICogJHgwIC0gYWJzKCRyKSkgLyAoMiAqICR4MCk7XG4gICAgJHgwOiAkeDE7XG4gIH1cblxuICBAcmV0dXJuICR4MTtcbn1cblxuQGZ1bmN0aW9uIGZhY3QoJG51bSkge1xuICAkZmFjdDogMTtcbiAgQGlmICRudW0gPiAwe1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJG51bSB7XG4gICAgICAkZmFjdDogJGZhY3QgKiAkaTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkZmFjdDtcbn1cblxuQGZ1bmN0aW9uIF90b191bml0bGVzc19yYWQoJGFuZ2xlKSB7XG4gIEBpZiB1bml0KCRhbmdsZSkgPT0gXCJkZWdcIiB7XG4gICAgJGFuZ2xlOiAkYW5nbGUgLyAxODBkZWcgKiAkcGk7XG4gIH1cbiAgQGlmIHVuaXQoJGFuZ2xlKSA9PSBcInJhZFwiIHtcbiAgICAkYW5nbGU6ICRhbmdsZSAvIDFyYWQ7XG4gIH1cbiAgQHJldHVybiAkYW5nbGU7XG59XG5cbkBmdW5jdGlvbiBzaW4oJGFuZ2xlKXtcbiAgJGE6IF90b191bml0bGVzc19yYWQoJGFuZ2xlKTtcbiAgJHNpbjogJGE7XG4gIEBmb3IgJG4gZnJvbSAxIHRocm91Z2ggJF9wcmVjaXNpb24ge1xuICAgICRzaW46ICRzaW4gKyAocG93KC0xLCAkbikgLyBmYWN0KDIgKiAkbiArIDEpICkgKiBwb3coJGEsICgyICogJG4gKyAxKSk7XG4gIH1cbiAgQHJldHVybiAkc2luO1xufVxuXG5AZnVuY3Rpb24gY29zKCRhbmdsZSl7XG4gICRhOiBfdG9fdW5pdGxlc3NfcmFkKCRhbmdsZSk7XG4gICRjb3M6IDE7XG4gIEBmb3IgJG4gZnJvbSAxIHRocm91Z2ggJF9wcmVjaXNpb24ge1xuICAgICRjb3M6ICRjb3MgKyAoIHBvdygtMSwkbikgLyBmYWN0KDIqJG4pICkgKiBwb3coJGEsMiokbik7XG4gIH1cbiAgQHJldHVybiAkY29zO1xufVxuXG5AZnVuY3Rpb24gdGFuKCRhbmdsZSl7XG4gIEByZXR1cm4gc2luKCRhbmdsZSkgLyBjb3MoJGFuZ2xlKTtcbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBMaXN0c1xuXG5AZnVuY3Rpb24gc2xpY2UtbGlzdCgkbGlzdCwgJHN0YXJ0OiAxLCAkZW5kOiBsZW5ndGgoJGxpc3QpKSB7XG4gICRyZXN1bHQ6IG51bGw7XG5cbiAgQGlmIHR5cGUtb2YoJHN0YXJ0KSAhPSBudW1iZXIgb3IgdHlwZS1vZigkZW5kKSAhPSBudW1iZXIge1xuICAgIEB3YXJuIFwiRWl0aGVyICRzdGFydCBvciAkZW5kIGFyZSBub3QgYSBudW1iZXIgZm9yIGBzbGljZWAuXCI7XG4gIH1cblxuICBAZWxzZSBpZiAkc3RhcnQgPiAkZW5kIHtcbiAgICBAd2FybiBcIlRoZSBzdGFydCBpbmRleCBoYXMgdG8gYmUgbGVzc2VyIHRoYW4gb3IgZXF1YWxzIHRvIHRoZSBlbmQgaW5kZXggZm9yIGBzbGljZWAuXCI7XG4gIH1cblxuICBAZWxzZSBpZiAkc3RhcnQgPCAxIG9yICRlbmQgPCAxIHtcbiAgICBAd2FybiBcIkxpc3QgaW5kZXhlcyBtdXN0IGJlIG5vbi16ZXJvIGludGVnZXJzIGZvciBgc2xpY2VgLlwiO1xuICB9XG5cbiAgQGVsc2UgaWYgJHN0YXJ0ID4gbGVuZ3RoKCRsaXN0KSB7XG4gICAgQHdhcm4gXCJMaXN0IGluZGV4IGlzICN7JHN0YXJ0fSBidXQgbGlzdCBpcyBvbmx5ICN7bGVuZ3RoKCRsaXN0KX0gaXRlbSBsb25nIGZvciBgc2xpY2VgLlwiO1xuICB9XG5cbiAgQGVsc2UgaWYgJGVuZCA+IGxlbmd0aCgkbGlzdCkge1xuICAgIEB3YXJuIFwiTGlzdCBpbmRleCBpcyAjeyRlbmR9IGJ1dCBsaXN0IGlzIG9ubHkgI3tsZW5ndGgoJGxpc3QpfSBpdGVtIGxvbmcgZm9yIGBzbGljZWAuXCI7XG4gIH1cblxuICBAZWxzZSB7XG4gICAgJHJlc3VsdDogKCk7XG5cbiAgICBAZm9yICRpIGZyb20gJHN0YXJ0IHRocm91Z2ggJGVuZCB7XG4gICAgICAkcmVzdWx0OiBhcHBlbmQoJHJlc3VsdCwgbnRoKCRsaXN0LCAkaSkpO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJHJlc3VsdDtcbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBTdHJpbmdzXG5cbkBmdW5jdGlvbiBzdHItcmVwbGFjZSgkc3RyaW5nLCAkc2VhcmNoLCAkcmVwbGFjZTogJycpIHtcbiAgJGluZGV4OiBzdHItaW5kZXgoJHN0cmluZywgJHNlYXJjaCk7XG5cbiAgQGlmICRpbmRleCB7XG4gICAgQHJldHVybiBzdHItc2xpY2UoJHN0cmluZywgMSwgJGluZGV4IC0gMSkgKyAkcmVwbGFjZSArIHN0ci1yZXBsYWNlKHN0ci1zbGljZSgkc3RyaW5nLCAkaW5kZXggKyBzdHItbGVuZ3RoKCRzZWFyY2gpKSwgJHNlYXJjaCwgJHJlcGxhY2UpO1xuICB9XG5cbiAgQHJldHVybiAkc3RyaW5nO1xufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIENvbG9yc1xuXG5AZnVuY3Rpb24gcmdiYS10by1oZXgoJGNvbG9yLCAkYmFja2dyb3VuZDogI2ZmZikge1xuICBAaWYgJGNvbG9yIGFuZCBhbHBoYSgkY29sb3IpICE9IDEge1xuICAgICRwZXJjZW50OiBhbHBoYSgkY29sb3IpICogMTAwJTtcbiAgICAkb3BhcXVlOiBvcGFjaWZ5KCRjb2xvciwgMSk7XG5cbiAgICBAcmV0dXJuIG1peCgkb3BhcXVlLCAkYmFja2dyb3VuZCwgJHBlcmNlbnQpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuICRjb2xvcjtcbiAgfVxufVxuXG5AZnVuY3Rpb24geWlxLXZhbHVlKCRjb2xvcikge1xuICBAaWYgJGNvbG9yID09IHRyYW5zcGFyZW50IHtcbiAgICBAcmV0dXJuICRib2R5LWNvbG9yO1xuICB9IEBlbHNlIGlmIGFscGhhKCRjb2xvcikgIT0gMSB7XG4gICAgJGNvbG9yOiByZ2JhLXRvLWhleCgkY29sb3IpO1xuICB9XG5cbiAgJHI6IHJlZCgkY29sb3IpO1xuICAkZzogZ3JlZW4oJGNvbG9yKTtcbiAgJGI6IGJsdWUoJGNvbG9yKTtcblxuICBAcmV0dXJuICgoJHIgKiAyOTkpICsgKCRnICogNTg3KSArICgkYiAqIDExNCkpIC8gMTAwMDtcbn1cblxuLy8gQ29sb3IgY29udHJhc3RcbkBmdW5jdGlvbiB5aXEoJGNvbG9yKSB7XG4gICR5aXE6IHlpcS12YWx1ZSgkY29sb3IpO1xuXG4gIEBpZiAoJHlpcSA+PSAxNjApIHtcbiAgICBAcmV0dXJuIHJnYmEtdG8taGV4KHJnYmEoJGNvbG9yLCAuNDApLCAjMDAwKTtcbiAgfSBAZWxzZSB7XG4gICAgQHJldHVybiAjZmZmO1xuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogVW5pdHNcblxuQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJG51bWJlcikge1xuICBAaWYgdHlwZS1vZigkbnVtYmVyKSA9PSAnbnVtYmVyJyBhbmQgbm90IHVuaXRsZXNzKCRudW1iZXIpIHtcbiAgICBAcmV0dXJuICRudW1iZXIgLyAoJG51bWJlciAqIDAgKyAxKTtcbiAgfVxuXG4gIEByZXR1cm4gJG51bWJlcjtcbn1cblxuQGZ1bmN0aW9uIHB4LXRvLXJlbSgkdmFsdWUpIHtcbiAgLy8gQXNzdW1lcyB0aGUgYnJvd3NlciBkZWZhdWx0IGZvbnQgc2l6ZSA9IGAxNnB4YFxuICBAcmV0dXJuIChzdHJpcC11bml0KCR2YWx1ZSkgLyAxNikgKiAxcmVtO1xufVxuXG5AZnVuY3Rpb24gcmVtLXRvLXB4KCR2YWx1ZSkge1xuICAvLyBBc3N1bWVzIHRoZSBicm93c2VyIGRlZmF1bHQgZm9udCBzaXplID0gYDE2cHhgXG4gIEByZXR1cm4gKHN0cmlwLXVuaXQoJHZhbHVlKSAqIDE2KSAqIDFweDtcbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBVdGlsaXRpZXNcblxuQGZ1bmN0aW9uIGdldC1idG4tY29sb3JzKCRiYWNrZ3JvdW5kLCAkYm9yZGVyKSB7XG4gIEBpZiAkYmFja2dyb3VuZCA9PSB0cmFuc3BhcmVudCB7XG4gICAgJGJ0bi1zaGFkb3c6IHJnYmEocmdiYS10by1oZXgoJGJvcmRlciwgIzAwMCksIC4wNSk7XG5cbiAgICBAcmV0dXJuIChcbiAgICAgIGJnLWhvdmVyOiAgcmdiYSgkYm9yZGVyLCAuMDYpLFxuICAgICAgYmctYWN0aXZlOiByZ2JhKCRib3JkZXIsIC4xMiksXG4gICAgICBib3JkZXI6ICAgICRib3JkZXIsXG4gICAgICBzaGFkb3c6ICAgIGlmKCRlbmFibGUtc2hhZG93cywgKCRidG4tYm94LXNoYWRvdywgMCAwIDAgJGNvbXBvbmVudC1mb2N1cy1zaGFkb3ctd2lkdGggJGJ0bi1zaGFkb3cpLCAwIDAgMCAkY29tcG9uZW50LWZvY3VzLXNoYWRvdy13aWR0aCAkYnRuLXNoYWRvdylcbiAgICApO1xuICB9IEBlbHNlIGlmIGFscGhhKCRiYWNrZ3JvdW5kKSAhPSAxIHtcbiAgICAkYmctYWxwaGE6ICAgYWxwaGEoJGJhY2tncm91bmQpO1xuICAgICRidG4tc2hhZG93OiByZ2JhKCRiYWNrZ3JvdW5kLCAkYmctYWxwaGEgLSAoJGJnLWFscGhhICogNTUgLyAxMDApICk7XG5cbiAgICBAcmV0dXJuIChcbiAgICAgIGJnLWhvdmVyOiAgcmdiYSgkYmFja2dyb3VuZCwgJGJnLWFscGhhICsgMC4wNSksXG4gICAgICBiZy1hY3RpdmU6IHJnYmEoJGJhY2tncm91bmQsICRiZy1hbHBoYSArIDAuMTMpLFxuICAgICAgYm9yZGVyOiAgICB0cmFuc3BhcmVudCxcbiAgICAgIHNoYWRvdzogICAgaWYoJGVuYWJsZS1zaGFkb3dzLCAoJGJ0bi1ib3gtc2hhZG93LCAwIDAgMCAkY29tcG9uZW50LWZvY3VzLXNoYWRvdy13aWR0aCAkYnRuLXNoYWRvdyksIDAgMCAwICRjb21wb25lbnQtZm9jdXMtc2hhZG93LXdpZHRoICRidG4tc2hhZG93KVxuICAgICk7XG4gIH0gQGVsc2Uge1xuICAgIEByZXR1cm4gKFxuICAgICAgYmctaG92ZXI6ICByZ2JhLXRvLWhleChyZ2JhKCRiYWNrZ3JvdW5kLCAuOTUpLCAjMDAwKSxcbiAgICAgIGJnLWFjdGl2ZTogcmdiYS10by1oZXgocmdiYSgkYmFja2dyb3VuZCwgLjg3KSwgIzAwMCksXG4gICAgICBib3JkZXI6ICAgIHRyYW5zcGFyZW50LFxuICAgICAgc2hhZG93OiAgICBpZigkZW5hYmxlLXNoYWRvd3MsICgkYnRuLWJveC1zaGFkb3csIDAgMCAwICRjb21wb25lbnQtZm9jdXMtc2hhZG93LXdpZHRoIHJnYmEoJGJhY2tncm91bmQsIC40KSksIDAgMCAwICRjb21wb25lbnQtZm9jdXMtc2hhZG93LXdpZHRoIHJnYmEoJGJhY2tncm91bmQsIC40KSlcbiAgICApO1xuICB9XG59XG5cbkBmdW5jdGlvbiBnZXQtbWF0ZXJpYWwtYnRuLWNvbG9ycygkYmFja2dyb3VuZCkge1xuICBAaWYgYWxwaGEoJGJhY2tncm91bmQpICE9IDEge1xuICAgICRiYWNrZ3JvdW5kOiByZ2JhLXRvLWhleCgkYmFja2dyb3VuZCk7XG4gIH1cblxuICBAcmV0dXJuIChcbiAgICBiZy1ob3ZlcjogIHJnYmEtdG8taGV4KHJnYmEoJGJhY2tncm91bmQsIC45NSksICNmZmYpLFxuICAgIGJnLWFjdGl2ZTogcmdiYS10by1oZXgocmdiYSgkYmFja2dyb3VuZCwgLjg3KSwgI2ZmZiksXG4gICk7XG59XG5cbkBmdW5jdGlvbiBnZXQtbmF2LWNvbG9ycygkYmcsICRhY3RpdmUtY29sb3I6IG51bGwsICRpbmFjdGl2ZS1jb2xvcjogbnVsbCwgJGJvcmRlcjogbnVsbCkge1xuICAkYmc6IHJnYmEtdG8taGV4KCRiZyk7XG4gICRhY3RpdmUtY29sb3I6IHJnYmEtdG8taGV4KCRhY3RpdmUtY29sb3IpO1xuICAkYWN0aXZlLWNvbG9yOiBpZigkYWN0aXZlLWNvbG9yLCAkYWN0aXZlLWNvbG9yLCB5aXEoJGJnKSk7XG4gICR5aXEtcGVyY2VudDogeWlxLXZhbHVlKCRiZykgLyAyNTU7XG4gICR5aXEtcGVyY2VudC1pbnZlcnRlZDogMSAtICR5aXEtcGVyY2VudDtcblxuICAkb3BhY2l0eTogaWYoJGFjdGl2ZS1jb2xvciA9PSAjZmZmLCAuNiArICguNCAqICR5aXEtcGVyY2VudCksIC42ICsgKC40ICogKDEgLSAkeWlxLXBlcmNlbnQpKSk7XG5cbiAgJGNvbG9yOiBpZigkaW5hY3RpdmUtY29sb3IsIHJnYmEtdG8taGV4KCRpbmFjdGl2ZS1jb2xvciwgJGJnKSwgcmdiYS10by1oZXgocmdiYSgkYWN0aXZlLWNvbG9yLCBpZigkeWlxLXBlcmNlbnQgPCAuMjUsICRvcGFjaXR5IC0gLjE1LCAkb3BhY2l0eSkpLCAkYmcpKTtcbiAgJGRpc2FibGVkLWNvbG9yOiByZ2JhLXRvLWhleChyZ2JhKCRjb2xvciwgLjYpLCAkYmcpO1xuICAkbXV0ZWQtY29sb3I6IHJnYmEtdG8taGV4KHJnYmEoJGNvbG9yLCAuNzUpLCAkYmcpO1xuICAkYm9yZGVyOiBpZigkYm9yZGVyLCAkYm9yZGVyLCBpZigkeWlxLXBlcmNlbnQgPiAuNzUsIHJnYmEoJGFjdGl2ZS1jb2xvciwgJG9wYWNpdHkgLyA4KSwgaWYoJHlpcS1wZXJjZW50IDwgLjI1LCByZ2JhKCRhY3RpdmUtY29sb3IsIC4wNiksIHJnYmEoJGFjdGl2ZS1jb2xvciwgLjE1KSkpKTtcblxuICBAcmV0dXJuIChcbiAgICAvLyBNZXRhZGF0YVxuICAgIG9wYWNpdHk6ICRvcGFjaXR5LFxuICAgIHlpcS1wZXJjZW50OiAkeWlxLXBlcmNlbnQsXG4gICAgeWlxLXBlcmNlbnQtaW52ZXJ0ZWQ6ICR5aXEtcGVyY2VudC1pbnZlcnRlZCxcblxuICAgIC8vIENvbG9yc1xuICAgIGJnOiAkYmcsXG4gICAgY29sb3I6ICRjb2xvcixcbiAgICBhY3RpdmUtY29sb3I6ICRhY3RpdmUtY29sb3IsXG4gICAgZGlzYWJsZWQtY29sb3I6ICRkaXNhYmxlZC1jb2xvcixcbiAgICBtdXRlZC1jb2xvcjogJG11dGVkLWNvbG9yLFxuICAgIGJvcmRlcjogJGJvcmRlclxuICApO1xufVxuIiwiIiwiLy8gVmFyaWFibGVzXG4vL1xuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIENvbG9yc1xuXG4kd2hpdGU6ICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJsYWNrOiAgICAgICAgIzE4MUMyMSAhZGVmYXVsdDtcbiRncmF5LTI1OiAgICAgIHJnYmEoJGJsYWNrLCAuMDE1KSAhZGVmYXVsdDtcbiRncmF5LTUwOiAgICAgIHJnYmEoJGJsYWNrLCAuMDMpICFkZWZhdWx0O1xuJGdyYXktMTAwOiAgICAgcmdiYSgkYmxhY2ssIC4wNikgIWRlZmF1bHQ7XG4kZ3JheS0yMDA6ICAgICByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGdyYXktMzAwOiAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRncmF5LTQwMDogICAgIHJnYmEoJGJsYWNrLCAuMykgIWRlZmF1bHQ7XG4kZ3JheS01MDA6ICAgICByZ2JhKCRibGFjaywgLjQpICFkZWZhdWx0O1xuJGdyYXktNjAwOiAgICAgcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRncmF5LTcwMDogICAgIHJnYmEoJGJsYWNrLCAuNikgIWRlZmF1bHQ7XG4kZ3JheS04MDA6ICAgICByZ2JhKCRibGFjaywgLjgpICFkZWZhdWx0O1xuJGdyYXktOTAwOiAgICAgcmdiYSgkYmxhY2ssIC45KSAhZGVmYXVsdDtcblxuJGdyYXlzOiAoXG4gIFwiMjVcIjogJGdyYXktMjUsXG4gIFwiNTBcIjogJGdyYXktNTBcbikgIWRlZmF1bHQ7XG5cbiRibHVlOiAgICAgICAgICMxZTcwY2QgIWRlZmF1bHQ7XG4kaW5kaWdvOiAgICAgICAjNjYxMGYyICFkZWZhdWx0O1xuJHB1cnBsZTogICAgICAgIzZmNDJjMSAhZGVmYXVsdDtcbiRwaW5rOiAgICAgICAgICNlODNlOGMgIWRlZmF1bHQ7XG4kcmVkOiAgICAgICAgICAjZDk1MzRmICFkZWZhdWx0O1xuJG9yYW5nZTogICAgICAgI0ZFQjc0NCAhZGVmYXVsdDtcbiR5ZWxsb3c6ICAgICAgICNGRkQ5NTAgIWRlZmF1bHQ7XG4kZ3JlZW46ICAgICAgICAjMDJCQzc3ICFkZWZhdWx0O1xuJHRlYWw6ICAgICAgICAgIzIwYzk5NyAhZGVmYXVsdDtcbiRjeWFuOiAgICAgICAgICMyOGMzZDcgIWRlZmF1bHQ7XG5cbiR0aGVtZS1jb2xvcnM6IChcbiAgXCJwcmltYXJ5XCI6ICAgJGluZGlnbyxcbiAgXCJzZWNvbmRhcnlcIjogIzg4OTdBQSxcbiAgXCJzdWNjZXNzXCI6ICAgJGdyZWVuLFxuICBcImluZm9cIjogICAgICAkY3lhbixcbiAgXCJ3YXJuaW5nXCI6ICAgJHllbGxvdyxcbiAgXCJkYW5nZXJcIjogICAgJHJlZCxcbiAgXCJkYXJrXCI6ICAgICAgJGdyYXktOTAwXG4pICFkZWZhdWx0O1xuXG4kYm9keS1jb2xvcjogICAgICAgIzRFNTE1NSAhZGVmYXVsdDsgLy8jNGE0YTRhXG5cbi8vICMwNmNcbiRsaW5rLWNvbG9yOiAgICAgICAkYmx1ZSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWNvbG9yOiBsaWdodGVuKCRsaW5rLWNvbG9yLCAxMCUpICFkZWZhdWx0O1xuXG4kc3BhY2VyOiAxcmVtICFkZWZhdWx0O1xuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEZvbnRzXG5cbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiBcIlJvYm90b1wiLCAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgXCJPeHlnZW5cIiwgXCJVYnVudHVcIiwgXCJDYW50YXJlbGxcIiwgXCJGaXJhIFNhbnNcIiwgXCJEcm9pZCBTYW5zXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1zZXJpZjogICAgICBHZW9yZ2lhLCBcIlRpbWVzIE5ldyBSb21hblwiLCBzZXJpZjtcbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICBcIlNGTW9uby1SZWd1bGFyXCIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAkZm9udC1mYW1pbHktc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgIC44OTRyZW0gIWRlZmF1bHQ7XG4kZm9udC1zaXplLXhsOiAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRmb250LXNpemUtbGc6ICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1zbTogICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRmb250LXNpemUteHM6ICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtc2VtaWJvbGQ6ICAgNTAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGRlcjogICAgIDkwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1saWdodGVyOiAgICAxMDAgIWRlZmF1bHQ7XG5cbiRsaW5lLWhlaWdodC1iYXNlOiAgICAgICAxLjQ3ICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LXhsOiAgICAgICAgIDEuNSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1sZzogICAgICAgICAxLjUgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtc206ICAgICAgICAgMS41ICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LXhzOiAgICAgICAgIDEuNSAhZGVmYXVsdDtcblxuJGgxLWZvbnQtc2l6ZTogICAgICAgICAgIDIuMjVyZW0gIWRlZmF1bHQ7XG4kaDItZm9udC1zaXplOiAgICAgICAgICAgMS44MTNyZW0gIWRlZmF1bHQ7XG4kaDMtZm9udC1zaXplOiAgICAgICAgICAgMS41NjNyZW0gIWRlZmF1bHQ7XG4kaDQtZm9udC1zaXplOiAgICAgICAgICAgMS4zMTNyZW0gIWRlZmF1bHQ7XG4kaDUtZm9udC1zaXplOiAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6ICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG5cbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAkZm9udC13ZWlnaHQtc2VtaWJvbGQgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgMS4xICFkZWZhdWx0O1xuJGhlYWRpbmdzLW1hcmdpbi1ib3R0b206ICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS1zaXplOiAgICAgICAgICA0cmVtICFkZWZhdWx0O1xuJGRpc3BsYXkyLXNpemU6ICAgICAgICAgIDMuNXJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5My1zaXplOiAgICAgICAgICAzcmVtICFkZWZhdWx0O1xuJGRpc3BsYXk0LXNpemU6ICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG5cbiR0aW55LWZvbnQtc2l6ZTogICAgICAgICA3MCUgIWRlZmF1bHQ7XG4kc21hbGwtZm9udC1zaXplOiAgICAgICAgODUlICFkZWZhdWx0O1xuJGJpZy1mb250LXNpemU6ICAgICAgICAgIDExMiUgIWRlZmF1bHQ7XG4kbGFyZ2UtZm9udC1zaXplOiAgICAgICAgMTUwJSAhZGVmYXVsdDtcbiR4bGFyZ2UtZm9udC1zaXplOiAgICAgICAxNzAlICFkZWZhdWx0O1xuXG4kdGV4dC1tdXRlZDogICAgICAgICAgICAgcmdiYS10by1oZXgoJGdyYXktNTAwKSAhZGVmYXVsdDtcbiR0ZXh0LW11dGVkLWhvdmVyOiAgICAgICByZ2JhLXRvLWhleCgkZ3JheS02MDApICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtc21hbGwtY29sb3I6IHJnYmEtdG8taGV4KCRncmF5LTUwMCkgIWRlZmF1bHQ7XG4kdGV4dC1saWdodDogICAgICAgICAgICAgcmdiYS10by1oZXgoJGdyYXktNDAwKSAhZGVmYXVsdDtcbiR0ZXh0LWxpZ2h0ZXI6ICAgICAgICAgICByZ2JhLXRvLWhleCgkZ3JheS0zMDApICFkZWZhdWx0O1xuJHRleHQtbGlnaHRlc3Q6ICAgICAgICAgIHJnYmEtdG8taGV4KCRncmF5LTIwMCkgIWRlZmF1bHQ7XG5cbiRsaW5rLWhvdmVyLWRlY29yYXRpb246ICBub25lICFkZWZhdWx0O1xuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEdyaWRcblxuJGdyaWQtZ3V0dGVyLXdpZHRoOiAxLjVyZW0gIWRlZmF1bHQ7XG5cbiRjb250YWluZXItcGFkZGluZy14OiAycmVtICFkZWZhdWx0O1xuJGNvbnRhaW5lci1wYWRkaW5nLXgtc206IDFyZW0gIWRlZmF1bHQ7XG4kY29udGFpbmVyLXBhZGRpbmcteTogMS41cmVtICFkZWZhdWx0O1xuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIENvbXBvbmVudHNcblxuJGJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLC4wNikgIWRlZmF1bHQ7XG4kYm9yZGVyLWlubmVyLWNvbG9yOiAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcblxuJGJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXhsOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXhzOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGNvbXBvbmVudC1saW5lLWhlaWdodDogICAgICAgICAgIDEuNTQgIWRlZmF1bHQ7XG4kY29tcG9uZW50LWZvY3VzLXNoYWRvdy13aWR0aDogICAgMnB4ICFkZWZhdWx0O1xuXG4kZmxvYXRpbmctY29tcG9uZW50LWJvcmRlci1jb2xvcjogcmdiYSgkYmxhY2ssIC4wNSkgIWRlZmF1bHQ7XG4kZmxvYXRpbmctY29tcG9uZW50LXNoYWRvdzogICAgICAgMCAxcHggNnB4IHJnYmEoMCwgMCwgMCwgLjA5KSAhZGVmYXVsdDtcblxuJGhyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRib3JkZXJlZC1yb3ctYm9yZGVyLWNvbG9yOiAgICAgICAkaHItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kY2FyZXQtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgLjQyZW0gIWRlZmF1bHQ7XG4kY2FyZXQtdmVydGljYWwtYWxpZ246ICAgICAgICAgICAgbWlkZGxlICFkZWZhdWx0O1xuJGNhcmV0LXNwYWNpbmc6ICAgICAgICAgICAgICAgICAgIC41ZW0gIWRlZmF1bHQ7XG5cbiRvdmVyZmxvd3M6IGF1dG8sIGhpZGRlbiwgc2Nyb2xsLCB2aXNpYmxlICFkZWZhdWx0O1xuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFotaW5kZXggbWFzdGVyIGxpc3RcblxuJHppbmRleC1sYXlvdXQtZml4ZWQ6ICAxMDgwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC10b3A6ICAgICAxMDkwICFkZWZhdWx0O1xuJHppbmRleC1sYXlvdXQtbW9iaWxlOiAxMTAwICFkZWZhdWx0O1xuJHppbmRleC1ub3RpZmljYXRpb246ICA5OTk5OTkgIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogVGFibGVzXG5cbiR0YWJsZS1jZWxsLXBhZGRpbmc6ICAgICAgLjYyNXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmctc206ICAgLjMxMjVyZW0gIWRlZmF1bHQ7XG5cbiR0YWJsZS1hY2NlbnQtYmc6ICAgICAgICAgcmdiYSgkYmxhY2ssIC4wMjUpICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWJnOiAgICAgICAgICByZ2JhKCRibGFjaywgLjAzNSkgIWRlZmF1bHQ7XG4kdGFibGUtYWN0aXZlLWJnOiAgICAgICAgIHJnYmEtdG8taGV4KCR0YWJsZS1ob3Zlci1iZykgIWRlZmF1bHQ7XG5cbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgcmdiYS10by1oZXgoJGdyYXktMjAwKSAhZGVmYXVsdDtcblxuJHRhYmxlLWhlYWQtYmc6ICAgICAgICAgICAkZ3JheS01MCAhZGVmYXVsdDtcbiR0YWJsZS1oZWFkLWNvbG9yOiAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG5cbiR0YWJsZS1kYXJrLWJnOiAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYWNjZW50LWJnOiAgICByZ2JhKCR3aGl0ZSwgLjAzKSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWhvdmVyLWJnOiAgICAgcmdiYSgkd2hpdGUsIC4wNSkgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1ib3JkZXItY29sb3I6IGxpZ2h0ZW4ocmdiYS10by1oZXgoJGdyYXktOTAwKSwgNyUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstY29sb3I6ICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogQnV0dG9ucyArIEZvcm1zXG5cbiRpbnB1dC1idG4tcGFkZGluZy15OiAgICAgIC40MzhyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteDogICAgICAxLjEyNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplOiAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQ6ICAgIDEuNTQgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LXhzOiAgIDAgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC14czogICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplLXhzOiAgICRmb250LXNpemUteHMgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXhzOiAkbGluZS1oZWlnaHQteHMgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LXNtOiAgIC4xODhyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1zbTogICAuNjg3NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplLXNtOiAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtOiAkbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LWxnOiAgIC43NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LWxnOiAgIDEuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplLWxnOiAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnOiAkbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LXhsOiAgIC44NzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC14bDogICAyLjEyNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplLXhsOiAgICRmb250LXNpemUteGwgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXhsOiAkbGluZS1oZWlnaHQteGwgIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogQnV0dG9uc1xuXG4kYnRuLXBhZGRpbmcteS14czogICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS14cyAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LXhzOiAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXhzICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUteHM6ICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUteHMgIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0LXhzOiAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXhzICFkZWZhdWx0O1xuXG4kYnRuLXBhZGRpbmcteS14bDogICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS14bCAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LXhsOiAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXhsICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUteGw6ICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUteGwgIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0LXhsOiAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXhsICFkZWZhdWx0O1xuXG4kYnRuLWJvcmRlci1yYWRpdXMteHM6ICAkYm9yZGVyLXJhZGl1cy14cyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy14bDogICRib3JkZXItcmFkaXVzLXhsICFkZWZhdWx0O1xuXG4kYnRuLWJveC1zaGFkb3c6ICAgICAgICBub25lICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgMCAwIDAgJGNvbXBvbmVudC1mb2N1cy1zaGFkb3ctd2lkdGggcmdiYSh0aGVtZS1jb2xvcihcInByaW1hcnlcIiksIC4yNSkgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3gtc2hhZG93OiBub25lICFkZWZhdWx0O1xuXG4kYnRuLWRlZmF1bHQtYmc6ICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRidG4tZGVmYXVsdC1ib3JkZXI6ICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRidG4tZGVmYXVsdC1jb2xvcjogICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuXG4kYnRuLXRyYW5zaXRpb246ICAgICAgICBhbGwgLjJzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEZvcm1zXG5cbiRlbmFibGUtdmFsaWRhdGlvbi1pY29uczogICAgICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG5cbiRsYWJlbC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgLjgzMTI1cmVtICFkZWZhdWx0O1xuJGxhYmVsLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtc2VtaWJvbGQgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgLjg3NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtc206ICAgICAgICAgICAgICAgICAgICAgICAgLjYyNXJlbSAhZGVmYXVsdDtcblxuJGlucHV0LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgcmdiYS10by1oZXgoJGdyYXktMTAwKSAhZGVmYXVsdDtcblxuJGlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuXG4kaW5wdXQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICR0ZXh0LWxpZ2h0ICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWlubmVyOiAgICAgICAgICAgICAgICAgICAgICAgIHB4LXRvLXJlbShmbG9vcihyZW0tdG8tcHgoKCRpbnB1dC1idG4tZm9udC1zaXplICogJGlucHV0LWJ0bi1saW5lLWhlaWdodCkgKyAoJGlucHV0LWJ0bi1wYWRkaW5nLXkgKiAyKSkpKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItc206ICAgICAgICAgICAgICAgICAgICAgcHgtdG8tcmVtKGZsb29yKHJlbS10by1weCgoJGlucHV0LWJ0bi1mb250LXNpemUtc20gKiAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtKSArICgkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAqIDIpKSkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lci1sZzogICAgICAgICAgICAgICAgICAgICBweC10by1yZW0oZmxvb3IocmVtLXRvLXB4KCgkZm9udC1zaXplLWxnICogJGxpbmUtaGVpZ2h0LWxnKSArICgkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAqIDIpKSkpICFkZWZhdWx0O1xuXG4kaW5wdXQtaW52ZXJ0ZWQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgIHJnYmEoI2ZmZiwgLjMpICFkZWZhdWx0O1xuJGlucHV0LWludmVydGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGlucHV0LWludmVydGVkLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtaW52ZXJ0ZWQtYmcgIWRlZmF1bHQ7XG4kaW5wdXQtaW52ZXJ0ZWQtcGxhY2Vob2xkZXItY29sb3I6ICAgICAgICAgIHJnYmEoI2ZmZiwgLjcpICFkZWZhdWx0O1xuJGlucHV0LWludmVydGVkLWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICByZ2JhKCNmZmYsIC4xKSAhZGVmYXVsdDtcbiRpbnB1dC1pbnZlcnRlZC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAgJGlucHV0LWludmVydGVkLWNvbG9yICFkZWZhdWx0O1xuXG4kaW5wdXQtZ3JvdXAtYWRkb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjogICAgICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU6ICAgICAgICAgICAgIDEuMTI1cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZzogICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aDogICAgIDFweCAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yOiAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWd1dHRlcjogICAgICAgICAgICAgICAgICAgICAuNDM4cmVtICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1iZzogICAgICAgICAgICAgIFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgOS41IDcuNSclM0UlM0Nwb2x5bGluZSBwb2ludHM9JzAuNzUgNC4zNSA0LjE4IDYuNzUgOC43NSAwLjc1JyBzdHlsZT0nZmlsbDpub25lO3N0cm9rZTpfQ09MT1JfO3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2Utd2lkdGg6MS41cHgnLyUzRSUzQy9zdmclM0VcIiAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJnLXNpemU6ICAgICAgICAgNjUlICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRldGVybWluYXRlLWJnOiAgICAgICAgICBcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDQgNCclM0UlM0NwYXRoIHN0cm9rZT0nX0NPTE9SXycgZD0nTTAgMmg0Jy8lM0UlM0Mvc3ZnJTNFXCIgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtYmctc2l6ZTogICAgIC41cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYmc6ICAgICAgICAgICAgICAgICBcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4JyUzRSUzQ2NpcmNsZSByPSczJyBmaWxsPSdfQ09MT1JfJy8lM0UlM0Mvc3ZnJTNFXCIgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhZGlvLWluZGljYXRvci1iZy1zaXplOiAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWRpc2FibGVkLWJnOiAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1sYWJlbC1kaXNhYmxlZC1jb2xvcjogICAgICAgJHRleHQtbXV0ZWQgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24tY2hlY2tlZDogICAgbm9uZSAhZGVmYXVsdDtcbiRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWljb24tY2hlY2tlZDogICAgICAgbm9uZSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1zbTogICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtc206ICAgICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LWxnOiAgICAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14LWxnICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZzogICAgICAgICAgICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICAgJGlucHV0LWRpc2FibGVkLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW52ZXJ0ZWQtZGlzYWJsZWQtY29sb3I6ICAgICAkaW5wdXQtaW52ZXJ0ZWQtZGlzYWJsZWQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbnZlcnRlZC1kaXNhYmxlZC1iZzogICAgICAgICRpbnB1dC1pbnZlcnRlZC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtYmctc2l6ZTogICAgICAgICAgICAgICAgICAgICAxN3B4IDEycHggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3I6ICAgICAgICAgICAgICAgICAgIHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDSUFBQUFZQ0FZQUFBQ2ZwaThKQUFBQUJHZEJUVUVBQUxHUEMveGhCUUFBQUtCSlJFRlVTQTN0MWtFS2dDQVFCVkNURHRjaXVsSjJwV2pSaWFwVGFQd29rVUVqUlcwemdhSFNPSTlQUVdMYkQ0TWhmcjdrei8xdGU0YllLTzRKSjhLSjBBVG91cVVicWV1dUg1VFJla3lwYjZTY3NyMnM2eklySEJnTFFRMXFzMEVBaU1VOENOUm1oY1JnWEVRUnlCY01SUlNEdkdGOGlLSVFIeWFFd0xPaXhtOEFQbTJNcTJIb1ZnTVM2dTN1Wi85cTNNTmo1Z3loYVhFaW5BaE5nSzVQcHpoRU8vaFNNSzRBQUFBQVNVVk9SSzVDWUlJPScpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWludmVydGVkOiAgICAgICAgICB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0lBQUFBWUNBWUFBQUNmcGk4SkFBQUFCR2RCVFVFQUFMR1BDL3hoQlFBQUFKNUpSRUZVU0EzdDFHMEtnQ0FNQnVDTUR0Wmxvak9GaHpWZlVhRmxINDROLzB5SXNwdyt2R2hUQ0dIRk5RMXU4K0QxNi9JR3FWSGtCMHZFRXFFSjBQNUNYM0Q3OFYrMHg5cU5XZS9GTnF0ejdvZ0l6NEI0MUlwQkFHQmdFZ0sxb3BCT1RFV29RSDVpTGdnMXlBZm1obENGUEdDYUNJd1ZPNzZZck5Xd2dlUFJUcC95Wm00TjA0ZGcxVGRBVVltZm1qSng3OTBnTkRGTHhCS2hDZEQrQ1EzR0huZ3ZKVEdLQUFBQUFFbEZUa1N1UW1DQycpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXJ0bDogICAgICAgICAgICAgICB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0lBQUFBWUNBWUFBQUNmcGk4SkFBQUFCR2RCVFVFQUFMR1BDL3hoQlFBQUFLZEpSRUZVU0EzdGxsRUtnQ0FNaGxNNlhBL1JsYklyUlErZHFEcUZ4UjhwdEV3TkZIdVlEK0xjM0Q1K0hDcXF3bU5adHgwSXNqQ0hMYzhnVm9wcndZcXdJbFFCYXRkTjI2bGQ2NTQ2WW13aDVUQlBvNHFKRGNWSUpFTENVQ0QxcDRSQTdyTnJ2c0traHJBZ1dNVEM1SUM0Z2NUQTVJSjRnUGhnY2tJNFFWd3d1U0ZRVTJCNkcyaHQrRksxcUt1TytRWjRRVndIVSs4WkVINzBxTEtzQ0N0Q0ZhRDJiKzdJQVpHZFBQeHVXWUdNQUFBQUFFbEZUa1N1UW1DQycpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWludmVydGVkLXJ0bDogICAgICB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0lBQUFBWUNBWUFBQUNmcGk4SkFBQUFCR2RCVFVFQUFMR1BDL3hoQlFBQUFKdEpSRUZVU0EzdGxsRUt3Q0FJaG1kMHNGMW03RXlqdzdhTUNITFdXaGp0d1I0aVUzNC9maEtDYmZIeTN1K0lZQlp6NVBZS2txMUlCM1ZFSGFFTzBOaUdPVDdENVVFVG5iRURnS3V6dGxsbWtwQnJWdkZKTVFpVWoxTXpBQ01La1VIdzhBRkdIS0lBNllTWkF2RUFlWUdaQnNHQ1ZHQ21RbUJQaXh1MzhNMkUwWTZwOUg2NE1yRTdFRk1hRk5ML1NNMDQvUVpRWjlTUjN6cHlBMWlZSG5iU0xQSVFBQUFBQUVsRlRrU3VRbUNDJykgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZmlsZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcblxuJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ6ICAgICAgICAgICAgICAgICAuMTI1cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDogICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJnOiAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtZGlzYWJsZWQtdHJhY2stYmc6ICAgICAgICAgICAgJGdyYXktNTAgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3c6ICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGN1c3RvbS1yYW5nZS10aHVtYi1iZyAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdzogICAgICAgICAgICAgMCAwIDAgMXB4IHJnYmEoMCwwLDAsLjEpLCAkZmxvYXRpbmctY29tcG9uZW50LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzogICAgICAgJGN1c3RvbS1yYW5nZS10aHVtYi1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZzogICAgICAgICAgICAkY3VzdG9tLXJhbmdlLXRodW1iLWJnICFkZWZhdWx0O1xuXG4kZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcjogICAgICAgICAgICAgICAgIHRoZW1lLWNvbG9yKFwic3VjY2Vzc1wiKSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3I6ICAgICAgICAgICAgICAgdGhlbWUtY29sb3IoXCJkYW5nZXJcIikgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yOiAgICAgICAgICAgICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yOiAgICAgICAgICAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZDogICAgICAgICAgICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDggOCclM2UlM2NwYXRoIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcn0nIGQ9J00yLjMgNi43M0wuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLyUzZSUzYy9zdmclM2VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtcnRsOiAgICAgICAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3J9JyBkPSdNMi4zIDYuNzNMLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6JyB0cmFuc2Zvcm09J3NjYWxlKC0xLCAxKSB0cmFuc2xhdGUoLTgsIDApJy8lM2UlM2Mvc3ZnJTNlXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQ6ICAgICAgICAgICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nIHZpZXdCb3g9Jy0yIC0yIDcgNyclM2UlM2NwYXRoIHN0cm9rZT0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9JyBkPSdNMCAwbDMgM20wLTNMMCAzJy8lM2UlM2NjaXJjbGUgcj0nLjUnLyUzZSUzY2NpcmNsZSBjeD0nMycgcj0nLjUnLyUzZSUzY2NpcmNsZSBjeT0nMycgcj0nLjUnLyUzZSUzY2NpcmNsZSBjeD0nMycgY3k9JzMnIHI9Jy41Jy8lM2UlM2Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtcnRsOiAgICAgICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nIHZpZXdCb3g9Jy0yIC0yIDcgNyclM2UlM2NwYXRoIHN0cm9rZT0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9JyBkPSdNMCAwbDMgM20wLTNMMCAzJy8lM2UlM2NjaXJjbGUgcj0nLjUnLyUzZSUzY2NpcmNsZSBjeD0nMycgcj0nLjUnLyUzZSUzY2NpcmNsZSBjeT0nMycgcj0nLjUnLyUzZSUzY2NpcmNsZSBjeD0nMycgY3k9JzMnIHI9Jy41Jy8lM2UlM2Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmc6ICAgICAgICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nICsgJGlucHV0LWhlaWdodC1pbm5lciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1zbTogICAgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcgKyAkaW5wdXQtaGVpZ2h0LWlubmVyLXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLWxnOiAgICAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZyArICRpbnB1dC1oZWlnaHQtaW5uZXItbGcgIWRlZmF1bHQ7XG5cbiRmb3JtLXZhbGlkYXRpb24tc3RhdGVzOiAoXG4gIFwidmFsaWRcIjogKFxuICAgIFwiY29sb3JcIjogICAgJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IsXG4gICAgXCJpY29uXCI6ICAgICAkZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLFxuICAgIFwiaWNvbi1ydGxcIjogJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1ydGxcbiAgKSxcbiAgXCJpbnZhbGlkXCI6IChcbiAgICBcImNvbG9yXCI6ICAgICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IsXG4gICAgXCJpY29uXCI6ICAgICAkZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQsXG4gICAgXCJpY29uLXJ0bFwiOiAkZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtcnRsXG4gICksXG4pICFkZWZhdWx0O1xuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIERyb3Bkb3duc1xuXG4kZHJvcGRvd24tcGFkZGluZy15OiAgICAgICAgICAgLjMxMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAgICAgICAgJGZsb2F0aW5nLWNvbXBvbmVudC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGl2aWRlci1iZzogICAgICAgICAgJGRyb3Bkb3duLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3gtc2hhZG93OiAgICAgICAgICAkZmxvYXRpbmctY29tcG9uZW50LXNoYWRvdyAhZGVmYXVsdDtcbiRkcm9wZG93bi1mb250LXNpemU6ICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzOiAwICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXk6ICAgICAgLjQzOHJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDogICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogICAgJGRyb3Bkb3duLWxpbmstY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgJGdyYXktNTAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1saW5lLWhlaWdodDogICAgJGNvbXBvbmVudC1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICR0ZXh0LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1oZWFkZXItY29sb3I6ICAgICAgICAkdGV4dC1tdXRlZCAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBOYXZzXG5cbiRuYXYtc3BhY2VyOiAgICAgICAgICAgICAgICAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG5cbiRuYXYtbGluay1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC42MjVyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgJGNvbXBvbmVudC1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJG5hdi1saW5rLXBhZGRpbmcteS1sZzogICAgICAgICAgICAgLjg3NXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgIDEuMzEyNXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1saW5lLWhlaWdodC1sZzogICAgICAgICAgICRsaW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJG5hdi1saW5rLXBhZGRpbmcteS1zbTogICAgICAgICAgICAgLjMxMjVyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstcGFkZGluZy14LXNtOiAgICAgICAgICAgICAuODc1cmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLWxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgJGxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kbmF2LWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICAkdGV4dC1tdXRlZC1ob3ZlciAhZGVmYXVsdDtcbiRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICR0ZXh0LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I6ICRuYXYtdGFicy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBOYXZiYXJcblxuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteTogICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14OiAgICAgICAgICAuN3JlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1mb250LXNpemU6ICAgICAgICAgIC42MjVyZW0gIWRlZmF1bHQ7XG5cbiRuYXZiYXItZGFyay1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuOCkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstaG92ZXItY29sb3I6ICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjQpICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yOiAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yOiAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjogICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjogcmdiYSgkYmxhY2ssIC4wNikgIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogUGFnaW5hdGlvblxuXG4kcGFnaW5hdGlvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgIC42MjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgIC4zMTI1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LXNtOiAgICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LXNtOiAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktbGc6ICAgICAgICAgIC45Mzc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LWxnOiAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgMSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgJGJvcmRlci1pbm5lci1jb2xvciAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAkdGV4dC1tdXRlZCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICRwYWdpbmF0aW9uLWJnICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgJHRleHQtbGlnaHRlciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgJHBhZ2luYXRpb24tYmcgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICRncmF5LTEwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdzogICAgICBub25lICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1zcGFjZXI6ICAgICAgICAgICAgICAgIC4xODc1cmVtICFkZWZhdWx0O1xuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIENhcmRzXG5cbiRjYXJkLXNwYWNlci15OiAgICAgICAgICAgIC44NzVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1zcGFjZXIteDogICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1zcGFjZXIteC1zbTogICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLWNvbG9yOiAgICAgICAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjYXJkLWlubmVyLWJvcmRlci1jb2xvcjogICRib3JkZXItaW5uZXItY29sb3IgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtYmc6ICAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuJGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZzogMS41cmVtICFkZWZhdWx0O1xuXG4kY2FyZC1jb2x1bW5zLWdhcDogICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1zaGFkb3c6ICAgICAgICAgICAgICAwIDFweCA0cHggcmdiYSgkYmxhY2ssIC4wMTIpICFkZWZhdWx0O1xuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFRvb2x0aXBzXG5cbiR0b29sdGlwLWNvbG9yOiAgICAgICNmZmYgIWRlZmF1bHQ7XG4kdG9vbHRpcC1iZzogICAgICAgICByZ2JhLXRvLWhleCgkZ3JheS04MDApICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgMSAhZGVmYXVsdDtcbiR0b29sdGlwLWJveC1zaGFkb3c6IG5vbmUgIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogUG9wb3ZlcnNcblxuJHBvcG92ZXItYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJHBvcG92ZXItYm94LXNoYWRvdzogICAgICAgJGZsb2F0aW5nLWNvbXBvbmVudC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWhlYWRlci1iZzogICAgICAgICRncmF5LTUwICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLWNvbG9yOiAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXk6IC42MjVyZW0gIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWJvZHktY29sb3I6ICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEJhZGdlc1xuXG4kYmFkZ2UtZm9udC1zaXplOiAgICAgICAgICAgICAuODU4ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICAkZm9udC13ZWlnaHQtc2VtaWJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy15OiAgICAgICAgICAgICAuMjVlbSAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXg6ICAgICAgICAgICAgIC40MTdlbSAhZGVmYXVsdDtcbiRiYWRnZS1ib3JkZXItcmFkaXVzOiAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG5cbiRiYWRnZS1waWxsLXBhZGRpbmcteDogICAgICAgIC41ODNlbSAhZGVmYXVsdDtcbiRiYWRnZS1waWxsLWJvcmRlci1yYWRpdXM6ICAgIDEwcmVtICFkZWZhdWx0O1xuXG4kYmFkZ2UtZGVmYXVsdC1iZzogICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kYmFkZ2Utb3V0bGluZS1kZWZhdWx0LWNvbG9yOiAkYm9keS1jb2xvciAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBNb2RhbHNcblxuJG1vZGFsLWlubmVyLXBhZGRpbmc6ICAgICAgICAgICAgMS41NjI1cmVtICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICRtb2RhbC1pbm5lci1wYWRkaW5nICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1wYWRkaW5nOiAgICAgICAgICAgMS4yNXJlbSAkbW9kYWwtaW5uZXItcGFkZGluZyAhZGVmYXVsdDtcblxuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoOiAgICAgMHB4ICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGg6ICAgICAgMXB4ICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgJGJvcmRlci1pbm5lci1jb2xvciAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAgICAgICRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14czogICAgJGZsb2F0aW5nLWNvbXBvbmVudC1zaGFkb3cgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXNtLXVwOiAkZmxvYXRpbmctY29tcG9uZW50LXNoYWRvdyAhZGVmYXVsdDtcblxuJG1vZGFsLW1kOiAgICAgICAgICAgICAgICAgICAgICAgMzVyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICAgICA1MHJlbSAhZGVmYXVsdDtcbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgICAgIDIyLjVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgICAgIC41ICFkZWZhdWx0O1xuXG4kbW9kYWwtc2xpZGUtd2lkdGg6ICAgICAgICAgICAgICAyMHJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLXRyYW5zaXRpb24tZHVyYXRpb246ICAgICAgLjE1cyAhZGVmYXVsdDtcbiRtb2RhbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIHRyYW5zZm9ybSAkbW9kYWwtdHJhbnNpdGlvbi1kdXJhdGlvbiBlYXNlLW91dCAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBBbGVydHNcblxuJGFsZXJ0LXBhZGRpbmcteTogMXJlbSAhZGVmYXVsdDtcbiRhbGVydC1wYWRkaW5nLXg6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogUHJvZ3Jlc3MgYmFyc1xuXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHByb2dyZXNzLWZvbnQtc2l6ZTogICAgIC42MjVyZW0gIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmc6ICAgICAgICAgICAgJGdyYXktNTAgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogMTByZW0gIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAgICAgI2ZmZiAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBMaXN0IGdyb3VwXG5cbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yOiAgICAgICAgcmdiYS10by1oZXgoJGdyYXktMjAwKSAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXk6ICAgICAgLjYyNXJlbSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy14OiAgICAgIC45Mzc1cmVtICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICAkZ3JheS0yNSAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgJHRleHQtbGlnaHRlciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWJnOiAgICAgICAgICRsaXN0LWdyb3VwLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tY29sb3I6ICAgICAgICAkdGV4dC1tdXRlZC1ob3ZlciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjogICRib2R5LWNvbG9yICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnOiAgICAkZ3JheS01MCAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBJbWFnZSB0aHVtYm5haWxzXG5cbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgMCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci13aWR0aDogIDBweCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogMHB4ICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3gtc2hhZG93OiAgICBub25lICFkZWZhdWx0O1xuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEZpZ3VyZXNcblxuJGZpZ3VyZS1jYXB0aW9uLWNvbG9yOiAkdGV4dC1tdXRlZCAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBCcmVhZGNydW1ic1xuXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXk6ICAgICAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy14OiAgICAgMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWl0ZW0tcGFkZGluZzogIC41cmVtICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tOiAxcmVtICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1jb2xvcjogICAgICAgICAkdGV4dC1tdXRlZCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWJnOiAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjogJHRleHQtbGlnaHRlciAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlcjogICAgICAgXCIvXCIgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLXJ0bDogICBcIi9cIiAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBTd2l0Y2hlcnNcblxuJHN3aXRjaGVyLXNwYWNlci14OiAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kc3dpdGNoZXItc3BhY2VyLXk6ICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHN3aXRjaGVyLWd1dHRlcjogICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRzd2l0Y2hlci1pbm5lci1zcGFjZXI6ICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4kc3dpdGNoZXItc3F1YXJlLWJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kc3dpdGNoZXItbGFiZWwtY29sb3I6ICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHN3aXRjaGVyLWxhYmVsLWRpc2FibGVkLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtbGFiZWwtZGlzYWJsZWQtY29sb3IgIWRlZmF1bHQ7XG5cbiRzd2l0Y2hlci13aWR0aDogICAgICAgICAgICAgICAgMi4zNzVyZW0gIWRlZmF1bHQ7XG4kc3dpdGNoZXItaGVpZ2h0OiAgICAgICAgICAgICAgIDEuMzc1cmVtICFkZWZhdWx0O1xuJHN3aXRjaGVyLWZvbnQtc2l6ZTogICAgICAgICAgICAuNjI1cmVtICFkZWZhdWx0O1xuJHN3aXRjaGVyLWxhYmVsLWZvbnQtc2l6ZTogICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kc3dpdGNoZXItbGFiZWwtbGluZS1oZWlnaHQ6ICAgIDEuNCAhZGVmYXVsdDtcblxuJHN3aXRjaGVyLXdpZHRoLXNtOiAgICAgICAgICAgICAycmVtICFkZWZhdWx0O1xuJHN3aXRjaGVyLWhlaWdodC1zbTogICAgICAgICAgICAxLjEyNXJlbSAhZGVmYXVsdDtcbiRzd2l0Y2hlci1sYWJlbC1mb250LXNpemUtc206ICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRzd2l0Y2hlci1sYWJlbC1saW5lLWhlaWdodC1zbTogMS40ODYgIWRlZmF1bHQ7XG5cbiRzd2l0Y2hlci13aWR0aC1sZzogICAgICAgICAgICAgMy4yNXJlbSAhZGVmYXVsdDtcbiRzd2l0Y2hlci1oZWlnaHQtbGc6ICAgICAgICAgICAgMS43NXJlbSAhZGVmYXVsdDtcbiRzd2l0Y2hlci1sYWJlbC1mb250LXNpemUtbGc6ICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRzd2l0Y2hlci1sYWJlbC1saW5lLWhlaWdodC1sZzogMS40NyAhZGVmYXVsdDtcblxuJHN3aXRjaGVyLW9mZi1jb2xvcjogICAgICAgICAgICAkZ3JheS00MDAgIWRlZmF1bHQ7XG4kc3dpdGNoZXItb2ZmLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRzd2l0Y2hlci1ob2xkZXItYmc6ICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRzd2l0Y2hlci1ob2xkZXItc2hhZG93OiAgICAgICAgMCAwIDAgMXB4IHJnYmEoJGJsYWNrLCAuMDQpLCAwIDFweCA2cHggcmdiYSgkYmxhY2ssIC4wOSkgIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogQ2xvc2VcblxuJGNsb3NlLWZvbnQtd2VpZ2h0OiAzMDAgIWRlZmF1bHQ7XG4kY2xvc2UtdGV4dC1zaGFkb3c6IG5vbmUgIWRlZmF1bHQ7XG4kY2xvc2UtY29sb3I6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogSnVtYm90cm9uXG5cbiRqdW1ib3Ryb24tcGFkZGluZzogM3JlbSAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBTaWRlbmF2XG5cbiRzaWRlbmF2LXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTUuNjI1cmVtICFkZWZhdWx0OyAvLzI1MHB4XG4kc2lkZW5hdi1jb2xsYXBzZWQtd2lkdGg6ICAgICAgICAgICAgICAgIDQuMzc1cmVtICFkZWZhdWx0OyAvLzcwcHhcblxuJHNpZGVuYXYtaXRlbS1zcGFjZXI6ICAgICAgICAgICAgICAgICAgICAuMDYyNXJlbSAhZGVmYXVsdDtcblxuJHNpZGVuYXYtdmVydGljYWwtbGluay1wYWRkaW5nLXk6ICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kc2lkZW5hdi12ZXJ0aWNhbC1saW5rLXBhZGRpbmcteDogICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kc2lkZW5hdi12ZXJ0aWNhbC1tZW51LWxpbmstcGFkZGluZy15OiAgIC42MjVyZW0gIWRlZmF1bHQ7XG4kc2lkZW5hdi12ZXJ0aWNhbC1tZW51LWxldmVsLXNwYWNlcjogICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRzaWRlbmF2LWhvcml6b250YWwtbGluay1wYWRkaW5nLXk6ICAgICAgMXJlbSAhZGVmYXVsdDtcbiRzaWRlbmF2LWhvcml6b250YWwtbGluay1wYWRkaW5nLXg6ICAgICAgMXJlbSAhZGVmYXVsdDtcbiRzaWRlbmF2LWhvcml6b250YWwtbWVudS1saW5rLXBhZGRpbmcteTogLjYyNXJlbSAhZGVmYXVsdDtcbiRzaWRlbmF2LWhvcml6b250YWwtbWVudS1sZXZlbC1zcGFjZXI6ICAgMXJlbSAhZGVmYXVsdDtcblxuJHNpZGVuYXYtbWVudS13aWR0aDogICAgICAgICAgICAgICAgICAgICAxMi41cmVtICFkZWZhdWx0OzsgLy8yMDBweFxuJHNpZGVuYXYtY29udHJvbC13aWR0aDogICAgICAgICAgICAgICAgICAyLjI1cmVtICFkZWZhdWx0O1xuJHNpZGVuYXYtY29udHJvbC1hcnJvdy1zaXplOiAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJHNpZGVuYXYtaWNvbi1leHBhbmRlZC13aWR0aDogICAgICAgICAgICAxLjc1cmVtICFkZWZhdWx0O1xuJHNpZGVuYXYtaWNvbi1leHBhbmRlZC1mb250LXNpemU6ICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHNpZGVuYXYtaWNvbi1leHBhbmRlZC1zcGFjZXI6ICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRzaWRlbmF2LWFuaW1hdGlvbi1kdXJhdGlvbjogICAgICAgICAgICAgLjJzICFkZWZhdWx0O1xuXG4kc2lkZW5hdi1tYXgtbGV2ZWxzOiAgICAgICAgICAgICAgICAgICAgIDUgIWRlZmF1bHQ7XG5cbiRzaWRlbmF2LWRhcmstYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAuMikgIWRlZmF1bHQ7XG4kc2lkZW5hdi1kYXJrLW1lbnUtYmc6ICAgICAgICAgICAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjA2KSAhZGVmYXVsdDtcbiRzaWRlbmF2LWxpZ2h0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMDYpICFkZWZhdWx0O1xuJHNpZGVuYXYtbGlnaHQtbWVudS1iZzogICAgICAgICAgICAgICAgICByZ2JhKDAsIDAsIDAsIC4wNSkgIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogVG9hc3RzXG5cbiR0b2FzdC1ib3JkZXItY29sb3I6ICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kdG9hc3QtYm94LXNoYWRvdzogICAgICAgICAgJGZsb2F0aW5nLWNvbXBvbmVudC1zaGFkb3cgIWRlZmF1bHQ7XG4kdG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcjogJGNhcmQtaW5uZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4vLyBDb25maWdcbiRydGwtc3VwcG9ydDogZmFsc2UgIWRlZmF1bHQ7XG4kbWF0ZXJpYWwtc3R5bGU6IGZhbHNlO1xuIiwiLy8gVmFyaWFibGVzXG4vL1xuLy8gVmFyaWFibGVzIHNob3VsZCBmb2xsb3cgdGhlIGAkY29tcG9uZW50LXN0YXRlLXByb3BlcnR5LXNpemVgIGZvcm11bGEgZm9yXG4vLyBjb25zaXN0ZW50IG5hbWluZy4gRXg6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvciBhbmQgJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cy5cblxuLy8gQ29sb3Igc3lzdGVtXG5cbiR3aGl0ZTogICAgI2ZmZiAhZGVmYXVsdDtcbiRncmF5LTEwMDogI2Y4ZjlmYSAhZGVmYXVsdDtcbiRncmF5LTIwMDogI2U5ZWNlZiAhZGVmYXVsdDtcbiRncmF5LTMwMDogI2RlZTJlNiAhZGVmYXVsdDtcbiRncmF5LTQwMDogI2NlZDRkYSAhZGVmYXVsdDtcbiRncmF5LTUwMDogI2FkYjViZCAhZGVmYXVsdDtcbiRncmF5LTYwMDogIzZjNzU3ZCAhZGVmYXVsdDtcbiRncmF5LTcwMDogIzQ5NTA1NyAhZGVmYXVsdDtcbiRncmF5LTgwMDogIzM0M2E0MCAhZGVmYXVsdDtcbiRncmF5LTkwMDogIzIxMjUyOSAhZGVmYXVsdDtcbiRibGFjazogICAgIzAwMCAhZGVmYXVsdDtcblxuJGdyYXlzOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kZ3JheXM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwiMTAwXCI6ICRncmF5LTEwMCxcbiAgICBcIjIwMFwiOiAkZ3JheS0yMDAsXG4gICAgXCIzMDBcIjogJGdyYXktMzAwLFxuICAgIFwiNDAwXCI6ICRncmF5LTQwMCxcbiAgICBcIjUwMFwiOiAkZ3JheS01MDAsXG4gICAgXCI2MDBcIjogJGdyYXktNjAwLFxuICAgIFwiNzAwXCI6ICRncmF5LTcwMCxcbiAgICBcIjgwMFwiOiAkZ3JheS04MDAsXG4gICAgXCI5MDBcIjogJGdyYXktOTAwXG4gICksXG4gICRncmF5c1xuKTtcblxuJGJsdWU6ICAgICMwMDdiZmYgIWRlZmF1bHQ7XG4kaW5kaWdvOiAgIzY2MTBmMiAhZGVmYXVsdDtcbiRwdXJwbGU6ICAjNmY0MmMxICFkZWZhdWx0O1xuJHBpbms6ICAgICNlODNlOGMgIWRlZmF1bHQ7XG4kcmVkOiAgICAgI2RjMzU0NSAhZGVmYXVsdDtcbiRvcmFuZ2U6ICAjZmQ3ZTE0ICFkZWZhdWx0O1xuJHllbGxvdzogICNmZmMxMDcgIWRlZmF1bHQ7XG4kZ3JlZW46ICAgIzI4YTc0NSAhZGVmYXVsdDtcbiR0ZWFsOiAgICAjMjBjOTk3ICFkZWZhdWx0O1xuJGN5YW46ICAgICMxN2EyYjggIWRlZmF1bHQ7XG5cbiRjb2xvcnM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRjb2xvcnM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwiYmx1ZVwiOiAgICAgICAkYmx1ZSxcbiAgICBcImluZGlnb1wiOiAgICAgJGluZGlnbyxcbiAgICBcInB1cnBsZVwiOiAgICAgJHB1cnBsZSxcbiAgICBcInBpbmtcIjogICAgICAgJHBpbmssXG4gICAgXCJyZWRcIjogICAgICAgICRyZWQsXG4gICAgXCJvcmFuZ2VcIjogICAgICRvcmFuZ2UsXG4gICAgXCJ5ZWxsb3dcIjogICAgICR5ZWxsb3csXG4gICAgXCJncmVlblwiOiAgICAgICRncmVlbixcbiAgICBcInRlYWxcIjogICAgICAgJHRlYWwsXG4gICAgXCJjeWFuXCI6ICAgICAgICRjeWFuLFxuICAgIFwid2hpdGVcIjogICAgICAkd2hpdGUsXG4gICAgXCJncmF5XCI6ICAgICAgICRncmF5LTYwMCxcbiAgICBcImdyYXktZGFya1wiOiAgJGdyYXktODAwXG4gICksXG4gICRjb2xvcnNcbik7XG5cbiRwcmltYXJ5OiAgICAgICAkYmx1ZSAhZGVmYXVsdDtcbiRzZWNvbmRhcnk6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kc3VjY2VzczogICAgICAgJGdyZWVuICFkZWZhdWx0O1xuJGluZm86ICAgICAgICAgICRjeWFuICFkZWZhdWx0O1xuJHdhcm5pbmc6ICAgICAgICR5ZWxsb3cgIWRlZmF1bHQ7XG4kZGFuZ2VyOiAgICAgICAgJHJlZCAhZGVmYXVsdDtcbiRsaWdodDogICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kZGFyazogICAgICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuXG4kdGhlbWUtY29sb3JzOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kdGhlbWUtY29sb3JzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcInByaW1hcnlcIjogICAgJHByaW1hcnksXG4gICAgXCJzZWNvbmRhcnlcIjogICRzZWNvbmRhcnksXG4gICAgXCJzdWNjZXNzXCI6ICAgICRzdWNjZXNzLFxuICAgIFwiaW5mb1wiOiAgICAgICAkaW5mbyxcbiAgICBcIndhcm5pbmdcIjogICAgJHdhcm5pbmcsXG4gICAgXCJkYW5nZXJcIjogICAgICRkYW5nZXIsXG4gICAgXCJsaWdodFwiOiAgICAgICRsaWdodCxcbiAgICBcImRhcmtcIjogICAgICAgJGRhcmtcbiAgKSxcbiAgJHRoZW1lLWNvbG9yc1xuKTtcblxuLy8gU2V0IGEgc3BlY2lmaWMganVtcCBwb2ludCBmb3IgcmVxdWVzdGluZyBjb2xvciBqdW1wc1xuJHRoZW1lLWNvbG9yLWludGVydmFsOiAgICAgIDglICFkZWZhdWx0O1xuXG4vLyBUaGUgeWlxIGxpZ2h0bmVzcyB2YWx1ZSB0aGF0IGRldGVybWluZXMgd2hlbiB0aGUgbGlnaHRuZXNzIG9mIGNvbG9yIGNoYW5nZXMgZnJvbSBcImRhcmtcIiB0byBcImxpZ2h0XCIuIEFjY2VwdGFibGUgdmFsdWVzIGFyZSBiZXR3ZWVuIDAgYW5kIDI1NS5cbiR5aXEtY29udHJhc3RlZC10aHJlc2hvbGQ6ICAxNTAgIWRlZmF1bHQ7XG5cbi8vIEN1c3RvbWl6ZSB0aGUgbGlnaHQgYW5kIGRhcmsgdGV4dCBjb2xvcnMgZm9yIHVzZSBpbiBvdXIgWUlRIGNvbG9yIGNvbnRyYXN0IGZ1bmN0aW9uLlxuJHlpcS10ZXh0LWRhcms6ICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiR5aXEtdGV4dC1saWdodDogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cblxuLy8gT3B0aW9uc1xuLy9cbi8vIFF1aWNrbHkgbW9kaWZ5IGdsb2JhbCBzdHlsaW5nIGJ5IGVuYWJsaW5nIG9yIGRpc2FibGluZyBvcHRpb25hbCBmZWF0dXJlcy5cblxuJGVuYWJsZS1jYXJldDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJvdW5kZWQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtc2hhZG93czogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtZ3JhZGllbnRzOiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtdHJhbnNpdGlvbnM6ICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLW1lZGlhLXF1ZXJ5OiAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWhvdmVyLW1lZGlhLXF1ZXJ5OiAgICAgICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQsIG5vIGxvbmdlciBhZmZlY3RzIGFueSBjb21waWxlZCBDU1NcbiRlbmFibGUtZ3JpZC1jbGFzc2VzOiAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wb2ludGVyLWN1cnNvci1mb3ItYnV0dG9uczogICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXByaW50LXN0eWxlczogICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzOiAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtdmFsaWRhdGlvbi1pY29uczogICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1kZXByZWNhdGlvbi1tZXNzYWdlczogICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG5cblxuLy8gU3BhY2luZ1xuLy9cbi8vIENvbnRyb2wgdGhlIGRlZmF1bHQgc3R5bGluZyBvZiBtb3N0IEJvb3RzdHJhcCBlbGVtZW50cyBieSBtb2RpZnlpbmcgdGhlc2Vcbi8vIHZhcmlhYmxlcy4gTW9zdGx5IGZvY3VzZWQgb24gc3BhY2luZy5cbi8vIFlvdSBjYW4gYWRkIG1vcmUgZW50cmllcyB0byB0aGUgJHNwYWNlcnMgbWFwLCBzaG91bGQgeW91IG5lZWQgbW9yZSB2YXJpYXRpb24uXG5cbiRzcGFjZXI6IDFyZW0gIWRlZmF1bHQ7XG4kc3BhY2VyczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJHNwYWNlcnM6IG1hcC1tZXJnZShcbiAgKFxuICAgIDA6IDAsXG4gICAgMTogKCRzcGFjZXIgKiAuMjUpLFxuICAgIDI6ICgkc3BhY2VyICogLjUpLFxuICAgIDM6ICRzcGFjZXIsXG4gICAgNDogKCRzcGFjZXIgKiAxLjUpLFxuICAgIDU6ICgkc3BhY2VyICogMylcbiAgKSxcbiAgJHNwYWNlcnNcbik7XG5cbi8vIFRoaXMgdmFyaWFibGUgYWZmZWN0cyB0aGUgYC5oLSpgIGFuZCBgLnctKmAgY2xhc3Nlcy5cbiRzaXplczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJHNpemVzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICAyNTogMjUlLFxuICAgIDUwOiA1MCUsXG4gICAgNzU6IDc1JSxcbiAgICAxMDA6IDEwMCUsXG4gICAgYXV0bzogYXV0b1xuICApLFxuICAkc2l6ZXNcbik7XG5cblxuLy8gQm9keVxuLy9cbi8vIFNldHRpbmdzIGZvciB0aGUgYDxib2R5PmAgZWxlbWVudC5cblxuJGJvZHktYmc6ICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG5cblxuLy8gTGlua3Ncbi8vXG4vLyBTdHlsZSBhbmNob3IgZWxlbWVudHMuXG5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcbiRsaW5rLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJGxpbmstY29sb3IsIDE1JSkgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICB1bmRlcmxpbmUgIWRlZmF1bHQ7XG4vLyBEYXJrZW4gcGVyY2VudGFnZSBmb3IgbGlua3Mgd2l0aCBgLnRleHQtKmAgY2xhc3MgKGUuZy4gYC50ZXh0LXN1Y2Nlc3NgKVxuJGVtcGhhc2l6ZWQtbGluay1ob3Zlci1kYXJrZW4tcGVyY2VudGFnZTogMTUlICFkZWZhdWx0O1xuXG4vLyBQYXJhZ3JhcGhzXG4vL1xuLy8gU3R5bGUgcCBlbGVtZW50LlxuXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206ICAgMXJlbSAhZGVmYXVsdDtcblxuXG4vLyBHcmlkIGJyZWFrcG9pbnRzXG4vL1xuLy8gRGVmaW5lIHRoZSBtaW5pbXVtIGRpbWVuc2lvbnMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsXG4vLyBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLCBmb3IgdXNlIGluIG1lZGlhIHF1ZXJpZXMuXG5cbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gIHhzOiAwLFxuICBzbTogNTc2cHgsXG4gIG1kOiA3NjhweCxcbiAgbGc6IDk5MnB4LFxuICB4bDogMTIwMHB4XG4pICFkZWZhdWx0O1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcbkBpbmNsdWRlIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5cblxuLy8gR3JpZCBjb250YWluZXJzXG4vL1xuLy8gRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuJGNvbnRhaW5lci1tYXgtd2lkdGhzOiAoXG4gIHNtOiA1NDBweCxcbiAgbWQ6IDcyMHB4LFxuICBsZzogOTYwcHgsXG4gIHhsOiAxMTQwcHhcbikgIWRlZmF1bHQ7XG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRjb250YWluZXItbWF4LXdpZHRocywgXCIkY29udGFpbmVyLW1heC13aWR0aHNcIik7XG5cblxuLy8gR3JpZCBjb2x1bW5zXG4vL1xuLy8gU2V0IHRoZSBudW1iZXIgb2YgY29sdW1ucyBhbmQgc3BlY2lmeSB0aGUgd2lkdGggb2YgdGhlIGd1dHRlcnMuXG5cbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAgIDEyICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcblxuXG4vLyBDb21wb25lbnRzXG4vL1xuLy8gRGVmaW5lIGNvbW1vbiBwYWRkaW5nIGFuZCBib3JkZXIgcmFkaXVzIHNpemVzIGFuZCBtb3JlLlxuXG4kbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtc206ICAgICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcbiRib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJGJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgLjNyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAuMnJlbSAhZGVmYXVsdDtcblxuJHJvdW5kZWQtcGlsbDogICAgICAgICAgICAgICAgNTByZW0gIWRlZmF1bHQ7XG5cbiRib3gtc2hhZG93LXNtOiAgICAgICAgICAgICAgIDAgLjEyNXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3ctbGc6ICAgICAgICAgICAgICAgMCAxcmVtIDNyZW0gcmdiYSgkYmxhY2ssIC4xNzUpICFkZWZhdWx0O1xuXG4kY29tcG9uZW50LWFjdGl2ZS1jb2xvcjogICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY29tcG9uZW50LWFjdGl2ZS1iZzogICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG5cbiRjYXJldC13aWR0aDogICAgICAgICAgICAgICAgIC4zZW0gIWRlZmF1bHQ7XG4kY2FyZXQtdmVydGljYWwtYWxpZ246ICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG4kY2FyZXQtc3BhY2luZzogICAgICAgICAgICAgICAkY2FyZXQtd2lkdGggKiAuODUgIWRlZmF1bHQ7XG5cbiR0cmFuc2l0aW9uLWJhc2U6ICAgICAgICAgICAgIGFsbCAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1mYWRlOiAgICAgICAgICAgICBvcGFjaXR5IC4xNXMgbGluZWFyICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tY29sbGFwc2U6ICAgICAgICAgaGVpZ2h0IC4zNXMgZWFzZSAhZGVmYXVsdDtcblxuJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvczogam9pbihcbiAgKFxuICAgICgyMSA5KSxcbiAgICAoMTYgOSksXG4gICAgKDQgMyksXG4gICAgKDEgMSksXG4gICksXG4gICRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3Ncbik7XG5cbi8vIFR5cG9ncmFwaHlcbi8vXG4vLyBGb250LCBsaW5lLWhlaWdodCwgYW5kIGNvbG9yIGZvciBib2R5IHRleHQsIGhlYWRpbmdzLCBhbmQgbW9yZS5cblxuLy8gc3R5bGVsaW50LWRpc2FibGUgdmFsdWUta2V5d29yZC1jYXNlXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogICAgICAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBcIk5vdG8gU2Fuc1wiLCBzYW5zLXNlcmlmLCBcIkFwcGxlIENvbG9yIEVtb2ppXCIsIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJTZWdvZSBVSSBTeW1ib2xcIiwgXCJOb3RvIENvbG9yIEVtb2ppXCIgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgICAgICBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWJhc2U6ICAgICAgICAgICAgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZW5hYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuXG4kZm9udC1zaXplLWJhc2U6ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0OyAvLyBBc3N1bWVzIHRoZSBicm93c2VyIGRlZmF1bHQsIHR5cGljYWxseSBgMTZweGBcbiRmb250LXNpemUtbGc6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuODc1ICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtbGlnaHRlcjogICAgICAgICBsaWdodGVyICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWxpZ2h0OiAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LW5vcm1hbDogICAgICAgICAgNDAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGQ6ICAgICAgICAgICAgNzAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGRlcjogICAgICAgICAgYm9sZGVyICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtYmFzZTogICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kaDEtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyLjUgIWRlZmF1bHQ7XG4kaDItZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyICFkZWZhdWx0O1xuJGgzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS43NSAhZGVmYXVsdDtcbiRoNC1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRoNS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kaDYtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG5cbiRoZWFkaW5ncy1tYXJnaW4tYm90dG9tOiAgICAgICRzcGFjZXIgLyAyICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgICAgIDUwMCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAgICAgIDEuMiAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS1zaXplOiAgICAgICAgICAgICAgIDZyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTItc2l6ZTogICAgICAgICAgICAgICA1LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTMtc2l6ZTogICAgICAgICAgICAgICA0LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTQtc2l6ZTogICAgICAgICAgICAgICAzLjVyZW0gIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5Mi13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5My13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5NC13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5LWxpbmUtaGVpZ2h0OiAgICAgICAgICRoZWFkaW5ncy1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGxlYWQtZm9udC1zaXplOiAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRsZWFkLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcblxuJHNtYWxsLWZvbnQtc2l6ZTogICAgICAgICAgICAgODAlICFkZWZhdWx0O1xuXG4kdGV4dC1tdXRlZDogICAgICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRibG9ja3F1b3RlLXNtYWxsLWNvbG9yOiAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLXNtYWxsLWZvbnQtc2l6ZTogICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuXG4kaHItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGhyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJG1hcmstcGFkZGluZzogICAgICAgICAgICAgICAgLjJlbSAhZGVmYXVsdDtcblxuJGR0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRrYmQtYm94LXNoYWRvdzogICAgICAgICAgICAgIGluc2V0IDAgLS4xcmVtIDAgcmdiYSgkYmxhY2ssIC4yNSkgIWRlZmF1bHQ7XG4kbmVzdGVkLWtiZC1mb250LXdlaWdodDogICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuJGxpc3QtaW5saW5lLXBhZGRpbmc6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRtYXJrLWJnOiAgICAgICAgICAgICAgICAgICAgICNmY2Y4ZTMgIWRlZmF1bHQ7XG5cbiRoci1tYXJnaW4teTogICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cblxuLy8gVGFibGVzXG4vL1xuLy8gQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxuXG4kdGFibGUtY2VsbC1wYWRkaW5nOiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXNtOiAgICAgICAuM3JlbSAhZGVmYXVsdDtcblxuJHRhYmxlLWNvbG9yOiAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRhYmxlLWFjY2VudC1iZzogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wNSkgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItY29sb3I6ICAgICAgICAgICAkdGFibGUtY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItYmc6ICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kdGFibGUtYWN0aXZlLWJnOiAgICAgICAgICAgICAkdGFibGUtaG92ZXItYmcgIWRlZmF1bHQ7XG5cbiR0YWJsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kdGFibGUtaGVhZC1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kdGFibGUtaGVhZC1jb2xvcjogICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG5cbiR0YWJsZS1kYXJrLWNvbG9yOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWJnOiAgICAgICAgICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWFjY2VudC1iZzogICAgICAgIHJnYmEoJHdoaXRlLCAuMDUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstaG92ZXItY29sb3I6ICAgICAgJHRhYmxlLWRhcmstY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1ob3Zlci1iZzogICAgICAgICByZ2JhKCR3aGl0ZSwgLjA3NSkgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1ib3JkZXItY29sb3I6ICAgICBsaWdodGVuKCR0YWJsZS1kYXJrLWJnLCA3LjUlKSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWNvbG9yOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJHRhYmxlLXN0cmlwZWQtb3JkZXI6ICAgICAgICAgb2RkICFkZWZhdWx0O1xuXG4kdGFibGUtY2FwdGlvbi1jb2xvcjogICAgICAgICAkdGV4dC1tdXRlZCAhZGVmYXVsdDtcblxuJHRhYmxlLWJnLWxldmVsOiAgICAgICAgICAgICAgLTkgIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLWxldmVsOiAgICAgICAgICAtNiAhZGVmYXVsdDtcblxuXG4vLyBCdXR0b25zICsgRm9ybXNcbi8vXG4vLyBTaGFyZWQgdmFyaWFibGVzIHRoYXQgYXJlIHJlYXNzaWduZWQgdG8gYCRpbnB1dC1gIGFuZCBgJGJ0bi1gIHNwZWNpZmljIHZhcmlhYmxlcy5cblxuJGlucHV0LWJ0bi1wYWRkaW5nLXk6ICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14OiAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1mYW1pbHk6ICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZTogICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1mb2N1cy13aWR0aDogICAgICAgLjJyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWNvbG9yOiAgICAgICByZ2JhKCRjb21wb25lbnQtYWN0aXZlLWJnLCAuMjUpICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgMCAwIDAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1zbTogICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1zbTogICAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplLXNtOiAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtOiAgICAkbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LWxnOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgMXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplLWxnOiAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnOiAgICAkbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tYm9yZGVyLXdpZHRoOiAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cblxuLy8gQnV0dG9uc1xuLy9cbi8vIEZvciBlYWNoIG9mIEJvb3RzdHJhcCdzIGJ1dHRvbnMsIGRlZmluZSB0ZXh0LCBiYWNrZ3JvdW5kLCBhbmQgYm9yZGVyIGNvbG9yLlxuXG4kYnRuLXBhZGRpbmcteTogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGJ0bi1mb250LWZhbWlseTogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplOiAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodDogICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGJ0bi1wYWRkaW5nLXktc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplLXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodC1zbTogICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGJ0bi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplLWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodC1sZzogICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGJ0bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kYnRuLWJveC1zaGFkb3c6ICAgICAgICAgICAgICBpbnNldCAwIDFweCAwIHJnYmEoJHdoaXRlLCAuMTUpLCAwIDFweCAxcHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy13aWR0aDogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRidG4tZm9jdXMtYm94LXNoYWRvdzogICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRidG4tZGlzYWJsZWQtb3BhY2l0eTogICAgICAgIC42NSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJveC1zaGFkb3c6ICAgICAgIGluc2V0IDAgM3B4IDVweCByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG5cbiRidG4tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGJ0bi1ibG9jay1zcGFjaW5nLXk6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbi8vIEFsbG93cyBmb3IgY3VzdG9taXppbmcgYnV0dG9uIHJhZGl1cyBpbmRlcGVuZGVudGx5IGZyb20gZ2xvYmFsIGJvcmRlciByYWRpdXNcbiRidG4tYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtc206ICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGJ0bi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG5cbi8vIEZvcm1zXG5cbiRsYWJlbC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemUtbGc6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodC1sZzogICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGlucHV0LWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAkZ3JheS00MDAgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcblxuJGlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtZm9jdXMtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDI1JSkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGlucHV0LXBsYWludGV4dC1jb2xvcjogICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAqIDIgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtaW5uZXI6ICAgICAgICAgICAgICAgICAgICBjYWxjKCN7JGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtfSArICN7JGlucHV0LXBhZGRpbmcteSAqIDJ9KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjogICAgICAgICAgICAgICBjYWxjKCN7JGlucHV0LWxpbmUtaGVpZ2h0ICogLjVlbX0gKyAjeyRpbnB1dC1wYWRkaW5nLXl9KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjogICAgICAgICAgICBjYWxjKCN7JGlucHV0LWxpbmUtaGVpZ2h0ICogLjI1ZW19ICsgI3skaW5wdXQtcGFkZGluZy15IC8gMn0pICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgY2FsYygjeyRpbnB1dC1saW5lLWhlaWdodCAqIDFlbX0gKyAjeyRpbnB1dC1wYWRkaW5nLXkgKiAyfSArICN7JGlucHV0LWhlaWdodC1ib3JkZXJ9KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtc206ICAgICAgICAgICAgICAgICAgICAgICBjYWxjKCN7JGlucHV0LWxpbmUtaGVpZ2h0LXNtICogMWVtfSArICN7JGlucHV0LWJ0bi1wYWRkaW5nLXktc20gKiAyfSArICN7JGlucHV0LWhlaWdodC1ib3JkZXJ9KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtbGc6ICAgICAgICAgICAgICAgICAgICAgICBjYWxjKCN7JGlucHV0LWxpbmUtaGVpZ2h0LWxnICogMWVtfSArICN7JGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgKiAyfSArICN7JGlucHV0LWhlaWdodC1ib3JkZXJ9KSAhZGVmYXVsdDtcblxuJGlucHV0LXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXRleHQtbWFyZ2luLXRvcDogICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjogICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXk6ICAgICAgICAgICAgIC4zcmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXg6ICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi14OiAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlubGluZS1pbnB1dC1tYXJnaW4teDogICAgICAuMzEyNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4kZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWd1dHRlcjogICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLXNwYWNlci14OiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTogICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZzogICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplOiAgICAgIDUwJSA1MCUgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJveC1zaGFkb3c6ICAgJGlucHV0LWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjogJGdyYXktNTAwICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGg6ICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZGlzYWJsZWQtYmc6ICAgICAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1sYWJlbC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZzogIHJnYmEodGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpLCAuNSkgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm94LXNoYWRvdzogICBub25lICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJvcmRlci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJveC1zaGFkb3c6ICAgICAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm9yZGVyLWNvbG9yOiAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWNvbG9yOiAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMzUlKSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJveC1zaGFkb3c6ICAgIG5vbmUgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWQ6ICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDggOCclM2UlM2NwYXRoIGZpbGw9JyN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yfScgZD0nTTYuNTY0Ljc1bC0zLjU5IDMuNjEyLTEuNTM4LTEuNTVMMCA0LjI2IDIuOTc0IDcuMjUgOCAyLjE5M3onLyUzZSUzYy9zdmclM2VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1jb2xvcjogICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24taW5kZXRlcm1pbmF0ZTogICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDQgNCclM2UlM2NwYXRoIHN0cm9rZT0nI3skY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWNvbG9yfScgZD0nTTAgMmg0Jy8lM2UlM2Mvc3ZnJTNlXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJveC1zaGFkb3c6ICAgbm9uZSAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhZGlvLWluZGljYXRvci1ib3JkZXItcmFkaXVzOiAgICAgICAgICA1MCUgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhZGlvLWluZGljYXRvci1pY29uLWNoZWNrZWQ6ICAgICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4JyUzZSUzY2NpcmNsZSByPSczJyBmaWxsPScjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcn0nLyUzZSUzYy9zdmclM2VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zd2l0Y2gtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplICogMS43NSAhZGVmYXVsdDtcbiRjdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzOiAgICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSAvIDIgIWRlZmF1bHQ7XG4kY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZTogICAgICAgICAgICAgICAgICBjYWxjKCN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplfSAtICN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKiA0fSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteTogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1mYW1pbHk6ICAgICAgICAgJGlucHV0LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplOiAgICAgICAgICAgJGlucHV0LWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodDogICAgICAgICAgICAgICRpbnB1dC1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZzogICAxcmVtICFkZWZhdWx0OyAvLyBFeHRyYSBwYWRkaW5nIHRvIGFjY291bnQgZm9yIHRoZSBwcmVzZW5jZSBvZiB0aGUgYmFja2dyb3VuZC1pbWFnZSBiYXNlZCBpbmRpY2F0b3JcbiRjdXN0b20tc2VsZWN0LWZvbnQtd2VpZ2h0OiAgICAgICAgICRpbnB1dC1mb250LXdlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWxpbmUtaGVpZ2h0OiAgICAgICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJnOiAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWJnOiAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJnLXNpemU6ICAgICAgICAgICAgIDhweCAxMHB4ICFkZWZhdWx0OyAvLyBJbiBwaXhlbHMgYmVjYXVzZSBpbWFnZSBkaW1lbnNpb25zXG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItY29sb3I6ICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3I6ICAgICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDQgNSclM2UlM2NwYXRoIGZpbGw9JyN7JGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yfScgZD0nTTIgMEwwIDJoNHptMCA1TDAgM2g0eicvJTNlJTNjL3N2ZyUzZVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmFja2dyb3VuZDogICAgICAgICAgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yIG5vLXJlcGVhdCByaWdodCAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggY2VudGVyIC8gJGN1c3RvbS1zZWxlY3QtYmctc2l6ZSAhZGVmYXVsdDsgLy8gVXNlZCBzbyB3ZSBjYW4gaGF2ZSBtdWx0aXBsZSBiYWNrZ3JvdW5kIGVsZW1lbnRzIChlLmcuLCBhcnJvdyBhbmQgZmVlZGJhY2sgaWNvbilcblxuJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLXJpZ2h0OiBjYWxjKCgxZW0gKyAjezIgKiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXl9KSAqIDMgLyA0ICsgI3skY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZ30pICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbjogICAgICBjZW50ZXIgcmlnaHQgKCRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZTogICAgICAgICAgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXdpZHRoOiAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJveC1zaGFkb3c6ICAgICAgICAgIGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjogICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb2N1cy13aWR0aDogICAgICAgICAkaW5wdXQtZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93OiAgICAwIDAgMCAkY3VzdG9tLXNlbGVjdC1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktc206ICAgICAgICAkaW5wdXQtcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1zbTogICAgICAgICRpbnB1dC1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQtc206ICAgICAgICAgICAkaW5wdXQtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktbGc6ICAgICAgICAkaW5wdXQtcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1sZzogICAgICAgICRpbnB1dC1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQtbGc6ICAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoOiAgICAgICAgICAxMDAlICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWN1cnNvcjogICAgICAgICBwb2ludGVyICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1iZzogICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzOiAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stYm94LXNoYWRvdzogICAgIGluc2V0IDAgLjI1cmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoOiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYmc6ICAgICAgICAgICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXI6ICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAwIC4xcmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgMCAwIDAgMXB4ICRib2R5LWJnLCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDogICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDsgLy8gRm9yIGZvY3VzIGJveCBzaGFkb3cgaXNzdWUgaW4gSUUvRWRnZVxuJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgbGlnaHRlbigkY29tcG9uZW50LWFjdGl2ZS1iZywgMzUlKSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcblxuJGN1c3RvbS1maWxlLWhlaWdodDogICAgICAgICAgICAgICAgJGlucHV0LWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1oZWlnaHQtaW5uZXI6ICAgICAgICAgICRpbnB1dC1oZWlnaHQtaW5uZXIgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtZGlzYWJsZWQtYmc6ICAgICAgICAgICAkaW5wdXQtZGlzYWJsZWQtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZmlsZS1wYWRkaW5nLXk6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtcGFkZGluZy14OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGlucHV0LWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvbnQtZmFtaWx5OiAgICAgICAgICAgJGlucHV0LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWNvbG9yOiAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci13aWR0aDogICAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1czogICAgICAgICAkaW5wdXQtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3gtc2hhZG93OiAgICAgICAgICAgICRpbnB1dC1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1jb2xvcjogICAgICAgICAgJGN1c3RvbS1maWxlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1iZzogICAgICAgICAgICAgJGlucHV0LWdyb3VwLWFkZG9uLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXRleHQ6IChcbiAgZW46IFwiQnJvd3NlXCJcbikgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybSB2YWxpZGF0aW9uXG5cbiRmb3JtLWZlZWRiYWNrLW1hcmdpbi10b3A6ICAgICAgICAgICRmb3JtLXRleHQtbWFyZ2luLXRvcCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZTogICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcjogICAgICAgICB0aGVtZS1jb2xvcihcInN1Y2Nlc3NcIikgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yOiAgICAgICB0aGVtZS1jb2xvcihcImRhbmdlclwiKSAhZGVmYXVsdDtcblxuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcjogICAgJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkOiAgICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDggOCclM2UlM2NwYXRoIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcn0nIGQ9J00yLjMgNi43M0wuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLyUzZSUzYy9zdmclM2VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcjogICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQ6ICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9JyB2aWV3Qm94PSctMiAtMiA3IDcnJTNlJTNjcGF0aCBzdHJva2U9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgZD0nTTAgMGwzIDNtMC0zTDAgMycvJTNlJTNjY2lyY2xlIHI9Jy41Jy8lM2UlM2NjaXJjbGUgY3g9JzMnIHI9Jy41Jy8lM2UlM2NjaXJjbGUgY3k9JzMnIHI9Jy41Jy8lM2UlM2NjaXJjbGUgY3g9JzMnIGN5PSczJyByPScuNScvJTNlJTNjL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuXG4kZm9ybS12YWxpZGF0aW9uLXN0YXRlczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXM6IG1hcC1tZXJnZShcbiAgKFxuICAgIFwidmFsaWRcIjogKFxuICAgICAgXCJjb2xvclwiOiAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcixcbiAgICAgIFwiaWNvblwiOiAkZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkXG4gICAgKSxcbiAgICBcImludmFsaWRcIjogKFxuICAgICAgXCJjb2xvclwiOiAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yLFxuICAgICAgXCJpY29uXCI6ICRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZFxuICAgICksXG4gICksXG4gICRmb3JtLXZhbGlkYXRpb24tc3RhdGVzXG4pO1xuXG4vLyBaLWluZGV4IG1hc3RlciBsaXN0XG4vL1xuLy8gV2FybmluZzogQXZvaWQgY3VzdG9taXppbmcgdGhlc2UgdmFsdWVzLiBUaGV5J3JlIHVzZWQgZm9yIGEgYmlyZCdzIGV5ZSB2aWV3XG4vLyBvZiBjb21wb25lbnRzIGRlcGVuZGVudCBvbiB0aGUgei1heGlzIGFuZCBhcmUgZGVzaWduZWQgdG8gYWxsIHdvcmsgdG9nZXRoZXIuXG5cbiR6aW5kZXgtZHJvcGRvd246ICAgICAgICAgICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LXN0aWNreTogICAgICAgICAgICAgICAgICAgICAxMDIwICFkZWZhdWx0O1xuJHppbmRleC1maXhlZDogICAgICAgICAgICAgICAgICAgICAgMTAzMCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWwtYmFja2Ryb3A6ICAgICAgICAgICAgIDEwNDAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgICAgICAgICAgICAxMDUwICFkZWZhdWx0O1xuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgICAgICAgICAgMTA2MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbHRpcDogICAgICAgICAgICAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XG5cblxuLy8gTmF2c1xuXG4kbmF2LWxpbmstcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICRncmF5LTIwMCAkZ3JheS0yMDAgJG5hdi10YWJzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjogJGdyYXktMzAwICRncmF5LTMwMCAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJG5hdi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJG5hdi1kaXZpZGVyLW1hcmdpbi15OiAgICAgICAgICAgICAgJHNwYWNlciAvIDIgIWRlZmF1bHQ7XG5cblxuLy8gTmF2YmFyXG5cbiRuYXZiYXItcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICRzcGFjZXIgLyAyICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRuYXZiYXItYnJhbmQtZm9udC1zaXplOiAgICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4vLyBDb21wdXRlIHRoZSBuYXZiYXItYnJhbmQgcGFkZGluZy15IHNvIHRoZSBuYXZiYXItYnJhbmQgd2lsbCBoYXZlIHRoZSBzYW1lIGhlaWdodCBhcyBuYXZiYXItdGV4dCBhbmQgbmF2LWxpbmtcbiRuYXYtbGluay1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICsgJG5hdi1saW5rLXBhZGRpbmcteSAqIDIgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLWhlaWdodDogICAgICAgICAgICAgICAkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSAqICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1wYWRkaW5nLXk6ICAgICAgICAgICAgKCRuYXYtbGluay1oZWlnaHQgLSAkbmF2YmFyLWJyYW5kLWhlaWdodCkgLyAyICFkZWZhdWx0O1xuXG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15OiAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplOiAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWJvcmRlci1yYWRpdXM6ICAgICAgJGJ0bi1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kbmF2YmFyLWRhcmstY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkd2hpdGUsIC43NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjI1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmc6ICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2Nzdmcgdmlld0JveD0nMCAwIDMwIDMwJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNlJTNjcGF0aCBzdHJva2U9JyN7JG5hdmJhci1kYXJrLWNvbG9yfScgc3Ryb2tlLXdpZHRoPScyJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLyUzZSUzYy9zdmclM2VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjogIHJnYmEoJHdoaXRlLCAuMSkgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbGlnaHQtY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yOiAgICAgICAgICByZ2JhKCRibGFjaywgLjcpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I6ICAgICAgICAgcmdiYSgkYmxhY2ssIC45KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I6ICAgICAgIHJnYmEoJGJsYWNrLCAuMykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZzogICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHZpZXdCb3g9JzAgMCAzMCAzMCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzZSUzY3BhdGggc3Ryb2tlPScjeyRuYXZiYXItbGlnaHQtY29sb3J9JyBzdHJva2Utd2lkdGg9JzInIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvJTNlJTNjL3N2ZyUzZVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjogcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAgJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8vIERyb3Bkb3duc1xuLy9cbi8vIERyb3Bkb3duIG1lbnUgY29udGFpbmVyIGFuZCBjb250ZW50cy5cblxuJGRyb3Bkb3duLW1pbi13aWR0aDogICAgICAgICAgICAgICAgMTByZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1zcGFjZXI6ICAgICAgICAgICAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kZHJvcGRvd24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgY2FsYygjeyRkcm9wZG93bi1ib3JkZXItcmFkaXVzfSAtICN7JGRyb3Bkb3duLWJvcmRlci13aWR0aH0pICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXk6ICAgICAgICAgJG5hdi1kaXZpZGVyLW1hcmdpbi15ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgZGFya2VuKCRncmF5LTkwMCwgNSUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG5cbi8vIFBhZ2luYXRpb25cblxuJHBhZ2luYXRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktc206ICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtc206ICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZzogICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1sZzogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgIDEuMjUgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdzogICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTogICAgICAgICAgMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkcGFnaW5hdGlvbi1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjogICRncmF5LTMwMCAhZGVmYXVsdDtcblxuXG4vLyBKdW1ib3Ryb25cblxuJGp1bWJvdHJvbi1wYWRkaW5nOiAgICAgICAgICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tY29sb3I6ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWJnOiAgICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cblxuLy8gQ2FyZHNcblxuJGNhcmQtc3BhY2VyLXk6ICAgICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGNhcmQtc3BhY2VyLXg6ICAgICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcbiRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIGNhbGMoI3skY2FyZC1ib3JkZXItcmFkaXVzfSAtICN7JGNhcmQtYm9yZGVyLXdpZHRofSkgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtYmc6ICAgICAgICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjAzKSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1jb2xvcjogICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nOiAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG4kY2FyZC1ncm91cC1tYXJnaW46ICAgICAgICAgICAgICAgICAkZ3JpZC1ndXR0ZXItd2lkdGggLyAyICFkZWZhdWx0O1xuJGNhcmQtZGVjay1tYXJnaW46ICAgICAgICAgICAgICAgICAgJGNhcmQtZ3JvdXAtbWFyZ2luICFkZWZhdWx0O1xuXG4kY2FyZC1jb2x1bW5zLWNvdW50OiAgICAgICAgICAgICAgICAzICFkZWZhdWx0O1xuJGNhcmQtY29sdW1ucy1nYXA6ICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRjYXJkLWNvbHVtbnMtbWFyZ2luOiAgICAgICAgICAgICAgICRjYXJkLXNwYWNlci15ICFkZWZhdWx0O1xuXG5cbi8vIFRvb2x0aXBzXG5cbiR0b29sdGlwLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAyMDBweCAhZGVmYXVsdDtcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiR0b29sdGlwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiR0b29sdGlwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLW1hcmdpbjogICAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG5cbiR0b29sdGlwLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgIC44cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjRyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkdG9vbHRpcC1iZyAhZGVmYXVsdDtcblxuLy8gRm9ybSB0b29sdGlwcyBtdXN0IGNvbWUgYWZ0ZXIgcmVndWxhciB0b29sdGlwc1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDogICAgICR0b29sdGlwLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplOiAgICAgJHRvb2x0aXAtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDogICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eTogICAgICAgJHRvb2x0aXAtb3BhY2l0eSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1czogJHRvb2x0aXAtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuXG4vLyBQb3BvdmVyc1xuXG4kcG9wb3Zlci1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHBvcG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJHBvcG92ZXItYm94LXNoYWRvdzogICAgICAgICAgICAgICAgMCAuMjVyZW0gLjVyZW0gcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcblxuJHBvcG92ZXItaGVhZGVyLWJnOiAgICAgICAgICAgICAgICAgZGFya2VuKCRwb3BvdmVyLWJnLCAzJSkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAkaGVhZGluZ3MtY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcblxuJHBvcG92ZXItYm9keS1jb2xvcjogICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteTogICAgICAgICAgICAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy15ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXg6ICAgICAgICAgICAgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgJHBvcG92ZXItYmcgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgICAgICAgIGZhZGUtaW4oJHBvcG92ZXItYm9yZGVyLWNvbG9yLCAuMDUpICFkZWZhdWx0O1xuXG5cbi8vIFRvYXN0c1xuXG4kdG9hc3QtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAzNTBweCAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIC44NzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRvYXN0LWJhY2tncm91bmQtY29sb3I6ICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC44NSkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKDAsIDAsIDAsIC4xKSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIDAgLjI1cmVtIC43NXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kdG9hc3QtaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3I6ICAgICByZ2JhKCR3aGl0ZSwgLjg1KSAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjA1KSAhZGVmYXVsdDtcblxuXG4vLyBCYWRnZXNcblxuJGJhZGdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgNzUlICFkZWZhdWx0O1xuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMjVlbSAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC40ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGJhZGdlLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgJGJ0bi10cmFuc2l0aW9uICFkZWZhdWx0O1xuJGJhZGdlLWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcblxuJGJhZGdlLXBpbGwtcGFkZGluZy14OiAgICAgICAgICAgICAgLjZlbSAhZGVmYXVsdDtcbi8vIFVzZSBhIGhpZ2hlciB0aGFuIG5vcm1hbCB2YWx1ZSB0byBlbnN1cmUgY29tcGxldGVseSByb3VuZGVkIGVkZ2VzIHdoZW5cbi8vIGN1c3RvbWl6aW5nIHBhZGRpbmcgb3IgZm9udC1zaXplIG9uIGxhYmVscy5cbiRiYWRnZS1waWxsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuXG5cbi8vIE1vZGFsc1xuXG4vLyBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIGJvZHlcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC1kaWFsb2ctbWFyZ2luOiAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cDogICAgICAgMS43NXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRtb2RhbC1jb250ZW50LWNvbG9yOiAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoOiAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14czogICAgICAgMCAuMjVyZW0gLjVyZW0gcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXA6ICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuXG4kbW9kYWwtYmFja2Ryb3AtYmc6ICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmc6ICAgICAgICAgICAgICAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteSAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDsgLy8gS2VlcCB0aGlzIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eVxuXG4kbW9kYWwteGw6ICAgICAgICAgICAgICAgICAgICAgICAgICAxMTQwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbGc6ICAgICAgICAgICAgICAgICAgICAgICAgICA4MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1tZDogICAgICAgICAgICAgICAgICAgICAgICAgIDUwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLXNtOiAgICAgICAgICAgICAgICAgICAgICAgICAgMzAwcHggIWRlZmF1bHQ7XG5cbiRtb2RhbC1mYWRlLXRyYW5zZm9ybTogICAgICAgICAgICAgIHRyYW5zbGF0ZSgwLCAtNTBweCkgIWRlZmF1bHQ7XG4kbW9kYWwtc2hvdy10cmFuc2Zvcm06ICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJG1vZGFsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIC4zcyBlYXNlLW91dCAhZGVmYXVsdDtcblxuXG4vLyBBbGVydHNcbi8vXG4vLyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuJGFsZXJ0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGFsZXJ0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhbGVydC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGFsZXJ0LWJnLWxldmVsOiAgICAgICAgICAgICAgICAgICAgLTEwICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1sZXZlbDogICAgICAgICAgICAgICAgLTkgIWRlZmF1bHQ7XG4kYWxlcnQtY29sb3ItbGV2ZWw6ICAgICAgICAgICAgICAgICA2ICFkZWZhdWx0O1xuXG5cbi8vIFByb2dyZXNzIGJhcnNcblxuJHByb2dyZXNzLWhlaWdodDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIC43NSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iZzogICAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHByb2dyZXNzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgaW5zZXQgMCAuMXJlbSAuMXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1iZzogICAgICAgICAgICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nOiAgICAgMXMgbGluZWFyIGluZmluaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci10cmFuc2l0aW9uOiAgICAgICAgICAgd2lkdGggLjZzIGVhc2UgIWRlZmF1bHQ7XG5cblxuLy8gTGlzdCBncm91cFxuXG4kbGlzdC1ncm91cC1jb2xvcjogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYmc6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteTogICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDogICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJGxpc3QtZ3JvdXAtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAgICAkbGlzdC1ncm91cC1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yOiAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yOiAgICAgJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yOiAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc6ICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG5cbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcblxuXG4vLyBGaWd1cmVzXG5cbiRmaWd1cmUtY2FwdGlvbi1mb250LXNpemU6ICAgICAgICAgIDkwJSAhZGVmYXVsdDtcbiRmaWd1cmUtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuXG4vLyBCcmVhZGNydW1ic1xuXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nOiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLW1hcmdpbi1ib3R0b206ICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLWJnOiAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXI6ICAgICAgICAgICAgICAgIHF1b3RlKFwiL1wiKSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cblxuLy8gQ2Fyb3VzZWxcblxuJGNhcm91c2VsLWNvbnRyb2wtY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1ob3Zlci1vcGFjaXR5OiAgICAgLjkgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC10cmFuc2l0aW9uOiAgICAgICAgb3BhY2l0eSAuMTVzIGVhc2UgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGg6ICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0OiAxMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXRyYW5zaXRpb246ICAgICAgb3BhY2l0eSAuNnMgZWFzZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNhcHRpb24td2lkdGg6ICAgICAgICAgICAgIDcwJSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg6ICAgICAgICAyMHB4ICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmc6ICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9JyB2aWV3Qm94PScwIDAgOCA4JyUzZSUzY3BhdGggZD0nTTUuMjUgMGwtNCA0IDQgNCAxLjUtMS41LTIuNS0yLjUgMi41LTIuNS0xLjUtMS41eicvJTNlJTNjL3N2ZyUzZVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnOiAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfScgdmlld0JveD0nMCAwIDggOCclM2UlM2NwYXRoIGQ9J00yLjc1IDBsLTEuNSAxLjUgMi41IDIuNS0yLjUgMi41IDEuNSAxLjUgNC00LTQtNHonLyUzZSUzYy9zdmclM2VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb246ICAgICAgIC42cyAhZGVmYXVsdDtcbiRjYXJvdXNlbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24gZWFzZS1pbi1vdXQgIWRlZmF1bHQ7IC8vIERlZmluZSB0cmFuc2Zvcm0gdHJhbnNpdGlvbiBmaXJzdCBpZiB1c2luZyBtdWx0aXBsZSB0cmFuc2l0aW9ucyAoZS5nLiwgYHRyYW5zZm9ybSAycyBlYXNlLCBvcGFjaXR5IC41cyBlYXNlLW91dGApXG5cblxuLy8gU3Bpbm5lcnNcblxuJHNwaW5uZXItd2lkdGg6ICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodDogICAgICAgICRzcGlubmVyLXdpZHRoICFkZWZhdWx0O1xuJHNwaW5uZXItYm9yZGVyLXdpZHRoOiAgLjI1ZW0gIWRlZmF1bHQ7XG5cbiRzcGlubmVyLXdpZHRoLXNtOiAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodC1zbTogICAgICAgJHNwaW5uZXItd2lkdGgtc20gIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGgtc206IC4yZW0gIWRlZmF1bHQ7XG5cblxuLy8gQ2xvc2VcblxuJGNsb3NlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGNsb3NlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kY2xvc2UtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kY2xvc2UtdGV4dC1zaGFkb3c6ICAgICAgICAgICAgICAgICAwIDFweCAwICR3aGl0ZSAhZGVmYXVsdDtcblxuXG4vLyBDb2RlXG5cbiRjb2RlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgIDg3LjUlICFkZWZhdWx0O1xuJGNvZGUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgJHBpbmsgIWRlZmF1bHQ7XG5cbiRrYmQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGtiZC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgLjRyZW0gIWRlZmF1bHQ7XG4ka2JkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAkY29kZS1mb250LXNpemUgIWRlZmF1bHQ7XG4ka2JkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4ka2JkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG5cbiRwcmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0OiAgICAgICAgIDM0MHB4ICFkZWZhdWx0O1xuXG5cbi8vIFV0aWxpdGllc1xuXG4kZGlzcGxheXM6IG5vbmUsIGlubGluZSwgaW5saW5lLWJsb2NrLCBibG9jaywgdGFibGUsIHRhYmxlLXJvdywgdGFibGUtY2VsbCwgZmxleCwgaW5saW5lLWZsZXggIWRlZmF1bHQ7XG4kb3ZlcmZsb3dzOiBhdXRvLCBoaWRkZW4gIWRlZmF1bHQ7XG4kcG9zaXRpb25zOiBzdGF0aWMsIHJlbGF0aXZlLCBhYnNvbHV0ZSwgZml4ZWQsIHN0aWNreSAhZGVmYXVsdDtcblxuXG4vLyBQcmludGluZ1xuXG4kcHJpbnQtcGFnZS1zaXplOiAgICAgICAgICAgICAgICAgICBhMyAhZGVmYXVsdDtcbiRwcmludC1ib2R5LW1pbi13aWR0aDogICAgICAgICAgICAgIG1hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsIFwibGdcIikgIWRlZmF1bHQ7XG4iLCIvLyBUb2dnbGVzXG4vL1xuLy8gVXNlZCBpbiBjb25qdW5jdGlvbiB3aXRoIGdsb2JhbCB2YXJpYWJsZXMgdG8gZW5hYmxlIGNlcnRhaW4gdGhlbWUgZmVhdHVyZXMuXG5cbi8vIFZlbmRvclxuQGltcG9ydCBcInZlbmRvci9yZnNcIjtcblxuLy8gRGVwcmVjYXRlXG5AaW1wb3J0IFwibWl4aW5zL2RlcHJlY2F0ZVwiO1xuXG4vLyBVdGlsaXRpZXNcbkBpbXBvcnQgXCJtaXhpbnMvYnJlYWtwb2ludHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvaG92ZXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvaW1hZ2VcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYmFkZ2VcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzaXplXCI7XG5AaW1wb3J0IFwibWl4aW5zL3NjcmVlbi1yZWFkZXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvc2l6ZVwiO1xuQGltcG9ydCBcIm1peGlucy9yZXNldC10ZXh0XCI7XG5AaW1wb3J0IFwibWl4aW5zL3RleHQtZW1waGFzaXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGV4dC1oaWRlXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RleHQtdHJ1bmNhdGVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdmlzaWJpbGl0eVwiO1xuXG4vLyAvLyBDb21wb25lbnRzXG5AaW1wb3J0IFwibWl4aW5zL2FsZXJ0XCI7XG5AaW1wb3J0IFwibWl4aW5zL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvY2FyZXRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcGFnaW5hdGlvblwiO1xuQGltcG9ydCBcIm1peGlucy9saXN0c1wiO1xuQGltcG9ydCBcIm1peGlucy9saXN0LWdyb3VwXCI7XG5AaW1wb3J0IFwibWl4aW5zL25hdi1kaXZpZGVyXCI7XG5AaW1wb3J0IFwibWl4aW5zL2Zvcm1zXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RhYmxlLXJvd1wiO1xuXG4vLyAvLyBTa2luc1xuQGltcG9ydCBcIm1peGlucy9iYWNrZ3JvdW5kLXZhcmlhbnRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYm9yZGVyLXJhZGl1c1wiO1xuQGltcG9ydCBcIm1peGlucy9ib3gtc2hhZG93XCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyYWRpZW50c1wiO1xuQGltcG9ydCBcIm1peGlucy90cmFuc2l0aW9uXCI7XG5cbi8vIC8vIExheW91dFxuQGltcG9ydCBcIm1peGlucy9jbGVhcmZpeFwiO1xuQGltcG9ydCBcIm1peGlucy9ncmlkLWZyYW1ld29ya1wiO1xuQGltcG9ydCBcIm1peGlucy9ncmlkXCI7XG5AaW1wb3J0IFwibWl4aW5zL2Zsb2F0XCI7XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1ibGFja2xpc3QsIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcblxuLy8gU0NTUyBSRlMgbWl4aW5cbi8vXG4vLyBBdXRvbWF0ZWQgZm9udC1yZXNpemluZ1xuLy9cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnNcblxuLy8gQ29uZmlndXJhdGlvblxuXG4vLyBCYXNlIGZvbnQgc2l6ZVxuJHJmcy1iYXNlLWZvbnQtc2l6ZTogMS4yNXJlbSAhZGVmYXVsdDtcbiRyZnMtZm9udC1zaXplLXVuaXQ6IHJlbSAhZGVmYXVsdDtcblxuLy8gQnJlYWtwb2ludCBhdCB3aGVyZSBmb250LXNpemUgc3RhcnRzIGRlY3JlYXNpbmcgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsZXJcbiRyZnMtYnJlYWtwb2ludDogMTIwMHB4ICFkZWZhdWx0O1xuJHJmcy1icmVha3BvaW50LXVuaXQ6IHB4ICFkZWZhdWx0O1xuXG4vLyBSZXNpemUgZm9udC1zaXplIGJhc2VkIG9uIHNjcmVlbiBoZWlnaHQgYW5kIHdpZHRoXG4kcmZzLXR3by1kaW1lbnNpb25hbDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIEZhY3RvciBvZiBkZWNyZWFzZVxuJHJmcy1mYWN0b3I6IDEwICFkZWZhdWx0O1xuXG5AaWYgdHlwZS1vZigkcmZzLWZhY3RvcikgIT0gXCJudW1iZXJcIiBvciAkcmZzLWZhY3RvciA8PSAxIHtcbiAgQGVycm9yIFwiYCN7JHJmcy1mYWN0b3J9YCBpcyBub3QgYSB2YWxpZCAgJHJmcy1mYWN0b3IsIGl0IG11c3QgYmUgZ3JlYXRlciB0aGFuIDEuXCI7XG59XG5cbi8vIEdlbmVyYXRlIGVuYWJsZSBvciBkaXNhYmxlIGNsYXNzZXMuIFBvc3NpYmlsaXRpZXM6IGZhbHNlLCBcImVuYWJsZVwiIG9yIFwiZGlzYWJsZVwiXG4kcmZzLWNsYXNzOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gMSByZW0gPSAkcmZzLXJlbS12YWx1ZSBweFxuJHJmcy1yZW0tdmFsdWU6IDE2ICFkZWZhdWx0O1xuXG4vLyBTYWZhcmkgaWZyYW1lIHJlc2l6ZSBidWc6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9pc3N1ZXMvMTRcbiRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIERpc2FibGUgUkZTIGJ5IHNldHRpbmcgJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXMgdG8gZmFsc2VcbiRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBDYWNoZSAkcmZzLWJhc2UtZm9udC1zaXplIHVuaXRcbiRyZnMtYmFzZS1mb250LXNpemUtdW5pdDogdW5pdCgkcmZzLWJhc2UtZm9udC1zaXplKTtcblxuLy8gUmVtb3ZlIHB4LXVuaXQgZnJvbSAkcmZzLWJhc2UtZm9udC1zaXplIGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJhc2UtZm9udC1zaXplLXVuaXQgPT0gXCJweFwiIHtcbiAgJHJmcy1iYXNlLWZvbnQtc2l6ZTogJHJmcy1iYXNlLWZvbnQtc2l6ZSAvICgkcmZzLWJhc2UtZm9udC1zaXplICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0ID09IFwicmVtXCIge1xuICAkcmZzLWJhc2UtZm9udC1zaXplOiAkcmZzLWJhc2UtZm9udC1zaXplIC8gKCRyZnMtYmFzZS1mb250LXNpemUgKiAwICsgMSAvICRyZnMtcmVtLXZhbHVlKTtcbn1cblxuLy8gQ2FjaGUgJHJmcy1icmVha3BvaW50IHVuaXQgdG8gcHJldmVudCBtdWx0aXBsZSBjYWxsc1xuJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGU6IHVuaXQoJHJmcy1icmVha3BvaW50KTtcblxuLy8gUmVtb3ZlIHVuaXQgZnJvbSAkcmZzLWJyZWFrcG9pbnQgZm9yIGNhbGN1bGF0aW9uc1xuQGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwicHhcIiB7XG4gICRyZnMtYnJlYWtwb2ludDogJHJmcy1icmVha3BvaW50IC8gKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxKTtcbn1cbkBlbHNlIGlmICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwicmVtXCIgb3IgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJlbVwiIHtcbiAgJHJmcy1icmVha3BvaW50OiAkcmZzLWJyZWFrcG9pbnQgLyAoJHJmcy1icmVha3BvaW50ICogMCArIDEgLyAkcmZzLXJlbS12YWx1ZSk7XG59XG5cbi8vIFJlc3BvbnNpdmUgZm9udC1zaXplIG1peGluXG5AbWl4aW4gcmZzKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgLy8gQ2FjaGUgJGZzIHVuaXRcbiAgJGZzLXVuaXQ6IGlmKHR5cGUtb2YoJGZzKSA9PSBcIm51bWJlclwiLCB1bml0KCRmcyksIGZhbHNlKTtcblxuICAvLyBBZGQgIWltcG9ydGFudCBzdWZmaXggaWYgbmVlZGVkXG4gICRyZnMtc3VmZml4OiBpZigkaW1wb3J0YW50LCBcIiAhaW1wb3J0YW50XCIsIFwiXCIpO1xuXG4gIC8vIElmICRmcyBpc24ndCBhIG51bWJlciAobGlrZSBpbmhlcml0KSBvciAkZnMgaGFzIGEgdW5pdCAobm90IHB4IG9yIHJlbSwgbGlrZSAxLjVlbSkgb3IgJCBpcyAwLCBqdXN0IHByaW50IHRoZSB2YWx1ZVxuICBAaWYgbm90ICRmcy11bml0IG9yICRmcy11bml0ICE9IFwiXCIgYW5kICRmcy11bml0ICE9IFwicHhcIiBhbmQgJGZzLXVuaXQgIT0gXCJyZW1cIiBvciAkZnMgPT0gMCB7XG4gICAgZm9udC1zaXplOiAjeyRmc30jeyRyZnMtc3VmZml4fTtcbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gVmFyaWFibGVzIGZvciBzdG9yaW5nIHN0YXRpYyBhbmQgZmx1aWQgcmVzY2FsaW5nXG4gICAgJHJmcy1zdGF0aWM6IG51bGw7XG4gICAgJHJmcy1mbHVpZDogbnVsbDtcblxuICAgIC8vIFJlbW92ZSBweC11bml0IGZyb20gJGZzIGZvciBjYWxjdWxhdGlvbnNcbiAgICBAaWYgJGZzLXVuaXQgPT0gXCJweFwiIHtcbiAgICAgICRmczogJGZzIC8gKCRmcyAqIDAgKyAxKTtcbiAgICB9XG4gICAgQGVsc2UgaWYgJGZzLXVuaXQgPT0gXCJyZW1cIiB7XG4gICAgICAkZnM6ICRmcyAvICgkZnMgKiAwICsgMSAvICRyZnMtcmVtLXZhbHVlKTtcbiAgICB9XG5cbiAgICAvLyBTZXQgZGVmYXVsdCBmb250LXNpemVcbiAgICBAaWYgJHJmcy1mb250LXNpemUtdW5pdCA9PSByZW0ge1xuICAgICAgJHJmcy1zdGF0aWM6ICN7JGZzIC8gJHJmcy1yZW0tdmFsdWV9cmVtI3skcmZzLXN1ZmZpeH07XG4gICAgfVxuICAgIEBlbHNlIGlmICRyZnMtZm9udC1zaXplLXVuaXQgPT0gcHgge1xuICAgICAgJHJmcy1zdGF0aWM6ICN7JGZzfXB4I3skcmZzLXN1ZmZpeH07XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBlcnJvciBcImAjeyRyZnMtZm9udC1zaXplLXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLWZvbnQtc2l6ZS11bml0LiBVc2UgYHB4YCBvciBgcmVtYC5cIjtcbiAgICB9XG5cbiAgICAvLyBPbmx5IGFkZCBtZWRpYSBxdWVyeSBpZiBmb250LXNpemUgaXMgYmlnZ2VyIGFzIHRoZSBtaW5pbXVtIGZvbnQtc2l6ZVxuICAgIC8vIElmICRyZnMtZmFjdG9yID09IDEsIG5vIHJlc2NhbGluZyB3aWxsIHRha2UgcGxhY2VcbiAgICBAaWYgJGZzID4gJHJmcy1iYXNlLWZvbnQtc2l6ZSBhbmQgJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXMge1xuICAgICAgJG1pbi13aWR0aDogbnVsbDtcbiAgICAgICR2YXJpYWJsZS11bml0OiBudWxsO1xuXG4gICAgICAvLyBDYWxjdWxhdGUgbWluaW11bSBmb250LXNpemUgZm9yIGdpdmVuIGZvbnQtc2l6ZVxuICAgICAgJGZzLW1pbjogJHJmcy1iYXNlLWZvbnQtc2l6ZSArICgkZnMgLSAkcmZzLWJhc2UtZm9udC1zaXplKSAvICRyZnMtZmFjdG9yO1xuXG4gICAgICAvLyBDYWxjdWxhdGUgZGlmZmVyZW5jZSBiZXR3ZWVuIGdpdmVuIGZvbnQtc2l6ZSBhbmQgbWluaW11bSBmb250LXNpemUgZm9yIGdpdmVuIGZvbnQtc2l6ZVxuICAgICAgJGZzLWRpZmY6ICRmcyAtICRmcy1taW47XG5cbiAgICAgIC8vIEJhc2UgZm9udC1zaXplIGZvcm1hdHRpbmdcbiAgICAgIC8vIE5vIG5lZWQgdG8gY2hlY2sgaWYgdGhlIHVuaXQgaXMgdmFsaWQsIGJlY2F1c2Ugd2UgZGlkIHRoYXQgYmVmb3JlXG4gICAgICAkbWluLXdpZHRoOiBpZigkcmZzLWZvbnQtc2l6ZS11bml0ID09IHJlbSwgI3skZnMtbWluIC8gJHJmcy1yZW0tdmFsdWV9cmVtLCAjeyRmcy1taW59cHgpO1xuXG4gICAgICAvLyBJZiB0d28tZGltZW5zaW9uYWwsIHVzZSBzbWFsbGVzdCBvZiBzY3JlZW4gd2lkdGggYW5kIGhlaWdodFxuICAgICAgJHZhcmlhYmxlLXVuaXQ6IGlmKCRyZnMtdHdvLWRpbWVuc2lvbmFsLCB2bWluLCB2dyk7XG5cbiAgICAgIC8vIENhbGN1bGF0ZSB0aGUgdmFyaWFibGUgd2lkdGggYmV0d2VlbiAwIGFuZCAkcmZzLWJyZWFrcG9pbnRcbiAgICAgICR2YXJpYWJsZS13aWR0aDogI3skZnMtZGlmZiAqIDEwMCAvICRyZnMtYnJlYWtwb2ludH0jeyR2YXJpYWJsZS11bml0fTtcblxuICAgICAgLy8gU2V0IHRoZSBjYWxjdWxhdGVkIGZvbnQtc2l6ZS5cbiAgICAgICRyZnMtZmx1aWQ6IGNhbGMoI3skbWluLXdpZHRofSArICN7JHZhcmlhYmxlLXdpZHRofSkgI3skcmZzLXN1ZmZpeH07XG4gICAgfVxuXG4gICAgLy8gUmVuZGVyaW5nXG4gICAgQGlmICRyZnMtZmx1aWQgPT0gbnVsbCB7XG4gICAgICAvLyBPbmx5IHJlbmRlciBzdGF0aWMgZm9udC1zaXplIGlmIG5vIGZsdWlkIGZvbnQtc2l6ZSBpcyBhdmFpbGFibGVcbiAgICAgIGZvbnQtc2l6ZTogJHJmcy1zdGF0aWM7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRtcS12YWx1ZTogbnVsbDtcblxuICAgICAgLy8gUkZTIGJyZWFrcG9pbnQgZm9ybWF0dGluZ1xuICAgICAgQGlmICRyZnMtYnJlYWtwb2ludC11bml0ID09IGVtIG9yICRyZnMtYnJlYWtwb2ludC11bml0ID09IHJlbSB7XG4gICAgICAgICRtcS12YWx1ZTogI3skcmZzLWJyZWFrcG9pbnQgLyAkcmZzLXJlbS12YWx1ZX0jeyRyZnMtYnJlYWtwb2ludC11bml0fTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICRyZnMtYnJlYWtwb2ludC11bml0ID09IHB4IHtcbiAgICAgICAgJG1xLXZhbHVlOiAjeyRyZnMtYnJlYWtwb2ludH1weDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQGVycm9yIFwiYCN7JHJmcy1icmVha3BvaW50LXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLWJyZWFrcG9pbnQtdW5pdC4gVXNlIGBweGAsIGBlbWAgb3IgYHJlbWAuXCI7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkcmZzLWNsYXNzID09IFwiZGlzYWJsZVwiIHtcbiAgICAgICAgLy8gQWRkaW5nIGFuIGV4dHJhIGNsYXNzIGluY3JlYXNlcyBzcGVjaWZpY2l0eSxcbiAgICAgICAgLy8gd2hpY2ggcHJldmVudHMgdGhlIG1lZGlhIHF1ZXJ5IHRvIG92ZXJyaWRlIHRoZSBmb250IHNpemVcbiAgICAgICAgJixcbiAgICAgICAgLmRpc2FibGUtcmVzcG9uc2l2ZS1mb250LXNpemUgJixcbiAgICAgICAgJi5kaXNhYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplIHtcbiAgICAgICAgICBmb250LXNpemU6ICRyZnMtc3RhdGljO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHJmcy1zdGF0aWM7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkcmZzLXR3by1kaW1lbnNpb25hbCB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAjeyRtcS12YWx1ZX0pLCAobWF4LWhlaWdodDogI3skbXEtdmFsdWV9KSB7XG4gICAgICAgICAgQGlmICRyZnMtY2xhc3MgPT0gXCJlbmFibGVcIiB7XG4gICAgICAgICAgICAuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplICYsXG4gICAgICAgICAgICAmLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1mbHVpZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkcmZzLWZsdWlkO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpZiAkcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXgge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGxlbmd0aC16ZXJvLW5vLXVuaXRcbiAgICAgICAgICAgIG1pbi13aWR0aDogMHZ3O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogI3skbXEtdmFsdWV9KSB7XG4gICAgICAgICAgQGlmICRyZnMtY2xhc3MgPT0gXCJlbmFibGVcIiB7XG4gICAgICAgICAgICAuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplICYsXG4gICAgICAgICAgICAmLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHJmcy1mbHVpZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkcmZzLWZsdWlkO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpZiAkcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXgge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGxlbmd0aC16ZXJvLW5vLXVuaXRcbiAgICAgICAgICAgIG1pbi13aWR0aDogMHZ3O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBUaGUgZm9udC1zaXplICYgcmVzcG9uc2l2ZS1mb250LXNpemUgbWl4aW4gdXNlcyBSRlMgdG8gcmVzY2FsZSBmb250IHNpemVzXG5AbWl4aW4gZm9udC1zaXplKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgQGluY2x1ZGUgcmZzKCRmcywgJGltcG9ydGFudCk7XG59XG5cbkBtaXhpbiByZXNwb25zaXZlLWZvbnQtc2l6ZSgkZnMsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIHJmcygkZnMsICRpbXBvcnRhbnQpO1xufVxuIiwiLy8gRGVwcmVjYXRlIG1peGluXG4vL1xuLy8gVGhpcyBtaXhpbiBjYW4gYmUgdXNlZCB0byBkZXByZWNhdGUgbWl4aW5zIG9yIGZ1bmN0aW9ucy5cbi8vIGAkZW5hYmxlLWRlcHJlY2F0aW9uLW1lc3NhZ2VzYCBpcyBhIGdsb2JhbCB2YXJpYWJsZSwgYCRpZ25vcmUtd2FybmluZ2AgaXMgYSB2YXJpYWJsZSB0aGF0IGNhbiBiZSBwYXNzZWQgdG9cbi8vIHNvbWUgZGVwcmVjYXRlZCBtaXhpbnMgdG8gc3VwcHJlc3MgdGhlIHdhcm5pbmcgKGZvciBleGFtcGxlIGlmIHRoZSBtaXhpbiBpcyBzdGlsbCBiZSB1c2VkIGluIHRoZSBjdXJyZW50IHZlcnNpb24gb2YgQm9vdHN0cmFwKVxuQG1peGluIGRlcHJlY2F0ZSgkbmFtZSwgJGRlcHJlY2F0ZS12ZXJzaW9uLCAkcmVtb3ZlLXZlcnNpb24sICRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgQGlmICgkZW5hYmxlLWRlcHJlY2F0aW9uLW1lc3NhZ2VzICE9IGZhbHNlIGFuZCAkaWdub3JlLXdhcm5pbmcgIT0gdHJ1ZSkge1xuICAgIEB3YXJuIFwiI3skbmFtZX0gaGFzIGJlZW4gZGVwcmVjYXRlZCBhcyBvZiAjeyRkZXByZWNhdGUtdmVyc2lvbn0uIEl0IHdpbGwgYmUgcmVtb3ZlZCBlbnRpcmVseSBpbiAjeyRyZW1vdmUtdmVyc2lvbn0uXCI7XG4gIH1cbn1cbiIsIi8vIEJyZWFrcG9pbnQgdmlld3BvcnQgc2l6ZXMgYW5kIG1lZGlhIHF1ZXJpZXMuXG4vL1xuLy8gQnJlYWtwb2ludHMgYXJlIGRlZmluZWQgYXMgYSBtYXAgb2YgKG5hbWU6IG1pbmltdW0gd2lkdGgpLCBvcmRlciBmcm9tIHNtYWxsIHRvIGxhcmdlOlxuLy9cbi8vICAgICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweClcbi8vXG4vLyBUaGUgbWFwIGRlZmluZWQgaW4gdGhlIGAkZ3JpZC1icmVha3BvaW50c2AgZ2xvYmFsIHZhcmlhYmxlIGlzIHVzZWQgYXMgdGhlIGAkYnJlYWtwb2ludHNgIGFyZ3VtZW50IGJ5IGRlZmF1bHQuXG5cbi8vIE5hbWUgb2YgdGhlIG5leHQgYnJlYWtwb2ludCwgb3IgbnVsbCBmb3IgdGhlIGxhc3QgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20pXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgJGJyZWFrcG9pbnQtbmFtZXM6ICh4cyBzbSBtZCBsZyB4bCkpXG4vLyAgICBtZFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cykpIHtcbiAgJG46IGluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG4gIT0gbnVsbCBhbmQgJG4gPCBsZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLCBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSksIG51bGwpO1xufVxuXG4vLyBNaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBzbWFsbGVzdCAoZmlyc3QpIGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1taW4oc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA1NzZweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1pbiAhPSAwLCAkbWluLCBudWxsKTtcbn1cblxuLy8gTWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgbGFyZ2VzdCAobGFzdCkgYnJlYWtwb2ludC5cbi8vIFRoZSBtYXhpbXVtIHZhbHVlIGlzIGNhbGN1bGF0ZWQgYXMgdGhlIG1pbmltdW0gb2YgdGhlIG5leHQgb25lIGxlc3MgMC4wMnB4XG4vLyB0byB3b3JrIGFyb3VuZCB0aGUgbGltaXRhdGlvbnMgb2YgYG1pbi1gIGFuZCBgbWF4LWAgcHJlZml4ZXMgYW5kIHZpZXdwb3J0cyB3aXRoIGZyYWN0aW9uYWwgd2lkdGhzLlxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9tZWRpYXF1ZXJpZXMtNC8jbXEtbWluLW1heFxuLy8gVXNlcyAwLjAycHggcmF0aGVyIHRoYW4gMC4wMXB4IHRvIHdvcmsgYXJvdW5kIGEgY3VycmVudCByb3VuZGluZyBidWcgaW4gU2FmYXJpLlxuLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzgyNjFcbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1heChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIDc2Ny45OHB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQHJldHVybiBpZigkbmV4dCwgYnJlYWtwb2ludC1taW4oJG5leHQsICRicmVha3BvaW50cykgLSAuMDIsIG51bGwpO1xufVxuXG4vLyBSZXR1cm5zIGEgYmxhbmsgc3RyaW5nIGlmIHNtYWxsZXN0IGJyZWFrcG9pbnQsIG90aGVyd2lzZSByZXR1cm5zIHRoZSBuYW1lIHdpdGggYSBkYXNoIGluIGZyb250LlxuLy8gVXNlZnVsIGZvciBtYWtpbmcgcmVzcG9uc2l2ZSB1dGlsaXRpZXMuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeCh4cywgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIFwiXCIgIChSZXR1cm5zIGEgYmxhbmsgc3RyaW5nKVxuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIFwiLXNtXCJcbkBmdW5jdGlvbiBicmVha3BvaW50LWluZml4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEByZXR1cm4gaWYoYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cykgPT0gbnVsbCwgXCJcIiwgXCItI3skbmFtZX1cIik7XG59XG5cbi8vIE1lZGlhIG9mIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgd2lkZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtaW4ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIG9mIGF0IG1vc3QgdGhlIG1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBsYXJnZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtYXgge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIHRoYXQgc3BhbnMgbXVsdGlwbGUgYnJlYWtwb2ludCB3aWR0aHMuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgYmV0d2VlbiB0aGUgbWluIGFuZCBtYXggYnJlYWtwb2ludHNcbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWJldHdlZW4oJGxvd2VyLCAkdXBwZXIsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJGxvd2VyLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkdXBwZXIsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGxvd2VyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkdXBwZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIE1lZGlhIGJldHdlZW4gdGhlIGJyZWFrcG9pbnQncyBtaW5pbXVtIGFuZCBtYXhpbXVtIHdpZHRocy5cbi8vIE5vIG1pbmltdW0gZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LCBhbmQgbm8gbWF4aW11bSBmb3IgdGhlIGxhcmdlc3Qgb25lLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IG9ubHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQsIG5vdCB2aWV3cG9ydHMgYW55IHdpZGVyIG9yIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtb25seSgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gSG92ZXIgbWl4aW4gYW5kIGAkZW5hYmxlLWhvdmVyLW1lZGlhLXF1ZXJ5YCBhcmUgZGVwcmVjYXRlZC5cbi8vXG4vLyBPcmlnaW5hbGx5IGFkZGVkIGR1cmluZyBvdXIgYWxwaGFzIGFuZCBtYWludGFpbmVkIGR1cmluZyBiZXRhcywgdGhpcyBtaXhpbiB3YXNcbi8vIGRlc2lnbmVkIHRvIHByZXZlbnQgYDpob3ZlcmAgc3RpY2tpbmVzcyBvbiBpT1MtYW4gaXNzdWUgd2hlcmUgaG92ZXIgc3R5bGVzXG4vLyB3b3VsZCBwZXJzaXN0IGFmdGVyIGluaXRpYWwgdG91Y2guXG4vL1xuLy8gRm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHksIHdlJ3ZlIGtlcHQgdGhlc2UgbWl4aW5zIGFuZCB1cGRhdGVkIHRoZW0gdG9cbi8vIGFsd2F5cyByZXR1cm4gdGhlaXIgcmVndWxhciBwc2V1ZG8tY2xhc3NlcyBpbnN0ZWFkIG9mIGEgc2hpbW1lZCBtZWRpYSBxdWVyeS5cbi8vXG4vLyBJc3N1ZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNTE5NVxuXG5AbWl4aW4gaG92ZXIge1xuICAmOmhvdmVyIHsgQGNvbnRlbnQ7IH1cbn1cblxuQG1peGluIGhvdmVyLWZvY3VzIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIHBsYWluLWhvdmVyLWZvY3VzIHtcbiAgJixcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIGhvdmVyLWZvY3VzLWFjdGl2ZSB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMsXG4gICY6YWN0aXZlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLy8gSW1hZ2UgTWl4aW5zXG4vLyAtIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vIC0gUmV0aW5hIGltYWdlXG5cblxuLy8gUmVzcG9uc2l2ZSBpbWFnZVxuLy9cbi8vIEtlZXAgaW1hZ2VzIGZyb20gc2NhbGluZyBiZXlvbmQgdGhlIHdpZHRoIG9mIHRoZWlyIHBhcmVudHMuXG5cbkBtaXhpbiBpbWctZmx1aWQge1xuICAvLyBQYXJ0IDE6IFNldCBhIG1heGltdW0gcmVsYXRpdmUgdG8gdGhlIHBhcmVudFxuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8vIFBhcnQgMjogT3ZlcnJpZGUgdGhlIGhlaWdodCB0byBhdXRvLCBvdGhlcndpc2UgaW1hZ2VzIHdpbGwgYmUgc3RyZXRjaGVkXG4gIC8vIHdoZW4gc2V0dGluZyBhIHdpZHRoIGFuZCBoZWlnaHQgYXR0cmlidXRlIG9uIHRoZSBpbWcgZWxlbWVudC5cbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5cbi8vIFJldGluYSBpbWFnZVxuLy9cbi8vIFNob3J0IHJldGluYSBtaXhpbiBmb3Igc2V0dGluZyBiYWNrZ3JvdW5kLWltYWdlIGFuZCAtc2l6ZS5cblxuQG1peGluIGltZy1yZXRpbmEoJGZpbGUtMXgsICRmaWxlLTJ4LCAkd2lkdGgtMXgsICRoZWlnaHQtMXgpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRmaWxlLTF4KTtcblxuICAvLyBBdXRvcHJlZml4ZXIgdGFrZXMgY2FyZSBvZiBhZGRpbmcgLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvIGFuZCAtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvLFxuICAvLyBidXQgZG9lc24ndCBjb252ZXJ0IGRwcHg9PmRwaS5cbiAgLy8gVGhlcmUncyBubyBzdWNoIHRoaW5nIGFzIHVucHJlZml4ZWQgbWluLWRldmljZS1waXhlbC1yYXRpbyBzaW5jZSBpdCdzIG5vbnN0YW5kYXJkLlxuICAvLyBDb21wYXRpYmlsaXR5IGluZm86IGh0dHBzOi8vY2FuaXVzZS5jb20vI2ZlYXQ9Y3NzLW1lZGlhLXJlc29sdXRpb25cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDE5MmRwaSksIC8vIElFOS0xMSBkb24ndCBzdXBwb3J0IGRwcHhcbiAgICBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAyZHBweCkgeyAvLyBTdGFuZGFyZGl6ZWRcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGZpbGUtMngpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogJHdpZHRoLTF4ICRoZWlnaHQtMXg7XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYGltZy1yZXRpbmEoKWBcIiwgXCJ2NC4zLjBcIiwgXCJ2NVwiKTtcbn1cbiIsIkBtaXhpbiBiYWRnZS12YXJpYW50KCRiZykge1xuICBjb2xvcjogY29sb3IteWlxKCRiZyk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiZztcblxuICBAYXQtcm9vdCBhI3smfSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgY29sb3I6IGNvbG9yLXlpcSgkYmcpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiZywgMTAlKTtcbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgb3V0bGluZTogMDtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRiYWRnZS1mb2N1cy13aWR0aCByZ2JhKCRiZywgLjUpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUmVzaXplIGFueXRoaW5nXG5cbkBtaXhpbiByZXNpemFibGUoJGRpcmVjdGlvbikge1xuICBvdmVyZmxvdzogYXV0bzsgLy8gUGVyIENTUzMgVUksIGByZXNpemVgIG9ubHkgYXBwbGllcyB3aGVuIGBvdmVyZmxvd2AgaXNuJ3QgYHZpc2libGVgXG4gIHJlc2l6ZTogJGRpcmVjdGlvbjsgLy8gT3B0aW9uczogaG9yaXpvbnRhbCwgdmVydGljYWwsIGJvdGhcbn1cbiIsIi8vIE9ubHkgZGlzcGxheSBjb250ZW50IHRvIHNjcmVlbiByZWFkZXJzXG4vL1xuLy8gU2VlOiBodHRwczovL2ExMXlwcm9qZWN0LmNvbS9wb3N0cy9ob3ctdG8taGlkZS1jb250ZW50L1xuLy8gU2VlOiBodHRwczovL2h1Z29naXJhdWRlbC5jb20vMjAxNi8xMC8xMy9jc3MtaGlkZS1hbmQtc2Vlay9cblxuQG1peGluIHNyLW9ubHkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3JkZXI6IDA7XG59XG5cbi8vIFVzZSBpbiBjb25qdW5jdGlvbiB3aXRoIC5zci1vbmx5IHRvIG9ubHkgZGlzcGxheSBjb250ZW50IHdoZW4gaXQncyBmb2N1c2VkLlxuLy9cbi8vIFVzZWZ1bCBmb3IgXCJTa2lwIHRvIG1haW4gY29udGVudFwiIGxpbmtzOyBzZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSLzIwMTMvTk9URS1XQ0FHMjAtVEVDSFMtMjAxMzA5MDUvRzFcbi8vXG4vLyBDcmVkaXQ6IEhUTUw1IEJvaWxlcnBsYXRlXG5cbkBtaXhpbiBzci1vbmx5LWZvY3VzYWJsZSB7XG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIH1cbn1cbiIsIi8vIFNpemluZyBzaG9ydGN1dHNcblxuQG1peGluIHNpemUoJHdpZHRoLCAkaGVpZ2h0OiAkd2lkdGgpIHtcbiAgd2lkdGg6ICR3aWR0aDtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgc2l6ZSgpYFwiLCBcInY0LjMuMFwiLCBcInY1XCIpO1xufVxuIiwiQG1peGluIHJlc2V0LXRleHQge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkbyBOT1QgcmVzZXQgZm9udC1zaXplIG9yIHdvcmQtd3JhcC5cbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBGYWxsYmFjayBmb3Igd2hlcmUgYHN0YXJ0YCBpcyBub3Qgc3VwcG9ydGVkXG4gIHRleHQtYWxpZ246IHN0YXJ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgbGluZS1icmVhazogYXV0bztcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBUeXBvZ3JhcGh5XG5cbkBtaXhpbiB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgfVxuICBAaWYgJGVtcGhhc2l6ZWQtbGluay1ob3Zlci1kYXJrZW4tcGVyY2VudGFnZSAhPSAwIHtcbiAgICBhI3skcGFyZW50fSB7XG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAkZW1waGFzaXplZC1saW5rLWhvdmVyLWRhcmtlbi1wZXJjZW50YWdlKSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gQ1NTIGltYWdlIHJlcGxhY2VtZW50XG5AbWl4aW4gdGV4dC1oaWRlKCRpZ25vcmUtd2FybmluZzogZmFsc2UpIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGZvbnQtZmFtaWx5LW5vLW1pc3NpbmctZ2VuZXJpYy1mYW1pbHkta2V5d29yZFxuICBmb250OiAwLzAgYTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcblxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgdGV4dC1oaWRlKClgXCIsIFwidjQuMS4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cbiIsIi8vIFRleHQgdHJ1bmNhdGVcbi8vIFJlcXVpcmVzIGlubGluZS1ibG9jayBvciBibG9jayBmb3IgcHJvcGVyIHN0eWxpbmdcblxuQG1peGluIHRleHQtdHJ1bmNhdGUoKSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIFZpc2liaWxpdHlcblxuQG1peGluIGludmlzaWJsZSgkdmlzaWJpbGl0eSkge1xuICB2aXNpYmlsaXR5OiAkdmlzaWJpbGl0eSAhaW1wb3J0YW50O1xuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgaW52aXNpYmxlKClgXCIsIFwidjQuMy4wXCIsIFwidjVcIik7XG59XG4iLCJAbWl4aW4gYWxlcnQtdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlciwgJGNvbG9yKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRiYWNrZ3JvdW5kKTtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuXG4gIGhyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgNSUpO1xuICB9XG5cbiAgLmFsZXJ0LWxpbmsge1xuICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICB9XG59XG4iLCIvLyBCdXR0b24gdmFyaWFudHNcbi8vXG4vLyBFYXNpbHkgcHVtcCBvdXQgZGVmYXVsdCBzdHlsZXMsIGFzIHdlbGwgYXMgOmhvdmVyLCA6Zm9jdXMsIDphY3RpdmUsXG4vLyBhbmQgZGlzYWJsZWQgb3B0aW9ucyBmb3IgYWxsIGJ1dHRvbnNcblxuQG1peGluIGJ1dHRvbi12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkaG92ZXItYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCA3LjUlKSwgJGhvdmVyLWJvcmRlcjogZGFya2VuKCRib3JkZXIsIDEwJSksICRhY3RpdmUtYmFja2dyb3VuZDogZGFya2VuKCRiYWNrZ3JvdW5kLCAxMCUpLCAkYWN0aXZlLWJvcmRlcjogZGFya2VuKCRib3JkZXIsIDEyLjUlKSkge1xuICBjb2xvcjogY29sb3IteWlxKCRiYWNrZ3JvdW5kKTtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGJhY2tncm91bmQpO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1ib3gtc2hhZG93KTtcblxuICBAaW5jbHVkZSBob3ZlciB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkaG92ZXItYmFja2dyb3VuZCk7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIGJvcmRlci1jb2xvcjogJGhvdmVyLWJvcmRlcjtcbiAgfVxuXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6ICRidG4tYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKG1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEobWl4KGNvbG9yLXlpcSgkYmFja2dyb3VuZCksICRib3JkZXIsIDE1JSksIC41KTtcbiAgICB9XG4gIH1cblxuICAvLyBEaXNhYmxlZCBjb21lcyBmaXJzdCBzbyBhY3RpdmUgY2FuIHByb3Blcmx5IHJlc3R5bGVcbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYmFja2dyb3VuZCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIH1cbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgLnNob3cgPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYWN0aXZlLWJhY2tncm91bmQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBncmFkaWVudCBmb3IgdGhlIHByZXNzZWQvYWN0aXZlIHN0YXRlXG4gICAgfVxuICAgIGJvcmRlci1jb2xvcjogJGFjdGl2ZS1ib3JkZXI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3MgYW5kICRidG4tYWN0aXZlLWJveC1zaGFkb3cgIT0gbm9uZSB7XG4gICAgICAgIGJveC1zaGFkb3c6ICRidG4tYWN0aXZlLWJveC1zaGFkb3csIDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYShtaXgoY29sb3IteWlxKCRiYWNrZ3JvdW5kKSwgJGJvcmRlciwgMTUlKSwgLjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkY29sb3IsICRjb2xvci1ob3ZlcjogY29sb3IteWlxKCRjb2xvciksICRhY3RpdmUtYmFja2dyb3VuZDogJGNvbG9yLCAkYWN0aXZlLWJvcmRlcjogJGNvbG9yKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gIEBpbmNsdWRlIGhvdmVyIHtcbiAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgLnNob3cgPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYWN0aXZlLWJhY2tncm91bmQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIGFuZCAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93ICE9IG5vbmUge1xuICAgICAgICBib3gtc2hhZG93OiAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93LCAwIDAgMCAkYnRuLWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuNSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBCdXR0b24gc2l6ZXNcbkBtaXhpbiBidXR0b24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nLXkgJHBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICAvLyBNYW51YWxseSBkZWNsYXJlIHRvIHByb3ZpZGUgYW4gb3ZlcnJpZGUgdG8gdGhlIGJyb3dzZXIgZGVmYXVsdFxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLCAwKTtcbn1cbiIsIkBtaXhpbiBjYXJldC1kb3duIHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0LXVwIHtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0LXJpZ2h0IHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZDtcbn1cblxuQG1peGluIGNhcmV0LWxlZnQge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogJGNhcmV0LXdpZHRoIHNvbGlkO1xuICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldCgkZGlyZWN0aW9uOiBkb3duKSB7XG4gIEBpZiAkZW5hYmxlLWNhcmV0IHtcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tbGVmdDogJGNhcmV0LXNwYWNpbmc7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogJGNhcmV0LXZlcnRpY2FsLWFsaWduO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIEBpZiAkZGlyZWN0aW9uID09IGRvd24ge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1kb3duO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHVwIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtdXA7XG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gcmlnaHQge1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1yaWdodDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGRpcmVjdGlvbiA9PSBsZWZ0IHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRjYXJldC1zcGFjaW5nO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogJGNhcmV0LXZlcnRpY2FsLWFsaWduO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBAaW5jbHVkZSBjYXJldC1sZWZ0O1xuICAgICAgfVxuICAgIH1cblxuICAgICY6ZW1wdHk6OmFmdGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUGFnaW5hdGlvblxuXG5AbWl4aW4gcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgLnBhZ2UtbGluayB7XG4gICAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICB9XG5cbiAgLnBhZ2UtaXRlbSB7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIExpc3RzXG5cbi8vIFVuc3R5bGVkIGtlZXBzIGxpc3QgaXRlbXMgYmxvY2sgbGV2ZWwsIGp1c3QgcmVtb3ZlcyBkZWZhdWx0IGJyb3dzZXIgcGFkZGluZyBhbmQgbGlzdC1zdHlsZVxuQG1peGluIGxpc3QtdW5zdHlsZWQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4iLCIvLyBMaXN0IEdyb3Vwc1xuXG5AbWl4aW4gbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGNvbG9yKSB7XG4gIC5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuXG4gICAgJi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG4gICAgICB9XG5cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEhvcml6b250YWwgZGl2aWRlcnNcbi8vXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGhyKSB3aXRoaW4gZHJvcGRvd25zIGFuZCBuYXYgbGlzdHNcblxuQG1peGluIG5hdi1kaXZpZGVyKCRjb2xvcjogJG5hdi1kaXZpZGVyLWNvbG9yLCAkbWFyZ2luLXk6ICRuYXYtZGl2aWRlci1tYXJnaW4teSkge1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogJG1hcmdpbi15IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3I7XG59XG4iLCIvLyBGb3JtIGNvbnRyb2wgZm9jdXMgc3RhdGVcbi8vXG4vLyBHZW5lcmF0ZSBhIGN1c3RvbWl6ZWQgZm9jdXMgc3RhdGUgYW5kIGZvciBhbnkgaW5wdXQgd2l0aCB0aGUgc3BlY2lmaWVkIGNvbG9yLFxuLy8gd2hpY2ggZGVmYXVsdHMgdG8gdGhlIGAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yYCB2YXJpYWJsZS5cbi8vXG4vLyBXZSBoaWdobHkgZW5jb3VyYWdlIHlvdSB0byBub3QgY3VzdG9taXplIHRoZSBkZWZhdWx0IHZhbHVlLCBidXQgaW5zdGVhZCB1c2Vcbi8vIHRoaXMgdG8gdHdlYWsgY29sb3JzIG9uIGFuIGFzLW5lZWRlZCBiYXNpcy4gVGhpcyBhZXN0aGV0aWMgY2hhbmdlIGlzIGJhc2VkIG9uXG4vLyBXZWJLaXQncyBkZWZhdWx0IHN0eWxlcywgYnV0IGFwcGxpY2FibGUgdG8gYSB3aWRlciByYW5nZSBvZiBicm93c2Vycy4gSXRzXG4vLyB1c2FiaWxpdHkgYW5kIGFjY2Vzc2liaWxpdHkgc2hvdWxkIGJlIHRha2VuIGludG8gYWNjb3VudCB3aXRoIGFueSBjaGFuZ2UuXG4vL1xuLy8gRXhhbXBsZSB1c2FnZTogY2hhbmdlIHRoZSBkZWZhdWx0IGJsdWUgYm9yZGVyIGFuZCBzaGFkb3cgdG8gd2hpdGUgZm9yIGJldHRlclxuLy8gY29udHJhc3QgYWdhaW5zdCBhIGRhcmsgZ3JheSBiYWNrZ3JvdW5kLlxuQG1peGluIGZvcm0tY29udHJvbC1mb2N1cygpIHtcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRpbnB1dC1mb2N1cy1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZm9jdXMtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWJveC1zaGFkb3csICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuICB9XG59XG5cblxuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsICRjb2xvciwgJGljb24pIHtcbiAgLiN7JHN0YXRlfS1mZWVkYmFjayB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAkZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1mZWVkYmFjay1mb250LXNpemUpO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgei1pbmRleDogNTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1heC13aWR0aDogMTAwJTsgLy8gQ29udGFpbiB0byBwYXJlbnQgd2hlbiBwb3NzaWJsZVxuICAgIHBhZGRpbmc6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14O1xuICAgIG1hcmdpbi10b3A6IC4xcmVtO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLCAkZm9ybS1mZWVkYmFjay10b29sdGlwLW9wYWNpdHkpO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogJGljb247XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciByaWdodCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICB9XG5cbiAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLXNlbGVjdCB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctcmlnaHQ7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjdXN0b20tc2VsZWN0LWJhY2tncm91bmQsICRpY29uICRjdXN0b20tc2VsZWN0LWJnIG5vLXJlcGVhdCAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uIC8gJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1zaXplO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgIH1cblxuICAgICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4gIC5mb3JtLWNvbnRyb2wtZmlsZSB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICB9XG5cbiAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0IHtcbiAgICAud2FzLXZhbGlkYXRlZCAmOiN7JHN0YXRlfSxcbiAgICAmLmlzLSN7JHN0YXRlfSB7XG4gICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuXG4gICAgICAmOmNoZWNrZWQge1xuICAgICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLCAxMCUpO1xuICAgICAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKGxpZ2h0ZW4oJGNvbG9yLCAxMCUpKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAuMjUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmNoZWNrZWQpIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gY3VzdG9tIGZpbGVcbiAgLmN1c3RvbS1maWxlLWlucHV0IHtcbiAgICAud2FzLXZhbGlkYXRlZCAmOiN7JHN0YXRlfSxcbiAgICAmLmlzLSN7JHN0YXRlfSB7XG4gICAgICB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgfVxuXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gVGFibGVzXG5cbkBtaXhpbiB0YWJsZS1yb3ctdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkYm9yZGVyOiBudWxsKSB7XG4gIC8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XG4gIC8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXG4gIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICYsXG4gICAgPiB0aCxcbiAgICA+IHRkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cblxuICAgIEBpZiAkYm9yZGVyICE9IG51bGwge1xuICAgICAgdGgsXG4gICAgICB0ZCxcbiAgICAgIHRoZWFkIHRoLFxuICAgICAgdGJvZHkgKyB0Ym9keSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZXMgZm9yIGAudGFibGUtaG92ZXJgXG4gIC8vIE5vdGU6IHRoaXMgaXMgbm90IGF2YWlsYWJsZSBmb3IgY2VsbHMgb3Igcm93cyB3aXRoaW4gYHRoZWFkYCBvciBgdGZvb3RgLlxuICAudGFibGUtaG92ZXIge1xuICAgICRob3Zlci1iYWNrZ3JvdW5kOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcblxuICAgIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItYmFja2dyb3VuZDtcblxuICAgICAgICA+IHRkLFxuICAgICAgICA+IHRoIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG5cbi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcblxuQG1peGluIGJnLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG4gIGEjeyRwYXJlbnR9LFxuICBidXR0b24jeyRwYXJlbnR9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBiZy1ncmFkaWVudC12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3IgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgbWl4KCRib2R5LWJnLCAkY29sb3IsIDE1JSksICRjb2xvcikgcmVwZWF0LXggIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktYmxhY2tsaXN0XG4vLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXG5cbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzLCAkZmFsbGJhY2stYm9yZGVyLXJhZGl1czogZmFsc2UpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgfVxuICBAZWxzZSBpZiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cyAhPSBmYWxzZSB7XG4gICAgYm9yZGVyLXJhZGl1czogJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICB9XG59XG4iLCJAbWl4aW4gYm94LXNoYWRvdygkc2hhZG93Li4uKSB7XG4gIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICRyZXN1bHQ6ICgpO1xuXG4gICAgQGlmIChsZW5ndGgoJHNoYWRvdykgPT0gMSkge1xuICAgICAgLy8gV2UgY2FuIHBhc3MgYEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7YFxuICAgICAgJHJlc3VsdDogJHNoYWRvdztcbiAgICB9IEBlbHNlIHtcbiAgICAgIC8vIEZpbHRlciB0byBhdm9pZCBpbnZhbGlkIHByb3BlcnRpZXMgZm9yIGV4YW1wbGUgYGJveC1zaGFkb3c6IG5vbmUsIDFweCAxcHggYmxhY2s7YFxuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCBsZW5ndGgoJHNoYWRvdykge1xuICAgICAgICBAaWYgbnRoKCRzaGFkb3csICRpKSAhPSBcIm5vbmVcIiB7XG4gICAgICAgICAgJHJlc3VsdDogYXBwZW5kKCRyZXN1bHQsIG50aCgkc2hhZG93LCAkaSksIFwiY29tbWFcIik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQGlmIChsZW5ndGgoJHJlc3VsdCkgPiAwKSB7XG4gICAgICBib3gtc2hhZG93OiAkcmVzdWx0O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gR3JhZGllbnRzXG5cbkBtaXhpbiBncmFkaWVudC1iZygkY29sb3IpIHtcbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3IgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgbWl4KCRib2R5LWJnLCAkY29sb3IsIDE1JSksICRjb2xvcikgcmVwZWF0LXg7XG4gIH0gQGVsc2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLyBIb3Jpem9udGFsIGdyYWRpZW50LCBmcm9tIGxlZnQgdG8gcmlnaHRcbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuQG1peGluIGdyYWRpZW50LXgoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuXG4vLyBWZXJ0aWNhbCBncmFkaWVudCwgZnJvbSB0b3AgdG8gYm90dG9tXG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC15KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5cbkBtaXhpbiBncmFkaWVudC1kaXJlY3Rpb25hbCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkZGVnOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuQG1peGluIGdyYWRpZW50LXgtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXktdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtcmFkaWFsKCRpbm5lci1jb2xvcjogJGdyYXktNzAwLCAkb3V0ZXItY29sb3I6ICRncmF5LTgwMCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtc3RyaXBlZCgkY29sb3I6IHJnYmEoJHdoaXRlLCAuMTUpLCAkYW5nbGU6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWJsYWNrbGlzdFxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcbiAgQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAgIEBpZiBsZW5ndGgoJHRyYW5zaXRpb24pID09IDAge1xuICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tYmFzZTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkZW5hYmxlLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tbWVkaWEtcXVlcnkge1xuICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiQG1peGluIGNsZWFyZml4KCkge1xuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuIiwiLy8gRnJhbWV3b3JrIGdyaWQgZ2VuZXJhdGlvblxuLy9cbi8vIFVzZWQgb25seSBieSBCb290c3RyYXAgdG8gZ2VuZXJhdGUgdGhlIGNvcnJlY3QgbnVtYmVyIG9mIGdyaWQgY2xhc3NlcyBnaXZlblxuLy8gYW55IHZhbHVlIG9mIGAkZ3JpZC1jb2x1bW5zYC5cblxuQG1peGluIG1ha2UtZ3JpZC1jb2x1bW5zKCRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgLy8gQ29tbW9uIHByb3BlcnRpZXMgZm9yIGFsbCBicmVha3BvaW50c1xuICAlZ3JpZC1jb2x1bW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyIC8gMjtcbiAgICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXIgLyAyO1xuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuXG4gICAgLy8gQWxsb3cgY29sdW1ucyB0byBzdHJldGNoIGZ1bGwgd2lkdGggYmVsb3cgdGhlaXIgYnJlYWtwb2ludHNcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgIC5jb2wjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICBAZXh0ZW5kICVncmlkLWNvbHVtbjtcbiAgICAgIH1cbiAgICB9XG4gICAgLmNvbCN7JGluZml4fSxcbiAgICAuY29sI3skaW5maXh9LWF1dG8ge1xuICAgICAgQGV4dGVuZCAlZ3JpZC1jb2x1bW47XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICAvLyBQcm92aWRlIGJhc2ljIGAuY29sLXticH1gIGNsYXNzZXMgZm9yIGVxdWFsLXdpZHRoIGZsZXhib3ggY29sdW1uc1xuICAgICAgLmNvbCN7JGluZml4fSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIFJlc2V0IGVhcmxpZXIgZ3JpZCB0aWVyc1xuICAgICAgfVxuXG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2woJGksICRjb2x1bW5zKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAub3JkZXIjeyRpbmZpeH0tZmlyc3QgeyBvcmRlcjogLTE7IH1cblxuICAgICAgLm9yZGVyI3skaW5maXh9LWxhc3QgeyBvcmRlcjogJGNvbHVtbnMgKyAxOyB9XG5cbiAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAub3JkZXIjeyRpbmZpeH0tI3skaX0geyBvcmRlcjogJGk7IH1cbiAgICAgIH1cblxuICAgICAgLy8gYCRjb2x1bW5zIC0gMWAgYmVjYXVzZSBvZmZzZXR0aW5nIGJ5IHRoZSB3aWR0aCBvZiBhbiBlbnRpcmUgcm93IGlzbid0IHBvc3NpYmxlXG4gICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgQGlmIG5vdCAoJGluZml4ID09IFwiXCIgYW5kICRpID09IDApIHsgLy8gQXZvaWQgZW1pdHRpbmcgdXNlbGVzcyAub2Zmc2V0LTBcbiAgICAgICAgICAub2Zmc2V0I3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLW9mZnNldCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8vIEdyaWQgc3lzdGVtXG4vL1xuLy8gR2VuZXJhdGUgc2VtYW50aWMgZ3JpZCBjb2x1bW5zIHdpdGggdGhlc2UgbWl4aW5zLlxuXG5AbWl4aW4gbWFrZS1jb250YWluZXIoJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyIC8gMjtcbiAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyIC8gMjtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuXG4vLyBGb3IgZWFjaCBicmVha3BvaW50LCBkZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgdGhlIGNvbnRhaW5lciBpbiBhIG1lZGlhIHF1ZXJ5XG5AbWl4aW4gbWFrZS1jb250YWluZXItbWF4LXdpZHRocygkbWF4LXdpZHRoczogJGNvbnRhaW5lci1tYXgtd2lkdGhzLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkbWF4LXdpZHRocyB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBtYXgtd2lkdGg6ICRjb250YWluZXItbWF4LXdpZHRoO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWFrZS1yb3coJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAtJGd1dHRlciAvIDI7XG4gIG1hcmdpbi1sZWZ0OiAtJGd1dHRlciAvIDI7XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1yZWFkeSgkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBiZWNvbWluZyB0b28gbmFycm93IHdoZW4gYXQgc21hbGxlciBncmlkIHRpZXJzIGJ5XG4gIC8vIGFsd2F5cyBzZXR0aW5nIGB3aWR0aDogMTAwJTtgLiBUaGlzIHdvcmtzIGJlY2F1c2Ugd2UgdXNlIGBmbGV4YCB2YWx1ZXNcbiAgLy8gbGF0ZXIgb24gdG8gb3ZlcnJpZGUgdGhpcyBpbml0aWFsIHdpZHRoLlxuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogJGd1dHRlciAvIDI7XG4gIHBhZGRpbmctbGVmdDogJGd1dHRlciAvIDI7XG59XG5cbkBtaXhpbiBtYWtlLWNvbCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgZmxleDogMCAwIHBlcmNlbnRhZ2UoJHNpemUgLyAkY29sdW1ucyk7XG4gIC8vIEFkZCBhIGBtYXgtd2lkdGhgIHRvIGVuc3VyZSBjb250ZW50IHdpdGhpbiBlYWNoIGNvbHVtbiBkb2VzIG5vdCBibG93IG91dFxuICAvLyB0aGUgd2lkdGggb2YgdGhlIGNvbHVtbi4gQXBwbGllcyB0byBJRTEwKyBhbmQgRmlyZWZveC4gQ2hyb21lIGFuZCBTYWZhcmlcbiAgLy8gZG8gbm90IGFwcGVhciB0byByZXF1aXJlIHRoaXMuXG4gIG1heC13aWR0aDogcGVyY2VudGFnZSgkc2l6ZSAvICRjb2x1bW5zKTtcbn1cblxuQG1peGluIG1ha2UtY29sLW9mZnNldCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgJG51bTogJHNpemUgLyAkY29sdW1ucztcbiAgbWFyZ2luLWxlZnQ6IGlmKCRudW0gPT0gMCwgMCwgcGVyY2VudGFnZSgkbnVtKSk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuQG1peGluIGZsb2F0LWxlZnQge1xuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYGZsb2F0LWxlZnRgIG1peGluXCIsIFwidjQuMy4wXCIsIFwidjVcIik7XG59XG5AbWl4aW4gZmxvYXQtcmlnaHQge1xuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBmbG9hdC1yaWdodGAgbWl4aW5cIiwgXCJ2NC4zLjBcIiwgXCJ2NVwiKTtcbn1cbkBtaXhpbiBmbG9hdC1ub25lIHtcbiAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBmbG9hdC1ub25lYCBtaXhpblwiLCBcInY0LjMuMFwiLCBcInY1XCIpO1xufVxuIiwiLy8gTWl4aW5zXG4vL1xuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFJUTC9MVFJcblxuQG1peGluIGx0ci1vbmx5KCkge1xuICBAaWYgJHJ0bC1zdXBwb3J0IHtcbiAgICBodG1sOm5vdChbZGlyPXJ0bF0pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIHJ0bC1vbmx5KCkge1xuICBAaWYgJHJ0bC1zdXBwb3J0IHtcbiAgICBbZGlyPXJ0bF0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBsdHItc3R5bGUoKSB7XG4gIEBpZiAkcnRsLXN1cHBvcnQge1xuICAgIGh0bWw6bm90KFtkaXI9cnRsXSkgJiB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBydGwtc3R5bGUoKSB7XG4gIEBpZiAkcnRsLXN1cHBvcnQge1xuICAgIFtkaXI9cnRsXSAmIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEtleWZyYW1lc1xuXG5AbWl4aW4ga2V5ZnJhbWVzKCRuYW1lKSB7XG4gIEAtd2Via2l0LWtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbiAgQC1tb3ota2V5ZnJhbWVzICN7JG5hbWV9IHtcbiAgICBAY29udGVudDtcbiAgfVxuICBAa2V5ZnJhbWVzICN7JG5hbWV9IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIENhcmV0c1xuXG5AbWl4aW4gY2FyZXQtZG93biB7XG4gIG1hcmdpbi10b3A6IC0xICogKCRjYXJldC13aWR0aCAvIDEuNSk7XG4gIHdpZHRoOiAkY2FyZXQtd2lkdGg7XG4gIGhlaWdodDogJGNhcmV0LXdpZHRoO1xuICBib3JkZXI6IDFweCBzb2xpZDtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLWxlZnQ6IDA7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbn1cblxuQG1peGluIGNhcmV0LXVwIHtcbiAgbWFyZ2luLXRvcDogLTA7XG4gIHdpZHRoOiAkY2FyZXQtd2lkdGg7XG4gIGhlaWdodDogJGNhcmV0LXdpZHRoO1xuICBib3JkZXI6IDFweCBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYm9yZGVyLWxlZnQ6IDA7XG4gIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG59XG5cbkBtaXhpbiBjYXJldC1yaWdodCB7XG4gIG1hcmdpbi10b3A6IC0xICogKCRjYXJldC13aWR0aCAvIDIpO1xuICB3aWR0aDogJGNhcmV0LXdpZHRoO1xuICBoZWlnaHQ6ICRjYXJldC13aWR0aDtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1sZWZ0OiAwO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xufVxuXG5AbWl4aW4gY2FyZXQtbGVmdCB7XG4gIG1hcmdpbi10b3A6IC0xICogKCRjYXJldC13aWR0aCAvIDIpO1xuICB3aWR0aDogJGNhcmV0LXdpZHRoO1xuICBoZWlnaHQ6ICRjYXJldC13aWR0aDtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFJlc3BvbnNpemUgbG9vcHNcblxuQG1peGluIHJlc3BvbnNpdmUtbG9vcC1iZWZvcmUoJHBhcmVudCwgJHN0YXJ0LWJyZWFrcG9pbnQ6IHNtKSB7XG4gICRjdXItYnJlYWtwb2ludDogJHN0YXJ0LWJyZWFrcG9pbnQ7XG5cbiAgQHdoaWxlICRjdXItYnJlYWtwb2ludCB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRjdXItYnJlYWtwb2ludCk7XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogKGJyZWFrcG9pbnQtbWluKCRjdXItYnJlYWtwb2ludCkgLSAxKSkge1xuICAgICAgI3skcGFyZW50fSN7JGluZml4fSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cblxuICAgICRjdXItYnJlYWtwb2ludDogYnJlYWtwb2ludC1uZXh0KCRjdXItYnJlYWtwb2ludCk7XG4gIH1cbn1cblxuQG1peGluIHJlc3BvbnNpdmUtbG9vcC1hZnRlcigkcGFyZW50LCAkc3RhcnQtYnJlYWtwb2ludDogc20pIHtcbiAgJGN1ci1icmVha3BvaW50OiAkc3RhcnQtYnJlYWtwb2ludDtcblxuICBAd2hpbGUgJGN1ci1icmVha3BvaW50IHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGN1ci1icmVha3BvaW50KTtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiBicmVha3BvaW50LW1pbigkY3VyLWJyZWFrcG9pbnQpKSB7XG4gICAgICAjeyRwYXJlbnR9I3skaW5maXh9IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJGN1ci1icmVha3BvaW50OiBicmVha3BvaW50LW5leHQoJGN1ci1icmVha3BvaW50KTtcbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIENvbG9yc1xuXG4vLyBDb250cmFzdFxuQG1peGluIGNvbG9yLXlpcSgkY29sb3IpIHtcbiAgY29sb3I6IHlpcSgkY29sb3IpO1xufVxuXG5AbWl4aW4gYmctY29sb3ItdmFyaWFudCgkcGFyZW50LCAkY29sb3IsICRydGgtY29sb3I6ICMwMDApIHtcbiAgI3skcGFyZW50fSB7IGJhY2tncm91bmQtY29sb3I6ICRjb2xvciAhaW1wb3J0YW50OyB9XG4gIGEjeyRwYXJlbnR9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7IGJhY2tncm91bmQtY29sb3I6IHJnYmEtdG8taGV4KHJnYmEoJGNvbG9yLCAuOTUpLCAkYmFja2dyb3VuZDogJHJ0aC1jb2xvcikgIWltcG9ydGFudDsgfVxuICB9XG59XG5cbkBtaXhpbiBiZy12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJHJ0aC1jb2xvcjogIzAwMCkge1xuICBAaW5jbHVkZSBiZy1jb2xvci12YXJpYW50KCRwYXJlbnQsICRjb2xvcik7XG4gIEBpbmNsdWRlIGJnLWNvbG9yLXZhcmlhbnQoXCIjeyRwYXJlbnR9LWRhcmtcIiwgcmdiYS10by1oZXgocmdiYSgkY29sb3IsIC45KSwgJGJhY2tncm91bmQ6ICRydGgtY29sb3IpKTtcbiAgQGluY2x1ZGUgYmctY29sb3ItdmFyaWFudChcIiN7JHBhcmVudH0tZGFya2VyXCIsIHJnYmEtdG8taGV4KHJnYmEoJGNvbG9yLCAuODUpLCAkYmFja2dyb3VuZDogJHJ0aC1jb2xvcikpO1xufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEJ1dHRvbnNcblxuQG1peGluIGJ1dHRvbi12YXJpYW50KCRiYWNrZ3JvdW5kOiBudWxsLCAkYm9yZGVyOiBudWxsLCAkYWN0aXZlLWJhY2tncm91bmQ6IG51bGwsICRhY3RpdmUtYm9yZGVyOiBudWxsKSB7fVxuXG5AbWl4aW4gYXBwd29yay1idXR0b24tdmFyaWFudCgkcGFyZW50LCAkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsLCAkYm9yZGVyOiBudWxsKSB7XG4gICRidG4tY29sb3JzOiBnZXQtYnRuLWNvbG9ycygkYmFja2dyb3VuZCwgaWYoJGJvcmRlciwgJGJvcmRlciwgJGJhY2tncm91bmQpKTtcbiAgJGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgeWlxKCRiYWNrZ3JvdW5kKSk7XG5cbiAgI3skcGFyZW50fSB7XG4gICAgYm9yZGVyLWNvbG9yOiBtYXAtZ2V0KCRidG4tY29sb3JzLCBib3JkZXIpO1xuICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiBtYXAtZ2V0KCRidG4tY29sb3JzLCBib3JkZXIpO1xuICAgICAgYmFja2dyb3VuZDogbWFwLWdldCgkYnRuLWNvbG9ycywgYmctaG92ZXIpO1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgYm94LXNoYWRvdzogbWFwLWdldCgkYnRuLWNvbG9ycywgc2hhZG93KTtcbiAgICB9XG5cbiAgICAmLmRpc2FibGVkLFxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgYm9yZGVyLWNvbG9yOiBtYXAtZ2V0KCRidG4tY29sb3JzLCBib3JkZXIpICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gICN7JHBhcmVudH0gLmJhZGdlIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgY29sb3I6IHJnYmEtdG8taGV4KCRiYWNrZ3JvdW5kKTtcbiAgfVxuXG4gICN7JHBhcmVudH06YWN0aXZlLFxuICAjeyRwYXJlbnR9LmFjdGl2ZSxcbiAgLnNob3cgPiAjeyRwYXJlbnR9LmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYm9yZGVyLWNvbG9yOiBtYXAtZ2V0KCRidG4tY29sb3JzLCBib3JkZXIpO1xuICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJGJ0bi1jb2xvcnMsIGJnLWFjdGl2ZSk7XG5cbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC8vIEJ1dHRvbiBncm91cHNcbiAgLmJ0bi1ncm91cCAjeyRwYXJlbnR9LFxuICAuaW5wdXQtZ3JvdXAtcHJlcGVuZCAjeyRwYXJlbnR9LFxuICAuaW5wdXQtZ3JvdXAtYXBwZW5kICN7JHBhcmVudH0ge1xuICAgIGJvcmRlci1yaWdodDogJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggc29saWQgbWFwLWdldCgkYnRuLWNvbG9ycywgYmctYWN0aXZlKTtcbiAgICBib3JkZXItbGVmdDogJGlucHV0LWJ0bi1ib3JkZXItd2lkdGggc29saWQgbWFwLWdldCgkYnRuLWNvbG9ycywgYmctYWN0aXZlKTtcbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1tYXRlcmlhbC1idXR0b24tdmFyaWFudCgkcGFyZW50LCAkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsLCAkbWQtY29sb3I6ICRiYWNrZ3JvdW5kKSB7XG4gICRidG4tY29sb3JzOiBnZXQtbWF0ZXJpYWwtYnRuLWNvbG9ycygkYmFja2dyb3VuZCk7XG4gICRjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIHlpcSgkYmFja2dyb3VuZCkpO1xuXG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICAgIGJveC1zaGFkb3c6ICRidG4tYm94LXNoYWRvdztcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogbWFwLWdldCgkYnRuLWNvbG9ycywgYmctaG92ZXIpO1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBib3gtc2hhZG93OiAkYnRuLWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuICB9XG5cbiAgI3skcGFyZW50fSAuYmFkZ2Uge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICBjb2xvcjogcmdiYS10by1oZXgoJGJhY2tncm91bmQpO1xuICB9XG5cbiAgI3skcGFyZW50fSAud2F2ZXMtcmlwcGxlIHtcbiAgICBiYWNrZ3JvdW5kOiBpZigkY29sb3IgPT0gI2ZmZiwgcmdiYSgkY29sb3IsIC4zKSwgcmdiYSgkY29sb3IsIC4yKSk7XG4gIH1cblxuICAjeyRwYXJlbnR9OmFjdGl2ZSxcbiAgI3skcGFyZW50fS5hY3RpdmUsXG4gIC5zaG93ID4gI3skcGFyZW50fS5kcm9wZG93bi10b2dnbGUge1xuICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJGJ0bi1jb2xvcnMsIGJnLWFjdGl2ZSk7XG4gICAgYm94LXNoYWRvdzogJGJ0bi1hY3RpdmUtYm94LXNoYWRvdztcbiAgfVxuXG4gIC8vIEZsYXQgYnV0dG9uc1xuICAjeyRwYXJlbnR9Lm1kLWJ0bi1mbGF0IHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgY29sb3I6ICRtZC1jb2xvcjtcblxuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRtZC1jb2xvciwgLjEpO1xuICAgIH1cblxuICAgIC53YXZlcy1yaXBwbGUge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgkbWQtY29sb3IsIC4zKTtcbiAgICB9XG4gIH1cblxuICAjeyRwYXJlbnR9Lm1kLWJ0bi1mbGF0OmFjdGl2ZSxcbiAgI3skcGFyZW50fS5tZC1idG4tZmxhdC5hY3RpdmUsXG4gIC5zaG93ID4gI3skcGFyZW50fS5tZC1idG4tZmxhdC5kcm9wZG93bi10b2dnbGUge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoJG1kLWNvbG9yLCAuMTUpO1xuICB9XG5cbiAgLy8gRGlzYWJsZWRcblxuICAjeyRwYXJlbnR9LmRpc2FibGVkLFxuICAjeyRwYXJlbnR9OmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6ICRtYXRlcmlhbC1jb21wb25lbnQtc2hhZG93ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG5cbiAgI3skcGFyZW50fS5tZC1idG4tZmxhdC5kaXNhYmxlZCxcbiAgI3skcGFyZW50fS5tZC1idG4tZmxhdDpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBjb2xvcjogJGJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIE91dGxpbmUgYnV0dG9uc1xuXG5AbWl4aW4gYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkY29sb3I6IG51bGwsICRjb2xvci1ob3ZlcjogbnVsbCwgJGhvdmVyLWNvbG9yOiBudWxsKSB7fVxuXG5AbWl4aW4gYXBwd29yay1idXR0b24tb3V0bGluZS12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGhvdmVyLWNvbG9yOiBudWxsKSB7XG4gICRidG4tY29sb3JzOiBnZXQtYnRuLWNvbG9ycygkY29sb3IsICRjb2xvcik7XG4gICRjb2xvci1ob3ZlcjogaWYoJGhvdmVyLWNvbG9yLCAkaG92ZXItY29sb3IsIHlpcSgkY29sb3IpKTtcblxuICAjeyRwYXJlbnR9IHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgQGluY2x1ZGUgaG92ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiBtYXAtZ2V0KCRidG4tY29sb3JzLCBib3JkZXIpO1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgYm94LXNoYWRvdzogbWFwLWdldCgkYnRuLWNvbG9ycywgc2hhZG93KTtcbiAgICB9XG5cbiAgICAmLmRpc2FibGVkLFxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgI3skcGFyZW50fTphY3RpdmUsXG4gICN7JHBhcmVudH0uYWN0aXZlLFxuICAuc2hvdyA+ICN7JHBhcmVudH0uZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBib3JkZXItY29sb3I6IG1hcC1nZXQoJGJ0bi1jb2xvcnMsIGJvcmRlcik7XG4gICAgYmFja2dyb3VuZDogbWFwLWdldCgkYnRuLWNvbG9ycywgYmctaG92ZXIpO1xuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG5cbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cbiAgfVxuXG4gICN7JHBhcmVudH0gLmJhZGdlIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cblxuICAjeyRwYXJlbnR9OmhvdmVyIC5iYWRnZSxcbiAgI3skcGFyZW50fTpmb2N1cyAuYmFkZ2UsXG4gICN7JHBhcmVudH06YWN0aXZlIC5iYWRnZSxcbiAgI3skcGFyZW50fS5hY3RpdmUgLmJhZGdlLFxuICAuc2hvdyA+ICN7JHBhcmVudH0uZHJvcGRvd24tdG9nZ2xlIC5iYWRnZSB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yLWhvdmVyO1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgIGNvbG9yOiBpZihhbHBoYSgkY29sb3IpPT0xLCAkY29sb3IsIHlpcSgkY29sb3ItaG92ZXIpKTtcbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1tYXRlcmlhbC1idXR0b24tb3V0bGluZS12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGhvdmVyLWNvbG9yOiBudWxsKSB7XG4gICRidG4tY29sb3JzOiBnZXQtbWF0ZXJpYWwtYnRuLWNvbG9ycygkY29sb3IpO1xuICAkY29sb3ItaG92ZXI6IGlmKCRob3Zlci1jb2xvciwgJGhvdmVyLWNvbG9yLCB5aXEoJGNvbG9yKSk7XG5cbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICRjb2xvciBpbnNldDtcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgICAgYm94LXNoYWRvdzogJGJ0bi1mb2N1cy1ib3gtc2hhZG93O1xuICAgICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICB9XG5cbiAgICAmLmRpc2FibGVkLFxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCAkY29sb3IgaW5zZXQgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAjeyRwYXJlbnR9OmFjdGl2ZSxcbiAgI3skcGFyZW50fS5hY3RpdmUsXG4gIC5zaG93ID4gI3skcGFyZW50fS5kcm9wZG93bi10b2dnbGUge1xuICAgIGJhY2tncm91bmQ6IG1hcC1nZXQoJGJ0bi1jb2xvcnMsIGJnLWhvdmVyKTtcbiAgICBib3gtc2hhZG93OiAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93O1xuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gIH1cblxuICAjeyRwYXJlbnR9IC53YXZlcy1yaXBwbGUge1xuICAgIGJhY2tncm91bmQ6IGlmKCRjb2xvci1ob3Zlcj09I2ZmZiwgcmdiYSgkY29sb3ItaG92ZXIsIC4zKSwgcmdiYSgkY29sb3ItaG92ZXIsIC4yKSk7XG4gIH1cblxuICAjeyRwYXJlbnR9IC5iYWRnZSB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG5cbiAgI3skcGFyZW50fTpob3ZlciAuYmFkZ2UsXG4gICN7JHBhcmVudH06Zm9jdXMgLmJhZGdlLFxuICAjeyRwYXJlbnR9OmFjdGl2ZSAuYmFkZ2UsXG4gICN7JHBhcmVudH0uYWN0aXZlIC5iYWRnZSxcbiAgLnNob3cgPiAjeyRwYXJlbnR9LmRyb3Bkb3duLXRvZ2dsZSAuYmFkZ2Uge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvci1ob3ZlcjtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICBjb2xvcjogaWYoYWxwaGEoJGNvbG9yKT09MSwgJGNvbG9yLCB5aXEoJGNvbG9yLWhvdmVyKSk7XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBCYWRnZXNcblxuQG1peGluIGJhZGdlLXZhcmlhbnQoJGJnKSB7fVxuXG5AbWl4aW4gYXBwd29yay1iYWRnZS12YXJpYW50KCRwYXJlbnQsICRiZywgJGNvbG9yOiBudWxsKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZztcbiAgICBjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIHlpcSgkYmcpKTtcbiAgfVxuXG4gICN7JHBhcmVudH1baHJlZl0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGlmKGFscGhhKCRiZykgPT0gMSwgcmdiYS10by1oZXgocmdiYSgkYmcsIC45NSksICMwMDApLCByZ2JhKCRiZywgYWxwaGEoJGJnKSArIC4wMykpO1xuICAgICAgY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCB5aXEoJGJnKSk7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLmJ0biAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kOiAkYmcgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6ICRiZyAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgeWlxKCRiZykpICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1peGluIGFwcHdvcmstYmFkZ2Utb3V0bGluZS12YXJpYW50KCRwYXJlbnQsICRiZywgJGNvbG9yOiAkYmcpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICRiZyBpbnNldDtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgI3skcGFyZW50fVtocmVmXSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAuYnRuICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICRiZyBpbnNldCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIERyb3Bkb3duc1xuXG5AbWl4aW4gYXBwd29yay1kcm9wZG93bi12YXJpYW50KCRwYXJlbnQsICRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwpIHtcbiAgI3skcGFyZW50fSAuZHJvcGRvd24taXRlbTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gICN7JHBhcmVudH0gLmRyb3Bkb3duLWl0ZW06bm90KC5kaXNhYmxlZCk6YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIHlpcSgkYmFja2dyb3VuZCkpO1xuICB9XG5cbiAgI3skcGFyZW50fS5kcm9wZG93bi1tZW51ID4gbGk6bm90KC5kaXNhYmxlZCkgPiBhOm5vdCguZHJvcGRvd24taXRlbSk6YWN0aXZlLFxuICAjeyRwYXJlbnR9LmRyb3Bkb3duLW1lbnUgPiBsaS5hY3RpdmU6bm90KC5kaXNhYmxlZCkgPiBhOm5vdCguZHJvcGRvd24taXRlbSkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgeWlxKCRiYWNrZ3JvdW5kKSk7XG4gIH1cbn1cblxuQG1peGluIGFwcHdvcmstZHJvcGRvd24tdGhlbWUoJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICBAaW5jbHVkZSBhcHB3b3JrLWRyb3Bkb3duLXZhcmlhbnQoJycsICRiYWNrZ3JvdW5kLCAkY29sb3IpO1xufVxuXG5AbWl4aW4gYXBwd29yay1tYXRlcmlhbC1kcm9wZG93bi12YXJpYW50KCRwYXJlbnQsICRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwpIHtcbiAgI3skcGFyZW50fSAuZHJvcGRvd24taXRlbTpub3QoLmRpc2FibGVkKS5hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgeWlxKCRiYWNrZ3JvdW5kKSk7XG4gIH1cblxuICAjeyRwYXJlbnR9LmRyb3Bkb3duLW1lbnUgPiBsaS5hY3RpdmU6bm90KC5kaXNhYmxlZCkgPiBhOm5vdCguZHJvcGRvd24taXRlbSkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgeWlxKCRiYWNrZ3JvdW5kKSk7XG4gIH1cbn1cblxuQG1peGluIGFwcHdvcmstbWF0ZXJpYWwtZHJvcGRvd24tdGhlbWUoJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICBAaW5jbHVkZSBhcHB3b3JrLW1hdGVyaWFsLWRyb3Bkb3duLXZhcmlhbnQoJycsICRiYWNrZ3JvdW5kLCAkY29sb3IpO1xufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIE5hdnNcblxuQG1peGluIGFwcHdvcmstbmF2LXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0KSB7XG4gICA+IC5uYXYgLm5hdi1saW5rLFxuICAmLm5hdiAubmF2LWxpbmsge1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXkgJHBhZGRpbmcteDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1uYXYtdmFyaWFudCgkcGFyZW50LCAkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gICRwaWxscy1zZWxlY3RvcjogaWYoJHBhcmVudCA9PSAnJywgJy5uYXYtcGlsbHMnLCAnI3skcGFyZW50fS5uYXYtcGlsbHMsICN7JHBhcmVudH0gPiAubmF2LXBpbGxzJyk7XG5cbiAgI3skcGlsbHMtc2VsZWN0b3J9IC5uYXYtbGluay5hY3RpdmUge1xuICAgIEBpbmNsdWRlIHBsYWluLWhvdmVyLWZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCB5aXEoJGJhY2tncm91bmQpKTtcbiAgICB9XG4gIH1cblxuICAjeyRwYXJlbnR9LnRhYnMtYWx0Lm5hdi10YWJzIC5uYXYtbGluay5hY3RpdmUsXG4gICN7JHBhcmVudH0udGFicy1hbHQgPiAubmF2LXRhYnMgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgQGluY2x1ZGUgcGxhaW4taG92ZXItZm9jdXMge1xuICAgICAgYm94LXNoYWRvdzogMCAtMnB4IDAgJGJhY2tncm91bmQgaW5zZXQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBhcHB3b3JrLW5hdi10aGVtZSgkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gIEBpbmNsdWRlIGFwcHdvcmstbmF2LXZhcmlhbnQoJycsICRiYWNrZ3JvdW5kLCAkY29sb3IpO1xufVxuXG5AbWl4aW4gYXBwd29yay1tYXRlcmlhbC1uYXYtdmFyaWFudCgkcGFyZW50LCAkY29sb3IsICRsaW5rLWNvbG9yOiBudWxsKSB7XG4gICR0YWJzLXNlbGVjdG9yOiBpZigkcGFyZW50ID09ICcnLCAnLm5hdi10YWJzJywgJyN7JHBhcmVudH0ubmF2LXRhYnMnKTtcbiAgJHBpbGxzLXNlbGVjdG9yOiBpZigkcGFyZW50ID09ICcnLCAnLm5hdi1waWxscycsICcjeyRwYXJlbnR9Lm5hdi1waWxscywgI3skcGFyZW50fSA+IC5uYXYtcGlsbHMnKTtcblxuICAjeyR0YWJzLXNlbGVjdG9yfSAubmF2LWxpbmsge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkY29sb3IsICRjb2xvcik7XG4gIH1cblxuICAjeyRwaWxscy1zZWxlY3Rvcn0gLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgQGluY2x1ZGUgcGxhaW4taG92ZXItZm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgY29sb3I6IGlmKCRsaW5rLWNvbG9yLCAkbGluay1jb2xvciwgeWlxKCRjb2xvcikpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1tYXRlcmlhbC1uYXYtdGhlbWUoJGNvbG9yLCAkbGluay1jb2xvcjogbnVsbCkge1xuICBAaW5jbHVkZSBhcHB3b3JrLW1hdGVyaWFsLW5hdi12YXJpYW50KCcnLCAkY29sb3IsICRsaW5rLWNvbG9yKTtcbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBQYWdpbmF0aW9uXG5cbkBtaXhpbiBhcHB3b3JrLXBhZ2luYXRpb24tdmFyaWFudCgkcGFyZW50LCAkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gICN7JHBhcmVudH0gLnBhZ2UtaXRlbS5hY3RpdmUgLnBhZ2UtbGluayxcbiAgI3skcGFyZW50fS5wYWdpbmF0aW9uIGxpLmFjdGl2ZSA+IGE6bm90KC5wYWdlLWxpbmspIHtcbiAgICBAaW5jbHVkZSBwbGFpbi1ob3Zlci1mb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICBjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIHlpcSgkYmFja2dyb3VuZCkpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1wYWdpbmF0aW9uLXRoZW1lKCRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwpIHtcbiAgQGluY2x1ZGUgYXBwd29yay1wYWdpbmF0aW9uLXZhcmlhbnQoJycsICRiYWNrZ3JvdW5kLCAkY29sb3IpO1xufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFByb2dyZXNzIGJhcnNcblxuQG1peGluIGFwcHdvcmstcHJvZ3Jlc3MtYmFyLXRoZW1lKCRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwpIHtcbiAgLnByb2dyZXNzLWJhciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCB5aXEoJGJhY2tncm91bmQpKTtcbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIExpc3QgZ3JvdXBzXG5cbkBtaXhpbiBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkc3RhdGU6IG51bGwsICRiYWNrZ3JvdW5kOiBudWxsLCAkY29sb3I6IG51bGwpIHt9XG5cbkBtaXhpbiBhcHB3b3JrLWxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCRwYXJlbnQsICRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwpIHtcbiAgJGJnOiByZ2JhLXRvLWhleChyZ2JhKCRiYWNrZ3JvdW5kLCAuMSksICNmZmYpO1xuICAkY29sb3I6IHlpcSgkYmcpO1xuICAkaG92ZXItYmc6IHJnYmEtdG8taGV4KHJnYmEoJGJnLCAuOTkpLCAjMDAwKTtcblxuICAjeyRwYXJlbnR9IHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwwLDAsLjA3KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmc7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gIGEjeyRwYXJlbnR9LFxuICBidXR0b24jeyRwYXJlbnR9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWJnO1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICB9XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICBjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIHlpcSgkYmFja2dyb3VuZCkpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1saXN0LWdyb3VwLXRoZW1lKCRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwpIHtcbiAgQGluY2x1ZGUgYXBwd29yay1saXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgnLmxpc3QtZ3JvdXAtaXRlbS1wcmltYXJ5JywgJGJhY2tncm91bmQpO1xuXG4gIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcbiAgICBAaW5jbHVkZSBwbGFpbi1ob3Zlci1mb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICBjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIHlpcSgkYmFja2dyb3VuZCkpO1xuICAgIH1cbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEFsZXJ0c1xuXG5AbWl4aW4gYWxlcnQtdmFyaWFudCgkYmFja2dyb3VuZDogbnVsbCwgJGJvcmRlcjogbnVsbCwgJGNvbG9yOiBudWxsKSB7fVxuXG5AbWl4aW4gYXBwd29yay1hbGVydC12YXJpYW50KCRwYXJlbnQsICRiYWNrZ3JvdW5kKSB7XG4gICRiYWNrZ3JvdW5kOiByZ2JhLXRvLWhleChyZ2JhKCRiYWNrZ3JvdW5kLCAuMTUpLCAjZmZmKTtcbiAgJGJvcmRlcjogcmdiYS10by1oZXgocmdiYSgkYmFja2dyb3VuZCwgLjk0KSwgIzAwMCk7XG4gICRjb2xvcjogeWlxKCRiYWNrZ3JvdW5kKTtcblxuICAjeyRwYXJlbnR9IHtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRjb2xvcjtcblxuICAgIGhyIHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRib3JkZXI7XG4gICAgfVxuXG4gICAgLmFsZXJ0LWxpbmsge1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGFwcHdvcmstYWxlcnQtZGFyay12YXJpYW50KCRwYXJlbnQsICRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwpIHtcbiAgJGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgeWlxKCRiYWNrZ3JvdW5kKSk7XG5cbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRjb2xvcjtcblxuICAgIGhyIHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHJnYmEoeWlxKCRiYWNrZ3JvdW5kKSwuMik7XG4gICAgfVxuXG4gICAgLmNsb3NlLFxuICAgIC5hbGVydC1saW5rIHtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogVG9vbHRpcHNcblxuQG1peGluIGFwcHdvcmstdG9vbHRpcC12YXJpYW50KCRwYXJlbnQsICRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgLnRvb2x0aXAtaW5uZXIge1xuICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gICAgICBjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIHlpcSgkYmFja2dyb3VuZCkpO1xuICAgIH1cblxuICAgICYuYnMtdG9vbHRpcC10b3AgLmFycm93OjpiZWZvcmUsICYuYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1cInRvcFwiXSAuYXJyb3c6OmJlZm9yZSB7IGJvcmRlci10b3AtY29sb3I6ICRiYWNrZ3JvdW5kOyB9XG4gICAgJi5icy10b29sdGlwLXJpZ2h0IC5hcnJvdzo6YmVmb3JlLCAmLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49XCJyaWdodFwiXSAuYXJyb3c6OmJlZm9yZSB7IGJvcmRlci1yaWdodC1jb2xvcjogJGJhY2tncm91bmQ7IH1cbiAgICAmLmJzLXRvb2x0aXAtYm90dG9tIC5hcnJvdzo6YmVmb3JlLCAmLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49XCJib3R0b21cIl0gLmFycm93OjpiZWZvcmUgeyBib3JkZXItYm90dG9tLWNvbG9yOiAkYmFja2dyb3VuZDsgfVxuICAgICYuYnMtdG9vbHRpcC1sZWZ0IC5hcnJvdzo6YmVmb3JlLCAmLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49XCJsZWZ0XCJdIC5hcnJvdzo6YmVmb3JlIHsgYm9yZGVyLWxlZnQtY29sb3I6ICRiYWNrZ3JvdW5kOyB9XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBQb3BvdmVyc1xuXG5AbWl4aW4gYXBwd29yay1wb3BvdmVyLXZhcmlhbnQoJHBhcmVudCwgJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICAkY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCB5aXEoJGJhY2tncm91bmQpKTtcblxuICAjeyRwYXJlbnR9IHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuXG4gICAgLnBvcG92ZXItaGVhZGVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogcmdiYSh5aXEoJGJhY2tncm91bmQpLC4yKTtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICB9XG5cbiAgICAucG9wb3Zlci1ib2R5IHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICB9XG5cbiAgICA+IC5hcnJvdzo6YmVmb3JlIHsgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4gICAgJi5icy1wb3BvdmVyLXRvcCA+IC5hcnJvdzo6YWZ0ZXIsICYuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1cInRvcFwiXSA+IC5hcnJvdzo6YWZ0ZXIgeyBib3JkZXItdG9wLWNvbG9yOiAkYmFja2dyb3VuZDsgfVxuICAgICYuYnMtcG9wb3Zlci1yaWdodCA+IC5hcnJvdzo6YWZ0ZXIsICYuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdID4gLmFycm93OjphZnRlciB7IGJvcmRlci1yaWdodC1jb2xvcjogJGJhY2tncm91bmQ7IH1cbiAgICAmLmJzLXBvcG92ZXItYm90dG9tID4gLmFycm93OjphZnRlciwgJi5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePVwiYm90dG9tXCJdID4gLmFycm93OjphZnRlciB7IGJvcmRlci1ib3R0b20tY29sb3I6ICRiYWNrZ3JvdW5kOyB9XG4gICAgJi5icy1wb3BvdmVyLWxlZnQgPiAuYXJyb3c6OmFmdGVyLCAmLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49XCJsZWZ0XCJdID4gLmFycm93OjphZnRlciB7IGJvcmRlci1sZWZ0LWNvbG9yOiAkYmFja2dyb3VuZDsgfVxuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogRm9ybSBjb250cm9sc1xuXG5AbWl4aW4gYXBwd29yay1jdXN0b20tc2VsZWN0LXNpemUoJHNpemUsICRwYWRkaW5nLXgsICRsaW5lLWhlaWdodCwgJGZvbnQtc2l6ZSkge1xuICAuY3VzdG9tLXNlbGVjdC0jeyRzaXplfSxcbiAgLmlucHV0LWdyb3VwLSN7JHNpemV9IC5jdXN0b20tc2VsZWN0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgJHBhZGRpbmcteCBjZW50ZXI7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcblxuICAgIEBpbmNsdWRlIHJ0bC1zdHlsZSB7XG4gICAgICAmLFxuICAgICAgJltzaXplPVwiMFwiXTpub3QoW211bHRpcGxlXSkge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZy14O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZztcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCAkcGFkZGluZy14IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmW3NpemU9XCIwXCJdOm5vdChbbXVsdGlwbGVdKSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBhcHB3b3JrLWN1c3RvbS1jb250cm9sLXZhcmlhbnQoJHBhcmVudCwgJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCwgJGRlZmF1bHQtYmFja2dyb3VuZDogbnVsbCkge1xuICAkY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCB5aXEoJGJhY2tncm91bmQpKTtcblxuICAjeyRwYXJlbnR9IHtcbiAgICBAaWYgJGRlZmF1bHQtYmFja2dyb3VuZCB7XG4gICAgICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbiAgICAgIC5jdXN0b20tY29udHJvbC1pbnB1dDphY3RpdmUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkZWZhdWx0LWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmN1c3RvbS1jb250cm9sLWlucHV0IHtcbiAgICAgICY6Zm9jdXMgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbiAgICAgICY6YWN0aXZlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkY29tcG9uZW50LWZvY3VzLXNoYWRvdy13aWR0aCByZ2JhKCRiYWNrZ3JvdW5kLCAuNCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmluZGV0ZXJtaW5hdGUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbiAgICAmLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuICAgICYuY3VzdG9tLXJhZGlvIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cblxuICAgICYuY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKHN0ci1yZXBsYWNlKHN0ci1yZXBsYWNlKCRjdXN0b20tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1iZywgJ19DT0xPUl8nLCAkY29sb3IpLCBcIiNcIiwgXCIlMjNcIikpO1xuICAgIH1cblxuICAgICYuY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKHN0ci1yZXBsYWNlKHN0ci1yZXBsYWNlKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJnLCAnX0NPTE9SXycsICRjb2xvciksIFwiI1wiLCBcIiUyM1wiKSk7XG4gICAgfVxuXG4gICAgJi5jdXN0b20tcmFkaW8gLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoc3RyLXJlcGxhY2Uoc3RyLXJlcGxhY2UoJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYmcsICdfQ09MT1JfJywgJGNvbG9yKSwgXCIjXCIsIFwiJTIzXCIpKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGFwcHdvcmstY3VzdG9tLWNvbnRyb2wtdGhlbWUoJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICBAaW5jbHVkZSBhcHB3b3JrLWN1c3RvbS1jb250cm9sLXZhcmlhbnQoJy5jdXN0b20tY29udHJvbCcsICRiYWNrZ3JvdW5kLCAkY29sb3IpO1xufVxuXG5AbWl4aW4gYXBwd29yay1tYXRlcmlhbC1jdXN0b20tY29udHJvbC12YXJpYW50KCRwYXJlbnQsICRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwsICRkZWZhdWx0LWJhY2tncm91bmQ6IG51bGwpIHtcbiAgJGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgeWlxKCRiYWNrZ3JvdW5kKSk7XG5cbiAgI3skcGFyZW50fSB7XG4gICAgQGlmICRkZWZhdWx0LWJhY2tncm91bmQge1xuICAgICAgLmN1c3RvbS1jb250cm9sLWlucHV0IH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsXG4gICAgICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6YWN0aXZlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGVmYXVsdC1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsXG4gICAgJi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbiAgICAmLmN1c3RvbS1yYWRpbyAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuXG4gICAgJi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmluZGV0ZXJtaW5hdGUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChzdHItcmVwbGFjZShzdHItcmVwbGFjZSgkY3VzdG9tLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtYmcsICdfQ09MT1JfJywgJGNvbG9yKSwgXCIjXCIsIFwiJTIzXCIpKTtcbiAgICB9XG5cbiAgICAmLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKHN0ci1yZXBsYWNlKHN0ci1yZXBsYWNlKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJnLCAnX0NPTE9SXycsICRjb2xvciksIFwiI1wiLCBcIiUyM1wiKSk7XG4gICAgfVxuXG4gICAgJi5jdXN0b20tcmFkaW8gLmN1c3RvbS1jb250cm9sLWlucHV0IH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKHN0ci1yZXBsYWNlKHN0ci1yZXBsYWNlKCRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWJnLCAnX0NPTE9SXycsICRiYWNrZ3JvdW5kKSwgXCIjXCIsIFwiJTIzXCIpKTtcbiAgICB9XG5cbiAgICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgkYmFja2dyb3VuZCwgLjE1KTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGFwcHdvcmstbWF0ZXJpYWwtY3VzdG9tLWNvbnRyb2wtdGhlbWUoJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICBAaW5jbHVkZSBhcHB3b3JrLW1hdGVyaWFsLWN1c3RvbS1jb250cm9sLXZhcmlhbnQoJy5jdXN0b20tY29udHJvbCcsICRiYWNrZ3JvdW5kLCAkY29sb3IpO1xufVxuXG5AbWl4aW4gZm9ybS12YWxpZGF0aW9uLXN0YXRlKCRzdGF0ZTogbnVsbCwgJGNvbG9yOiBudWxsLCAkaWNvbjogbnVsbCkge31cblxuQG1peGluIGZvcm0tY29udHJvbC12YWxpZGF0ZWQoJHBhcmVudCwgJHN0YXRlKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1mb3JtLXZhbGlkYXRpb24tc3RhdGUoJHN0YXRlLCAkY29sb3IsICRpY29uLCAkaWNvbi1ydGwpIHtcbiAgLiN7JHN0YXRlfS1mZWVkYmFjayB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBmb250LXNpemU6ICRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAkZm9ybS10ZXh0LW1hcmdpbi10b3A7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gIC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICB6LWluZGV4OiA1O1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyAvLyBDb250YWluIHRvIHBhcmVudCB3aGVuIHBvc3NpYmxlXG4gICAgcGFkZGluZzogJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXkgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXg7XG4gICAgbWFyZ2luLXRvcDogLjFyZW07XG4gICAgZm9udC1zaXplOiAkZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDtcbiAgICBjb2xvcjogY29sb3IteWlxKCRjb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3IsICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eSk7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1mZWVkYmFjay10b29sdGlwLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRlZCgnLmZvcm0tY29udHJvbCwgLmN1c3RvbS1zZWxlY3QsIC5mb3JtLWNvbnRyb2wtZmlsZSwgLmN1c3RvbS1jb250cm9sLWlucHV0JywgJHN0YXRlKSB7XG4gICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0ZWQoJy5mb3JtLWNvbnRyb2wsIC5jdXN0b20tc2VsZWN0JywgJHN0YXRlKSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gIH1cblxuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGVkKCcuY3VzdG9tLWNvbnRyb2xbY2xhc3NdIC5jdXN0b20tY29udHJvbC1pbnB1dCcsICRzdGF0ZSkge1xuICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgfVxuXG4gICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbiAgICAmOmZvY3VzIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsXG4gICAgJjphY3RpdmUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICB9XG5cbiAgICAmOmZvY3VzIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGNvbXBvbmVudC1mb2N1cy1zaGFkb3ctd2lkdGggcmdiYSgkY29sb3IsIC40KTtcbiAgICB9XG5cbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGVkKCcuY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dCcsICRzdGF0ZSkge1xuICAgICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChzdHItcmVwbGFjZShzdHItcmVwbGFjZSgkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1iZywgJ19DT0xPUl8nLCB5aXEoJGNvbG9yKSksIFwiI1wiLCBcIiUyM1wiKSk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRlZCgnLmN1c3RvbS1yYWRpbyAuY3VzdG9tLWNvbnRyb2wtaW5wdXQnLCAkc3RhdGUpIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoc3RyLXJlcGxhY2Uoc3RyLXJlcGxhY2UoJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYmcsICdfQ09MT1JfJywgeWlxKCRjb2xvcikpLCBcIiNcIiwgXCIlMjNcIikpO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0ZWQoJy5jdXN0b20tZmlsZS1pbnB1dCcsICRzdGF0ZSkge1xuICAgIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBWYWxpZGF0aW9uIGljb25zXG4gIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgIC8vIElucHV0c1xuICAgIEBpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0ZWQoJy5mb3JtLWNvbnRyb2wnLCAkc3RhdGUpIHtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNhbGMoI3skaW5wdXQtaGVpZ2h0LWlubmVyfSAvIDMpIGNhbGMoI3skaW5wdXQtaGVpZ2h0LWlubmVyfSAvIDMpO1xuXG4gICAgICBAaW5jbHVkZSBsdHItc3R5bGUge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkaWNvbjtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHJpZ2h0IGNhbGMoI3skaW5wdXQtaGVpZ2h0LWlubmVyfSAvIDMpO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkaWNvbi1ydGw7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJGlucHV0LWhlaWdodC1pbm5lcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGxlZnQgY2FsYygjeyRpbnB1dC1oZWlnaHQtaW5uZXJ9IC8gMyk7XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0ZWQoJy5mb3JtLWNvbnRyb2wtc20nLCAkc3RhdGUpIHtcbiAgICAgIEBpbmNsdWRlIGx0ci1zdHlsZSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1oZWlnaHQtaW5uZXItc207XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciByaWdodCBjYWxjKCN7JGlucHV0LWhlaWdodC1pbm5lci1zbX0gLyA0KTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bC1zdHlsZSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJGlucHV0LWhlaWdodC1pbm5lci1zbTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGxlZnQgY2FsYygjeyRpbnB1dC1oZWlnaHQtaW5uZXItc219IC8gNCk7XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0ZWQoJy5mb3JtLWNvbnRyb2wtbGcnLCAkc3RhdGUpIHtcbiAgICAgIEBpbmNsdWRlIGx0ci1zdHlsZSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1oZWlnaHQtaW5uZXItbGc7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciByaWdodCBjYWxjKCN7JGlucHV0LWhlaWdodC1pbm5lci1sZ30gLyAyLjUpO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkaW5wdXQtaGVpZ2h0LWlubmVyLWxnO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgbGVmdCBjYWxjKCN7JGlucHV0LWhlaWdodC1pbm5lci1sZ30gLyAyLjUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFRleHRhcmVhc1xuICAgIEBpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0ZWQoJ3RleHRhcmVhLmZvcm0tY29udHJvbCcsICRzdGF0ZSkge1xuICAgICAgQGluY2x1ZGUgbHRyLXN0eWxlIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNhbGMoI3skaW5wdXQtaGVpZ2h0LWlubmVyfSAvIDMpIHJpZ2h0IGNhbGMoI3skaW5wdXQtaGVpZ2h0LWlubmVyfSAvIDMpO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNhbGMoI3skaW5wdXQtaGVpZ2h0LWlubmVyfSAvIDMpIGxlZnQgY2FsYygjeyRpbnB1dC1oZWlnaHQtaW5uZXJ9IC8gMyk7XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0ZWQoJ3RleHRhcmVhLmZvcm0tY29udHJvbC1zbScsICRzdGF0ZSkge1xuICAgICAgQGluY2x1ZGUgbHRyLXN0eWxlIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNhbGMoI3skaW5wdXQtaGVpZ2h0LWlubmVyLXNtfSAvIDQpIHJpZ2h0IGNhbGMoI3skaW5wdXQtaGVpZ2h0LWlubmVyLXNtfSAvIDQpO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNhbGMoI3skaW5wdXQtaGVpZ2h0LWlubmVyLXNtfSAvIDQpIGxlZnQgY2FsYygjeyRpbnB1dC1oZWlnaHQtaW5uZXItc219IC8gNCk7XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0ZWQoJ3RleHRhcmVhLmZvcm0tY29udHJvbC1sZycsICRzdGF0ZSkge1xuICAgICAgQGluY2x1ZGUgbHRyLXN0eWxlIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNhbGMoI3skaW5wdXQtaGVpZ2h0LWlubmVyLWxnfSAvIDIuNSkgcmlnaHQgY2FsYygjeyRpbnB1dC1oZWlnaHQtaW5uZXItbGd9IC8gMi41KTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bC1zdHlsZSB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjYWxjKCN7JGlucHV0LWhlaWdodC1pbm5lci1sZ30gLyAyLjUpIGxlZnQgY2FsYygjeyRpbnB1dC1oZWlnaHQtaW5uZXItbGd9IC8gMi41KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBDdXN0b20gc2VsZWN0c1xuICAgIEBpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0ZWQoJy5jdXN0b20tc2VsZWN0W3NpemU9XCIxXCJdLCAuY3VzdG9tLXNlbGVjdDpub3QoW3NpemVdKTpub3QoW211bHRpcGxlXSknLCAkc3RhdGUpIHtcbiAgICAgICRmb3JtLWZlZWRiYWNrLWljb24tb2Zmc2V0OiAoKCRpbnB1dC1oZWlnaHQtaW5uZXIgLSAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgpIC8gMykgKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZztcbiAgICAgIEBpbmNsdWRlIGx0ci1zdHlsZSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZztcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLCAkaWNvbjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14IGNlbnRlciwgcmlnaHQgJGZvcm0tZmVlZGJhY2staWNvbi1vZmZzZXQgY2VudGVyO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmc7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6ICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1ydGwsICRpY29uLXJ0bDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggY2VudGVyLCBsZWZ0ICRmb3JtLWZlZWRiYWNrLWljb24tb2Zmc2V0IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRlZCgnLmN1c3RvbS1zZWxlY3Qtc21bc2l6ZT1cIjFcIl0sIC5jdXN0b20tc2VsZWN0LXNtOm5vdChbc2l6ZV0pOm5vdChbbXVsdGlwbGVdKScsICRzdGF0ZSkge1xuICAgICAgJGZvcm0tZmVlZGJhY2staWNvbi1vZmZzZXQ6ICgoJGlucHV0LWhlaWdodC1pbm5lci1zbSAtICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCkgLyA0KSArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nO1xuICAgICAgQGluY2x1ZGUgbHRyLXN0eWxlIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLXNtO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtc20gY2VudGVyLCByaWdodCAkZm9ybS1mZWVkYmFjay1pY29uLW9mZnNldCBjZW50ZXI7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1zbTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtc20gY2VudGVyLCBsZWZ0ICRmb3JtLWZlZWRiYWNrLWljb24tb2Zmc2V0IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRlZCgnLmN1c3RvbS1zZWxlY3QtbGdbc2l6ZT1cIjFcIl0sIC5jdXN0b20tc2VsZWN0LWxnOm5vdChbc2l6ZV0pOm5vdChbbXVsdGlwbGVdKScsICRzdGF0ZSkge1xuICAgICAgJGZvcm0tZmVlZGJhY2staWNvbi1vZmZzZXQ6ICgoJGlucHV0LWhlaWdodC1pbm5lci1sZyAtICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCkgLyAyKSArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nO1xuICAgICAgQGluY2x1ZGUgbHRyLXN0eWxlIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLWxnO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtbGcgY2VudGVyLCByaWdodCAkZm9ybS1mZWVkYmFjay1pY29uLW9mZnNldCBjZW50ZXI7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1sZztcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtbGcgY2VudGVyLCBsZWZ0ICRmb3JtLWZlZWRiYWNrLWljb24tb2Zmc2V0IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGFwcHdvcmstbWF0ZXJpYWwtZm9ybS12YWxpZGF0aW9uLXN0YXRlKCRzdGF0ZSwgJGNvbG9yLCAkaWNvbiwgJGljb24tcnRsKSB7XG4gIC4jeyRzdGF0ZX0tZmVlZGJhY2sge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgZm9udC1zaXplOiAkZm9ybS1mZWVkYmFjay1mb250LXNpemU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogJGZvcm0tdGV4dC1tYXJnaW4tdG9wO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgei1pbmRleDogNTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1heC13aWR0aDogMTAwJTsgLy8gQ29udGFpbiB0byBwYXJlbnQgd2hlbiBwb3NzaWJsZVxuICAgIHBhZGRpbmc6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy14O1xuICAgIG1hcmdpbi10b3A6IC4xcmVtO1xuICAgIGZvbnQtc2l6ZTogJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLCAkZm9ybS1mZWVkYmFjay10b29sdGlwLW9wYWNpdHkpO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0ZWQoJy5mb3JtLWNvbnRyb2wsIC5jdXN0b20tc2VsZWN0LCAuZm9ybS1jb250cm9sLWZpbGUsIC5jdXN0b20tY29udHJvbC1pbnB1dCcsICRzdGF0ZSkge1xuICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGVkKCcuZm9ybS1jb250cm9sLCAuY3VzdG9tLXNlbGVjdCcsICRzdGF0ZSkge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRlZCgnLmN1c3RvbS1jb250cm9sW2NsYXNzXSAuY3VzdG9tLWNvbnRyb2wtaW5wdXQnLCAkc3RhdGUpIHtcbiAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgIH1cblxuICAgIH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbiAgICAmOmZvY3VzIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsXG4gICAgJjphY3RpdmUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICB9XG5cbiAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgkY29sb3IsIC4xNSk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRlZCgnLmN1c3RvbS1jaGVja2JveFtjbGFzc10gLmN1c3RvbS1jb250cm9sLWlucHV0JywgJHN0YXRlKSB7XG4gICAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKHN0ci1yZXBsYWNlKHN0ci1yZXBsYWNlKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJnLCAnX0NPTE9SXycsIHlpcSgkY29sb3IpKSwgXCIjXCIsIFwiJTIzXCIpKTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGVkKCcuY3VzdG9tLXJhZGlvW2NsYXNzXSAuY3VzdG9tLWNvbnRyb2wtaW5wdXQnLCAkc3RhdGUpIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoc3RyLXJlcGxhY2Uoc3RyLXJlcGxhY2UoJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYmcsICdfQ09MT1JfJywgJGNvbG9yKSwgXCIjXCIsIFwiJTIzXCIpKTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGVkKCcuY3VzdG9tLWZpbGUtaW5wdXQnLCAkc3RhdGUpIHtcbiAgICB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBWYWxpZGF0aW9uIGljb25zXG4gIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgIC8vIElucHV0c1xuICAgIEBpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0ZWQoJy5mb3JtLWNvbnRyb2wnLCAkc3RhdGUpIHtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNhbGMoI3skaW5wdXQtaGVpZ2h0LWlubmVyfSAvIDMpIGNhbGMoI3skaW5wdXQtaGVpZ2h0LWlubmVyfSAvIDMpO1xuXG4gICAgICBAaW5jbHVkZSBsdHItc3R5bGUge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkaWNvbjtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMS4yNXJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHJpZ2h0O1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkaWNvbi1ydGw7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGxlZnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gVGV4dGFyZWFzXG4gICAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRlZCgndGV4dGFyZWEuZm9ybS1jb250cm9sJywgJHN0YXRlKSB7XG4gICAgICBAaW5jbHVkZSBsdHItc3R5bGUge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2FsYygjeyRpbnB1dC1oZWlnaHQtaW5uZXJ9IC8gMykgcmlnaHQ7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2FsYygjeyRpbnB1dC1oZWlnaHQtaW5uZXJ9IC8gMykgbGVmdDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRlZCgndGV4dGFyZWEuZm9ybS1jb250cm9sLXNtJywgJHN0YXRlKSB7XG4gICAgICBAaW5jbHVkZSBsdHItc3R5bGUge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2FsYygjeyRpbnB1dC1oZWlnaHQtaW5uZXItc219IC8gNCkgcmlnaHQ7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2FsYygjeyRpbnB1dC1oZWlnaHQtaW5uZXItc219IC8gNCkgbGVmdDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRlZCgndGV4dGFyZWEuZm9ybS1jb250cm9sLWxnJywgJHN0YXRlKSB7XG4gICAgICBAaW5jbHVkZSBsdHItc3R5bGUge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2FsYygjeyRpbnB1dC1oZWlnaHQtaW5uZXItbGd9IC8gMi41KSByaWdodDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bC1zdHlsZSB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjYWxjKCN7JGlucHV0LWhlaWdodC1pbm5lci1sZ30gLyAyLjUpIGxlZnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ3VzdG9tIHNlbGVjdHNcbiAgICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGVkKCcuY3VzdG9tLXNlbGVjdFtzaXplPVwiMVwiXSwgLmN1c3RvbS1zZWxlY3Q6bm90KFtzaXplXSk6bm90KFttdWx0aXBsZV0pJywgJHN0YXRlKSB7XG4gICAgICBAaW5jbHVkZSBsdHItc3R5bGUge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmc7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6ICRjdXN0b20tc2VsZWN0LWluZGljYXRvciwgJGljb247XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlciwgcmlnaHQgMXJlbSBjZW50ZXI7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZztcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXJ0bCwgJGljb24tcnRsO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlciwgbGVmdCAxcmVtIGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGFwcHdvcmstY3VzdG9tLWZpbGUtaW5wdXQtdGhlbWUoJGNvbG9yKSB7XG4gIC5jdXN0b20tZmlsZS1pbnB1dDpmb2N1cyB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBib3JkZXItY29sb3I6IGluaGVyaXQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBhcHB3b3JrLW1hdGVyaWFsLWN1c3RvbS1maWxlLWlucHV0LXRoZW1lKCRjb2xvcikge1xuICAuY3VzdG9tLWZpbGUtaW5wdXQ6Zm9jdXMgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvcjtcbiAgICBib3gtc2hhZG93OiAwIC0xcHggMCAwICRjb2xvciBpbnNldDtcbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1tYXRlcmlhbC1mb3JtLWNvbnRyb2wtc2l6ZSgkc2l6ZSwgJHBhZGRpbmcteSkge1xuICBAaWYgJHNpemUgPT0gJycge1xuICAgIC5mb3JtLWNvbnRyb2wsXG4gICAgLmN1c3RvbS1zZWxlY3QsXG4gICAgLmN1c3RvbS1maWxlLWxhYmVsLFxuICAgIC5pbnB1dC1ncm91cC10ZXh0IHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKCN7JHBhZGRpbmcteX0gLSAxcHgpO1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgLmZvcm0tY29udHJvbC0jeyRzaXplfSxcbiAgICAuY3VzdG9tLXNlbGVjdC0jeyRzaXplfSxcbiAgICAuaW5wdXQtZ3JvdXAtI3skc2l6ZX0gPiAuZm9ybS1jb250cm9sLFxuICAgIC5pbnB1dC1ncm91cC0jeyRzaXplfSA+IC5jdXN0b20tc2VsZWN0LFxuICAgIC5pbnB1dC1ncm91cC0jeyRzaXplfSAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0IHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKCN7JHBhZGRpbmcteX0gLSAxcHgpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1mb3JtLWNvbnRyb2wtdGhlbWUoJGNvbG9yKSB7XG4gIC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4gIC5jdXN0b20tc2VsZWN0OmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1tYXRlcmlhbC1mb3JtLWNvbnRyb2wtdGhlbWUoJGNvbG9yKSB7XG4gIC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4gIC5jdXN0b20tc2VsZWN0OmZvY3VzIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkY29sb3I7XG4gICAgYm94LXNoYWRvdzogMCAtMXB4IDAgMCAkY29sb3IgaW5zZXQ7XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBTd2l0Y2hlcnNcblxuQG1peGluIGFwcHdvcmstc3dpdGNoZXItc2l6ZS1iYXNlKCR3aWR0aCwgJGhlaWdodCwgJGZvbnQtc2l6ZSwgJGRlc2NyaXB0aW9uLWZvbnQtc2l6ZSwgJGRlc2NyaXB0aW9uLWxpbmUtaGVpZ2h0LCAkaW5uZXItc3BhY2VyOiAkc3dpdGNoZXItaW5uZXItc3BhY2VyKSB7XG4gIHBhZGRpbmctbGVmdDogJHdpZHRoO1xuICBtaW4taGVpZ2h0OiAkaGVpZ2h0O1xuICBmb250LXNpemU6ICRkZXNjcmlwdGlvbi1mb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAkZGVzY3JpcHRpb24tbGluZS1oZWlnaHQ7XG5cbiAgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkOiAkZGVzY3JpcHRpb24tZm9udC1zaXplICogJGRlc2NyaXB0aW9uLWxpbmUtaGVpZ2h0O1xuICAkZGVsdGE6IGlmKCRtYXRlcmlhbC1zdHlsZSwgcHgtdG8tcmVtKGNlaWwocmVtLXRvLXB4KCRoZWlnaHQgKiAuMTI1KSkpLCAwKTtcblxuICAuc3dpdGNoZXItaW5kaWNhdG9yIHtcbiAgICB3aWR0aDogJHdpZHRoO1xuICAgIGhlaWdodDogJGhlaWdodCAtICgkZGVsdGEgKiAyKTtcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRoZWlnaHQ7XG5cbiAgICBAaWYgJGxpbmUtaGVpZ2h0LWNvbXB1dGVkID4gJGhlaWdodCB7XG4gICAgICB0b3A6ICgoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC0gJGhlaWdodCkgLyAyKSArICRkZWx0YTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRvcDogMCArICRkZWx0YTtcbiAgICB9XG4gIH1cblxuICAuc3dpdGNoZXItbGFiZWwge1xuICAgIEBpZiAkbGluZS1oZWlnaHQtY29tcHV0ZWQgPCAkaGVpZ2h0IHtcbiAgICAgIHRvcDogKCRoZWlnaHQgLSAkbGluZS1oZWlnaHQtY29tcHV0ZWQpIC8gMjtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRvcDogMDtcbiAgICB9XG4gIH1cblxuICAuc3dpdGNoZXItaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2hlci1pbmRpY2F0b3I6OmFmdGVyIHtcbiAgICBsZWZ0OiAkd2lkdGggLSAkaGVpZ2h0O1xuICB9XG5cbiAgLnN3aXRjaGVyLWluZGljYXRvcjo6YWZ0ZXIge1xuICAgIHRvcDogJGRlbHRhICogLTE7XG4gICAgbWFyZ2luOiAkaW5uZXItc3BhY2VyIDAgMCAkaW5uZXItc3BhY2VyO1xuICAgIHdpZHRoOiAkaGVpZ2h0IC0gJGlubmVyLXNwYWNlciAqIDI7XG4gICAgaGVpZ2h0OiAkaGVpZ2h0IC0gJGlubmVyLXNwYWNlciAqIDI7XG4gIH1cblxuICAuc3dpdGNoZXItbm8ge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRpbm5lci1zcGFjZXI7XG4gICAgcGFkZGluZy1sZWZ0OiAkaGVpZ2h0IC0gJGlubmVyLXNwYWNlcjtcbiAgfVxuXG4gIC5zd2l0Y2hlci15ZXMge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRoZWlnaHQgLSAkaW5uZXItc3BhY2VyO1xuICAgIHBhZGRpbmctbGVmdDogJGlubmVyLXNwYWNlcjtcbiAgfVxuXG4gIEBpZiAkbWF0ZXJpYWwtc3R5bGUge1xuICAgIC5zd2l0Y2hlci1pbmRpY2F0b3I6OmJlZm9yZSB7XG4gICAgICB0b3A6ICRkZWx0YSAqIC0xO1xuICAgICAgd2lkdGg6ICRoZWlnaHQ7XG4gICAgICBoZWlnaHQ6ICRoZWlnaHQ7XG4gICAgfVxuXG4gICAgLnN3aXRjaGVyLWlucHV0OmNoZWNrZWQgfiAuc3dpdGNoZXItaW5kaWNhdG9yOjpiZWZvcmUge1xuICAgICAgbGVmdDogJHdpZHRoIC0gJGhlaWdodDtcbiAgICB9XG4gIH1cblxuICBAaWYgJHJ0bC1zdXBwb3J0IHtcbiAgICBbZGlyPXJ0bF0gJiAuc3dpdGNoZXItaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2hlci1pbmRpY2F0b3I6OmFmdGVyIHtcbiAgICAgIHJpZ2h0OiAkd2lkdGggLSAkaGVpZ2h0O1xuICAgICAgbGVmdDogYXV0bztcbiAgICB9XG5cbiAgICBbZGlyPXJ0bF0gJiAuc3dpdGNoZXItaW5kaWNhdG9yOjphZnRlciB7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRpbm5lci1zcGFjZXI7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG5cbiAgICBbZGlyPXJ0bF0gJiAuc3dpdGNoZXItbm8ge1xuICAgICAgcGFkZGluZy1yaWdodDogJGhlaWdodCAtICRpbm5lci1zcGFjZXI7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRpbm5lci1zcGFjZXI7XG4gICAgfVxuXG4gICAgW2Rpcj1ydGxdICYgLnN3aXRjaGVyLXllcyB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5uZXItc3BhY2VyO1xuICAgICAgcGFkZGluZy1sZWZ0OiAkaGVpZ2h0IC0gJGlubmVyLXNwYWNlcjtcbiAgICB9XG5cbiAgICBAaWYgJG1hdGVyaWFsLXN0eWxlIHtcbiAgICAgIFtkaXI9cnRsXSAmIC5zd2l0Y2hlci1pbnB1dDpjaGVja2VkIH4gLnN3aXRjaGVyLWluZGljYXRvcjo6YmVmb3JlIHtcbiAgICAgICAgcmlnaHQ6ICR3aWR0aCAtICRoZWlnaHQ7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBhcHB3b3JrLXN3aXRjaGVyLXNpemUoJHNpemUsICR3aWR0aCwgJGhlaWdodCwgJGZvbnQtc2l6ZSwgJGRlc2NyaXB0aW9uLWZvbnQtc2l6ZSwgJGRlc2NyaXB0aW9uLWxpbmUtaGVpZ2h0LCAkaW5uZXItc3BhY2VyOiAkc3dpdGNoZXItaW5uZXItc3BhY2VyKSB7XG4gIC5zd2l0Y2hlci0jeyRzaXplfSxcbiAgLmZvcm0tZ3JvdXAtI3skc2l6ZX0gLnN3aXRjaGVyIHtcbiAgICBAaW5jbHVkZSBhcHB3b3JrLXN3aXRjaGVyLXNpemUtYmFzZSgkd2lkdGgsICRoZWlnaHQsICRmb250LXNpemUsICRkZXNjcmlwdGlvbi1mb250LXNpemUsICRkZXNjcmlwdGlvbi1saW5lLWhlaWdodCwgJGlubmVyLXNwYWNlcik7XG4gIH1cbn1cblxuQG1peGluIGFwcHdvcmstc3dpdGNoZXItdmFyaWFudCgkcGFyZW50LCAkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gICRzZWxlY3RvcjogaWYoJHBhcmVudCA9PSAnJywgJycsICcjeyRwYXJlbnR9LnN3aXRjaGVyJyk7XG4gICRjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIHlpcSgkYmFja2dyb3VuZCkpO1xuXG4gICN7JHNlbGVjdG9yfSAuc3dpdGNoZXItaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2hlci1pbmRpY2F0b3Ige1xuICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAjeyRzZWxlY3Rvcn0gLnN3aXRjaGVyLWlucHV0OmZvY3VzIH4gLnN3aXRjaGVyLWluZGljYXRvciB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgJGNvbXBvbmVudC1mb2N1cy1zaGFkb3ctd2lkdGggcmdiYSgkYmFja2dyb3VuZCwgLjQpO1xuICB9XG5cbiAgI3skc2VsZWN0b3J9IC5zd2l0Y2hlci1pbnB1dDphY3RpdmUgfiAuc3dpdGNoZXItaW5kaWNhdG9yIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBhcHB3b3JrLXN3aXRjaGVyLXRoZW1lKCRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwpIHtcbiAgQGluY2x1ZGUgYXBwd29yay1zd2l0Y2hlci12YXJpYW50KCcnLCAkYmFja2dyb3VuZCwgJGNvbG9yKTtcbn1cblxuQG1peGluIGFwcHdvcmstbWF0ZXJpYWwtc3dpdGNoZXItdmFyaWFudCgkcGFyZW50LCAkYmFja2dyb3VuZCkge1xuICAkc2VsZWN0b3I6IGlmKCRwYXJlbnQgPT0gJycsICcnLCAnI3skcGFyZW50fS5zd2l0Y2hlcicpO1xuXG4gICN7JHNlbGVjdG9yfSAuc3dpdGNoZXItaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2hlci1pbmRpY2F0b3Ige1xuICAgIGJhY2tncm91bmQ6IHJnYmEoJGJhY2tncm91bmQsIC41KTtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRiYWNrZ3JvdW5kLCAuMTUpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1tYXRlcmlhbC1zd2l0Y2hlci10aGVtZSgkYmFja2dyb3VuZCkge1xuICBAaW5jbHVkZSBhcHB3b3JrLW1hdGVyaWFsLXN3aXRjaGVyLXZhcmlhbnQoJycsICRiYWNrZ3JvdW5kKTtcbn1cblxuQG1peGluIGFwcHdvcmstc3dpdGNoZXItdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsICRjb2xvcikge1xuICAuc3dpdGNoZXItaW5wdXRbY2xhc3NdIHtcbiAgICAud2FzLXZhbGlkYXRlZCAmOiN7JHN0YXRlfSxcbiAgICAmLmlzLSN7JHN0YXRlfSB7XG4gICAgICAmOmNoZWNrZWQgfiAuc3dpdGNoZXItaW5kaWNhdG9yIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgICAgICBjb2xvcjogeWlxKCRjb2xvcik7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMgfiAuc3dpdGNoZXItaW5kaWNhdG9yIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGNvbXBvbmVudC1mb2N1cy1zaGFkb3ctd2lkdGggcmdiYSgkY29sb3IsIC40KTtcbiAgICAgIH1cblxuICAgICAgJjphY3RpdmUgfiAuc3dpdGNoZXItaW5kaWNhdG9yIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIH1cblxuICAgICAgfiAuc3dpdGNoZXItbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgfVxuXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1tYXRlcmlhbC1zd2l0Y2hlci12YWxpZGF0aW9uLXN0YXRlKCRzdGF0ZSwgJGNvbG9yKSB7XG4gIC5zd2l0Y2hlci1pbnB1dFtjbGFzc10ge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgIH4gLnN3aXRjaGVyLWluZGljYXRvcltjbGFzc10ge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRjb2xvciwgLjUpO1xuICAgICAgfVxuXG4gICAgICAmOmNoZWNrZWQgfiAuc3dpdGNoZXItaW5kaWNhdG9yIHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkY29sb3IsIC4xNSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgfiAuc3dpdGNoZXItbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFRhYmxlc1xuXG5AbWl4aW4gdGFibGUtcm93LXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGJvcmRlcjogbnVsbCkge31cblxuQG1peGluIGFwcHdvcmstdGFibGUtcm93LXZhcmlhbnQoJHBhcmVudCwgJGJhY2tncm91bmQpIHtcbiAgJGJnOiByZ2JhLXRvLWhleChyZ2JhKCRiYWNrZ3JvdW5kLCAuMSksICNmZmYpO1xuICAkY29sb3I6IHlpcSgkYmcpO1xuICAkaG92ZXItYmc6IHJnYmEtdG8taGV4KHJnYmEoJGJnLCAuOTkpLCAjMDAwKTtcblxuICAudGFibGUgI3skcGFyZW50fSxcbiAgLnRhYmxlICN7JHBhcmVudH0gPiB0aCxcbiAgLnRhYmxlICN7JHBhcmVudH0gPiB0ZCB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsMCwwLC4wMzUpICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAudGFibGUtaG92ZXIgI3skcGFyZW50fTpob3ZlcixcbiAgLnRhYmxlLWhvdmVyICN7JHBhcmVudH06aG92ZXIgPiB0ZCxcbiAgLnRhYmxlLWhvdmVyICN7JHBhcmVudH06aG92ZXIgPiB0aCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWJnO1xuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogTmF2YmFyXG5cbkBtaXhpbiBhcHB3b3JrLW5hdmJhci12YXJpYW50KCRwYXJlbnQsICRiZywgJGNvbG9yOiBudWxsLCAkYWN0aXZlLWNvbG9yOiBudWxsLCAkYm9yZGVyOiBudWxsKSB7XG4gICRjb2xvcnM6IGdldC1uYXYtY29sb3JzKCRiZywgJGFjdGl2ZS1jb2xvciwgJGNvbG9yLCAkYm9yZGVyKTtcblxuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGJnKSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGNvbG9yKTtcblxuICAgIC5uYXZiYXItYnJhbmQge1xuICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYWN0aXZlLWNvbG9yKTtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBhY3RpdmUtY29sb3IpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5uYXZiYXItbmF2IHtcbiAgICAgIC5uYXYtbGluayB7XG4gICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGNvbG9yKTtcblxuICAgICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYWN0aXZlLWNvbG9yKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGRpc2FibGVkLWNvbG9yKSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5zaG93ID4gLm5hdi1saW5rLFxuICAgICAgLmFjdGl2ZSA+IC5uYXYtbGluayxcbiAgICAgIC5uYXYtbGluay5zaG93LFxuICAgICAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGFjdGl2ZS1jb2xvcik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm5hdmJhci10b2dnbGVyIHtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGNvbG9yKTtcbiAgICAgIGJvcmRlci1jb2xvcjogbWFwLWdldCgkY29sb3JzLCBib3JkZXIpO1xuICAgIH1cblxuICAgIC5uYXZiYXItdG9nZ2xlci1pY29uIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGlmKG1hcC1nZXQoJGNvbG9ycywgYWN0aXZlLWNvbG9yKSA9PSAjZmZmLCAkbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnLCAkbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZyk7XG4gICAgfVxuXG4gICAgLm5hdmJhci10ZXh0IHtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGNvbG9yKTtcblxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGFjdGl2ZS1jb2xvcik7XG5cbiAgICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGFjdGl2ZS1jb2xvcik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBociB7XG4gICAgICBib3JkZXItY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYm9yZGVyKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBTaWRlbmF2XG5cbkBtaXhpbiBhcHB3b3JrLXNpZGVuYXYtdmFyaWFudCgkcGFyZW50LCAkYmcsICRjb2xvcjogbnVsbCwgJGFjdGl2ZS1jb2xvcjogbnVsbCwgJGJvcmRlcjogbnVsbCwgJG1lbnUtYmc6IG51bGwpIHtcbiAgJGNvbG9yczogZ2V0LW5hdi1jb2xvcnMoJGJnLCAkYWN0aXZlLWNvbG9yLCAkY29sb3IsICRib3JkZXIpO1xuICAkeWlxLXBlcmNlbnQ6IG1hcC1nZXQoJGNvbG9ycywgeWlxLXBlcmNlbnQpO1xuXG4gIEBpZiBub3QgJG1lbnUtYmcge1xuICAgICRtZW51LWJnOiByZ2JhLXRvLWhleChyZ2JhKG1hcC1nZXQoJGNvbG9ycywgYmcpLCAxIC0gaWYoJHlpcS1wZXJjZW50ID4gLjc1LCAuMDI1LCAuMDUpKSwgaWYoJHlpcS1wZXJjZW50IDwgLjI1LCAjZmZmLCAjMDAwKSk7XG4gIH1cblxuICAkbWVudS1hY3RpdmUtYmc6IHJnYmEtdG8taGV4KHJnYmEoJG1lbnUtYmcsIDEgLSBpZigkeWlxLXBlcmNlbnQgPiAuNzUsIC4wMjUsIC4wNSkpLCBpZigkeWlxLXBlcmNlbnQgPCAuMjUsICNmZmYsICMwMDApKTtcblxuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGJnKSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGNvbG9yKTtcblxuICAgIC5zaWRlbmF2LWxpbmssXG4gICAgLnNpZGVuYXYtaG9yaXpvbnRhbC1wcmV2LFxuICAgIC5zaWRlbmF2LWhvcml6b250YWwtbmV4dCB7XG4gICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBjb2xvcik7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYWN0aXZlLWNvbG9yKTtcbiAgICAgIH1cblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBhY3RpdmUtY29sb3IpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zaWRlbmF2LWl0ZW0uZGlzYWJsZWQgLnNpZGVuYXYtbGluayxcbiAgICAuc2lkZW5hdi1ob3Jpem9udGFsLXByZXYuZGlzYWJsZWQsXG4gICAgLnNpZGVuYXYtaG9yaXpvbnRhbC1uZXh0LmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGRpc2FibGVkLWNvbG9yKSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5zaWRlbmF2LWl0ZW0ub3Blbjpub3QoLnNpZGVuYXYtaXRlbS1jbG9zaW5nKSA+IC5zaWRlbmF2LXRvZ2dsZSxcbiAgICAuc2lkZW5hdi1pdGVtLmFjdGl2ZSA+IC5zaWRlbmF2LWxpbmsge1xuICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYWN0aXZlLWNvbG9yKTtcbiAgICB9XG5cbiAgICAuc2lkZW5hdi1pdGVtLmFjdGl2ZSA+IC5zaWRlbmF2LWxpbms6bm90KC5zaWRlbmF2LXRvZ2dsZSkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1lbnUtYmc7XG4gICAgfVxuXG4gICAgJi5zaWRlbmF2LWhvcml6b250YWwgLnNpZGVuYXYtbWVudSA+IC5zaWRlbmF2LWl0ZW0uYWN0aXZlID4gLnNpZGVuYXYtbGluazpub3QoLnNpZGVuYXYtdG9nZ2xlKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWVudS1hY3RpdmUtYmc7XG4gICAgfVxuXG4gICAgJi5zaWRlbmF2LWhvcml6b250YWwgLnNpZGVuYXYtaW5uZXIgPiAuc2lkZW5hdi1pdGVtOm5vdCguc2lkZW5hdi1pdGVtLWNsb3NpbmcpID4gLnNpZGVuYXYtbWVudSxcbiAgICAmLnNpZGVuYXYtaG9yaXpvbnRhbCAuc2lkZW5hdi1pbm5lciA+IC5zaWRlbmF2LWl0ZW0ub3BlbiA+IC5zaWRlbmF2LXRvZ2dsZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkbWVudS1iZztcbiAgICB9XG5cbiAgICAuc2lkZW5hdi1pbm5lciA+IC5zaWRlbmF2LWl0ZW0uc2lkZW5hdi1pdGVtLWNsb3NpbmcgLnNpZGVuYXYtaXRlbS5vcGVuIC5zaWRlbmF2LW1lbnUsXG4gICAgLnNpZGVuYXYtaW5uZXIgPiAuc2lkZW5hdi1pdGVtLnNpZGVuYXYtaXRlbS1jbG9zaW5nIC5zaWRlbmF2LWl0ZW0ub3BlbiAuc2lkZW5hdi10b2dnbGUge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBjb2xvcik7XG4gICAgfVxuXG4gICAgLnNpZGVuYXYtdGV4dCB7XG4gICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBhY3RpdmUtY29sb3IpO1xuICAgIH1cblxuICAgIC5zaWRlbmF2LWhlYWRlciB7XG4gICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBtdXRlZC1jb2xvcik7XG4gICAgfVxuXG4gICAgaHIsXG4gICAgLnNpZGVuYXYtZGl2aWRlcixcbiAgICAuc2lkZW5hdi1pbm5lciA+IC5zaWRlbmF2LWl0ZW0ub3BlbiA+IC5zaWRlbmF2LW1lbnU6OmJlZm9yZSB7XG4gICAgICBib3JkZXItY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYm9yZGVyKSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5zaWRlbmF2LWlubmVyID4gLnNpZGVuYXYtaGVhZGVyOjpiZWZvcmUsXG4gICAgLnNpZGVuYXYtYmxvY2s6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGJvcmRlcik7XG4gICAgfVxuXG4gICAgLnNpZGVuYXYtaW5uZXIgPiAuc2lkZW5hdi1pdGVtLm9wZW4gLnNpZGVuYXYtaXRlbS5vcGVuID4gLnNpZGVuYXYtdG9nZ2xlOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYS10by1oZXgobWFwLWdldCgkY29sb3JzLCBib3JkZXIpLCAkbWVudS1iZyk7XG4gICAgfVxuXG4gICAgLnNpZGVuYXYtaW5uZXIgPiAuc2lkZW5hdi1pdGVtLm9wZW4gLnNpZGVuYXYtaXRlbS5hY3RpdmUgPiAuc2lkZW5hdi1saW5rOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkY29sb3JzLCBhY3RpdmUtY29sb3IpO1xuICAgIH1cblxuICAgIC5zaWRlbmF2LWlubmVyID4gLnNpZGVuYXYtaXRlbS5vcGVuIC5zaWRlbmF2LWl0ZW0ub3BlbiA+IC5zaWRlbmF2LXRvZ2dsZTo6YmVmb3JlLFxuICAgIC5zaWRlbmF2LWlubmVyID4gLnNpZGVuYXYtaXRlbS5vcGVuIC5zaWRlbmF2LWl0ZW0uYWN0aXZlID4gLnNpZGVuYXYtbGluazo6YmVmb3JlIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDJweCAkbWVudS1iZztcbiAgICB9XG5cbiAgICAucHNfX3RodW1iLXksXG4gICAgLnBzX19yYWlsLXkucHMtLWNsaWNraW5nID4gLnBzX190aHVtYi15IHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEobWFwLWdldCgkY29sb3JzLCBhY3RpdmUtY29sb3IpLCBpZigkeWlxLXBlcmNlbnQgPiAuNzUsIG1hcC1nZXQoJGNvbG9ycywgb3BhY2l0eSkgLSAuNCwgbWFwLWdldCgkY29sb3JzLCBvcGFjaXR5KSAtIC4yKSkgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBGb290ZXJcblxuQG1peGluIGFwcHdvcmstZm9vdGVyLXZhcmlhbnQoJHBhcmVudCwgJGJnLCAkY29sb3I6IG51bGwsICRhY3RpdmUtY29sb3I6IG51bGwsICRib3JkZXI6IG51bGwpIHtcbiAgJGNvbG9yczogZ2V0LW5hdi1jb2xvcnMoJGJnLCAkYWN0aXZlLWNvbG9yLCAkY29sb3IsICRib3JkZXIpO1xuXG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYmcpICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgY29sb3IpO1xuXG4gICAgLmZvb3Rlci1saW5rIHtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGNvbG9yKTtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBhY3RpdmUtY29sb3IpO1xuICAgICAgfVxuXG4gICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgZGlzYWJsZWQtY29sb3IpICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmZvb3Rlci10ZXh0IHtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGFjdGl2ZS1jb2xvcik7XG4gICAgfVxuXG4gICAgLnNob3cgPiAuZm9vdGVyLWxpbmssXG4gICAgLmFjdGl2ZSA+IC5mb290ZXItbGluayxcbiAgICAuZm9vdGVyLWxpbmsuc2hvdyxcbiAgICAuZm9vdGVyLWxpbmsuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGFjdGl2ZS1jb2xvcik7XG4gICAgfVxuXG4gICAgaHIge1xuICAgICAgYm9yZGVyLWNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGJvcmRlcik7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBhcHB3b3JrLXRvYXN0LXZhcmlhbnQoJHBhcmVudCwgJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICAkY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCB5aXEoJGJhY2tncm91bmQpKTtcblxuICAjeyRwYXJlbnR9LmJzNC10b2FzdCB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRiYWNrZ3JvdW5kLCAuOSkgIWltcG9ydGFudDtcblxuICAgIC50b2FzdC1oZWFkZXIge1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLCAuMSk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBhcHB3b3JrLXRvYXN0LXRoZW1lKCRwYXJlbnQsICRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwpIHtcbiAgQGluY2x1ZGUgYXBwd29yay10b2FzdC12YXJpYW50KCRwYXJlbnQsICRiYWNrZ3JvdW5kLCAkY29sb3IpO1xufVxuIiwiLy8gUmVib290XG4vL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xufVxuXG5AaW5jbHVkZSBydGwtb25seSB7XG4gIGRkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbiAgY2FwdGlvbiB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbn1cbiIsIi8vIFR5cGVcbi8vXG5cbkBpbmNsdWRlIHJ0bC1vbmx5IHtcbiAgLmxpc3QtdW5zdHlsZWQsXG4gIC5saXN0LWlubGluZSB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxuICAubGlzdC1pbmxpbmUtaXRlbTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6ICRsaXN0LWlubGluZS1wYWRkaW5nO1xuICB9XG59XG4iLCIvLyBVdGlsaXRpZXNcbi8vXG5cbi5vcGFjaXR5LTI1ICAgICAgICAgICAgeyBvcGFjaXR5OiAuMjUgIWltcG9ydGFudDsgfVxuLm9wYWNpdHktNTAgICAgICAgICAgICB7IG9wYWNpdHk6IC41ICFpbXBvcnRhbnQ7IH1cbi5vcGFjaXR5LTc1ICAgICAgICAgICAgeyBvcGFjaXR5OiAuNzUgIWltcG9ydGFudDsgfVxuLm9wYWNpdHktMTAwICAgICAgICAgICB7IG9wYWNpdHk6IDEgIWltcG9ydGFudDsgfVxuXG4udGV4dC10aW55ICAgICAgICAgICAgIHsgZm9udC1zaXplOiAkdGlueS1mb250LXNpemUgIWltcG9ydGFudDsgfVxuLnRleHQtYmlnICAgICAgICAgICAgICB7IGZvbnQtc2l6ZTogJGJpZy1mb250LXNpemUgIWltcG9ydGFudDsgfVxuLnRleHQtbGFyZ2UgICAgICAgICAgICB7IGZvbnQtc2l6ZTogJGxhcmdlLWZvbnQtc2l6ZSAhaW1wb3J0YW50OyB9XG4udGV4dC14bGFyZ2UgICAgICAgICAgIHsgZm9udC1zaXplOiAkeGxhcmdlLWZvbnQtc2l6ZSAhaW1wb3J0YW50OyB9XG5cbi5saW5lLWhlaWdodC0xICAgICAgICAgeyBsaW5lLWhlaWdodDogMSAhaW1wb3J0YW50OyB9XG4ubGluZS1oZWlnaHQtY29uZGVuY2VkIHsgbGluZS1oZWlnaHQ6IDEuMyAhaW1wb3J0YW50OyB9XG4ubGluZS1oZWlnaHQtaW5oZXJpdCAgIHsgbGluZS1oZWlnaHQ6IGluaGVyaXQgIWltcG9ydGFudDsgfVxuXG4udGV4dC1leHBhbmRlZCAgICAgICAgIHsgbGV0dGVyLXNwYWNpbmc6ICgoMSAvIChzdHJpcC11bml0KCRmb250LXNpemUtYmFzZSkgKiAxNikpICogMWVtKSAhaW1wb3J0YW50OyB9XG5cbi5mb250LXdlaWdodC1zZW1pYm9sZCAgeyBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXNlbWlib2xkICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXRyYW5zZm9ybS1ub25lICAgeyB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LXNhbnMtc2VyaWYgICAgICAgeyBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWltcG9ydGFudDsgfVxuLnRleHQtc2VyaWYgICAgICAgICAgICB7IGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2VyaWYgIWltcG9ydGFudDsgfVxuXG4uY3Vyc29yLXBvaW50ZXIgICAgICAgIHsgY3Vyc29yOiBwb2ludGVyICFpbXBvcnRhbnQ7IH1cbi5jdXJzb3ItbW92ZSB7XG4gIGN1cnNvcjogbW92ZSAhaW1wb3J0YW50OyAvLyBGYWxsYmFja1xuICBjdXJzb3I6IGdyYWIgIWltcG9ydGFudDtcbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBMYXlvdXQgY29udGFpbmVyc1xuXG4uY29udGFpbmVyLXAteCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRjb250YWluZXItcGFkZGluZy14LXNtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogJGNvbnRhaW5lci1wYWRkaW5nLXgtc20gIWltcG9ydGFudDtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgcGFkZGluZy1yaWdodDogJGNvbnRhaW5lci1wYWRkaW5nLXggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6ICRjb250YWluZXItcGFkZGluZy14ICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5jb250YWluZXItbS1ueCB7XG4gIG1hcmdpbi1yaWdodDogLSRjb250YWluZXItcGFkZGluZy14LXNtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1sZWZ0OiAtJGNvbnRhaW5lci1wYWRkaW5nLXgtc20gIWltcG9ydGFudDtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtJGNvbnRhaW5lci1wYWRkaW5nLXggIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogLSRjb250YWluZXItcGFkZGluZy14ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmNvbnRhaW5lci1wLXkge1xuICAmOm5vdChbY2xhc3NePVwicHQtXCJdKTpub3QoW2NsYXNzKj1cIiBwdC1cIl0pIHtcbiAgICBwYWRkaW5nLXRvcDogJGNvbnRhaW5lci1wYWRkaW5nLXkgIWltcG9ydGFudDtcbiAgfVxuICAmOm5vdChbY2xhc3NePVwicGItXCJdKTpub3QoW2NsYXNzKj1cIiBwYi1cIl0pIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogJGNvbnRhaW5lci1wYWRkaW5nLXkgIWltcG9ydGFudDtcbiAgfVxufVxuLmNvbnRhaW5lci1tLW55IHtcbiAgJjpub3QoW2NsYXNzXj1cIm10LVwiXSk6bm90KFtjbGFzcyo9XCIgbXQtXCJdKSB7XG4gICAgbWFyZ2luLXRvcDogLSRjb250YWluZXItcGFkZGluZy15ICFpbXBvcnRhbnQ7XG4gIH1cbiAgJjpub3QoW2NsYXNzXj1cIm1iLVwiXSk6bm90KFtjbGFzcyo9XCIgbWItXCJdKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogLSRjb250YWluZXItcGFkZGluZy15ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBUcmFuc2Zvcm1zXG5cbi5yb3RhdGUtOTAgeyB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7IH1cbi5yb3RhdGUtMTgwIHsgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgfVxuLnJvdGF0ZS0yNzAgeyB0cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpOyB9XG4ucm90YXRlLS05MCB7IHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7IH1cbi5yb3RhdGUtLTE4MCB7IHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpOyB9XG4ucm90YXRlLS0yNzAgeyB0cmFuc2Zvcm06IHJvdGF0ZSgtMjcwZGVnKTsgfVxuLnJvdGF0ZS0wIHsgdHJhbnNmb3JtOiByb3RhdGUoMGRlZykgIWltcG9ydGFudDsgfVxuXG4uc2NhbGVYLS0xIHsgdHJhbnNmb3JtOiBzY2FsZVgoLTEpOyB9XG4uc2NhbGVZLS0xIHsgdHJhbnNmb3JtOiBzY2FsZVkoLTEpOyB9XG5cbkBpbmNsdWRlIHJ0bC1vbmx5IHtcbiAgLnJvdGF0ZS05MCB7IHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7IH1cbiAgLnJvdGF0ZS0xODAgeyB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTsgfVxuICAucm90YXRlLTI3MCB7IHRyYW5zZm9ybTogcm90YXRlKC0yNzBkZWcpOyB9XG4gIC5yb3RhdGUtLTkwIHsgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpOyB9XG4gIC5yb3RhdGUtLTE4MCB7IHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IH1cbiAgLnJvdGF0ZS0tMjcwIHsgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTsgfVxuXG4gIC5zY2FsZVgtLTEgeyB0cmFuc2Zvcm06IHNjYWxlWCgxKTsgfVxuICAuc2NhbGVZLS0xIHsgdHJhbnNmb3JtOiBzY2FsZVkoMSk7IH1cblxuICAuc2NhbGVYLS0xLXJ0bCB7IHRyYW5zZm9ybTogc2NhbGVYKC0xKTsgfVxuICAuc2NhbGVZLS0xLXJ0bCB7IHRyYW5zZm9ybTogc2NhbGVZKC0xKTsgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEJvcmRlcmVkIHJvd3NcblxuLnJvdy1ib3JkZXJlZCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgID4gLmNvbCxcbiAgID4gW2NsYXNzXj1cImNvbC1cIl0sXG4gICA+IFtjbGFzcyo9XCIgY29sLVwiXSxcbiAgID4gW2NsYXNzXj1cImNvbCBcIl0sXG4gICA+IFtjbGFzcyo9XCIgY29sIFwiXSxcbiAgID4gW2NsYXNzJD1cIiBjb2xcIl0sXG4gICA+IFtjbGFzcz1cImNvbFwiXSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctdG9wOiAxcHg7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAtMXB4O1xuICAgICAgbGVmdDogMDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRib3JkZXJlZC1yb3ctYm9yZGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAtMXB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGJvcmRlcmVkLXJvdy1ib3JkZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgJi5yb3ctYm9yZGVyLWxpZ2h0IHtcbiAgICAgPiAuY29sLFxuICAgICA+IFtjbGFzc149XCJjb2wtXCJdLFxuICAgICA+IFtjbGFzcyo9XCIgY29sLVwiXSxcbiAgICAgPiBbY2xhc3NePVwiY29sIFwiXSxcbiAgICAgPiBbY2xhc3MqPVwiIGNvbCBcIl0sXG4gICAgID4gW2NsYXNzJD1cIiBjb2xcIl0sXG4gICAgID4gW2NsYXNzPVwiY29sXCJdIHtcbiAgICAgICY6OmJlZm9yZSxcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkZ3JheS0xMDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIHJ0bC1vbmx5IHtcbiAgLnJvdy1ib3JkZXJlZCA+IC5jb2w6OmFmdGVyLFxuICAucm93LWJvcmRlcmVkID4gW2NsYXNzXj1cImNvbC1cIl06OmFmdGVyLFxuICAucm93LWJvcmRlcmVkID4gW2NsYXNzKj1cIiBjb2wtXCJdOjphZnRlcixcbiAgLnJvdy1ib3JkZXJlZCA+IFtjbGFzc149XCJjb2wgXCJdOjphZnRlcixcbiAgLnJvdy1ib3JkZXJlZCA+IFtjbGFzcyo9XCIgY29sIFwiXTo6YWZ0ZXIsXG4gIC5yb3ctYm9yZGVyZWQgPiBbY2xhc3MkPVwiIGNvbFwiXTo6YWZ0ZXIsXG4gIC5yb3ctYm9yZGVyZWQgPiBbY2xhc3M9XCJjb2xcIl06OmFmdGVyIHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAtMXB4O1xuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogV2lkdGhcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gc2xpY2UtbGlzdChtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cyksIDIpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgIC53I3skaW5maXh9LTEwMCB7IHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbiAgICAudyN7JGluZml4fS1hdXRvIHsgd2lkdGg6IGF1dG8gIWltcG9ydGFudDsgfVxuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogVGFibGUgY2VsbFxuXG4uY2VsbC1maXQge1xuICB3aWR0aDogLjElO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEZsZXhcblxuLmZsZXgtdHJ1bmNhdGUgIHsgbWluLXdpZHRoOiAwICFpbXBvcnRhbnQ7IH1cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgIC5mbGV4LWJhc2lzI3skaW5maXh9LTEwMCB7IGZsZXgtYmFzaXM6IDEwMCUgIWltcG9ydGFudDsgfVxuICAgIC5mbGV4LWJhc2lzI3skaW5maXh9LWF1dG8geyBmbGV4LWJhc2lzOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG4vLyBJRSBmaXhcbi5kLWZsZXgsXG4uZC1pbmxpbmUtZmxleCxcbi5tZWRpYSxcbi5tZWRpYSA+IDpub3QoLm1lZGlhLWJvZHkpLFxuLmp1bWJvdHJvbixcbi5jYXJkIHtcbiAgZmxleC1zaHJpbms6IDE7XG59XG4vLyBGaXggSUUgcGFyZW50IGNvbnRhaW5lciBoZWlnaHQgYnVnIHdoZW4gY29udGFpbmluZyBpbWFnZSB3aXRoIGZsdWlkIHdpZHRoXG4uaWUtbWgtMSB7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBUZXh0IGNvbG9yXG5cbi50ZXh0LWJvZHlbaHJlZl06aG92ZXIge1xuICBjb2xvcjogJGxpbmstaG92ZXItY29sb3IgIWltcG9ydGFudDtcbn1cblxuLnRleHQtbXV0ZWRbaHJlZl0ge1xuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7IGNvbG9yOiAkdGV4dC1tdXRlZC1ob3ZlciAhaW1wb3J0YW50OyB9XG59XG5cbi50ZXh0LWxpZ2h0IHtcbiAgY29sb3I6ICR0ZXh0LWxpZ2h0ICFpbXBvcnRhbnQ7XG5cbiAgJltocmVmXSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMgeyBjb2xvcjogJHRleHQtbXV0ZWQtaG92ZXIgIWltcG9ydGFudDsgfVxuICB9XG59XG5cbi50ZXh0LWxpZ2h0ZXIge1xuICBjb2xvcjogJHRleHQtbGlnaHRlciAhaW1wb3J0YW50O1xuXG4gICZbaHJlZl0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHsgY29sb3I6ICR0ZXh0LW11dGVkLWhvdmVyICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG4udGV4dC1saWdodGVzdCB7XG4gIGNvbG9yOiAkdGV4dC1saWdodGVzdCAhaW1wb3J0YW50O1xuXG4gICZbaHJlZl0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHsgY29sb3I6ICR0ZXh0LW11dGVkLWhvdmVyICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogQmFja2dyb3VuZCBjb2xvclxuXG4uYmctZGFyayB7IGJhY2tncm91bmQtY29sb3I6ICRncmF5LTkwMCAhaW1wb3J0YW50OyB9XG5hLmJnLWRhcmsge1xuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7IGJhY2tncm91bmQtY29sb3I6ICRncmF5LTkwMCAhaW1wb3J0YW50OyB9XG59XG5cbi5iZy1saWdodCB7IGJhY2tncm91bmQtY29sb3I6ICRncmF5LTEwMCAhaW1wb3J0YW50OyB9XG5hLmJnLWxpZ2h0IHtcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS0yMDAgIWltcG9ydGFudDsgfVxufVxuXG4uYmctbGlnaHRlciB7IGJhY2tncm91bmQtY29sb3I6ICRncmF5LTUwICFpbXBvcnRhbnQ7IH1cbmEuYmctbGlnaHRlciB7XG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHsgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktMTAwICFpbXBvcnRhbnQ7IH1cbn1cblxuLmJnLWxpZ2h0ZXN0IHsgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktMjUgIWltcG9ydGFudDsgfVxuYS5iZy1saWdodGVzdCB7XG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHsgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktNTAgIWltcG9ydGFudDsgfVxufVxuXG4uYmctdHJhbnNwYXJlbnQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogQm9yZGVyIGNvbG9yXG5cbi5ib3JkZXItbGlnaHQge1xuICBib3JkZXItY29sb3I6ICRncmF5LTEwMCAhaW1wb3J0YW50O1xufVxuXG4uYm9yZGVyLXRyYW5zcGFyZW50IHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFJUTFxuXG5AaW5jbHVkZSBydGwtb25seSB7XG4gIC8vIEJvcmRlclxuICAuYm9yZGVyICAgICAgICAgeyBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4gIC5ib3JkZXItdG9wICAgICB7IGJvcmRlci10b3A6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4gIC5ib3JkZXItcmlnaHQgICB7IGJvcmRlci1sZWZ0OiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuICAuYm9yZGVyLWJvdHRvbSAgeyBib3JkZXItYm90dG9tOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuICAuYm9yZGVyLWxlZnQgICAgeyBib3JkZXItcmlnaHQ6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvciAhaW1wb3J0YW50OyB9XG4gIC5ib3JkZXItMCAgICAgICAgeyBib3JkZXI6IDAgIWltcG9ydGFudDsgfVxuICAuYm9yZGVyLXRvcC0wICAgIHsgYm9yZGVyLXRvcDogMCAhaW1wb3J0YW50OyB9XG4gIC5ib3JkZXItcmlnaHQtMCAgeyBib3JkZXItbGVmdDogMCAhaW1wb3J0YW50OyB9XG4gIC5ib3JkZXItYm90dG9tLTAgeyBib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbiAgLmJvcmRlci1sZWZ0LTAgICB7IGJvcmRlci1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAgIC5ib3JkZXItI3skY29sb3J9IHsgYm9yZGVyLWNvbG9yOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICB9XG4gIC5ib3JkZXItd2hpdGUgeyBib3JkZXItY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50OyB9XG5cbiAgLy8gQm9yZGVyLXJhZGl1c1xuICAucm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgfVxuICAucm91bmRlZC10b3Age1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnJvdW5kZWQtcmlnaHQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgfVxuICAucm91bmRlZC1ib3R0b20ge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnJvdW5kZWQtbGVmdCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnJvdW5kZWQtY2lyY2xlIHsgYm9yZGVyLXJhZGl1czogNTAlICFpbXBvcnRhbnQ7IH1cbiAgLnJvdW5kZWQtcGlsbCB7IGJvcmRlci1yYWRpdXM6ICRyb3VuZGVkLXBpbGwgIWltcG9ydGFudDsgfVxuICAucm91bmRlZC0wIHsgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50OyB9XG5cbiAgLy8gRmxvYXRcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgICAgLmZsb2F0I3skaW5maXh9LWxlZnQgIHsgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgICAgIC5mbG9hdCN7JGluZml4fS1yaWdodCB7IGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIGFsaWdubWVudFxuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgICAudGV4dCN7JGluZml4fS1sZWZ0ICAgeyB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgICAudGV4dCN7JGluZml4fS1yaWdodCAgeyB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cblxuICAvLyBNYXJnaW4gYW5kIFBhZGRpbmdcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgICAgQGVhY2ggJHByb3AsICRhYmJyZXYgaW4gKG1hcmdpbjogbSwgcGFkZGluZzogcCkge1xuICAgICAgICBAZWFjaCAkc2l6ZSwgJGxlbmd0aCBpbiAkc3BhY2VycyB7XG4gICAgICAgICAgLiN7JGFiYnJldn0jeyRpbmZpeH0tI3skc2l6ZX0geyAjeyRwcm9wfTogJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gICAgICAgICAgLiN7JGFiYnJldn10I3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAgIC4jeyRhYmJyZXZ9eSN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgICAjeyRwcm9wfS10b3A6ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLiN7JGFiYnJldn1yI3skaW5maXh9LSN7JHNpemV9LFxuICAgICAgICAgIC4jeyRhYmJyZXZ9eCN7JGluZml4fS0jeyRzaXplfSB7XG4gICAgICAgICAgICAjeyRwcm9wfS1sZWZ0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICAgIC4jeyRhYmJyZXZ9YiN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgICAuI3skYWJicmV2fXkjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICAgI3skcHJvcH0tYm90dG9tOiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICAgIC4jeyRhYmJyZXZ9bCN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgICAuI3skYWJicmV2fXgjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICAgI3skcHJvcH0tcmlnaHQ6ICRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gTmVnYXRpdmUgbWFyZ2lucyAoZS5nLiwgd2hlcmUgYC5tYi1uMWAgaXMgbmVnYXRpdmUgdmVyc2lvbiBvZiBgLm1iLTFgKVxuICAgICAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNwYWNlcnMge1xuICAgICAgICBAaWYgJHNpemUgIT0gMCB7XG4gICAgICAgICAgLm0jeyRpbmZpeH0tbiN7JHNpemV9IHsgbWFyZ2luOiAtJGxlbmd0aCAhaW1wb3J0YW50OyB9XG4gICAgICAgICAgLm10I3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgICAubXkjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5tciN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgICAgLm14I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLSRsZW5ndGggIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLm1iI3skaW5maXh9LW4jeyRzaXplfSxcbiAgICAgICAgICAubXkjeyRpbmZpeH0tbiN7JHNpemV9IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5tbCN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgICAgLm14I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIFNvbWUgc3BlY2lhbCBtYXJnaW4gdXRpbHNcbiAgICAgIC5tI3skaW5maXh9LWF1dG8geyBtYXJnaW46IGF1dG8gIWltcG9ydGFudDsgfVxuICAgICAgLm10I3skaW5maXh9LWF1dG8sXG4gICAgICAubXkjeyRpbmZpeH0tYXV0byB7XG4gICAgICAgIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIC5tciN7JGluZml4fS1hdXRvLFxuICAgICAgLm14I3skaW5maXh9LWF1dG8ge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgLm1iI3skaW5maXh9LWF1dG8sXG4gICAgICAubXkjeyRpbmZpeH0tYXV0byB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIC5tbCN7JGluZml4fS1hdXRvLFxuICAgICAgLm14I3skaW5maXh9LWF1dG8ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEJhc2Vcbi8vXG5cbmJvZHkge1xuICAtbW96LWZvbnQtZmVhdHVyZS1zZXR0aW5nczogXCJsaWdhXCIgb247XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAgIGZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICBidXR0b24ubGlzdC1ncm91cC1pdGVtIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG59XG5cbkBpZiAkbWF0ZXJpYWwtc3R5bGUge1xuICAud2F2ZXMtcmlwcGxlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIElFIEZpeGVzXG5cbkBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gIC8vIEZpeCBJRSBwYXJlbnQgY29udGFpbmVyIGhlaWdodCBidWcgd2hlbiBjb250YWluaW5nIGltYWdlIHdpdGggZmx1aWQgd2lkdGhcbiAgLmNhcmQsXG4gIC5jYXJkLWJvZHksXG4gIC5tZWRpYSxcbiAgLmZsZXgtY29sdW1uLFxuICAudGFiLWNvbnRlbnQge1xuICAgIG1pbi1oZWlnaHQ6IDFweDtcbiAgfVxuXG4gIGltZyB7XG4gICAgbWluLWhlaWdodDogMXB4O1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIENvbnRhaW5lcnNcblxuLmNvbnRhaW5lcixcbi5jb250YWluZXItZmx1aWQge1xuICBwYWRkaW5nLXJpZ2h0OiAkY29udGFpbmVyLXBhZGRpbmcteC1zbTtcbiAgcGFkZGluZy1sZWZ0OiAkY29udGFpbmVyLXBhZGRpbmcteC1zbTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgcGFkZGluZy1yaWdodDogJGNvbnRhaW5lci1wYWRkaW5nLXg7XG4gICAgcGFkZGluZy1sZWZ0OiAkY29udGFpbmVyLXBhZGRpbmcteDtcbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFRodW1ibmFpbHNcblxuLmltZy10aHVtYm5haWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uaW1nLXRodW1ibmFpbCBpbWcge1xuICB6LWluZGV4OiAxO1xufVxuXG4uaW1nLXRodW1ibmFpbC1jb250ZW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB6LWluZGV4OiAzO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLWluLW91dDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG5cbiAgLmltZy10aHVtYm5haWw6aG92ZXIgJixcbiAgLmltZy10aHVtYm5haWw6Zm9jdXMgJiB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4vLyBPdmVybGF5IGVmZmVjdFxuLmltZy10aHVtYm5haWwtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLWluLW91dDtcblxuICAuaW1nLXRodW1ibmFpbDpub3QoOmhvdmVyKTpub3QoOmZvY3VzKSAmIHtcbiAgICBvcGFjaXR5OiAwICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmltZy10aHVtYm5haWwtc2hhZG93IHtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAuMnM7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIGJveC1zaGFkb3c6IDAgNXB4IDIwcHggcmdiYSgkYmxhY2ssIC40KTtcbiAgfVxufVxuXG4vLyBab29tLWluIGVmZmVjdFxuLmltZy10aHVtYm5haWwtem9vbS1pbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgaW1nIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCk7XG4gIH1cblxuICAuaW1nLXRodW1ibmFpbC1jb250ZW50IHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSguNik7XG4gIH1cblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgaW1nIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICB9XG5cbiAgICAuaW1nLXRodW1ibmFpbC1jb250ZW50IHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHNjYWxlKDEpO1xuICAgIH1cbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIE1hdGVyaWFsIGFuaW1hdGlvbnNcblxuQGlmIG5vdCAkbWF0ZXJpYWwtc3R5bGUge1xuICBAaW5jbHVkZSBrZXlmcmFtZXMoZHJvcGRvd25BbmltYXRpb24pIHtcbiAgICAwJSB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG59IEBlbHNlIHtcbiAgQGluY2x1ZGUga2V5ZnJhbWVzKGRyb3Bkb3duQW5pbWF0aW9uKSB7XG4gICAgMCUge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgfVxuICAgIDgwJSB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGtleWZyYW1lcyh0b3BUb29sdGlwQW5pbWF0aW9uKSB7XG4gICAgMCUge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzcHgpO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGtleWZyYW1lcyhib3R0b21Ub29sdGlwQW5pbWF0aW9uKSB7XG4gICAgMCUge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtM3B4KTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBrZXlmcmFtZXMobGVmdFRvb2x0aXBBbmltYXRpb24pIHtcbiAgICAwJSB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUga2V5ZnJhbWVzKHJpZ2h0VG9vbHRpcEFuaW1hdGlvbikge1xuICAgIDAlIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBSVExcblxuQGlmICRydGwtc3VwcG9ydCB7XG4gIFtkaXI9cnRsXSBib2R5IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBkaXJlY3Rpb246IHJ0bDtcbiAgfVxufVxuIiwiLy8gVGFibGVzXG4vL1xuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgICBAaWYgJGNvbG9yICE9IHByaW1hcnkgYW5kICRjb2xvciAhPSBsaWdodCB7XG4gICAgICAgIEBpbmNsdWRlIGFwcHdvcmstdGFibGUtcm93LXZhcmlhbnQoJy50YWJsZS0jeyRjb2xvcn0nLCAkdmFsdWUpO1xuICAgIH1cbn1cblxuLnRhYmxlLnRhYmxlLWZpeGVkIHtcbiAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xufVxuXG4udGFibGUgdGgge1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaWJvbGQ7XG59XG5cbi50YWJsZSA+IHRyLFxuI2Jvb3RzdHJhcC10YWJsZS1teXRhc2tzID4gdGJvZHkgPiB0ciB7XG4gICAgY3Vyc29yOiBwb2ludGVyICFpbXBvcnRhbnQ7XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogQWN0aXZlXG5cbi50YWJsZS1hY3RpdmUsXG4udGFibGUtYWN0aXZlID4gdGgsXG4udGFibGUtYWN0aXZlID4gdGQge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgkYmxhY2ssIC4wMzUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1hY3RpdmUtYmc7XG59XG5cbi50YWJsZS1ob3ZlciAudGFibGUtYWN0aXZlOmhvdmVyLFxuLnRhYmxlLWhvdmVyIC50YWJsZS1hY3RpdmU6aG92ZXIgPiB0ZCxcbi50YWJsZS1ob3ZlciAudGFibGUtYWN0aXZlOmhvdmVyID4gdGgge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEtdG8taGV4KHJnYmEoJHRhYmxlLWFjdGl2ZS1iZywgLjk5KSwgIzAwMCk7XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogV2l0aGluIGNhcmRcblxuLmNhcmQtdGFibGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLFxuLm5hdi10YWJzLXRvcCxcbi5uYXYtdGFicy1yaWdodCxcbi5uYXYtdGFicy1ib3R0b20sXG4ubmF2LXRhYnMtbGVmdCB7XG4gICAgLnRhYmxlOm5vdCgudGFibGUtZGFyayksXG4gICAgLnRhYmxlOm5vdCgudGFibGUtZGFyaykgdGhlYWQ6bm90KC50aGVhZC1kYXJrKSB0aCxcbiAgICAudGFibGU6bm90KC50YWJsZS1kYXJrKSB0ZCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogcmdiYS10by1oZXgoJGNhcmQtaW5uZXItYm9yZGVyLWNvbG9yKTtcbiAgICB9XG59XG5cbi5jYXJkLXRhYmxlID4gdGhlYWQ6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCxcbi5jYXJkLXRhYmxlID4gdGJvZHk6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCxcbi5jYXJkLXRhYmxlID4gdGZvb3Q6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCB7XG4gICAgPiB0ZCxcbiAgICA+IHRoIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICB9XG59XG5cbkBpbmNsdWRlIGx0ci1vbmx5IHtcbiAgICAuY2FyZC10YWJsZSA+IHRoZWFkID4gdHIsXG4gICAgLmNhcmQtdGFibGUgPiB0Ym9keSA+IHRyLFxuICAgIC5jYXJkLXRhYmxlID4gdGZvb3QgPiB0ciB7XG4gICAgICAgID4gdGQsXG4gICAgICAgID4gdGgge1xuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkY2FyZC1zcGFjZXIteDtcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkY2FyZC1zcGFjZXIteDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLy8gQ29uZGVuY2VkXG4gICAgLmNhcmQtY29uZGVuY2VkIC5jYXJkLXRhYmxlID4gdGhlYWQgPiB0cixcbiAgICAuY2FyZC1jb25kZW5jZWQgLmNhcmQtdGFibGUgPiB0Ym9keSA+IHRyLFxuICAgIC5jYXJkLWNvbmRlbmNlZCAuY2FyZC10YWJsZSA+IHRmb290ID4gdHIge1xuICAgICAgICA+IHRkLFxuICAgICAgICA+IHRoIHtcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJGNhcmQtc3BhY2VyLXgtc207XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJGNhcmQtc3BhY2VyLXgtc207XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AaW5jbHVkZSBydGwtb25seSB7XG4gICAgLmNhcmQtdGFibGUgPiB0aGVhZCA+IHRyLFxuICAgIC5jYXJkLXRhYmxlID4gdGJvZHkgPiB0cixcbiAgICAuY2FyZC10YWJsZSA+IHRmb290ID4gdHIge1xuICAgICAgICA+IHRkLFxuICAgICAgICA+IHRoIHtcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRjYXJkLXNwYWNlci14O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRjYXJkLXNwYWNlci14O1xuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC8vIENvbmRlbmNlZFxuICAgIC5jYXJkLWNvbmRlbmNlZCAuY2FyZC10YWJsZSA+IHRoZWFkID4gdHIsXG4gICAgLmNhcmQtY29uZGVuY2VkIC5jYXJkLXRhYmxlID4gdGJvZHkgPiB0cixcbiAgICAuY2FyZC1jb25kZW5jZWQgLmNhcmQtdGFibGUgPiB0Zm9vdCA+IHRyIHtcbiAgICAgICAgPiB0ZCxcbiAgICAgICAgPiB0aCB7XG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkY2FyZC1zcGFjZXIteDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkY2FyZC1zcGFjZXIteDtcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vIEJ1dHRvbnNcbi8vXG5cbi5idG4ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICB9XG59XG5cbkBpZiAkbWF0ZXJpYWwtc3R5bGUge1xuICAuYnRuIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG59XG5cbi8vIEJhYmdlIHdpdGhpbiBidXR0b25cbi5idG4gLmJhZGdlIHtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYnRuLXRyYW5zaXRpb24pO1xufVxuXG5sYWJlbC5idG4ge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEFsdGVybmF0ZSBidXR0b25zXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaWYgJGNvbG9yICE9IHByaW1hcnkge1xuICAgIEBpZiAkbWF0ZXJpYWwtc3R5bGUge1xuICAgICAgQGluY2x1ZGUgYXBwd29yay1tYXRlcmlhbC1idXR0b24tdmFyaWFudCgnLmJ0bi0jeyRjb2xvcn0nLCAkdmFsdWUpO1xuICAgICAgQGluY2x1ZGUgYXBwd29yay1tYXRlcmlhbC1idXR0b24tb3V0bGluZS12YXJpYW50KCcuYnRuLW91dGxpbmUtI3skY29sb3J9JywgJHZhbHVlKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIGFwcHdvcmstYnV0dG9uLXZhcmlhbnQoJy5idG4tI3skY29sb3J9JywgJHZhbHVlKTtcbiAgICAgIEBpbmNsdWRlIGFwcHdvcmstYnV0dG9uLW91dGxpbmUtdmFyaWFudCgnLmJ0bi1vdXRsaW5lLSN7JGNvbG9yfScsICR2YWx1ZSk7XG4gICAgfVxuICB9XG59XG5cbi8vIERlZmF1bHQgYnV0dG9uXG5AaWYgJG1hdGVyaWFsLXN0eWxlIHtcbiAgQGluY2x1ZGUgYXBwd29yay1tYXRlcmlhbC1idXR0b24tdmFyaWFudCgnLmJ0bi1kZWZhdWx0JywgJGJ0bi1kZWZhdWx0LWJnLCAkYnRuLWRlZmF1bHQtY29sb3IsICRidG4tZGVmYXVsdC1jb2xvcik7XG4gIEBpbmNsdWRlIGFwcHdvcmstbWF0ZXJpYWwtYnV0dG9uLW91dGxpbmUtdmFyaWFudCgnLmJ0bi1vdXRsaW5lLWRlZmF1bHQnLCAkYnRuLWRlZmF1bHQtYm9yZGVyLCAkYnRuLWRlZmF1bHQtY29sb3IpO1xufSBAZWxzZSB7XG4gIEBpbmNsdWRlIGFwcHdvcmstYnV0dG9uLXZhcmlhbnQoJy5idG4tZGVmYXVsdCcsICRidG4tZGVmYXVsdC1iZywgJGJ0bi1kZWZhdWx0LWNvbG9yLCAkYnRuLWRlZmF1bHQtYm9yZGVyKTtcbiAgQGluY2x1ZGUgYXBwd29yay1idXR0b24tb3V0bGluZS12YXJpYW50KCcuYnRuLW91dGxpbmUtZGVmYXVsdCcsICRidG4tZGVmYXVsdC1ib3JkZXIsICRidG4tZGVmYXVsdC1jb2xvcik7XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogU2l6ZXNcblxuLmJ0bi14bCB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LXhsLCAkYnRuLXBhZGRpbmcteC14bCwgJGJ0bi1mb250LXNpemUteGwsICRidG4tbGluZS1oZWlnaHQteGwsICRidG4tYm9yZGVyLXJhZGl1cy14bCk7XG59XG5cbi5idG4teHMge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteS14cywgJGJ0bi1wYWRkaW5nLXgteHMsICRidG4tZm9udC1zaXplLXhzLCAkYnRuLWxpbmUtaGVpZ2h0LXhzLCAkYnRuLWJvcmRlci1yYWRpdXMteHMpO1xufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIExpbmsgYnV0dG9uc1xuXG4uYnRuLmJ0bi1saW5rIHtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuXG4gIEBpZiAkbWF0ZXJpYWwtc3R5bGUge1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuXG4gICAgLndhdmVzLXJpcHBsZSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogSWNvbiBidXR0b25cblxuLmljb24tYnRuIHtcbiAgJGljb24tYnRuLXNpemU6ICAgICgkYnRuLWZvbnQtc2l6ZSAgICAqICRidG4tbGluZS1oZWlnaHQpICAgICsgKCRidG4tcGFkZGluZy15ICAgICogMik7XG4gICRpY29uLWJ0bi1zaXplLXhsOiAoJGJ0bi1mb250LXNpemUteGwgKiAkYnRuLWxpbmUtaGVpZ2h0LXhsKSArICgkYnRuLXBhZGRpbmcteS14bCAqIDIpO1xuICAkaWNvbi1idG4tc2l6ZS1sZzogKCRidG4tZm9udC1zaXplLWxnICogJGJ0bi1saW5lLWhlaWdodC1sZykgKyAoJGJ0bi1wYWRkaW5nLXktbGcgKiAyKTtcbiAgJGljb24tYnRuLXNpemUtc206ICgkYnRuLWZvbnQtc2l6ZS1zbSAqICRidG4tbGluZS1oZWlnaHQtc20pICsgKCRidG4tcGFkZGluZy15LXNtICogMik7XG4gICRpY29uLWJ0bi1zaXplLXhzOiAoJGJ0bi1mb250LXNpemUteHMgKiAkYnRuLWxpbmUtaGVpZ2h0LXhzKSArICgkYnRuLXBhZGRpbmcteS14cyAqIDIpO1xuICAkYm9yZGVycy13aWR0aDogICAgJGJ0bi1ib3JkZXItd2lkdGggKiAyO1xuXG4gIHdpZHRoOiBjYWxjKCN7JGljb24tYnRuLXNpemV9ICsgI3skYm9yZGVycy13aWR0aH0pO1xuICBwYWRkaW5nOiAwO1xuICBsaW5lLWhlaWdodDogJGljb24tYnRuLXNpemU7XG5cbiAgJi5idG4teGwge1xuICAgIHdpZHRoOiBjYWxjKCN7JGljb24tYnRuLXNpemUteGx9ICsgI3skYm9yZGVycy13aWR0aH0pO1xuICAgIGxpbmUtaGVpZ2h0OiAkaWNvbi1idG4tc2l6ZS14bDtcbiAgfVxuXG4gICYuYnRuLWxnIHtcbiAgICB3aWR0aDogY2FsYygjeyRpY29uLWJ0bi1zaXplLWxnfSArICN7JGJvcmRlcnMtd2lkdGh9KTtcbiAgICBsaW5lLWhlaWdodDogJGljb24tYnRuLXNpemUtbGc7XG4gIH1cblxuICAmLmJ0bi1zbSB7XG4gICAgd2lkdGg6IGNhbGMoI3skaWNvbi1idG4tc2l6ZS1zbX0gKyAjeyRib3JkZXJzLXdpZHRofSk7XG4gICAgbGluZS1oZWlnaHQ6ICRpY29uLWJ0bi1zaXplLXNtO1xuICB9XG5cbiAgJi5idG4teHMge1xuICAgIHdpZHRoOiBjYWxjKCN7JGljb24tYnRuLXNpemUteHN9ICsgI3skYm9yZGVycy13aWR0aH0pO1xuICAgIGxpbmUtaGVpZ2h0OiAkaWNvbi1idG4tc2l6ZS14cztcbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFdpdGhvdXQgYm9yZGVyXG5cbi5idG4uYm9yZGVybGVzcyB7XG4gICY6bm90KC5hY3RpdmUpOm5vdCg6YWN0aXZlKTpub3QoOmhvdmVyKTpub3QoOmZvY3VzKSxcbiAgOm5vdCguc2hvdykgPiAmLmRyb3Bkb3duLXRvZ2dsZTpub3QoOmhvdmVyKTpub3QoOmZvY3VzKSB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG59XG4iLCIvLyBCdXR0b24gZ3JvdXBzXG4vL1xuXG5AaWYgbm90ICRtYXRlcmlhbC1zdHlsZSB7XG4gIDpub3QoLmJ0bi1ncm91cCk6bm90KC5pbnB1dC1ncm91cC1wcmVwZW5kKTpub3QoLmlucHV0LWdyb3VwLWFwcGVuZCk+LmJ0bi1ncm91cD4uYnRuOm5vdCguYnRuLWRlZmF1bHQpOm5vdChbY2xhc3MqPVwiYnRuLW91dGxpbmUtXCJdKTpmaXJzdC1jaGlsZCxcbiAgLmJ0bi1ncm91cD4uYnRuLWdyb3VwOmZpcnN0LWNoaWxkPi5idG46bm90KC5idG4tZGVmYXVsdCk6bm90KFtjbGFzcyo9XCJidG4tb3V0bGluZS1cIl0pOmZpcnN0LWNoaWxkLFxuICAuaW5wdXQtZ3JvdXAtcHJlcGVuZD4uYnRuOm5vdCguYnRuLWRlZmF1bHQpOm5vdChbY2xhc3MqPVwiYnRuLW91dGxpbmUtXCJdKTpmaXJzdC1jaGlsZCxcbiAgLmlucHV0LWdyb3VwLWFwcGVuZD4uYnRuOm5vdCguYnRuLWRlZmF1bHQpOm5vdChbY2xhc3MqPVwiYnRuLW91dGxpbmUtXCJdKTpmaXJzdC1jaGlsZCxcbiAgLmlucHV0LWdyb3VwLXByZXBlbmQ+LmJ0bi1ncm91cDpmaXJzdC1jaGlsZD4uYnRuOm5vdCguYnRuLWRlZmF1bHQpOm5vdChbY2xhc3MqPVwiYnRuLW91dGxpbmUtXCJdKTpmaXJzdC1jaGlsZCxcbiAgLmlucHV0LWdyb3VwLWFwcGVuZD4uYnRuLWdyb3VwOmZpcnN0LWNoaWxkPi5idG46bm90KC5idG4tZGVmYXVsdCk6bm90KFtjbGFzcyo9XCJidG4tb3V0bGluZS1cIl0pOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBsdHItc3R5bGUge1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICA6bm90KC5idG4tZ3JvdXApOm5vdCguaW5wdXQtZ3JvdXAtcHJlcGVuZCk6bm90KC5pbnB1dC1ncm91cC1hcHBlbmQpPi5idG4tZ3JvdXA+LmJ0bjpub3QoLmJ0bi1kZWZhdWx0KTpub3QoW2NsYXNzKj1cImJ0bi1vdXRsaW5lLVwiXSk6bGFzdC1vZi10eXBlLFxuICAuYnRuLWdyb3VwPi5idG4tZ3JvdXA6bGFzdC1jaGlsZD4uYnRuOm5vdCguYnRuLWRlZmF1bHQpOm5vdChbY2xhc3MqPVwiYnRuLW91dGxpbmUtXCJdKTpsYXN0LW9mLXR5cGUsXG4gIC5pbnB1dC1ncm91cC1hcHBlbmQ+LmJ0bjpub3QoLmJ0bi1kZWZhdWx0KTpub3QoW2NsYXNzKj1cImJ0bi1vdXRsaW5lLVwiXSk6bGFzdC1vZi10eXBlLFxuICAuaW5wdXQtZ3JvdXAtcHJlcGVuZD4uYnRuOm5vdCguYnRuLWRlZmF1bHQpOm5vdChbY2xhc3MqPVwiYnRuLW91dGxpbmUtXCJdKTpsYXN0LW9mLXR5cGUsXG4gIC5pbnB1dC1ncm91cC1hcHBlbmQ+LmJ0bi1ncm91cDpsYXN0LWNoaWxkPi5idG46bm90KC5idG4tZGVmYXVsdCk6bm90KFtjbGFzcyo9XCJidG4tb3V0bGluZS1cIl0pOmxhc3Qtb2YtdHlwZSxcbiAgLmlucHV0LWdyb3VwLXByZXBlbmQ+LmJ0bi1ncm91cDpsYXN0LWNoaWxkPi5idG46bm90KC5idG4tZGVmYXVsdCk6bm90KFtjbGFzcyo9XCJidG4tb3V0bGluZS1cIl0pOmxhc3Qtb2YtdHlwZSB7XG4gICAgQGluY2x1ZGUgbHRyLXN0eWxlIHtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICAgIEBpbmNsdWRlIHJ0bC1zdHlsZSB7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogU2l6aW5nXG5cbi5idG4tZ3JvdXAteHMgPiAuYnRuIHtcbiAgQGV4dGVuZCAuYnRuLXhzO1xufVxuXG4uYnRuLWdyb3VwLXhsID4gLmJ0biB7XG4gIEBleHRlbmQgLmJ0bi14bDtcbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBTcGxpdCBidXR0b25cblxuLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCxcbi5idG4tbGcgKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0LFxuLmJ0bi1ncm91cC1sZyA+IC5idG4gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0LFxuLmlucHV0LWdyb3VwLWxnIC5idG4gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0LFxuLmJ0bi14bCArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQsXG4uYnRuLWdyb3VwLXhsID4gLmJ0biArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAuN2VtO1xuICBwYWRkaW5nLWxlZnQ6IC43ZW07XG59XG5cbi5idG4tc20gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0LFxuLmJ0bi1ncm91cC1zbSA+IC5idG4gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0LFxuLmlucHV0LWdyb3VwLXNtIC5idG4gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogLjZlbTtcbiAgcGFkZGluZy1sZWZ0OiAuNmVtO1xufVxuXG4uYnRuLXhzICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCxcbi5idG4tZ3JvdXAteHMgPiAuYnRuICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6IC41ZW07XG4gIHBhZGRpbmctbGVmdDogLjVlbTtcbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBSVExcblxuQGluY2x1ZGUgcnRsLW9ubHkge1xuICAuYnRuLWdyb3VwIC5idG5bY2xhc3NdIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIC5idG4tZ3JvdXAgLmJ0bi14c1tjbGFzc10sXG4gIC5idG4tZ3JvdXAteHMgLmJ0bltjbGFzc10ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMteHMpO1xuICB9XG5cbiAgLmJ0bi1ncm91cCAuYnRuLXNtW2NsYXNzXSxcbiAgLmJ0bi1ncm91cC1zbSAuYnRuW2NsYXNzXSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1zbSk7XG4gIH1cblxuICAuYnRuLWdyb3VwIC5idG4tbGdbY2xhc3NdLFxuICAuYnRuLWdyb3VwLWxnIC5idG5bY2xhc3NdIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLWxnKTtcbiAgfVxuXG4gIC5idG4tZ3JvdXAgLmJ0bi14bFtjbGFzc10sXG4gIC5idG4tZ3JvdXAteGwgLmJ0bltjbGFzc10ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMteGwpO1xuICB9XG5cbiAgLmJ0bi1ncm91cCB7XG4gICAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogLSRidG4tYm9yZGVyLXdpZHRoO1xuICAgIH1cblxuICAgID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbiAgICA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuICAgIH1cblxuICAgID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gICAgfVxuICB9XG5cbiAgLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gICAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuICAgID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgICB9XG5cbiAgICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gICAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEJhZGdlc1xuLy9cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpZiAkY29sb3IgIT0gcHJpbWFyeSBhbmQgJGNvbG9yICE9IGxpZ2h0IHtcbiAgICBAaW5jbHVkZSBhcHB3b3JrLWJhZGdlLXZhcmlhbnQoJy5iYWRnZS0jeyRjb2xvcn0nLCAkdmFsdWUpO1xuICAgIEBpbmNsdWRlIGFwcHdvcmstYmFkZ2Utb3V0bGluZS12YXJpYW50KCcuYmFkZ2Utb3V0bGluZS0jeyRjb2xvcn0nLCAkdmFsdWUpO1xuICB9XG59XG5cbkBpbmNsdWRlIGFwcHdvcmstYmFkZ2UtdmFyaWFudCgnLmJhZGdlLWRlZmF1bHQnLCAkYmFkZ2UtZGVmYXVsdC1iZywgJGJvZHktY29sb3IpO1xuQGluY2x1ZGUgYXBwd29yay1iYWRnZS1vdXRsaW5lLXZhcmlhbnQoJy5iYWRnZS1vdXRsaW5lLWRlZmF1bHQnLCAkYmFkZ2UtZGVmYXVsdC1iZywgJGJhZGdlLW91dGxpbmUtZGVmYXVsdC1jb2xvcik7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogRG90c1xuXG4uYmFkZ2UuYmFkZ2UtZG90IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiAuNWVtO1xuICBoZWlnaHQ6IC41ZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBJbmRpY2F0b3JzXG5cbi5iYWRnZS5pbmRpY2F0b3Ige1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogYXV0bztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDI1JSk7XG5cbiAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MCUsIDI1JSk7XG4gIH1cblxuICAmOm5vdCguYmFkZ2UtZG90KSB7XG4gICAgcGFkZGluZzogMCAuMmVtO1xuICAgIGZvbnQtc2l6ZTogLjZlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yZW07XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTEwJSk7XG5cbiAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCAtMTAlKTtcbiAgICB9XG4gIH1cbn1cblxuQGlmICRtYXRlcmlhbC1zdHlsZSB7XG4gIC5idG4gLmJhZGdlLmluZGljYXRvcjpub3QoLmJhZGdlLWRvdCkge1xuICAgIGZvbnQtc2l6ZTogLjc1ZW07XG4gIH1cbn1cbiIsIi8vIERyb3Bkb3duc1xuLy9cblxuW2RhdGEtdHJpZ2dlcj1ob3Zlcl0ge1xuICBvdXRsaW5lOiAwO1xufVxuXG4uZHJvcGRvd24tbWVudSB7XG4gIG1hcmdpbjogJGRyb3Bkb3duLXNwYWNlciAwO1xuICBib3gtc2hhZG93OiAkZHJvcGRvd24tYm94LXNoYWRvdztcblxuICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG5cbiAgLy8gQW5pbWF0aW9uc1xuICBAaWYgbm90ICRtYXRlcmlhbC1zdHlsZSB7XG4gICAgYW5pbWF0aW9uOiBkcm9wZG93bkFuaW1hdGlvbiAuMXM7XG4gIH0gQGVsc2Uge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIGFuaW1hdGlvbjogZHJvcGRvd25BbmltYXRpb24gLjI1cztcblxuICAgICYuZHJvcGRvd24tbWVudS1yaWdodCxcbiAgICAmLmRyb3Bkb3duLW1lbnUtcmlnaHQgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIHJpZ2h0O1xuICAgIH1cblxuICAgIC5kcm9wdXAgJiB7XG4gICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gbGVmdDtcbiAgICB9XG5cbiAgICAuZHJvcHVwICYuZHJvcGRvd24tbWVudS1yaWdodCxcbiAgICAuZHJvcHVwICYuZHJvcGRvd24tbWVudS1yaWdodCAuZHJvcGRvd24tbWVudSB7XG4gICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gcmlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLm1lZ2EtZHJvcGRvd24gPiAmIHtcbiAgICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZHJvcGRvd24taXRlbSB7XG4gIGxpbmUtaGVpZ2h0OiAkZHJvcGRvd24tbGluay1saW5lLWhlaWdodDtcbn1cblxuLy8gQmFkZ2Ugd2l0aGluIGRyb3Bkb3duIG1lbnVcbi5kcm9wZG93bi1tZW51IC5iYWRnZVtjbGFzc149XCJmbG9hdC1cIl0sXG4uZHJvcGRvd24tbWVudSAuYmFkZ2VbY2xhc3MqPVwiIGZsb2F0LVwiXSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAuMDcxZW07XG59XG5cbkBpZiAkbWF0ZXJpYWwtc3R5bGUge1xuICAuZHJvcGRvd24taXRlbSxcbiAgLmRyb3Bkb3duLW1lbnUgPiBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAvLyBSaXBwbGVcbiAgICAud2F2ZXMtcmlwcGxlIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjEpO1xuICAgIH1cbiAgICAmLmFjdGl2ZSAud2F2ZXMtcmlwcGxlLFxuICAgICYuZGlzYWJsZWQgLndhdmVzLXJpcHBsZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4vLyBIaWRkZW4gZHJvcGRvd24gdG9nZ2xlIGFycm93XG4uZHJvcGRvd24tdG9nZ2xlLmhpZGUtYXJyb3csXG4uZHJvcGRvd24tdG9nZ2xlLWhpZGUtYXJyb3cgPiAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIE1ha2UgQm9vdHN0cmFwIDMgcGFnaW5hdGlvbiBjb21wYXRpYmxlIHdpdGggQm9vdHN0cmFwIDRcblxuLmRyb3Bkb3duLW1lbnUgPiBsaTpub3QoLmRyb3Bkb3duLWl0ZW0pIHtcbiAgID4gYTpub3QoLmRyb3Bkb3duLWl0ZW0pIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjogMDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbiAgICB0ZXh0LWFsaWduOiBpbmhlcml0O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6ICRkcm9wZG93bi1saW5rLWxpbmUtaGVpZ2h0O1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItYmc7XG4gICAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJi5hY3RpdmUgPiBhOm5vdCguZHJvcGRvd24taXRlbSksXG4gID4gYTpub3QoLmRyb3Bkb3duLWl0ZW0pOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnO1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJi5kaXNhYmxlZCA+IGE6bm90KC5kcm9wZG93bi1pdGVtKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuXG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogRHJvcGRvd24gdG9nZ2xlXG5cbkBpZiAkZW5hYmxlLWNhcmV0IHtcbiAgLmRyb3BsZWZ0IC5kcm9wZG93bi10b2dnbGU6OmJlZm9yZSxcbiAgLmRyb3ByaWdodCAuZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XG4gICAgdmVydGljYWwtYWxpZ246ICRjYXJldC12ZXJ0aWNhbC1hbGlnbjtcbiAgfVxuXG4gIEBpbmNsdWRlIHJ0bC1vbmx5IHtcbiAgICAuZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRjYXJldC1zcGFjaW5nO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLmRyb3BsZWZ0IC5kcm9wZG93bi10b2dnbGU6OmJlZm9yZSxcbiAgICAuZHJvcHJpZ2h0IC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLmRyb3BsZWZ0IC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRjYXJldC1zcGFjaW5nO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgICAgIEBpbmNsdWRlIGNhcmV0LWxlZnQ7XG4gICAgfVxuXG4gICAgLmRyb3ByaWdodCAuZHJvcGRvd24tdG9nZ2xlOjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkY2FyZXQtc3BhY2luZztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAkY2FyZXQtdmVydGljYWwtYWxpZ247XG5cbiAgICAgIEBpbmNsdWRlIGNhcmV0LXJpZ2h0O1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0OjphZnRlcixcbi5kcm9wZG93bi10b2dnbGUtc3BsaXQ6OmJlZm9yZSB7XG4gIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIE5lc3RlZCBkcm9wZG93bnNcblxuLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uZHJvcGRvd24tbWVudSAuZHJvcGRvd24tdG9nZ2xlID4gLmRyb3Bkb3duLWl0ZW0ge1xuIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAobWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgbWQpIC0gMSkpIHtcbiAgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmctbGVmdDogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci13aWR0aDogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG5cbiAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgcGFkZGluZy1yaWdodDogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogbWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgbWQpKSB7XG4gIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi10b2dnbGUgPiAuZHJvcGRvd24taXRlbTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHJpZ2h0OiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXggLyAyO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAuMzc1cmVtO1xuICAgIGhlaWdodDogLjM3NXJlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkdGV4dC1tdXRlZDtcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZykgdHJhbnNsYXRlKDAsIC01MCUpO1xuXG4gICAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGVmdDogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14IC8gMjtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGUoMCwgLTUwJSkgc2NhbGVYKC0xKTtcbiAgICB9XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tdG9nZ2xlOmhvdmVyID4gLmRyb3Bkb3duLWl0ZW06bm90KC5kaXNhYmxlZCkge1xuICAgIGJhY2tncm91bmQ6ICRkcm9wZG93bi1saW5rLWhvdmVyLWJnO1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjtcblxuICAgICArIC5kcm9wZG93bi1tZW51IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMTAwJTtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51LXJpZ2h0IC5kcm9wZG93bi1tZW51IHtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG59XG4iLCIvLyBOYXZcbi8vXG5cbkBpbmNsdWRlIHJ0bC1vbmx5IHtcbiAgLm5hdiB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxufVxuXG4ubmF2LWxpbmsge1xuICBsaW5lLWhlaWdodDogJG5hdi1saW5rLWxpbmUtaGVpZ2h0O1xuXG4gICYuZGlzYWJsZWQge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3IgIWltcG9ydGFudDtcbiAgfVxufVxuXG4ubmF2IC5uYXYtaXRlbSxcbi5uYXYgLm5hdi1saW5rLFxuLnRhYi1wYW5lLFxuLnRhYi1wYW5lIC5jYXJkLWJvZHkge1xuICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8vIFRhYiBhbmQgcGlsbHMgbGlua1xuLm5hdi10YWJzLFxuLm5hdi1waWxscyB7XG4gIEBpZiAkbWF0ZXJpYWwtc3R5bGUge1xuICAgIC5uYXYtbGluayB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC13ZWlnaHQ6ICRidG4tZm9udC13ZWlnaHQ7XG4gICAgICBmb250LXNpemU6ICRidG4tZm9udC1zaXplO1xuICAgIH1cbiAgfVxuXG4gIC5uYXYtbGluazpub3QoLmFjdGl2ZSkge1xuICAgIGNvbG9yOiAkbmF2LWxpbmstY29sb3I7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBjb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gICY6bm90KC5uYXYtZmlsbCk6bm90KC5uYXYtanVzdGlmaWVkKSAubmF2LWxpbmsge1xuICAgIG1hcmdpbi1yaWdodDogJG5hdi1zcGFjZXI7XG5cbiAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRuYXYtc3BhY2VyO1xuICAgIH1cbiAgfVxuXG4gIC5uYXYtbGluayAuYmFkZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0xcHg7XG4gIH1cblxuICAubmF2LWl0ZW0uc2hvdyAubmF2LWxpbms6bm90KC5hY3RpdmUpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG5AaWYgJG1hdGVyaWFsLXN0eWxlIHtcbiAgLm5hdi10YWJzIC5uYXYtbGluayB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogYm90dG9tO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMCAycHg7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgfVxuXG4gIC5uYXYtdGFicyAubmF2LWxpbmsuYWN0aXZlLFxuICAubmF2LXRhYnMgLm5hdi1pdGVtLnNob3cgLm5hdi1saW5rIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMnB4O1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjNzIGVhc2Utb3V0O1xuICB9XG59XG5cbi8vIFRhYiBsaW5rXG4ubmF2LXRhYnMgLm5hdi1saW5rIHtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmLmFjdGl2ZSB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnO1xuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogQWx0ZXJuYXRpdmUgdGFic1xuXG4ubmF2LXRhYnMudGFicy1hbHQgLm5hdi1saW5rLFxuLnRhYnMtYWx0ID4gLm5hdi10YWJzIC5uYXYtbGluayB7XG4gICYsXG4gICYuYWN0aXZlIHtcbiAgICBib3JkZXItd2lkdGg6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIExpZ2h0IG5hdnMgKG1hdGVyaWFsIG9ubHkpXG5cbkBpZiAkbWF0ZXJpYWwtc3R5bGUge1xuICAkbWF0ZXJpYWwtbGlnaHQtbmF2LWxpbmstY29sb3I6IG51bGwgIWRlZmF1bHQ7XG4gICRtYXRlcmlhbC1saWdodC1uYXYtbGluay1kaXNhYmxlZC1jb2xvcjogbnVsbCAhZGVmYXVsdDtcbiAgJG1hdGVyaWFsLWxpZ2h0LW5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yOiBudWxsICFkZWZhdWx0O1xuICAkbWF0ZXJpYWwtbGlnaHQtbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiBudWxsICFkZWZhdWx0O1xuXG4gIC5uYXYtdGFicy5tZC10YWJzLWxpZ2h0LFxuICAubWQtdGFicy1saWdodCA+IC5uYXYtdGFicyxcbiAgLm1kLXRhYnMtbGlnaHQgPiBkaXYgPiAubmF2LXRhYnMsXG4gIC5uYXYtcGlsbHMubWQtcGlsbHMtbGlnaHQsXG4gIC5tZC1waWxscy1saWdodCA+IC5uYXYtcGlsbHMsXG4gIC5tZC1waWxscy1saWdodCA+IGRpdiA+IC5uYXYtcGlsbHMge1xuICAgIC5uYXYtbGluayB7XG4gICAgICBjb2xvcjogJG1hdGVyaWFsLWxpZ2h0LW5hdi1saW5rLWNvbG9yO1xuICAgIH1cblxuICAgIC5uYXYtbGluazpob3ZlcixcbiAgICAubmF2LWxpbms6Zm9jdXMsXG4gICAgLm5hdi1saW5rLmZvY3VzLFxuICAgIC5uYXYtaXRlbS5zaG93IC5uYXYtbGluayB7XG4gICAgICBjb2xvcjogJG1hdGVyaWFsLWxpZ2h0LW5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgIH1cblxuICAgIC5uYXYtbGluay5kaXNhYmxlZCB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogJG1hdGVyaWFsLWxpZ2h0LW5hdi1saW5rLWRpc2FibGVkLWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLm5hdi10YWJzLm1kLXRhYnMtbGlnaHQsXG4gIC5tZC10YWJzLWxpZ2h0ID4gLm5hdi10YWJzLFxuICAubWQtdGFicy1saWdodCA+IGRpdiA+IC5uYXYtdGFicyB7XG4gICAgLm5hdi1saW5rIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkbWF0ZXJpYWwtbGlnaHQtbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3IsICRtYXRlcmlhbC1saWdodC1uYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcikgIWltcG9ydGFudDtcblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBjb2xvcjogJG1hdGVyaWFsLWxpZ2h0LW5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5tYXRlcmlhbC1zdHlsZSAubmF2LXBpbGxzLm1kLXBpbGxzLWxpZ2h0LFxuICAubWF0ZXJpYWwtc3R5bGUgLm1kLXBpbGxzLWxpZ2h0ID4gLm5hdi1waWxscyxcbiAgLm1hdGVyaWFsLXN0eWxlIC5tZC1waWxscy1saWdodCA+IGRpdiA+IC5uYXYtcGlsbHMge1xuICAgIC5uYXYtbGluay5hY3RpdmUge1xuICAgICAgQGluY2x1ZGUgcGxhaW4taG92ZXItZm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkbWF0ZXJpYWwtbGlnaHQtbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I7XG4gICAgICAgIGNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogU2l6aW5nXG5cbi5uYXYtbGcge1xuICBAaW5jbHVkZSBhcHB3b3JrLW5hdi1zaXplKCRuYXYtbGluay1wYWRkaW5nLXktbGcsICRuYXYtbGluay1wYWRkaW5nLXgtbGcsICRmb250LXNpemUtbGcsICRuYXYtbGluay1saW5lLWhlaWdodC1sZyk7XG59XG4ubmF2LXNtIHtcbiAgQGluY2x1ZGUgYXBwd29yay1uYXYtc2l6ZSgkbmF2LWxpbmstcGFkZGluZy15LXNtLCAkbmF2LWxpbmstcGFkZGluZy14LXNtLCAkZm9udC1zaXplLXNtLCAkbmF2LWxpbmstbGluZS1oZWlnaHQtc20pO1xufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFRhYmJlZCBwYW5lbHNcblxuLm5hdi10YWJzLXRvcCxcbi5uYXYtdGFicy1yaWdodCxcbi5uYXYtdGFicy1ib3R0b20sXG4ubmF2LXRhYnMtbGVmdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgID4gLm5hdixcbiAgID4gZGl2ID4gLm5hdiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgID4gLm5hdiAubmF2LWxpbmssXG4gICA+IGRpdiA+IC5uYXYgLm5hdi1saW5rIHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLnJvdy1ib3JkZXJlZCA+IFtjbGFzc149XCJjb2wtXCJdLFxuICAucm93LWJvcmRlcmVkID4gW2NsYXNzKj1cIiBjb2wtXCJdLFxuICAucm93LWJvcmRlcmVkID4gW2NsYXNzXj1cImNvbCBcIl0sXG4gIC5yb3ctYm9yZGVyZWQgPiBbY2xhc3MqPVwiIGNvbCBcIl0sXG4gIC5yb3ctYm9yZGVyZWQgPiBbY2xhc3MkPVwiIGNvbFwiXSxcbiAgLnJvdy1ib3JkZXJlZCA+IFtjbGFzcz1cImNvbFwiXSB7XG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNhcmQtaW5uZXItYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4ubmF2LXRhYnMtcmlnaHQsXG4ubmF2LXRhYnMtbGVmdCB7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuXG4gICA+IC5uYXYsXG4gICA+IGRpdiA+IC5uYXYge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZmxleC1ncm93OiAwO1xuICB9XG5cbiAgID4gLm5hdiAubmF2LWxpbmssXG4gICA+IGRpdiA+IC5uYXYgLm5hdi1saW5rIHtcbiAgICBtYXJnaW46IDAgMCAkbmF2LXNwYWNlciAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAgPiAudGFiLWNvbnRlbnQge1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgfVxufVxuXG4vLyBUb3AgdGFic1xuLm5hdi10YWJzLXRvcCB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgID4gLm5hdiAubmF2LWxpbmssXG4gICA+IGRpdiA+IC5uYXYgLm5hdi1saW5rIHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmc7XG4gICAgfVxuICB9XG59XG5cbi8vIFJpZ2h0IHRhYnNcbi5uYXYtdGFicy1yaWdodCB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcblxuICAgPiAubmF2IC5uYXYtaXRlbSxcbiAgID4gZGl2ID4gLm5hdiAubmF2LWl0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG5cbiAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMXB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG5cbiAgID4gLm5hdiAubmF2LWxpbmssXG4gICA+IGRpdiA+IC5uYXYgLm5hdi1saW5rIHtcbiAgICBAaWYgJG1hdGVyaWFsLXN0eWxlICE9IHRydWUge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwICRib3JkZXItcmFkaXVzICRib3JkZXItcmFkaXVzIDApO1xuXG4gICAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzIDAgMCAkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuYWN0aXZlIHtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmc7XG5cbiAgICAgIEBpbmNsdWRlIHJ0bC1zdHlsZSB7XG4gICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnO1xuICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQm90dG9tIHRhYnNcbi5uYXYtdGFicy1ib3R0b20ge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG5cbiAgID4gLm5hdiAubmF2LWl0ZW0sXG4gICA+IGRpdiA+IC5uYXYgLm5hdi1pdGVtIHtcbiAgICBtYXJnaW4tdG9wOiAtMXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAgPiAubmF2IC5uYXYtbGluayxcbiAgID4gZGl2ID4gLm5hdiAubmF2LWxpbmsge1xuICAgIEBpZiAkbWF0ZXJpYWwtc3R5bGUgIT0gdHJ1ZSB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgMCAkYm9yZGVyLXJhZGl1cyAkYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgJi5hY3RpdmUge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnO1xuICAgIH1cbiAgfVxufVxuXG4vLyBMZWZ0IHRhYnNcbi5uYXYtdGFicy1sZWZ0IHtcbiAgID4gLm5hdiAubmF2LWl0ZW0sXG4gICA+IGRpdiA+IC5uYXYgLm5hdi1pdGVtIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgIEBpbmNsdWRlIHJ0bC1zdHlsZSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgICB9XG4gIH1cblxuICAgPiAubmF2IC5uYXYtbGluayxcbiAgID4gZGl2ID4gLm5hdiAubmF2LWxpbmsge1xuICAgICBAaWYgJG1hdGVyaWFsLXN0eWxlICE9IHRydWUge1xuICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMgMCAwICRib3JkZXItcmFkaXVzKTtcblxuICAgICAgIEBpbmNsdWRlIHJ0bC1zdHlsZSB7XG4gICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgJGJvcmRlci1yYWRpdXMgJGJvcmRlci1yYWRpdXMgMCk7XG4gICAgICAgfVxuICAgICB9XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjtcbiAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgIH1cblxuICAgICYuYWN0aXZlIHtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnO1xuXG4gICAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFRhYiBjb250ZW50XG5cbi5uYXYtdGFicy10b3AgPiAudGFiLWNvbnRlbnQsXG4ubmF2LXRhYnMtcmlnaHQgPiAudGFiLWNvbnRlbnQsXG4ubmF2LXRhYnMtYm90dG9tID4gLnRhYi1jb250ZW50LFxuLm5hdi10YWJzLWxlZnQgPiAudGFiLWNvbnRlbnQge1xuICBmbGV4LXNocmluazogMTtcbiAgYm9yZGVyOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgYmFja2dyb3VuZDogJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3gtc2hhZG93OiAkY2FyZC1zaGFkb3c7XG59XG5cbi5uYXYtdGFicy10b3AgPiAudGFiLWNvbnRlbnQge1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgMCAkYm9yZGVyLXJhZGl1cyAkYm9yZGVyLXJhZGl1cyk7XG59XG5cbi5uYXYtdGFicy1yaWdodCA+IC50YWItY29udGVudCB7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMgMCAwICRib3JkZXItcmFkaXVzKTtcbiAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgJGJvcmRlci1yYWRpdXMgJGJvcmRlci1yYWRpdXMgMCk7XG4gIH1cbn1cblxuLm5hdi10YWJzLWJvdHRvbSA+IC50YWItY29udGVudCB7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMgJGJvcmRlci1yYWRpdXMgMCAwKTtcbn1cblxuLm5hdi10YWJzLWxlZnQgPiAudGFiLWNvbnRlbnQge1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgJGJvcmRlci1yYWRpdXMgJGJvcmRlci1yYWRpdXMgMCk7XG4gIEBpbmNsdWRlIHJ0bC1zdHlsZSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyAwIDAgJGJvcmRlci1yYWRpdXMpO1xuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogUmVzcG9uc2l2ZSBuYXZcblxuQGluY2x1ZGUgcmVzcG9uc2l2ZS1sb29wLWJlZm9yZSgnLm5hdi1yZXNwb25zaXZlJykge1xuICAgPiAubmF2LFxuICAgPiBkaXYgPiAubmF2IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGJvcmRlcjogMDtcblxuICAgIC5uYXYtaXRlbSB7XG4gICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgIH1cblxuICAgICYuY2FyZC1oZWFkZXItdGFicyxcbiAgICAmLmNhcmQtaGVhZGVyLXBpbGxzIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0xICogJG5hdi1zcGFjZXI7XG4gICAgfVxuICB9XG5cbiAgID4gLm5hdi10YWJzLFxuICAgPiAubmF2LXBpbGxzLFxuICAgPiBkaXYgPiAubmF2LXRhYnMsXG4gICA+IGRpdiA+IC5uYXYtcGlsbHMge1xuICAgIC5uYXYtaXRlbSB7XG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAubmF2LWxpbmsge1xuICAgICAgbWFyZ2luOiAwIDAgJG5hdi1zcGFjZXIgMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gICA+IC5uYXYtdGFiczpub3QoLnRhYnMtYWx0KSxcbiAgID4gZGl2ID4gLm5hdi10YWJzOm5vdCgudGFicy1hbHQpIHtcbiAgICAubmF2LWxpbmsge1xuICAgICAgQGlmIG5vdCAkbWF0ZXJpYWwtc3R5bGUge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICBib3JkZXItY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgJi5uYXYtdGFicy10b3AgPiAudGFiLWNvbnRlbnQsXG4gICYubmF2LXRhYnMtcmlnaHQgPiAudGFiLWNvbnRlbnQsXG4gICYubmF2LXRhYnMtYm90dG9tID4gLnRhYi1jb250ZW50LFxuICAmLm5hdi10YWJzLWxlZnQgPiAudGFiLWNvbnRlbnQge1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICB9XG5cbiAgJi5uYXYtdGFicy1ib3R0b20sXG4gICYubmF2LXRhYnMtcmlnaHQsXG4gICYubmF2LXRhYnMtbGVmdCB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxufVxuIiwiLy8gUGFnaW5hdGlvblxuLy9cblxuQGluY2x1ZGUgcnRsLW9ubHkge1xuICAucGFnaW5hdGlvbiB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxufVxuXG4vLyBBZGQgc3BhY2luZyBiZXR3ZWVuIHBhZ2luYXRpb24gaXRlbXNcbi5wYWdlLWl0ZW0gKyAucGFnZS1pdGVtIC5wYWdlLWxpbmssXG4ucGFnaW5hdGlvbiBsaSArIGxpID4gYTpub3QoLnBhZ2UtbGluaykge1xuICBtYXJnaW4tbGVmdDogJHBhZ2luYXRpb24tc3BhY2VyO1xuXG4gIEBpbmNsdWRlIHJ0bC1zdHlsZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkcGFnaW5hdGlvbi1zcGFjZXI7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuLnBhZ2UtbGluayxcbi5wYWdlLWxpbmsgPiBhIHtcbiAgbWluLXdpZHRoOiBjYWxjKCN7XCIjeygkZm9udC1zaXplLWJhc2UgKiAkcGFnaW5hdGlvbi1saW5lLWhlaWdodCkgKyAoJHBhZ2luYXRpb24tcGFkZGluZy15ICogMil9ICsgI3skcGFnaW5hdGlvbi1ib3JkZXItd2lkdGggKiAyfVwifSk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6ICRwYWdpbmF0aW9uLWxpbmUtaGVpZ2h0O1xuXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuXG4gIEBpZiAkbWF0ZXJpYWwtc3R5bGUge1xuICAgIGZvbnQtd2VpZ2h0OiAkYnRuLWZvbnQtd2VpZ2h0O1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yO1xuICB9XG59XG5cbi5wYWdlLWxpbmsuYnRuLXByaW1hcnkge1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogTWFrZSBCb290c3RyYXAgMyBwYWdpbmF0aW9uIGNvbXBhdGlibGUgd2l0aCBCb290c3RyYXAgNFxuXG4ucGFnaW5hdGlvbiA+IGxpID4gYTpub3QoLnBhZ2UtbGluaykge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkcGFnaW5hdGlvbi1wYWRkaW5nLXkgJHBhZ2luYXRpb24tcGFkZGluZy14O1xuICBtaW4td2lkdGg6IGNhbGMoI3tcIiN7KCRmb250LXNpemUtYmFzZSAqICRwYWdpbmF0aW9uLWxpbmUtaGVpZ2h0KSArICgkcGFnaW5hdGlvbi1wYWRkaW5nLXkgKiAyKX0gKyAjeyRwYWdpbmF0aW9uLWJvcmRlci13aWR0aCAqIDJ9XCJ9KTtcbiAgYm9yZGVyOiAkcGFnaW5hdGlvbi1ib3JkZXItd2lkdGggc29saWQgJHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1iZztcbiAgY29sb3I6ICRwYWdpbmF0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAkcGFnaW5hdGlvbi1saW5lLWhlaWdodCAhaW1wb3J0YW50O1xuXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24taG92ZXItYmc7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIEBpZiAkbWF0ZXJpYWwtc3R5bGUge1xuICAgIGZvbnQtd2VpZ2h0OiAkYnRuLWZvbnQtd2VpZ2h0O1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yO1xuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogTWF0ZXJpYWwgcmlwcGxlXG5cbkBpZiAkbWF0ZXJpYWwtc3R5bGUge1xuICAucGFnZS1saW5rIC53YXZlcy1yaXBwbGUsXG4gIC5wYWdpbmF0aW9uID4gbGkgLndhdmVzLXJpcHBsZSB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAuMSk7XG4gIH1cblxuICAucGFnZS1saW5rLndhdmVzLWVmZmVjdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAucGFnZS1pdGVtLmFjdGl2ZSAucGFnZS1saW5rIC53YXZlcy1yaXBwbGUsXG4gIC5wYWdlLWl0ZW0uZGlzYWJsZWQgLnBhZ2UtbGluayAud2F2ZXMtcmlwcGxlLFxuICAucGFnaW5hdGlvbiA+IGxpLmFjdGl2ZSAud2F2ZXMtcmlwcGxlLFxuICAucGFnaW5hdGlvbiA+IGxpLmRpc2FibGVkIC53YXZlcy1yaXBwbGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBTaXppbmdcblxuLnBhZ2luYXRpb24tbGcgLnBhZ2UtbGluayxcbi5wYWdpbmF0aW9uLWxnID4gbGkgPiBhOm5vdCgucGFnZS1saW5rKSB7XG4gIG1pbi13aWR0aDogY2FsYygje1wiI3soJGZvbnQtc2l6ZS1sZyAqICRwYWdpbmF0aW9uLWxpbmUtaGVpZ2h0KSArICgkcGFnaW5hdGlvbi1wYWRkaW5nLXktbGcgKiAyKX0gKyAjeyRwYWdpbmF0aW9uLWJvcmRlci13aWR0aCAqIDJ9XCJ9KTtcbiAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5wYWdpbmF0aW9uLXNtIC5wYWdlLWxpbmssXG4ucGFnaW5hdGlvbi1zbSA+IGxpID4gYTpub3QoLnBhZ2UtbGluaykge1xuICBtaW4td2lkdGg6IGNhbGMoI3tcIiN7KCRmb250LXNpemUtc20gKiAkcGFnaW5hdGlvbi1saW5lLWhlaWdodCkgKyAoJHBhZ2luYXRpb24tcGFkZGluZy15LXNtICogMil9ICsgI3skcGFnaW5hdGlvbi1ib3JkZXItd2lkdGggKiAyfVwifSk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuXG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMtc20pO1xufVxuIiwiLy8gQWxlcnRzXG4vL1xuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGlmICRjb2xvciAhPSBwcmltYXJ5IGFuZCAkY29sb3IgIT0gbGlnaHQge1xuICAgIEBpbmNsdWRlIGFwcHdvcmstYWxlcnQtdmFyaWFudCgnLmFsZXJ0LSN7JGNvbG9yfScsICR2YWx1ZSk7XG4gICAgQGluY2x1ZGUgYXBwd29yay1hbGVydC1kYXJrLXZhcmlhbnQoJy5hbGVydC1kYXJrLSN7JGNvbG9yfScsICR2YWx1ZSk7XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBSVExcblxuQGluY2x1ZGUgcnRsLW9ubHkge1xuICAuYWxlcnQtZGlzbWlzc2libGUge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRhbGVydC1wYWRkaW5nLXg7XG4gICAgcGFkZGluZy1sZWZ0OiAoJGNsb3NlLWZvbnQtc2l6ZSArICRhbGVydC1wYWRkaW5nLXggKiAyKTtcbiAgfVxuXG4gIC5hbGVydC1kaXNtaXNzaWJsZSAuY2xvc2Uge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gIH1cbn1cbiIsIi8vIFRvb2x0aXBzXG4vL1xuXG4udG9vbHRpcC1pbm5lciB7XG4gIGJveC1zaGFkb3c6ICR0b29sdGlwLWJveC1zaGFkb3c7XG59XG5cbi5tb2RhbC1vcGVuIC50b29sdGlwIHtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbC10b3AgKyAyO1xufVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGlmICRjb2xvciAhPSBwcmltYXJ5IGFuZCAkY29sb3IgIT0gbGlnaHQge1xuICAgIEBpbmNsdWRlIGFwcHdvcmstdG9vbHRpcC12YXJpYW50KCcudG9vbHRpcC0jeyRjb2xvcn0sIC50b29sdGlwLSN7JGNvbG9yfSA+IC50b29sdGlwLCAubmdiLXRvb2x0aXAtI3skY29sb3J9ICsgbmdiLXRvb2x0aXAtd2luZG93JywgcmdiYS10by1oZXgoJHZhbHVlKSk7XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBNYXRlcmlhbFxuXG5AaWYgJG1hdGVyaWFsLXN0eWxlIHtcbiAgLnRvb2x0aXAge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cblxuICAudG9vbHRpcC5icy10b29sdGlwLXRvcCxcbiAgLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49XCJ0b3BcIl0ge1xuICAgIGFuaW1hdGlvbjogdG9wVG9vbHRpcEFuaW1hdGlvbiAuMjVzO1xuICB9XG5cbiAgLnRvb2x0aXAuYnMtdG9vbHRpcC1yaWdodCxcbiAgLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgYW5pbWF0aW9uOiByaWdodFRvb2x0aXBBbmltYXRpb24gLjI1cztcbiAgfVxuXG4gIC50b29sdGlwLmJzLXRvb2x0aXAtYm90dG9tLFxuICAuYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgYW5pbWF0aW9uOiBib3R0b21Ub29sdGlwQW5pbWF0aW9uIC4yNXM7XG4gIH1cblxuICAudG9vbHRpcC5icy10b29sdGlwLWxlZnQsXG4gIC5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePVwibGVmdFwiXSB7XG4gICAgYW5pbWF0aW9uOiBsZWZ0VG9vbHRpcEFuaW1hdGlvbiAuMjVzO1xuICB9XG59XG4iLCIvLyBQb3BvdmVyc1xuLy9cblxuLnBvcG92ZXIge1xuICBib3gtc2hhZG93OiAkcG9wb3Zlci1ib3gtc2hhZG93O1xuXG4gIC5hcnJvdyB7XG4gICAgei1pbmRleDogMTtcbiAgfVxufVxuXG4ubW9kYWwtb3BlbiAucG9wb3ZlciB7XG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWwtdG9wICsgMTtcbn1cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpZiAkY29sb3IgIT0gcHJpbWFyeSBhbmQgJGNvbG9yICE9IGxpZ2h0IHtcbiAgICBAaW5jbHVkZSBhcHB3b3JrLXBvcG92ZXItdmFyaWFudCgnLnBvcG92ZXItI3skY29sb3J9LCAucG9wb3Zlci0jeyRjb2xvcn0gPiAucG9wb3ZlciwgLm5nYi1wb3BvdmVyLSN7JGNvbG9yfSArIG5nYi1wb3BvdmVyLXdpbmRvdycsIHJnYmEtdG8taGV4KCR2YWx1ZSkpO1xuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogTWF0ZXJpYWxcblxuQGlmICRtYXRlcmlhbC1zdHlsZSB7XG4gIC5wb3BvdmVyIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG5cbiAgLnBvcG92ZXItaGVhZGVyIHtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7XG4gIH1cblxuICAuYnMtcG9wb3Zlci10b3AsXG4gIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgICBhbmltYXRpb246IHRvcFRvb2x0aXBBbmltYXRpb24gLjI1cztcbiAgfVxuXG4gIC5icy1wb3BvdmVyLXJpZ2h0LFxuICAuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICBhbmltYXRpb246IHJpZ2h0VG9vbHRpcEFuaW1hdGlvbiAuMjVzO1xuICB9XG5cbiAgLmJzLXBvcG92ZXItYm90dG9tLFxuICAuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgYW5pbWF0aW9uOiBib3R0b21Ub29sdGlwQW5pbWF0aW9uIC4yNXM7XG4gIH1cblxuICAuYnMtcG9wb3Zlci1sZWZ0LFxuICAuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIGFuaW1hdGlvbjogbGVmdFRvb2x0aXBBbmltYXRpb24gLjI1cztcbiAgfVxufVxuIiwiLy8gRm9ybXNcbi8vXG5cbkBpZiAkbWF0ZXJpYWwtc3R5bGUge1xuICAuZm9ybS1jb250cm9sIHtcbiAgICAkbWF0ZXJpYWwtaW5wdXQtZGlzYWJsZWQtY29sb3I6IG51bGwgIWRlZmF1bHQ7XG4gICAgJG1hdGVyaWFsLWlucHV0LWRpc2FibGVkLWJvcmRlci1jb2xvcjogbnVsbCAhZGVmYXVsdDtcblxuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDtcbiAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAmOmRpc2FibGVkIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgJG1hdGVyaWFsLWlucHV0LWRpc2FibGVkLWJvcmRlci1jb2xvciAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICRtYXRlcmlhbC1pbnB1dC1kaXNhYmxlZC1jb2xvciAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIDpub3QoLmlucHV0LWdyb3VwKSA+IC5mb3JtLWNvbnRyb2wge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogU2l6aW5nXG5cbnNlbGVjdC5mb3JtLWNvbnRyb2xbc2l6ZT1cIjBcIl06bm90KFttdWx0aXBsZV0pIHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xufVxuXG5zZWxlY3QuZm9ybS1jb250cm9sLXNtW3NpemU9XCIwXCJdOm5vdChbbXVsdGlwbGVdKSB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcbn1cblxuc2VsZWN0LmZvcm0tY29udHJvbC1sZ1tzaXplPVwiMFwiXTpub3QoW211bHRpcGxlXSkge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG59XG5cbkBpZiAkbWF0ZXJpYWwtc3R5bGUge1xuICBAaW5jbHVkZSBhcHB3b3JrLW1hdGVyaWFsLWZvcm0tY29udHJvbC1zaXplKCcnLCAkaW5wdXQtYnRuLXBhZGRpbmcteSk7XG4gIEBpbmNsdWRlIGFwcHdvcmstbWF0ZXJpYWwtZm9ybS1jb250cm9sLXNpemUoJ3NtJywgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20pO1xuICBAaW5jbHVkZSBhcHB3b3JrLW1hdGVyaWFsLWZvcm0tY29udHJvbC1zaXplKCdsZycsICRpbnB1dC1idG4tcGFkZGluZy15LWxnKTtcbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBJbnZlcnRlZFxuXG4uZm9ybS1jb250cm9sLWludmVydGVkIHtcbiAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtaW52ZXJ0ZWQtYm9yZGVyLWNvbG9yO1xuXG4gIEBpbmNsdWRlIHBsYWluLWhvdmVyLWZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtaW52ZXJ0ZWQtYmc7XG4gICAgY29sb3I6ICRpbnB1dC1pbnZlcnRlZC1jb2xvcjtcbiAgfVxuXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGlucHV0LWludmVydGVkLXBsYWNlaG9sZGVyLWNvbG9yO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWludmVydGVkLWRpc2FibGVkLWJnICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICRpbnB1dC1pbnZlcnRlZC1kaXNhYmxlZC1jb2xvciAhaW1wb3J0YW50O1xuXG4gICAgQGlmICRtYXRlcmlhbC1zdHlsZSAhPSB0cnVlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWludmVydGVkLWRpc2FibGVkLWJnICFpbXBvcnRhbnQ7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkbWF0ZXJpYWwtaW5wdXQtaW52ZXJ0ZWQtZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiBudWxsICFkZWZhdWx0O1xuXG4gICAgICBib3JkZXItY29sb3I6ICRtYXRlcmlhbC1pbnB1dC1pbnZlcnRlZC1kaXNhYmxlZC1ib3JkZXItY29sb3IgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICBvcHRpb24ge1xuICAgIGNvbG9yOiAkYm9keS1jb2xvciAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogTGFiZWxzXG5cbi5mb3JtLWxhYmVsLFxuLmNvbC1mb3JtLWxhYmVsIHtcbiAgQGlmIG5vdCAkbWF0ZXJpYWwtc3R5bGUge1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGMoI3skaW5wdXQtcGFkZGluZy15fSAtICN7JGlucHV0LWJvcmRlci13aWR0aCAqIDJ9KTtcbiAgfSBAZWxzZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICBmb250LXdlaWdodDogJGxhYmVsLWZvbnQtd2VpZ2h0O1xuICBmb250LXNpemU6ICRsYWJlbC1mb250LXNpemU7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4uZm9ybS1sYWJlbC1zbSxcbi5jb2wtZm9ybS1sYWJlbC1zbSB7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcbn1cblxuLmZvcm0tbGFiZWwtbGcsXG4uY29sLWZvcm0tbGFiZWwtbGcge1xuICBmb250LXNpemU6ICRmb250LXNpemUtbGc7XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogQ2hlY2tib3hlcyBhbmQgcmFkaW9zXG5cbi5mb3JtLWNoZWNrIHtcbiAgbWluLWhlaWdodDogJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2U7XG5cbiAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cbkBpbmNsdWRlIHJ0bC1vbmx5IHtcbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIG1hcmdpbi1yaWdodDogLSRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gIC5mb3JtLWNoZWNrLWlubGluZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAkZm9ybS1jaGVjay1pbmxpbmUtbWFyZ2luLXg7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxuXG4gIC5mb3JtLWNoZWNrLWlubGluZSAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAkZm9ybS1jaGVjay1pbmxpbmUtaW5wdXQtbWFyZ2luLXg7XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBWYWxpZGF0aW9uIHN0YXRlc1xuXG5AZWFjaCAkc3RhdGUsICRkYXRhIGluICRmb3JtLXZhbGlkYXRpb24tc3RhdGVzIHtcbiAgQGlmICRtYXRlcmlhbC1zdHlsZSB7XG4gICAgQGluY2x1ZGUgYXBwd29yay1tYXRlcmlhbC1mb3JtLXZhbGlkYXRpb24tc3RhdGUoJHN0YXRlLCBtYXAtZ2V0KCRkYXRhLCBjb2xvciksIG1hcC1nZXQoJGRhdGEsIGljb24pLCBtYXAtZ2V0KCRkYXRhLCBpY29uLXJ0bCkpO1xuICB9IEBlbHNlIHtcbiAgICBAaW5jbHVkZSBhcHB3b3JrLWZvcm0tdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsIG1hcC1nZXQoJGRhdGEsIGNvbG9yKSwgbWFwLWdldCgkZGF0YSwgaWNvbiksIG1hcC1nZXQoJGRhdGEsIGljb24tcnRsKSk7XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBJbmxpbmUgZm9ybXNcblxuLmZvcm0taW5saW5lIC5jdXN0b20tY29udHJvbCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gIEBpbmNsdWRlIHJ0bC1vbmx5IHtcbiAgICAuZm9ybS1pbmxpbmUgLmZvcm0tY2hlY2sge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB9XG5cbiAgICAuZm9ybS1pbmxpbmUgLmZvcm0tY2hlY2staW5wdXQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi14O1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWlubGluZSAuY3VzdG9tLWNvbnRyb2wsXG4gIC5mb3JtLWlubGluZSAuY3VzdG9tLXNlbGVjdCxcbiAgLmZvcm0taW5saW5lIC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gIC5mb3JtLWlubGluZSAuZm9ybS10ZXh0IHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG4iLCIvLyBDdXN0b20gZm9ybXNcbi8vXG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogQ3VzdG9tIGNvbnRyb2xcblxuLmN1c3RvbS1jb250cm9sIHtcbiAgbWluLWhlaWdodDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG5cbiAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyICsgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG4uY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICByaWdodDogMDtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgLy8gSW5kaWNhdG9yXG4gICY6OmJlZm9yZSB7XG4gICAgdG9wOiBweC10by1yZW0oZmxvb3IocmVtLXRvLXB4KCgoKCRsaW5lLWhlaWdodC1iYXNlICogJGZvbnQtc2l6ZS1iYXNlKSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgLyAyKSkpKTtcbiAgICBsZWZ0OiAwO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAgIHRyYW5zaXRpb246IGFsbCAuMnM7XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG5cbiAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAgIH1cblxuICAgIEBpZiAkbWF0ZXJpYWwtc3R5bGUge1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBNYXRlcmlhbCBzaGFkb3dcbiAgJjo6YWZ0ZXIge1xuICAgIEBpZiBub3QgJG1hdGVyaWFsLXN0eWxlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfSBAZWxzZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogcHgtdG8tcmVtKGZsb29yKHJlbS10by1weCgoKCgkbGluZS1oZWlnaHQtYmFzZSAqICRmb250LXNpemUtYmFzZSkgLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpIC8gMikpKSk7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZTtcbiAgICAgIGhlaWdodDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIC4wOCk7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIC4ycztcbiAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCkgdHJhbnNsYXRlWigwKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gQ2hlY2tib3ggaW5kaWNhdG9yXG4uY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1zaXplOiAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1iZy1zaXplO1xufVxuXG4uY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXNpemU6ICRjdXN0b20tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1iZy1zaXplO1xufVxuXG4vLyBSYWRpbyBpbmRpY2F0b3Jcbi5jdXN0b20tcmFkaW8gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLXNpemU6ICRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWJnLXNpemU7XG59XG5cbi8vIEluZGljYXRvciBzdGF0ZXNcbi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmFjdGl2ZSB+ICYge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6bm90KDpjaGVja2VkKTphY3RpdmUgfiAmIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnO1xuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIH4gJiB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci1jb2xvciAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZGlzYWJsZWQtYmcgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkOmluZGV0ZXJtaW5hdGUgfiAmIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoc3RyLXJlcGxhY2Uoc3RyLXJlcGxhY2UoJGN1c3RvbS1jaGVja2JveC1pbmRldGVybWluYXRlLWJnLCAnX0NPTE9SXycsICRjdXN0b20tY29udHJvbC1sYWJlbC1kaXNhYmxlZC1jb2xvciksIFwiI1wiLCBcIiUyM1wiKSk7XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wuY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZDpjaGVja2VkIH4gJiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKHN0ci1yZXBsYWNlKHN0ci1yZXBsYWNlKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJnLCAnX0NPTE9SXycsICRjdXN0b20tY29udHJvbC1sYWJlbC1kaXNhYmxlZC1jb2xvciksIFwiI1wiLCBcIiUyM1wiKSk7XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wuY3VzdG9tLXJhZGlvIC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZDpjaGVja2VkIH4gJiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKHN0ci1yZXBsYWNlKHN0ci1yZXBsYWNlKCRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWJnLCAnX0NPTE9SXycsICRjdXN0b20tY29udHJvbC1sYWJlbC1kaXNhYmxlZC1jb2xvciksIFwiI1wiLCBcIiUyM1wiKSk7XG4gIH1cbn1cblxuLy8gTWF0ZXJpYWwgc3RhdGVzXG5AaWYgJG1hdGVyaWFsLXN0eWxlIHtcbiAgLmN1c3RvbS1jb250cm9sLWlucHV0W2NsYXNzXTphY3RpdmUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbiAgLmN1c3RvbS1jb250cm9sLWlucHV0W2NsYXNzXTpub3QoOmNoZWNrZWQpOmZvY3VzIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAvLyBTaGFkb3dcbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7XG4gICAgLmN1c3RvbS1jb250cm9sLWlucHV0OmZvY3VzIH4gJiB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgyLjI1KSB0cmFuc2xhdGVaKDApO1xuICAgIH1cblxuICAgIC5jdXN0b20tY29udHJvbC1pbnB1dDphY3RpdmUgfiAmIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDApIHRyYW5zbGF0ZVooMCk7XG4gICAgfVxuXG4gICAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIH4gJiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhpZGUgcmFkaW8gYnVsbGV0XG4gIC5jdXN0b20tcmFkaW8gLmN1c3RvbS1jb250cm9sLWlucHV0Om5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1zaXplOiAwO1xuICB9XG5cbiAgLmN1c3RvbS1yYWRpbyAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnO1xuICB9XG59XG5cbi5jdXN0b20tY29udHJvbHMtc3RhY2tlZCAuY3VzdG9tLWNvbnRyb2wge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG59XG5cbkBpbmNsdWRlIHJ0bC1vbmx5IHtcbiAgLmN1c3RvbS1jb250cm9sLWlubGluZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAkY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXg7XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBDdXN0b20gc2VsZWN0XG5cbi5jdXN0b20tc2VsZWN0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG5cbiAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcnRsO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteDtcbiAgICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14IGNlbnRlcjtcbiAgfVxuXG4gIEBpZiAkbWF0ZXJpYWwtc3R5bGUge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDtcbiAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAmOmRpc2FibGVkIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgJG1hdGVyaWFsLWlucHV0LWRpc2FibGVkLWJvcmRlci1jb2xvcjtcbiAgICAgIGNvbG9yOiAkbWF0ZXJpYWwtaW5wdXQtZGlzYWJsZWQtY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi8vIEludmVydGVkXG4uY3VzdG9tLXNlbGVjdC1pbnZlcnRlZCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6ICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1pbnZlcnRlZDtcblxuICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6ICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1pbnZlcnRlZC1ydGw7XG4gIH1cblxuICAmLFxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtaW52ZXJ0ZWQtYmc7XG4gICAgY29sb3I6ICRpbnB1dC1pbnZlcnRlZC1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRpbnB1dC1pbnZlcnRlZC1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXNlbGVjdC1pbnZlcnRlZC1kaXNhYmxlZC1iZztcbiAgICBjb2xvcjogJGN1c3RvbS1zZWxlY3QtaW52ZXJ0ZWQtZGlzYWJsZWQtY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiBpZigkbWF0ZXJpYWwtc3R5bGUsICRtYXRlcmlhbC1pbnB1dC1pbnZlcnRlZC1kaXNhYmxlZC1ib3JkZXItY29sb3IsICRpbnB1dC1pbnZlcnRlZC1kaXNhYmxlZC1iZyk7XG4gIH1cblxuICAmOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRpbnB1dC1pbnZlcnRlZC1wbGFjZWhvbGRlci1jb2xvcjtcbiAgfVxuXG4gIG9wdGlvbiB7XG4gICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICB9XG59XG5cbi8vIFNpemluZ1xuQGluY2x1ZGUgYXBwd29yay1jdXN0b20tc2VsZWN0LXNpemUoJ3NtJywgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LXNtLCAkbGluZS1oZWlnaHQtc20sICRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1zbSk7XG5AaW5jbHVkZSBhcHB3b3JrLWN1c3RvbS1zZWxlY3Qtc2l6ZSgnbGcnLCAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtbGcsICRsaW5lLWhlaWdodC1sZywgJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLWxnKTtcblxuLy8gTWF0ZXJpYWwgc3R5bGVcbkBpZiAkbWF0ZXJpYWwtc3R5bGUge1xuICBAaW5jbHVkZSBsdHItb25seSB7XG4gICAgOm5vdCguaW5wdXQtZ3JvdXApID4gLmN1c3RvbS1zZWxlY3Qge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyO1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBydGwtb25seSB7XG4gICAgOm5vdCguaW5wdXQtZ3JvdXApID4gLmN1c3RvbS1zZWxlY3Qge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBjZW50ZXI7XG4gICAgfVxuICB9XG59XG5cbi8vIE11bHRpcGxlIHNlbGVjdFxuLy9cblxuQGluY2x1ZGUgcnRsLW9ubHkge1xuICAuY3VzdG9tLXNlbGVjdFttdWx0aXBsZV0sXG4gIC5jdXN0b20tc2VsZWN0W3NpemVdOm5vdChbc2l6ZT1cIjFcIl0pIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG59XG5cbkBpZiBub3QgJG1hdGVyaWFsLXN0eWxlIHtcbiAgLmN1c3RvbS1zZWxlY3RbbXVsdGlwbGVdLFxuICAuY3VzdG9tLXNlbGVjdFtzaXplXTpub3QoW3NpemU9XCIxXCJdKSB7XG4gICAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14O1xuICAgIHBhZGRpbmctbGVmdDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14O1xuICB9XG5cbiAgLmN1c3RvbS1zZWxlY3Qtc20sXG4gIC5pbnB1dC1ncm91cC1zbSAuY3VzdG9tLXNlbGVjdCB7XG4gICAgJlttdWx0aXBsZV0sXG4gICAgJltzaXplXTpub3QoW3NpemU9XCIxXCJdKSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtc207XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1zbTtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLXNlbGVjdC1sZyxcbiAgLmlucHV0LWdyb3VwLWxnIC5jdXN0b20tc2VsZWN0IHtcbiAgICAmW211bHRpcGxlXSxcbiAgICAmW3NpemVdOm5vdChbc2l6ZT1cIjFcIl0pIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1sZztcbiAgICAgIHBhZGRpbmctbGVmdDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LWxnO1xuICAgIH1cbiAgfVxufSBAZWxzZSB7XG4gIC5jdXN0b20tc2VsZWN0W211bHRpcGxlXSxcbiAgLmN1c3RvbS1zZWxlY3Rbc2l6ZV06bm90KFtzaXplPVwiMVwiXSkge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEZpbGUgaW5wdXRcblxuLmN1c3RvbS1maWxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jdXN0b20tZmlsZS1sYWJlbCB7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuXG4gIEBpbmNsdWRlIHJ0bC1zdHlsZSB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm9yZGVyLXJpZ2h0OiAkY3VzdG9tLWZpbGUtYm9yZGVyLXdpZHRoIHNvbGlkICRjdXN0b20tZmlsZS1ib3JkZXItY29sb3I7XG4gICAgICBib3JkZXItbGVmdDogMDtcblxuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1cyAwIDAgJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkbWF0ZXJpYWwtc3R5bGUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDtcbiAgfVxuXG4gIC5jdXN0b20tZmlsZS1pbnB1dDpkaXNhYmxlZCB+ICYge1xuICAgIGJhY2tncm91bmQ6ICRpbnB1dC1kaXNhYmxlZC1iZztcblxuICAgIEBpZiAkbWF0ZXJpYWwtc3R5bGUge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAkbWF0ZXJpYWwtaW5wdXQtZGlzYWJsZWQtYm9yZGVyLWNvbG9yO1xuICAgICAgY29sb3I6ICRtYXRlcmlhbC1pbnB1dC1kaXNhYmxlZC1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogLjY1O1xuICAgIH1cbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFJhbmdlIHNlbGVjdFxuXG4uY3VzdG9tLXJhbmdlIHtcbiAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgIGJveC1zaGFkb3c6ICRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdztcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcblxuICAgICY6YWN0aXZlIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS40LCAxLjQpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgIGJveC1zaGFkb3c6ICRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdztcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcblxuICAgICY6YWN0aXZlIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS40LCAxLjQpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi1tcy10aHVtYiB7XG4gICAgYm94LXNoYWRvdzogJGN1c3RvbS1yYW5nZS10aHVtYi1ib3gtc2hhZG93O1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMnM7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjQsIDEuNCk7XG4gICAgfVxuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgJjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS1kaXNhYmxlZC10cmFjay1iZztcbiAgICB9XG4gICAgJjo6LW1vei1yYW5nZS10cmFjayB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLWRpc2FibGVkLXRyYWNrLWJnO1xuICAgIH1cblxuICAgICY6Oi1tcy1maWxsLWxvd2VyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtZGlzYWJsZWQtdHJhY2stYmc7XG4gICAgfVxuXG4gICAgJjo6LW1zLWZpbGwtdXBwZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS1kaXNhYmxlZC10cmFjay1iZztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFN3aXRjaGVyc1xuLy9cblxuLnN3aXRjaGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogJHN3aXRjaGVyLXNwYWNlci14O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBib3JkZXItcmFkaXVzOiA2MHJlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuXG4gIEBpbmNsdWRlIGFwcHdvcmstc3dpdGNoZXItc2l6ZS1iYXNlKCRzd2l0Y2hlci13aWR0aCwgJHN3aXRjaGVyLWhlaWdodCwgJHN3aXRjaGVyLWZvbnQtc2l6ZSwgJHN3aXRjaGVyLWxhYmVsLWZvbnQtc2l6ZSwgJHN3aXRjaGVyLWxhYmVsLWxpbmUtaGVpZ2h0KTtcblxuICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogJHN3aXRjaGVyLXNwYWNlci14O1xuICB9XG5cbiAgLmZvcm0taW5saW5lICYge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuXG4gICAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBJbnB1dFxuXG4uc3dpdGNoZXItaW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IC0xO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogSW5kaWNhdG9yXG5cbi5zd2l0Y2hlci1pbmRpY2F0b3Ige1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci1yYWRpdXM6IDYwcmVtO1xuICBiYWNrZ3JvdW5kOiAkc3dpdGNoZXItb2ZmLWJnO1xuICBjb2xvcjogJHN3aXRjaGVyLW9mZi1jb2xvcjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogLjJzO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBsZWZ0LCByaWdodCwgYmFja2dyb3VuZCwgYm94LXNoYWRvdztcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG5cbiAgQGlmICRtYXRlcmlhbC1zdHlsZSB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAuMDgpO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAuMnM7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDApIHRyYW5zbGF0ZVooMCk7XG5cbiAgICAgIC5zd2l0Y2hlci1pbnB1dDpmb2N1cyB+ICYge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDIuMjUpIHRyYW5zbGF0ZVooMCk7XG4gICAgICB9XG5cbiAgICAgIC5zd2l0Y2hlci1pbnB1dDphY3RpdmUgfiAmIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKSB0cmFuc2xhdGVaKDApO1xuICAgICAgfVxuXG4gICAgICAuc3dpdGNoZXItaW5wdXQ6ZGlzYWJsZWQgfiAmIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBEZXNjcmlwdGlvblxuXG4uc3dpdGNoZXItbGFiZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAkc3dpdGNoZXItZ3V0dGVyO1xuICBjb2xvcjogJHN3aXRjaGVyLWxhYmVsLWNvbG9yO1xuICBmb250LXdlaWdodDogNDAwO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogQ2hlY2tlZCAvIFVuY2hlY2tlZCBzdGF0ZXNcblxuLnN3aXRjaGVyLW5vLFxuLnN3aXRjaGVyLXllcyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IC4ycztcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogbGVmdCwgcmlnaHQ7XG5cbiAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICAgPiAqIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbiAgICB9XG4gIH1cblxuICBAaWYgJG1hdGVyaWFsLXN0eWxlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5zd2l0Y2hlci1ubyB7XG4gIGxlZnQ6IDA7XG5cbiAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG59XG5cbi5zd2l0Y2hlci15ZXMge1xuICBsZWZ0OiAtMTAwJTtcblxuICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgIHJpZ2h0OiAtMTAwJTtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG5cbiAgLnN3aXRjaGVyLWlucHV0Om5vdCg6Y2hlY2tlZCkgfiAuc3dpdGNoZXItaW5kaWNhdG9yICYge1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4vLyBDaGVja2VkIHN0YXRlXG4uc3dpdGNoZXItaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2hlci1pbmRpY2F0b3Ige1xuICAuc3dpdGNoZXItbm8ge1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgbGVmdDogYXV0bztcbiAgICB9XG4gIH1cblxuICAuc3dpdGNoZXIteWVzIHtcbiAgICBsZWZ0OiAwO1xuXG4gICAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgbGVmdDogYXV0bztcbiAgICB9XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBIb2xkZXJcblxuLnN3aXRjaGVyLWluZGljYXRvcjo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogJHN3aXRjaGVyLWhvbGRlci1iZztcbiAgYm94LXNoYWRvdzogJHN3aXRjaGVyLWhvbGRlci1zaGFkb3c7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IC4ycztcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogbGVmdCwgcmlnaHQsIGJhY2tncm91bmQ7XG5cbiAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogRGlzYWJsZWRcblxuLnN3aXRjaGVyLWlucHV0OmRpc2FibGVkIHtcbiAgIH4gLnN3aXRjaGVyLWluZGljYXRvciB7XG4gICAgb3BhY2l0eTogLjU7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cbiAgfVxuXG4gICB+IC5zd2l0Y2hlci1sYWJlbCB7XG4gICAgY29sb3I6ICRzd2l0Y2hlci1sYWJlbC1kaXNhYmxlZC1jb2xvcjtcbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFN0YWNrZWRcblxuLnN3aXRjaGVycy1zdGFja2VkIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgLnN3aXRjaGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogJHN3aXRjaGVyLXNwYWNlci15O1xuXG4gICAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogU3F1YXJlXG5cbi5zd2l0Y2hlci1zcXVhcmUsXG4uc3dpdGNoZXItc3F1YXJlIC5zd2l0Y2hlci1pbmRpY2F0b3Ige1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItcmFkaXVzOiAkc3dpdGNoZXItc3F1YXJlLWJvcmRlci1yYWRpdXM7XG4gIH0gQGVsc2Uge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbn1cblxuLnN3aXRjaGVyLXNxdWFyZSAuc3dpdGNoZXItaW5kaWNhdG9yOjphZnRlciB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1yYWRpdXM6IGlmKCRtYXRlcmlhbC1zdHlsZSwgJHN3aXRjaGVyLXNxdWFyZS1ib3JkZXItcmFkaXVzLCBjYWxjKCN7JHN3aXRjaGVyLXNxdWFyZS1ib3JkZXItcmFkaXVzfSAtIDJweCkpO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogU2l6ZXNcblxuQGluY2x1ZGUgYXBwd29yay1zd2l0Y2hlci1zaXplKFwic21cIiwgJHN3aXRjaGVyLXdpZHRoLXNtLCAkc3dpdGNoZXItaGVpZ2h0LXNtLCAkc3dpdGNoZXItZm9udC1zaXplLCAkc3dpdGNoZXItbGFiZWwtZm9udC1zaXplLXNtLCAkc3dpdGNoZXItbGFiZWwtbGluZS1oZWlnaHQtc20pO1xuQGluY2x1ZGUgYXBwd29yay1zd2l0Y2hlci1zaXplKFwibGdcIiwgJHN3aXRjaGVyLXdpZHRoLWxnLCAkc3dpdGNoZXItaGVpZ2h0LWxnLCAkc3dpdGNoZXItZm9udC1zaXplLCAkc3dpdGNoZXItbGFiZWwtZm9udC1zaXplLWxnLCAkc3dpdGNoZXItbGFiZWwtbGluZS1oZWlnaHQtbGcpO1xuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFZhcmlhdGlvbnNcblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpZiAkY29sb3IgIT0gcHJpbWFyeSBhbmQgJGNvbG9yICE9IGxpZ2h0IHtcbiAgICBAaWYgJG1hdGVyaWFsLXN0eWxlIHtcbiAgICAgIEBpbmNsdWRlIGFwcHdvcmstbWF0ZXJpYWwtc3dpdGNoZXItdmFyaWFudCgnLnN3aXRjaGVyLSN7JGNvbG9yfScsICR2YWx1ZSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBhcHB3b3JrLXN3aXRjaGVyLXZhcmlhbnQoJy5zd2l0Y2hlci0jeyRjb2xvcn0nLCAkdmFsdWUpO1xuICAgIH1cbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFZhbGlkYXRpb24gc3RhdGVzXG5cbi5zd2l0Y2hlciAudmFsaWQtZmVlZGJhY2ssXG4uc3dpdGNoZXIgLmludmFsaWQtZmVlZGJhY2sge1xuICBwYWRkaW5nLWxlZnQ6ICRzd2l0Y2hlci1ndXR0ZXI7XG59XG5cbkBpZiAkbWF0ZXJpYWwtc3R5bGUge1xuICBAaW5jbHVkZSBhcHB3b3JrLW1hdGVyaWFsLXN3aXRjaGVyLXZhbGlkYXRpb24tc3RhdGUoXCJ2YWxpZFwiLCAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcik7XG4gIEBpbmNsdWRlIGFwcHdvcmstbWF0ZXJpYWwtc3dpdGNoZXItdmFsaWRhdGlvbi1zdGF0ZShcImludmFsaWRcIiwgJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcik7XG59IEBlbHNlIHtcbiAgQGluY2x1ZGUgYXBwd29yay1zd2l0Y2hlci12YWxpZGF0aW9uLXN0YXRlKFwidmFsaWRcIiwgJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IpO1xuICBAaW5jbHVkZSBhcHB3b3JrLXN3aXRjaGVyLXZhbGlkYXRpb24tc3RhdGUoXCJpbnZhbGlkXCIsICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IpO1xufVxuIiwiLy8gSW5wdXQgZ3JvdXBzXG4vL1xuXG4uaW5wdXQtZ3JvdXAgLmN1c3RvbS1zZWxlY3Qge1xuICBmbGV4OiAwIDEgYXV0bztcbiAgd2lkdGg6IGF1dG87XG59XG5cbi5pbnB1dC1ncm91cC10ZXh0IHtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBCdXR0b24gZ3JvdXBzIHdpdGhpbiBpbnB1dCBncm91cCBhZGRvblxuXG4uaW5wdXQtZ3JvdXA+LmlucHV0LWdyb3VwLWFwcGVuZD4uYnRuLWdyb3VwPi5idG4sXG4uaW5wdXQtZ3JvdXA+LmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQ+LmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKT4uYnRuLFxuLmlucHV0LWdyb3VwPi5pbnB1dC1ncm91cC1wcmVwZW5kOm5vdCg6Zmlyc3QtY2hpbGQpPi5idG4tZ3JvdXA+LmJ0biB7XG4gIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbn1cblxuLmlucHV0LWdyb3VwPi5pbnB1dC1ncm91cC1wcmVwZW5kPi5idG4tZ3JvdXA+LmJ0bixcbi5pbnB1dC1ncm91cD4uaW5wdXQtZ3JvdXAtYXBwZW5kOmxhc3QtY2hpbGQ+LmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpPi5idG4sXG4uaW5wdXQtZ3JvdXA+LmlucHV0LWdyb3VwLWFwcGVuZDpub3QoOmxhc3QtY2hpbGQpPi5idG4tZ3JvdXA+LmJ0biB7XG4gIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG59XG5cbi5pbnB1dC1ncm91cC1hcHBlbmQsXG4uaW5wdXQtZ3JvdXAtcHJlcGVuZCB7XG4gIC5idG4gKyAuYnRuLWdyb3VwLFxuICAuYnRuLWdyb3VwICsgLmJ0bixcbiAgLmJ0bi1ncm91cCsuYnRuLWdyb3VwLFxuICAuYnRuLWdyb3VwKy5pbnB1dC1ncm91cC10ZXh0LFxuICAuaW5wdXQtZ3JvdXAtdGV4dCsuYnRuLWdyb3VwIHtcbiAgICBtYXJnaW4tbGVmdDogLTEgKiAkaW5wdXQtYm9yZGVyLXdpZHRoO1xuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogTWF0ZXJpYWxcblxuQGlmICRtYXRlcmlhbC1zdHlsZSB7XG4gIC5pbnB1dC1ncm91cC10ZXh0IHtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtdGV4dCsuaW5wdXQtZ3JvdXAtdGV4dCxcbiAgLmlucHV0LWdyb3VwLXByZXBlbmQgLmlucHV0LWdyb3VwLXRleHQ6Zmlyc3QtY2hpbGQsXG4gIC5pbnB1dC1ncm91cC1hcHBlbmQgLmlucHV0LWdyb3VwLXRleHQ6Zmlyc3QtY2hpbGQsXG4gIC5pbnB1dC1ncm91cD4uZm9ybS1jb250cm9sOmZpcnN0LWNoaWxkLFxuICAuaW5wdXQtZ3JvdXA+LmN1c3RvbS1zZWxlY3Q6Zmlyc3QtY2hpbGQsXG4gIC5pbnB1dC1ncm91cD4uZm9ybS1jb250cm9sKy5mb3JtLWNvbnRyb2wsXG4gIC5pbnB1dC1ncm91cD4uZm9ybS1jb250cm9sKy5jdXN0b20tc2VsZWN0LFxuICAuaW5wdXQtZ3JvdXA+LmN1c3RvbS1zZWxlY3QrLmZvcm0tY29udHJvbCxcbiAgLmlucHV0LWdyb3VwPi5jdXN0b20tc2VsZWN0Ky5jdXN0b20tc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBsdHItc3R5bGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIHJ0bC1zdHlsZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1wcmVwZW5kIC5pbnB1dC1ncm91cC10ZXh0Omxhc3QtY2hpbGQsXG4gIC5pbnB1dC1ncm91cC1hcHBlbmQgLmlucHV0LWdyb3VwLXRleHQ6bGFzdC1jaGlsZCxcbiAgLmlucHV0LWdyb3VwPi5mb3JtLWNvbnRyb2w6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgbHRyLXN0eWxlIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXA+LmN1c3RvbS1zZWxlY3Q6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgbHRyLXN0eWxlIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtcbiAgICB9XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBSVExcblxuQGluY2x1ZGUgcnRsLW9ubHkge1xuICAvLyBSZXNldCBib3JkZXIgcmFkaXVzXG5cbiAgLmlucHV0LWdyb3VwPi5mb3JtLWNvbnRyb2wsXG4gIC5pbnB1dC1ncm91cD4uY3VzdG9tLXNlbGVjdCxcbiAgLmlucHV0LWdyb3VwPi5pbnB1dC1ncm91cC1wcmVwZW5kPi5pbnB1dC1ncm91cC10ZXh0LFxuICAuaW5wdXQtZ3JvdXA+LmlucHV0LWdyb3VwLWFwcGVuZD4uaW5wdXQtZ3JvdXAtdGV4dCxcbiAgLmlucHV0LWdyb3VwPi5jdXN0b20tZmlsZSAuY3VzdG9tLWZpbGUtbGFiZWwsXG4gIC5pbnB1dC1ncm91cD4uY3VzdG9tLWZpbGUgLmN1c3RvbS1maWxlLWxhYmVsOjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xuICB9XG4gIC5pbnB1dC1ncm91cD4uaW5wdXQtZ3JvdXAtcHJlcGVuZD4uYnRuLFxuICAuaW5wdXQtZ3JvdXA+LmlucHV0LWdyb3VwLWFwcGVuZD4uYnRuLFxuICAuaW5wdXQtZ3JvdXA+LmlucHV0LWdyb3VwLXByZXBlbmQ+LmJ0bi1ncm91cD4uYnRuLFxuICAuaW5wdXQtZ3JvdXA+LmlucHV0LWdyb3VwLWFwcGVuZD4uYnRuLWdyb3VwPi5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJ0bi1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1sZz4uZm9ybS1jb250cm9sLFxuICAuaW5wdXQtZ3JvdXAtbGc+LmN1c3RvbS1zZWxlY3QsXG4gIC5pbnB1dC1ncm91cC1sZz4uaW5wdXQtZ3JvdXAtcHJlcGVuZD4uaW5wdXQtZ3JvdXAtdGV4dCxcbiAgLmlucHV0LWdyb3VwLWxnPi5pbnB1dC1ncm91cC1hcHBlbmQ+LmlucHV0LWdyb3VwLXRleHQsXG4gIC5pbnB1dC1ncm91cC1sZz4uY3VzdG9tLWZpbGUgLmN1c3RvbS1maWxlLWxhYmVsLFxuICAuaW5wdXQtZ3JvdXAtbGc+LmN1c3RvbS1maWxlIC5jdXN0b20tZmlsZS1sYWJlbDo6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLWxnKTtcbiAgfVxuICAuaW5wdXQtZ3JvdXAtbGc+LmlucHV0LWdyb3VwLXByZXBlbmQ+LmJ0bixcbiAgLmlucHV0LWdyb3VwLWxnPi5pbnB1dC1ncm91cC1hcHBlbmQ+LmJ0bixcbiAgLmlucHV0LWdyb3VwLWxnPi5pbnB1dC1ncm91cC1wcmVwZW5kPi5idG4tZ3JvdXA+LmJ0bixcbiAgLmlucHV0LWdyb3VwLWxnPi5pbnB1dC1ncm91cC1hcHBlbmQ+LmJ0bi1ncm91cD4uYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRidG4tYm9yZGVyLXJhZGl1cy1sZyk7XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtc20+LmZvcm0tY29udHJvbCxcbiAgLmlucHV0LWdyb3VwLXNtPi5jdXN0b20tc2VsZWN0LFxuICAuaW5wdXQtZ3JvdXAtc20+LmlucHV0LWdyb3VwLXByZXBlbmQ+LmlucHV0LWdyb3VwLXRleHQsXG4gIC5pbnB1dC1ncm91cC1zbT4uaW5wdXQtZ3JvdXAtYXBwZW5kPi5pbnB1dC1ncm91cC10ZXh0LFxuICAuaW5wdXQtZ3JvdXAtc20+LmN1c3RvbS1maWxlIC5jdXN0b20tZmlsZS1sYWJlbCxcbiAgLmlucHV0LWdyb3VwLXNtPi5jdXN0b20tZmlsZSAuY3VzdG9tLWZpbGUtbGFiZWw6OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbSk7XG4gIH1cbiAgLmlucHV0LWdyb3VwLXNtPi5pbnB1dC1ncm91cC1wcmVwZW5kPi5idG4sXG4gIC5pbnB1dC1ncm91cC1zbT4uaW5wdXQtZ3JvdXAtYXBwZW5kPi5idG4tZ3JvdXA+LmJ0bixcbiAgLmlucHV0LWdyb3VwLXNtPi5pbnB1dC1ncm91cC1wcmVwZW5kPi5idG4tZ3JvdXA+LmJ0bixcbiAgLmlucHV0LWdyb3VwLXNtPi5pbnB1dC1ncm91cC1hcHBlbmQ+LmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYnRuLWJvcmRlci1yYWRpdXMtc20pO1xuICB9XG5cbiAgLy8gUmVtb3ZlIGJvcmRlciByYWRpdXNcblxuICAuaW5wdXQtZ3JvdXA+LmZvcm0tY29udHJvbCxcbiAgLmlucHV0LWdyb3VwPi5jdXN0b20tc2VsZWN0IHtcbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuICAgIH1cblxuICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXA+LmN1c3RvbS1maWxlIHtcblxuICAgICY6bm90KDpsYXN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWwsXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuICAgIH1cblxuICAgICY6bm90KDpmaXJzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwPi5pbnB1dC1ncm91cC1wcmVwZW5kPi5idG4sXG4gIC5pbnB1dC1ncm91cD4uaW5wdXQtZ3JvdXAtcHJlcGVuZD4uaW5wdXQtZ3JvdXAtdGV4dCxcbiAgLmlucHV0LWdyb3VwPi5pbnB1dC1ncm91cC1hcHBlbmQ6bm90KDpsYXN0LWNoaWxkKT4uYnRuLFxuICAuaW5wdXQtZ3JvdXA+LmlucHV0LWdyb3VwLWFwcGVuZDpub3QoOmxhc3QtY2hpbGQpPi5pbnB1dC1ncm91cC10ZXh0LFxuICAuaW5wdXQtZ3JvdXA+LmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkPi5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4gIC5pbnB1dC1ncm91cD4uaW5wdXQtZ3JvdXAtYXBwZW5kOmxhc3QtY2hpbGQ+LmlucHV0LWdyb3VwLXRleHQ6bm90KDpsYXN0LWNoaWxkKSxcbiAgLmlucHV0LWdyb3VwPi5pbnB1dC1ncm91cC1wcmVwZW5kPi5idG4tZ3JvdXA+LmJ0bixcbiAgLmlucHV0LWdyb3VwPi5pbnB1dC1ncm91cC1hcHBlbmQ+LmJ0bi1ncm91cD4uYnRuOm5vdCg6bGFzdC1vZi10eXBlKSxcbiAgLmlucHV0LWdyb3VwPi5pbnB1dC1ncm91cC1hcHBlbmQ6bGFzdC1jaGlsZD4uYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCk+LmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuICB9XG5cbiAgLmlucHV0LWdyb3VwPi5pbnB1dC1ncm91cC1hcHBlbmQ+LmJ0bixcbiAgLmlucHV0LWdyb3VwPi5pbnB1dC1ncm91cC1hcHBlbmQ+LmlucHV0LWdyb3VwLXRleHQsXG4gIC5pbnB1dC1ncm91cD4uaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKT4uYnRuLFxuICAuaW5wdXQtZ3JvdXA+LmlucHV0LWdyb3VwLXByZXBlbmQ6bm90KDpmaXJzdC1jaGlsZCk+LmlucHV0LWdyb3VwLXRleHQsXG4gIC5pbnB1dC1ncm91cD4uaW5wdXQtZ3JvdXAtcHJlcGVuZDpmaXJzdC1jaGlsZD4uYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAuaW5wdXQtZ3JvdXA+LmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQ+LmlucHV0LWdyb3VwLXRleHQ6bm90KDpmaXJzdC1jaGlsZCksXG4gIC5pbnB1dC1ncm91cD4uaW5wdXQtZ3JvdXAtYXBwZW5kPi5idG4tZ3JvdXA+LmJ0bixcbiAgLmlucHV0LWdyb3VwPi5pbnB1dC1ncm91cC1wcmVwZW5kPi5idG4tZ3JvdXA+LmJ0bjpub3QoOmZpcnN0LW9mLXR5cGUpLFxuICAuaW5wdXQtZ3JvdXA+LmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQ+LmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKT4uYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuICB9XG5cbiAgLy8gTWFyZ2luc1xuXG4gIC5pbnB1dC1ncm91cD4uZm9ybS1jb250cm9sLFxuICAuaW5wdXQtZ3JvdXA+LmZvcm0tY29udHJvbC1wbGFpbnRleHQsXG4gIC5pbnB1dC1ncm91cD4uY3VzdG9tLXNlbGVjdCxcbiAgLmlucHV0LWdyb3VwPi5jdXN0b20tZmlsZSB7XG5cbiAgICArLmZvcm0tY29udHJvbCxcbiAgICArLmN1c3RvbS1zZWxlY3QsXG4gICAgKy5jdXN0b20tZmlsZSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLXByZXBlbmQsXG4gIC5pbnB1dC1ncm91cC1hcHBlbmQge1xuICAgIC5idG4rLmJ0bixcbiAgICAuYnRuKy5pbnB1dC1ncm91cC10ZXh0LFxuICAgIC5pbnB1dC1ncm91cC10ZXh0Ky5pbnB1dC1ncm91cC10ZXh0LFxuICAgIC5pbnB1dC1ncm91cC10ZXh0Ky5idG4sXG4gICAgLmJ0bisuYnRuLWdyb3VwLFxuICAgIC5idG4tZ3JvdXArLmJ0bixcbiAgICAuYnRuLWdyb3VwKy5idG4tZ3JvdXAsXG4gICAgLmJ0bi1ncm91cCsuaW5wdXQtZ3JvdXAtdGV4dCxcbiAgICAuaW5wdXQtZ3JvdXAtdGV4dCsuYnRuLWdyb3VwIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLSRpbnB1dC1ib3JkZXItd2lkdGg7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtcHJlcGVuZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDtcbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1hcHBlbmQge1xuICAgIG1hcmdpbi1yaWdodDogLSRpbnB1dC1ib3JkZXItd2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cbiIsIi8vIE1vZGFsc1xuLy9cblxuLm1vZGFsIHtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbC10b3A7XG59XG5cbi5tb2RhbC1iYWNrZHJvcCB7XG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWwtdG9wIC0gMTtcbn1cblxuLm1vZGFsLWNvbnRlbnQge1xuICBib3gtc2hhZG93OiAkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzO1xufVxuXG4ubW9kYWwtaGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXJpZ2h0OiAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteCArIDFyZW07XG5cbiAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteDtcbiAgICBwYWRkaW5nLWxlZnQ6ICRtb2RhbC1oZWFkZXItcGFkZGluZy14ICsgMXJlbTtcbiAgfVxufVxuXG4ubW9kYWwtZm9vdGVyIHtcbiAgcGFkZGluZzogJG1vZGFsLWZvb3Rlci1wYWRkaW5nO1xuXG4gIEBpbmNsdWRlIHJ0bC1zdHlsZSB7XG4gICAgPiA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC4yNXJlbTtcbiAgICB9XG4gICAgPiA6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogLjI1cmVtO1xuICAgIH1cbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIENsb3NlIGJ1dHRvblxuXG4ubW9kYWwtaGVhZGVyIC5jbG9zZSxcbi5tb2RhbC1zbGlkZSAuY2xvc2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICByaWdodDogJG1vZGFsLWhlYWRlci1wYWRkaW5nLXg7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGluZS1oZWlnaHQ6ICRtb2RhbC10aXRsZS1saW5lLWhlaWdodDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG5cbiAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteDtcbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFJlc3BvbnNpdmVcblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAubW9kYWwtY29udGVudCB7XG4gICAgYm94LXNoYWRvdzogJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cDtcbiAgfVxuXG4gIG5nYi1tb2RhbC13aW5kb3cubW9kYWwtc20ge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgfVxuICAubW9kYWwtc20gLm1vZGFsLWRpYWxvZyB7XG4gICAgbWF4LXdpZHRoOiAkbW9kYWwtc207XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICBuZ2ItbW9kYWwtd2luZG93Lm1vZGFsLWxnLFxuICBuZ2ItbW9kYWwtd2luZG93Lm1vZGFsLXhsIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gIH1cbiAgLm1vZGFsLWxnIC5tb2RhbC1kaWFsb2csXG4gIC5tb2RhbC14bCAubW9kYWwtZGlhbG9nIHtcbiAgICBtYXgtd2lkdGg6ICRtb2RhbC1sZztcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gIG5nYi1tb2RhbC13aW5kb3cubW9kYWwteGwge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgfVxuICAubW9kYWwteGwgLm1vZGFsLWRpYWxvZyB7XG4gICAgbWF4LXdpZHRoOiAkbW9kYWwteGw7XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBUb3AgbW9kYWxzXG5cbi5tb2RhbC10b3Age1xuICAubW9kYWwtZGlhbG9nIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogU2xpZGUgbW9kYWxzXG5cbi5tb2RhbC1zbGlkZSxcbi5tb2RhbC1zbGlkZSAubW9kYWwge1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuLm1vZGFsLXNsaWRlIHtcbiAgLm1vZGFsLWRpYWxvZyB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW46IDA7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGVmdDogMDtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogKG1hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsIHNtKSkpIHtcbiAgICAgIHdpZHRoOiAkbW9kYWwtc2xpZGUtd2lkdGg7XG4gICAgfVxuICB9XG5cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIHBhZGRpbmctdG9wOiAoJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0ICogJGNsb3NlLWZvbnQtc2l6ZSkgKyAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteTtcbiAgICBwYWRkaW5nLWJvdHRvbTogKCRtb2RhbC10aXRsZS1saW5lLWhlaWdodCAqICRjbG9zZS1mb250LXNpemUpICsgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXk7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cblxuICAubW9kYWwtYm9keSB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIG1hcmdpbjogYXV0byAwO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG5cbiAgLmNsb3NlIHtcbiAgICB0b3A6ICRtb2RhbC1oZWFkZXItcGFkZGluZy15IC8gMjtcbiAgICB6LWluZGV4OiAxMDtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBGaWxsLUluIG1vZGFsc1xuXG4ubW9kYWwtZmlsbC1pbiB7XG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZy10b3A6ICgkbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQgKiAkY2xvc2UtZm9udC1zaXplKSArICRtb2RhbC1oZWFkZXItcGFkZGluZy15O1xuICAgIHBhZGRpbmctYm90dG9tOiAoJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0ICogJGNsb3NlLWZvbnQtc2l6ZSkgKyAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteTtcbiAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgfVxuXG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cblxuICAuY2xvc2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0ycmVtO1xuICAgIHJpZ2h0OiAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteDtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgdHJhbnNmb3JtOiBub25lO1xuXG4gICAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGVmdDogJG1vZGFsLWhlYWRlci1wYWRkaW5nLXg7XG4gICAgfVxuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogQW5pbWF0aW9uc1xuXG4vLyBEZWZhdWx0XG5cbi5tb2RhbC5mYWRlIC5tb2RhbC1kaWFsb2cge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTUwcHgpIHNjYWxlKC44KTtcbn1cblxuLm1vZGFsLnNob3cgLm1vZGFsLWRpYWxvZyB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSBzY2FsZSgxKTtcbn1cblxuLy8gVG9wXG5cbi5tb2RhbC10b3AuZmFkZSAubW9kYWwtZGlhbG9nLFxuLm1vZGFsLXRvcCAubW9kYWwuZmFkZSAubW9kYWwtZGlhbG9nIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbn1cblxuLm1vZGFsLXRvcC5zaG93IC5tb2RhbC1kaWFsb2csXG4ubW9kYWwtdG9wIC5tb2RhbC5zaG93IC5tb2RhbC1kaWFsb2cge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG59XG5cbi8vIFNsaWRlXG5cbi5tb2RhbC1zbGlkZS5mYWRlIC5tb2RhbC1kaWFsb2csXG4ubW9kYWwtc2xpZGUgLm1vZGFsLmZhZGUgLm1vZGFsLWRpYWxvZyB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcblxuICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gIH1cbn1cblxuLm1vZGFsLXNsaWRlLnNob3cgLm1vZGFsLWRpYWxvZyxcbi5tb2RhbC1zbGlkZSAubW9kYWwuc2hvdyAubW9kYWwtZGlhbG9nIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApICFpbXBvcnRhbnQ7XG59XG5cbi8vIEZpbGwtSW5cblxuLm1vZGFsLWZpbGwtaW4uZmFkZSAubW9kYWwtZGlhbG9nLFxuLm1vZGFsLWZpbGwtaW4gLm1vZGFsLmZhZGUgLm1vZGFsLWRpYWxvZyB7XG4gIHRyYW5zZm9ybTogc2NhbGUoLjUsIC41KTtcbn1cblxuLm1vZGFsLWZpbGwtaW4uc2hvdyAubW9kYWwtZGlhbG9nLFxuLm1vZGFsLWZpbGwtaW4gLm1vZGFsLnNob3cgLm1vZGFsLWRpYWxvZyB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSwgMSk7XG59XG4iLCIvLyBCcmVhZGNydW1ic1xuLy9cblxuLmJyZWFkY3J1bWItaXRlbSxcbi5icmVhZGNydW1iLWl0ZW0gYSB7XG4gIGNvbG9yOiAkYnJlYWRjcnVtYi1jb2xvcjtcblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgY29sb3I6ICRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjtcbiAgfVxufVxuXG4uYnJlYWRjcnVtYi1pdGVtLmFjdGl2ZSBhIHtcbiAgJixcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogUlRMXG5cbkBpbmNsdWRlIHJ0bC1vbmx5IHtcbiAgLmJyZWFkY3J1bWItaXRlbSArLmJyZWFkY3J1bWItaXRlbSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRicmVhZGNydW1iLWl0ZW0tcGFkZGluZztcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRicmVhZGNydW1iLWl0ZW0tcGFkZGluZztcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBjb250ZW50OiBcIiN7JGJyZWFkY3J1bWItZGl2aWRlci1ydGx9XCI7XG4gICAgfVxuICB9XG59XG4iLCIvLyBMaXN0IGdyb3Vwc1xuLy9cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpZiAkY29sb3IgIT0gcHJpbWFyeSBhbmQgJGNvbG9yICE9IGxpZ2h0IHtcbiAgICBAaW5jbHVkZSBhcHB3b3JrLWxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCcubGlzdC1ncm91cC1pdGVtLSN7JGNvbG9yfScsICR2YWx1ZSk7XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBSVExcblxuQGluY2x1ZGUgcnRsLW9ubHkge1xuICAubGlzdC1ncm91cCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxufVxuIiwiLy8gTmF2YmFyXG4vL1xuXG4ubmF2YmFyIHtcbiAgei1pbmRleDogMjtcbn1cblxuLmZpeGVkLXRvcCB7XG4gIHotaW5kZXg6ICR6aW5kZXgtZml4ZWQ7XG59XG5cbkBpbmNsdWRlIHJ0bC1vbmx5IHtcbiAgLm5hdmJhci1uYXYge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cblxuICAubmF2YmFyLWJyYW5kIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6ICRuYXZiYXItcGFkZGluZy14O1xuICB9XG59XG5cbi5uYXZiYXIubmF2YmFyLWRhcmsge1xuICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xufVxuXG4ubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLm5hdi1saW5rLmRpc2FibGVkIHtcbiAgY29sb3I6ICRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvciAhaW1wb3J0YW50O1xufVxuXG4ubmF2YmFyLm5hdmJhci1saWdodCB7XG4gIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xufVxuXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5uYXYtbGluay5kaXNhYmxlZCB7XG4gIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yICFpbXBvcnRhbnQ7XG59XG5cbi8vIElFIGZpeFxuLm5hdmJhci1jb2xsYXBzZSxcbi5uYXZiYXItYnJhbmQsXG4ubmF2YmFyLXRleHQge1xuICBmbGV4LXNocmluazogMTtcbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBSdWxlcnNcblxuLm5hdmJhci1kYXJrIGhyIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xKTtcbn1cblxuLm5hdmJhci1saWdodCBociB7XG4gIGJvcmRlci1jb2xvcjogJGdyYXktMTAwO1xufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEljb25zXG5cbi5uYXZiYXItaWNvbiB7XG4gIGZvbnQtc2l6ZTogMTMwJTtcbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBTZWFyY2ggYm94XG5cbi5uYXZiYXItc2VhcmNoLWJveCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbjogMDtcblxuICAmOm5vdCguYWN0aXZlKSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5cbi5uYXZiYXItc2VhcmNoLWlucHV0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWF4LXdpZHRoOiAwO1xuICB0cmFuc2l0aW9uOiBtYXgtd2lkdGggLjNzIGVhc2UtaW4tb3V0O1xuXG4gIC5uYXZiYXItc2VhcmNoLWJveC5hY3RpdmUgJiB7XG4gICAgbWF4LXdpZHRoOiAxMDB2dztcbiAgfVxuXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDtcblxuICAgIC5uYXZiYXItZGFyayAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yO1xuICAgIH1cblxuICAgIC5uYXZiYXItbGlnaHQgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5uYXZiYXItc2VhcmNoLWNhbmNlbCB7XG4gIGNvbG9yOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiAxMDA7XG4gIGZvbnQtc2l6ZTogMS41NWVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgb3BhY2l0eTogLjU7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4ubmF2YmFyLWV4cGFuZCB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgJiN7JGluZml4fSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgICAgIC5uYXZiYXItc2VhcmNoLWJveC5uYXYtbGluayB7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkYnJlYWtwb2ludCkge1xuICAgICAgICAubmF2YmFyLXNlYXJjaC1pbnB1dCB7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDB2dztcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItc2VhcmNoLWlucHV0IC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLXNlYXJjaC1jYW5jZWwge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmLm5hdmJhci1kYXJrIC5uYXZiYXItc2VhcmNoLWJveCB7XG4gICAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgICYubmF2YmFyLWxpZ2h0IC5uYXZiYXItc2VhcmNoLWJveCB7XG4gICAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBNZWdhIGRyb3Bkb3duXG5cbi5tZWdhLWRyb3Bkb3duIHtcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxufVxuIiwiLy8gQ2FyZHNcbi8vXG5cbi5jYXJkIHtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm94LXNoYWRvdzogJGNhcmQtc2hhZG93O1xufVxuXG4uY2FyZC1saW5rIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5AaW5jbHVkZSBydGwtb25seSB7XG4gIC5jYXJkLWxpbmsgKyAuY2FyZC1saW5rIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRjYXJkLXNwYWNlci14O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cbi5jYXJkLWhlYWRlciB7XG4gIGxpbmUtaGVpZ2h0OiAkY29tcG9uZW50LWxpbmUtaGVpZ2h0O1xufVxuXG5AaWYgJG1hdGVyaWFsLXN0eWxlIHtcbiAgLmNhcmQtaGVhZGVyIHtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7XG4gIH1cblxuICAuY2FyZC1mb290ZXIge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDtcbiAgfVxufVxuXG4vLyBJbm5lciBib3JkZXJzXG5cbi5jYXJkLWhlYWRlcixcbi5jYXJkLWZvb3Rlcixcbi5jYXJkIGhyIHtcbiAgYm9yZGVyLWNvbG9yOiAkY2FyZC1pbm5lci1ib3JkZXItY29sb3I7XG59XG5cbi5jYXJkIC5saXN0LWdyb3VwLWl0ZW0ge1xuICBib3JkZXItY29sb3I6IHJnYmEtdG8taGV4KCRjYXJkLWlubmVyLWJvcmRlci1jb2xvcik7XG59XG5cbi5jYXJkIC5yb3ctYm9yZGVyZWQgPiBbY2xhc3NePVwiY29sLVwiXSxcbi5jYXJkIC5yb3ctYm9yZGVyZWQgPiBbY2xhc3MqPVwiIGNvbC1cIl0sXG4uY2FyZCAucm93LWJvcmRlcmVkID4gW2NsYXNzXj1cImNvbCBcIl0sXG4uY2FyZCAucm93LWJvcmRlcmVkID4gW2NsYXNzKj1cIiBjb2wgXCJdLFxuLmNhcmQgLnJvdy1ib3JkZXJlZCA+IFtjbGFzcyQ9XCIgY29sXCJdLFxuLmNhcmQgLnJvdy1ib3JkZXJlZCA+IFtjbGFzcz1cImNvbFwiXSB7XG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIGJvcmRlci1jb2xvcjogJGNhcmQtaW5uZXItYm9yZGVyLWNvbG9yO1xuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogSGVhZGVyIC8gVGl0bGUgd2l0aCBlbGVtZW50cyhjb250cm9scylcblxuLmNhcmQtaGVhZGVyLndpdGgtZWxlbWVudHMsXG4uY2FyZC10aXRsZS53aXRoLWVsZW1lbnRzIHtcbiAgZGlzcGxheTogZmxleDtcblxuICB3aWR0aDogMTAwJTtcblxuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbi5jYXJkLWhlYWRlci53aXRoLWVsZW1lbnRzIHtcbiAgcGFkZGluZy10b3A6ICRjYXJkLXNwYWNlci15IC8gMjtcbiAgcGFkZGluZy1ib3R0b206ICRjYXJkLXNwYWNlci15IC8gMjtcbn1cblxuLmNhcmQtaGVhZGVyLWVsZW1lbnRzLFxuLmNhcmQtdGl0bGUtZWxlbWVudHMge1xuICBkaXNwbGF5OiBmbGV4O1xuXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXgtd3JhcDogd3JhcDtcblxuICAmICsgJixcbiAgPiAqICsgKiB7XG4gICAgbWFyZ2luLWxlZnQ6IC4yNXJlbTtcblxuICAgIEBpbmNsdWRlIHJ0bC1zdHlsZSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC4yNXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4uY2FyZC1oZWFkZXItdGl0bGUge1xuICBwYWRkaW5nOiAoJGNhcmQtc3BhY2VyLXkgLyAyKSAwO1xufVxuXG4uY2FyZC1oZWFkZXItZWxlbWVudHMge1xuICBwYWRkaW5nLXRvcDogLjI1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogLjI1cmVtO1xufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIExpc3QgZ3JvdXBzXG5cbi5jYXJkID4gLmxpc3QtZ3JvdXAgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHBhZGRpbmctcmlnaHQ6ICRjYXJkLXNwYWNlci14O1xuICBwYWRkaW5nLWxlZnQ6ICRjYXJkLXNwYWNlci14O1xufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIENvbmRlbmNlZFxuXG4uY2FyZC1jb25kZW5jZWQge1xuICAuY2FyZC1oZWFkZXIsXG4gIC5jYXJkLWZvb3RlcixcbiAgPiAubGlzdC1ncm91cCAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkY2FyZC1zcGFjZXIteC1zbTtcbiAgICBwYWRkaW5nLWxlZnQ6ICRjYXJkLXNwYWNlci14LXNtO1xuICB9XG5cbiAgLmNhcmQtYm9keSxcbiAgLmNhcmQtaW1nLW92ZXJsYXkge1xuICAgIHBhZGRpbmc6ICRjYXJkLXNwYWNlci14LXNtO1xuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogSG92ZXJhYmxlXG5cbmh0bWw6bm90KFtkaXI9cnRsXSkgLmNhcmQtaG92ZXJbY2xhc3NdLFxuaHRtbFtkaXI9cnRsXSAuY2FyZC1ob3ZlcltjbGFzc10ge1xuICB0cmFuc2l0aW9uOiBhbGwgLjJzO1xuXG4gICY6bm90KDpob3Zlcikge1xuICAgIGNvbG9yOiAkYm9keS1jb2xvciAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFJUTFxuXG5AaW5jbHVkZSBydGwtb25seSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICAuY2FyZC1ncm91cCA+IC5jYXJkIHtcbiAgICAgIGJvcmRlcjogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRjYXJkLWJvcmRlci1yYWRpdXM7XG5cbiAgICAgIC5jYXJkLWltZy10b3AsXG4gICAgICAuY2FyZC1oZWFkZXI6Zmlyc3QtY2hpbGQge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cblxuICAgICAgLmNhcmQtaW1nLWJvdHRvbSxcbiAgICAgIC5jYXJkLWZvb3RlcjpsYXN0LWNoaWxkIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG5cbiAgICAgICsgLmNhcmQge1xuICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSGFuZGxlIHJvdW5kZWQgY29ybmVyc1xuICAgIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgICAgLmNhcmQtZ3JvdXAgPiAuY2FyZCB7XG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNhcmQtaW1nLWJvdHRvbSxcbiAgICAgICAgICAuY2FyZC1mb290ZXIge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gQWNjb3JkaW9uc1xuLy9cblxuLmNvbGxhcHNlLWljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIHdpZHRoOiAuODc1cmVtO1xuICBoZWlnaHQ6IC44NzVyZW07XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tdG9wOiAtLjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAtLjI1cmVtO1xuICAgIHdpZHRoOiAuNXJlbTtcbiAgICBoZWlnaHQ6IC41cmVtO1xuICAgIGJvcmRlci1ib3R0b206IC4wNjI1cmVtIHNvbGlkICRncmF5LTQwMDtcbiAgICBib3JkZXItbGVmdDogLjA2MjVyZW0gc29saWQgJGdyYXktNDAwO1xuICAgIHRyYW5zaXRpb246IGFsbCAuM3M7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcblxuICAgIFthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSAmIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDEzNWRlZyk7XG4gICAgfVxuICB9XG59XG5cbi5hY2NvcmRpb24gPiAuY2FyZCB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7XG5cbiAgLmNhcmQtaGVhZGVyOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gIH1cbn1cbiIsIi8vIENhcm91c2VsXG4vL1xuXG5AaW5jbHVkZSBydGwtb25seSB7XG4gIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1sZWZ0LFxuICAuY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tcmlnaHQge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcblxuICAgIEBzdXBwb3J0cyAodHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZCkge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB9XG4gIH1cblxuICAuY2Fyb3VzZWwtaXRlbS1uZXh0Om5vdCguY2Fyb3VzZWwtaXRlbS1sZWZ0KSxcbiAgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXJpZ2h0IHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuXG4gICAgQHN1cHBvcnRzICh0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkKSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgICB9XG4gIH1cblxuICAuY2Fyb3VzZWwtaXRlbS1wcmV2Om5vdCguY2Fyb3VzZWwtaXRlbS1yaWdodCksXG4gIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0IHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG5cbiAgICBAc3VwcG9ydHMgKHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2QpIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gICAgfVxuICB9XG5cbiAgLmNhcm91c2VsLWNvbnRyb2wtcHJldiB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuXG4gIC5jYXJvdXNlbC1jb250cm9sLW5leHQge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gIH1cblxuICAuY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gICAgcGFkZGluZy1yaWdodDogMDsgLy8gb3ZlcnJpZGUgPG9sPiBkZWZhdWx0XG4gIH1cblxuICAuY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24sXG4gIC5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICB9XG59XG4iLCIvLyBDbG9zZSBidXR0b25zXG4vL1xuXG4uY2xvc2U6Zm9jdXMge1xuICBvdXRsaW5lOiAwO1xufVxuXG5AaW5jbHVkZSBydGwtb25seSB7XG4gIC5jbG9zZSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbn1cbiIsIi8vIFRvYXN0c1xuLy9cblxuLnRvYXN0LmJzNC10b2FzdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xufVxuXG4uYnM0LXRvYXN0W2NsYXNzXj1cImJnLVwiXSxcbi5iczQtdG9hc3RbY2xhc3MqPVwiIGJnLVwiXSB7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpZiAkY29sb3IgIT0gcHJpbWFyeSB7XG4gICAgQGluY2x1ZGUgYXBwd29yay10b2FzdC12YXJpYW50KCcuYmctI3skY29sb3J9JywgJHZhbHVlKTtcbiAgfVxufVxuIiwiLy8gRm9vdGVyXG4vL1xuXG4uZm9vdGVyLWxpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8vIERhcmsgZm9vdGVyXG4uZm9vdGVyLWRhcmsge1xuICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xuXG4gIC5mb290ZXItbGluayB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstaG92ZXItY29sb3I7XG4gICAgfVxuXG4gICAgJi5kaXNhYmxlZCB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLmZvb3Rlci10ZXh0IHtcbiAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcbiAgfVxuXG4gIC5zaG93ID4gLmZvb3Rlci1saW5rLFxuICAuYWN0aXZlID4gLmZvb3Rlci1saW5rLFxuICAuZm9vdGVyLWxpbmsuc2hvdyxcbiAgLmZvb3Rlci1saW5rLmFjdGl2ZSB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XG4gIH1cblxuICBociB7XG4gICAgYm9yZGVyLWNvbG9yOiAkc2lkZW5hdi1kYXJrLWJvcmRlci1jb2xvcjtcbiAgfVxufVxuXG4vLyBMaWdodCBmb290ZXJcbi5mb290ZXItbGlnaHQge1xuICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcblxuICAuZm9vdGVyLWxpbmsge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtaG92ZXItY29sb3I7XG4gICAgfVxuXG4gICAgJi5kaXNhYmxlZCB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvciAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5mb290ZXItdGV4dCB7XG4gICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuICB9XG5cbiAgLnNob3cgPiAuZm9vdGVyLWxpbmssXG4gIC5hY3RpdmUgPiAuZm9vdGVyLWxpbmssXG4gIC5mb290ZXItbGluay5zaG93LFxuICAuZm9vdGVyLWxpbmsuYWN0aXZlIHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG4gIH1cblxuICBociB7XG4gICAgYm9yZGVyLWNvbG9yOiAkc2lkZW5hdi1saWdodC1ib3JkZXItY29sb3I7XG4gIH1cbn1cbiIsIi5zaWRlbmF2IHtcbiAgZGlzcGxheTogZmxleDtcblxuICAucHNfX3RodW1iLXksXG4gIC5wc19fcmFpbC15IHtcbiAgICB3aWR0aDogLjEyNXJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBzX19yYWlsLXkge1xuICAgIHJpZ2h0OiAuMjVyZW0gIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICBsZWZ0OiAuMjVyZW0gIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAucHNfX3JhaWwteTpob3ZlcixcbiAgLnBzX19yYWlsLXk6Zm9jdXMsXG4gIC5wc19fcmFpbC15LnBzLS1jbGlja2luZyxcbiAgLnBzX19yYWlsLXk6aG92ZXIgPiAucHNfX3RodW1iLXksXG4gIC5wc19fcmFpbC15OmZvY3VzID4gLnBzX190aHVtYi15LFxuICAucHNfX3JhaWwteS5wcy0tY2xpY2tpbmcgPiAucHNfX3RodW1iLXkge1xuICAgIHdpZHRoOiAuMzc1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnNpZGVuYXYtaW5uZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5zaWRlbmF2LWl0ZW0sXG4uc2lkZW5hdi1oZWFkZXIsXG4uc2lkZW5hdi1kaXZpZGVyLFxuLnNpZGVuYXYtYmxvY2sge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uc2lkZW5hdi1pdGVtIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAmLnNpZGVuYXYtaXRlbS1hbmltYXRpbmcge1xuICAgIHRyYW5zaXRpb246IGhlaWdodCAkc2lkZW5hdi1hbmltYXRpb24tZHVyYXRpb24gZWFzZS1pbi1vdXQ7XG4gIH1cbn1cblxuLnNpZGVuYXYtaXRlbSAuc2lkZW5hdi1saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4OiAwIDEgYXV0bztcblxuICAuc2lkZW5hdi1pdGVtLmFjdGl2ZSA+ICYge1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaWJvbGQ7XG4gIH1cblxuICAuc2lkZW5hdi1pdGVtLmRpc2FibGVkICYge1xuICAgIGN1cnNvcjogZGVmYXVsdCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnNpZGVuYXY6bm90KC5zaWRlbmF2LW5vLWFuaW1hdGlvbikgJiB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJHNpZGVuYXYtYW5pbWF0aW9uLWR1cmF0aW9uO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGNvbG9yLCBiYWNrZ3JvdW5kLWNvbG9yO1xuICB9XG5cbiAgID4gOm5vdCguc2lkZW5hdi1pY29uKSB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gIH1cbn1cblxuLnNpZGVuYXYtdG9nZ2xlOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogJGNhcmV0LXdpZHRoO1xuICBoZWlnaHQ6ICRjYXJldC13aWR0aDtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSg0NWRlZyk7XG5cbiAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZDtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKC00NWRlZyk7XG4gIH1cblxuICAuc2lkZW5hdi1pdGVtLm9wZW46bm90KC5zaWRlbmF2LWl0ZW0tY2xvc2luZykgPiAmIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKC00NWRlZyk7XG5cbiAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSg0NWRlZyk7XG4gICAgfVxuICB9XG5cbiAgLnNpZGVuYXY6bm90KC5zaWRlbmF2LW5vLWFuaW1hdGlvbikgJiB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJHNpZGVuYXYtYW5pbWF0aW9uLWR1cmF0aW9uO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IC13ZWJraXQtdHJhbnNmb3JtLCB0cmFuc2Zvcm07XG4gIH1cbn1cblxuLnNpZGVuYXYtbWVudSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcblxuICAuc2lkZW5hdjpub3QoLnNpZGVuYXYtbm8tYW5pbWF0aW9uKSAmIHtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICRzaWRlbmF2LWFuaW1hdGlvbi1kdXJhdGlvbjtcbiAgfVxuXG4gIC5zaWRlbmF2LWl0ZW0ub3BlbiA+ICYge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbn1cblxuLnNpZGVuYXYtaWNvbiB7XG4gIGZsZXgtZ3JvdzogMDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIG1hcmdpbi1yaWdodDogJHNpZGVuYXYtaWNvbi1leHBhbmRlZC1zcGFjZXI7XG4gIGZvbnQtc2l6ZTogJHNpZGVuYXYtaWNvbi1leHBhbmRlZC1mb250LXNpemU7XG5cbiAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6ICRzaWRlbmF2LWljb24tZXhwYW5kZWQtc3BhY2VyO1xuICB9XG59XG5cbi5zaWRlbmF2LWRpdmlkZXIge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQ7XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogVmVydGljYWxcblxuLnNpZGVuYXYtdmVydGljYWwge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICY6bm90KC5zaWRlbmF2LW5vLWFuaW1hdGlvbikge1xuICAgIHRyYW5zaXRpb246IHdpZHRoICRzaWRlbmF2LWFuaW1hdGlvbi1kdXJhdGlvbjtcbiAgfVxuXG4gICYsXG4gIC5zaWRlbmF2LWJsb2NrLFxuICAuc2lkZW5hdi1pbm5lciA+IC5zaWRlbmF2LWl0ZW0sXG4gIC5zaWRlbmF2LWlubmVyID4gLnNpZGVuYXYtaGVhZGVyIHtcbiAgICB3aWR0aDogJHNpZGVuYXYtd2lkdGg7XG4gIH1cblxuICAuc2lkZW5hdi1pbm5lciB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBmbGV4OiAxIDEgYXV0bztcblxuICAgICA+IC5zaWRlbmF2LWl0ZW0ge1xuICAgICAgbWFyZ2luOiAkc2lkZW5hdi1pdGVtLXNwYWNlciAwO1xuICAgIH1cbiAgfVxuXG4gIC5zaWRlbmF2LWl0ZW0gLnNpZGVuYXYtbGluayxcbiAgLnNpZGVuYXYtaGVhZGVyLFxuICAuc2lkZW5hdi1ibG9jayB7XG4gICAgcGFkZGluZzogJHNpZGVuYXYtdmVydGljYWwtbGluay1wYWRkaW5nLXkgJHNpZGVuYXYtdmVydGljYWwtbGluay1wYWRkaW5nLXg7XG4gIH1cblxuICAuc2lkZW5hdi1kaXZpZGVyIHtcbiAgICBtYXJnaW4tdG9wOiAkc2lkZW5hdi12ZXJ0aWNhbC1saW5rLXBhZGRpbmcteTtcbiAgICBtYXJnaW4tYm90dG9tOiAkc2lkZW5hdi12ZXJ0aWNhbC1saW5rLXBhZGRpbmcteTtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLnNpZGVuYXYtaXRlbSAuc2lkZW5hdi10b2dnbGUge1xuICAgIHBhZGRpbmctcmlnaHQ6IGNhbGMoI3skc2lkZW5hdi12ZXJ0aWNhbC1saW5rLXBhZGRpbmcteH0gKyAjeyRjYXJldC13aWR0aCAqIDN9KTtcblxuICAgIEBpbmNsdWRlIHJ0bC1zdHlsZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkc2lkZW5hdi12ZXJ0aWNhbC1saW5rLXBhZGRpbmcteDtcbiAgICAgIHBhZGRpbmctbGVmdDogY2FsYygjeyRzaWRlbmF2LXZlcnRpY2FsLWxpbmstcGFkZGluZy14fSArICN7JGNhcmV0LXdpZHRoICogM30pO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHJpZ2h0OiAkc2lkZW5hdi12ZXJ0aWNhbC1saW5rLXBhZGRpbmcteDtcblxuICAgICAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6ICRzaWRlbmF2LXZlcnRpY2FsLWxpbmstcGFkZGluZy14O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5zaWRlbmF2LW1lbnUge1xuICAgIHBhZGRpbmctdG9wOiAkc2lkZW5hdi12ZXJ0aWNhbC1tZW51LWxpbmstcGFkZGluZy15O1xuICAgIHBhZGRpbmctYm90dG9tOiAkc2lkZW5hdi12ZXJ0aWNhbC1tZW51LWxpbmstcGFkZGluZy15O1xuXG4gICAgLnNpZGVuYXYtbGluayB7XG4gICAgICBwYWRkaW5nLXRvcDogJHNpZGVuYXYtdmVydGljYWwtbWVudS1saW5rLXBhZGRpbmcteTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAkc2lkZW5hdi12ZXJ0aWNhbC1tZW51LWxpbmstcGFkZGluZy15O1xuICAgIH1cbiAgfVxuXG4gIC5zaWRlbmF2LWljb24ge1xuICAgIHdpZHRoOiAkc2lkZW5hdi1pY29uLWV4cGFuZGVkLXdpZHRoO1xuICB9XG5cbiAgLnNpZGVuYXYtbWVudSAuc2lkZW5hdi1pY29uIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG5cbiAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gTGV2ZWxzXG4gIC8vXG5cbiAgJHNpZGVuYXYtZmlyc3QtbGV2ZWwtc3BhY2VyOiAkc2lkZW5hdi12ZXJ0aWNhbC1saW5rLXBhZGRpbmcteCArICRzaWRlbmF2LWljb24tZXhwYW5kZWQtd2lkdGggKyAkc2lkZW5hdi1pY29uLWV4cGFuZGVkLXNwYWNlcjtcblxuICAuc2lkZW5hdi1tZW51IC5zaWRlbmF2LWxpbmsge1xuICAgIHBhZGRpbmctbGVmdDogJHNpZGVuYXYtZmlyc3QtbGV2ZWwtc3BhY2VyO1xuXG4gICAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRzaWRlbmF2LWZpcnN0LWxldmVsLXNwYWNlcjtcbiAgICAgIHBhZGRpbmctbGVmdDogJHNpZGVuYXYtdmVydGljYWwtbGluay1wYWRkaW5nLXg7XG4gICAgfVxuICB9XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkc2lkZW5hdi1tYXgtbGV2ZWxzIHtcbiAgICAkc2VsZWN0b3I6ICcnO1xuXG4gICAgQGZvciAkbCBmcm9tIDEgdGhyb3VnaCAkaSB7XG4gICAgICAkc2VsZWN0b3I6IFwiI3skc2VsZWN0b3J9IC5zaWRlbmF2LW1lbnVcIjtcbiAgICB9XG5cbiAgICAjeyRzZWxlY3Rvcn0gLnNpZGVuYXYtbGluayB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRzaWRlbmF2LWZpcnN0LWxldmVsLXNwYWNlciArICgkc2lkZW5hdi12ZXJ0aWNhbC1tZW51LWxldmVsLXNwYWNlciAqICgkaSAtIDEpKTtcblxuICAgICAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJHNpZGVuYXYtZmlyc3QtbGV2ZWwtc3BhY2VyICsgKCRzaWRlbmF2LXZlcnRpY2FsLW1lbnUtbGV2ZWwtc3BhY2VyICogKCRpIC0gMSkpO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRzaWRlbmF2LXZlcnRpY2FsLWxpbmstcGFkZGluZy14O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogSG9yaXpvbnRhbFxuXG4uc2lkZW5hdi1ob3Jpem9udGFsIHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgd2lkdGg6IDEwMCU7XG5cbiAgLnNpZGVuYXYtaW5uZXIge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4OiAwIDEgMTAwJTtcbiAgfVxuXG4gIC5zaWRlbmF2LWl0ZW0gLnNpZGVuYXYtbGluayB7XG4gICAgcGFkZGluZzogJHNpZGVuYXYtaG9yaXpvbnRhbC1saW5rLXBhZGRpbmcteSAkc2lkZW5hdi1ob3Jpem9udGFsLWxpbmstcGFkZGluZy14O1xuICB9XG5cbiAgLnNpZGVuYXYtaXRlbSAuc2lkZW5hdi10b2dnbGUge1xuICAgIHBhZGRpbmctcmlnaHQ6IGNhbGMoI3skc2lkZW5hdi1ob3Jpem9udGFsLWxpbmstcGFkZGluZy14fSArICN7JGNhcmV0LXdpZHRoICogM30pO1xuXG4gICAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRzaWRlbmF2LWhvcml6b250YWwtbGluay1wYWRkaW5nLXg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IGNhbGMoI3skc2lkZW5hdi1ob3Jpem9udGFsLWxpbmstcGFkZGluZy14fSArICN7JGNhcmV0LXdpZHRoICogM30pO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHJpZ2h0OiAkc2lkZW5hdi1ob3Jpem9udGFsLWxpbmstcGFkZGluZy14O1xuXG4gICAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgbGVmdDogJHNpZGVuYXYtaG9yaXpvbnRhbC1saW5rLXBhZGRpbmcteDtcbiAgICAgIH1cblxuICAgIH1cbiAgfVxuXG4gIC5zaWRlbmF2LWlubmVyID4gLnNpZGVuYXYtaXRlbSA+IC5zaWRlbmF2LXRvZ2dsZTo6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoLTQ1ZGVnKTtcblxuICAgIEBpbmNsdWRlIHJ0bC1zdHlsZSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDQ1ZGVnKTtcbiAgICB9XG4gIH1cblxuICAuc2lkZW5hdi1pbm5lciA+IC5zaWRlbmF2LWl0ZW06bm90KC5zaWRlbmF2LWl0ZW0tY2xvc2luZykub3BlbiA+IC5zaWRlbmF2LXRvZ2dsZTo6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoMTM1ZGVnKTtcblxuICAgIEBpbmNsdWRlIHJ0bC1zdHlsZSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKC0xMzVkZWcpO1xuICAgIH1cbiAgfVxuXG4gIC5zaWRlbmF2LWhlYWRlcixcbiAgLnNpZGVuYXYtZGl2aWRlciB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnNpZGVuYXYtbWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAkc2lkZW5hdi1tZW51LXdpZHRoO1xuXG4gICAgLnNpZGVuYXYtbWVudSB7XG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuXG4gICAgLnNpZGVuYXYtbGluayB7XG4gICAgICBwYWRkaW5nLXRvcDogJHNpZGVuYXYtaG9yaXpvbnRhbC1tZW51LWxpbmstcGFkZGluZy15O1xuICAgICAgcGFkZGluZy1ib3R0b206ICRzaWRlbmF2LWhvcml6b250YWwtbWVudS1saW5rLXBhZGRpbmcteTtcbiAgICB9XG4gIH1cblxuICAuc2lkZW5hdi1pbm5lciA+IC5zaWRlbmF2LWl0ZW0gPiAuc2lkZW5hdi1tZW51IHtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAmOm5vdCguc2lkZW5hdi1uby1hbmltYXRpb24pIC5zaWRlbmF2LWlubmVyID4gLnNpZGVuYXYtaXRlbS5vcGVuID4gLnNpZGVuYXYtbWVudSB7XG4gICAgYW5pbWF0aW9uOiBzaWRlbmF2RHJvcGRvd25TaG93ICRzaWRlbmF2LWFuaW1hdGlvbi1kdXJhdGlvbiBlYXNlLWluLW91dDtcbiAgfVxuXG4gIC8vIExldmVsc1xuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRzaWRlbmF2LW1heC1sZXZlbHMge1xuICAgICRzZWxlY3RvcjogJyc7XG5cbiAgICBAZm9yICRsIGZyb20gMSB0aHJvdWdoICRpIHtcbiAgICAgICRzZWxlY3RvcjogXCIjeyRzZWxlY3Rvcn0gLnNpZGVuYXYtbWVudVwiO1xuICAgIH1cblxuICAgICN7JHNlbGVjdG9yfSAuc2lkZW5hdi1saW5rIHtcbiAgICAgIHBhZGRpbmctbGVmdDogJHNpZGVuYXYtaG9yaXpvbnRhbC1tZW51LWxldmVsLXNwYWNlciAqICRpO1xuXG4gICAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkc2lkZW5hdi1ob3Jpem9udGFsLW1lbnUtbGV2ZWwtc3BhY2VyICogJGk7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJHNpZGVuYXYtaG9yaXpvbnRhbC1saW5rLXBhZGRpbmcteDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnNpZGVuYXYtaG9yaXpvbnRhbC13cmFwcGVyIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZmxleDogMCAxIDEwMCU7XG4gIHdpZHRoOiAwO1xuXG4gIC5zaWRlbmF2Om5vdCguc2lkZW5hdi1uby1hbmltYXRpb24pICYgLnNpZGVuYXYtaW5uZXIge1xuICAgIHRyYW5zaXRpb246IG1hcmdpbiAkc2lkZW5hdi1hbmltYXRpb24tZHVyYXRpb247XG4gIH1cbn1cblxuLnNpZGVuYXYtaG9yaXpvbnRhbC1wcmV2LFxuLnNpZGVuYXYtaG9yaXpvbnRhbC1uZXh0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiAkc2lkZW5hdi1jb250cm9sLXdpZHRoO1xuXG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRzaWRlbmF2LWNvbnRyb2wtYXJyb3ctc2l6ZTtcbiAgICBoZWlnaHQ6ICRzaWRlbmF2LWNvbnRyb2wtYXJyb3ctc2l6ZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZDtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG5cbiAgJi5kaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBkZWZhdWx0ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnNpZGVuYXYtaG9yaXpvbnRhbC1wcmV2OjphZnRlciB7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDQ1ZGVnKTtcblxuICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgtMTM1ZGVnKTtcbiAgfVxufVxuXG4uc2lkZW5hdi1ob3Jpem9udGFsLW5leHQ6OmFmdGVyIHtcbiAgYm9yZGVyLWxlZnQ6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgtNDVkZWcpO1xuXG4gIEBpbmNsdWRlIHJ0bC1zdHlsZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDEzNWRlZyk7XG4gIH1cbn1cblxuQGluY2x1ZGUga2V5ZnJhbWVzKHNpZGVuYXZEcm9wZG93blNob3cpIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0uNXJlbSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBVbml2ZXJzYWwgY29sb3JpbmdcblxuLnNpZGVuYXYtZGFyayB7XG4gIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XG5cbiAgLnNpZGVuYXYtbGluayxcbiAgLnNpZGVuYXYtaG9yaXpvbnRhbC1wcmV2LFxuICAuc2lkZW5hdi1ob3Jpem9udGFsLW5leHQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yO1xuICAgIH1cblxuICAgICYuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5zaWRlbmF2LWl0ZW0uZGlzYWJsZWQgLnNpZGVuYXYtbGluayB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvciAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnNpZGVuYXYtaXRlbS5vcGVuOm5vdCguc2lkZW5hdi1pdGVtLWNsb3NpbmcpID4gLnNpZGVuYXYtdG9nZ2xlLFxuICAuc2lkZW5hdi1pdGVtLmFjdGl2ZSA+IC5zaWRlbmF2LWxpbmsge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuICB9XG5cbiAgLnNpZGVuYXYtaXRlbS5hY3RpdmUgPiAuc2lkZW5hdi1saW5rOm5vdCguc2lkZW5hdi10b2dnbGUpIHtcbiAgICBiYWNrZ3JvdW5kOiAkc2lkZW5hdi1kYXJrLW1lbnUtYmc7XG4gIH1cblxuICAuc2lkZW5hdi1pbm5lciA+IC5zaWRlbmF2LWl0ZW0uc2lkZW5hdi1pdGVtLWNsb3NpbmcgLnNpZGVuYXYtaXRlbS5vcGVuIC5zaWRlbmF2LW1lbnUsXG4gIC5zaWRlbmF2LWlubmVyID4gLnNpZGVuYXYtaXRlbS5zaWRlbmF2LWl0ZW0tY2xvc2luZyAuc2lkZW5hdi1pdGVtLm9wZW4gLnNpZGVuYXYtdG9nZ2xlIHtcbiAgICBjb2xvcjogJG5hdmJhci1kYXJrLWNvbG9yO1xuICB9XG5cbiAgLnNpZGVuYXYtdGV4dCB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XG4gIH1cblxuICAuc2lkZW5hdi1oZWFkZXIge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XG4gIH1cblxuICBocixcbiAgLnNpZGVuYXYtZGl2aWRlcixcbiAgLnNpZGVuYXYtaW5uZXIgPiAuc2lkZW5hdi1pdGVtLm9wZW4gPiAuc2lkZW5hdi1tZW51OjpiZWZvcmUge1xuICAgIGJvcmRlci1jb2xvcjogJHNpZGVuYXYtZGFyay1ib3JkZXItY29sb3IgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5zaWRlbmF2LWlubmVyID4gLnNpZGVuYXYtaGVhZGVyOjpiZWZvcmUsXG4gIC5zaWRlbmF2LWJsb2NrOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjtcbiAgfVxuXG4gIC5zaWRlbmF2LWlubmVyID4gLnNpZGVuYXYtaXRlbS5vcGVuIC5zaWRlbmF2LWl0ZW0ub3BlbiA+IC5zaWRlbmF2LXRvZ2dsZTo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2lkZW5hdi1kYXJrLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5zaWRlbmF2LWlubmVyID4gLnNpZGVuYXYtaXRlbS5vcGVuIC5zaWRlbmF2LWl0ZW0uYWN0aXZlID4gLnNpZGVuYXYtbGluazo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuICB9XG5cbiAgLnBzX190aHVtYi15IHtcbiAgICBiYWNrZ3JvdW5kOiAkbmF2YmFyLWRhcmstY29sb3IgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uc2lkZW5hdi1saWdodCB7XG4gIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuXG4gIC5zaWRlbmF2LWxpbmssXG4gIC5zaWRlbmF2LWhvcml6b250YWwtcHJldixcbiAgLnNpZGVuYXYtaG9yaXpvbnRhbC1uZXh0IHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yO1xuICAgIH1cblxuICAgICYuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAuc2lkZW5hdi1pdGVtLmRpc2FibGVkIC5zaWRlbmF2LWxpbmsge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuc2lkZW5hdi1pdGVtLm9wZW46bm90KC5zaWRlbmF2LWl0ZW0tY2xvc2luZykgPiAuc2lkZW5hdi10b2dnbGUsXG4gIC5zaWRlbmF2LWl0ZW0uYWN0aXZlID4gLnNpZGVuYXYtbGluayB7XG4gICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuICB9XG5cbiAgLnNpZGVuYXYtaXRlbS5hY3RpdmUgPiAuc2lkZW5hdi1saW5rOm5vdCguc2lkZW5hdi10b2dnbGUpIHtcbiAgICBiYWNrZ3JvdW5kOiAkc2lkZW5hdi1saWdodC1tZW51LWJnO1xuICB9XG5cbiAgLnNpZGVuYXYtaW5uZXIgPiAuc2lkZW5hdi1pdGVtLnNpZGVuYXYtaXRlbS1jbG9zaW5nIC5zaWRlbmF2LWl0ZW0ub3BlbiAuc2lkZW5hdi1tZW51LFxuICAuc2lkZW5hdi1pbm5lciA+IC5zaWRlbmF2LWl0ZW0uc2lkZW5hdi1pdGVtLWNsb3NpbmcgLnNpZGVuYXYtaXRlbS5vcGVuIC5zaWRlbmF2LXRvZ2dsZSB7XG4gICAgY29sb3I6ICRuYXZiYXItbGlnaHQtY29sb3I7XG4gIH1cblxuICAuc2lkZW5hdi10ZXh0IHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG4gIH1cblxuICAuc2lkZW5hdi1oZWFkZXIge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuICB9XG5cbiAgaHIsXG4gIC5zaWRlbmF2LWRpdmlkZXIsXG4gIC5zaWRlbmF2LWlubmVyID4gLnNpZGVuYXYtaXRlbS5vcGVuID4gLnNpZGVuYXYtbWVudTo6YmVmb3JlIHtcbiAgICBib3JkZXItY29sb3I6ICRzaWRlbmF2LWxpZ2h0LWJvcmRlci1jb2xvciAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnNpZGVuYXYtaW5uZXIgPiAuc2lkZW5hdi1oZWFkZXI6OmJlZm9yZSxcbiAgLnNpZGVuYXYtYmxvY2s6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjtcbiAgfVxuXG4gIC5zaWRlbmF2LWlubmVyID4gLnNpZGVuYXYtaXRlbS5vcGVuIC5zaWRlbmF2LWl0ZW0ub3BlbiA+IC5zaWRlbmF2LXRvZ2dsZTo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2lkZW5hdi1saWdodC1ib3JkZXItY29sb3I7XG4gIH1cblxuICAuc2lkZW5hdi1pbm5lciA+IC5zaWRlbmF2LWl0ZW0ub3BlbiAuc2lkZW5hdi1pdGVtLmFjdGl2ZSA+IC5zaWRlbmF2LWxpbms6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG4gIH1cblxuICAucHNfX3RodW1iLXkge1xuICAgIGJhY2tncm91bmQ6ICRuYXZiYXItbGlnaHQtY29sb3IgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIENvbGxhcHNlZFxuXG5AbWl4aW4gc2lkZW5hdi1jb2xsYXBzZWQoKSB7XG4gIHdpZHRoOiAkc2lkZW5hdi1jb2xsYXBzZWQtd2lkdGg7XG5cbiAgLnNpZGVuYXYtaW5uZXIgPiAuc2lkZW5hdi1pdGVtIHtcbiAgICB3aWR0aDogJHNpZGVuYXYtd2lkdGggKyAoJHNpZGVuYXYtY29sbGFwc2VkLXdpZHRoIC0gJHNpZGVuYXYtdmVydGljYWwtbGluay1wYWRkaW5nLXggLSAkc2lkZW5hdi1pY29uLWV4cGFuZGVkLXdpZHRoKTtcbiAgfVxuXG4gIC5zaWRlbmF2LWlubmVyID4gLnNpZGVuYXYtaXRlbSA+IC5zaWRlbmF2LWxpbmsge1xuICAgIHBhZGRpbmctbGVmdDogJHNpZGVuYXYtY29sbGFwc2VkLXdpZHRoO1xuICB9XG5cbiAgLnNpZGVuYXYtaW5uZXIgPiAuc2lkZW5hdi1oZWFkZXIsXG4gIC5zaWRlbmF2LWJsb2NrIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWxlZnQ6ICRzaWRlbmF2LWNvbGxhcHNlZC13aWR0aDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAoJHNpZGVuYXYtdmVydGljYWwtbGluay1wYWRkaW5nLXggKiAyKSAtICRzaWRlbmF2LWljb24tZXhwYW5kZWQtc3BhY2VyO1xuICAgIHBhZGRpbmctbGVmdDogJHNpZGVuYXYtaWNvbi1leHBhbmRlZC1zcGFjZXI7XG4gICAgd2lkdGg6ICRzaWRlbmF2LXdpZHRoO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6ICRzaWRlbmF2LXZlcnRpY2FsLWxpbmstcGFkZGluZy15O1xuICAgICAgYm90dG9tOiAkc2lkZW5hdi12ZXJ0aWNhbC1saW5rLXBhZGRpbmcteTtcbiAgICAgIGxlZnQ6IC0xICogKCRzaWRlbmF2LWNvbGxhcHNlZC13aWR0aCAqIC43NSk7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAkc2lkZW5hdi1jb2xsYXBzZWQtd2lkdGggLyAyO1xuICAgIH1cbiAgfVxuXG4gIC5zaWRlbmF2LWlubmVyID4gLnNpZGVuYXYtaXRlbSA+IC5zaWRlbmF2LW1lbnUsXG4gIC5zaWRlbmF2LWlubmVyID4gLnNpZGVuYXYtaXRlbS5vcGVuID4gLnNpZGVuYXYtbWVudSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1sZWZ0OiAkc2lkZW5hdi1jb2xsYXBzZWQtd2lkdGggLSAkc2lkZW5hdi12ZXJ0aWNhbC1saW5rLXBhZGRpbmcteCAtICRzaWRlbmF2LWljb24tZXhwYW5kZWQtd2lkdGg7XG4gICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgLnNpZGVuYXYtbGluayB7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB0cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLnNpZGVuYXYtaW5uZXIgPiAuc2lkZW5hdi1pdGVtLm9wZW4gPiAuc2lkZW5hdi1tZW51IHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IGNhbGMoI3skc2lkZW5hdi1jb2xsYXBzZWQtd2lkdGggLyAyfSAtIDFweCk7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi1sZWZ0OiAtKCRzaWRlbmF2LWNvbGxhcHNlZC13aWR0aCAtICRzaWRlbmF2LXZlcnRpY2FsLWxpbmstcGFkZGluZy14IC0gJHNpZGVuYXYtaWNvbi1leHBhbmRlZC13aWR0aCk7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQ7XG4gICAgfVxuICB9XG5cbiAgLnNpZGVuYXYtaW5uZXIgPiAuc2lkZW5hdi1pdGVtLm9wZW4gLnNpZGVuYXYtaXRlbS5vcGVuID4gLnNpZGVuYXYtdG9nZ2xlLFxuICAuc2lkZW5hdi1pbm5lciA+IC5zaWRlbmF2LWl0ZW0ub3BlbiAuc2lkZW5hdi1pdGVtLmFjdGl2ZSA+IC5zaWRlbmF2LWxpbmsge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tdG9wOiAtNHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoI3soJHNpZGVuYXYtY29sbGFwc2VkLXdpZHRoIC8gMikgLSAoJHNpZGVuYXYtY29sbGFwc2VkLXdpZHRoIC0gJHNpZGVuYXYtdmVydGljYWwtbGluay1wYWRkaW5nLXggLSAkc2lkZW5hdi1pY29uLWV4cGFuZGVkLXdpZHRoKX0gLSA0cHgpO1xuICAgICAgd2lkdGg6IDhweDtcbiAgICAgIGhlaWdodDogOHB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIH1cbiAgfVxuXG4gIC5zaWRlbmF2LWlubmVyID4gLnNpZGVuYXYtaXRlbSA+IC5zaWRlbmF2LXRvZ2dsZTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6ICRzaWRlbmF2LWNvbGxhcHNlZC13aWR0aCAtICRzaWRlbmF2LWNvbnRyb2wtYXJyb3ctc2l6ZSAtIC4zNzVyZW07XG4gIH1cblxuICAuc2lkZW5hdi1pbm5lciA+IC5zaWRlbmF2LWl0ZW0gPiAuc2lkZW5hdi1saW5rIC5zaWRlbmF2LWljb24ge1xuICAgIG1hcmdpbi1sZWZ0OiAtJHNpZGVuYXYtY29sbGFwc2VkLXdpZHRoO1xuICAgIHdpZHRoOiAkc2lkZW5hdi1jb2xsYXBzZWQtd2lkdGg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbkBtaXhpbiBzaWRlbmF2LWNvbGxhcHNlZC1ydGwoKSB7XG4gIC5zaWRlbmF2LWlubmVyID4gLnNpZGVuYXYtaXRlbSA+IC5zaWRlbmF2LWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRzaWRlbmF2LWNvbGxhcHNlZC13aWR0aDtcbiAgICBwYWRkaW5nLWxlZnQ6ICRzaWRlbmF2LXZlcnRpY2FsLWxpbmstcGFkZGluZy14O1xuICB9XG5cbiAgLnNpZGVuYXYtaW5uZXIgPiAuc2lkZW5hdi1oZWFkZXIsXG4gIC5zaWRlbmF2LWJsb2NrIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRzaWRlbmF2LWNvbGxhcHNlZC13aWR0aDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkc2lkZW5hdi1pY29uLWV4cGFuZGVkLXNwYWNlcjtcbiAgICBwYWRkaW5nLWxlZnQ6ICgkc2lkZW5hdi12ZXJ0aWNhbC1saW5rLXBhZGRpbmcteCAqIDIpIC0gJHNpZGVuYXYtaWNvbi1leHBhbmRlZC1zcGFjZXI7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IC0xICogKCRzaWRlbmF2LWNvbGxhcHNlZC13aWR0aCAqIC43NSk7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIC5zaWRlbmF2LWlubmVyID4gLnNpZGVuYXYtaXRlbSA+IC5zaWRlbmF2LW1lbnUsXG4gIC5zaWRlbmF2LWlubmVyID4gLnNpZGVuYXYtaXRlbS5vcGVuID4gLnNpZGVuYXYtbWVudSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkc2lkZW5hdi1jb2xsYXBzZWQtd2lkdGggLSAkc2lkZW5hdi12ZXJ0aWNhbC1saW5rLXBhZGRpbmcteCAtICRzaWRlbmF2LWljb24tZXhwYW5kZWQtd2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAuc2lkZW5hdi1pbm5lciA+IC5zaWRlbmF2LWl0ZW0ub3BlbiA+IC5zaWRlbmF2LW1lbnU6OmJlZm9yZSB7XG4gICAgcmlnaHQ6IGNhbGMoI3skc2lkZW5hdi1jb2xsYXBzZWQtd2lkdGggLyAyfSAtIDFweCk7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IC0oJHNpZGVuYXYtY29sbGFwc2VkLXdpZHRoIC0gJHNpZGVuYXYtdmVydGljYWwtbGluay1wYWRkaW5nLXggLSAkc2lkZW5hdi1pY29uLWV4cGFuZGVkLXdpZHRoKTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gIC5zaWRlbmF2LWlubmVyID4gLnNpZGVuYXYtaXRlbS5vcGVuIC5zaWRlbmF2LWl0ZW0ub3BlbiA+IC5zaWRlbmF2LXRvZ2dsZTo6YmVmb3JlLFxuICAuc2lkZW5hdi1pbm5lciA+IC5zaWRlbmF2LWl0ZW0ub3BlbiAuc2lkZW5hdi1pdGVtLmFjdGl2ZSA+IC5zaWRlbmF2LWxpbms6OmJlZm9yZSB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoI3soJHNpZGVuYXYtY29sbGFwc2VkLXdpZHRoIC8gMikgLSAoJHNpZGVuYXYtY29sbGFwc2VkLXdpZHRoIC0gJHNpZGVuYXYtdmVydGljYWwtbGluay1wYWRkaW5nLXggLSAkc2lkZW5hdi1pY29uLWV4cGFuZGVkLXdpZHRoKX0gLSA0cHgpO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgLnNpZGVuYXYtaW5uZXIgPiAuc2lkZW5hdi1pdGVtID4gLnNpZGVuYXYtdG9nZ2xlOjphZnRlciB7XG4gICAgcmlnaHQ6ICRzaWRlbmF2LWNvbGxhcHNlZC13aWR0aCAtICRzaWRlbmF2LWNvbnRyb2wtYXJyb3ctc2l6ZSAtIC4zNzVyZW07XG4gICAgbGVmdDogYXV0bztcbiAgfVxuXG4gIC5zaWRlbmF2LWlubmVyID4gLnNpZGVuYXYtaXRlbSA+IC5zaWRlbmF2LWxpbmsgLnNpZGVuYXYtaWNvbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtJHNpZGVuYXYtY29sbGFwc2VkLXdpZHRoO1xuICAgIG1hcmdpbi1sZWZ0OiAkc2lkZW5hdi1pY29uLWV4cGFuZGVkLXNwYWNlcjtcbiAgfVxufVxuXG4uc2lkZW5hdi1jb2xsYXBzZWQ6bm90KDpob3Zlcikge1xuICBAaW5jbHVkZSBzaWRlbmF2LWNvbGxhcHNlZCgpO1xuXG4gIEBpbmNsdWRlIHJ0bC1zdHlsZSB7XG4gICAgQGluY2x1ZGUgc2lkZW5hdi1jb2xsYXBzZWQtcnRsKCk7XG4gIH1cbn1cbiIsIi8vIExheW91dHNcbi8vXG5cbi5sYXlvdXQtd3JhcHBlcixcbi5sYXlvdXQtaW5uZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgZmxleDogMSAxIGF1dG87XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ubGF5b3V0LW9mZmNhbnZhcyAubGF5b3V0LXdyYXBwZXIsXG4ubGF5b3V0LWZpeGVkLW9mZmNhbnZhcyAubGF5b3V0LXdyYXBwZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ubGF5b3V0LWlubmVyIHtcbiAgbWluLWhlaWdodDogMTAwdmg7XG59XG5cbi5sYXlvdXQtY29udGFpbmVyLFxuLmxheW91dC1jb250ZW50LFxuLmxheW91dC1jb250ZW50ID4gKixcbi5sYXlvdXQtc2lkZW5hdiB7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbn1cblxuLmxheW91dC1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgZmxleDogMSAxIGF1dG87XG4gIHBhZGRpbmc6IDA7XG5cbiAgLmxheW91dC13aXRob3V0LXNpZGVuYXYgJiB7XG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5sYXlvdXQtY29udGVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBmbGV4OiAxIDEgYXV0bztcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuXG4ubGF5b3V0LW5hdmJhcixcbi5sYXlvdXQtZm9vdGVyIHtcbiAgZmxleDogMCAwIGF1dG87XG59XG5cbi5sYXlvdXQtbmF2YmFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xuXG4gIC5uYXZiYXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cbn1cblxuLmxheW91dC1zaWRlbmF2IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4OiAxIDAgYXV0bztcblxuICAuc2lkZW5hdiB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuXG4gIC5zaWRlbmF2LXZlcnRpY2FsIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBMYXlvdXQgMVxuXG4ubGF5b3V0LTEge1xuICAubGF5b3V0LWlubmVyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG5cbiAgLmxheW91dC1jb250ZW50IHtcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgIHdpZHRoOiAwO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBMYXlvdXQgMlxuXG4ubGF5b3V0LTIge1xuICAubGF5b3V0LWNvbnRhaW5lciB7XG4gICAgZmxleC1iYXNpczogMTAwJTtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHdpZHRoOiAwO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAubGF5b3V0LWNvbnRlbnQge1xuICAgIC8vIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBSZXZlcnNlZCBsYXlvdXRcblxuLmxheW91dC1yZXZlcnNlZCB7XG4gIC5sYXlvdXQtMSAubGF5b3V0LWNvbnRhaW5lciB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICB9XG5cbiAgLmxheW91dC0yIC5sYXlvdXQtaW5uZXIge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFRvZ2dsZVxuXG4ubGF5b3V0LXNpZGVuYXYtdG9nZ2xlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogU21hbGwgc2NyZWVucyBsYXlvdXRcblxuQG1lZGlhIChtYXgtd2lkdGg6IChtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBsZykgLSAxKSkge1xuICAubGF5b3V0LXNpZGVuYXYge1xuICAgIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50O1xuICAgIHRvcDogMCAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm0sIC13ZWJraXQtdHJhbnNmb3JtO1xuXG4gICAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICAgIHJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAgIH1cblxuICAgIC5sYXlvdXQtcmV2ZXJzZWQgJiB7XG4gICAgICByaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgICB9XG5cbiAgICAubGF5b3V0LWV4cGFuZGVkICYge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5sYXlvdXQtZXhwYW5kZWQgYm9keSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIEBpbmNsdWRlIHJ0bC1vbmx5IHtcbiAgICAmLmxheW91dC1yZXZlcnNlZCAubGF5b3V0LXNpZGVuYXYge1xuICAgICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICAgIH1cbiAgfVxuXG4gIC5sYXlvdXQtb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiAwO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogJG1vZGFsLWJhY2tkcm9wLWJnO1xuICAgIG9wYWNpdHk6ICRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgIC5sYXlvdXQtZXhwYW5kZWQgJiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICAubGF5b3V0LXNpZGVuYXYtMTAwdmggLmxheW91dC1zaWRlbmF2LFxuICAubGF5b3V0LXNpZGVuYXYtMTAwdmggLmxheW91dC1vdmVybGF5IHtcbiAgICBoZWlnaHQ6IDEwMHZoICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBDb2xsYXBzZWQgbGF5b3V0XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgLy8gU2lkZW5hdiBzdHlsZVxuXG4gIC5sYXlvdXQtY29sbGFwc2VkOm5vdCgubGF5b3V0LXNpZGVuYXYtaG92ZXIpOm5vdCgubGF5b3V0LW9mZmNhbnZhcyk6bm90KC5sYXlvdXQtZml4ZWQtb2ZmY2FudmFzKSB7XG4gICAgLmxheW91dC1zaWRlbmF2IC5zaWRlbmF2LXZlcnRpY2FsLFxuICAgIC5sYXlvdXQtc2lkZW5hdi5zaWRlbmF2LXZlcnRpY2FsIHtcbiAgICAgIEBpbmNsdWRlIHNpZGVuYXYtY29sbGFwc2VkKCk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgcnRsLW9ubHkge1xuICAgICYubGF5b3V0LWNvbGxhcHNlZDpub3QoLmxheW91dC1zaWRlbmF2LWhvdmVyKTpub3QoLmxheW91dC1vZmZjYW52YXMpOm5vdCgubGF5b3V0LWZpeGVkLW9mZmNhbnZhcykge1xuICAgICAgLmxheW91dC1zaWRlbmF2IC5zaWRlbmF2LXZlcnRpY2FsLFxuICAgICAgLmxheW91dC1zaWRlbmF2LnNpZGVuYXYtdmVydGljYWwge1xuICAgICAgICBAaW5jbHVkZSBzaWRlbmF2LWNvbGxhcHNlZC1ydGwoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBTaWRlbmF2IHBvc2l0aW9uXG5cbiAgLmxheW91dC1zaWRlbmF2LWhvdmVyLmxheW91dC1jb2xsYXBzZWQge1xuICAgIC5sYXlvdXQtc2lkZW5hdiB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0kc2lkZW5hdi13aWR0aCArICRzaWRlbmF2LWNvbGxhcHNlZC13aWR0aDtcbiAgICB9XG5cbiAgICAmLmxheW91dC1yZXZlcnNlZCAubGF5b3V0LXNpZGVuYXYge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0kc2lkZW5hdi13aWR0aCArICRzaWRlbmF2LWNvbGxhcHNlZC13aWR0aDtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBydGwtb25seSB7XG4gICAgJi5sYXlvdXQtc2lkZW5hdi1ob3Zlci5sYXlvdXQtY29sbGFwc2VkIHtcbiAgICAgIC5sYXlvdXQtc2lkZW5hdiB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0kc2lkZW5hdi13aWR0aCArICRzaWRlbmF2LWNvbGxhcHNlZC13aWR0aDtcbiAgICAgIH1cblxuICAgICAgJi5sYXlvdXQtcmV2ZXJzZWQgLmxheW91dC1zaWRlbmF2IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtJHNpZGVuYXYtd2lkdGggKyAkc2lkZW5hdi1jb2xsYXBzZWQtd2lkdGg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIE9mZi1jYW52YXMgbGF5b3V0XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgLmxheW91dC1jb2xsYXBzZWQubGF5b3V0LW9mZmNhbnZhcyB7XG4gICAgLmxheW91dC1zaWRlbmF2IHtcbiAgICAgIG1hcmdpbi1yaWdodDogLSRzaWRlbmF2LXdpZHRoO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgICB9XG5cbiAgICAmLmxheW91dC1yZXZlcnNlZCAubGF5b3V0LXNpZGVuYXYge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0kc2lkZW5hdi13aWR0aDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBydGwtb25seSB7XG4gICAgJi5sYXlvdXQtY29sbGFwc2VkLmxheW91dC1vZmZjYW52YXMge1xuICAgICAgLmxheW91dC1zaWRlbmF2IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogLSRzaWRlbmF2LXdpZHRoO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSlcbiAgICAgIH1cblxuICAgICAgJi5sYXlvdXQtcmV2ZXJzZWQgLmxheW91dC1zaWRlbmF2IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtJHNpZGVuYXYtd2lkdGg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpXG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogRml4ZWQgYW5kIGZpeGVkIG9mZi1jYW52YXMgbGF5b3V0XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgLy8gU2lkZW5hdlxuXG4gIC5sYXlvdXQtZml4ZWQsXG4gIC5sYXlvdXQtZml4ZWQtb2ZmY2FudmFzIHtcbiAgICAubGF5b3V0LXNpZGVuYXYge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmLmxheW91dC1yZXZlcnNlZCAubGF5b3V0LXNpZGVuYXYge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHJ0bC1vbmx5IHtcbiAgICAmLmxheW91dC1maXhlZCxcbiAgICAmLmxheW91dC1maXhlZC1vZmZjYW52YXMge1xuICAgICAgLmxheW91dC1zaWRlbmF2IHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG5cbiAgICAgICYubGF5b3V0LXJldmVyc2VkIC5sYXlvdXQtc2lkZW5hdiB7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIEZpeGVkIG9mZi1jYW52YXNcblxuICAubGF5b3V0LWZpeGVkLW9mZmNhbnZhcy5sYXlvdXQtY29sbGFwc2VkIHtcbiAgICAubGF5b3V0LXNpZGVuYXYge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgICB9XG5cbiAgICAmLmxheW91dC1yZXZlcnNlZCAubGF5b3V0LXNpZGVuYXYge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHJ0bC1vbmx5IHtcbiAgICAmLmxheW91dC1maXhlZC1vZmZjYW52YXMubGF5b3V0LWNvbGxhcHNlZCB7XG4gICAgICAubGF5b3V0LXNpZGVuYXYge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gICAgICB9XG5cbiAgICAgICYubGF5b3V0LXJldmVyc2VkIC5sYXlvdXQtc2lkZW5hdiB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gQ29udGFpbmVyXG5cbiAgLmxheW91dC1maXhlZDpub3QoLmxheW91dC1jb2xsYXBzZWQpLFxuICAubGF5b3V0LWZpeGVkLW9mZmNhbnZhczpub3QoLmxheW91dC1jb2xsYXBzZWQpIHtcbiAgICAubGF5b3V0LWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRzaWRlbmF2LXdpZHRoO1xuICAgIH1cblxuICAgICYubGF5b3V0LXJldmVyc2VkIC5sYXlvdXQtY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRzaWRlbmF2LXdpZHRoO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHJ0bC1vbmx5IHtcbiAgICAmLmxheW91dC1maXhlZDpub3QoLmxheW91dC1jb2xsYXBzZWQpLFxuICAgICYubGF5b3V0LWZpeGVkLW9mZmNhbnZhczpub3QoLmxheW91dC1jb2xsYXBzZWQpIHtcbiAgICAgIC5sYXlvdXQtY29udGFpbmVyIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJHNpZGVuYXYtd2lkdGg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIH1cblxuICAgICAgJi5sYXlvdXQtcmV2ZXJzZWQgLmxheW91dC1jb250YWluZXIge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRzaWRlbmF2LXdpZHRoO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5sYXlvdXQtZml4ZWQubGF5b3V0LWNvbGxhcHNlZCB7XG4gICAgLmxheW91dC1jb250YWluZXIge1xuICAgICAgcGFkZGluZy1sZWZ0OiAkc2lkZW5hdi1jb2xsYXBzZWQtd2lkdGg7XG4gICAgfVxuXG4gICAgJi5sYXlvdXQtcmV2ZXJzZWQgLmxheW91dC1jb250YWluZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogJHNpZGVuYXYtY29sbGFwc2VkLXdpZHRoO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHJ0bC1vbmx5IHtcbiAgICAmLmxheW91dC1maXhlZC5sYXlvdXQtY29sbGFwc2VkIHtcbiAgICAgIC5sYXlvdXQtY29udGFpbmVyIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJHNpZGVuYXYtY29sbGFwc2VkLXdpZHRoO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICB9XG5cbiAgICAgICYubGF5b3V0LXJldmVyc2VkIC5sYXlvdXQtY29udGFpbmVyIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkc2lkZW5hdi1jb2xsYXBzZWQtd2lkdGg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFJlc2V0IHBhZGRpbmdzXG5odG1sOm5vdCgubGF5b3V0LW5hdmJhci1maXhlZCk6bm90KC5sYXlvdXQtZml4ZWQpOm5vdCgubGF5b3V0LWZpeGVkLW9mZmNhbnZhcykgLmxheW91dC1jb250YWluZXIsXG5odG1sOm5vdCgubGF5b3V0LW5hdmJhci1maXhlZCkgLmxheW91dC0yIC5sYXlvdXQtY29udGFpbmVyIHtcbiAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbn1cbmh0bWw6bm90KC5sYXlvdXQtZm9vdGVyLWZpeGVkKSAubGF5b3V0LWNvbnRlbnQge1xuICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IChtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBsZykgLSAxKSkge1xuICAubGF5b3V0LWZpeGVkIC5sYXlvdXQtd3JhcHBlci5sYXlvdXQtMSAubGF5b3V0LXNpZGVuYXYsXG4gIC5sYXlvdXQtZml4ZWQtb2ZmY2FudmFzIC5sYXlvdXQtd3JhcHBlci5sYXlvdXQtMSAubGF5b3V0LXNpZGVuYXYge1xuICAgIHRvcDogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgaHRtbDpub3QoLmxheW91dC1uYXZiYXItZml4ZWQpIC5sYXlvdXQtMSAubGF5b3V0LWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEZpeGVkIG5hdmJhciBsYXlvdXRcblxuLmxheW91dC1uYXZiYXItZml4ZWQgLmxheW91dC1uYXZiYXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgLy8gRml4IG5hdmJhciB3aXRoaW4gbGF5b3V0IDEgaW4gZml4ZWQgbW9kZVxuICAubGF5b3V0LWZpeGVkIC5sYXlvdXQtMSAubGF5b3V0LW5hdmJhcixcbiAgLmxheW91dC1maXhlZC1vZmZjYW52YXMgLmxheW91dC0xIC5sYXlvdXQtbmF2YmFyIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gIH1cblxuICAvLyBMYXlvdXQgZml4ZWRcblxuICAubGF5b3V0LW5hdmJhci1maXhlZDpub3QoLmxheW91dC1jb2xsYXBzZWQpLFxuICAubGF5b3V0LWZpeGVkLmxheW91dC1uYXZiYXItZml4ZWQ6bm90KC5sYXlvdXQtY29sbGFwc2VkKSxcbiAgLmxheW91dC1maXhlZC1vZmZjYW52YXMubGF5b3V0LW5hdmJhci1maXhlZDpub3QoLmxheW91dC1jb2xsYXBzZWQpIHtcbiAgICAubGF5b3V0LTIgLmxheW91dC1uYXZiYXIge1xuICAgICAgbGVmdDogJHNpZGVuYXYtd2lkdGg7XG4gICAgfVxuXG4gICAgJi5sYXlvdXQtcmV2ZXJzZWQgLmxheW91dC0yIC5sYXlvdXQtbmF2YmFyIHtcbiAgICAgIHJpZ2h0OiAkc2lkZW5hdi13aWR0aDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgcnRsLW9ubHkge1xuICAgICYubGF5b3V0LW5hdmJhci1maXhlZDpub3QoLmxheW91dC1jb2xsYXBzZWQpLFxuICAgICYubGF5b3V0LWZpeGVkLmxheW91dC1uYXZiYXItZml4ZWQ6bm90KC5sYXlvdXQtY29sbGFwc2VkKSxcbiAgICAmLmxheW91dC1maXhlZC1vZmZjYW52YXMubGF5b3V0LW5hdmJhci1maXhlZDpub3QoLmxheW91dC1jb2xsYXBzZWQpIHtcbiAgICAgIC5sYXlvdXQtMiAubGF5b3V0LW5hdmJhciB7XG4gICAgICAgIHJpZ2h0OiAkc2lkZW5hdi13aWR0aDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cblxuICAgICAgJi5sYXlvdXQtcmV2ZXJzZWQgLmxheW91dC0yIC5sYXlvdXQtbmF2YmFyIHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6ICRzaWRlbmF2LXdpZHRoO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIExheW91dCBmaXhlZCBvZmYtY2FudmFzXG5cbiAgLmxheW91dC1uYXZiYXItZml4ZWQubGF5b3V0LWNvbGxhcHNlZDpub3QoLmxheW91dC1vZmZjYW52YXMpOm5vdCgubGF5b3V0LWZpeGVkLW9mZmNhbnZhcyksXG4gIC5sYXlvdXQtZml4ZWQubGF5b3V0LW5hdmJhci1maXhlZC5sYXlvdXQtY29sbGFwc2VkIHtcbiAgICAubGF5b3V0LTIgLmxheW91dC1uYXZiYXIge1xuICAgICAgbGVmdDogJHNpZGVuYXYtY29sbGFwc2VkLXdpZHRoO1xuICAgIH1cblxuICAgICYubGF5b3V0LXJldmVyc2VkIC5sYXlvdXQtMiAubGF5b3V0LW5hdmJhciB7XG4gICAgICByaWdodDogJHNpZGVuYXYtY29sbGFwc2VkLXdpZHRoO1xuICAgICAgbGVmdDogMDtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBydGwtb25seSB7XG4gICAgJi5sYXlvdXQtbmF2YmFyLWZpeGVkLmxheW91dC1jb2xsYXBzZWQ6bm90KC5sYXlvdXQtb2ZmY2FudmFzKTpub3QoLmxheW91dC1maXhlZC1vZmZjYW52YXMpLFxuICAgICYubGF5b3V0LWZpeGVkLmxheW91dC1uYXZiYXItZml4ZWQubGF5b3V0LWNvbGxhcHNlZCB7XG4gICAgICAubGF5b3V0LTIgLmxheW91dC1uYXZiYXIge1xuICAgICAgICByaWdodDogJHNpZGVuYXYtY29sbGFwc2VkLXdpZHRoO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuXG4gICAgICAmLmxheW91dC1yZXZlcnNlZCAubGF5b3V0LTIgLmxheW91dC1uYXZiYXIge1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogJHNpZGVuYXYtY29sbGFwc2VkLXdpZHRoO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEZpeGVkIGZvb3RlclxuXG4ubGF5b3V0LWZvb3Rlci1maXhlZCAubGF5b3V0LWZvb3RlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAubGF5b3V0LWZvb3Rlci1maXhlZDpub3QoLmxheW91dC1jb2xsYXBzZWQpIHtcbiAgICAubGF5b3V0LXdyYXBwZXI6bm90KC5sYXlvdXQtd2l0aG91dC1zaWRlbmF2KSAubGF5b3V0LWZvb3RlciB7XG4gICAgICBsZWZ0OiAkc2lkZW5hdi13aWR0aDtcbiAgICB9XG5cbiAgICAmLmxheW91dC1yZXZlcnNlZCAubGF5b3V0LXdyYXBwZXI6bm90KC5sYXlvdXQtd2l0aG91dC1zaWRlbmF2KSAubGF5b3V0LWZvb3RlciB7XG4gICAgICByaWdodDogJHNpZGVuYXYtd2lkdGg7XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cbiAgfVxuXG4gIC5sYXlvdXQtZm9vdGVyLWZpeGVkLmxheW91dC1jb2xsYXBzZWQ6bm90KC5sYXlvdXQtb2ZmY2FudmFzKTpub3QoLmxheW91dC1maXhlZC1vZmZjYW52YXMpIHtcbiAgICAubGF5b3V0LXdyYXBwZXI6bm90KC5sYXlvdXQtd2l0aG91dC1zaWRlbmF2KSAubGF5b3V0LWZvb3RlciB7XG4gICAgICBsZWZ0OiAkc2lkZW5hdi1jb2xsYXBzZWQtd2lkdGg7XG4gICAgfVxuXG4gICAgJi5sYXlvdXQtcmV2ZXJzZWQgLmxheW91dC13cmFwcGVyOm5vdCgubGF5b3V0LXdpdGhvdXQtc2lkZW5hdikgLmxheW91dC1mb290ZXIge1xuICAgICAgcmlnaHQ6ICRzaWRlbmF2LWNvbGxhcHNlZC13aWR0aDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgcnRsLW9ubHkge1xuICAgICYubGF5b3V0LWZvb3Rlci1maXhlZDpub3QoLmxheW91dC1jb2xsYXBzZWQpIHtcbiAgICAgIC5sYXlvdXQtd3JhcHBlcjpub3QoLmxheW91dC13aXRob3V0LXNpZGVuYXYpIC5sYXlvdXQtZm9vdGVyIHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6ICRzaWRlbmF2LXdpZHRoO1xuICAgICAgfVxuXG4gICAgICAmLmxheW91dC1yZXZlcnNlZCAubGF5b3V0LXdyYXBwZXI6bm90KC5sYXlvdXQtd2l0aG91dC1zaWRlbmF2KSAubGF5b3V0LWZvb3RlciB7XG4gICAgICAgIGxlZnQ6ICRzaWRlbmF2LXdpZHRoO1xuICAgICAgICByaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmxheW91dC1mb290ZXItZml4ZWQubGF5b3V0LWNvbGxhcHNlZDpub3QoLmxheW91dC1vZmZjYW52YXMpOm5vdCgubGF5b3V0LWZpeGVkLW9mZmNhbnZhcykge1xuICAgICAgLmxheW91dC13cmFwcGVyOm5vdCgubGF5b3V0LXdpdGhvdXQtc2lkZW5hdikgLmxheW91dC1mb290ZXIge1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogJHNpZGVuYXYtY29sbGFwc2VkLXdpZHRoO1xuICAgICAgfVxuXG4gICAgICAmLmxheW91dC1yZXZlcnNlZCAubGF5b3V0LXdyYXBwZXI6bm90KC5sYXlvdXQtd2l0aG91dC1zaWRlbmF2KSAubGF5b3V0LWZvb3RlciB7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiAkc2lkZW5hdi1jb2xsYXBzZWQtd2lkdGg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogWi1JbmRleGVzXG5cbi8vIE5hdmJhclxuLmxheW91dC1uYXZiYXItZml4ZWQgYm9keTpub3QoLm1vZGFsLW9wZW4pLFxuLmxheW91dC1maXhlZCBib2R5Om5vdCgubW9kYWwtb3BlbiksXG4ubGF5b3V0LWZpeGVkLW9mZmNhbnZhcyBib2R5Om5vdCgubW9kYWwtb3Blbikge1xuICAubGF5b3V0LTEgLmxheW91dC1uYXZiYXIge1xuICAgIHotaW5kZXg6ICR6aW5kZXgtbGF5b3V0LWZpeGVkO1xuICB9XG5cbiAgLmxheW91dC0yIC5sYXlvdXQtbmF2YmFyIHtcbiAgICB6LWluZGV4OiAkemluZGV4LWxheW91dC1maXhlZCAtIDU7XG4gIH1cbn1cblxuLmxheW91dC1mb290ZXItZml4ZWQgLmxheW91dC1mb290ZXIge1xuICB6LWluZGV4OiAkemluZGV4LWZpeGVkO1xufVxuXG4ubGF5b3V0LXNpZGVuYXYtaG9yaXpvbnRhbCB7XG4gIHotaW5kZXg6IDk7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAobWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgbGcpIC0gMSkpIHtcbiAgLmxheW91dC1zaWRlbmF2IHtcbiAgICB6LWluZGV4OiAkemluZGV4LWxheW91dC1tb2JpbGU7XG4gIH1cblxuICAubGF5b3V0LW92ZXJsYXkge1xuICAgIHotaW5kZXg6ICR6aW5kZXgtbGF5b3V0LW1vYmlsZSAtIDE7XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAubGF5b3V0LTEge1xuICAgIC5sYXlvdXQtbmF2YmFyIHtcbiAgICAgIHotaW5kZXg6IDEwO1xuICAgIH1cblxuICAgIC5sYXlvdXQtc2lkZW5hdiB7XG4gICAgICB6LWluZGV4OiA5O1xuICAgIH1cbiAgfVxuXG4gIC5sYXlvdXQtMiB7XG4gICAgLmxheW91dC1uYXZiYXIge1xuICAgICAgei1pbmRleDogOTtcbiAgICB9XG5cbiAgICAubGF5b3V0LXNpZGVuYXYge1xuICAgICAgei1pbmRleDogMTA7XG4gICAgfVxuICB9XG5cbiAgLy8gQ29sbGFwc2VkXG5cbiAgLmxheW91dC1jb2xsYXBzZWQ6bm90KC5sYXlvdXQtb2ZmY2FudmFzKTpub3QoLmxheW91dC1maXhlZC1vZmZjYW52YXMpIHtcbiAgICAmLmxheW91dC1zaWRlbmF2LWhvdmVyIC5sYXlvdXQtMSAubGF5b3V0LXNpZGVuYXYge1xuICAgICAgei1pbmRleDogJHppbmRleC1sYXlvdXQtZml4ZWQgLSA1ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmxheW91dC0yIC5sYXlvdXQtc2lkZW5hdiB7XG4gICAgICB6LWluZGV4OiAkemluZGV4LWxheW91dC1maXhlZCArIDUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBGaXhlZFxuXG4gIC5sYXlvdXQtZml4ZWQgYm9keTpub3QoLm1vZGFsLW9wZW4pIC5sYXlvdXQtMSAubGF5b3V0LXNpZGVuYXYsXG4gIC5sYXlvdXQtZml4ZWQtb2ZmY2FudmFzIGJvZHk6bm90KC5tb2RhbC1vcGVuKSAubGF5b3V0LTEgLmxheW91dC1zaWRlbmF2IHtcbiAgICB6LWluZGV4OiAkemluZGV4LWxheW91dC1maXhlZCAtIDU7XG4gIH1cblxuICAubGF5b3V0LW5hdmJhci1maXhlZCBib2R5Om5vdCgubW9kYWwtb3BlbikgLmxheW91dC0yIC5sYXlvdXQtc2lkZW5hdixcbiAgLmxheW91dC1maXhlZCBib2R5Om5vdCgubW9kYWwtb3BlbikgLmxheW91dC0yIC5sYXlvdXQtc2lkZW5hdixcbiAgLmxheW91dC1maXhlZC1vZmZjYW52YXMgYm9keTpub3QoLm1vZGFsLW9wZW4pIC5sYXlvdXQtMiAubGF5b3V0LXNpZGVuYXYge1xuICAgIHotaW5kZXg6ICR6aW5kZXgtbGF5b3V0LWZpeGVkO1xuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogVHJhbnNpdGlvbnMgYW5kIGFuaW1hdGlvbnNcblxuLmxheW91dC1zaWRlbmF2LWxpbmstbm8tdHJhbnNpdGlvbiB7XG4gIC5sYXlvdXQtc2lkZW5hdiAuc2lkZW5hdi1saW5rLFxuICAubGF5b3V0LXNpZGVuYXYtaG9yaXpvbnRhbCAuc2lkZW5hdi1saW5rIHtcbiAgICB0cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgYW5pbWF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmxheW91dC1uby10cmFuc2l0aW9uIC5sYXlvdXQtc2lkZW5hdixcbi5sYXlvdXQtbm8tdHJhbnNpdGlvbiAubGF5b3V0LXNpZGVuYXYtaG9yaXpvbnRhbCB7XG4gICYsXG4gICYgLnNpZGVuYXYsXG4gICYgLnNpZGVuYXYtaXRlbSB7XG4gICAgdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgIGFuaW1hdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAobWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgbGcpIC0gMSkpIHtcbiAgLmxheW91dC10cmFuc2l0aW9uaW5nIHtcbiAgICAubGF5b3V0LW92ZXJsYXkge1xuICAgICAgYW5pbWF0aW9uOiBsYXlvdXRTaWRlbmF2QW5pbWF0aW9uICRzaWRlbmF2LWFuaW1hdGlvbi1kdXJhdGlvbjtcbiAgICB9XG5cbiAgICAubGF5b3V0LXNpZGVuYXYge1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJHNpZGVuYXYtYW5pbWF0aW9uLWR1cmF0aW9uO1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCAtd2Via2l0LXRyYW5zZm9ybTtcbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAubGF5b3V0LWNvbGxhcHNlZDpub3QoLmxheW91dC10cmFuc2l0aW9uaW5nKTpub3QoLmxheW91dC1vZmZjYW52YXMpOm5vdCgubGF5b3V0LWZpeGVkKTpub3QoLmxheW91dC1maXhlZC1vZmZjYW52YXMpIC5sYXlvdXQtc2lkZW5hdiB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJHNpZGVuYXYtYW5pbWF0aW9uLWR1cmF0aW9uO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG1hcmdpbi1sZWZ0LCBtYXJnaW4tcmlnaHQsIHdpZHRoO1xuICB9XG5cbiAgLmxheW91dC10cmFuc2l0aW9uaW5nIHtcbiAgICAmLmxheW91dC1vZmZjYW52YXMgLmxheW91dC1zaWRlbmF2IHtcbiAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246ICRzaWRlbmF2LWFuaW1hdGlvbi1kdXJhdGlvbjtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG1hcmdpbi1sZWZ0LCBtYXJnaW4tcmlnaHQsIHRyYW5zZm9ybSwgLXdlYmtpdC10cmFuc2Zvcm07XG4gICAgfVxuXG4gICAgJi5sYXlvdXQtZml4ZWQsXG4gICAgJi5sYXlvdXQtZml4ZWQtb2ZmY2FudmFzIHtcbiAgICAgIC5sYXlvdXQtY29udGFpbmVyIHtcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJHNpZGVuYXYtYW5pbWF0aW9uLWR1cmF0aW9uO1xuICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBwYWRkaW5nLWxlZnQsIHBhZGRpbmctcmlnaHQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5sYXlvdXQtZml4ZWQge1xuICAgICAgLmxheW91dC1zaWRlbmF2IHtcbiAgICAgICAgdHJhbnNpdGlvbjogd2lkdGggJHNpZGVuYXYtYW5pbWF0aW9uLWR1cmF0aW9uO1xuICAgICAgfVxuICAgIH1cblxuICAgICYubGF5b3V0LWZpeGVkLW9mZmNhbnZhcyB7XG4gICAgICAubGF5b3V0LXNpZGVuYXYge1xuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkc2lkZW5hdi1hbmltYXRpb24tZHVyYXRpb247XG4gICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgLXdlYmtpdC10cmFuc2Zvcm07XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5sYXlvdXQtbmF2YmFyLWZpeGVkIC5sYXlvdXQtMiAubGF5b3V0LW5hdmJhcixcbiAgICAmLmxheW91dC1mb290ZXItZml4ZWQgLmxheW91dC1mb290ZXIge1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJHNpZGVuYXYtYW5pbWF0aW9uLWR1cmF0aW9uO1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogbGVmdCwgcmlnaHQ7XG4gICAgfVxuXG4gICAgJjpub3QoLmxheW91dC1vZmZjYW52YXMpOm5vdCgubGF5b3V0LWZpeGVkKTpub3QoLmxheW91dC1maXhlZC1vZmZjYW52YXMpIC5sYXlvdXQtc2lkZW5hdiB7XG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkc2lkZW5hdi1hbmltYXRpb24tZHVyYXRpb247XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBtYXJnaW4tbGVmdCwgbWFyZ2luLXJpZ2h0LCB3aWR0aDtcbiAgICB9XG4gIH1cbn1cblxuLy8gRGlzYWJsZSB0cmFuc2l0aW9ucy9hbmltYXRpb25zIGluIElFIDEwLTExXG5AbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuICAuc2lkZW5hdixcbiAgLmxheW91dC1zaWRlbmF2LFxuICAubGF5b3V0LWNvbnRhaW5lcixcbiAgLmxheW91dC1uYXZiYXIsXG4gIC5sYXlvdXQtZm9vdGVyIHtcbiAgICB0cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHMgIWltcG9ydGFudDtcbiAgfVxuICAubGF5b3V0LW92ZXJsYXkge1xuICAgIGFuaW1hdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBpbmNsdWRlIGtleWZyYW1lcyhsYXlvdXRTaWRlbmF2QW5pbWF0aW9uKSB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6ICRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5O1xuICB9XG59XG4iLCIuYXBwLWJyYW5kIHtcbiAgZGlzcGxheTogZmxleDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC1ncm93OiAwO1xuICBmbGV4LXNocmluazogMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbn1cblxuLmFwcC1icmFuZC1sb2dvIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGZsZXgtZ3JvdzogMDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIG1pbi1oZWlnaHQ6IDFweDtcblxuICBpbWcsXG4gIHN2ZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLmFwcC1icmFuZC10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsZXgtc2hyaW5rOiAwO1xufVxuXG4uYXBwLWJyYW5kIC5sYXlvdXQtc2lkZW5hdi10b2dnbGUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gV2l0aGluIHNpZGVuYXZcblxuQG1peGluIGFwcHdvcmstYXBwLWJyYW5kLWNvbGxhcHNlZCgpIHtcbiAgLmFwcC1icmFuZCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgd2lkdGg6ICRzaWRlbmF2LWNvbGxhcHNlZC13aWR0aDtcbiAgfVxuXG4gIC5hcHAtYnJhbmQtbG9nbyxcbiAgLmFwcC1icmFuZC10ZXh0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICAuYXBwLWJyYW5kLWxvZ28gfiAuYXBwLWJyYW5kLXRleHQsXG4gIC5hcHAtYnJhbmQgLmxheW91dC1zaWRlbmF2LXRvZ2dsZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uc2lkZW5hdi12ZXJ0aWNhbCAuYXBwLWJyYW5kIHtcbiAgcGFkZGluZy1yaWdodDogJHNpZGVuYXYtdmVydGljYWwtbGluay1wYWRkaW5nLXggLSAuMjVyZW07XG4gIHBhZGRpbmctbGVmdDogJHNpZGVuYXYtdmVydGljYWwtbGluay1wYWRkaW5nLXggLSAuMjVyZW07XG59XG5cbi5zaWRlbmF2LWhvcml6b250YWwgLmFwcC1icmFuZCxcbi5zaWRlbmF2LWhvcml6b250YWwgLmFwcC1icmFuZCArIC5zaWRlbmF2LWRpdmlkZXIge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbjpub3QoLmxheW91dC1zaWRlbmF2KSA+IC5zaWRlbmF2LXZlcnRpY2FsLnNpZGVuYXYtY29sbGFwc2VkOm5vdCgubGF5b3V0LXNpZGVuYXYpOm5vdCg6aG92ZXIpIHtcbiAgQGluY2x1ZGUgYXBwd29yay1hcHAtYnJhbmQtY29sbGFwc2VkKCk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiBtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBsZykpIHtcbiAgLmxheW91dC1jb2xsYXBzZWQ6bm90KC5sYXlvdXQtc2lkZW5hdi1ob3Zlcik6bm90KC5sYXlvdXQtb2ZmY2FudmFzKTpub3QoLmxheW91dC1maXhlZC1vZmZjYW52YXMpIC5sYXlvdXQtc2lkZW5hdiB7XG4gICAgQGluY2x1ZGUgYXBwd29yay1hcHAtYnJhbmQtY29sbGFwc2VkKCk7XG4gIH1cbn1cbiIsIi8vIFNwaW5uZXJzXG4vL1xuXG5AaW5jbHVkZSBrZXlmcmFtZXMoJ3NwaW5uZXItYm9yZGVyLXJ0bCcpIHtcbiAgdG8geyB0cmFuc2Zvcm06IHJvdGF0ZSgtMzYwZGVnKTsgfVxufVxuXG5AaW5jbHVkZSBydGwtb25seSB7XG4gIC5zcGlubmVyLWJvcmRlciB7XG4gICAgYW5pbWF0aW9uLW5hbWU6IHNwaW5uZXItYm9yZGVyLXJ0bDtcbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFdpdGhpbiBidXR0b25cblxuLmJ0biB7XG4gIC5zcGlubmVyLWJvcmRlcixcbiAgLnNwaW5uZXItZ3JvdyB7XG4gICAgaGVpZ2h0OiAxZW07XG4gICAgd2lkdGg6IDFlbTtcbiAgICB0b3A6IC0uMDYyNXJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAuc3Bpbm5lci1ib3JkZXIge1xuICAgIGJvcmRlci13aWR0aDogLjE1ZW07XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQXlDR0EsQUFBQSxDQUFDO0FBQ0QsTUFBTSxDQUFDO0VBQ0wsV0FBVyxFbkN1UmlCLEdBQUcsR21DdFJoQzs7QUVIRCxBQUFBLFdBQVcsQ0FBWTtFQUFFLE9BQU8sRUFBRSxjQUFjLEdBQUk7O0FBQ3BELEFBQUEsV0FBVyxDQUFZO0VBQUUsT0FBTyxFQUFFLGFBQWEsR0FBSTs7QUFDbkQsQUFBQSxXQUFXLENBQVk7RUFBRSxPQUFPLEVBQUUsY0FBYyxHQUFJOztBQUNwRCxBQUFBLFlBQVksQ0FBVztFQUFFLE9BQU8sRUFBRSxZQUFZLEdBQUk7O0FBRWxELEFBQUEsVUFBVSxDQUFhO0VBQUUsU0FBUyxFdENzRlQsR0FBRyxDc0N0RndCLFVBQVUsR0FBSTs7QUFDbEUsQUFBQSxTQUFTLENBQWM7RUFBRSxTQUFTLEV0Q3VGVCxJQUFJLENzQ3ZGc0IsVUFBVSxHQUFJOztBQUNqRSxBQUFBLFdBQVcsQ0FBWTtFQUFFLFNBQVMsRXRDdUZULElBQUksQ3NDdkZ3QixVQUFVLEdBQUk7O0FBQ25FLEFBQUEsWUFBWSxDQUFXO0VBQUUsU0FBUyxFdEN1RlQsSUFBSSxDc0N2RnlCLFVBQVUsR0FBSTs7QUFFcEUsQUFBQSxjQUFjLENBQVM7RUFBRSxXQUFXLEVBQUUsWUFBWSxHQUFJOztBQUN0RCxBQUFBLHNCQUFzQixDQUFDO0VBQUUsV0FBVyxFQUFFLGNBQWMsR0FBSTs7QUFDeEQsQUFBQSxvQkFBb0IsQ0FBRztFQUFFLFdBQVcsRUFBRSxrQkFBa0IsR0FBSTs7QUFFNUQsQUFBQSxjQUFjLENBQVM7RUFBRSxjQUFjLEVBQUUsU0FBZ0QsQ0FBQyxVQUFVLEdBQUk7O0FBRXhHLEFBQUEscUJBQXFCLENBQUU7RUFBRSxXQUFXLEV0Q2lEWCxHQUFHLENzQ2pEZ0MsVUFBVSxHQUFJOztB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 */

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInZlbmRvci9jc3MvYXBwd29yay5jc3MiLCJ2ZW5kb3IvY3NzL19hcHB3b3JrL191dGlsaXRpZXMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MiLCJ2ZW5kb3IvY3NzL19hcHB3b3JrL192YXJpYWJsZXMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2hvdmVyLnNjc3MiLCJ2ZW5kb3IvY3NzL19hcHB3b3JrL19iYWRnZS5zY3NzIiwidmVuZG9yL2Nzcy9fYXBwd29yay9fZHJvcGRvd24uc2NzcyIsInZlbmRvci9jc3MvX2FwcHdvcmsvX21peGlucy5zY3NzIiwidmVuZG9yL2Nzcy9fYXBwd29yay9fYmFzZS5zY3NzIiwidmVuZG9yL2Nzcy9fYXBwd29yay9fZnVuY3Rpb25zLnNjc3MiLCJ2ZW5kb3IvY3NzL19hcHB3b3JrL190YWJsZXMuc2NzcyIsInZlbmRvci9jc3MvX2FwcHdvcmsvX3JlYm9vdC5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL192YXJpYWJsZXMuc2NzcyIsInZlbmRvci9jc3MvX2FwcHdvcmsvX25hdi5zY3NzIiwidmVuZG9yL2Nzcy9fYXBwd29yay9fYnV0dG9ucy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBOztFQ0F5QixnQkF5UXhCLEVBQUE7O0FEelFEO0VBQXlCLHVCQUF1QixFQUFBOztBQ0FoRDtFQUF1QixzQkFBQSxFQUFBOztBREV2QjtFQ0ZnRCx1QkFBSSxFQUFBOztBREdwRDtFQUF5QixxQkFBcUIsRUFBQTs7QUFFOUM7RUNKK0MseUJBQUksRUFBQTs7QURLbkQ7RUFBeUIsMEJBQW9DLEVBQUE7O0FDSjdEO0VBQXVCLDBCQUFBLEVBQUE7O0FETXZCO0VDTmdELDBCQUFJLEVBQUE7O0FBQ3BEO0VBQXVCLHlCQUFBLEVBQUE7O0FEUXZCO0VDUjhDLDJCQUFJLEVBQUE7O0FEU2xEO0VB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TW1PWDtJUGdTSSx5QkNuZ0JPLEVBQUE7RU1tT1g7SUFuTEUsY05oRFMsRUFBQTs7QUQrZ0JYO0VPOWNJLHlCTnhLbUM7RU15S25DLFdOcEZPLEVBQUE7RURpaUJYO0lPeGNBLDBDTnpGVyxFQUFBO0VEaWlCWDs7SU9sY0EsV04vRlcsRUFBQTs7QU1xUFg7RUFDQSxxQk5wT1c7RU1xT1gseUJOck9XO0VNc09ULGNOdE9TLEVBQUE7RU1tT1g7SVBnU0kseUJDbmdCTyxFQUFBO0VNbU9YO0lBbkxFLGNOaERTLEVBQUE7O0FEK2dCWDtFTzljSSx5Qk4zS2dDO0VNNEtoQyxXTnBGTyxFQUFBO0VEaWlCWDtJT3hjQSwwQ056RlcsRUFBQTtFRGlpQlg7O0lPbGNBLFdOL0ZXLEVBQUE7O0FNcVBYO0VBQ0EscUJOcE9XO0VNcU9YLHlCTnJPVztFTXNPVCxjTnRPUyxFQUFBO0VNbU9YO0lQZ1NJLHlCQ25nQk8sRUFBQTtFTW1PWDtJQW5MRSxjTmhEUyxFQUFBOztBRCtnQlg7RU85Y0kseUJOMUtpQjtFTTJLakIsV05wRk8sRUFBQTtFRGlpQlg7SU94Y0EsMENOekZXLEVBQUE7RURpaUJYOztJT2xjQSxXTi9GVyxFQUFBOztBTXFQWDtFQUNBLHFCTnBPVztFTXFPWCx5Qk5yT1c7RU1zT1QsY050T1MsRUFBQTtFTW1PWDtJUGdTSSx5QkNuZ0JPLEVBQUE7RU1tT1g7SUFuTEUsY05oRFMsRUFBQTs7QUQrZ0JYO0VPOWNJLHlCTjNLZ0I7RU00S2hCLGNObEVPLEVBQUE7RUQrZ0JYO0lPeGNBLHdDTnZFVyxFQUFBO0VEK2dCWDs7SU9sY0EsY043RVcsRUFBQTs7QU1tT1g7RUFDQSxxQk5wT1c7RU1xT1gseUJOck9XO0VNc09ULGNOdE9TLEVBQUE7RU1tT1g7SVBnU0kseUJDbmdCTyxFQUFBO0VNbU9YO0lBbkxFLGNOaERTLEVBQUE7O0FEK2dCWDtFTzljSSx5Qk41S2dDO0VNNktoQyxXTnBGTyxFQUFBO0VEaWlCWDtJT3hjQSwwQ056RlcsRUFBQTtFRGlpQlg7O0lPbGNBLFdOL0ZXLEVBQUE7O0FNcVBYO0VBQ0EscUJOcE9XO0VNcU9YLHlCTnJPVztFTXNPVCxjTnRPUyxFQUFBO0VNbU9YO0lQZ1NJLHlCQ25nQk8sRUFBQTtFTW1PWDtJQW5MRSxjTmhEUyxFQUFBOztBRCtnQlg7RU85Y0ksdUNOckxpQjtFTXNMakIsV05wRk8sRUFBQTtFRGlpQlg7SU94Y0EsMENOekZXLEVBQUE7RURpaUJYOztJT2xjQSxXTi9GVyxFQUFBOztBRG5HYjtFQ0FBLGdCU1FDLEVBQUE7O0FUUEQ7RUFBeUIsYUErSFQsRUFBQTs7QU1rRlo7RVB1Y0UsbUJDM29CbUM7RU00UnZDLFdOdk1XLEVBQUE7O0FNK0dUO0VBOEdELHlCTmxUc0MsRUFBQTs7QU1vTXJDO0VIek1NLDJCSEsrQixFQUFBOztBTW9NckM7RUVHd0IsNEJSdk1hLEVBQUE7O0FNb01yQztFSnJMa0IsMEJGZm1CLEVBQUE7O0FNb01yQztFUHVjRSxtQkM5b0JnQztFTStScEMsV052TVcsRUFBQTs7QU0rR1Q7RUE4R0QseUJOclRtQyxFQUFBOztBTXVNbEM7RUh6TU0sMkJIRTRCLEVBQUE7O0FNdU1sQztFRUd3Qiw0QlIxTVUsRUFBQTs7QU11TWxDO0VKckxrQiwwQkZsQmdCLEVBQUE7O0FNdU1sQztFUHVjRSxtQkM3b0JpQjtFTThSckIsV052TVcsRUFBQTs7QU0rR1Q7RUE4R0QseUJOcFRvQixFQUFBOztBTXNNbkI7RUh6TU0sMkJIR2EsRUFBQTs7QU1zTW5CO0VFR3dCLDRCUnpNTCxFQUFBOztBTXNNbkI7RUpyTGtCLDBCRmpCQyxFQUFBOztBTXNNbkI7RVB1Y0UsbUJDOW9CZ0I7RU0rUnBCLGNOckxXLEVBQUE7O0FNNkZUO0VBOEdELHlCTnJUbUIsRUFBQTs7QU11TWxCO0VIek1NLDJCSEVZLEVBQUE7O0FNdU1sQjtFRUd3Qiw0QlIxTU4sRUFBQTs7QU11TWxCO0VKckxrQiwwQkZsQkEsRUFBQTs7QU11TWxCO0VQdWNFLG1CQy9vQmdDO0VNZ1NwQyxXTnZNVyxFQUFBOztBTStHVDtFQThHRCx5Qk50VG1DLEVBQUE7O0FNd01sQztFSHpNTSwyQkhDNEIsRUFBQTs7QU13TWxDO0VFR3dCLDRCUjNNVSxFQUFBOztBTXdNbEM7RUpyTGtCLDBCRm5CZ0IsRUFBQTs7QU13TWxDO0VQdWNFLG1CQ3BpQk87RU1xTFgsV052TVcsRUFBQTs7QU0rR1Q7RUE4R0QseUJOM01VLEVBQUE7O0FNNkZUO0VIek1NLDJCSDRHRyxFQUFBOztBTTZGVDtFRUd3Qiw0QlJoR2YsRUFBQTs7QU02RlQ7RUpyTGtCLDBCRndGVCxFQUFBOztBRHJIYjtFQ0FBLHlDQW9Ia0IsRUFBQTtFRHBIbEI7SUNDQSxVQUF1QixFQUFBOztBRE92QjtFQUNFLGFDdUhjLEVBQUE7O0FNbU1kO0VBQ0EseUJBQTRCO0VBQzFCLG1CTnZUcUMsRUFBQTtFTXFUdkM7SUFTSSxzQ056T087SUQ2a0JQLHVCQUF1QjtJT2hXM0IsV043T1csRUFBQTtFTWdPWDtJUGtYSSx1QkFBdUI7SU8vVjNCLFdOblBXLEVBQUE7RU1nT1g7SUFzQm9CLHlCQUFjLEVBQUE7RUF0QmxDO0lFbEtjLHlCUm5KeUIsRUFBQTtFTXFUdkM7SUVsS2MsMkJSbkp5QixFQUFBO0VNcVR2QztJQTJCQyw0Qk5oVnNDLEVBQUE7RU1xVHZDO0lQMlg4RiwwQkNockJ2RCxFQUFBOztBTXFUdkM7RUFDQSx5QkFBNEI7RUFDMUIsbUJOMVRrQyxFQUFBO0VNd1RwQztJQVNJLHNDTnpPTztJRDZrQlAsdUJBQXVCO0lPaFczQixXTjdPVyxFQUFBO0VNZ09YO0lQa1hJLHVCQUF1QjtJTy9WM0IsV05uUFcsRUFBQTtFTWdPWDtJQXNCb0IseUJBQWMsRUFBQTtFQXRCbEM7SUVsS2MseUJSdEpzQixFQUFBO0VNd1RwQztJRWxLYywyQlJ0SnNCLEVBQUE7RU13VHBDO0lBMkJDLDRCTm5WbUMsRUFBQTtFTXdUcEM7SVAyWDhGLDBCQ25yQjFELEVBQUE7O0FNd1RwQztFQUNBLHlCQUE0QjtFQUMxQixtQk56VG1CLEVBQUE7RU11VHJCO0lBU0ksc0NOek9PO0lENmtCUCx1QkFBdUI7SU9oVzNCLFdON09XLEVBQUE7RU1nT1g7SVBrWEksdUJBQXVCO0lPL1YzQixXTm5QVyxFQUFBO0VNZ09YO0lBc0JvQix5QkFBYyxFQUFBO0VBdEJsQztJRWxLYyx5QlJySk8sRUFBQTtFTXVUckI7SUVsS2MsMkJSckpPLEVBQUE7RU11VHJCO0lBMkJDLDRCTmxWb0IsRUFBQTtFTXVUckI7SVAyWDhGLDBCQ2xyQnpFLEVBQUE7O0FNdVRyQjtFQUNBLHlCQUE0QjtFQUMxQixtQk4xVGtCLEVBQUE7RU13VHBCO0lBU0ksb0NOdk5PO0lEMmpCUCx1QkFBdUI7SU9oVzNCLGNOM05XLEVBQUE7RU04TVg7SVBrWEksdUJBQXVCO0lPL1YzQixjTmpPVyxFQUFBO0VNOE1YO0lBc0JvQix5QkFBYyxFQUFBO0VBdEJsQztJRWxLYyx5QlJ0Sk0sRUFBQTtFTXdUcEI7SUVsS2MsMkJSdEpNLEVBQUE7RU13VHBCO0lBMkJDLDRCTm5WbUIsRUFBQTtFTXdUcEI7SVAyWDhGLDBCQ25yQjFFLEVBQUE7O0FNd1RwQjtFQUNBLHlCQUE0QjtFQUMxQixtQk4zVGtDLEVBQUE7RU15VHBDO0lBU0ksc0NOek9PO0lENmtCUCx1QkFBdUI7SU9oVzNCLFdON09XLEVBQUE7RU1nT1g7SVBrWEksdUJBQXVCO0lPL1YzQixXTm5QVyxFQUFBO0VNZ09YO0lBc0JvQix5QkFBYyxFQUFBO0VBdEJsQztJRWxLYyx5QlJ2SnNCLEVBQUE7RU15VHBDO0lFbEtjLDJCUnZKc0IsRUFBQTtFTXlUcEM7SUEyQkMsNEJOcFZtQyxFQUFBO0VNeVRwQztJUDJYOEYsMEJDcHJCMUQsRUFBQTs7QU15VHBDO0VBQ0EseUJBQTRCO0VBQzFCLG1CTmhOUyxFQUFBO0VNOE1YO0lBU0ksc0NOek9PO0lENmtCUCx1QkFBdUI7SU9oVzNCLFdON09XLEVBQUE7RU1nT1g7SVBrWEksdUJBQXVCO0lPL1YzQixXTm5QVyxFQUFBO0VNZ09YO0lBc0JvQix5QkFBYyxFQUFBO0VBdEJsQztJRWxLYyx5QlI1Q0gsRUFBQTtFTThNWDtJRWxLYywyQlI1Q0gsRUFBQTtFTThNWDtJQTJCQyw0Qk56T1UsRUFBQTtFTThNWDtJUDJYOEYsMEJDemtCbkYsRUFBQTs7QUQ5RmI7RUFDRSxx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RSxtQk5uYmtDO0VNb2JsQyxXTjVWUyxFQUFBOztBTXdUWDtFQUNFLDRDTmpaa0MsRUFBQTs7QUdFcEM7RUdxWkksZ0JFN1JNLEVBQUE7O0FGd1RWO0VBQ0UsbUJObGJtQjtFTW1ibkIsV041VlMsRUFBQTs7QU13VFg7RUFDRSw2Q05oWm1CLEVBQUE7O0FHQ3JCO0VHcVpJLGdCRTdSTSxFQUFBOztBRndUVjtFQUNFLG1CTm5ia0I7RU1vYmxCLGNOMVVTLEVBQUE7O0FNc1NYO0VBQ0UsNkNOalprQixFQUFBOztBR0VwQjtFR3FaSSxnQkU3Uk0sRUFBQTs7QUZ3VFY7RUFDRSxtQk5wYmtDO0VNcWJsQyxXTjVWUyxFQUFBOztBTXdUWDtFQUNFLDRDTmxaa0MsRUFBQTs7QUdHcEM7RUdxWkksZ0JFN1JNLEVBQUE7O0FGd1RWO0VBQ0UsaUNON2JtQjtFTThibkIsV041VlMsRUFBQTs7QU13VFg7RUFDRSwyQ04zWm1CLEVBQUE7O0FHWXJCO0VHcVpJLGdCRTdSTSxFQUFBOztBVG9JWjs7RUNYWSxvQk05Q3lCLEVBQUE7O0FBb04vQjtFQUtGLG1CTjlaa0M7RU0rWmxDLFdOdlVTLEVBQUE7O0FNaVVQO0VBYUYsNENOdGFrQyxFQUFBOztBTXlaaEM7RUh2WkosZ0JHeWFvQixFQUFBOztBQWxCaEI7RUF5QkMsY05sYitCLEVBQUE7O0FNeVpoQzs7O0VBVEosY0FBVyxFQUFBOztBQVNQO0VBS0YsbUJOL1prQztFTWdhbEMsV052VVMsRUFBQTs7QU1pVVA7RUFhRiw0Q052YWtDLEVBQUE7O0FNMFpoQztFSHZaSixnQkd5YW9CLEVBQUE7O0FBbEJoQjtFQXlCQyxjTm5iK0IsRUFBQTs7QU0wWmhDOzs7RUFUSixjQUFXLEVBQUE7O0FQM1piO0VDQUEsa0JBQXVCO01BQXZCLGNBQXVCO0VBQUUsV0FBUyxFQUFBOztBREtsQztFQUNFLDRCQUE0QixFQUFBOztBQU05Qjs7O0VDQXlCLHlCREdNO0VBa0IzQiw0QkFsQjJCLEVBQUE7O0FBRy9COzs7RUFBSSwwQkFHNEI7RUNkaEMsNkJEY2dDLEVBQUE7O0FBR2hDOzs7Ozs7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Y043RlMsRUFBQTtFTWdGVDs7SUFzR0EscUJOaFNrQztJTWlTbEMseUJOalNrQztJTWtTbEMsY054TFMsRUFBQTs7QU15RVQ7RVB3WUEsaUNBQTZCO0VPclkvQix5Qk41RVc7RU02RVgsY043RVcsRUFBQTs7QU1nRlQ7O0VQd1lBLGNDeGRTLEVBQUE7RUFoSGI7OztJTTRNRSx5Qk41Rlc7SU02RlQsY043RlMsRUFBQTtFTWdGVDs7SUFzR0EscUJOL1JtQjtJTWdTbkIseUJOaFNtQjtJTWlTbkIsY054TFMsRUFBQTs7QU15RVQ7RVB3WUEsaUNBQTZCO0VPclkvQix5Qk41RVc7RU02RVgsY043RVcsRUFBQTs7QU1nRlQ7O0VQd1lBLGNDeGRTLEVBQUE7RUFoSGI7OztJTTRNRSx5Qk41Rlc7SU02RlQsY043RlMsRUFBQTtFTWdGVDs7SUFzR0EscUJOaFNrQjtJTWlTbEIseUJOalNrQjtJTWtTbEIsY054TFMsRUFBQTs7QU15RVQ7RVB3WUEsaUNBQTZCO0VPclkvQix5Qk41RVc7RU02RVgsY043RVcsRUFBQTs7QU1nRlQ7O0VQd1lBLGNDeGRTLEVBQUE7RUFoSGI7OztJTTRNRSx5Qk41Rlc7SU02RlQsY043RlMsRUFBQTtFTWdGVDs7SUFzR0EscUJOalNrQztJTWtTbEMseUJObFNrQztJTW1TbEMsY054TFMsRUFBQTs7QU15RVQ7RVB3WUEsaUNBQTZCO0VPclkvQix5Qk41RVc7RU02RVgsY043RVcsRUFBQTs7QU1nRlQ7O0VQd1lBLGNDeGRTLEVBQUE7RUFoSGI7OztJTTRNRSx5Qk41Rlc7SU02RlQsY043RlMsRUFBQTtFTWdGVDs7SUFzR0EsbUNOMVNtQjtJTTJTbkIsdUNOM1NtQjtJTTRTbkIsY054TFMsRUFBQTs7QURySGI7RUNBQSxVQUF1QixFQUFBOztBQUN2QjtFQUF5QixhTXlTdkIsRUFBQTs7QU5uU0Y7RUFBeUIsK0JESk4sRUFBQTs7QUFvQm5CO0VBQ0UsMENBQTZDLEVBQUE7O0FBRy9DO0VDaEJBLDRCQVZ1QixFQUFBOztBQVd2QjtFQUF5Qix1Q0FBbUMsRUFBQTs7QUR3QjVEOzs7RUFHRSxv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QXVCO0VBQUUsaUJBQWdCLEVBQUE7O0FBRWhCOztFQUN6QixhQUF1QixFQUFBOztBQW9CdkI7RUE1QnlCO0lEcUJyQixnQkFBZ0I7SUNuQnBCLGVBQXVCO0lBQUUsZU00S3RCLEVBQUE7RU4xS3NCOztJQUN6QixrQkFBdUI7SUFBRSxpQkFBZ0IsRUFBQTtFQUVoQjs7SUFDekIsYUFBdUIsRUFBQSxFQUFFOztBQUR6QjtFQW5CQTtJQUFBLGtDQUF1QjtZQUF2QiwwQkFBdUIsRUFBQSxFQUFBOztBQXNCdkI7RUF0QkE7SUFBQSxrQ0FBdUI7WUFBdkIsMEJBQXVCLEVBQUEsRUFBQTs7QUFLdkI7O0VBQ0EsV0FBdUI7RUFBRSxVRXVGQTtFSDNFckIsY0FBYztFQ1hsQixrQkFBdUIsRUFBQTs7QUFGdkI7RUFHeUIsbUJBQTZCLEVBQUE7O0FEMDVJdEQseW1tbkJBQXltbW5CIiwiZmlsZSI6InZlbmRvci9jc3MvYXBwd29yay5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBSZWJvb3Rcbi8vXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG59XG5cbkBpbmNsdWRlIHJ0bC1vbmx5IHtcbiAgZGQge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxuICBjYXB0aW9uIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxufVxuIiwiLy8gVXRpbGl0aWVzXG4vL1xuXG4ub3BhY2l0eS0yNSAgICAgICAgICAgIHsgb3BhY2l0eTogLjI1ICFpbXBvcnRhbnQ7IH1cbi5vcGFjaXR5LTUwICAgICAgICAgICAgeyBvcGFjaXR5OiAuNSAhaW1wb3J0YW50OyB9XG4ub3BhY2l0eS03NSAgICAgICAgICAgIHsgb3BhY2l0eTogLjc1ICFpbXBvcnRhbnQ7IH1cbi5vcGFjaXR5LTEwMCAgICAgICAgICAgeyBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtdGlueSAgICAgICAgICAgICB7IGZvbnQtc2l6ZTogJHRpbnktZm9udC1zaXplICFpbXBvcnRhbnQ7IH1cbi50ZXh0LWJpZyAgICAgICAgICAgICAgeyBmb250LXNpemU6ICRiaWctZm9udC1zaXplICFpbXBvcnRhbnQ7IH1cbi50ZXh0LWxhcmdlICAgICAgICAgICAgeyBmb250LXNpemU6ICRsYXJnZS1mb250LXNpemUgIWltcG9ydGFudDsgfVxuLnRleHQteGxhcmdlICAgICAgICAgICB7IGZvbnQtc2l6ZTogJHhsYXJnZS1mb250LXNpemUgIWltcG9ydGFudDsgfVxuXG4ubGluZS1oZWlnaHQtMSAgICAgICAgIHsgbGluZS1oZWlnaHQ6IDEgIWltcG9ydGFudDsgfVxuLmxpbmUtaGVpZ2h0LWNvbmRlbmNlZCB7IGxpbmUtaGVpZ2h0OiAxLjMgIWltcG9ydGFudDsgfVxuLmxpbmUtaGVpZ2h0LWluaGVyaXQgICB7IGxpbmUtaGVpZ2h0OiBpbmhlcml0ICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtZXhwYW5kZWQgICAgICAgICB7IGxldHRlci1zcGFjaW5nOiAoKDEgLyAoc3RyaXAtdW5pdCgkZm9udC1zaXplLWJhc2UpICogMTYpKSAqIDFlbSkgIWltcG9ydGFudDsgfVxuXG4uZm9udC13ZWlnaHQtc2VtaWJvbGQgIHsgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pYm9sZCAhaW1wb3J0YW50OyB9XG4udGV4dC10cmFuc2Zvcm0tbm9uZSAgIHsgdGV4dC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDsgfVxuXG4udGV4dC1zYW5zLXNlcmlmICAgICAgIHsgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1zYW5zLXNlcmlmICFpbXBvcnRhbnQ7IH1cbi50ZXh0LXNlcmlmICAgICAgICAgICAgeyBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNlcmlmICFpbXBvcnRhbnQ7IH1cblxuLmN1cnNvci1wb2ludGVyICAgICAgICB7IGN1cnNvcjogcG9pbnRlciAhaW1wb3J0YW50OyB9XG4uY3Vyc29yLW1vdmUge1xuICBjdXJzb3I6IG1vdmUgIWltcG9ydGFudDsgLy8gRmFsbGJhY2tcbiAgY3Vyc29yOiBncmFiICFpbXBvcnRhbnQ7XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogTGF5b3V0IGNvbnRhaW5lcnNcblxuLmNvbnRhaW5lci1wLXgge1xuICBwYWRkaW5nLXJpZ2h0OiAkY29udGFpbmVyLXBhZGRpbmcteC1zbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWxlZnQ6ICRjb250YWluZXItcGFkZGluZy14LXNtICFpbXBvcnRhbnQ7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRjb250YWluZXItcGFkZGluZy14ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAkY29udGFpbmVyLXBhZGRpbmcteCAhaW1wb3J0YW50O1xuICB9XG59XG4uY29udGFpbmVyLW0tbngge1xuICBtYXJnaW4tcmlnaHQ6IC0kY29udGFpbmVyLXBhZGRpbmcteC1zbSAhaW1wb3J0YW50O1xuICBtYXJnaW4tbGVmdDogLSRjb250YWluZXItcGFkZGluZy14LXNtICFpbXBvcnRhbnQ7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgIG1hcmdpbi1yaWdodDogLSRjb250YWluZXItcGFkZGluZy14ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IC0kY29udGFpbmVyLXBhZGRpbmcteCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5jb250YWluZXItcC15IHtcbiAgJjpub3QoW2NsYXNzXj1cInB0LVwiXSk6bm90KFtjbGFzcyo9XCIgcHQtXCJdKSB7XG4gICAgcGFkZGluZy10b3A6ICRjb250YWluZXItcGFkZGluZy15ICFpbXBvcnRhbnQ7XG4gIH1cbiAgJjpub3QoW2NsYXNzXj1cInBiLVwiXSk6bm90KFtjbGFzcyo9XCIgcGItXCJdKSB7XG4gICAgcGFkZGluZy1ib3R0b206ICRjb250YWluZXItcGFkZGluZy15ICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5jb250YWluZXItbS1ueSB7XG4gICY6bm90KFtjbGFzc149XCJtdC1cIl0pOm5vdChbY2xhc3MqPVwiIG10LVwiXSkge1xuICAgIG1hcmdpbi10b3A6IC0kY29udGFpbmVyLXBhZGRpbmcteSAhaW1wb3J0YW50O1xuICB9XG4gICY6bm90KFtjbGFzc149XCJtYi1cIl0pOm5vdChbY2xhc3MqPVwiIG1iLVwiXSkge1xuICAgIG1hcmdpbi1ib3R0b206IC0kY29udGFpbmVyLXBhZGRpbmcteSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogVHJhbnNmb3Jtc1xuXG4ucm90YXRlLTkwIHsgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpOyB9XG4ucm90YXRlLTE4MCB7IHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IH1cbi5yb3RhdGUtMjcwIHsgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTsgfVxuLnJvdGF0ZS0tOTAgeyB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpOyB9XG4ucm90YXRlLS0xODAgeyB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTsgfVxuLnJvdGF0ZS0tMjcwIHsgdHJhbnNmb3JtOiByb3RhdGUoLTI3MGRlZyk7IH1cbi5yb3RhdGUtMCB7IHRyYW5zZm9ybTogcm90YXRlKDBkZWcpICFpbXBvcnRhbnQ7IH1cblxuLnNjYWxlWC0tMSB7IHRyYW5zZm9ybTogc2NhbGVYKC0xKTsgfVxuLnNjYWxlWS0tMSB7IHRyYW5zZm9ybTogc2NhbGVZKC0xKTsgfVxuXG5AaW5jbHVkZSBydGwtb25seSB7XG4gIC5yb3RhdGUtOTAgeyB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpOyB9XG4gIC5yb3RhdGUtMTgwIHsgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7IH1cbiAgLnJvdGF0ZS0yNzAgeyB0cmFuc2Zvcm06IHJvdGF0ZSgtMjcwZGVnKTsgfVxuICAucm90YXRlLS05MCB7IHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTsgfVxuICAucm90YXRlLS0xODAgeyB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyB9XG4gIC5yb3RhdGUtLTI3MCB7IHRyYW5zZm9ybTogcm90YXRlKDI3MGRlZyk7IH1cblxuICAuc2NhbGVYLS0xIHsgdHJhbnNmb3JtOiBzY2FsZVgoMSk7IH1cbiAgLnNjYWxlWS0tMSB7IHRyYW5zZm9ybTogc2NhbGVZKDEpOyB9XG5cbiAgLnNjYWxlWC0tMS1ydGwgeyB0cmFuc2Zvcm06IHNjYWxlWCgtMSk7IH1cbiAgLnNjYWxlWS0tMS1ydGwgeyB0cmFuc2Zvcm06IHNjYWxlWSgtMSk7IH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBCb3JkZXJlZCByb3dzXG5cbi5yb3ctYm9yZGVyZWQge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICA+IC5jb2wsXG4gICA+IFtjbGFzc149XCJjb2wtXCJdLFxuICAgPiBbY2xhc3MqPVwiIGNvbC1cIl0sXG4gICA+IFtjbGFzc149XCJjb2wgXCJdLFxuICAgPiBbY2xhc3MqPVwiIGNvbCBcIl0sXG4gICA+IFtjbGFzcyQ9XCIgY29sXCJdLFxuICAgPiBbY2xhc3M9XCJjb2xcIl0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXRvcDogMXB4O1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogLTFweDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyZWQtcm93LWJvcmRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogLTFweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDA7XG4gICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRib3JkZXJlZC1yb3ctYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gICYucm93LWJvcmRlci1saWdodCB7XG4gICAgID4gLmNvbCxcbiAgICAgPiBbY2xhc3NePVwiY29sLVwiXSxcbiAgICAgPiBbY2xhc3MqPVwiIGNvbC1cIl0sXG4gICAgID4gW2NsYXNzXj1cImNvbCBcIl0sXG4gICAgID4gW2NsYXNzKj1cIiBjb2wgXCJdLFxuICAgICA+IFtjbGFzcyQ9XCIgY29sXCJdLFxuICAgICA+IFtjbGFzcz1cImNvbFwiXSB7XG4gICAgICAmOjpiZWZvcmUsXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGdyYXktMTAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBydGwtb25seSB7XG4gIC5yb3ctYm9yZGVyZWQgPiAuY29sOjphZnRlcixcbiAgLnJvdy1ib3JkZXJlZCA+IFtjbGFzc149XCJjb2wtXCJdOjphZnRlcixcbiAgLnJvdy1ib3JkZXJlZCA+IFtjbGFzcyo9XCIgY29sLVwiXTo6YWZ0ZXIsXG4gIC5yb3ctYm9yZGVyZWQgPiBbY2xhc3NePVwiY29sIFwiXTo6YWZ0ZXIsXG4gIC5yb3ctYm9yZGVyZWQgPiBbY2xhc3MqPVwiIGNvbCBcIl06OmFmdGVyLFxuICAucm93LWJvcmRlcmVkID4gW2NsYXNzJD1cIiBjb2xcIl06OmFmdGVyLFxuICAucm93LWJvcmRlcmVkID4gW2NsYXNzPVwiY29sXCJdOjphZnRlciB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogLTFweDtcbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFdpZHRoXG5cbkBlYWNoICRicmVha3BvaW50IGluIHNsaWNlLWxpc3QobWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpLCAyKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgICAudyN7JGluZml4fS0xMDAgeyB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gICAgLncjeyRpbmZpeH0tYXV0byB7IHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFRhYmxlIGNlbGxcblxuLmNlbGwtZml0IHtcbiAgd2lkdGg6IC4xJTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBGbGV4XG5cbi5mbGV4LXRydW5jYXRlICB7IG1pbi13aWR0aDogMCAhaW1wb3J0YW50OyB9XG5cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgICAuZmxleC1iYXNpcyN7JGluZml4fS0xMDAgeyBmbGV4LWJhc2lzOiAxMDAlICFpbXBvcnRhbnQ7IH1cbiAgICAuZmxleC1iYXNpcyN7JGluZml4fS1hdXRvIHsgZmxleC1iYXNpczogYXV0byAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuLy8gSUUgZml4XG4uZC1mbGV4LFxuLmQtaW5saW5lLWZsZXgsXG4ubWVkaWEsXG4ubWVkaWEgPiA6bm90KC5tZWRpYS1ib2R5KSxcbi5qdW1ib3Ryb24sXG4uY2FyZCB7XG4gIGZsZXgtc2hyaW5rOiAxO1xufVxuLy8gRml4IElFIHBhcmVudCBjb250YWluZXIgaGVpZ2h0IGJ1ZyB3aGVuIGNvbnRhaW5pbmcgaW1hZ2Ugd2l0aCBmbHVpZCB3aWR0aFxuLmllLW1oLTEge1xuICBtaW4taGVpZ2h0OiAxcHg7XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogVGV4dCBjb2xvclxuXG4udGV4dC1ib2R5W2hyZWZdOmhvdmVyIHtcbiAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LW11dGVkW2hyZWZdIHtcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMgeyBjb2xvcjogJHRleHQtbXV0ZWQtaG92ZXIgIWltcG9ydGFudDsgfVxufVxuXG4udGV4dC1saWdodCB7XG4gIGNvbG9yOiAkdGV4dC1saWdodCAhaW1wb3J0YW50O1xuXG4gICZbaHJlZl0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHsgY29sb3I6ICR0ZXh0LW11dGVkLWhvdmVyICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG4udGV4dC1saWdodGVyIHtcbiAgY29sb3I6ICR0ZXh0LWxpZ2h0ZXIgIWltcG9ydGFudDtcblxuICAmW2hyZWZdIHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7IGNvbG9yOiAkdGV4dC1tdXRlZC1ob3ZlciAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuLnRleHQtbGlnaHRlc3Qge1xuICBjb2xvcjogJHRleHQtbGlnaHRlc3QgIWltcG9ydGFudDtcblxuICAmW2hyZWZdIHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7IGNvbG9yOiAkdGV4dC1tdXRlZC1ob3ZlciAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEJhY2tncm91bmQgY29sb3JcblxuLmJnLWRhcmsgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS05MDAgIWltcG9ydGFudDsgfVxuYS5iZy1kYXJrIHtcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS05MDAgIWltcG9ydGFudDsgfVxufVxuXG4uYmctbGlnaHQgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS0xMDAgIWltcG9ydGFudDsgfVxuYS5iZy1saWdodCB7XG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHsgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktMjAwICFpbXBvcnRhbnQ7IH1cbn1cblxuLmJnLWxpZ2h0ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS01MCAhaW1wb3J0YW50OyB9XG5hLmJnLWxpZ2h0ZXIge1xuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7IGJhY2tncm91bmQtY29sb3I6ICRncmF5LTEwMCAhaW1wb3J0YW50OyB9XG59XG5cbi5iZy1saWdodGVzdCB7IGJhY2tncm91bmQtY29sb3I6ICRncmF5LTI1ICFpbXBvcnRhbnQ7IH1cbmEuYmctbGlnaHRlc3Qge1xuICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7IGJhY2tncm91bmQtY29sb3I6ICRncmF5LTUwICFpbXBvcnRhbnQ7IH1cbn1cblxuLmJnLXRyYW5zcGFyZW50IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEJvcmRlciBjb2xvclxuXG4uYm9yZGVyLWxpZ2h0IHtcbiAgYm9yZGVyLWNvbG9yOiAkZ3JheS0xMDAgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci10cmFuc3BhcmVudCB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBSVExcblxuQGluY2x1ZGUgcnRsLW9ubHkge1xuICAvLyBCb3JkZXJcbiAgLmJvcmRlciAgICAgICAgIHsgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuICAuYm9yZGVyLXRvcCAgICAgeyBib3JkZXItdG9wOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuICAuYm9yZGVyLXJpZ2h0ICAgeyBib3JkZXItbGVmdDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbiAgLmJvcmRlci1ib3R0b20gIHsgYm9yZGVyLWJvdHRvbTogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbiAgLmJvcmRlci1sZWZ0ICAgIHsgYm9yZGVyLXJpZ2h0OiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3IgIWltcG9ydGFudDsgfVxuICAuYm9yZGVyLTAgICAgICAgIHsgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IH1cbiAgLmJvcmRlci10b3AtMCAgICB7IGJvcmRlci10b3A6IDAgIWltcG9ydGFudDsgfVxuICAuYm9yZGVyLXJpZ2h0LTAgIHsgYm9yZGVyLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAuYm9yZGVyLWJvdHRvbS0wIHsgYm9yZGVyLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4gIC5ib3JkZXItbGVmdC0wICAgeyBib3JkZXItcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgICAuYm9yZGVyLSN7JGNvbG9yfSB7IGJvcmRlci1jb2xvcjogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgfVxuICAuYm9yZGVyLXdoaXRlIHsgYm9yZGVyLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDsgfVxuXG4gIC8vIEJvcmRlci1yYWRpdXNcbiAgLnJvdW5kZWQge1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnJvdW5kZWQtdG9wIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICB9XG4gIC5yb3VuZGVkLXJpZ2h0IHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnJvdW5kZWQtYm90dG9tIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICB9XG4gIC5yb3VuZGVkLWxlZnQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICB9XG4gIC5yb3VuZGVkLWNpcmNsZSB7IGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50OyB9XG4gIC5yb3VuZGVkLXBpbGwgeyBib3JkZXItcmFkaXVzOiAkcm91bmRlZC1waWxsICFpbXBvcnRhbnQ7IH1cbiAgLnJvdW5kZWQtMCB7IGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDsgfVxuXG4gIC8vIEZsb2F0XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAgIC5mbG9hdCN7JGluZml4fS1sZWZ0ICB7IGZsb2F0OiByaWdodCAhaW1wb3J0YW50OyB9XG4gICAgICAuZmxvYXQjeyRpbmZpeH0tcmlnaHQgeyBmbG9hdDogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSBhbGlnbm1lbnRcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgICAgLnRleHQjeyRpbmZpeH0tbGVmdCAgIHsgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxuICAgICAgLnRleHQjeyRpbmZpeH0tcmlnaHQgIHsgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgLy8gTWFyZ2luIGFuZCBQYWRkaW5nXG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAgIEBlYWNoICRwcm9wLCAkYWJicmV2IGluIChtYXJnaW46IG0sIHBhZGRpbmc6IHApIHtcbiAgICAgICAgQGVhY2ggJHNpemUsICRsZW5ndGggaW4gJHNwYWNlcnMge1xuICAgICAgICAgIC4jeyRhYmJyZXZ9I3skaW5maXh9LSN7JHNpemV9IHsgI3skcHJvcH06ICRsZW5ndGggIWltcG9ydGFudDsgfVxuICAgICAgICAgIC4jeyRhYmJyZXZ9dCN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgICAuI3skYWJicmV2fXkjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICAgI3skcHJvcH0tdG9wOiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICAgIC4jeyRhYmJyZXZ9ciN7JGluZml4fS0jeyRzaXplfSxcbiAgICAgICAgICAuI3skYWJicmV2fXgjeyRpbmZpeH0tI3skc2l6ZX0ge1xuICAgICAgICAgICAgI3skcHJvcH0tbGVmdDogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgICAuI3skYWJicmV2fWIjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgICAgLiN7JGFiYnJldn15I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAgICN7JHByb3B9LWJvdHRvbTogJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgICAuI3skYWJicmV2fWwjeyRpbmZpeH0tI3skc2l6ZX0sXG4gICAgICAgICAgLiN7JGFiYnJldn14I3skaW5maXh9LSN7JHNpemV9IHtcbiAgICAgICAgICAgICN7JHByb3B9LXJpZ2h0OiAkbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIE5lZ2F0aXZlIG1hcmdpbnMgKGUuZy4sIHdoZXJlIGAubWItbjFgIGlzIG5lZ2F0aXZlIHZlcnNpb24gb2YgYC5tYi0xYClcbiAgICAgIEBlYWNoICRzaXplLCAkbGVuZ3RoIGluICRzcGFjZXJzIHtcbiAgICAgICAgQGlmICRzaXplICE9IDAge1xuICAgICAgICAgIC5tI3skaW5maXh9LW4jeyRzaXplfSB7IG1hcmdpbjogLSRsZW5ndGggIWltcG9ydGFudDsgfVxuICAgICAgICAgIC5tdCN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgICAgLm15I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgICAubXIjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAgIC5teCN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0kbGVuZ3RoICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5tYiN7JGluZml4fS1uI3skc2l6ZX0sXG4gICAgICAgICAgLm15I3skaW5maXh9LW4jeyRzaXplfSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgICAubWwjeyRpbmZpeH0tbiN7JHNpemV9LFxuICAgICAgICAgIC5teCN7JGluZml4fS1uI3skc2l6ZX0ge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtJGxlbmd0aCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBTb21lIHNwZWNpYWwgbWFyZ2luIHV0aWxzXG4gICAgICAubSN7JGluZml4fS1hdXRvIHsgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAgIC5tdCN7JGluZml4fS1hdXRvLFxuICAgICAgLm15I3skaW5maXh9LWF1dG8ge1xuICAgICAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgICAubXIjeyRpbmZpeH0tYXV0byxcbiAgICAgIC5teCN7JGluZml4fS1hdXRvIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIC5tYiN7JGluZml4fS1hdXRvLFxuICAgICAgLm15I3skaW5maXh9LWF1dG8ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgICAubWwjeyRpbmZpeH0tYXV0byxcbiAgICAgIC5teCN7JGluZml4fS1hdXRvIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBCcmVha3BvaW50IHZpZXdwb3J0IHNpemVzIGFuZCBtZWRpYSBxdWVyaWVzLlxuLy9cbi8vIEJyZWFrcG9pbnRzIGFyZSBkZWZpbmVkIGFzIGEgbWFwIG9mIChuYW1lOiBtaW5pbXVtIHdpZHRoKSwgb3JkZXIgZnJvbSBzbWFsbCB0byBsYXJnZTpcbi8vXG4vLyAgICAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpXG4vL1xuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxuXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQgbGcgeGwpKVxuLy8gICAgbWRcbkBmdW5jdGlvbiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpKSB7XG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRuICE9IG51bGwgYW5kICRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNTc2cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIGxhcmdlc3QgKGxhc3QpIGJyZWFrcG9pbnQuXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyBjYWxjdWxhdGVkIGFzIHRoZSBtaW5pbXVtIG9mIHRoZSBuZXh0IG9uZSBsZXNzIDAuMDJweFxuLy8gdG8gd29yayBhcm91bmQgdGhlIGxpbWl0YXRpb25zIG9mIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHMgd2l0aCBmcmFjdGlvbmFsIHdpZHRocy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcbi8vIFVzZXMgMC4wMnB4IHJhdGhlciB0aGFuIDAuMDFweCB0byB3b3JrIGFyb3VuZCBhIGN1cnJlbnQgcm91bmRpbmcgYnVnIGluIFNhZmFyaS5cbi8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA3NjcuOThweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEByZXR1cm4gaWYoJG5leHQsIGJyZWFrcG9pbnQtbWluKCRuZXh0LCAkYnJlYWtwb2ludHMpIC0gLjAyLCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFZhcmlhYmxlc1xuLy9cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBDb2xvcnNcblxuJHdoaXRlOiAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRibGFjazogICAgICAgICMxODFDMjEgIWRlZmF1bHQ7XG4kZ3JheS0yNTogICAgICByZ2JhKCRibGFjaywgLjAxNSkgIWRlZmF1bHQ7XG4kZ3JheS01MDogICAgICByZ2JhKCRibGFjaywgLjAzKSAhZGVmYXVsdDtcbiRncmF5LTEwMDogICAgIHJnYmEoJGJsYWNrLCAuMDYpICFkZWZhdWx0O1xuJGdyYXktMjAwOiAgICAgcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRncmF5LTMwMDogICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kZ3JheS00MDA6ICAgICByZ2JhKCRibGFjaywgLjMpICFkZWZhdWx0O1xuJGdyYXktNTAwOiAgICAgcmdiYSgkYmxhY2ssIC40KSAhZGVmYXVsdDtcbiRncmF5LTYwMDogICAgIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG4kZ3JheS03MDA6ICAgICByZ2JhKCRibGFjaywgLjYpICFkZWZhdWx0O1xuJGdyYXktODAwOiAgICAgcmdiYSgkYmxhY2ssIC44KSAhZGVmYXVsdDtcbiRncmF5LTkwMDogICAgIHJnYmEoJGJsYWNrLCAuOSkgIWRlZmF1bHQ7XG5cbiRncmF5czogKFxuICBcIjI1XCI6ICRncmF5LTI1LFxuICBcIjUwXCI6ICRncmF5LTUwXG4pICFkZWZhdWx0O1xuXG4kYmx1ZTogICAgICAgICAjMWU3MGNkICFkZWZhdWx0O1xuJGluZGlnbzogICAgICAgIzY2MTBmMiAhZGVmYXVsdDtcbiRwdXJwbGU6ICAgICAgICM2ZjQyYzEgIWRlZmF1bHQ7XG4kcGluazogICAgICAgICAjZTgzZThjICFkZWZhdWx0O1xuJHJlZDogICAgICAgICAgI2Q5NTM0ZiAhZGVmYXVsdDtcbiRvcmFuZ2U6ICAgICAgICNGRUI3NDQgIWRlZmF1bHQ7XG4keWVsbG93OiAgICAgICAjRkZEOTUwICFkZWZhdWx0O1xuJGdyZWVuOiAgICAgICAgIzAyQkM3NyAhZGVmYXVsdDtcbiR0ZWFsOiAgICAgICAgICMyMGM5OTcgIWRlZmF1bHQ7XG4kY3lhbjogICAgICAgICAjMjhjM2Q3ICFkZWZhdWx0O1xuXG4kdGhlbWUtY29sb3JzOiAoXG4gIFwicHJpbWFyeVwiOiAgICRpbmRpZ28sXG4gIFwic2Vjb25kYXJ5XCI6ICM4ODk3QUEsXG4gIFwic3VjY2Vzc1wiOiAgICRncmVlbixcbiAgXCJpbmZvXCI6ICAgICAgJGN5YW4sXG4gIFwid2FybmluZ1wiOiAgICR5ZWxsb3csXG4gIFwiZGFuZ2VyXCI6ICAgICRyZWQsXG4gIFwiZGFya1wiOiAgICAgICRncmF5LTkwMFxuKSAhZGVmYXVsdDtcblxuJGJvZHktY29sb3I6ICAgICAgICM0RTUxNTUgIWRlZmF1bHQ7IC8vIzRhNGE0YVxuXG4vLyAjMDZjXG4kbGluay1jb2xvcjogICAgICAgJGJsdWUgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1jb2xvcjogbGlnaHRlbigkbGluay1jb2xvciwgMTAlKSAhZGVmYXVsdDtcblxuJHNwYWNlcjogMXJlbSAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBGb250c1xuXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogXCJSb2JvdG9cIiwgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFwiT3h5Z2VuXCIsIFwiVWJ1bnR1XCIsIFwiQ2FudGFyZWxsXCIsIFwiRmlyYSBTYW5zXCIsIFwiRHJvaWQgU2Fuc1wiLCBcIkhlbHZldGljYSBOZXVlXCIsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktc2VyaWY6ICAgICAgR2VvcmdpYSwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgc2VyaWY7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgXCJTRk1vbm8tUmVndWxhclwiLCBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktYmFzZTogICAgICAgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbiRmb250LXNpemUtYmFzZTogICAgICAgICAuODk0cmVtICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS14bDogICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kZm9udC1zaXplLWxnOiAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRmb250LXNpemUtc206ICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kZm9udC1zaXplLXhzOiAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LXNlbWlib2xkOiAgIDUwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkZXI6ICAgICA5MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbGlnaHRlcjogICAgMTAwICFkZWZhdWx0O1xuXG4kbGluZS1oZWlnaHQtYmFzZTogICAgICAgMS40NyAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC14bDogICAgICAgICAxLjUgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtbGc6ICAgICAgICAgMS41ICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LXNtOiAgICAgICAgIDEuNSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC14czogICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRoMS1mb250LXNpemU6ICAgICAgICAgICAyLjI1cmVtICFkZWZhdWx0O1xuJGgyLWZvbnQtc2l6ZTogICAgICAgICAgIDEuODEzcmVtICFkZWZhdWx0O1xuJGgzLWZvbnQtc2l6ZTogICAgICAgICAgIDEuNTYzcmVtICFkZWZhdWx0O1xuJGg0LWZvbnQtc2l6ZTogICAgICAgICAgIDEuMzEzcmVtICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kaDYtZm9udC1zaXplOiAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuXG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICAgJGZvbnQtd2VpZ2h0LXNlbWlib2xkICFkZWZhdWx0O1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgIDEuMSAhZGVmYXVsdDtcbiRoZWFkaW5ncy1tYXJnaW4tYm90dG9tOiAkc3BhY2VyICFkZWZhdWx0O1xuXG4kZGlzcGxheTEtc2l6ZTogICAgICAgICAgNHJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5Mi1zaXplOiAgICAgICAgICAzLjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTMtc2l6ZTogICAgICAgICAgM3JlbSAhZGVmYXVsdDtcbiRkaXNwbGF5NC1zaXplOiAgICAgICAgICAycmVtICFkZWZhdWx0O1xuXG4kdGlueS1mb250LXNpemU6ICAgICAgICAgNzAlICFkZWZhdWx0O1xuJHNtYWxsLWZvbnQtc2l6ZTogICAgICAgIDg1JSAhZGVmYXVsdDtcbiRiaWctZm9udC1zaXplOiAgICAgICAgICAxMTIlICFkZWZhdWx0O1xuJGxhcmdlLWZvbnQtc2l6ZTogICAgICAgIDE1MCUgIWRlZmF1bHQ7XG4keGxhcmdlLWZvbnQtc2l6ZTogICAgICAgMTcwJSAhZGVmYXVsdDtcblxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgIHJnYmEtdG8taGV4KCRncmF5LTUwMCkgIWRlZmF1bHQ7XG4kdGV4dC1tdXRlZC1ob3ZlcjogICAgICAgcmdiYS10by1oZXgoJGdyYXktNjAwKSAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLXNtYWxsLWNvbG9yOiByZ2JhLXRvLWhleCgkZ3JheS01MDApICFkZWZhdWx0O1xuJHRleHQtbGlnaHQ6ICAgICAgICAgICAgIHJnYmEtdG8taGV4KCRncmF5LTQwMCkgIWRlZmF1bHQ7XG4kdGV4dC1saWdodGVyOiAgICAgICAgICAgcmdiYS10by1oZXgoJGdyYXktMzAwKSAhZGVmYXVsdDtcbiR0ZXh0LWxpZ2h0ZXN0OiAgICAgICAgICByZ2JhLXRvLWhleCgkZ3JheS0yMDApICFkZWZhdWx0O1xuXG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiAgbm9uZSAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBHcmlkXG5cbiRncmlkLWd1dHRlci13aWR0aDogMS41cmVtICFkZWZhdWx0O1xuXG4kY29udGFpbmVyLXBhZGRpbmcteDogMnJlbSAhZGVmYXVsdDtcbiRjb250YWluZXItcGFkZGluZy14LXNtOiAxcmVtICFkZWZhdWx0O1xuJGNvbnRhaW5lci1wYWRkaW5nLXk6IDEuNXJlbSAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBDb21wb25lbnRzXG5cbiRib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywuMDYpICFkZWZhdWx0O1xuJGJvcmRlci1pbm5lci1jb2xvcjogICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG5cbiRib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy14bDogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy14czogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRjb21wb25lbnQtbGluZS1oZWlnaHQ6ICAgICAgICAgICAxLjU0ICFkZWZhdWx0O1xuJGNvbXBvbmVudC1mb2N1cy1zaGFkb3ctd2lkdGg6ICAgIDJweCAhZGVmYXVsdDtcblxuJGZsb2F0aW5nLWNvbXBvbmVudC1ib3JkZXItY29sb3I6IHJnYmEoJGJsYWNrLCAuMDUpICFkZWZhdWx0O1xuJGZsb2F0aW5nLWNvbXBvbmVudC1zaGFkb3c6ICAgICAgIDAgMXB4IDZweCByZ2JhKDAsIDAsIDAsIC4wOSkgIWRlZmF1bHQ7XG5cbiRoci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kYm9yZGVyZWQtcm93LWJvcmRlci1jb2xvcjogICAgICAgJGhyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGNhcmV0LXdpZHRoOiAgICAgICAgICAgICAgICAgICAgIC40MmVtICFkZWZhdWx0O1xuJGNhcmV0LXZlcnRpY2FsLWFsaWduOiAgICAgICAgICAgIG1pZGRsZSAhZGVmYXVsdDtcbiRjYXJldC1zcGFjaW5nOiAgICAgICAgICAgICAgICAgICAuNWVtICFkZWZhdWx0O1xuXG4kb3ZlcmZsb3dzOiBhdXRvLCBoaWRkZW4sIHNjcm9sbCwgdmlzaWJsZSAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBaLWluZGV4IG1hc3RlciBsaXN0XG5cbiR6aW5kZXgtbGF5b3V0LWZpeGVkOiAgMTA4MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWwtdG9wOiAgICAgMTA5MCAhZGVmYXVsdDtcbiR6aW5kZXgtbGF5b3V0LW1vYmlsZTogMTEwMCAhZGVmYXVsdDtcbiR6aW5kZXgtbm90aWZpY2F0aW9uOiAgOTk5OTk5ICFkZWZhdWx0O1xuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFRhYmxlc1xuXG4kdGFibGUtY2VsbC1wYWRkaW5nOiAgICAgIC42MjVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXNtOiAgIC4zMTI1cmVtICFkZWZhdWx0O1xuXG4kdGFibGUtYWNjZW50LWJnOiAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDI1KSAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1iZzogICAgICAgICAgcmdiYSgkYmxhY2ssIC4wMzUpICFkZWZhdWx0O1xuJHRhYmxlLWFjdGl2ZS1iZzogICAgICAgICByZ2JhLXRvLWhleCgkdGFibGUtaG92ZXItYmcpICFkZWZhdWx0O1xuXG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgIHJnYmEtdG8taGV4KCRncmF5LTIwMCkgIWRlZmF1bHQ7XG5cbiR0YWJsZS1oZWFkLWJnOiAgICAgICAgICAgJGdyYXktNTAgIWRlZmF1bHQ7XG4kdGFibGUtaGVhZC1jb2xvcjogICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuXG4kdGFibGUtZGFyay1iZzogICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWFjY2VudC1iZzogICAgcmdiYSgkd2hpdGUsIC4wMykgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1ob3Zlci1iZzogICAgIHJnYmEoJHdoaXRlLCAuMDUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYm9yZGVyLWNvbG9yOiBsaWdodGVuKHJnYmEtdG8taGV4KCRncmF5LTkwMCksIDclKSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWNvbG9yOiAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEJ1dHRvbnMgKyBGb3Jtc1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteTogICAgICAuNDM4cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXg6ICAgICAgMS4xMjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZTogICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0OiAgICAxLjU0ICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS14czogICAwICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgteHM6ICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS14czogICAkZm9udC1zaXplLXhzICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC14czogJGxpbmUtaGVpZ2h0LXhzICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1zbTogICAuMTg4cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtc206ICAgLjY4NzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbTogICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbTogJGxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1sZzogICAuNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1sZzogICAxLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZzogICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZzogJGxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS14bDogICAuODc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgteGw6ICAgMi4xMjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS14bDogICAkZm9udC1zaXplLXhsICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC14bDogJGxpbmUtaGVpZ2h0LXhsICFkZWZhdWx0O1xuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEJ1dHRvbnNcblxuJGJ0bi1wYWRkaW5nLXkteHM6ICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkteHMgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC14czogICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC14cyAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplLXhzOiAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXhzICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodC14czogICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC14cyAhZGVmYXVsdDtcblxuJGJ0bi1wYWRkaW5nLXkteGw6ICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkteGwgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC14bDogICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC14bCAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplLXhsOiAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXhsICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodC14bDogICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC14bCAhZGVmYXVsdDtcblxuJGJ0bi1ib3JkZXItcmFkaXVzLXhzOiAgJGJvcmRlci1yYWRpdXMteHMgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMteGw6ICAkYm9yZGVyLXJhZGl1cy14bCAhZGVmYXVsdDtcblxuJGJ0bi1ib3gtc2hhZG93OiAgICAgICAgbm9uZSAhZGVmYXVsdDtcbiRidG4tZm9jdXMtYm94LXNoYWRvdzogIDAgMCAwICRjb21wb25lbnQtZm9jdXMtc2hhZG93LXdpZHRoIHJnYmEodGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpLCAuMjUpICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm94LXNoYWRvdzogbm9uZSAhZGVmYXVsdDtcblxuJGJ0bi1kZWZhdWx0LWJnOiAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kYnRuLWRlZmF1bHQtYm9yZGVyOiAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kYnRuLWRlZmF1bHQtY29sb3I6ICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcblxuJGJ0bi10cmFuc2l0aW9uOiAgICAgICAgYWxsIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBGb3Jtc1xuXG4kZW5hYmxlLXZhbGlkYXRpb24taWNvbnM6ICAgICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuXG4kbGFiZWwtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgIC44MzEyNXJlbSAhZGVmYXVsdDtcbiRsYWJlbC1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LXNlbWlib2xkICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgICAgICAgIC44NzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LWxnOiAgICAgICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LXNtOiAgICAgICAgICAgICAgICAgICAgICAgIC42MjVyZW0gIWRlZmF1bHQ7XG5cbiRpbnB1dC1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodC1sZzogICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgIHJnYmEtdG8taGV4KCRncmF5LTEwMCkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcblxuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkdGV4dC1saWdodCAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1pbm5lcjogICAgICAgICAgICAgICAgICAgICAgICBweC10by1yZW0oZmxvb3IocmVtLXRvLXB4KCgkaW5wdXQtYnRuLWZvbnQtc2l6ZSAqICRpbnB1dC1idG4tbGluZS1oZWlnaHQpICsgKCRpbnB1dC1idG4tcGFkZGluZy15ICogMikpKSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWlubmVyLXNtOiAgICAgICAgICAgICAgICAgICAgIHB4LXRvLXJlbShmbG9vcihyZW0tdG8tcHgoKCRpbnB1dC1idG4tZm9udC1zaXplLXNtICogJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbSkgKyAoJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gKiAyKSkpKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItbGc6ICAgICAgICAgICAgICAgICAgICAgcHgtdG8tcmVtKGZsb29yKHJlbS10by1weCgoJGZvbnQtc2l6ZS1sZyAqICRsaW5lLWhlaWdodC1sZykgKyAoJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgKiAyKSkpKSAhZGVmYXVsdDtcblxuJGlucHV0LWludmVydGVkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICByZ2JhKCNmZmYsIC4zKSAhZGVmYXVsdDtcbiRpbnB1dC1pbnZlcnRlZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRpbnB1dC1pbnZlcnRlZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgJGlucHV0LWludmVydGVkLWJnICFkZWZhdWx0O1xuJGlucHV0LWludmVydGVkLXBsYWNlaG9sZGVyLWNvbG9yOiAgICAgICAgICByZ2JhKCNmZmYsIC43KSAhZGVmYXVsdDtcbiRpbnB1dC1pbnZlcnRlZC1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAgcmdiYSgjZmZmLCAuMSkgIWRlZmF1bHQ7XG4kaW5wdXQtaW52ZXJ0ZWQtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgICRpbnB1dC1pbnZlcnRlZC1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplOiAgICAgICAgICAgICAxLjEyNXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc6ICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGg6ICAgICAxcHggIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjogICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1ndXR0ZXI6ICAgICAgICAgICAgICAgICAgICAgLjQzOHJlbSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYmc6ICAgICAgICAgICAgICBcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDkuNSA3LjUnJTNFJTNDcG9seWxpbmUgcG9pbnRzPScwLjc1IDQuMzUgNC4xOCA2Ljc1IDguNzUgMC43NScgc3R5bGU9J2ZpbGw6bm9uZTtzdHJva2U6X0NPTE9SXztzdHJva2UtbGluZWNhcDpyb3VuZDtzdHJva2UtbGluZWpvaW46cm91bmQ7c3Ryb2tlLXdpZHRoOjEuNXB4Jy8lM0UlM0Mvc3ZnJTNFXCIgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1iZy1zaXplOiAgICAgICAgIDY1JSAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1iZzogICAgICAgICAgXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA0IDQnJTNFJTNDcGF0aCBzdHJva2U9J19DT0xPUl8nIGQ9J00wIDJoNCcvJTNFJTNDL3N2ZyUzRVwiICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRldGVybWluYXRlLWJnLXNpemU6ICAgICAuNXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFkaW8taW5kaWNhdG9yLWJnOiAgICAgICAgICAgICAgICAgXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCclM0UlM0NjaXJjbGUgcj0nMycgZmlsbD0nX0NPTE9SXycvJTNFJTNDL3N2ZyUzRVwiICFkZWZhdWx0O1xuJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYmctc2l6ZTogICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1kaXNhYmxlZC1iZzogICAgICAkaW5wdXQtZGlzYWJsZWQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtbGFiZWwtZGlzYWJsZWQtY29sb3I6ICAgICAgICR0ZXh0LW11dGVkICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWQ6ICAgIG5vbmUgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhZGlvLWluZGljYXRvci1pY29uLWNoZWNrZWQ6ICAgICAgIG5vbmUgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktc206ICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LXNtOiAgICAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LWxnOiAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1sZzogICAgICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteC1sZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc6ICAgICAgICAgICAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdzogICAgICAgICAgICBub25lICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWludmVydGVkLWRpc2FibGVkLWNvbG9yOiAgICAgJGlucHV0LWludmVydGVkLWRpc2FibGVkLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW52ZXJ0ZWQtZGlzYWJsZWQtYmc6ICAgICAgICAkaW5wdXQtaW52ZXJ0ZWQtZGlzYWJsZWQtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWJnLXNpemU6ICAgICAgICAgICAgICAgICAgICAgMTdweCAxMnB4ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yOiAgICAgICAgICAgICAgICAgICB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0lBQUFBWUNBWUFBQUNmcGk4SkFBQUFCR2RCVFVFQUFMR1BDL3hoQlFBQUFLQkpSRUZVU0EzdDFrRUtnQ0FRQlZDVER0Y2l1bEoycFdqUmlhcFRhUHdva1VFalJXMHpnYUhTT0k5UFFXTGJENE1oZnI3a3ovMXRlNGJZS080Sko4S0owQVRvdXFVYnFldXVINVRSZWt5cGI2U2NzcjJzNnpJckhCZ0xRUTFxczBFQWlNVThDTlJtaGNSZ1hFUVJ5QmNNUlJTRHZHRjhpS0lRSHlhRXdMT2l4bThBUG0yTXEySG9WZ01TNnUzdVovOXEzTU5qNWd5aGFYRWluQWhOZ0s1UHB6aEVPL2hTTUs0QUFBQUFTVVZPUks1Q1lJST0nKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvci1pbnZlcnRlZDogICAgICAgICAgdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNJQUFBQVlDQVlBQUFDZnBpOEpBQUFBQkdkQlRVRUFBTEdQQy94aEJRQUFBSjVKUkVGVVNBM3QxRzBLZ0NBTUJ1Q01EdFpsb2pPRmh6VmZVYUZsSDQ0Ti8weUlzcHcrdkdoVENHSEZOUTF1OCtEMTYvSUdxVkhrQjB2RUVxRUowUDVDWDNENzhWKzB4OXFOV2UvRk5xdHo3b2dJejRCNDFJcEJBR0JnRWdLMW9wQk9URVdvUUg1aUxnZzF5QWZtaGxDRlBHQ2FDSXdWTzc2WXJOV3dnZVBSVHAveVptNE4wNGRnMVRkQVVZbWZtakp4NzkwZ05ERkx4QktoQ2REK0NRM0dIbmd2SlRHS0FBQUFBRWxGVGtTdVFtQ0MnKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvci1ydGw6ICAgICAgICAgICAgICAgdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNJQUFBQVlDQVlBQUFDZnBpOEpBQUFBQkdkQlRVRUFBTEdQQy94aEJRQUFBS2RKUkVGVVNBM3RsbEVLZ0NBTWhsTTZYQS9SbGJJclJRK2RxRHFGeFI4cHRFd05GSHVZRCtMYzNENStIQ3Fxd21OWnR4MElzakNITGM4Z1ZvcHJ3WXF3SWxRQmF0ZE4yNmxkNjU0Nlltd2g1VEJQbzRxSkRjVklKRUxDVUNEMXA0UkE3ck5ydnNLa2hyQWdXTVRDNUlDNGdjVEE1SUo0Z1BoZ2NrSTRRVnd3dVNGUVUyQjZHMmh0K0ZLMXFLdU8rUVo0UVZ3SFUrOFpFSDcwcUxLc0NDdENGYUQyYis3SUFaR2RQUHh1V1lHTUFBQUFBRWxGVGtTdVFtQ0MnKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvci1pbnZlcnRlZC1ydGw6ICAgICAgdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNJQUFBQVlDQVlBQUFDZnBpOEpBQUFBQkdkQlRVRUFBTEdQQy94aEJRQUFBSnRKUkVGVVNBM3RsbEVLd0NBSWhtZDBzRjFtN0V5anc3YU1DSExXV2hqdHdSNGlVMzQvZmhLQ2JmSHkzdStJWUJaejVQWUtrcTFJQjNWRUhhRU8wTmlHT1Q3RDVVRVRuYkVEZ0t1enRsbG1rcEJyVnZGSk1RaVVqMU16QUNNS2tVSHc4QUZHSEtJQTZZU1pBdkVBZVlHWkJzR0NWR0NtUW1CUGl4dTM4TTJFMFk2cDlINjRNckU3RUZNYUZOTC9TTTA0L1FaUVo5U1IzenB5QTFpWUhuYlNMUElRQUFBQUFFbEZUa1N1UW1DQycpICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZpbGUtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0OiAgICAgICAgICAgICAgICAgLjEyNXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg6ICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1iZzogICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLWRpc2FibGVkLXRyYWNrLWJnOiAgICAgICAgICAgICRncmF5LTUwICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93OiAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1iZzogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjdXN0b20tcmFuZ2UtdGh1bWItYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3c6ICAgICAgICAgICAgIDAgMCAwIDFweCByZ2JhKDAsMCwwLC4xKSwgJGZsb2F0aW5nLWNvbXBvbmVudC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJGN1c3RvbS1yYW5nZS10aHVtYi1iZyAhZGVmYXVsdDtcblxuJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3I6ICAgICAgICAgICAgICAgICB0aGVtZS1jb2xvcihcInN1Y2Nlc3NcIikgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yOiAgICAgICAgICAgICAgIHRoZW1lLWNvbG9yKFwiZGFuZ2VyXCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcjogICAgICAgICAgICAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcjogICAgICAgICAgJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQ6ICAgICAgICAgICAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3J9JyBkPSdNMi4zIDYuNzNMLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6Jy8lM2UlM2Mvc3ZnJTNlXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLXJ0bDogICAgICAgICAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgOCA4JyUzZSUzY3BhdGggZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLWNvbG9yfScgZD0nTTIuMyA2LjczTC42IDQuNTNjLS40LTEuMDQuNDYtMS40IDEuMS0uOGwxLjEgMS40IDMuNC0zLjhjLjYtLjYzIDEuNi0uMjcgMS4yLjdsLTQgNC42Yy0uNDMuNS0uOC40LTEuMS4xeicgdHJhbnNmb3JtPSdzY2FsZSgtMSwgMSkgdHJhbnNsYXRlKC04LCAwKScvJTNlJTNjL3N2ZyUzZVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkOiAgICAgICAgICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9JyB2aWV3Qm94PSctMiAtMiA3IDcnJTNlJTNjcGF0aCBzdHJva2U9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgZD0nTTAgMGwzIDNtMC0zTDAgMycvJTNlJTNjY2lyY2xlIHI9Jy41Jy8lM2UlM2NjaXJjbGUgY3g9JzMnIHI9Jy41Jy8lM2UlM2NjaXJjbGUgY3k9JzMnIHI9Jy41Jy8lM2UlM2NjaXJjbGUgY3g9JzMnIGN5PSczJyByPScuNScvJTNlJTNjL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLXJ0bDogICAgICAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9JyB2aWV3Qm94PSctMiAtMiA3IDcnJTNlJTNjcGF0aCBzdHJva2U9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgZD0nTTAgMGwzIDNtMC0zTDAgMycvJTNlJTNjY2lyY2xlIHI9Jy41Jy8lM2UlM2NjaXJjbGUgY3g9JzMnIHI9Jy41Jy8lM2UlM2NjaXJjbGUgY3k9JzMnIHI9Jy41Jy8lM2UlM2NjaXJjbGUgY3g9JzMnIGN5PSczJyByPScuNScvJTNlJTNjL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nOiAgICAgICAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZyArICRpbnB1dC1oZWlnaHQtaW5uZXIgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctc206ICAgICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nICsgJGlucHV0LWhlaWdodC1pbm5lci1zbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1sZzogICAgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcgKyAkaW5wdXQtaGVpZ2h0LWlubmVyLWxnICFkZWZhdWx0O1xuXG4kZm9ybS12YWxpZGF0aW9uLXN0YXRlczogKFxuICBcInZhbGlkXCI6IChcbiAgICBcImNvbG9yXCI6ICAgICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yLFxuICAgIFwiaWNvblwiOiAgICAgJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZCxcbiAgICBcImljb24tcnRsXCI6ICRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtcnRsXG4gICksXG4gIFwiaW52YWxpZFwiOiAoXG4gICAgXCJjb2xvclwiOiAgICAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yLFxuICAgIFwiaWNvblwiOiAgICAgJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLFxuICAgIFwiaWNvbi1ydGxcIjogJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLXJ0bFxuICApLFxuKSAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBEcm9wZG93bnNcblxuJGRyb3Bkb3duLXBhZGRpbmcteTogICAgICAgICAgIC4zMTI1cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1jb2xvcjogICAgICAgICRmbG9hdGluZy1jb21wb25lbnQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICRkcm9wZG93bi1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm94LXNoYWRvdzogICAgICAgICAgJGZsb2F0aW5nLWNvbXBvbmVudC1zaGFkb3cgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZm9udC1zaXplOiAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1czogMCAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15OiAgICAgIC40MzhyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXg6ICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICRkcm9wZG93bi1saW5rLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICRncmF5LTUwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstbGluZS1oZWlnaHQ6ICAgICRjb21wb25lbnQtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAkdGV4dC1saWdodGVyICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgJHRleHQtbXV0ZWQgIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogTmF2c1xuXG4kbmF2LXNwYWNlcjogICAgICAgICAgICAgICAgICAgICAgICAuMTI1cmVtICFkZWZhdWx0O1xuXG4kbmF2LWxpbmstcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNjI1cmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLXBhZGRpbmcteDogICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1saW5lLWhlaWdodDogICAgICAgICAgICAgICRjb21wb25lbnQtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRuYXYtbGluay1wYWRkaW5nLXktbGc6ICAgICAgICAgICAgIC44NzVyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstcGFkZGluZy14LWxnOiAgICAgICAgICAgICAxLjMxMjVyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICAkbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRuYXYtbGluay1wYWRkaW5nLXktc206ICAgICAgICAgICAgIC4zMTI1cmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLXBhZGRpbmcteC1zbTogICAgICAgICAgICAgLjg3NXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1saW5lLWhlaWdodC1zbTogICAgICAgICAgICRsaW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJG5hdi1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJHRleHQtbXV0ZWQtaG92ZXIgIWRlZmF1bHQ7XG4kbmF2LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAkdGV4dC1saWdodGVyICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgJGdyYXktMTAwICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAjZmZmICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogTmF2YmFyXG5cbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXk6ICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDogICAgICAgICAgLjdyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplOiAgICAgICAgICAuNjI1cmVtICFkZWZhdWx0O1xuXG4kbmF2YmFyLWRhcmstY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjgpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yOiAgICAgICAgcmdiYSgkd2hpdGUsIC40KSAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktNTAwICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjogICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjogICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I6ICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I6IHJnYmEoJGJsYWNrLCAuMDYpICFkZWZhdWx0O1xuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFBhZ2luYXRpb25cblxuJHBhZ2luYXRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAuNjI1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14OiAgICAgICAgICAgICAuMzEyNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbTogICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbTogICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LWxnOiAgICAgICAgICAuOTM3NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1sZzogICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1saW5lLWhlaWdodDogICAgICAgICAgIDEgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWJnOiAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICRib3JkZXItaW5uZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgJHRleHQtbXV0ZWQgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1iZyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcjogICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICR0ZXh0LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogICAgICAgICAgICRwYWdpbmF0aW9uLWJnICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAkZ3JheS0xMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgbm9uZSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tc3BhY2VyOiAgICAgICAgICAgICAgICAuMTg3NXJlbSAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBDYXJkc1xuXG4kY2FyZC1zcGFjZXIteTogICAgICAgICAgICAuODc1cmVtICFkZWZhdWx0O1xuJGNhcmQtc3BhY2VyLXg6ICAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuJGNhcmQtc3BhY2VyLXgtc206ICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1jb2xvcjogICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY2FyZC1pbm5lci1ib3JkZXItY29sb3I6ICAkYm9yZGVyLWlubmVyLWNvbG9yICFkZWZhdWx0O1xuJGNhcmQtY2FwLWJnOiAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbiRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6IDEuNXJlbSAhZGVmYXVsdDtcblxuJGNhcmQtY29sdW1ucy1nYXA6ICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuJGNhcmQtc2hhZG93OiAgICAgICAgICAgICAgMCAxcHggNHB4IHJnYmEoJGJsYWNrLCAuMDEyKSAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBUb29sdGlwc1xuXG4kdG9vbHRpcC1jb2xvcjogICAgICAjZmZmICFkZWZhdWx0O1xuJHRvb2x0aXAtYmc6ICAgICAgICAgcmdiYS10by1oZXgoJGdyYXktODAwKSAhZGVmYXVsdDtcbiR0b29sdGlwLW9wYWNpdHk6ICAgIDEgIWRlZmF1bHQ7XG4kdG9vbHRpcC1ib3gtc2hhZG93OiBub25lICFkZWZhdWx0O1xuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFBvcG92ZXJzXG5cbiRwb3BvdmVyLWJvcmRlci1jb2xvcjogICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJveC1zaGFkb3c6ICAgICAgICRmbG9hdGluZy1jb21wb25lbnQtc2hhZG93ICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1oZWFkZXItYmc6ICAgICAgICAkZ3JheS01MCAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1jb2xvcjogICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy15OiAuNjI1cmVtICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1ib2R5LWNvbG9yOiAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBCYWRnZXNcblxuJGJhZGdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgLjg1OGVtICFkZWZhdWx0O1xuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgJGZvbnQtd2VpZ2h0LXNlbWlib2xkICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmcteTogICAgICAgICAgICAgLjI1ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy14OiAgICAgICAgICAgICAuNDE3ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtYm9yZGVyLXJhZGl1czogICAgICAgICAuMTI1cmVtICFkZWZhdWx0O1xuXG4kYmFkZ2UtcGlsbC1wYWRkaW5nLXg6ICAgICAgICAuNTgzZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtcGlsbC1ib3JkZXItcmFkaXVzOiAgICAxMHJlbSAhZGVmYXVsdDtcblxuJGJhZGdlLWRlZmF1bHQtYmc6ICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGJhZGdlLW91dGxpbmUtZGVmYXVsdC1jb2xvcjogJGJvZHktY29sb3IgIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogTW9kYWxzXG5cbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgICAgIDEuNTYyNXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy15OiAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmcteDogICAgICAgICAkbW9kYWwtaW5uZXItcGFkZGluZyAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItcGFkZGluZzogICAgICAgICAgIDEuMjVyZW0gJG1vZGFsLWlubmVyLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbiRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aDogICAgIDBweCAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoOiAgICAgIDFweCAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICRib3JkZXItaW5uZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHM6ICAgICRmbG9hdGluZy1jb21wb25lbnQtc2hhZG93ICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cDogJGZsb2F0aW5nLWNvbXBvbmVudC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRtb2RhbC1tZDogICAgICAgICAgICAgICAgICAgICAgIDM1cmVtICFkZWZhdWx0O1xuJG1vZGFsLWxnOiAgICAgICAgICAgICAgICAgICAgICAgNTByZW0gIWRlZmF1bHQ7XG4kbW9kYWwtc206ICAgICAgICAgICAgICAgICAgICAgICAyMi41cmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogICAgICAgICAuNSAhZGVmYXVsdDtcblxuJG1vZGFsLXNsaWRlLXdpZHRoOiAgICAgICAgICAgICAgMjByZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC10cmFuc2l0aW9uLWR1cmF0aW9uOiAgICAgIC4xNXMgIWRlZmF1bHQ7XG4kbW9kYWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICB0cmFuc2Zvcm0gJG1vZGFsLXRyYW5zaXRpb24tZHVyYXRpb24gZWFzZS1vdXQgIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogQWxlcnRzXG5cbiRhbGVydC1wYWRkaW5nLXk6IDFyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtcGFkZGluZy14OiAxcmVtICFkZWZhdWx0O1xuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFByb2dyZXNzIGJhcnNcblxuJHByb2dyZXNzLWhlaWdodDogICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1mb250LXNpemU6ICAgICAuNjI1cmVtICFkZWZhdWx0O1xuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICRncmF5LTUwICFkZWZhdWx0O1xuJHByb2dyZXNzLWJvcmRlci1yYWRpdXM6IDEwcmVtICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICNmZmYgIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogTGlzdCBncm91cFxuXG4kbGlzdC1ncm91cC1iZzogICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1jb2xvcjogICAgICAgIHJnYmEtdG8taGV4KCRncmF5LTIwMCkgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15OiAgICAgIC42MjVyZW0gIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDogICAgICAuOTM3NXJlbSAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaG92ZXItYmc6ICAgICAgICAgICAgJGdyYXktMjUgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICR0ZXh0LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAkbGlzdC1ncm91cC1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yOiAgICAgICAgJHRleHQtbXV0ZWQtaG92ZXIgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6ICAkYm9keS1jb2xvciAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogICAgJGdyYXktNTAgIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogSW1hZ2UgdGh1bWJuYWlsc1xuXG4kdGh1bWJuYWlsLXBhZGRpbmc6ICAgICAgIDAgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJnOiAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItd2lkdGg6ICAwcHggIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM6IDBweCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm94LXNoYWRvdzogICAgbm9uZSAhZGVmYXVsdDtcblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBGaWd1cmVzXG5cbiRmaWd1cmUtY2FwdGlvbi1jb2xvcjogJHRleHQtbXV0ZWQgIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogQnJlYWRjcnVtYnNcblxuJGJyZWFkY3J1bWItcGFkZGluZy15OiAgICAgMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmcteDogICAgIDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1pdGVtLXBhZGRpbmc6ICAuNXJlbSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTogMXJlbSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItY29sb3I6ICAgICAgICAgJHRleHQtbXV0ZWQgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICR0ZXh0LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I6ICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXI6ICAgICAgIFwiL1wiICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1ydGw6ICAgXCIvXCIgIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogU3dpdGNoZXJzXG5cbiRzd2l0Y2hlci1zcGFjZXIteDogICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHN3aXRjaGVyLXNwYWNlci15OiAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRzd2l0Y2hlci1ndXR0ZXI6ICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kc3dpdGNoZXItaW5uZXItc3BhY2VyOiAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJHN3aXRjaGVyLXNxdWFyZS1ib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJHN3aXRjaGVyLWxhYmVsLWNvbG9yOiAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRzd2l0Y2hlci1sYWJlbC1kaXNhYmxlZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWxhYmVsLWRpc2FibGVkLWNvbG9yICFkZWZhdWx0O1xuXG4kc3dpdGNoZXItd2lkdGg6ICAgICAgICAgICAgICAgIDIuMzc1cmVtICFkZWZhdWx0O1xuJHN3aXRjaGVyLWhlaWdodDogICAgICAgICAgICAgICAxLjM3NXJlbSAhZGVmYXVsdDtcbiRzd2l0Y2hlci1mb250LXNpemU6ICAgICAgICAgICAgLjYyNXJlbSAhZGVmYXVsdDtcbiRzd2l0Y2hlci1sYWJlbC1mb250LXNpemU6ICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJHN3aXRjaGVyLWxhYmVsLWxpbmUtaGVpZ2h0OiAgICAxLjQgIWRlZmF1bHQ7XG5cbiRzd2l0Y2hlci13aWR0aC1zbTogICAgICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRzd2l0Y2hlci1oZWlnaHQtc206ICAgICAgICAgICAgMS4xMjVyZW0gIWRlZmF1bHQ7XG4kc3dpdGNoZXItbGFiZWwtZm9udC1zaXplLXNtOiAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kc3dpdGNoZXItbGFiZWwtbGluZS1oZWlnaHQtc206IDEuNDg2ICFkZWZhdWx0O1xuXG4kc3dpdGNoZXItd2lkdGgtbGc6ICAgICAgICAgICAgIDMuMjVyZW0gIWRlZmF1bHQ7XG4kc3dpdGNoZXItaGVpZ2h0LWxnOiAgICAgICAgICAgIDEuNzVyZW0gIWRlZmF1bHQ7XG4kc3dpdGNoZXItbGFiZWwtZm9udC1zaXplLWxnOiAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kc3dpdGNoZXItbGFiZWwtbGluZS1oZWlnaHQtbGc6IDEuNDcgIWRlZmF1bHQ7XG5cbiRzd2l0Y2hlci1vZmYtY29sb3I6ICAgICAgICAgICAgJGdyYXktNDAwICFkZWZhdWx0O1xuJHN3aXRjaGVyLW9mZi1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kc3dpdGNoZXItaG9sZGVyLWJnOiAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kc3dpdGNoZXItaG9sZGVyLXNoYWRvdzogICAgICAgIDAgMCAwIDFweCByZ2JhKCRibGFjaywgLjA0KSwgMCAxcHggNnB4IHJnYmEoJGJsYWNrLCAuMDkpICFkZWZhdWx0O1xuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIENsb3NlXG5cbiRjbG9zZS1mb250LXdlaWdodDogMzAwICFkZWZhdWx0O1xuJGNsb3NlLXRleHQtc2hhZG93OiBub25lICFkZWZhdWx0O1xuJGNsb3NlLWNvbG9yOiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEp1bWJvdHJvblxuXG4kanVtYm90cm9uLXBhZGRpbmc6IDNyZW0gIWRlZmF1bHQ7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogU2lkZW5hdlxuXG4kc2lkZW5hdi13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgIDE1LjYyNXJlbSAhZGVmYXVsdDsgLy8yNTBweFxuJHNpZGVuYXYtY29sbGFwc2VkLXdpZHRoOiAgICAgICAgICAgICAgICA0LjM3NXJlbSAhZGVmYXVsdDsgLy83MHB4XG5cbiRzaWRlbmF2LWl0ZW0tc3BhY2VyOiAgICAgICAgICAgICAgICAgICAgLjA2MjVyZW0gIWRlZmF1bHQ7XG5cbiRzaWRlbmF2LXZlcnRpY2FsLWxpbmstcGFkZGluZy15OiAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHNpZGVuYXYtdmVydGljYWwtbGluay1wYWRkaW5nLXg6ICAgICAgICAycmVtICFkZWZhdWx0O1xuJHNpZGVuYXYtdmVydGljYWwtbWVudS1saW5rLXBhZGRpbmcteTogICAuNjI1cmVtICFkZWZhdWx0O1xuJHNpZGVuYXYtdmVydGljYWwtbWVudS1sZXZlbC1zcGFjZXI6ICAgICAxcmVtICFkZWZhdWx0O1xuXG4kc2lkZW5hdi1ob3Jpem9udGFsLWxpbmstcGFkZGluZy15OiAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kc2lkZW5hdi1ob3Jpem9udGFsLWxpbmstcGFkZGluZy14OiAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kc2lkZW5hdi1ob3Jpem9udGFsLW1lbnUtbGluay1wYWRkaW5nLXk6IC42MjVyZW0gIWRlZmF1bHQ7XG4kc2lkZW5hdi1ob3Jpem9udGFsLW1lbnUtbGV2ZWwtc3BhY2VyOiAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRzaWRlbmF2LW1lbnUtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgMTIuNXJlbSAhZGVmYXVsdDs7IC8vMjAwcHhcbiRzaWRlbmF2LWNvbnRyb2wtd2lkdGg6ICAgICAgICAgICAgICAgICAgMi4yNXJlbSAhZGVmYXVsdDtcbiRzaWRlbmF2LWNvbnRyb2wtYXJyb3ctc2l6ZTogICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRzaWRlbmF2LWljb24tZXhwYW5kZWQtd2lkdGg6ICAgICAgICAgICAgMS43NXJlbSAhZGVmYXVsdDtcbiRzaWRlbmF2LWljb24tZXhwYW5kZWQtZm9udC1zaXplOiAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRzaWRlbmF2LWljb24tZXhwYW5kZWQtc3BhY2VyOiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4kc2lkZW5hdi1hbmltYXRpb24tZHVyYXRpb246ICAgICAgICAgICAgIC4ycyAhZGVmYXVsdDtcblxuJHNpZGVuYXYtbWF4LWxldmVsczogICAgICAgICAgICAgICAgICAgICA1ICFkZWZhdWx0O1xuXG4kc2lkZW5hdi1kYXJrLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjIpICFkZWZhdWx0O1xuJHNpZGVuYXYtZGFyay1tZW51LWJnOiAgICAgICAgICAgICAgICAgICByZ2JhKDAsIDAsIDAsIC4wNikgIWRlZmF1bHQ7XG4kc2lkZW5hdi1saWdodC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjA2KSAhZGVmYXVsdDtcbiRzaWRlbmF2LWxpZ2h0LW1lbnUtYmc6ICAgICAgICAgICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMDUpICFkZWZhdWx0O1xuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFRvYXN0c1xuXG4kdG9hc3QtYm9yZGVyLWNvbG9yOiAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRvYXN0LWJveC1zaGFkb3c6ICAgICAgICAgICRmbG9hdGluZy1jb21wb25lbnQtc2hhZG93ICFkZWZhdWx0O1xuJHRvYXN0LWhlYWRlci1ib3JkZXItY29sb3I6ICRjYXJkLWlubmVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuLy8gQ29uZmlnXG4kcnRsLXN1cHBvcnQ6IGZhbHNlICFkZWZhdWx0O1xuJG1hdGVyaWFsLXN0eWxlOiBmYWxzZTtcbiIsIi8vIEhvdmVyIG1peGluIGFuZCBgJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeWAgYXJlIGRlcHJlY2F0ZWQuXG4vL1xuLy8gT3JpZ2luYWxseSBhZGRlZCBkdXJpbmcgb3VyIGFscGhhcyBhbmQgbWFpbnRhaW5lZCBkdXJpbmcgYmV0YXMsIHRoaXMgbWl4aW4gd2FzXG4vLyBkZXNpZ25lZCB0byBwcmV2ZW50IGA6aG92ZXJgIHN0aWNraW5lc3Mgb24gaU9TLWFuIGlzc3VlIHdoZXJlIGhvdmVyIHN0eWxlc1xuLy8gd291bGQgcGVyc2lzdCBhZnRlciBpbml0aWFsIHRvdWNoLlxuLy9cbi8vIEZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LCB3ZSd2ZSBrZXB0IHRoZXNlIG1peGlucyBhbmQgdXBkYXRlZCB0aGVtIHRvXG4vLyBhbHdheXMgcmV0dXJuIHRoZWlyIHJlZ3VsYXIgcHNldWRvLWNsYXNzZXMgaW5zdGVhZCBvZiBhIHNoaW1tZWQgbWVkaWEgcXVlcnkuXG4vL1xuLy8gSXNzdWU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjUxOTVcblxuQG1peGluIGhvdmVyIHtcbiAgJjpob3ZlciB7IEBjb250ZW50OyB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cyB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBwbGFpbi1ob3Zlci1mb2N1cyB7XG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBob3Zlci1mb2N1cy1hY3RpdmUge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIEJhZGdlc1xuLy9cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIEBpZiAkY29sb3IgIT0gcHJpbWFyeSBhbmQgJGNvbG9yICE9IGxpZ2h0IHtcbiAgICBAaW5jbHVkZSBhcHB3b3JrLWJhZGdlLXZhcmlhbnQoJy5iYWRnZS0jeyRjb2xvcn0nLCAkdmFsdWUpO1xuICAgIEBpbmNsdWRlIGFwcHdvcmstYmFkZ2Utb3V0bGluZS12YXJpYW50KCcuYmFkZ2Utb3V0bGluZS0jeyRjb2xvcn0nLCAkdmFsdWUpO1xuICB9XG59XG5cbkBpbmNsdWRlIGFwcHdvcmstYmFkZ2UtdmFyaWFudCgnLmJhZGdlLWRlZmF1bHQnLCAkYmFkZ2UtZGVmYXVsdC1iZywgJGJvZHktY29sb3IpO1xuQGluY2x1ZGUgYXBwd29yay1iYWRnZS1vdXRsaW5lLXZhcmlhbnQoJy5iYWRnZS1vdXRsaW5lLWRlZmF1bHQnLCAkYmFkZ2UtZGVmYXVsdC1iZywgJGJhZGdlLW91dGxpbmUtZGVmYXVsdC1jb2xvcik7XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogRG90c1xuXG4uYmFkZ2UuYmFkZ2UtZG90IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiAuNWVtO1xuICBoZWlnaHQ6IC41ZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBJbmRpY2F0b3JzXG5cbi5iYWRnZS5pbmRpY2F0b3Ige1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogYXV0bztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDI1JSk7XG5cbiAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MCUsIDI1JSk7XG4gIH1cblxuICAmOm5vdCguYmFkZ2UtZG90KSB7XG4gICAgcGFkZGluZzogMCAuMmVtO1xuICAgIGZvbnQtc2l6ZTogLjZlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yZW07XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTEwJSk7XG5cbiAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCAtMTAlKTtcbiAgICB9XG4gIH1cbn1cblxuQGlmICRtYXRlcmlhbC1zdHlsZSB7XG4gIC5idG4gLmJhZGdlLmluZGljYXRvcjpub3QoLmJhZGdlLWRvdCkge1xuICAgIGZvbnQtc2l6ZTogLjc1ZW07XG4gIH1cbn1cbiIsIi8vIERyb3Bkb3duc1xuLy9cblxuW2RhdGEtdHJpZ2dlcj1ob3Zlcl0ge1xuICBvdXRsaW5lOiAwO1xufVxuXG4uZHJvcGRvd24tbWVudSB7XG4gIG1hcmdpbjogJGRyb3Bkb3duLXNwYWNlciAwO1xuICBib3gtc2hhZG93OiAkZHJvcGRvd24tYm94LXNoYWRvdztcblxuICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG5cbiAgLy8gQW5pbWF0aW9uc1xuICBAaWYgbm90ICRtYXRlcmlhbC1zdHlsZSB7XG4gICAgYW5pbWF0aW9uOiBkcm9wZG93bkFuaW1hdGlvbiAuMXM7XG4gIH0gQGVsc2Uge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIGFuaW1hdGlvbjogZHJvcGRvd25BbmltYXRpb24gLjI1cztcblxuICAgICYuZHJvcGRvd24tbWVudS1yaWdodCxcbiAgICAmLmRyb3Bkb3duLW1lbnUtcmlnaHQgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIHJpZ2h0O1xuICAgIH1cblxuICAgIC5kcm9wdXAgJiB7XG4gICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gbGVmdDtcbiAgICB9XG5cbiAgICAuZHJvcHVwICYuZHJvcGRvd24tbWVudS1yaWdodCxcbiAgICAuZHJvcHVwICYuZHJvcGRvd24tbWVudS1yaWdodCAuZHJvcGRvd24tbWVudSB7XG4gICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gcmlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLm1lZ2EtZHJvcGRvd24gPiAmIHtcbiAgICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZHJvcGRvd24taXRlbSB7XG4gIGxpbmUtaGVpZ2h0OiAkZHJvcGRvd24tbGluay1saW5lLWhlaWdodDtcbn1cblxuLy8gQmFkZ2Ugd2l0aGluIGRyb3Bkb3duIG1lbnVcbi5kcm9wZG93bi1tZW51IC5iYWRnZVtjbGFzc149XCJmbG9hdC1cIl0sXG4uZHJvcGRvd24tbWVudSAuYmFkZ2VbY2xhc3MqPVwiIGZsb2F0LVwiXSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAuMDcxZW07XG59XG5cbkBpZiAkbWF0ZXJpYWwtc3R5bGUge1xuICAuZHJvcGRvd24taXRlbSxcbiAgLmRyb3Bkb3duLW1lbnUgPiBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAvLyBSaXBwbGVcbiAgICAud2F2ZXMtcmlwcGxlIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjEpO1xuICAgIH1cbiAgICAmLmFjdGl2ZSAud2F2ZXMtcmlwcGxlLFxuICAgICYuZGlzYWJsZWQgLndhdmVzLXJpcHBsZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4vLyBIaWRkZW4gZHJvcGRvd24gdG9nZ2xlIGFycm93XG4uZHJvcGRvd24tdG9nZ2xlLmhpZGUtYXJyb3csXG4uZHJvcGRvd24tdG9nZ2xlLWhpZGUtYXJyb3cgPiAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIE1ha2UgQm9vdHN0cmFwIDMgcGFnaW5hdGlvbiBjb21wYXRpYmxlIHdpdGggQm9vdHN0cmFwIDRcblxuLmRyb3Bkb3duLW1lbnUgPiBsaTpub3QoLmRyb3Bkb3duLWl0ZW0pIHtcbiAgID4gYTpub3QoLmRyb3Bkb3duLWl0ZW0pIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjogMDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbiAgICB0ZXh0LWFsaWduOiBpbmhlcml0O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6ICRkcm9wZG93bi1saW5rLWxpbmUtaGVpZ2h0O1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItYmc7XG4gICAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJi5hY3RpdmUgPiBhOm5vdCguZHJvcGRvd24taXRlbSksXG4gID4gYTpub3QoLmRyb3Bkb3duLWl0ZW0pOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnO1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJi5kaXNhYmxlZCA+IGE6bm90KC5kcm9wZG93bi1pdGVtKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuXG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogRHJvcGRvd24gdG9nZ2xlXG5cbkBpZiAkZW5hYmxlLWNhcmV0IHtcbiAgLmRyb3BsZWZ0IC5kcm9wZG93bi10b2dnbGU6OmJlZm9yZSxcbiAgLmRyb3ByaWdodCAuZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XG4gICAgdmVydGljYWwtYWxpZ246ICRjYXJldC12ZXJ0aWNhbC1hbGlnbjtcbiAgfVxuXG4gIEBpbmNsdWRlIHJ0bC1vbmx5IHtcbiAgICAuZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRjYXJldC1zcGFjaW5nO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLmRyb3BsZWZ0IC5kcm9wZG93bi10b2dnbGU6OmJlZm9yZSxcbiAgICAuZHJvcHJpZ2h0IC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLmRyb3BsZWZ0IC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRjYXJldC1zcGFjaW5nO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgICAgIEBpbmNsdWRlIGNhcmV0LWxlZnQ7XG4gICAgfVxuXG4gICAgLmRyb3ByaWdodCAuZHJvcGRvd24tdG9nZ2xlOjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkY2FyZXQtc3BhY2luZztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAkY2FyZXQtdmVydGljYWwtYWxpZ247XG5cbiAgICAgIEBpbmNsdWRlIGNhcmV0LXJpZ2h0O1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0OjphZnRlcixcbi5kcm9wZG93bi10b2dnbGUtc3BsaXQ6OmJlZm9yZSB7XG4gIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIE5lc3RlZCBkcm9wZG93bnNcblxuLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uZHJvcGRvd24tbWVudSAuZHJvcGRvd24tdG9nZ2xlID4gLmRyb3Bkb3duLWl0ZW0ge1xuIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAobWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgbWQpIC0gMSkpIHtcbiAgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmctbGVmdDogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci13aWR0aDogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG5cbiAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgcGFkZGluZy1yaWdodDogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogbWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgbWQpKSB7XG4gIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi10b2dnbGUgPiAuZHJvcGRvd24taXRlbTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHJpZ2h0OiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXggLyAyO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAuMzc1cmVtO1xuICAgIGhlaWdodDogLjM3NXJlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkdGV4dC1tdXRlZDtcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZykgdHJhbnNsYXRlKDAsIC01MCUpO1xuXG4gICAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGVmdDogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14IC8gMjtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGUoMCwgLTUwJSkgc2NhbGVYKC0xKTtcbiAgICB9XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tdG9nZ2xlOmhvdmVyID4gLmRyb3Bkb3duLWl0ZW06bm90KC5kaXNhYmxlZCkge1xuICAgIGJhY2tncm91bmQ6ICRkcm9wZG93bi1saW5rLWhvdmVyLWJnO1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjtcblxuICAgICArIC5kcm9wZG93bi1tZW51IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMTAwJTtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51LXJpZ2h0IC5kcm9wZG93bi1tZW51IHtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG59XG4iLCIvLyBNaXhpbnNcbi8vXG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogUlRML0xUUlxuXG5AbWl4aW4gbHRyLW9ubHkoKSB7XG4gIEBpZiAkcnRsLXN1cHBvcnQge1xuICAgIGh0bWw6bm90KFtkaXI9cnRsXSkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gcnRsLW9ubHkoKSB7XG4gIEBpZiAkcnRsLXN1cHBvcnQge1xuICAgIFtkaXI9cnRsXSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGx0ci1zdHlsZSgpIHtcbiAgQGlmICRydGwtc3VwcG9ydCB7XG4gICAgaHRtbDpub3QoW2Rpcj1ydGxdKSAmIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIHJ0bC1zdHlsZSgpIHtcbiAgQGlmICRydGwtc3VwcG9ydCB7XG4gICAgW2Rpcj1ydGxdICYge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogS2V5ZnJhbWVzXG5cbkBtaXhpbiBrZXlmcmFtZXMoJG5hbWUpIHtcbiAgQC13ZWJraXQta2V5ZnJhbWVzICN7JG5hbWV9IHtcbiAgICBAY29udGVudDtcbiAgfVxuICBALW1vei1rZXlmcmFtZXMgI3skbmFtZX0ge1xuICAgIEBjb250ZW50O1xuICB9XG4gIEBrZXlmcmFtZXMgI3skbmFtZX0ge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogQ2FyZXRzXG5cbkBtaXhpbiBjYXJldC1kb3duIHtcbiAgbWFyZ2luLXRvcDogLTEgKiAoJGNhcmV0LXdpZHRoIC8gMS41KTtcbiAgd2lkdGg6ICRjYXJldC13aWR0aDtcbiAgaGVpZ2h0OiAkY2FyZXQtd2lkdGg7XG4gIGJvcmRlcjogMXB4IHNvbGlkO1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItbGVmdDogMDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xufVxuXG5AbWl4aW4gY2FyZXQtdXAge1xuICBtYXJnaW4tdG9wOiAtMDtcbiAgd2lkdGg6ICRjYXJldC13aWR0aDtcbiAgaGVpZ2h0OiAkY2FyZXQtd2lkdGg7XG4gIGJvcmRlcjogMXB4IHNvbGlkO1xuICBib3JkZXItYm90dG9tOiAwO1xuICBib3JkZXItbGVmdDogMDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbn1cblxuQG1peGluIGNhcmV0LXJpZ2h0IHtcbiAgbWFyZ2luLXRvcDogLTEgKiAoJGNhcmV0LXdpZHRoIC8gMik7XG4gIHdpZHRoOiAkY2FyZXQtd2lkdGg7XG4gIGhlaWdodDogJGNhcmV0LXdpZHRoO1xuICBib3JkZXI6IDFweCBzb2xpZDtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLWxlZnQ6IDA7XG4gIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG59XG5cbkBtaXhpbiBjYXJldC1sZWZ0IHtcbiAgbWFyZ2luLXRvcDogLTEgKiAoJGNhcmV0LXdpZHRoIC8gMik7XG4gIHdpZHRoOiAkY2FyZXQtd2lkdGg7XG4gIGhlaWdodDogJGNhcmV0LXdpZHRoO1xuICBib3JkZXI6IDFweCBzb2xpZDtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogUmVzcG9uc2l6ZSBsb29wc1xuXG5AbWl4aW4gcmVzcG9uc2l2ZS1sb29wLWJlZm9yZSgkcGFyZW50LCAkc3RhcnQtYnJlYWtwb2ludDogc20pIHtcbiAgJGN1ci1icmVha3BvaW50OiAkc3RhcnQtYnJlYWtwb2ludDtcblxuICBAd2hpbGUgJGN1ci1icmVha3BvaW50IHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGN1ci1icmVha3BvaW50KTtcblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAoYnJlYWtwb2ludC1taW4oJGN1ci1icmVha3BvaW50KSAtIDEpKSB7XG4gICAgICAjeyRwYXJlbnR9I3skaW5maXh9IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJGN1ci1icmVha3BvaW50OiBicmVha3BvaW50LW5leHQoJGN1ci1icmVha3BvaW50KTtcbiAgfVxufVxuXG5AbWl4aW4gcmVzcG9uc2l2ZS1sb29wLWFmdGVyKCRwYXJlbnQsICRzdGFydC1icmVha3BvaW50OiBzbSkge1xuICAkY3VyLWJyZWFrcG9pbnQ6ICRzdGFydC1icmVha3BvaW50O1xuXG4gIEB3aGlsZSAkY3VyLWJyZWFrcG9pbnQge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkY3VyLWJyZWFrcG9pbnQpO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IGJyZWFrcG9pbnQtbWluKCRjdXItYnJlYWtwb2ludCkpIHtcbiAgICAgICN7JHBhcmVudH0jeyRpbmZpeH0ge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAkY3VyLWJyZWFrcG9pbnQ6IGJyZWFrcG9pbnQtbmV4dCgkY3VyLWJyZWFrcG9pbnQpO1xuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogQ29sb3JzXG5cbi8vIENvbnRyYXN0XG5AbWl4aW4gY29sb3IteWlxKCRjb2xvcikge1xuICBjb2xvcjogeWlxKCRjb2xvcik7XG59XG5cbkBtaXhpbiBiZy1jb2xvci12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJHJ0aC1jb2xvcjogIzAwMCkge1xuICAjeyRwYXJlbnR9IHsgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7IH1cbiAgYSN7JHBhcmVudH0ge1xuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHsgYmFja2dyb3VuZC1jb2xvcjogcmdiYS10by1oZXgocmdiYSgkY29sb3IsIC45NSksICRiYWNrZ3JvdW5kOiAkcnRoLWNvbG9yKSAhaW1wb3J0YW50OyB9XG4gIH1cbn1cblxuQG1peGluIGJnLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkcnRoLWNvbG9yOiAjMDAwKSB7XG4gIEBpbmNsdWRlIGJnLWNvbG9yLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKTtcbiAgQGluY2x1ZGUgYmctY29sb3ItdmFyaWFudChcIiN7JHBhcmVudH0tZGFya1wiLCByZ2JhLXRvLWhleChyZ2JhKCRjb2xvciwgLjkpLCAkYmFja2dyb3VuZDogJHJ0aC1jb2xvcikpO1xuICBAaW5jbHVkZSBiZy1jb2xvci12YXJpYW50KFwiI3skcGFyZW50fS1kYXJrZXJcIiwgcmdiYS10by1oZXgocmdiYSgkY29sb3IsIC44NSksICRiYWNrZ3JvdW5kOiAkcnRoLWNvbG9yKSk7XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogQnV0dG9uc1xuXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoJGJhY2tncm91bmQ6IG51bGwsICRib3JkZXI6IG51bGwsICRhY3RpdmUtYmFja2dyb3VuZDogbnVsbCwgJGFjdGl2ZS1ib3JkZXI6IG51bGwpIHt9XG5cbkBtaXhpbiBhcHB3b3JrLWJ1dHRvbi12YXJpYW50KCRwYXJlbnQsICRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwsICRib3JkZXI6IG51bGwpIHtcbiAgJGJ0bi1jb2xvcnM6IGdldC1idG4tY29sb3JzKCRiYWNrZ3JvdW5kLCBpZigkYm9yZGVyLCAkYm9yZGVyLCAkYmFja2dyb3VuZCkpO1xuICAkY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCB5aXEoJGJhY2tncm91bmQpKTtcblxuICAjeyRwYXJlbnR9IHtcbiAgICBib3JkZXItY29sb3I6IG1hcC1nZXQoJGJ0bi1jb2xvcnMsIGJvcmRlcik7XG4gICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRjb2xvcjtcblxuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSBob3ZlciB7XG4gICAgICBib3JkZXItY29sb3I6IG1hcC1nZXQoJGJ0bi1jb2xvcnMsIGJvcmRlcik7XG4gICAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRidG4tY29sb3JzLCBiZy1ob3Zlcik7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBib3gtc2hhZG93OiBtYXAtZ2V0KCRidG4tY29sb3JzLCBzaGFkb3cpO1xuICAgIH1cblxuICAgICYuZGlzYWJsZWQsXG4gICAgJjpkaXNhYmxlZCB7XG4gICAgICBib3JkZXItY29sb3I6IG1hcC1nZXQoJGJ0bi1jb2xvcnMsIGJvcmRlcikgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgI3skcGFyZW50fSAuYmFkZ2Uge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICBjb2xvcjogcmdiYS10by1oZXgoJGJhY2tncm91bmQpO1xuICB9XG5cbiAgI3skcGFyZW50fTphY3RpdmUsXG4gICN7JHBhcmVudH0uYWN0aXZlLFxuICAuc2hvdyA+ICN7JHBhcmVudH0uZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBib3JkZXItY29sb3I6IG1hcC1nZXQoJGJ0bi1jb2xvcnMsIGJvcmRlcik7XG4gICAgYmFja2dyb3VuZDogbWFwLWdldCgkYnRuLWNvbG9ycywgYmctYWN0aXZlKTtcblxuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLy8gQnV0dG9uIGdyb3Vwc1xuICAuYnRuLWdyb3VwICN7JHBhcmVudH0sXG4gIC5pbnB1dC1ncm91cC1wcmVwZW5kICN7JHBhcmVudH0sXG4gIC5pbnB1dC1ncm91cC1hcHBlbmQgI3skcGFyZW50fSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCBzb2xpZCBtYXAtZ2V0KCRidG4tY29sb3JzLCBiZy1hY3RpdmUpO1xuICAgIGJvcmRlci1sZWZ0OiAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCBzb2xpZCBtYXAtZ2V0KCRidG4tY29sb3JzLCBiZy1hY3RpdmUpO1xuICB9XG59XG5cbkBtaXhpbiBhcHB3b3JrLW1hdGVyaWFsLWJ1dHRvbi12YXJpYW50KCRwYXJlbnQsICRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwsICRtZC1jb2xvcjogJGJhY2tncm91bmQpIHtcbiAgJGJ0bi1jb2xvcnM6IGdldC1tYXRlcmlhbC1idG4tY29sb3JzKCRiYWNrZ3JvdW5kKTtcbiAgJGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgeWlxKCRiYWNrZ3JvdW5kKSk7XG5cbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gICAgYm94LXNoYWRvdzogJGJ0bi1ib3gtc2hhZG93O1xuICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICBAaW5jbHVkZSBob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRidG4tY29sb3JzLCBiZy1ob3Zlcik7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGJveC1zaGFkb3c6ICRidG4tZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cblxuICAjeyRwYXJlbnR9IC5iYWRnZSB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgIGNvbG9yOiByZ2JhLXRvLWhleCgkYmFja2dyb3VuZCk7XG4gIH1cblxuICAjeyRwYXJlbnR9IC53YXZlcy1yaXBwbGUge1xuICAgIGJhY2tncm91bmQ6IGlmKCRjb2xvciA9PSAjZmZmLCByZ2JhKCRjb2xvciwgLjMpLCByZ2JhKCRjb2xvciwgLjIpKTtcbiAgfVxuXG4gICN7JHBhcmVudH06YWN0aXZlLFxuICAjeyRwYXJlbnR9LmFjdGl2ZSxcbiAgLnNob3cgPiAjeyRwYXJlbnR9LmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYmFja2dyb3VuZDogbWFwLWdldCgkYnRuLWNvbG9ycywgYmctYWN0aXZlKTtcbiAgICBib3gtc2hhZG93OiAkYnRuLWFjdGl2ZS1ib3gtc2hhZG93O1xuICB9XG5cbiAgLy8gRmxhdCBidXR0b25zXG4gICN7JHBhcmVudH0ubWQtYnRuLWZsYXQge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBjb2xvcjogJG1kLWNvbG9yO1xuXG4gICAgJjpmb2N1cyxcbiAgICAmLmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoJG1kLWNvbG9yLCAuMSk7XG4gICAgfVxuXG4gICAgLndhdmVzLXJpcHBsZSB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRtZC1jb2xvciwgLjMpO1xuICAgIH1cbiAgfVxuXG4gICN7JHBhcmVudH0ubWQtYnRuLWZsYXQ6YWN0aXZlLFxuICAjeyRwYXJlbnR9Lm1kLWJ0bi1mbGF0LmFjdGl2ZSxcbiAgLnNob3cgPiAjeyRwYXJlbnR9Lm1kLWJ0bi1mbGF0LmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgkbWQtY29sb3IsIC4xNSk7XG4gIH1cblxuICAvLyBEaXNhYmxlZFxuXG4gICN7JHBhcmVudH0uZGlzYWJsZWQsXG4gICN7JHBhcmVudH06ZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogJG1hdGVyaWFsLWNvbXBvbmVudC1zaGFkb3cgIWltcG9ydGFudDtcbiAgICBjb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cblxuICAjeyRwYXJlbnR9Lm1kLWJ0bi1mbGF0LmRpc2FibGVkLFxuICAjeyRwYXJlbnR9Lm1kLWJ0bi1mbGF0OmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAkYmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogT3V0bGluZSBidXR0b25zXG5cbkBtaXhpbiBidXR0b24tb3V0bGluZS12YXJpYW50KCRjb2xvcjogbnVsbCwgJGNvbG9yLWhvdmVyOiBudWxsLCAkaG92ZXItY29sb3I6IG51bGwpIHt9XG5cbkBtaXhpbiBhcHB3b3JrLWJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkaG92ZXItY29sb3I6IG51bGwpIHtcbiAgJGJ0bi1jb2xvcnM6IGdldC1idG4tY29sb3JzKCRjb2xvciwgJGNvbG9yKTtcbiAgJGNvbG9yLWhvdmVyOiBpZigkaG92ZXItY29sb3IsICRob3Zlci1jb2xvciwgeWlxKCRjb2xvcikpO1xuXG4gICN7JHBhcmVudH0ge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICBAaW5jbHVkZSBob3ZlciB7XG4gICAgICBib3JkZXItY29sb3I6IG1hcC1nZXQoJGJ0bi1jb2xvcnMsIGJvcmRlcik7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBib3gtc2hhZG93OiBtYXAtZ2V0KCRidG4tY29sb3JzLCBzaGFkb3cpO1xuICAgIH1cblxuICAgICYuZGlzYWJsZWQsXG4gICAgJjpkaXNhYmxlZCB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAjeyRwYXJlbnR9OmFjdGl2ZSxcbiAgI3skcGFyZW50fS5hY3RpdmUsXG4gIC5zaG93ID4gI3skcGFyZW50fS5kcm9wZG93bi10b2dnbGUge1xuICAgIGJvcmRlci1jb2xvcjogbWFwLWdldCgkYnRuLWNvbG9ycywgYm9yZGVyKTtcbiAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRidG4tY29sb3JzLCBiZy1ob3Zlcik7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcblxuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgI3skcGFyZW50fSAuYmFkZ2Uge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxuXG4gICN7JHBhcmVudH06aG92ZXIgLmJhZGdlLFxuICAjeyRwYXJlbnR9OmZvY3VzIC5iYWRnZSxcbiAgI3skcGFyZW50fTphY3RpdmUgLmJhZGdlLFxuICAjeyRwYXJlbnR9LmFjdGl2ZSAuYmFkZ2UsXG4gIC5zaG93ID4gI3skcGFyZW50fS5kcm9wZG93bi10b2dnbGUgLmJhZGdlIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3ItaG92ZXI7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgY29sb3I6IGlmKGFscGhhKCRjb2xvcik9PTEsICRjb2xvciwgeWlxKCRjb2xvci1ob3ZlcikpO1xuICB9XG59XG5cbkBtaXhpbiBhcHB3b3JrLW1hdGVyaWFsLWJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yLCAkaG92ZXItY29sb3I6IG51bGwpIHtcbiAgJGJ0bi1jb2xvcnM6IGdldC1tYXRlcmlhbC1idG4tY29sb3JzKCRjb2xvcik7XG4gICRjb2xvci1ob3ZlcjogaWYoJGhvdmVyLWNvbG9yLCAkaG92ZXItY29sb3IsIHlpcSgkY29sb3IpKTtcblxuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggJGNvbG9yIGluc2V0O1xuICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgICBib3gtc2hhZG93OiAkYnRuLWZvY3VzLWJveC1zaGFkb3c7XG4gICAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgIH1cblxuICAgICYuZGlzYWJsZWQsXG4gICAgJjpkaXNhYmxlZCB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICRjb2xvciBpbnNldCAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gICN7JHBhcmVudH06YWN0aXZlLFxuICAjeyRwYXJlbnR9LmFjdGl2ZSxcbiAgLnNob3cgPiAjeyRwYXJlbnR9LmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgYmFja2dyb3VuZDogbWFwLWdldCgkYnRuLWNvbG9ycywgYmctaG92ZXIpO1xuICAgIGJveC1zaGFkb3c6ICRidG4tYWN0aXZlLWJveC1zaGFkb3c7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgfVxuXG4gICN7JHBhcmVudH0gLndhdmVzLXJpcHBsZSB7XG4gICAgYmFja2dyb3VuZDogaWYoJGNvbG9yLWhvdmVyPT0jZmZmLCByZ2JhKCRjb2xvci1ob3ZlciwgLjMpLCByZ2JhKCRjb2xvci1ob3ZlciwgLjIpKTtcbiAgfVxuXG4gICN7JHBhcmVudH0gLmJhZGdlIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cblxuICAjeyRwYXJlbnR9OmhvdmVyIC5iYWRnZSxcbiAgI3skcGFyZW50fTpmb2N1cyAuYmFkZ2UsXG4gICN7JHBhcmVudH06YWN0aXZlIC5iYWRnZSxcbiAgI3skcGFyZW50fS5hY3RpdmUgLmJhZGdlLFxuICAuc2hvdyA+ICN7JHBhcmVudH0uZHJvcGRvd24tdG9nZ2xlIC5iYWRnZSB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yLWhvdmVyO1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgIGNvbG9yOiBpZihhbHBoYSgkY29sb3IpPT0xLCAkY29sb3IsIHlpcSgkY29sb3ItaG92ZXIpKTtcbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEJhZGdlc1xuXG5AbWl4aW4gYmFkZ2UtdmFyaWFudCgkYmcpIHt9XG5cbkBtaXhpbiBhcHB3b3JrLWJhZGdlLXZhcmlhbnQoJHBhcmVudCwgJGJnLCAkY29sb3I6IG51bGwpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnO1xuICAgIGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgeWlxKCRiZykpO1xuICB9XG5cbiAgI3skcGFyZW50fVtocmVmXSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogaWYoYWxwaGEoJGJnKSA9PSAxLCByZ2JhLXRvLWhleChyZ2JhKCRiZywgLjk1KSwgIzAwMCksIHJnYmEoJGJnLCBhbHBoYSgkYmcpICsgLjAzKSk7XG4gICAgICBjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIHlpcSgkYmcpKTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAuYnRuICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQ6ICRiZyAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1jb2xvcjogJGJnICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCB5aXEoJGJnKSkgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1iYWRnZS1vdXRsaW5lLXZhcmlhbnQoJHBhcmVudCwgJGJnLCAkY29sb3I6ICRiZykge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggJGJnIGluc2V0O1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAjeyRwYXJlbnR9W2hyZWZdIHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC5idG4gI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggJGJnIGluc2V0ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogRHJvcGRvd25zXG5cbkBtaXhpbiBhcHB3b3JrLWRyb3Bkb3duLXZhcmlhbnQoJHBhcmVudCwgJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICAjeyRwYXJlbnR9IC5kcm9wZG93bi1pdGVtOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgI3skcGFyZW50fSAuZHJvcGRvd24taXRlbTpub3QoLmRpc2FibGVkKTphY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgeWlxKCRiYWNrZ3JvdW5kKSk7XG4gIH1cblxuICAjeyRwYXJlbnR9LmRyb3Bkb3duLW1lbnUgPiBsaTpub3QoLmRpc2FibGVkKSA+IGE6bm90KC5kcm9wZG93bi1pdGVtKTphY3RpdmUsXG4gICN7JHBhcmVudH0uZHJvcGRvd24tbWVudSA+IGxpLmFjdGl2ZTpub3QoLmRpc2FibGVkKSA+IGE6bm90KC5kcm9wZG93bi1pdGVtKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCB5aXEoJGJhY2tncm91bmQpKTtcbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1kcm9wZG93bi10aGVtZSgkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gIEBpbmNsdWRlIGFwcHdvcmstZHJvcGRvd24tdmFyaWFudCgnJywgJGJhY2tncm91bmQsICRjb2xvcik7XG59XG5cbkBtaXhpbiBhcHB3b3JrLW1hdGVyaWFsLWRyb3Bkb3duLXZhcmlhbnQoJHBhcmVudCwgJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICAjeyRwYXJlbnR9IC5kcm9wZG93bi1pdGVtOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCB5aXEoJGJhY2tncm91bmQpKTtcbiAgfVxuXG4gICN7JHBhcmVudH0uZHJvcGRvd24tbWVudSA+IGxpLmFjdGl2ZTpub3QoLmRpc2FibGVkKSA+IGE6bm90KC5kcm9wZG93bi1pdGVtKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCB5aXEoJGJhY2tncm91bmQpKTtcbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1tYXRlcmlhbC1kcm9wZG93bi10aGVtZSgkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gIEBpbmNsdWRlIGFwcHdvcmstbWF0ZXJpYWwtZHJvcGRvd24tdmFyaWFudCgnJywgJGJhY2tncm91bmQsICRjb2xvcik7XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogTmF2c1xuXG5AbWl4aW4gYXBwd29yay1uYXYtc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQpIHtcbiAgID4gLm5hdiAubmF2LWxpbmssXG4gICYubmF2IC5uYXYtbGluayB7XG4gICAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICB9XG59XG5cbkBtaXhpbiBhcHB3b3JrLW5hdi12YXJpYW50KCRwYXJlbnQsICRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwpIHtcbiAgJHBpbGxzLXNlbGVjdG9yOiBpZigkcGFyZW50ID09ICcnLCAnLm5hdi1waWxscycsICcjeyRwYXJlbnR9Lm5hdi1waWxscywgI3skcGFyZW50fSA+IC5uYXYtcGlsbHMnKTtcblxuICAjeyRwaWxscy1zZWxlY3Rvcn0gLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgQGluY2x1ZGUgcGxhaW4taG92ZXItZm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICBjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIHlpcSgkYmFja2dyb3VuZCkpO1xuICAgIH1cbiAgfVxuXG4gICN7JHBhcmVudH0udGFicy1hbHQubmF2LXRhYnMgLm5hdi1saW5rLmFjdGl2ZSxcbiAgI3skcGFyZW50fS50YWJzLWFsdCA+IC5uYXYtdGFicyAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICBAaW5jbHVkZSBwbGFpbi1ob3Zlci1mb2N1cyB7XG4gICAgICBib3gtc2hhZG93OiAwIC0ycHggMCAkYmFja2dyb3VuZCBpbnNldDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGFwcHdvcmstbmF2LXRoZW1lKCRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwpIHtcbiAgQGluY2x1ZGUgYXBwd29yay1uYXYtdmFyaWFudCgnJywgJGJhY2tncm91bmQsICRjb2xvcik7XG59XG5cbkBtaXhpbiBhcHB3b3JrLW1hdGVyaWFsLW5hdi12YXJpYW50KCRwYXJlbnQsICRjb2xvciwgJGxpbmstY29sb3I6IG51bGwpIHtcbiAgJHRhYnMtc2VsZWN0b3I6IGlmKCRwYXJlbnQgPT0gJycsICcubmF2LXRhYnMnLCAnI3skcGFyZW50fS5uYXYtdGFicycpO1xuICAkcGlsbHMtc2VsZWN0b3I6IGlmKCRwYXJlbnQgPT0gJycsICcubmF2LXBpbGxzJywgJyN7JHBhcmVudH0ubmF2LXBpbGxzLCAjeyRwYXJlbnR9ID4gLm5hdi1waWxscycpO1xuXG4gICN7JHRhYnMtc2VsZWN0b3J9IC5uYXYtbGluayB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRjb2xvciwgJGNvbG9yKTtcbiAgfVxuXG4gICN7JHBpbGxzLXNlbGVjdG9yfSAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICBAaW5jbHVkZSBwbGFpbi1ob3Zlci1mb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICBjb2xvcjogaWYoJGxpbmstY29sb3IsICRsaW5rLWNvbG9yLCB5aXEoJGNvbG9yKSk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBhcHB3b3JrLW1hdGVyaWFsLW5hdi10aGVtZSgkY29sb3IsICRsaW5rLWNvbG9yOiBudWxsKSB7XG4gIEBpbmNsdWRlIGFwcHdvcmstbWF0ZXJpYWwtbmF2LXZhcmlhbnQoJycsICRjb2xvciwgJGxpbmstY29sb3IpO1xufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFBhZ2luYXRpb25cblxuQG1peGluIGFwcHdvcmstcGFnaW5hdGlvbi12YXJpYW50KCRwYXJlbnQsICRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwpIHtcbiAgI3skcGFyZW50fSAucGFnZS1pdGVtLmFjdGl2ZSAucGFnZS1saW5rLFxuICAjeyRwYXJlbnR9LnBhZ2luYXRpb24gbGkuYWN0aXZlID4gYTpub3QoLnBhZ2UtbGluaykge1xuICAgIEBpbmNsdWRlIHBsYWluLWhvdmVyLWZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgIGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgeWlxKCRiYWNrZ3JvdW5kKSk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBhcHB3b3JrLXBhZ2luYXRpb24tdGhlbWUoJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICBAaW5jbHVkZSBhcHB3b3JrLXBhZ2luYXRpb24tdmFyaWFudCgnJywgJGJhY2tncm91bmQsICRjb2xvcik7XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogUHJvZ3Jlc3MgYmFyc1xuXG5AbWl4aW4gYXBwd29yay1wcm9ncmVzcy1iYXItdGhlbWUoJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICAucHJvZ3Jlc3MtYmFyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIHlpcSgkYmFja2dyb3VuZCkpO1xuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogTGlzdCBncm91cHNcblxuQG1peGluIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCRzdGF0ZTogbnVsbCwgJGJhY2tncm91bmQ6IG51bGwsICRjb2xvcjogbnVsbCkge31cblxuQG1peGluIGFwcHdvcmstbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJHBhcmVudCwgJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICAkYmc6IHJnYmEtdG8taGV4KHJnYmEoJGJhY2tncm91bmQsIC4xKSwgI2ZmZik7XG4gICRjb2xvcjogeWlxKCRiZyk7XG4gICRob3Zlci1iZzogcmdiYS10by1oZXgocmdiYSgkYmcsIC45OSksICMwMDApO1xuXG4gICN7JHBhcmVudH0ge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLDAsMCwuMDcpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZztcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgYSN7JHBhcmVudH0sXG4gIGJ1dHRvbiN7JHBhcmVudH0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItYmc7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgIH1cblxuICAgICYuYWN0aXZlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgIGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgeWlxKCRiYWNrZ3JvdW5kKSk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBhcHB3b3JrLWxpc3QtZ3JvdXAtdGhlbWUoJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICBAaW5jbHVkZSBhcHB3b3JrLWxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCcubGlzdC1ncm91cC1pdGVtLXByaW1hcnknLCAkYmFja2dyb3VuZCk7XG5cbiAgLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xuICAgIEBpbmNsdWRlIHBsYWluLWhvdmVyLWZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgIGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgeWlxKCRiYWNrZ3JvdW5kKSk7XG4gICAgfVxuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogQWxlcnRzXG5cbkBtaXhpbiBhbGVydC12YXJpYW50KCRiYWNrZ3JvdW5kOiBudWxsLCAkYm9yZGVyOiBudWxsLCAkY29sb3I6IG51bGwpIHt9XG5cbkBtaXhpbiBhcHB3b3JrLWFsZXJ0LXZhcmlhbnQoJHBhcmVudCwgJGJhY2tncm91bmQpIHtcbiAgJGJhY2tncm91bmQ6IHJnYmEtdG8taGV4KHJnYmEoJGJhY2tncm91bmQsIC4xNSksICNmZmYpO1xuICAkYm9yZGVyOiByZ2JhLXRvLWhleChyZ2JhKCRiYWNrZ3JvdW5kLCAuOTQpLCAjMDAwKTtcbiAgJGNvbG9yOiB5aXEoJGJhY2tncm91bmQpO1xuXG4gICN7JHBhcmVudH0ge1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgaHIge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJvcmRlcjtcbiAgICB9XG5cbiAgICAuYWxlcnQtbGluayB7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1hbGVydC1kYXJrLXZhcmlhbnQoJHBhcmVudCwgJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICAkY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCB5aXEoJGJhY2tncm91bmQpKTtcblxuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgaHIge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogcmdiYSh5aXEoJGJhY2tncm91bmQpLC4yKTtcbiAgICB9XG5cbiAgICAuY2xvc2UsXG4gICAgLmFsZXJ0LWxpbmsge1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBUb29sdGlwc1xuXG5AbWl4aW4gYXBwd29yay10b29sdGlwLXZhcmlhbnQoJHBhcmVudCwgJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICAjeyRwYXJlbnR9IHtcbiAgICAudG9vbHRpcC1pbm5lciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgICAgIGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgeWlxKCRiYWNrZ3JvdW5kKSk7XG4gICAgfVxuXG4gICAgJi5icy10b29sdGlwLXRvcCAuYXJyb3c6OmJlZm9yZSwgJi5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePVwidG9wXCJdIC5hcnJvdzo6YmVmb3JlIHsgYm9yZGVyLXRvcC1jb2xvcjogJGJhY2tncm91bmQ7IH1cbiAgICAmLmJzLXRvb2x0aXAtcmlnaHQgLmFycm93OjpiZWZvcmUsICYuYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdIC5hcnJvdzo6YmVmb3JlIHsgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkYmFja2dyb3VuZDsgfVxuICAgICYuYnMtdG9vbHRpcC1ib3R0b20gLmFycm93OjpiZWZvcmUsICYuYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSAuYXJyb3c6OmJlZm9yZSB7IGJvcmRlci1ib3R0b20tY29sb3I6ICRiYWNrZ3JvdW5kOyB9XG4gICAgJi5icy10b29sdGlwLWxlZnQgLmFycm93OjpiZWZvcmUsICYuYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0gLmFycm93OjpiZWZvcmUgeyBib3JkZXItbGVmdC1jb2xvcjogJGJhY2tncm91bmQ7IH1cbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFBvcG92ZXJzXG5cbkBtaXhpbiBhcHB3b3JrLXBvcG92ZXItdmFyaWFudCgkcGFyZW50LCAkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gICRjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIHlpcSgkYmFja2dyb3VuZCkpO1xuXG4gICN7JHBhcmVudH0ge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG5cbiAgICAucG9wb3Zlci1oZWFkZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKHlpcSgkYmFja2dyb3VuZCksLjIpO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgIH1cblxuICAgIC5wb3BvdmVyLWJvZHkge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgIH1cblxuICAgID4gLmFycm93OjpiZWZvcmUgeyBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbiAgICAmLmJzLXBvcG92ZXItdG9wID4gLmFycm93OjphZnRlciwgJi5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePVwidG9wXCJdID4gLmFycm93OjphZnRlciB7IGJvcmRlci10b3AtY29sb3I6ICRiYWNrZ3JvdW5kOyB9XG4gICAgJi5icy1wb3BvdmVyLXJpZ2h0ID4gLmFycm93OjphZnRlciwgJi5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePVwicmlnaHRcIl0gPiAuYXJyb3c6OmFmdGVyIHsgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkYmFja2dyb3VuZDsgfVxuICAgICYuYnMtcG9wb3Zlci1ib3R0b20gPiAuYXJyb3c6OmFmdGVyLCAmLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49XCJib3R0b21cIl0gPiAuYXJyb3c6OmFmdGVyIHsgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGJhY2tncm91bmQ7IH1cbiAgICAmLmJzLXBvcG92ZXItbGVmdCA+IC5hcnJvdzo6YWZ0ZXIsICYuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0gPiAuYXJyb3c6OmFmdGVyIHsgYm9yZGVyLWxlZnQtY29sb3I6ICRiYWNrZ3JvdW5kOyB9XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBGb3JtIGNvbnRyb2xzXG5cbkBtaXhpbiBhcHB3b3JrLWN1c3RvbS1zZWxlY3Qtc2l6ZSgkc2l6ZSwgJHBhZGRpbmcteCwgJGxpbmUtaGVpZ2h0LCAkZm9udC1zaXplKSB7XG4gIC5jdXN0b20tc2VsZWN0LSN7JHNpemV9LFxuICAuaW5wdXQtZ3JvdXAtI3skc2l6ZX0gLmN1c3RvbS1zZWxlY3Qge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZztcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAkcGFkZGluZy14IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuXG4gICAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICAgICYsXG4gICAgICAmW3NpemU9XCIwXCJdOm5vdChbbXVsdGlwbGVdKSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nLXg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmcteCArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0ICRwYWRkaW5nLXggY2VudGVyO1xuICAgICAgfVxuICAgIH1cblxuICAgICZbc2l6ZT1cIjBcIl06bm90KFttdWx0aXBsZV0pIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZztcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGFwcHdvcmstY3VzdG9tLWNvbnRyb2wtdmFyaWFudCgkcGFyZW50LCAkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsLCAkZGVmYXVsdC1iYWNrZ3JvdW5kOiBudWxsKSB7XG4gICRjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIHlpcSgkYmFja2dyb3VuZCkpO1xuXG4gICN7JHBhcmVudH0ge1xuICAgIEBpZiAkZGVmYXVsdC1iYWNrZ3JvdW5kIHtcbiAgICAgIC5jdXN0b20tY29udHJvbC1pbnB1dCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuICAgICAgLmN1c3RvbS1jb250cm9sLWlucHV0OmFjdGl2ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRlZmF1bHQtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQge1xuICAgICAgJjpmb2N1cyB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuICAgICAgJjphY3RpdmUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRjb21wb25lbnQtZm9jdXMtc2hhZG93LXdpZHRoIHJnYmEoJGJhY2tncm91bmQsIC40KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuICAgICYuY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsXG4gICAgJi5jdXN0b20tcmFkaW8gLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuXG4gICAgJi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmluZGV0ZXJtaW5hdGUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoc3RyLXJlcGxhY2Uoc3RyLXJlcGxhY2UoJGN1c3RvbS1jaGVja2JveC1pbmRldGVybWluYXRlLWJnLCAnX0NPTE9SXycsICRjb2xvciksIFwiI1wiLCBcIiUyM1wiKSk7XG4gICAgfVxuXG4gICAgJi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoc3RyLXJlcGxhY2Uoc3RyLXJlcGxhY2UoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYmcsICdfQ09MT1JfJywgJGNvbG9yKSwgXCIjXCIsIFwiJTIzXCIpKTtcbiAgICB9XG5cbiAgICAmLmN1c3RvbS1yYWRpbyAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChzdHItcmVwbGFjZShzdHItcmVwbGFjZSgkY3VzdG9tLXJhZGlvLWluZGljYXRvci1iZywgJ19DT0xPUl8nLCAkY29sb3IpLCBcIiNcIiwgXCIlMjNcIikpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1jdXN0b20tY29udHJvbC10aGVtZSgkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gIEBpbmNsdWRlIGFwcHdvcmstY3VzdG9tLWNvbnRyb2wtdmFyaWFudCgnLmN1c3RvbS1jb250cm9sJywgJGJhY2tncm91bmQsICRjb2xvcik7XG59XG5cbkBtaXhpbiBhcHB3b3JrLW1hdGVyaWFsLWN1c3RvbS1jb250cm9sLXZhcmlhbnQoJHBhcmVudCwgJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCwgJGRlZmF1bHQtYmFja2dyb3VuZDogbnVsbCkge1xuICAkY29sb3I6IGlmKCRjb2xvciwgJGNvbG9yLCB5aXEoJGJhY2tncm91bmQpKTtcblxuICAjeyRwYXJlbnR9IHtcbiAgICBAaWYgJGRlZmF1bHQtYmFja2dyb3VuZCB7XG4gICAgICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbiAgICAgIC5jdXN0b20tY29udHJvbC1pbnB1dDphY3RpdmUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkZWZhdWx0LWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmluZGV0ZXJtaW5hdGUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbiAgICAmLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuICAgICYuY3VzdG9tLXJhZGlvIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICB9XG5cbiAgICAmLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKHN0ci1yZXBsYWNlKHN0ci1yZXBsYWNlKCRjdXN0b20tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1iZywgJ19DT0xPUl8nLCAkY29sb3IpLCBcIiNcIiwgXCIlMjNcIikpO1xuICAgIH1cblxuICAgICYuY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoc3RyLXJlcGxhY2Uoc3RyLXJlcGxhY2UoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYmcsICdfQ09MT1JfJywgJGNvbG9yKSwgXCIjXCIsIFwiJTIzXCIpKTtcbiAgICB9XG5cbiAgICAmLmN1c3RvbS1yYWRpbyAuY3VzdG9tLWNvbnRyb2wtaW5wdXQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoc3RyLXJlcGxhY2Uoc3RyLXJlcGxhY2UoJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYmcsICdfQ09MT1JfJywgJGJhY2tncm91bmQpLCBcIiNcIiwgXCIlMjNcIikpO1xuICAgIH1cblxuICAgIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRiYWNrZ3JvdW5kLCAuMTUpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1tYXRlcmlhbC1jdXN0b20tY29udHJvbC10aGVtZSgkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gIEBpbmNsdWRlIGFwcHdvcmstbWF0ZXJpYWwtY3VzdG9tLWNvbnRyb2wtdmFyaWFudCgnLmN1c3RvbS1jb250cm9sJywgJGJhY2tncm91bmQsICRjb2xvcik7XG59XG5cbkBtaXhpbiBmb3JtLXZhbGlkYXRpb24tc3RhdGUoJHN0YXRlOiBudWxsLCAkY29sb3I6IG51bGwsICRpY29uOiBudWxsKSB7fVxuXG5AbWl4aW4gZm9ybS1jb250cm9sLXZhbGlkYXRlZCgkcGFyZW50LCAkc3RhdGUpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBhcHB3b3JrLWZvcm0tdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsICRjb2xvciwgJGljb24sICRpY29uLXJ0bCkge1xuICAuI3skc3RhdGV9LWZlZWRiYWNrIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGZvbnQtc2l6ZTogJGZvcm0tZmVlZGJhY2stZm9udC1zaXplO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6ICRmb3JtLXRleHQtbWFyZ2luLXRvcDtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIHotaW5kZXg6IDU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIENvbnRhaW4gdG8gcGFyZW50IHdoZW4gcG9zc2libGVcbiAgICBwYWRkaW5nOiAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteSAkZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDtcbiAgICBtYXJnaW4tdG9wOiAuMXJlbTtcbiAgICBmb250LXNpemU6ICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkZm9ybS1mZWVkYmFjay10b29sdGlwLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvciwgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5KTtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGVkKCcuZm9ybS1jb250cm9sLCAuY3VzdG9tLXNlbGVjdCwgLmZvcm0tY29udHJvbC1maWxlLCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQnLCAkc3RhdGUpIHtcbiAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgfiAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRlZCgnLmZvcm0tY29udHJvbCwgLmN1c3RvbS1zZWxlY3QnLCAkc3RhdGUpIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0ZWQoJy5jdXN0b20tY29udHJvbFtjbGFzc10gLmN1c3RvbS1jb250cm9sLWlucHV0JywgJHN0YXRlKSB7XG4gICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICB9XG5cbiAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuICAgICY6Zm9jdXMgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbiAgICAmOmFjdGl2ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgIH1cblxuICAgICY6Zm9jdXMgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAkY29tcG9uZW50LWZvY3VzLXNoYWRvdy13aWR0aCByZ2JhKCRjb2xvciwgLjQpO1xuICAgIH1cblxuICAgICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0ZWQoJy5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0JywgJHN0YXRlKSB7XG4gICAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKHN0ci1yZXBsYWNlKHN0ci1yZXBsYWNlKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJnLCAnX0NPTE9SXycsIHlpcSgkY29sb3IpKSwgXCIjXCIsIFwiJTIzXCIpKTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGVkKCcuY3VzdG9tLXJhZGlvIC5jdXN0b20tY29udHJvbC1pbnB1dCcsICRzdGF0ZSkge1xuICAgICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChzdHItcmVwbGFjZShzdHItcmVwbGFjZSgkY3VzdG9tLXJhZGlvLWluZGljYXRvci1iZywgJ19DT0xPUl8nLCB5aXEoJGNvbG9yKSksIFwiI1wiLCBcIiUyM1wiKSk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRlZCgnLmN1c3RvbS1maWxlLWlucHV0JywgJHN0YXRlKSB7XG4gICAgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFZhbGlkYXRpb24gaWNvbnNcbiAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgLy8gSW5wdXRzXG4gICAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRlZCgnLmZvcm0tY29udHJvbCcsICRzdGF0ZSkge1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY2FsYygjeyRpbnB1dC1oZWlnaHQtaW5uZXJ9IC8gMykgY2FsYygjeyRpbnB1dC1oZWlnaHQtaW5uZXJ9IC8gMyk7XG5cbiAgICAgIEBpbmNsdWRlIGx0ci1zdHlsZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6ICRpY29uO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgcmlnaHQgY2FsYygjeyRpbnB1dC1oZWlnaHQtaW5uZXJ9IC8gMyk7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIHJ0bC1zdHlsZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6ICRpY29uLXJ0bDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgbGVmdCBjYWxjKCN7JGlucHV0LWhlaWdodC1pbm5lcn0gLyAzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRlZCgnLmZvcm0tY29udHJvbC1zbScsICRzdGF0ZSkge1xuICAgICAgQGluY2x1ZGUgbHRyLXN0eWxlIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lci1zbTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHJpZ2h0IGNhbGMoI3skaW5wdXQtaGVpZ2h0LWlubmVyLXNtfSAvIDQpO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkaW5wdXQtaGVpZ2h0LWlubmVyLXNtO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgbGVmdCBjYWxjKCN7JGlucHV0LWhlaWdodC1pbm5lci1zbX0gLyA0KTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRlZCgnLmZvcm0tY29udHJvbC1sZycsICRzdGF0ZSkge1xuICAgICAgQGluY2x1ZGUgbHRyLXN0eWxlIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGlucHV0LWhlaWdodC1pbm5lci1sZztcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHJpZ2h0IGNhbGMoI3skaW5wdXQtaGVpZ2h0LWlubmVyLWxnfSAvIDIuNSk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRpbnB1dC1oZWlnaHQtaW5uZXItbGc7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBsZWZ0IGNhbGMoI3skaW5wdXQtaGVpZ2h0LWlubmVyLWxnfSAvIDIuNSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gVGV4dGFyZWFzXG4gICAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRlZCgndGV4dGFyZWEuZm9ybS1jb250cm9sJywgJHN0YXRlKSB7XG4gICAgICBAaW5jbHVkZSBsdHItc3R5bGUge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2FsYygjeyRpbnB1dC1oZWlnaHQtaW5uZXJ9IC8gMykgcmlnaHQgY2FsYygjeyRpbnB1dC1oZWlnaHQtaW5uZXJ9IC8gMyk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2FsYygjeyRpbnB1dC1oZWlnaHQtaW5uZXJ9IC8gMykgbGVmdCBjYWxjKCN7JGlucHV0LWhlaWdodC1pbm5lcn0gLyAzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRlZCgndGV4dGFyZWEuZm9ybS1jb250cm9sLXNtJywgJHN0YXRlKSB7XG4gICAgICBAaW5jbHVkZSBsdHItc3R5bGUge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2FsYygjeyRpbnB1dC1oZWlnaHQtaW5uZXItc219IC8gNCkgcmlnaHQgY2FsYygjeyRpbnB1dC1oZWlnaHQtaW5uZXItc219IC8gNCk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2FsYygjeyRpbnB1dC1oZWlnaHQtaW5uZXItc219IC8gNCkgbGVmdCBjYWxjKCN7JGlucHV0LWhlaWdodC1pbm5lci1zbX0gLyA0KTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRlZCgndGV4dGFyZWEuZm9ybS1jb250cm9sLWxnJywgJHN0YXRlKSB7XG4gICAgICBAaW5jbHVkZSBsdHItc3R5bGUge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2FsYygjeyRpbnB1dC1oZWlnaHQtaW5uZXItbGd9IC8gMi41KSByaWdodCBjYWxjKCN7JGlucHV0LWhlaWdodC1pbm5lci1sZ30gLyAyLjUpO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNhbGMoI3skaW5wdXQtaGVpZ2h0LWlubmVyLWxnfSAvIDIuNSkgbGVmdCBjYWxjKCN7JGlucHV0LWhlaWdodC1pbm5lci1sZ30gLyAyLjUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEN1c3RvbSBzZWxlY3RzXG4gICAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRlZCgnLmN1c3RvbS1zZWxlY3Rbc2l6ZT1cIjFcIl0sIC5jdXN0b20tc2VsZWN0Om5vdChbc2l6ZV0pOm5vdChbbXVsdGlwbGVdKScsICRzdGF0ZSkge1xuICAgICAgJGZvcm0tZmVlZGJhY2staWNvbi1vZmZzZXQ6ICgoJGlucHV0LWhlaWdodC1pbm5lciAtICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCkgLyAzKSArICRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nO1xuICAgICAgQGluY2x1ZGUgbHRyLXN0eWxlIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3IsICRpY29uO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggY2VudGVyLCByaWdodCAkZm9ybS1mZWVkYmFjay1pY29uLW9mZnNldCBjZW50ZXI7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZztcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXJ0bCwgJGljb24tcnRsO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCBjZW50ZXIsIGxlZnQgJGZvcm0tZmVlZGJhY2staWNvbi1vZmZzZXQgY2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGVkKCcuY3VzdG9tLXNlbGVjdC1zbVtzaXplPVwiMVwiXSwgLmN1c3RvbS1zZWxlY3Qtc206bm90KFtzaXplXSk6bm90KFttdWx0aXBsZV0pJywgJHN0YXRlKSB7XG4gICAgICAkZm9ybS1mZWVkYmFjay1pY29uLW9mZnNldDogKCgkaW5wdXQtaGVpZ2h0LWlubmVyLXNtIC0gJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14KSAvIDQpICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc7XG4gICAgICBAaW5jbHVkZSBsdHItc3R5bGUge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctc207XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1zbSBjZW50ZXIsIHJpZ2h0ICRmb3JtLWZlZWRiYWNrLWljb24tb2Zmc2V0IGNlbnRlcjtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bC1zdHlsZSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLXNtO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1zbSBjZW50ZXIsIGxlZnQgJGZvcm0tZmVlZGJhY2staWNvbi1vZmZzZXQgY2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGVkKCcuY3VzdG9tLXNlbGVjdC1sZ1tzaXplPVwiMVwiXSwgLmN1c3RvbS1zZWxlY3QtbGc6bm90KFtzaXplXSk6bm90KFttdWx0aXBsZV0pJywgJHN0YXRlKSB7XG4gICAgICAkZm9ybS1mZWVkYmFjay1pY29uLW9mZnNldDogKCgkaW5wdXQtaGVpZ2h0LWlubmVyLWxnIC0gJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14KSAvIDIpICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc7XG4gICAgICBAaW5jbHVkZSBsdHItc3R5bGUge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctbGc7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1sZyBjZW50ZXIsIHJpZ2h0ICRmb3JtLWZlZWRiYWNrLWljb24tb2Zmc2V0IGNlbnRlcjtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bC1zdHlsZSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLWxnO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1sZyBjZW50ZXIsIGxlZnQgJGZvcm0tZmVlZGJhY2staWNvbi1vZmZzZXQgY2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1tYXRlcmlhbC1mb3JtLXZhbGlkYXRpb24tc3RhdGUoJHN0YXRlLCAkY29sb3IsICRpY29uLCAkaWNvbi1ydGwpIHtcbiAgLiN7JHN0YXRlfS1mZWVkYmFjayB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBmb250LXNpemU6ICRmb3JtLWZlZWRiYWNrLWZvbnQtc2l6ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAkZm9ybS10ZXh0LW1hcmdpbi10b3A7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gIC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICB6LWluZGV4OiA1O1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyAvLyBDb250YWluIHRvIHBhcmVudCB3aGVuIHBvc3NpYmxlXG4gICAgcGFkZGluZzogJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXkgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXg7XG4gICAgbWFyZ2luLXRvcDogLjFyZW07XG4gICAgZm9udC1zaXplOiAkZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDtcbiAgICBjb2xvcjogY29sb3IteWlxKCRjb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3IsICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eSk7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1mZWVkYmFjay10b29sdGlwLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRlZCgnLmZvcm0tY29udHJvbCwgLmN1c3RvbS1zZWxlY3QsIC5mb3JtLWNvbnRyb2wtZmlsZSwgLmN1c3RvbS1jb250cm9sLWlucHV0JywgJHN0YXRlKSB7XG4gICAgfiAuI3skc3RhdGV9LWZlZWRiYWNrLFxuICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0ZWQoJy5mb3JtLWNvbnRyb2wsIC5jdXN0b20tc2VsZWN0JywgJHN0YXRlKSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gIH1cblxuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGVkKCcuY3VzdG9tLWNvbnRyb2xbY2xhc3NdIC5jdXN0b20tY29udHJvbC1pbnB1dCcsICRzdGF0ZSkge1xuICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgfVxuXG4gICAgfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuICAgICY6Zm9jdXMgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbiAgICAmOmFjdGl2ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuICAgICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgIH1cblxuICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRjb2xvciwgLjE1KTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGVkKCcuY3VzdG9tLWNoZWNrYm94W2NsYXNzXSAuY3VzdG9tLWNvbnRyb2wtaW5wdXQnLCAkc3RhdGUpIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoc3RyLXJlcGxhY2Uoc3RyLXJlcGxhY2UoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYmcsICdfQ09MT1JfJywgeWlxKCRjb2xvcikpLCBcIiNcIiwgXCIlMjNcIikpO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0ZWQoJy5jdXN0b20tcmFkaW9bY2xhc3NdIC5jdXN0b20tY29udHJvbC1pbnB1dCcsICRzdGF0ZSkge1xuICAgICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChzdHItcmVwbGFjZShzdHItcmVwbGFjZSgkY3VzdG9tLXJhZGlvLWluZGljYXRvci1iZywgJ19DT0xPUl8nLCAkY29sb3IpLCBcIiNcIiwgXCIlMjNcIikpO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0ZWQoJy5jdXN0b20tZmlsZS1pbnB1dCcsICRzdGF0ZSkge1xuICAgIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIFZhbGlkYXRpb24gaWNvbnNcbiAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgLy8gSW5wdXRzXG4gICAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRlZCgnLmZvcm0tY29udHJvbCcsICRzdGF0ZSkge1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY2FsYygjeyRpbnB1dC1oZWlnaHQtaW5uZXJ9IC8gMykgY2FsYygjeyRpbnB1dC1oZWlnaHQtaW5uZXJ9IC8gMyk7XG5cbiAgICAgIEBpbmNsdWRlIGx0ci1zdHlsZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6ICRpY29uO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgcmlnaHQ7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIHJ0bC1zdHlsZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6ICRpY29uLXJ0bDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgbGVmdDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBUZXh0YXJlYXNcbiAgICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGVkKCd0ZXh0YXJlYS5mb3JtLWNvbnRyb2wnLCAkc3RhdGUpIHtcbiAgICAgIEBpbmNsdWRlIGx0ci1zdHlsZSB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjYWxjKCN7JGlucHV0LWhlaWdodC1pbm5lcn0gLyAzKSByaWdodDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bC1zdHlsZSB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjYWxjKCN7JGlucHV0LWhlaWdodC1pbm5lcn0gLyAzKSBsZWZ0O1xuICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGVkKCd0ZXh0YXJlYS5mb3JtLWNvbnRyb2wtc20nLCAkc3RhdGUpIHtcbiAgICAgIEBpbmNsdWRlIGx0ci1zdHlsZSB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjYWxjKCN7JGlucHV0LWhlaWdodC1pbm5lci1zbX0gLyA0KSByaWdodDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bC1zdHlsZSB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjYWxjKCN7JGlucHV0LWhlaWdodC1pbm5lci1zbX0gLyA0KSBsZWZ0O1xuICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGVkKCd0ZXh0YXJlYS5mb3JtLWNvbnRyb2wtbGcnLCAkc3RhdGUpIHtcbiAgICAgIEBpbmNsdWRlIGx0ci1zdHlsZSB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjYWxjKCN7JGlucHV0LWhlaWdodC1pbm5lci1sZ30gLyAyLjUpIHJpZ2h0O1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNhbGMoI3skaW5wdXQtaGVpZ2h0LWlubmVyLWxnfSAvIDIuNSkgbGVmdDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBDdXN0b20gc2VsZWN0c1xuICAgIEBpbmNsdWRlIGZvcm0tY29udHJvbC12YWxpZGF0ZWQoJy5jdXN0b20tc2VsZWN0W3NpemU9XCIxXCJdLCAuY3VzdG9tLXNlbGVjdDpub3QoW3NpemVdKTpub3QoW211bHRpcGxlXSknLCAkc3RhdGUpIHtcbiAgICAgIEBpbmNsdWRlIGx0ci1zdHlsZSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZztcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLCAkaWNvbjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyLCByaWdodCAxcmVtIGNlbnRlcjtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIHJ0bC1zdHlsZSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcnRsLCAkaWNvbi1ydGw7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyLCBsZWZ0IDFyZW0gY2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1jdXN0b20tZmlsZS1pbnB1dC10aGVtZSgkY29sb3IpIHtcbiAgLmN1c3RvbS1maWxlLWlucHV0OmZvY3VzIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGFwcHdvcmstbWF0ZXJpYWwtY3VzdG9tLWZpbGUtaW5wdXQtdGhlbWUoJGNvbG9yKSB7XG4gIC5jdXN0b20tZmlsZS1pbnB1dDpmb2N1cyB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbG9yO1xuICAgIGJveC1zaGFkb3c6IDAgLTFweCAwIDAgJGNvbG9yIGluc2V0O1xuICB9XG59XG5cbkBtaXhpbiBhcHB3b3JrLW1hdGVyaWFsLWZvcm0tY29udHJvbC1zaXplKCRzaXplLCAkcGFkZGluZy15KSB7XG4gIEBpZiAkc2l6ZSA9PSAnJyB7XG4gICAgLmZvcm0tY29udHJvbCxcbiAgICAuY3VzdG9tLXNlbGVjdCxcbiAgICAuY3VzdG9tLWZpbGUtbGFiZWwsXG4gICAgLmlucHV0LWdyb3VwLXRleHQge1xuICAgICAgcGFkZGluZy1ib3R0b206IGNhbGMoI3skcGFkZGluZy15fSAtIDFweCk7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAuZm9ybS1jb250cm9sLSN7JHNpemV9LFxuICAgIC5jdXN0b20tc2VsZWN0LSN7JHNpemV9LFxuICAgIC5pbnB1dC1ncm91cC0jeyRzaXplfSA+IC5mb3JtLWNvbnRyb2wsXG4gICAgLmlucHV0LWdyb3VwLSN7JHNpemV9ID4gLmN1c3RvbS1zZWxlY3QsXG4gICAgLmlucHV0LWdyb3VwLSN7JHNpemV9IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQge1xuICAgICAgcGFkZGluZy1ib3R0b206IGNhbGMoI3skcGFkZGluZy15fSAtIDFweCk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBhcHB3b3JrLWZvcm0tY29udHJvbC10aGVtZSgkY29sb3IpIHtcbiAgLmZvcm0tY29udHJvbDpmb2N1cyxcbiAgLmN1c3RvbS1zZWxlY3Q6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbkBtaXhpbiBhcHB3b3JrLW1hdGVyaWFsLWZvcm0tY29udHJvbC10aGVtZSgkY29sb3IpIHtcbiAgLmZvcm0tY29udHJvbDpmb2N1cyxcbiAgLmN1c3RvbS1zZWxlY3Q6Zm9jdXMge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvcjtcbiAgICBib3gtc2hhZG93OiAwIC0xcHggMCAwICRjb2xvciBpbnNldDtcbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFN3aXRjaGVyc1xuXG5AbWl4aW4gYXBwd29yay1zd2l0Y2hlci1zaXplLWJhc2UoJHdpZHRoLCAkaGVpZ2h0LCAkZm9udC1zaXplLCAkZGVzY3JpcHRpb24tZm9udC1zaXplLCAkZGVzY3JpcHRpb24tbGluZS1oZWlnaHQsICRpbm5lci1zcGFjZXI6ICRzd2l0Y2hlci1pbm5lci1zcGFjZXIpIHtcbiAgcGFkZGluZy1sZWZ0OiAkd2lkdGg7XG4gIG1pbi1oZWlnaHQ6ICRoZWlnaHQ7XG4gIGZvbnQtc2l6ZTogJGRlc2NyaXB0aW9uLWZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6ICRkZXNjcmlwdGlvbi1saW5lLWhlaWdodDtcblxuICAkbGluZS1oZWlnaHQtY29tcHV0ZWQ6ICRkZXNjcmlwdGlvbi1mb250LXNpemUgKiAkZGVzY3JpcHRpb24tbGluZS1oZWlnaHQ7XG4gICRkZWx0YTogaWYoJG1hdGVyaWFsLXN0eWxlLCBweC10by1yZW0oY2VpbChyZW0tdG8tcHgoJGhlaWdodCAqIC4xMjUpKSksIDApO1xuXG4gIC5zd2l0Y2hlci1pbmRpY2F0b3Ige1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gICAgaGVpZ2h0OiAkaGVpZ2h0IC0gKCRkZWx0YSAqIDIpO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGhlaWdodDtcblxuICAgIEBpZiAkbGluZS1oZWlnaHQtY29tcHV0ZWQgPiAkaGVpZ2h0IHtcbiAgICAgIHRvcDogKCgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLSAkaGVpZ2h0KSAvIDIpICsgJGRlbHRhO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdG9wOiAwICsgJGRlbHRhO1xuICAgIH1cbiAgfVxuXG4gIC5zd2l0Y2hlci1sYWJlbCB7XG4gICAgQGlmICRsaW5lLWhlaWdodC1jb21wdXRlZCA8ICRoZWlnaHQge1xuICAgICAgdG9wOiAoJGhlaWdodCAtICRsaW5lLWhlaWdodC1jb21wdXRlZCkgLyAyO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdG9wOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5zd2l0Y2hlci1pbnB1dDpjaGVja2VkIH4gLnN3aXRjaGVyLWluZGljYXRvcjo6YWZ0ZXIge1xuICAgIGxlZnQ6ICR3aWR0aCAtICRoZWlnaHQ7XG4gIH1cblxuICAuc3dpdGNoZXItaW5kaWNhdG9yOjphZnRlciB7XG4gICAgdG9wOiAkZGVsdGEgKiAtMTtcbiAgICBtYXJnaW46ICRpbm5lci1zcGFjZXIgMCAwICRpbm5lci1zcGFjZXI7XG4gICAgd2lkdGg6ICRoZWlnaHQgLSAkaW5uZXItc3BhY2VyICogMjtcbiAgICBoZWlnaHQ6ICRoZWlnaHQgLSAkaW5uZXItc3BhY2VyICogMjtcbiAgfVxuXG4gIC5zd2l0Y2hlci1ubyB7XG4gICAgcGFkZGluZy1yaWdodDogJGlubmVyLXNwYWNlcjtcbiAgICBwYWRkaW5nLWxlZnQ6ICRoZWlnaHQgLSAkaW5uZXItc3BhY2VyO1xuICB9XG5cbiAgLnN3aXRjaGVyLXllcyB7XG4gICAgcGFkZGluZy1yaWdodDogJGhlaWdodCAtICRpbm5lci1zcGFjZXI7XG4gICAgcGFkZGluZy1sZWZ0OiAkaW5uZXItc3BhY2VyO1xuICB9XG5cbiAgQGlmICRtYXRlcmlhbC1zdHlsZSB7XG4gICAgLnN3aXRjaGVyLWluZGljYXRvcjo6YmVmb3JlIHtcbiAgICAgIHRvcDogJGRlbHRhICogLTE7XG4gICAgICB3aWR0aDogJGhlaWdodDtcbiAgICAgIGhlaWdodDogJGhlaWdodDtcbiAgICB9XG5cbiAgICAuc3dpdGNoZXItaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2hlci1pbmRpY2F0b3I6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiAkd2lkdGggLSAkaGVpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkcnRsLXN1cHBvcnQge1xuICAgIFtkaXI9cnRsXSAmIC5zd2l0Y2hlci1pbnB1dDpjaGVja2VkIH4gLnN3aXRjaGVyLWluZGljYXRvcjo6YWZ0ZXIge1xuICAgICAgcmlnaHQ6ICR3aWR0aCAtICRoZWlnaHQ7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cblxuICAgIFtkaXI9cnRsXSAmIC5zd2l0Y2hlci1pbmRpY2F0b3I6OmFmdGVyIHtcbiAgICAgIG1hcmdpbi1yaWdodDogJGlubmVyLXNwYWNlcjtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cblxuICAgIFtkaXI9cnRsXSAmIC5zd2l0Y2hlci1ubyB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkaGVpZ2h0IC0gJGlubmVyLXNwYWNlcjtcbiAgICAgIHBhZGRpbmctbGVmdDogJGlubmVyLXNwYWNlcjtcbiAgICB9XG5cbiAgICBbZGlyPXJ0bF0gJiAuc3dpdGNoZXIteWVzIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbm5lci1zcGFjZXI7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRoZWlnaHQgLSAkaW5uZXItc3BhY2VyO1xuICAgIH1cblxuICAgIEBpZiAkbWF0ZXJpYWwtc3R5bGUge1xuICAgICAgW2Rpcj1ydGxdICYgLnN3aXRjaGVyLWlucHV0OmNoZWNrZWQgfiAuc3dpdGNoZXItaW5kaWNhdG9yOjpiZWZvcmUge1xuICAgICAgICByaWdodDogJHdpZHRoIC0gJGhlaWdodDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGFwcHdvcmstc3dpdGNoZXItc2l6ZSgkc2l6ZSwgJHdpZHRoLCAkaGVpZ2h0LCAkZm9udC1zaXplLCAkZGVzY3JpcHRpb24tZm9udC1zaXplLCAkZGVzY3JpcHRpb24tbGluZS1oZWlnaHQsICRpbm5lci1zcGFjZXI6ICRzd2l0Y2hlci1pbm5lci1zcGFjZXIpIHtcbiAgLnN3aXRjaGVyLSN7JHNpemV9LFxuICAuZm9ybS1ncm91cC0jeyRzaXplfSAuc3dpdGNoZXIge1xuICAgIEBpbmNsdWRlIGFwcHdvcmstc3dpdGNoZXItc2l6ZS1iYXNlKCR3aWR0aCwgJGhlaWdodCwgJGZvbnQtc2l6ZSwgJGRlc2NyaXB0aW9uLWZvbnQtc2l6ZSwgJGRlc2NyaXB0aW9uLWxpbmUtaGVpZ2h0LCAkaW5uZXItc3BhY2VyKTtcbiAgfVxufVxuXG5AbWl4aW4gYXBwd29yay1zd2l0Y2hlci12YXJpYW50KCRwYXJlbnQsICRiYWNrZ3JvdW5kLCAkY29sb3I6IG51bGwpIHtcbiAgJHNlbGVjdG9yOiBpZigkcGFyZW50ID09ICcnLCAnJywgJyN7JHBhcmVudH0uc3dpdGNoZXInKTtcbiAgJGNvbG9yOiBpZigkY29sb3IsICRjb2xvciwgeWlxKCRiYWNrZ3JvdW5kKSk7XG5cbiAgI3skc2VsZWN0b3J9IC5zd2l0Y2hlci1pbnB1dDpjaGVja2VkIH4gLnN3aXRjaGVyLWluZGljYXRvciB7XG4gICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gICN7JHNlbGVjdG9yfSAuc3dpdGNoZXItaW5wdXQ6Zm9jdXMgfiAuc3dpdGNoZXItaW5kaWNhdG9yIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAkY29tcG9uZW50LWZvY3VzLXNoYWRvdy13aWR0aCByZ2JhKCRiYWNrZ3JvdW5kLCAuNCk7XG4gIH1cblxuICAjeyRzZWxlY3Rvcn0gLnN3aXRjaGVyLWlucHV0OmFjdGl2ZSB+IC5zd2l0Y2hlci1pbmRpY2F0b3Ige1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIGFwcHdvcmstc3dpdGNoZXItdGhlbWUoJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICBAaW5jbHVkZSBhcHB3b3JrLXN3aXRjaGVyLXZhcmlhbnQoJycsICRiYWNrZ3JvdW5kLCAkY29sb3IpO1xufVxuXG5AbWl4aW4gYXBwd29yay1tYXRlcmlhbC1zd2l0Y2hlci12YXJpYW50KCRwYXJlbnQsICRiYWNrZ3JvdW5kKSB7XG4gICRzZWxlY3RvcjogaWYoJHBhcmVudCA9PSAnJywgJycsICcjeyRwYXJlbnR9LnN3aXRjaGVyJyk7XG5cbiAgI3skc2VsZWN0b3J9IC5zd2l0Y2hlci1pbnB1dDpjaGVja2VkIH4gLnN3aXRjaGVyLWluZGljYXRvciB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgkYmFja2dyb3VuZCwgLjUpO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGJhY2tncm91bmQsIC4xNSk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBhcHB3b3JrLW1hdGVyaWFsLXN3aXRjaGVyLXRoZW1lKCRiYWNrZ3JvdW5kKSB7XG4gIEBpbmNsdWRlIGFwcHdvcmstbWF0ZXJpYWwtc3dpdGNoZXItdmFyaWFudCgnJywgJGJhY2tncm91bmQpO1xufVxuXG5AbWl4aW4gYXBwd29yay1zd2l0Y2hlci12YWxpZGF0aW9uLXN0YXRlKCRzdGF0ZSwgJGNvbG9yKSB7XG4gIC5zd2l0Y2hlci1pbnB1dFtjbGFzc10ge1xuICAgIC53YXMtdmFsaWRhdGVkICY6I3skc3RhdGV9LFxuICAgICYuaXMtI3skc3RhdGV9IHtcbiAgICAgICY6Y2hlY2tlZCB+IC5zd2l0Y2hlci1pbmRpY2F0b3Ige1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgICAgIGNvbG9yOiB5aXEoJGNvbG9yKTtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB+IC5zd2l0Y2hlci1pbmRpY2F0b3Ige1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkY29tcG9uZW50LWZvY3VzLXNoYWRvdy13aWR0aCByZ2JhKCRjb2xvciwgLjQpO1xuICAgICAgfVxuXG4gICAgICAmOmFjdGl2ZSB+IC5zd2l0Y2hlci1pbmRpY2F0b3Ige1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgfVxuXG4gICAgICB+IC5zd2l0Y2hlci1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICB9XG5cbiAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBhcHB3b3JrLW1hdGVyaWFsLXN3aXRjaGVyLXZhbGlkYXRpb24tc3RhdGUoJHN0YXRlLCAkY29sb3IpIHtcbiAgLnN3aXRjaGVyLWlucHV0W2NsYXNzXSB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgfiAuc3dpdGNoZXItaW5kaWNhdG9yW2NsYXNzXSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGNvbG9yLCAuNSk7XG4gICAgICB9XG5cbiAgICAgICY6Y2hlY2tlZCB+IC5zd2l0Y2hlci1pbmRpY2F0b3Ige1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRjb2xvciwgLjE1KTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICB+IC5zd2l0Y2hlci1sYWJlbCB7XG4gICAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogVGFibGVzXG5cbkBtaXhpbiB0YWJsZS1yb3ctdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkYm9yZGVyOiBudWxsKSB7fVxuXG5AbWl4aW4gYXBwd29yay10YWJsZS1yb3ctdmFyaWFudCgkcGFyZW50LCAkYmFja2dyb3VuZCkge1xuICAkYmc6IHJnYmEtdG8taGV4KHJnYmEoJGJhY2tncm91bmQsIC4xKSwgI2ZmZik7XG4gICRjb2xvcjogeWlxKCRiZyk7XG4gICRob3Zlci1iZzogcmdiYS10by1oZXgocmdiYSgkYmcsIC45OSksICMwMDApO1xuXG4gIC50YWJsZSAjeyRwYXJlbnR9LFxuICAudGFibGUgI3skcGFyZW50fSA+IHRoLFxuICAudGFibGUgI3skcGFyZW50fSA+IHRkIHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwwLDAsLjAzNSkgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmc7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gIC50YWJsZS1ob3ZlciAjeyRwYXJlbnR9OmhvdmVyLFxuICAudGFibGUtaG92ZXIgI3skcGFyZW50fTpob3ZlciA+IHRkLFxuICAudGFibGUtaG92ZXIgI3skcGFyZW50fTpob3ZlciA+IHRoIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItYmc7XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBOYXZiYXJcblxuQG1peGluIGFwcHdvcmstbmF2YmFyLXZhcmlhbnQoJHBhcmVudCwgJGJnLCAkY29sb3I6IG51bGwsICRhY3RpdmUtY29sb3I6IG51bGwsICRib3JkZXI6IG51bGwpIHtcbiAgJGNvbG9yczogZ2V0LW5hdi1jb2xvcnMoJGJnLCAkYWN0aXZlLWNvbG9yLCAkY29sb3IsICRib3JkZXIpO1xuXG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYmcpICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgY29sb3IpO1xuXG4gICAgLm5hdmJhci1icmFuZCB7XG4gICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBhY3RpdmUtY29sb3IpO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGFjdGl2ZS1jb2xvcik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm5hdmJhci1uYXYge1xuICAgICAgLm5hdi1saW5rIHtcbiAgICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgY29sb3IpO1xuXG4gICAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBhY3RpdmUtY29sb3IpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgZGlzYWJsZWQtY29sb3IpICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnNob3cgPiAubmF2LWxpbmssXG4gICAgICAuYWN0aXZlID4gLm5hdi1saW5rLFxuICAgICAgLm5hdi1saW5rLnNob3csXG4gICAgICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYWN0aXZlLWNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubmF2YmFyLXRvZ2dsZXIge1xuICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgY29sb3IpO1xuICAgICAgYm9yZGVyLWNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGJvcmRlcik7XG4gICAgfVxuXG4gICAgLm5hdmJhci10b2dnbGVyLWljb24ge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogaWYobWFwLWdldCgkY29sb3JzLCBhY3RpdmUtY29sb3IpID09ICNmZmYsICRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmcsICRuYXZiYXItbGlnaHQtdG9nZ2xlci1pY29uLWJnKTtcbiAgICB9XG5cbiAgICAubmF2YmFyLXRleHQge1xuICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgY29sb3IpO1xuXG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYWN0aXZlLWNvbG9yKTtcblxuICAgICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYWN0aXZlLWNvbG9yKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGhyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogbWFwLWdldCgkY29sb3JzLCBib3JkZXIpO1xuICAgIH1cbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFNpZGVuYXZcblxuQG1peGluIGFwcHdvcmstc2lkZW5hdi12YXJpYW50KCRwYXJlbnQsICRiZywgJGNvbG9yOiBudWxsLCAkYWN0aXZlLWNvbG9yOiBudWxsLCAkYm9yZGVyOiBudWxsLCAkbWVudS1iZzogbnVsbCkge1xuICAkY29sb3JzOiBnZXQtbmF2LWNvbG9ycygkYmcsICRhY3RpdmUtY29sb3IsICRjb2xvciwgJGJvcmRlcik7XG4gICR5aXEtcGVyY2VudDogbWFwLWdldCgkY29sb3JzLCB5aXEtcGVyY2VudCk7XG5cbiAgQGlmIG5vdCAkbWVudS1iZyB7XG4gICAgJG1lbnUtYmc6IHJnYmEtdG8taGV4KHJnYmEobWFwLWdldCgkY29sb3JzLCBiZyksIDEgLSBpZigkeWlxLXBlcmNlbnQgPiAuNzUsIC4wMjUsIC4wNSkpLCBpZigkeWlxLXBlcmNlbnQgPCAuMjUsICNmZmYsICMwMDApKTtcbiAgfVxuXG4gICRtZW51LWFjdGl2ZS1iZzogcmdiYS10by1oZXgocmdiYSgkbWVudS1iZywgMSAtIGlmKCR5aXEtcGVyY2VudCA+IC43NSwgLjAyNSwgLjA1KSksIGlmKCR5aXEtcGVyY2VudCA8IC4yNSwgI2ZmZiwgIzAwMCkpO1xuXG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYmcpICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgY29sb3IpO1xuXG4gICAgLnNpZGVuYXYtbGluayxcbiAgICAuc2lkZW5hdi1ob3Jpem9udGFsLXByZXYsXG4gICAgLnNpZGVuYXYtaG9yaXpvbnRhbC1uZXh0IHtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGNvbG9yKTtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBhY3RpdmUtY29sb3IpO1xuICAgICAgfVxuXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGFjdGl2ZS1jb2xvcik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNpZGVuYXYtaXRlbS5kaXNhYmxlZCAuc2lkZW5hdi1saW5rLFxuICAgIC5zaWRlbmF2LWhvcml6b250YWwtcHJldi5kaXNhYmxlZCxcbiAgICAuc2lkZW5hdi1ob3Jpem9udGFsLW5leHQuZGlzYWJsZWQge1xuICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgZGlzYWJsZWQtY29sb3IpICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnNpZGVuYXYtaXRlbS5vcGVuOm5vdCguc2lkZW5hdi1pdGVtLWNsb3NpbmcpID4gLnNpZGVuYXYtdG9nZ2xlLFxuICAgIC5zaWRlbmF2LWl0ZW0uYWN0aXZlID4gLnNpZGVuYXYtbGluayB7XG4gICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBhY3RpdmUtY29sb3IpO1xuICAgIH1cblxuICAgIC5zaWRlbmF2LWl0ZW0uYWN0aXZlID4gLnNpZGVuYXYtbGluazpub3QoLnNpZGVuYXYtdG9nZ2xlKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWVudS1iZztcbiAgICB9XG5cbiAgICAmLnNpZGVuYXYtaG9yaXpvbnRhbCAuc2lkZW5hdi1tZW51ID4gLnNpZGVuYXYtaXRlbS5hY3RpdmUgPiAuc2lkZW5hdi1saW5rOm5vdCguc2lkZW5hdi10b2dnbGUpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtZW51LWFjdGl2ZS1iZztcbiAgICB9XG5cbiAgICAmLnNpZGVuYXYtaG9yaXpvbnRhbCAuc2lkZW5hdi1pbm5lciA+IC5zaWRlbmF2LWl0ZW06bm90KC5zaWRlbmF2LWl0ZW0tY2xvc2luZykgPiAuc2lkZW5hdi1tZW51LFxuICAgICYuc2lkZW5hdi1ob3Jpem9udGFsIC5zaWRlbmF2LWlubmVyID4gLnNpZGVuYXYtaXRlbS5vcGVuID4gLnNpZGVuYXYtdG9nZ2xlIHtcbiAgICAgIGJhY2tncm91bmQ6ICRtZW51LWJnO1xuICAgIH1cblxuICAgIC5zaWRlbmF2LWlubmVyID4gLnNpZGVuYXYtaXRlbS5zaWRlbmF2LWl0ZW0tY2xvc2luZyAuc2lkZW5hdi1pdGVtLm9wZW4gLnNpZGVuYXYtbWVudSxcbiAgICAuc2lkZW5hdi1pbm5lciA+IC5zaWRlbmF2LWl0ZW0uc2lkZW5hdi1pdGVtLWNsb3NpbmcgLnNpZGVuYXYtaXRlbS5vcGVuIC5zaWRlbmF2LXRvZ2dsZSB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGNvbG9yKTtcbiAgICB9XG5cbiAgICAuc2lkZW5hdi10ZXh0IHtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGFjdGl2ZS1jb2xvcik7XG4gICAgfVxuXG4gICAgLnNpZGVuYXYtaGVhZGVyIHtcbiAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIG11dGVkLWNvbG9yKTtcbiAgICB9XG5cbiAgICBocixcbiAgICAuc2lkZW5hdi1kaXZpZGVyLFxuICAgIC5zaWRlbmF2LWlubmVyID4gLnNpZGVuYXYtaXRlbS5vcGVuID4gLnNpZGVuYXYtbWVudTo6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogbWFwLWdldCgkY29sb3JzLCBib3JkZXIpICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnNpZGVuYXYtaW5uZXIgPiAuc2lkZW5hdi1oZWFkZXI6OmJlZm9yZSxcbiAgICAuc2lkZW5hdi1ibG9jazo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYm9yZGVyKTtcbiAgICB9XG5cbiAgICAuc2lkZW5hdi1pbm5lciA+IC5zaWRlbmF2LWl0ZW0ub3BlbiAuc2lkZW5hdi1pdGVtLm9wZW4gPiAuc2lkZW5hdi10b2dnbGU6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhLXRvLWhleChtYXAtZ2V0KCRjb2xvcnMsIGJvcmRlciksICRtZW51LWJnKTtcbiAgICB9XG5cbiAgICAuc2lkZW5hdi1pbm5lciA+IC5zaWRlbmF2LWl0ZW0ub3BlbiAuc2lkZW5hdi1pdGVtLmFjdGl2ZSA+IC5zaWRlbmF2LWxpbms6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGFjdGl2ZS1jb2xvcik7XG4gICAgfVxuXG4gICAgLnNpZGVuYXYtaW5uZXIgPiAuc2lkZW5hdi1pdGVtLm9wZW4gLnNpZGVuYXYtaXRlbS5vcGVuID4gLnNpZGVuYXYtdG9nZ2xlOjpiZWZvcmUsXG4gICAgLnNpZGVuYXYtaW5uZXIgPiAuc2lkZW5hdi1pdGVtLm9wZW4gLnNpZGVuYXYtaXRlbS5hY3RpdmUgPiAuc2lkZW5hdi1saW5rOjpiZWZvcmUge1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICRtZW51LWJnO1xuICAgIH1cblxuICAgIC5wc19fdGh1bWIteSxcbiAgICAucHNfX3JhaWwteS5wcy0tY2xpY2tpbmcgPiAucHNfX3RodW1iLXkge1xuICAgICAgYmFja2dyb3VuZDogcmdiYShtYXAtZ2V0KCRjb2xvcnMsIGFjdGl2ZS1jb2xvciksIGlmKCR5aXEtcGVyY2VudCA+IC43NSwgbWFwLWdldCgkY29sb3JzLCBvcGFjaXR5KSAtIC40LCBtYXAtZ2V0KCRjb2xvcnMsIG9wYWNpdHkpIC0gLjIpKSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEZvb3RlclxuXG5AbWl4aW4gYXBwd29yay1mb290ZXItdmFyaWFudCgkcGFyZW50LCAkYmcsICRjb2xvcjogbnVsbCwgJGFjdGl2ZS1jb2xvcjogbnVsbCwgJGJvcmRlcjogbnVsbCkge1xuICAkY29sb3JzOiBnZXQtbmF2LWNvbG9ycygkYmcsICRhY3RpdmUtY29sb3IsICRjb2xvciwgJGJvcmRlcik7XG5cbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLWdldCgkY29sb3JzLCBiZykgIWltcG9ydGFudDtcbiAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBjb2xvcik7XG5cbiAgICAuZm9vdGVyLWxpbmsge1xuICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgY29sb3IpO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGFjdGl2ZS1jb2xvcik7XG4gICAgICB9XG5cbiAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBkaXNhYmxlZC1jb2xvcikgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZm9vdGVyLXRleHQge1xuICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYWN0aXZlLWNvbG9yKTtcbiAgICB9XG5cbiAgICAuc2hvdyA+IC5mb290ZXItbGluayxcbiAgICAuYWN0aXZlID4gLmZvb3Rlci1saW5rLFxuICAgIC5mb290ZXItbGluay5zaG93LFxuICAgIC5mb290ZXItbGluay5hY3RpdmUge1xuICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYWN0aXZlLWNvbG9yKTtcbiAgICB9XG5cbiAgICBociB7XG4gICAgICBib3JkZXItY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYm9yZGVyKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGFwcHdvcmstdG9hc3QtdmFyaWFudCgkcGFyZW50LCAkYmFja2dyb3VuZCwgJGNvbG9yOiBudWxsKSB7XG4gICRjb2xvcjogaWYoJGNvbG9yLCAkY29sb3IsIHlpcSgkYmFja2dyb3VuZCkpO1xuXG4gICN7JHBhcmVudH0uYnM0LXRvYXN0IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJhY2tncm91bmQsIC45KSAhaW1wb3J0YW50O1xuXG4gICAgLnRvYXN0LWhlYWRlciB7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3IsIC4xKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGFwcHdvcmstdG9hc3QtdGhlbWUoJHBhcmVudCwgJGJhY2tncm91bmQsICRjb2xvcjogbnVsbCkge1xuICBAaW5jbHVkZSBhcHB3b3JrLXRvYXN0LXZhcmlhbnQoJHBhcmVudCwgJGJhY2tncm91bmQsICRjb2xvcik7XG59XG4iLCIvLyBCYXNlXG4vL1xuXG5ib2R5IHtcbiAgLW1vei1mb250LWZlYXR1cmUtc2V0dGluZ3M6IFwibGlnYVwiIG9uO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgICBmb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxufVxuXG5AaWYgJG1hdGVyaWFsLXN0eWxlIHtcbiAgLndhdmVzLXJpcHBsZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBJRSBGaXhlc1xuXG5AbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuICAvLyBGaXggSUUgcGFyZW50IGNvbnRhaW5lciBoZWlnaHQgYnVnIHdoZW4gY29udGFpbmluZyBpbWFnZSB3aXRoIGZsdWlkIHdpZHRoXG4gIC5jYXJkLFxuICAuY2FyZC1ib2R5LFxuICAubWVkaWEsXG4gIC5mbGV4LWNvbHVtbixcbiAgLnRhYi1jb250ZW50IHtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gIH1cblxuICBpbWcge1xuICAgIG1pbi1oZWlnaHQ6IDFweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBDb250YWluZXJzXG5cbi5jb250YWluZXIsXG4uY29udGFpbmVyLWZsdWlkIHtcbiAgcGFkZGluZy1yaWdodDogJGNvbnRhaW5lci1wYWRkaW5nLXgtc207XG4gIHBhZGRpbmctbGVmdDogJGNvbnRhaW5lci1wYWRkaW5nLXgtc207XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRjb250YWluZXItcGFkZGluZy14O1xuICAgIHBhZGRpbmctbGVmdDogJGNvbnRhaW5lci1wYWRkaW5nLXg7XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBUaHVtYm5haWxzXG5cbi5pbWctdGh1bWJuYWlsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmltZy10aHVtYm5haWwgaW1nIHtcbiAgei1pbmRleDogMTtcbn1cblxuLmltZy10aHVtYm5haWwtY29udGVudCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgei1pbmRleDogMztcbiAgZGlzcGxheTogYmxvY2s7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuXG4gIC5pbWctdGh1bWJuYWlsOmhvdmVyICYsXG4gIC5pbWctdGh1bWJuYWlsOmZvY3VzICYge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLy8gT3ZlcmxheSBlZmZlY3Rcbi5pbWctdGh1bWJuYWlsLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZS1pbi1vdXQ7XG5cbiAgLmltZy10aHVtYm5haWw6bm90KDpob3Zlcik6bm90KDpmb2N1cykgJiB7XG4gICAgb3BhY2l0eTogMCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5pbWctdGh1bWJuYWlsLXNoYWRvdyB7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgLjJzO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAwIDVweCAyMHB4IHJnYmEoJGJsYWNrLCAuNCk7XG4gIH1cbn1cblxuLy8gWm9vbS1pbiBlZmZlY3Rcbi5pbWctdGh1bWJuYWlsLXpvb20taW4ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIGltZyB7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDApO1xuICB9XG5cbiAgLmltZy10aHVtYm5haWwtY29udGVudCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgc2NhbGUoLjYpO1xuICB9XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIGltZyB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgfVxuXG4gICAgLmltZy10aHVtYm5haWwtY29udGVudCB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSgxKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBNYXRlcmlhbCBhbmltYXRpb25zXG5cbkBpZiBub3QgJG1hdGVyaWFsLXN0eWxlIHtcbiAgQGluY2x1ZGUga2V5ZnJhbWVzKGRyb3Bkb3duQW5pbWF0aW9uKSB7XG4gICAgMCUge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxufSBAZWxzZSB7XG4gIEBpbmNsdWRlIGtleWZyYW1lcyhkcm9wZG93bkFuaW1hdGlvbikge1xuICAgIDAlIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIH1cbiAgICA4MCUge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBrZXlmcmFtZXModG9wVG9vbHRpcEFuaW1hdGlvbikge1xuICAgIDAlIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoM3B4KTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBrZXlmcmFtZXMoYm90dG9tVG9vbHRpcEFuaW1hdGlvbikge1xuICAgIDAlIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTNweCk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUga2V5ZnJhbWVzKGxlZnRUb29sdGlwQW5pbWF0aW9uKSB7XG4gICAgMCUge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGtleWZyYW1lcyhyaWdodFRvb2x0aXBBbmltYXRpb24pIHtcbiAgICAwJSB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgfVxuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogUlRMXG5cbkBpZiAkcnRsLXN1cHBvcnQge1xuICBbZGlyPXJ0bF0gYm9keSB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgZGlyZWN0aW9uOiBydGw7XG4gIH1cbn1cbiIsIi8vIEZ1bmN0aW9uc1xuLy9cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBNYXRoXG5cbiRwaTogMy4xNDE1OTI2NTM1OTtcbiRfcHJlY2lzaW9uOiAxMDtcblxuQGZ1bmN0aW9uIHBvdygkYmFzZSwgJGV4cCkge1xuICAkdmFsdWU6ICRiYXNlO1xuICBAaWYgJGV4cCA+IDEge1xuICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGV4cCB7XG4gICAgICAkdmFsdWU6ICR2YWx1ZSAqICRiYXNlO1xuICAgIH1cbiAgfVxuICBAaWYgJGV4cCA8IDF7XG4gICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAtJGV4cCB7XG4gICAgICAkdmFsdWU6ICR2YWx1ZSAvICRiYXNlO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuQGZ1bmN0aW9uIHNxcnQoJHIpIHtcbiAgJHgwOiAxO1xuICAkeDE6ICR4MDtcblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDEwIHtcbiAgICAkeDE6ICR4MCAtICgkeDAgKiAkeDAgLSBhYnMoJHIpKSAvICgyICogJHgwKTtcbiAgICAkeDA6ICR4MTtcbiAgfVxuXG4gIEByZXR1cm4gJHgxO1xufVxuXG5AZnVuY3Rpb24gZmFjdCgkbnVtKSB7XG4gICRmYWN0OiAxO1xuICBAaWYgJG51bSA+IDB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkbnVtIHtcbiAgICAgICRmYWN0OiAkZmFjdCAqICRpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRmYWN0O1xufVxuXG5AZnVuY3Rpb24gX3RvX3VuaXRsZXNzX3JhZCgkYW5nbGUpIHtcbiAgQGlmIHVuaXQoJGFuZ2xlKSA9PSBcImRlZ1wiIHtcbiAgICAkYW5nbGU6ICRhbmdsZSAvIDE4MGRlZyAqICRwaTtcbiAgfVxuICBAaWYgdW5pdCgkYW5nbGUpID09IFwicmFkXCIge1xuICAgICRhbmdsZTogJGFuZ2xlIC8gMXJhZDtcbiAgfVxuICBAcmV0dXJuICRhbmdsZTtcbn1cblxuQGZ1bmN0aW9uIHNpbigkYW5nbGUpe1xuICAkYTogX3RvX3VuaXRsZXNzX3JhZCgkYW5nbGUpO1xuICAkc2luOiAkYTtcbiAgQGZvciAkbiBmcm9tIDEgdGhyb3VnaCAkX3ByZWNpc2lvbiB7XG4gICAgJHNpbjogJHNpbiArIChwb3coLTEsICRuKSAvIGZhY3QoMiAqICRuICsgMSkgKSAqIHBvdygkYSwgKDIgKiAkbiArIDEpKTtcbiAgfVxuICBAcmV0dXJuICRzaW47XG59XG5cbkBmdW5jdGlvbiBjb3MoJGFuZ2xlKXtcbiAgJGE6IF90b191bml0bGVzc19yYWQoJGFuZ2xlKTtcbiAgJGNvczogMTtcbiAgQGZvciAkbiBmcm9tIDEgdGhyb3VnaCAkX3ByZWNpc2lvbiB7XG4gICAgJGNvczogJGNvcyArICggcG93KC0xLCRuKSAvIGZhY3QoMiokbikgKSAqIHBvdygkYSwyKiRuKTtcbiAgfVxuICBAcmV0dXJuICRjb3M7XG59XG5cbkBmdW5jdGlvbiB0YW4oJGFuZ2xlKXtcbiAgQHJldHVybiBzaW4oJGFuZ2xlKSAvIGNvcygkYW5nbGUpO1xufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIExpc3RzXG5cbkBmdW5jdGlvbiBzbGljZS1saXN0KCRsaXN0LCAkc3RhcnQ6IDEsICRlbmQ6IGxlbmd0aCgkbGlzdCkpIHtcbiAgJHJlc3VsdDogbnVsbDtcblxuICBAaWYgdHlwZS1vZigkc3RhcnQpICE9IG51bWJlciBvciB0eXBlLW9mKCRlbmQpICE9IG51bWJlciB7XG4gICAgQHdhcm4gXCJFaXRoZXIgJHN0YXJ0IG9yICRlbmQgYXJlIG5vdCBhIG51bWJlciBmb3IgYHNsaWNlYC5cIjtcbiAgfVxuXG4gIEBlbHNlIGlmICRzdGFydCA+ICRlbmQge1xuICAgIEB3YXJuIFwiVGhlIHN0YXJ0IGluZGV4IGhhcyB0byBiZSBsZXNzZXIgdGhhbiBvciBlcXVhbHMgdG8gdGhlIGVuZCBpbmRleCBmb3IgYHNsaWNlYC5cIjtcbiAgfVxuXG4gIEBlbHNlIGlmICRzdGFydCA8IDEgb3IgJGVuZCA8IDEge1xuICAgIEB3YXJuIFwiTGlzdCBpbmRleGVzIG11c3QgYmUgbm9uLXplcm8gaW50ZWdlcnMgZm9yIGBzbGljZWAuXCI7XG4gIH1cblxuICBAZWxzZSBpZiAkc3RhcnQgPiBsZW5ndGgoJGxpc3QpIHtcbiAgICBAd2FybiBcIkxpc3QgaW5kZXggaXMgI3skc3RhcnR9IGJ1dCBsaXN0IGlzIG9ubHkgI3tsZW5ndGgoJGxpc3QpfSBpdGVtIGxvbmcgZm9yIGBzbGljZWAuXCI7XG4gIH1cblxuICBAZWxzZSBpZiAkZW5kID4gbGVuZ3RoKCRsaXN0KSB7XG4gICAgQHdhcm4gXCJMaXN0IGluZGV4IGlzICN7JGVuZH0gYnV0IGxpc3QgaXMgb25seSAje2xlbmd0aCgkbGlzdCl9IGl0ZW0gbG9uZyBmb3IgYHNsaWNlYC5cIjtcbiAgfVxuXG4gIEBlbHNlIHtcbiAgICAkcmVzdWx0OiAoKTtcblxuICAgIEBmb3IgJGkgZnJvbSAkc3RhcnQgdGhyb3VnaCAkZW5kIHtcbiAgICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCBudGgoJGxpc3QsICRpKSk7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkcmVzdWx0O1xufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFN0cmluZ3NcblxuQGZ1bmN0aW9uIHN0ci1yZXBsYWNlKCRzdHJpbmcsICRzZWFyY2gsICRyZXBsYWNlOiAnJykge1xuICAkaW5kZXg6IHN0ci1pbmRleCgkc3RyaW5nLCAkc2VhcmNoKTtcblxuICBAaWYgJGluZGV4IHtcbiAgICBAcmV0dXJuIHN0ci1zbGljZSgkc3RyaW5nLCAxLCAkaW5kZXggLSAxKSArICRyZXBsYWNlICsgc3RyLXJlcGxhY2Uoc3RyLXNsaWNlKCRzdHJpbmcsICRpbmRleCArIHN0ci1sZW5ndGgoJHNlYXJjaCkpLCAkc2VhcmNoLCAkcmVwbGFjZSk7XG4gIH1cblxuICBAcmV0dXJuICRzdHJpbmc7XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogQ29sb3JzXG5cbkBmdW5jdGlvbiByZ2JhLXRvLWhleCgkY29sb3IsICRiYWNrZ3JvdW5kOiAjZmZmKSB7XG4gIEBpZiAkY29sb3IgYW5kIGFscGhhKCRjb2xvcikgIT0gMSB7XG4gICAgJHBlcmNlbnQ6IGFscGhhKCRjb2xvcikgKiAxMDAlO1xuICAgICRvcGFxdWU6IG9wYWNpZnkoJGNvbG9yLCAxKTtcblxuICAgIEByZXR1cm4gbWl4KCRvcGFxdWUsICRiYWNrZ3JvdW5kLCAkcGVyY2VudCk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gJGNvbG9yO1xuICB9XG59XG5cbkBmdW5jdGlvbiB5aXEtdmFsdWUoJGNvbG9yKSB7XG4gIEBpZiAkY29sb3IgPT0gdHJhbnNwYXJlbnQge1xuICAgIEByZXR1cm4gJGJvZHktY29sb3I7XG4gIH0gQGVsc2UgaWYgYWxwaGEoJGNvbG9yKSAhPSAxIHtcbiAgICAkY29sb3I6IHJnYmEtdG8taGV4KCRjb2xvcik7XG4gIH1cblxuICAkcjogcmVkKCRjb2xvcik7XG4gICRnOiBncmVlbigkY29sb3IpO1xuICAkYjogYmx1ZSgkY29sb3IpO1xuXG4gIEByZXR1cm4gKCgkciAqIDI5OSkgKyAoJGcgKiA1ODcpICsgKCRiICogMTE0KSkgLyAxMDAwO1xufVxuXG4vLyBDb2xvciBjb250cmFzdFxuQGZ1bmN0aW9uIHlpcSgkY29sb3IpIHtcbiAgJHlpcTogeWlxLXZhbHVlKCRjb2xvcik7XG5cbiAgQGlmICgkeWlxID49IDE2MCkge1xuICAgIEByZXR1cm4gcmdiYS10by1oZXgocmdiYSgkY29sb3IsIC40MCksICMwMDApO1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuICNmZmY7XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBVbml0c1xuXG5AZnVuY3Rpb24gc3RyaXAtdW5pdCgkbnVtYmVyKSB7XG4gIEBpZiB0eXBlLW9mKCRudW1iZXIpID09ICdudW1iZXInIGFuZCBub3QgdW5pdGxlc3MoJG51bWJlcikge1xuICAgIEByZXR1cm4gJG51bWJlciAvICgkbnVtYmVyICogMCArIDEpO1xuICB9XG5cbiAgQHJldHVybiAkbnVtYmVyO1xufVxuXG5AZnVuY3Rpb24gcHgtdG8tcmVtKCR2YWx1ZSkge1xuICAvLyBBc3N1bWVzIHRoZSBicm93c2VyIGRlZmF1bHQgZm9udCBzaXplID0gYDE2cHhgXG4gIEByZXR1cm4gKHN0cmlwLXVuaXQoJHZhbHVlKSAvIDE2KSAqIDFyZW07XG59XG5cbkBmdW5jdGlvbiByZW0tdG8tcHgoJHZhbHVlKSB7XG4gIC8vIEFzc3VtZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCBmb250IHNpemUgPSBgMTZweGBcbiAgQHJldHVybiAoc3RyaXAtdW5pdCgkdmFsdWUpICogMTYpICogMXB4O1xufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFV0aWxpdGllc1xuXG5AZnVuY3Rpb24gZ2V0LWJ0bi1jb2xvcnMoJGJhY2tncm91bmQsICRib3JkZXIpIHtcbiAgQGlmICRiYWNrZ3JvdW5kID09IHRyYW5zcGFyZW50IHtcbiAgICAkYnRuLXNoYWRvdzogcmdiYShyZ2JhLXRvLWhleCgkYm9yZGVyLCAjMDAwKSwgLjA1KTtcblxuICAgIEByZXR1cm4gKFxuICAgICAgYmctaG92ZXI6ICByZ2JhKCRib3JkZXIsIC4wNiksXG4gICAgICBiZy1hY3RpdmU6IHJnYmEoJGJvcmRlciwgLjEyKSxcbiAgICAgIGJvcmRlcjogICAgJGJvcmRlcixcbiAgICAgIHNoYWRvdzogICAgaWYoJGVuYWJsZS1zaGFkb3dzLCAoJGJ0bi1ib3gtc2hhZG93LCAwIDAgMCAkY29tcG9uZW50LWZvY3VzLXNoYWRvdy13aWR0aCAkYnRuLXNoYWRvdyksIDAgMCAwICRjb21wb25lbnQtZm9jdXMtc2hhZG93LXdpZHRoICRidG4tc2hhZG93KVxuICAgICk7XG4gIH0gQGVsc2UgaWYgYWxwaGEoJGJhY2tncm91bmQpICE9IDEge1xuICAgICRiZy1hbHBoYTogICBhbHBoYSgkYmFja2dyb3VuZCk7XG4gICAgJGJ0bi1zaGFkb3c6IHJnYmEoJGJhY2tncm91bmQsICRiZy1hbHBoYSAtICgkYmctYWxwaGEgKiA1NSAvIDEwMCkgKTtcblxuICAgIEByZXR1cm4gKFxuICAgICAgYmctaG92ZXI6ICByZ2JhKCRiYWNrZ3JvdW5kLCAkYmctYWxwaGEgKyAwLjA1KSxcbiAgICAgIGJnLWFjdGl2ZTogcmdiYSgkYmFja2dyb3VuZCwgJGJnLWFscGhhICsgMC4xMyksXG4gICAgICBib3JkZXI6ICAgIHRyYW5zcGFyZW50LFxuICAgICAgc2hhZG93OiAgICBpZigkZW5hYmxlLXNoYWRvd3MsICgkYnRuLWJveC1zaGFkb3csIDAgMCAwICRjb21wb25lbnQtZm9jdXMtc2hhZG93LXdpZHRoICRidG4tc2hhZG93KSwgMCAwIDAgJGNvbXBvbmVudC1mb2N1cy1zaGFkb3ctd2lkdGggJGJ0bi1zaGFkb3cpXG4gICAgKTtcbiAgfSBAZWxzZSB7XG4gICAgQHJldHVybiAoXG4gICAgICBiZy1ob3ZlcjogIHJnYmEtdG8taGV4KHJnYmEoJGJhY2tncm91bmQsIC45NSksICMwMDApLFxuICAgICAgYmctYWN0aXZlOiByZ2JhLXRvLWhleChyZ2JhKCRiYWNrZ3JvdW5kLCAuODcpLCAjMDAwKSxcbiAgICAgIGJvcmRlcjogICAgdHJhbnNwYXJlbnQsXG4gICAgICBzaGFkb3c6ICAgIGlmKCRlbmFibGUtc2hhZG93cywgKCRidG4tYm94LXNoYWRvdywgMCAwIDAgJGNvbXBvbmVudC1mb2N1cy1zaGFkb3ctd2lkdGggcmdiYSgkYmFja2dyb3VuZCwgLjQpKSwgMCAwIDAgJGNvbXBvbmVudC1mb2N1cy1zaGFkb3ctd2lkdGggcmdiYSgkYmFja2dyb3VuZCwgLjQpKVxuICAgICk7XG4gIH1cbn1cblxuQGZ1bmN0aW9uIGdldC1tYXRlcmlhbC1idG4tY29sb3JzKCRiYWNrZ3JvdW5kKSB7XG4gIEBpZiBhbHBoYSgkYmFja2dyb3VuZCkgIT0gMSB7XG4gICAgJGJhY2tncm91bmQ6IHJnYmEtdG8taGV4KCRiYWNrZ3JvdW5kKTtcbiAgfVxuXG4gIEByZXR1cm4gKFxuICAgIGJnLWhvdmVyOiAgcmdiYS10by1oZXgocmdiYSgkYmFja2dyb3VuZCwgLjk1KSwgI2ZmZiksXG4gICAgYmctYWN0aXZlOiByZ2JhLXRvLWhleChyZ2JhKCRiYWNrZ3JvdW5kLCAuODcpLCAjZmZmKSxcbiAgKTtcbn1cblxuQGZ1bmN0aW9uIGdldC1uYXYtY29sb3JzKCRiZywgJGFjdGl2ZS1jb2xvcjogbnVsbCwgJGluYWN0aXZlLWNvbG9yOiBudWxsLCAkYm9yZGVyOiBudWxsKSB7XG4gICRiZzogcmdiYS10by1oZXgoJGJnKTtcbiAgJGFjdGl2ZS1jb2xvcjogcmdiYS10by1oZXgoJGFjdGl2ZS1jb2xvcik7XG4gICRhY3RpdmUtY29sb3I6IGlmKCRhY3RpdmUtY29sb3IsICRhY3RpdmUtY29sb3IsIHlpcSgkYmcpKTtcbiAgJHlpcS1wZXJjZW50OiB5aXEtdmFsdWUoJGJnKSAvIDI1NTtcbiAgJHlpcS1wZXJjZW50LWludmVydGVkOiAxIC0gJHlpcS1wZXJjZW50O1xuXG4gICRvcGFjaXR5OiBpZigkYWN0aXZlLWNvbG9yID09ICNmZmYsIC42ICsgKC40ICogJHlpcS1wZXJjZW50KSwgLjYgKyAoLjQgKiAoMSAtICR5aXEtcGVyY2VudCkpKTtcblxuICAkY29sb3I6IGlmKCRpbmFjdGl2ZS1jb2xvciwgcmdiYS10by1oZXgoJGluYWN0aXZlLWNvbG9yLCAkYmcpLCByZ2JhLXRvLWhleChyZ2JhKCRhY3RpdmUtY29sb3IsIGlmKCR5aXEtcGVyY2VudCA8IC4yNSwgJG9wYWNpdHkgLSAuMTUsICRvcGFjaXR5KSksICRiZykpO1xuICAkZGlzYWJsZWQtY29sb3I6IHJnYmEtdG8taGV4KHJnYmEoJGNvbG9yLCAuNiksICRiZyk7XG4gICRtdXRlZC1jb2xvcjogcmdiYS10by1oZXgocmdiYSgkY29sb3IsIC43NSksICRiZyk7XG4gICRib3JkZXI6IGlmKCRib3JkZXIsICRib3JkZXIsIGlmKCR5aXEtcGVyY2VudCA+IC43NSwgcmdiYSgkYWN0aXZlLWNvbG9yLCAkb3BhY2l0eSAvIDgpLCBpZigkeWlxLXBlcmNlbnQgPCAuMjUsIHJnYmEoJGFjdGl2ZS1jb2xvciwgLjA2KSwgcmdiYSgkYWN0aXZlLWNvbG9yLCAuMTUpKSkpO1xuXG4gIEByZXR1cm4gKFxuICAgIC8vIE1ldGFkYXRhXG4gICAgb3BhY2l0eTogJG9wYWNpdHksXG4gICAgeWlxLXBlcmNlbnQ6ICR5aXEtcGVyY2VudCxcbiAgICB5aXEtcGVyY2VudC1pbnZlcnRlZDogJHlpcS1wZXJjZW50LWludmVydGVkLFxuXG4gICAgLy8gQ29sb3JzXG4gICAgYmc6ICRiZyxcbiAgICBjb2xvcjogJGNvbG9yLFxuICAgIGFjdGl2ZS1jb2xvcjogJGFjdGl2ZS1jb2xvcixcbiAgICBkaXNhYmxlZC1jb2xvcjogJGRpc2FibGVkLWNvbG9yLFxuICAgIG11dGVkLWNvbG9yOiAkbXV0ZWQtY29sb3IsXG4gICAgYm9yZGVyOiAkYm9yZGVyXG4gICk7XG59XG4iLCIvLyBUYWJsZXNcbi8vXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAgIEBpZiAkY29sb3IgIT0gcHJpbWFyeSBhbmQgJGNvbG9yICE9IGxpZ2h0IHtcbiAgICAgICAgQGluY2x1ZGUgYXBwd29yay10YWJsZS1yb3ctdmFyaWFudCgnLnRhYmxlLSN7JGNvbG9yfScsICR2YWx1ZSk7XG4gICAgfVxufVxuXG4udGFibGUudGFibGUtZml4ZWQge1xuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG59XG5cbi50YWJsZSB0aCB7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pYm9sZDtcbn1cblxuLnRhYmxlID4gdHIsXG4jYm9vdHN0cmFwLXRhYmxlLW15dGFza3MgPiB0Ym9keSA+IHRyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXIgIWltcG9ydGFudDtcbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBBY3RpdmVcblxuLnRhYmxlLWFjdGl2ZSxcbi50YWJsZS1hY3RpdmUgPiB0aCxcbi50YWJsZS1hY3RpdmUgPiB0ZCB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKCRibGFjaywgLjAzNSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWFjdGl2ZS1iZztcbn1cblxuLnRhYmxlLWhvdmVyIC50YWJsZS1hY3RpdmU6aG92ZXIsXG4udGFibGUtaG92ZXIgLnRhYmxlLWFjdGl2ZTpob3ZlciA+IHRkLFxuLnRhYmxlLWhvdmVyIC50YWJsZS1hY3RpdmU6aG92ZXIgPiB0aCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYS10by1oZXgocmdiYSgkdGFibGUtYWN0aXZlLWJnLCAuOTkpLCAjMDAwKTtcbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBXaXRoaW4gY2FyZFxuXG4uY2FyZC10YWJsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQsXG4ubmF2LXRhYnMtdG9wLFxuLm5hdi10YWJzLXJpZ2h0LFxuLm5hdi10YWJzLWJvdHRvbSxcbi5uYXYtdGFicy1sZWZ0IHtcbiAgICAudGFibGU6bm90KC50YWJsZS1kYXJrKSxcbiAgICAudGFibGU6bm90KC50YWJsZS1kYXJrKSB0aGVhZDpub3QoLnRoZWFkLWRhcmspIHRoLFxuICAgIC50YWJsZTpub3QoLnRhYmxlLWRhcmspIHRkIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhLXRvLWhleCgkY2FyZC1pbm5lci1ib3JkZXItY29sb3IpO1xuICAgIH1cbn1cblxuLmNhcmQtdGFibGUgPiB0aGVhZDpmaXJzdC1jaGlsZCA+IHRyOmZpcnN0LWNoaWxkLFxuLmNhcmQtdGFibGUgPiB0Ym9keTpmaXJzdC1jaGlsZCA+IHRyOmZpcnN0LWNoaWxkLFxuLmNhcmQtdGFibGUgPiB0Zm9vdDpmaXJzdC1jaGlsZCA+IHRyOmZpcnN0LWNoaWxkIHtcbiAgICA+IHRkLFxuICAgID4gdGgge1xuICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgIH1cbn1cblxuQGluY2x1ZGUgbHRyLW9ubHkge1xuICAgIC5jYXJkLXRhYmxlID4gdGhlYWQgPiB0cixcbiAgICAuY2FyZC10YWJsZSA+IHRib2R5ID4gdHIsXG4gICAgLmNhcmQtdGFibGUgPiB0Zm9vdCA+IHRyIHtcbiAgICAgICAgPiB0ZCxcbiAgICAgICAgPiB0aCB7XG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRjYXJkLXNwYWNlci14O1xuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRjYXJkLXNwYWNlci14O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAvLyBDb25kZW5jZWRcbiAgICAuY2FyZC1jb25kZW5jZWQgLmNhcmQtdGFibGUgPiB0aGVhZCA+IHRyLFxuICAgIC5jYXJkLWNvbmRlbmNlZCAuY2FyZC10YWJsZSA+IHRib2R5ID4gdHIsXG4gICAgLmNhcmQtY29uZGVuY2VkIC5jYXJkLXRhYmxlID4gdGZvb3QgPiB0ciB7XG4gICAgICAgID4gdGQsXG4gICAgICAgID4gdGgge1xuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkY2FyZC1zcGFjZXIteC1zbTtcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkY2FyZC1zcGFjZXIteC1zbTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBpbmNsdWRlIHJ0bC1vbmx5IHtcbiAgICAuY2FyZC10YWJsZSA+IHRoZWFkID4gdHIsXG4gICAgLmNhcmQtdGFibGUgPiB0Ym9keSA+IHRyLFxuICAgIC5jYXJkLXRhYmxlID4gdGZvb3QgPiB0ciB7XG4gICAgICAgID4gdGQsXG4gICAgICAgID4gdGgge1xuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJGNhcmQtc3BhY2VyLXg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJGNhcmQtc3BhY2VyLXg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLy8gQ29uZGVuY2VkXG4gICAgLmNhcmQtY29uZGVuY2VkIC5jYXJkLXRhYmxlID4gdGhlYWQgPiB0cixcbiAgICAuY2FyZC1jb25kZW5jZWQgLmNhcmQtdGFibGUgPiB0Ym9keSA+IHRyLFxuICAgIC5jYXJkLWNvbmRlbmNlZCAuY2FyZC10YWJsZSA+IHRmb290ID4gdHIge1xuICAgICAgICA+IHRkLFxuICAgICAgICA+IHRoIHtcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRjYXJkLXNwYWNlci14O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRjYXJkLXNwYWNlci14O1xuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gUmVib290XG4vL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xufVxuXG5AaW5jbHVkZSBydGwtb25seSB7XG4gIGRkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbiAgY2FwdGlvbiB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbn1cbiIsIi8vIFZhcmlhYmxlc1xuLy9cbi8vIFZhcmlhYmxlcyBzaG91bGQgZm9sbG93IHRoZSBgJGNvbXBvbmVudC1zdGF0ZS1wcm9wZXJ0eS1zaXplYCBmb3JtdWxhIGZvclxuLy8gY29uc2lzdGVudCBuYW1pbmcuIEV4OiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3IgYW5kICRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMuXG5cbi8vIENvbG9yIHN5c3RlbVxuXG4kd2hpdGU6ICAgICNmZmYgIWRlZmF1bHQ7XG4kZ3JheS0xMDA6ICNmOGY5ZmEgIWRlZmF1bHQ7XG4kZ3JheS0yMDA6ICNlOWVjZWYgIWRlZmF1bHQ7XG4kZ3JheS0zMDA6ICNkZWUyZTYgIWRlZmF1bHQ7XG4kZ3JheS00MDA6ICNjZWQ0ZGEgIWRlZmF1bHQ7XG4kZ3JheS01MDA6ICNhZGI1YmQgIWRlZmF1bHQ7XG4kZ3JheS02MDA6ICM2Yzc1N2QgIWRlZmF1bHQ7XG4kZ3JheS03MDA6ICM0OTUwNTcgIWRlZmF1bHQ7XG4kZ3JheS04MDA6ICMzNDNhNDAgIWRlZmF1bHQ7XG4kZ3JheS05MDA6ICMyMTI1MjkgIWRlZmF1bHQ7XG4kYmxhY2s6ICAgICMwMDAgIWRlZmF1bHQ7XG5cbiRncmF5czogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJGdyYXlzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcIjEwMFwiOiAkZ3JheS0xMDAsXG4gICAgXCIyMDBcIjogJGdyYXktMjAwLFxuICAgIFwiMzAwXCI6ICRncmF5LTMwMCxcbiAgICBcIjQwMFwiOiAkZ3JheS00MDAsXG4gICAgXCI1MDBcIjogJGdyYXktNTAwLFxuICAgIFwiNjAwXCI6ICRncmF5LTYwMCxcbiAgICBcIjcwMFwiOiAkZ3JheS03MDAsXG4gICAgXCI4MDBcIjogJGdyYXktODAwLFxuICAgIFwiOTAwXCI6ICRncmF5LTkwMFxuICApLFxuICAkZ3JheXNcbik7XG5cbiRibHVlOiAgICAjMDA3YmZmICFkZWZhdWx0O1xuJGluZGlnbzogICM2NjEwZjIgIWRlZmF1bHQ7XG4kcHVycGxlOiAgIzZmNDJjMSAhZGVmYXVsdDtcbiRwaW5rOiAgICAjZTgzZThjICFkZWZhdWx0O1xuJHJlZDogICAgICNkYzM1NDUgIWRlZmF1bHQ7XG4kb3JhbmdlOiAgI2ZkN2UxNCAhZGVmYXVsdDtcbiR5ZWxsb3c6ICAjZmZjMTA3ICFkZWZhdWx0O1xuJGdyZWVuOiAgICMyOGE3NDUgIWRlZmF1bHQ7XG4kdGVhbDogICAgIzIwYzk5NyAhZGVmYXVsdDtcbiRjeWFuOiAgICAjMTdhMmI4ICFkZWZhdWx0O1xuXG4kY29sb3JzOiAoKSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL2RvbGxhci12YXJpYWJsZS1kZWZhdWx0XG4kY29sb3JzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcImJsdWVcIjogICAgICAgJGJsdWUsXG4gICAgXCJpbmRpZ29cIjogICAgICRpbmRpZ28sXG4gICAgXCJwdXJwbGVcIjogICAgICRwdXJwbGUsXG4gICAgXCJwaW5rXCI6ICAgICAgICRwaW5rLFxuICAgIFwicmVkXCI6ICAgICAgICAkcmVkLFxuICAgIFwib3JhbmdlXCI6ICAgICAkb3JhbmdlLFxuICAgIFwieWVsbG93XCI6ICAgICAkeWVsbG93LFxuICAgIFwiZ3JlZW5cIjogICAgICAkZ3JlZW4sXG4gICAgXCJ0ZWFsXCI6ICAgICAgICR0ZWFsLFxuICAgIFwiY3lhblwiOiAgICAgICAkY3lhbixcbiAgICBcIndoaXRlXCI6ICAgICAgJHdoaXRlLFxuICAgIFwiZ3JheVwiOiAgICAgICAkZ3JheS02MDAsXG4gICAgXCJncmF5LWRhcmtcIjogICRncmF5LTgwMFxuICApLFxuICAkY29sb3JzXG4pO1xuXG4kcHJpbWFyeTogICAgICAgJGJsdWUgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5OiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHN1Y2Nlc3M6ICAgICAgICRncmVlbiAhZGVmYXVsdDtcbiRpbmZvOiAgICAgICAgICAkY3lhbiAhZGVmYXVsdDtcbiR3YXJuaW5nOiAgICAgICAkeWVsbG93ICFkZWZhdWx0O1xuJGRhbmdlcjogICAgICAgICRyZWQgIWRlZmF1bHQ7XG4kbGlnaHQ6ICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJGRhcms6ICAgICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcblxuJHRoZW1lLWNvbG9yczogKCkgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZGVmYXVsdFxuJHRoZW1lLWNvbG9yczogbWFwLW1lcmdlKFxuICAoXG4gICAgXCJwcmltYXJ5XCI6ICAgICRwcmltYXJ5LFxuICAgIFwic2Vjb25kYXJ5XCI6ICAkc2Vjb25kYXJ5LFxuICAgIFwic3VjY2Vzc1wiOiAgICAkc3VjY2VzcyxcbiAgICBcImluZm9cIjogICAgICAgJGluZm8sXG4gICAgXCJ3YXJuaW5nXCI6ICAgICR3YXJuaW5nLFxuICAgIFwiZGFuZ2VyXCI6ICAgICAkZGFuZ2VyLFxuICAgIFwibGlnaHRcIjogICAgICAkbGlnaHQsXG4gICAgXCJkYXJrXCI6ICAgICAgICRkYXJrXG4gICksXG4gICR0aGVtZS1jb2xvcnNcbik7XG5cbi8vIFNldCBhIHNwZWNpZmljIGp1bXAgcG9pbnQgZm9yIHJlcXVlc3RpbmcgY29sb3IganVtcHNcbiR0aGVtZS1jb2xvci1pbnRlcnZhbDogICAgICA4JSAhZGVmYXVsdDtcblxuLy8gVGhlIHlpcSBsaWdodG5lc3MgdmFsdWUgdGhhdCBkZXRlcm1pbmVzIHdoZW4gdGhlIGxpZ2h0bmVzcyBvZiBjb2xvciBjaGFuZ2VzIGZyb20gXCJkYXJrXCIgdG8gXCJsaWdodFwiLiBBY2NlcHRhYmxlIHZhbHVlcyBhcmUgYmV0d2VlbiAwIGFuZCAyNTUuXG4keWlxLWNvbnRyYXN0ZWQtdGhyZXNob2xkOiAgMTUwICFkZWZhdWx0O1xuXG4vLyBDdXN0b21pemUgdGhlIGxpZ2h0IGFuZCBkYXJrIHRleHQgY29sb3JzIGZvciB1c2UgaW4gb3VyIFlJUSBjb2xvciBjb250cmFzdCBmdW5jdGlvbi5cbiR5aXEtdGV4dC1kYXJrOiAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4keWlxLXRleHQtbGlnaHQ6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG5cbi8vIE9wdGlvbnNcbi8vXG4vLyBRdWlja2x5IG1vZGlmeSBnbG9iYWwgc3R5bGluZyBieSBlbmFibGluZyBvciBkaXNhYmxpbmcgb3B0aW9uYWwgZmVhdHVyZXMuXG5cbiRlbmFibGUtY2FyZXQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yb3VuZGVkOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNoYWRvd3M6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWdyYWRpZW50czogICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXRyYW5zaXRpb25zOiAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeTogICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeTogICAgICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkLCBubyBsb25nZXIgYWZmZWN0cyBhbnkgY29tcGlsZWQgQ1NTXG4kZW5hYmxlLWdyaWQtY2xhc3NlczogICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcG9pbnRlci1jdXJzb3ItZm9yLWJ1dHRvbnM6ICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wcmludC1zdHlsZXM6ICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplczogICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXZhbGlkYXRpb24taWNvbnM6ICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtZGVwcmVjYXRpb24tbWVzc2FnZXM6ICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuXG5cbi8vIFNwYWNpbmdcbi8vXG4vLyBDb250cm9sIHRoZSBkZWZhdWx0IHN0eWxpbmcgb2YgbW9zdCBCb290c3RyYXAgZWxlbWVudHMgYnkgbW9kaWZ5aW5nIHRoZXNlXG4vLyB2YXJpYWJsZXMuIE1vc3RseSBmb2N1c2VkIG9uIHNwYWNpbmcuXG4vLyBZb3UgY2FuIGFkZCBtb3JlIGVudHJpZXMgdG8gdGhlICRzcGFjZXJzIG1hcCwgc2hvdWxkIHlvdSBuZWVkIG1vcmUgdmFyaWF0aW9uLlxuXG4kc3BhY2VyOiAxcmVtICFkZWZhdWx0O1xuJHNwYWNlcnM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRzcGFjZXJzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICAwOiAwLFxuICAgIDE6ICgkc3BhY2VyICogLjI1KSxcbiAgICAyOiAoJHNwYWNlciAqIC41KSxcbiAgICAzOiAkc3BhY2VyLFxuICAgIDQ6ICgkc3BhY2VyICogMS41KSxcbiAgICA1OiAoJHNwYWNlciAqIDMpXG4gICksXG4gICRzcGFjZXJzXG4pO1xuXG4vLyBUaGlzIHZhcmlhYmxlIGFmZmVjdHMgdGhlIGAuaC0qYCBhbmQgYC53LSpgIGNsYXNzZXMuXG4kc2l6ZXM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRzaXplczogbWFwLW1lcmdlKFxuICAoXG4gICAgMjU6IDI1JSxcbiAgICA1MDogNTAlLFxuICAgIDc1OiA3NSUsXG4gICAgMTAwOiAxMDAlLFxuICAgIGF1dG86IGF1dG9cbiAgKSxcbiAgJHNpemVzXG4pO1xuXG5cbi8vIEJvZHlcbi8vXG4vLyBTZXR0aW5ncyBmb3IgdGhlIGA8Ym9keT5gIGVsZW1lbnQuXG5cbiRib2R5LWJnOiAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYm9keS1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuXG5cbi8vIExpbmtzXG4vL1xuLy8gU3R5bGUgYW5jaG9yIGVsZW1lbnRzLlxuXG4kbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGVtZS1jb2xvcihcInByaW1hcnlcIikgIWRlZmF1bHQ7XG4kbGluay1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJGxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRsaW5rLWNvbG9yLCAxNSUpICFkZWZhdWx0O1xuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogICAgICAgICAgICAgICAgICAgdW5kZXJsaW5lICFkZWZhdWx0O1xuLy8gRGFya2VuIHBlcmNlbnRhZ2UgZm9yIGxpbmtzIHdpdGggYC50ZXh0LSpgIGNsYXNzIChlLmcuIGAudGV4dC1zdWNjZXNzYClcbiRlbXBoYXNpemVkLWxpbmstaG92ZXItZGFya2VuLXBlcmNlbnRhZ2U6IDE1JSAhZGVmYXVsdDtcblxuLy8gUGFyYWdyYXBoc1xuLy9cbi8vIFN0eWxlIHAgZWxlbWVudC5cblxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAgIDFyZW0gIWRlZmF1bHQ7XG5cblxuLy8gR3JpZCBicmVha3BvaW50c1xuLy9cbi8vIERlZmluZSB0aGUgbWluaW11bSBkaW1lbnNpb25zIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLFxuLy8gYWRhcHRpbmcgdG8gZGlmZmVyZW50IHNjcmVlbiBzaXplcywgZm9yIHVzZSBpbiBtZWRpYSBxdWVyaWVzLlxuXG4kZ3JpZC1icmVha3BvaW50czogKFxuICB4czogMCxcbiAgc206IDU3NnB4LFxuICBtZDogNzY4cHgsXG4gIGxnOiA5OTJweCxcbiAgeGw6IDEyMDBweFxuKSAhZGVmYXVsdDtcblxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5AaW5jbHVkZSBfYXNzZXJ0LXN0YXJ0cy1hdC16ZXJvKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuXG5cbi8vIEdyaWQgY29udGFpbmVyc1xuLy9cbi8vIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbiRjb250YWluZXItbWF4LXdpZHRoczogKFxuICBzbTogNTQwcHgsXG4gIG1kOiA3MjBweCxcbiAgbGc6IDk2MHB4LFxuICB4bDogMTE0MHB4XG4pICFkZWZhdWx0O1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkY29udGFpbmVyLW1heC13aWR0aHMsIFwiJGNvbnRhaW5lci1tYXgtd2lkdGhzXCIpO1xuXG5cbi8vIEdyaWQgY29sdW1uc1xuLy9cbi8vIFNldCB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgYW5kIHNwZWNpZnkgdGhlIHdpZHRoIG9mIHRoZSBndXR0ZXJzLlxuXG4kZ3JpZC1jb2x1bW5zOiAgICAgICAgICAgICAgICAxMiAhZGVmYXVsdDtcbiRncmlkLWd1dHRlci13aWR0aDogICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG5cblxuLy8gQ29tcG9uZW50c1xuLy9cbi8vIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS5cblxuJGxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgIC4zcmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgLjJyZW0gIWRlZmF1bHQ7XG5cbiRyb3VuZGVkLXBpbGw6ICAgICAgICAgICAgICAgIDUwcmVtICFkZWZhdWx0O1xuXG4kYm94LXNoYWRvdy1zbTogICAgICAgICAgICAgICAwIC4xMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjE1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LWxnOiAgICAgICAgICAgICAgIDAgMXJlbSAzcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcblxuJGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNvbXBvbmVudC1hY3RpdmUtYmc6ICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuXG4kY2FyZXQtd2lkdGg6ICAgICAgICAgICAgICAgICAuM2VtICFkZWZhdWx0O1xuJGNhcmV0LXZlcnRpY2FsLWFsaWduOiAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuJGNhcmV0LXNwYWNpbmc6ICAgICAgICAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuXG4kdHJhbnNpdGlvbi1iYXNlOiAgICAgICAgICAgICBhbGwgLjJzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tZmFkZTogICAgICAgICAgICAgb3BhY2l0eSAuMTVzIGxpbmVhciAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWNvbGxhcHNlOiAgICAgICAgIGhlaWdodCAuMzVzIGVhc2UgIWRlZmF1bHQ7XG5cbiRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3M6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3M6IGpvaW4oXG4gIChcbiAgICAoMjEgOSksXG4gICAgKDE2IDkpLFxuICAgICg0IDMpLFxuICAgICgxIDEpLFxuICApLFxuICAkZW1iZWQtcmVzcG9uc2l2ZS1hc3BlY3QtcmF0aW9zXG4pO1xuXG4vLyBUeXBvZ3JhcGh5XG4vL1xuLy8gRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICAgICAgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgXCJOb3RvIFNhbnNcIiwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIsIFwiTm90byBDb2xvciBFbW9qaVwiICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogICAgICAgU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgICAgICRmb250LWZhbWlseS1zYW5zLXNlcmlmICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWVuYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcblxuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDsgLy8gQXNzdW1lcyB0aGUgYnJvd3NlciBkZWZhdWx0LCB0eXBpY2FsbHkgYDE2cHhgXG4kZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogLjg3NSAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWxpZ2h0ZXI6ICAgICAgICAgbGlnaHRlciAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1saWdodDogICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ub3JtYWw6ICAgICAgICAgIDQwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkOiAgICAgICAgICAgIDcwMCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkZXI6ICAgICAgICAgIGJvbGRlciAhZGVmYXVsdDtcblxuJGZvbnQtd2VpZ2h0LWJhc2U6ICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1iYXNlOiAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcblxuJGgxLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMi41ICFkZWZhdWx0O1xuJGgyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMiAhZGVmYXVsdDtcbiRoMy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNzUgIWRlZmF1bHQ7XG4kaDQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjUgIWRlZmF1bHQ7XG4kaDUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGg2LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuXG4kaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTogICAgICAkc3BhY2VyIC8gMiAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICAgICAgICA1MDAgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6ICAgICAgICAxLjIgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kZGlzcGxheTEtc2l6ZTogICAgICAgICAgICAgICA2cmVtICFkZWZhdWx0O1xuJGRpc3BsYXkyLXNpemU6ICAgICAgICAgICAgICAgNS41cmVtICFkZWZhdWx0O1xuJGRpc3BsYXkzLXNpemU6ICAgICAgICAgICAgICAgNC41cmVtICFkZWZhdWx0O1xuJGRpc3BsYXk0LXNpemU6ICAgICAgICAgICAgICAgMy41cmVtICFkZWZhdWx0O1xuXG4kZGlzcGxheTEtd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTItd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTMtd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTQtd2VpZ2h0OiAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheS1saW5lLWhlaWdodDogICAgICAgICAkaGVhZGluZ3MtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRsZWFkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kbGVhZC1mb250LXdlaWdodDogICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG5cbiRzbWFsbC1mb250LXNpemU6ICAgICAgICAgICAgIDgwJSAhZGVmYXVsdDtcblxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kYmxvY2txdW90ZS1zbWFsbC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1zbWFsbC1mb250LXNpemU6ICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcblxuJGhyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRoci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRtYXJrLXBhZGRpbmc6ICAgICAgICAgICAgICAgIC4yZW0gIWRlZmF1bHQ7XG5cbiRkdC1mb250LXdlaWdodDogICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4ka2JkLWJveC1zaGFkb3c6ICAgICAgICAgICAgICBpbnNldCAwIC0uMXJlbSAwIHJnYmEoJGJsYWNrLCAuMjUpICFkZWZhdWx0O1xuJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ6ICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRsaXN0LWlubGluZS1wYWRkaW5nOiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbWFyay1iZzogICAgICAgICAgICAgICAgICAgICAjZmNmOGUzICFkZWZhdWx0O1xuXG4kaHItbWFyZ2luLXk6ICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG5cbi8vIFRhYmxlc1xuLy9cbi8vIEN1c3RvbWl6ZXMgdGhlIGAudGFibGVgIGNvbXBvbmVudCB3aXRoIGJhc2ljIHZhbHVlcywgZWFjaCB1c2VkIGFjcm9zcyBhbGwgdGFibGUgdmFyaWF0aW9ucy5cblxuJHRhYmxlLWNlbGwtcGFkZGluZzogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy1zbTogICAgICAgLjNyZW0gIWRlZmF1bHQ7XG5cbiR0YWJsZS1jb2xvcjogICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWJnOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiR0YWJsZS1hY2NlbnQtYmc6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDUpICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWJnOiAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuJHRhYmxlLWFjdGl2ZS1iZzogICAgICAgICAgICAgJHRhYmxlLWhvdmVyLWJnICFkZWZhdWx0O1xuXG4kdGFibGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1jb2xvcjogICAgICAgICAgJGJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJHRhYmxlLWhlYWQtYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHRhYmxlLWhlYWQtY29sb3I6ICAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuXG4kdGFibGUtZGFyay1jb2xvcjogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1iZzogICAgICAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1hY2NlbnQtYmc6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjA1KSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICR0YWJsZS1kYXJrLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstaG92ZXItYmc6ICAgICAgICAgcmdiYSgkd2hpdGUsIC4wNzUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstYm9yZGVyLWNvbG9yOiAgICAgbGlnaHRlbigkdGFibGUtZGFyay1iZywgNy41JSkgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1jb2xvcjogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiR0YWJsZS1zdHJpcGVkLW9yZGVyOiAgICAgICAgIG9kZCAhZGVmYXVsdDtcblxuJHRhYmxlLWNhcHRpb24tY29sb3I6ICAgICAgICAgJHRleHQtbXV0ZWQgIWRlZmF1bHQ7XG5cbiR0YWJsZS1iZy1sZXZlbDogICAgICAgICAgICAgIC05ICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1sZXZlbDogICAgICAgICAgLTYgIWRlZmF1bHQ7XG5cblxuLy8gQnV0dG9ucyArIEZvcm1zXG4vL1xuLy8gU2hhcmVkIHZhcmlhYmxlcyB0aGF0IGFyZSByZWFzc2lnbmVkIHRvIGAkaW5wdXQtYCBhbmQgYCRidG4tYCBzcGVjaWZpYyB2YXJpYWJsZXMuXG5cbiRpbnB1dC1idG4tcGFkZGluZy15OiAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteDogICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtZmFtaWx5OiAgICAgICBudWxsICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemU6ICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodDogICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tZm9jdXMtd2lkdGg6ICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb2N1cy1jb2xvcjogICAgICAgcmdiYSgkY29tcG9uZW50LWFjdGl2ZS1iZywgLjI1KSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdzogIDAgMCAwICRpbnB1dC1idG4tZm9jdXMtd2lkdGggJGlucHV0LWJ0bi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktc206ICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXgtc206ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbTogICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbTogICAgJGxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLXBhZGRpbmcteS1sZzogICAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LWxnOiAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZzogICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZzogICAgJGxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWJvcmRlci13aWR0aDogICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG5cbi8vIEJ1dHRvbnNcbi8vXG4vLyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCwgYW5kIGJvcmRlciBjb2xvci5cblxuJGJ0bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteDogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRidG4tZm9udC1mYW1pbHk6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRidG4tcGFkZGluZy15LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQtc206ICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRidG4tcGFkZGluZy15LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kYnRuLWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRidG4tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGJ0bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMCByZ2JhKCR3aGl0ZSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRidG4tZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kYnRuLWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAuNjUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3gtc2hhZG93OiAgICAgICBpbnNldCAwIDNweCA1cHggcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRidG4tYmxvY2stc3BhY2luZy15OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4vLyBBbGxvd3MgZm9yIGN1c3RvbWl6aW5nIGJ1dHRvbiByYWRpdXMgaW5kZXBlbmRlbnRseSBmcm9tIGdsb2JhbCBib3JkZXIgcmFkaXVzXG4kYnRuLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbiRidG4tdHJhbnNpdGlvbjogICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuXG4vLyBGb3Jtc1xuXG4kbGFiZWwtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRpbnB1dC1mb250LWZhbWlseTogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXktc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemUtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdyYXktNDAwICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgIGluc2V0IDAgMXB4IDFweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWZvY3VzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICBsaWdodGVuKCRjb21wb25lbnQtYWN0aXZlLWJnLCAyNSUpICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy13aWR0aDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRpbnB1dC1wbGFpbnRleHQtY29sb3I6ICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggKiAyICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWlubmVyOiAgICAgICAgICAgICAgICAgICAgY2FsYygjeyRpbnB1dC1saW5lLWhlaWdodCAqIDFlbX0gKyAjeyRpbnB1dC1wYWRkaW5nLXkgKiAyfSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGY6ICAgICAgICAgICAgICAgY2FsYygjeyRpbnB1dC1saW5lLWhlaWdodCAqIC41ZW19ICsgI3skaW5wdXQtcGFkZGluZy15fSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI6ICAgICAgICAgICAgY2FsYygjeyRpbnB1dC1saW5lLWhlaWdodCAqIC4yNWVtfSArICN7JGlucHV0LXBhZGRpbmcteSAvIDJ9KSAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgIGNhbGMoI3skaW5wdXQtbGluZS1oZWlnaHQgKiAxZW19ICsgI3skaW5wdXQtcGFkZGluZy15ICogMn0gKyAjeyRpbnB1dC1oZWlnaHQtYm9yZGVyfSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgICAgICAgICAgY2FsYygjeyRpbnB1dC1saW5lLWhlaWdodC1zbSAqIDFlbX0gKyAjeyRpbnB1dC1idG4tcGFkZGluZy15LXNtICogMn0gKyAjeyRpbnB1dC1oZWlnaHQtYm9yZGVyfSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICAgICAgY2FsYygjeyRpbnB1dC1saW5lLWhlaWdodC1sZyAqIDFlbX0gKyAjeyRpbnB1dC1idG4tcGFkZGluZy15LWxnICogMn0gKyAjeyRpbnB1dC1oZWlnaHQtYm9yZGVyfSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kZm9ybS10ZXh0LW1hcmdpbi10b3A6ICAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI6ICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi15OiAgICAgICAgICAgICAuM3JlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi14OiAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4teDogICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbmxpbmUtaW5wdXQtbWFyZ2luLXg6ICAgICAgLjMxMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRpbnB1dC1ncm91cC1hZGRvbi1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYmc6ICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbjogICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1ndXR0ZXI6ICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1zcGFjZXIteDogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU6ICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc6ICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmctc2l6ZTogICAgICA1MCUgNTAlICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3gtc2hhZG93OiAgICRpbnB1dC1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItY29sb3I6ICRncmF5LTUwMCAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWRpc2FibGVkLWJnOiAgICAgICAgICAkaW5wdXQtZGlzYWJsZWQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtbGFiZWwtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcjogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmc6ICByZ2JhKHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSwgLjUpICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJveC1zaGFkb3c6ICAgbm9uZSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1mb2N1cy1ib3gtc2hhZG93OiAgICAgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJvcmRlci1jb2xvcjogICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1jb2xvcjogICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDM1JSkgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1ib3gtc2hhZG93OiAgICBub25lICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaWNvbi1jaGVja2VkOiAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBmaWxsPScjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcn0nIGQ9J002LjU2NC43NWwtMy41OSAzLjYxMi0xLjUzOC0xLjU1TDAgNC4yNiAyLjk3NCA3LjI1IDggMi4xOTN6Jy8lM2UlM2Mvc3ZnJTNlXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtY29sb3I6ICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWluZGV0ZXJtaW5hdGU6ICAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA0IDQnJTNlJTNjcGF0aCBzdHJva2U9JyN7JGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1jb2xvcn0nIGQ9J00wIDJoNCcvJTNlJTNjL3N2ZyUzZVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3gtc2hhZG93OiAgIG5vbmUgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvcjogJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgICAgNTAlICFkZWZhdWx0O1xuJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItaWNvbi1jaGVja2VkOiAgICAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCclM2UlM2NjaXJjbGUgcj0nMycgZmlsbD0nI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3J9Jy8lM2UlM2Mvc3ZnJTNlXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc3dpdGNoLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSAqIDEuNzUgIWRlZmF1bHQ7XG4kY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUgLyAyICFkZWZhdWx0O1xuJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLXNpemU6ICAgICAgICAgICAgICAgICAgY2FsYygjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZX0gLSAjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoICogNH0pICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXk6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14OiAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtZmFtaWx5OiAgICAgICAgICRpbnB1dC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZTogICAgICAgICAgICRpbnB1dC1mb250LXNpemUgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1oZWlnaHQ6ICAgICAgICAgICAgICAkaW5wdXQtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc6ICAgMXJlbSAhZGVmYXVsdDsgLy8gRXh0cmEgcGFkZGluZyB0byBhY2NvdW50IGZvciB0aGUgcHJlc2VuY2Ugb2YgdGhlIGJhY2tncm91bmQtaW1hZ2UgYmFzZWQgaW5kaWNhdG9yXG4kY3VzdG9tLXNlbGVjdC1mb250LXdlaWdodDogICAgICAgICAkaW5wdXQtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1saW5lLWhlaWdodDogICAgICAgICAkaW5wdXQtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iZzogICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1iZzogICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iZy1zaXplOiAgICAgICAgICAgICA4cHggMTBweCAhZGVmYXVsdDsgLy8gSW4gcGl4ZWxzIGJlY2F1c2UgaW1hZ2UgZGltZW5zaW9uc1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yOiAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yOiAgICAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA0IDUnJTNlJTNjcGF0aCBmaWxsPScjeyRjdXN0b20tc2VsZWN0LWluZGljYXRvci1jb2xvcn0nIGQ9J00yIDBMMCAyaDR6bTAgNUwwIDNoNHonLyUzZSUzYy9zdmclM2VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJhY2tncm91bmQ6ICAgICAgICAgICRjdXN0b20tc2VsZWN0LWluZGljYXRvciBuby1yZXBlYXQgcmlnaHQgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14IGNlbnRlciAvICRjdXN0b20tc2VsZWN0LWJnLXNpemUgIWRlZmF1bHQ7IC8vIFVzZWQgc28gd2UgY2FuIGhhdmUgbXVsdGlwbGUgYmFja2dyb3VuZCBlbGVtZW50cyAoZS5nLiwgYXJyb3cgYW5kIGZlZWRiYWNrIGljb24pXG5cbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1yaWdodDogY2FsYygoMWVtICsgI3syICogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15fSkgKiAzIC8gNCArICN7JGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmd9KSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tcG9zaXRpb246ICAgICAgY2VudGVyIHJpZ2h0ICgkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZykgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXNpemU6ICAgICAgICAgICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LWJvcmRlci13aWR0aDogICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItY29sb3I6ICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3gtc2hhZG93OiAgICAgICAgICBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I6ICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9jdXMtd2lkdGg6ICAgICAgICAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdzogICAgMCAwIDAgJGN1c3RvbS1zZWxlY3QtZm9jdXMtd2lkdGggJGlucHV0LWJ0bi1mb2N1cy1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1zbTogICAgICAgICRpbnB1dC1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemUtc206ICAgICAgICAkaW5wdXQtZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LXNtOiAgICAgICAgICAgJGlucHV0LWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LWxnOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1sZzogICAgICAgICRpbnB1dC1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemUtbGc6ICAgICAgICAkaW5wdXQtZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LWxnOiAgICAgICAgICAgJGlucHV0LWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1yYW5nZS10cmFjay13aWR0aDogICAgICAgICAgMTAwJSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I6ICAgICAgICAgcG9pbnRlciAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stYmc6ICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1czogIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3c6ICAgICBpbnNldCAwIC4yNXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJnOiAgICAgICAgICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyOiAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgMCAuMXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzogICAgICAgIDAgMCAwIDFweCAkYm9keS1iZywgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGg6ICAkaW5wdXQtZm9jdXMtd2lkdGggIWRlZmF1bHQ7IC8vIEZvciBmb2N1cyBib3ggc2hhZG93IGlzc3VlIGluIElFL0VkZ2VcbiRjdXN0b20tcmFuZ2UtdGh1bWItYWN0aXZlLWJnOiAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGNvbXBvbmVudC1hY3RpdmUtYmcsIDM1JSkgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnOiAgICAgICAgICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZmlsZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICRpbnB1dC1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtaGVpZ2h0LWlubmVyOiAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWlubmVyICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvY3VzLWJvcmRlci1jb2xvcjogICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb2N1cy1ib3gtc2hhZG93OiAgICAgICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWRpc2FibGVkLWJnOiAgICAgICAgICAgJGlucHV0LWRpc2FibGVkLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZpbGUtcGFkZGluZy15OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXBhZGRpbmcteDogICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1saW5lLWhlaWdodDogICAgICAgICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb250LWZhbWlseTogICAgICAgICAgICRpbnB1dC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb250LXdlaWdodDogICAgICAgICAgICRpbnB1dC1mb250LXdlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1jb2xvcjogICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1iZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGlucHV0LWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm94LXNoYWRvdzogICAgICAgICAgICAkaW5wdXQtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1idXR0b24tY29sb3I6ICAgICAgICAgICRjdXN0b20tZmlsZS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1idXR0b24tYmc6ICAgICAgICAgICAgICRpbnB1dC1ncm91cC1hZGRvbi1iZyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS10ZXh0OiAoXG4gIGVuOiBcIkJyb3dzZVwiXG4pICFkZWZhdWx0O1xuXG5cbi8vIEZvcm0gdmFsaWRhdGlvblxuXG4kZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wOiAgICAgICAgICAkZm9ybS10ZXh0LW1hcmdpbi10b3AgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1mb250LXNpemU6ICAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3I6ICAgICAgICAgdGhlbWUtY29sb3IoXCJzdWNjZXNzXCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcjogICAgICAgdGhlbWUtY29sb3IoXCJkYW5nZXJcIikgIWRlZmF1bHQ7XG5cbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3I6ICAgICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZDogICAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3J9JyBkPSdNMi4zIDYuNzNMLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6Jy8lM2UlM2Mvc3ZnJTNlXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3I6ICAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkOiAgICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgdmlld0JveD0nLTIgLTIgNyA3JyUzZSUzY3BhdGggc3Ryb2tlPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nIGQ9J00wIDBsMyAzbTAtM0wwIDMnLyUzZSUzY2NpcmNsZSByPScuNScvJTNlJTNjY2lyY2xlIGN4PSczJyByPScuNScvJTNlJTNjY2lyY2xlIGN5PSczJyByPScuNScvJTNlJTNjY2lyY2xlIGN4PSczJyBjeT0nMycgcj0nLjUnLyUzZSUzYy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcblxuJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXM6ICgpICFkZWZhdWx0O1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcbiRmb3JtLXZhbGlkYXRpb24tc3RhdGVzOiBtYXAtbWVyZ2UoXG4gIChcbiAgICBcInZhbGlkXCI6IChcbiAgICAgIFwiY29sb3JcIjogJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IsXG4gICAgICBcImljb25cIjogJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZFxuICAgICksXG4gICAgXCJpbnZhbGlkXCI6IChcbiAgICAgIFwiY29sb3JcIjogJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcixcbiAgICAgIFwiaWNvblwiOiAkZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWRcbiAgICApLFxuICApLFxuICAkZm9ybS12YWxpZGF0aW9uLXN0YXRlc1xuKTtcblxuLy8gWi1pbmRleCBtYXN0ZXIgbGlzdFxuLy9cbi8vIFdhcm5pbmc6IEF2b2lkIGN1c3RvbWl6aW5nIHRoZXNlIHZhbHVlcy4gVGhleSdyZSB1c2VkIGZvciBhIGJpcmQncyBleWUgdmlld1xuLy8gb2YgY29tcG9uZW50cyBkZXBlbmRlbnQgb24gdGhlIHotYXhpcyBhbmQgYXJlIGRlc2lnbmVkIHRvIGFsbCB3b3JrIHRvZ2V0aGVyLlxuXG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1zdGlja3k6ICAgICAgICAgICAgICAgICAgICAgMTAyMCAhZGVmYXVsdDtcbiR6aW5kZXgtZml4ZWQ6ICAgICAgICAgICAgICAgICAgICAgIDEwMzAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsLWJhY2tkcm9wOiAgICAgICAgICAgICAxMDQwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbDogICAgICAgICAgICAgICAgICAgICAgMTA1MCAhZGVmYXVsdDtcbiR6aW5kZXgtcG9wb3ZlcjogICAgICAgICAgICAgICAgICAgIDEwNjAgIWRlZmF1bHQ7XG4kemluZGV4LXRvb2x0aXA6ICAgICAgICAgICAgICAgICAgICAxMDcwICFkZWZhdWx0O1xuXG5cbi8vIE5hdnNcblxuJG5hdi1saW5rLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAkZ3JheS0yMDAgJGdyYXktMjAwICRuYXYtdGFicy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I6ICRncmF5LTMwMCAkZ3JheS0zMDAgJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtZGl2aWRlci1jb2xvcjogICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRuYXYtZGl2aWRlci1tYXJnaW4teTogICAgICAgICAgICAgICRzcGFjZXIgLyAyICFkZWZhdWx0O1xuXG5cbi8vIE5hdmJhclxuXG4kbmF2YmFyLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAkc3BhY2VyIC8gMiAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZTogICAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuLy8gQ29tcHV0ZSB0aGUgbmF2YmFyLWJyYW5kIHBhZGRpbmcteSBzbyB0aGUgbmF2YmFyLWJyYW5kIHdpbGwgaGF2ZSB0aGUgc2FtZSBoZWlnaHQgYXMgbmF2YmFyLXRleHQgYW5kIG5hdi1saW5rXG4kbmF2LWxpbmstaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSArICRuYXYtbGluay1wYWRkaW5nLXkgKiAyICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1oZWlnaHQ6ICAgICAgICAgICAgICAgJG5hdmJhci1icmFuZC1mb250LXNpemUgKiAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtcGFkZGluZy15OiAgICAgICAgICAgICgkbmF2LWxpbmstaGVpZ2h0IC0gJG5hdmJhci1icmFuZC1oZWlnaHQpIC8gMiAhZGVmYXVsdDtcblxuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteTogICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZTogICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzOiAgICAgICRidG4tYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJG5hdmJhci1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC41KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1ob3Zlci1jb2xvcjogICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNzUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yOiAgICAgICAgcmdiYSgkd2hpdGUsIC4yNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnOiAgICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHZpZXdCb3g9JzAgMCAzMCAzMCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzZSUzY3BhdGggc3Ryb2tlPScjeyRuYXZiYXItZGFyay1jb2xvcn0nIHN0cm9rZS13aWR0aD0nMicgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8lM2UlM2Mvc3ZnJTNlXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstdG9nZ2xlci1ib3JkZXItY29sb3I6ICByZ2JhKCR3aGl0ZSwgLjEpICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjogICAgICAgICAgcmdiYSgkYmxhY2ssIC43KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yOiAgICAgICAgIHJnYmEoJGJsYWNrLCAuOSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yOiAgICAgICByZ2JhKCRibGFjaywgLjMpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmc6ICAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB2aWV3Qm94PScwIDAgMzAgMzAnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM2UlM2NwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWxpZ2h0LWNvbG9yfScgc3Ryb2tlLXdpZHRoPScyJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLyUzZSUzYy9zdmclM2VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I6IHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbGlnaHQtYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuXG4vLyBEcm9wZG93bnNcbi8vXG4vLyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXG5cbiRkcm9wZG93bi1taW4td2lkdGg6ICAgICAgICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tc3BhY2VyOiAgICAgICAgICAgICAgICAgICAuMTI1cmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjE1KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgIGNhbGMoI3skZHJvcGRvd24tYm9yZGVyLXJhZGl1c30gLSAjeyRkcm9wZG93bi1ib3JkZXItd2lkdGh9KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15OiAgICAgICAgICRuYXYtZGl2aWRlci1tYXJnaW4teSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjE3NSkgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgIGRhcmtlbigkZ3JheS05MDAsIDUlKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXk6ICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXg6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuXG4vLyBQYWdpbmF0aW9uXG5cbiRwYWdpbmF0aW9uLXBhZGRpbmcteTogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14OiAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LXNtOiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LXNtOiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1saW5lLWhlaWdodDogICAgICAgICAgICAxLjI1ICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci13aWR0aDogICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWZvY3VzLW91dGxpbmU6ICAgICAgICAgIDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJHBhZ2luYXRpb24tYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cblxuLy8gSnVtYm90cm9uXG5cbiRqdW1ib3Ryb24tcGFkZGluZzogICAgICAgICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kanVtYm90cm9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1iZzogICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG5cbi8vIENhcmRzXG5cbiRjYXJkLXNwYWNlci15OiAgICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRjYXJkLXNwYWNlci14OiAgICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICAgICBjYWxjKCN7JGNhcmQtYm9yZGVyLXJhZGl1c30gLSAjeyRjYXJkLWJvcmRlci13aWR0aH0pICFkZWZhdWx0O1xuJGNhcmQtY2FwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4wMykgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtY29sb3I6ICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZzogICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcblxuJGNhcmQtZ3JvdXAtbWFyZ2luOiAgICAgICAgICAgICAgICAgJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMiAhZGVmYXVsdDtcbiRjYXJkLWRlY2stbWFyZ2luOiAgICAgICAgICAgICAgICAgICRjYXJkLWdyb3VwLW1hcmdpbiAhZGVmYXVsdDtcblxuJGNhcmQtY29sdW1ucy1jb3VudDogICAgICAgICAgICAgICAgMyAhZGVmYXVsdDtcbiRjYXJkLWNvbHVtbnMtZ2FwOiAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1jb2x1bW5zLW1hcmdpbjogICAgICAgICAgICAgICAkY2FyZC1zcGFjZXIteSAhZGVmYXVsdDtcblxuXG4vLyBUb29sdGlwc1xuXG4kdG9vbHRpcC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXJnaW46ICAgICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kdG9vbHRpcC1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAuOHJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC40cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgJHRvb2x0aXAtYmcgIWRlZmF1bHQ7XG5cbi8vIEZvcm0gdG9vbHRpcHMgbXVzdCBjb21lIGFmdGVyIHJlZ3VsYXIgdG9vbHRpcHNcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtcGFkZGluZy15OiAgICAgJHRvb2x0aXAtcGFkZGluZy15ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXg6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWZvbnQtc2l6ZTogICAgICR0b29sdGlwLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtbGluZS1oZWlnaHQ6ICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLW9wYWNpdHk6ICAgICAgICR0b29sdGlwLW9wYWNpdHkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLWJvcmRlci1yYWRpdXM6ICR0b29sdGlwLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cblxuLy8gUG9wb3ZlcnNcblxuJHBvcG92ZXItZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDI3NnB4ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRwb3BvdmVyLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgIDAgLjI1cmVtIC41cmVtIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWhlYWRlci1iZzogICAgICAgICAgICAgICAgIGRhcmtlbigkcG9wb3Zlci1iZywgMyUpICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgJGhlYWRpbmdzLWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXk6ICAgICAgICAgICAgJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy14OiAgICAgICAgICAgICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICRwb3BvdmVyLWJnICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjogICAgICAgICBmYWRlLWluKCRwb3BvdmVyLWJvcmRlci1jb2xvciwgLjA1KSAhZGVmYXVsdDtcblxuXG4vLyBUb2FzdHNcblxuJHRvYXN0LW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMzUwcHggIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAuODc1cmVtICFkZWZhdWx0O1xuJHRvYXN0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiR0b2FzdC1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMSkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAwIC4yNXJlbSAuNzVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcblxuJHRvYXN0LWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJHRvYXN0LWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgcmdiYSgkd2hpdGUsIC44NSkgIWRlZmF1bHQ7XG4kdG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICByZ2JhKDAsIDAsIDAsIC4wNSkgIWRlZmF1bHQ7XG5cblxuLy8gQmFkZ2VzXG5cbiRiYWRnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIDc1JSAhZGVmYXVsdDtcbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjI1ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNGVtICFkZWZhdWx0O1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRiYWRnZS10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICRidG4tdHJhbnNpdGlvbiAhZGVmYXVsdDtcbiRiYWRnZS1mb2N1cy13aWR0aDogICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG5cbiRiYWRnZS1waWxsLXBhZGRpbmcteDogICAgICAgICAgICAgIC42ZW0gIWRlZmF1bHQ7XG4vLyBVc2UgYSBoaWdoZXIgdGhhbiBub3JtYWwgdmFsdWUgdG8gZW5zdXJlIGNvbXBsZXRlbHkgcm91bmRlZCBlZGdlcyB3aGVuXG4vLyBjdXN0b21pemluZyBwYWRkaW5nIG9yIGZvbnQtc2l6ZSBvbiBsYWJlbHMuXG4kYmFkZ2UtcGlsbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcblxuXG4vLyBNb2RhbHNcblxuLy8gUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBtb2RhbCBib2R5XG4kbW9kYWwtaW5uZXItcGFkZGluZzogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtZGlhbG9nLW1hcmdpbjogICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXA6ICAgICAgIDEuNzVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICAgICAgICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kbW9kYWwtY29udGVudC1jb2xvcjogICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYmc6ICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yOiAgICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aDogICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHM6ICAgICAgIDAgLjI1cmVtIC41cmVtIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXNtLXVwOiAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcblxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmcteDogICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nOiAgICAgICAgICAgICAgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7IC8vIEtlZXAgdGhpcyBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcblxuJG1vZGFsLXhsOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTE0MHB4ICFkZWZhdWx0O1xuJG1vZGFsLWxnOiAgICAgICAgICAgICAgICAgICAgICAgICAgODAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgICAgICAgICA1MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xuXG4kbW9kYWwtZmFkZS10cmFuc2Zvcm06ICAgICAgICAgICAgICB0cmFuc2xhdGUoMCwgLTUwcHgpICFkZWZhdWx0O1xuJG1vZGFsLXNob3ctdHJhbnNmb3JtOiAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcbiRtb2RhbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAuM3MgZWFzZS1vdXQgIWRlZmF1bHQ7XG5cblxuLy8gQWxlcnRzXG4vL1xuLy8gRGVmaW5lIGFsZXJ0IGNvbG9ycywgYm9yZGVyIHJhZGl1cywgYW5kIHBhZGRpbmcuXG5cbiRhbGVydC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRhbGVydC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbiRhbGVydC1iZy1sZXZlbDogICAgICAgICAgICAgICAgICAgIC0xMCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItbGV2ZWw6ICAgICAgICAgICAgICAgIC05ICFkZWZhdWx0O1xuJGFsZXJ0LWNvbG9yLWxldmVsOiAgICAgICAgICAgICAgICAgNiAhZGVmYXVsdDtcblxuXG4vLyBQcm9ncmVzcyBiYXJzXG5cbiRwcm9ncmVzcy1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAuNzUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmc6ICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgIGluc2V0IDAgLjFyZW0gLjFyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItY29sb3I6ICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYmc6ICAgICAgICAgICAgICAgICAgIHRoZW1lLWNvbG9yKFwicHJpbWFyeVwiKSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZzogICAgIDFzIGxpbmVhciBpbmZpbml0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItdHJhbnNpdGlvbjogICAgICAgICAgIHdpZHRoIC42cyBlYXNlICFkZWZhdWx0O1xuXG5cbi8vIExpc3QgZ3JvdXBcblxuJGxpc3QtZ3JvdXAtY29sb3I6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1jb2xvcjogICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDogICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXk6ICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg6ICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaG92ZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRsaXN0LWdyb3VwLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgJGxpc3QtZ3JvdXAtYmcgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvcjogICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjogICAgICRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvciAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcjogICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnOiAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cblxuLy8gSW1hZ2UgdGh1bWJuYWlsc1xuXG4kdGh1bWJuYWlsLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJnOiAgICAgICAgICAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1jb2xvcjogICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm94LXNoYWRvdzogICAgICAgICAgICAgIDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG5cblxuLy8gRmlndXJlc1xuXG4kZmlndXJlLWNhcHRpb24tZm9udC1zaXplOiAgICAgICAgICA5MCUgIWRlZmF1bHQ7XG4kZmlndXJlLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cblxuLy8gQnJlYWRjcnVtYnNcblxuJGJyZWFkY3J1bWItcGFkZGluZy15OiAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy14OiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWl0ZW0tcGFkZGluZzogICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tOiAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyOiAgICAgICAgICAgICAgICBxdW90ZShcIi9cIikgIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG5cbi8vIENhcm91c2VsXG5cbiRjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAgMTUlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogICAgICAgICAgIC41ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtaG92ZXItb3BhY2l0eTogICAgIC45ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbjogICAgICAgIG9wYWNpdHkgLjE1cyBlYXNlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoOiAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0OiAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodDogMTBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyOiAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci10cmFuc2l0aW9uOiAgICAgIG9wYWNpdHkgLjZzIGVhc2UgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoOiAgICAgICAgICAgICA3MCUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoOiAgICAgICAgMjBweCAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnOiAgICAgIHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfScgdmlld0JveD0nMCAwIDggOCclM2UlM2NwYXRoIGQ9J001LjI1IDBsLTQgNCA0IDQgMS41LTEuNS0yLjUtMi41IDIuNS0yLjUtMS41LTEuNXonLyUzZSUzYy9zdmclM2VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZzogICAgICBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBkPSdNMi43NSAwbC0xLjUgMS41IDIuNSAyLjUtMi41IDIuNSAxLjUgMS41IDQtNC00LTR6Jy8lM2UlM2Mvc3ZnJTNlXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uOiAgICAgICAuNnMgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgdHJhbnNmb3JtICRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uIGVhc2UtaW4tb3V0ICFkZWZhdWx0OyAvLyBEZWZpbmUgdHJhbnNmb3JtIHRyYW5zaXRpb24gZmlyc3QgaWYgdXNpbmcgbXVsdGlwbGUgdHJhbnNpdGlvbnMgKGUuZy4sIGB0cmFuc2Zvcm0gMnMgZWFzZSwgb3BhY2l0eSAuNXMgZWFzZS1vdXRgKVxuXG5cbi8vIFNwaW5uZXJzXG5cbiRzcGlubmVyLXdpZHRoOiAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1oZWlnaHQ6ICAgICAgICAkc3Bpbm5lci13aWR0aCAhZGVmYXVsdDtcbiRzcGlubmVyLWJvcmRlci13aWR0aDogIC4yNWVtICFkZWZhdWx0O1xuXG4kc3Bpbm5lci13aWR0aC1zbTogICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1oZWlnaHQtc206ICAgICAgICRzcGlubmVyLXdpZHRoLXNtICFkZWZhdWx0O1xuJHNwaW5uZXItYm9yZGVyLXdpZHRoLXNtOiAuMmVtICFkZWZhdWx0O1xuXG5cbi8vIENsb3NlXG5cbiRjbG9zZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRjbG9zZS1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGNsb3NlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGNsb3NlLXRleHQtc2hhZG93OiAgICAgICAgICAgICAgICAgMCAxcHggMCAkd2hpdGUgIWRlZmF1bHQ7XG5cblxuLy8gQ29kZVxuXG4kY29kZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICA4Ny41JSAhZGVmYXVsdDtcbiRjb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICRwaW5rICFkZWZhdWx0O1xuXG4ka2JkLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAuMnJlbSAhZGVmYXVsdDtcbiRrYmQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgIC40cmVtICFkZWZhdWx0O1xuJGtiZC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgJGNvZGUtZm9udC1zaXplICFkZWZhdWx0O1xuJGtiZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGtiZC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuXG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDogICAgICAgICAzNDBweCAhZGVmYXVsdDtcblxuXG4vLyBVdGlsaXRpZXNcblxuJGRpc3BsYXlzOiBub25lLCBpbmxpbmUsIGlubGluZS1ibG9jaywgYmxvY2ssIHRhYmxlLCB0YWJsZS1yb3csIHRhYmxlLWNlbGwsIGZsZXgsIGlubGluZS1mbGV4ICFkZWZhdWx0O1xuJG92ZXJmbG93czogYXV0bywgaGlkZGVuICFkZWZhdWx0O1xuJHBvc2l0aW9uczogc3RhdGljLCByZWxhdGl2ZSwgYWJzb2x1dGUsIGZpeGVkLCBzdGlja3kgIWRlZmF1bHQ7XG5cblxuLy8gUHJpbnRpbmdcblxuJHByaW50LXBhZ2Utc2l6ZTogICAgICAgICAgICAgICAgICAgYTMgIWRlZmF1bHQ7XG4kcHJpbnQtYm9keS1taW4td2lkdGg6ICAgICAgICAgICAgICBtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBcImxnXCIpICFkZWZhdWx0O1xuIiwiLy8gTmF2XG4vL1xuXG5AaW5jbHVkZSBydGwtb25seSB7XG4gIC5uYXYge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbn1cblxuLm5hdi1saW5rIHtcbiAgbGluZS1oZWlnaHQ6ICRuYXYtbGluay1saW5lLWhlaWdodDtcblxuICAmLmRpc2FibGVkIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBjb2xvcjogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLm5hdiAubmF2LWl0ZW0sXG4ubmF2IC5uYXYtbGluayxcbi50YWItcGFuZSxcbi50YWItcGFuZSAuY2FyZC1ib2R5IHtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vLyBUYWIgYW5kIHBpbGxzIGxpbmtcbi5uYXYtdGFicyxcbi5uYXYtcGlsbHMge1xuICBAaWYgJG1hdGVyaWFsLXN0eWxlIHtcbiAgICAubmF2LWxpbmsge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkYnRuLWZvbnQtd2VpZ2h0O1xuICAgICAgZm9udC1zaXplOiAkYnRuLWZvbnQtc2l6ZTtcbiAgICB9XG4gIH1cblxuICAubmF2LWxpbms6bm90KC5hY3RpdmUpIHtcbiAgICBjb2xvcjogJG5hdi1saW5rLWNvbG9yO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAmOm5vdCgubmF2LWZpbGwpOm5vdCgubmF2LWp1c3RpZmllZCkgLm5hdi1saW5rIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRuYXYtc3BhY2VyO1xuXG4gICAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkbmF2LXNwYWNlcjtcbiAgICB9XG4gIH1cblxuICAubmF2LWxpbmsgLmJhZGdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMXB4O1xuICB9XG5cbiAgLm5hdi1pdGVtLnNob3cgLm5hdi1saW5rOm5vdCguYWN0aXZlKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuQGlmICRtYXRlcmlhbC1zdHlsZSB7XG4gIC5uYXYtdGFicyAubmF2LWxpbmsge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGJvdHRvbTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDAgMnB4O1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIH1cblxuICAubmF2LXRhYnMgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLm5hdi10YWJzIC5uYXYtaXRlbS5zaG93IC5uYXYtbGluayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDJweDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4zcyBlYXNlLW91dDtcbiAgfVxufVxuXG4vLyBUYWIgbGlua1xuLm5hdi10YWJzIC5uYXYtbGluayB7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgJi5hY3RpdmUge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZztcbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEFsdGVybmF0aXZlIHRhYnNcblxuLm5hdi10YWJzLnRhYnMtYWx0IC5uYXYtbGluayxcbi50YWJzLWFsdCA+IC5uYXYtdGFicyAubmF2LWxpbmsge1xuICAmLFxuICAmLmFjdGl2ZSB7XG4gICAgYm9yZGVyLXdpZHRoOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBMaWdodCBuYXZzIChtYXRlcmlhbCBvbmx5KVxuXG5AaWYgJG1hdGVyaWFsLXN0eWxlIHtcbiAgJG1hdGVyaWFsLWxpZ2h0LW5hdi1saW5rLWNvbG9yOiBudWxsICFkZWZhdWx0O1xuICAkbWF0ZXJpYWwtbGlnaHQtbmF2LWxpbmstZGlzYWJsZWQtY29sb3I6IG51bGwgIWRlZmF1bHQ7XG4gICRtYXRlcmlhbC1saWdodC1uYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjogbnVsbCAhZGVmYXVsdDtcbiAgJG1hdGVyaWFsLWxpZ2h0LW5hdi1waWxscy1saW5rLWFjdGl2ZS1iZzogbnVsbCAhZGVmYXVsdDtcblxuICAubmF2LXRhYnMubWQtdGFicy1saWdodCxcbiAgLm1kLXRhYnMtbGlnaHQgPiAubmF2LXRhYnMsXG4gIC5tZC10YWJzLWxpZ2h0ID4gZGl2ID4gLm5hdi10YWJzLFxuICAubmF2LXBpbGxzLm1kLXBpbGxzLWxpZ2h0LFxuICAubWQtcGlsbHMtbGlnaHQgPiAubmF2LXBpbGxzLFxuICAubWQtcGlsbHMtbGlnaHQgPiBkaXYgPiAubmF2LXBpbGxzIHtcbiAgICAubmF2LWxpbmsge1xuICAgICAgY29sb3I6ICRtYXRlcmlhbC1saWdodC1uYXYtbGluay1jb2xvcjtcbiAgICB9XG5cbiAgICAubmF2LWxpbms6aG92ZXIsXG4gICAgLm5hdi1saW5rOmZvY3VzLFxuICAgIC5uYXYtbGluay5mb2N1cyxcbiAgICAubmF2LWl0ZW0uc2hvdyAubmF2LWxpbmsge1xuICAgICAgY29sb3I6ICRtYXRlcmlhbC1saWdodC1uYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICB9XG5cbiAgICAubmF2LWxpbmsuZGlzYWJsZWQge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICRtYXRlcmlhbC1saWdodC1uYXYtbGluay1kaXNhYmxlZC1jb2xvciAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5uYXYtdGFicy5tZC10YWJzLWxpZ2h0LFxuICAubWQtdGFicy1saWdodCA+IC5uYXYtdGFicyxcbiAgLm1kLXRhYnMtbGlnaHQgPiBkaXYgPiAubmF2LXRhYnMge1xuICAgIC5uYXYtbGluayB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJG1hdGVyaWFsLWxpZ2h0LW5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yLCAkbWF0ZXJpYWwtbGlnaHQtbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3IpICFpbXBvcnRhbnQ7XG5cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICRtYXRlcmlhbC1saWdodC1uYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubWF0ZXJpYWwtc3R5bGUgLm5hdi1waWxscy5tZC1waWxscy1saWdodCxcbiAgLm1hdGVyaWFsLXN0eWxlIC5tZC1waWxscy1saWdodCA+IC5uYXYtcGlsbHMsXG4gIC5tYXRlcmlhbC1zdHlsZSAubWQtcGlsbHMtbGlnaHQgPiBkaXYgPiAubmF2LXBpbGxzIHtcbiAgICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIHBsYWluLWhvdmVyLWZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZDogJG1hdGVyaWFsLWxpZ2h0LW5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgICBjb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFNpemluZ1xuXG4ubmF2LWxnIHtcbiAgQGluY2x1ZGUgYXBwd29yay1uYXYtc2l6ZSgkbmF2LWxpbmstcGFkZGluZy15LWxnLCAkbmF2LWxpbmstcGFkZGluZy14LWxnLCAkZm9udC1zaXplLWxnLCAkbmF2LWxpbmstbGluZS1oZWlnaHQtbGcpO1xufVxuLm5hdi1zbSB7XG4gIEBpbmNsdWRlIGFwcHdvcmstbmF2LXNpemUoJG5hdi1saW5rLXBhZGRpbmcteS1zbSwgJG5hdi1saW5rLXBhZGRpbmcteC1zbSwgJGZvbnQtc2l6ZS1zbSwgJG5hdi1saW5rLWxpbmUtaGVpZ2h0LXNtKTtcbn1cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gKiBUYWJiZWQgcGFuZWxzXG5cbi5uYXYtdGFicy10b3AsXG4ubmF2LXRhYnMtcmlnaHQsXG4ubmF2LXRhYnMtYm90dG9tLFxuLm5hdi10YWJzLWxlZnQge1xuICBkaXNwbGF5OiBmbGV4O1xuXG4gICA+IC5uYXYsXG4gICA+IGRpdiA+IC5uYXYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gICA+IC5uYXYgLm5hdi1saW5rLFxuICAgPiBkaXYgPiAubmF2IC5uYXYtbGluayB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I7XG4gICAgfVxuXG4gICAgJi5hY3RpdmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5yb3ctYm9yZGVyZWQgPiBbY2xhc3NePVwiY29sLVwiXSxcbiAgLnJvdy1ib3JkZXJlZCA+IFtjbGFzcyo9XCIgY29sLVwiXSxcbiAgLnJvdy1ib3JkZXJlZCA+IFtjbGFzc149XCJjb2wgXCJdLFxuICAucm93LWJvcmRlcmVkID4gW2NsYXNzKj1cIiBjb2wgXCJdLFxuICAucm93LWJvcmRlcmVkID4gW2NsYXNzJD1cIiBjb2xcIl0sXG4gIC5yb3ctYm9yZGVyZWQgPiBbY2xhc3M9XCJjb2xcIl0ge1xuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBib3JkZXItY29sb3I6ICRjYXJkLWlubmVyLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLm5hdi10YWJzLXJpZ2h0LFxuLm5hdi10YWJzLWxlZnQge1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcblxuICAgPiAubmF2LFxuICAgPiBkaXYgPiAubmF2IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgfVxuXG4gICA+IC5uYXYgLm5hdi1saW5rLFxuICAgPiBkaXYgPiAubmF2IC5uYXYtbGluayB7XG4gICAgbWFyZ2luOiAwIDAgJG5hdi1zcGFjZXIgMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgID4gLnRhYi1jb250ZW50IHtcbiAgICBmbGV4LWdyb3c6IDE7XG4gIH1cbn1cblxuLy8gVG9wIHRhYnNcbi5uYXYtdGFicy10b3Age1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICA+IC5uYXYgLm5hdi1saW5rLFxuICAgPiBkaXYgPiAubmF2IC5uYXYtbGluayB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgJi5hY3RpdmUge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnO1xuICAgIH1cbiAgfVxufVxuXG4vLyBSaWdodCB0YWJzXG4ubmF2LXRhYnMtcmlnaHQge1xuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG5cbiAgID4gLm5hdiAubmF2LWl0ZW0sXG4gICA+IGRpdiA+IC5uYXYgLm5hdi1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuXG4gICAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTFweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuXG4gICA+IC5uYXYgLm5hdi1saW5rLFxuICAgPiBkaXYgPiAubmF2IC5uYXYtbGluayB7XG4gICAgQGlmICRtYXRlcmlhbC1zdHlsZSAhPSB0cnVlIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAkYm9yZGVyLXJhZGl1cyAkYm9yZGVyLXJhZGl1cyAwKTtcblxuICAgICAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyAwIDAgJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnO1xuXG4gICAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZztcbiAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEJvdHRvbSB0YWJzXG4ubmF2LXRhYnMtYm90dG9tIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuXG4gICA+IC5uYXYgLm5hdi1pdGVtLFxuICAgPiBkaXYgPiAubmF2IC5uYXYtaXRlbSB7XG4gICAgbWFyZ2luLXRvcDogLTFweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgID4gLm5hdiAubmF2LWxpbmssXG4gICA+IGRpdiA+IC5uYXYgLm5hdi1saW5rIHtcbiAgICBAaWYgJG1hdGVyaWFsLXN0eWxlICE9IHRydWUge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwIDAgJGJvcmRlci1yYWRpdXMgJGJvcmRlci1yYWRpdXMpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzIHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgICYuYWN0aXZlIHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZztcbiAgICB9XG4gIH1cbn1cblxuLy8gTGVmdCB0YWJzXG4ubmF2LXRhYnMtbGVmdCB7XG4gICA+IC5uYXYgLm5hdi1pdGVtLFxuICAgPiBkaXYgPiAubmF2IC5uYXYtaXRlbSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgfVxuICB9XG5cbiAgID4gLm5hdiAubmF2LWxpbmssXG4gICA+IGRpdiA+IC5uYXYgLm5hdi1saW5rIHtcbiAgICAgQGlmICRtYXRlcmlhbC1zdHlsZSAhPSB0cnVlIHtcbiAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzIDAgMCAkYm9yZGVyLXJhZGl1cyk7XG5cbiAgICAgICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwICRib3JkZXItcmFkaXVzICRib3JkZXItcmFkaXVzIDApO1xuICAgICAgIH1cbiAgICAgfVxuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMge1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I7XG4gICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZztcblxuICAgICAgQGluY2x1ZGUgcnRsLXN0eWxlIHtcbiAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBUYWIgY29udGVudFxuXG4ubmF2LXRhYnMtdG9wID4gLnRhYi1jb250ZW50LFxuLm5hdi10YWJzLXJpZ2h0ID4gLnRhYi1jb250ZW50LFxuLm5hdi10YWJzLWJvdHRvbSA+IC50YWItY29udGVudCxcbi5uYXYtdGFicy1sZWZ0ID4gLnRhYi1jb250ZW50IHtcbiAgZmxleC1zaHJpbms6IDE7XG4gIGJvcmRlcjogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3I7XG4gIGJhY2tncm91bmQ6ICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm94LXNoYWRvdzogJGNhcmQtc2hhZG93O1xufVxuXG4ubmF2LXRhYnMtdG9wID4gLnRhYi1jb250ZW50IHtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwIDAgJGJvcmRlci1yYWRpdXMgJGJvcmRlci1yYWRpdXMpO1xufVxuXG4ubmF2LXRhYnMtcmlnaHQgPiAudGFiLWNvbnRlbnQge1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzIDAgMCAkYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHJ0bC1zdHlsZSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwICRib3JkZXItcmFkaXVzICRib3JkZXItcmFkaXVzIDApO1xuICB9XG59XG5cbi5uYXYtdGFicy1ib3R0b20gPiAudGFiLWNvbnRlbnQge1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzICRib3JkZXItcmFkaXVzIDAgMCk7XG59XG5cbi5uYXYtdGFicy1sZWZ0ID4gLnRhYi1jb250ZW50IHtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwICRib3JkZXItcmFkaXVzICRib3JkZXItcmFkaXVzIDApO1xuICBAaW5jbHVkZSBydGwtc3R5bGUge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGJvcmRlci1yYWRpdXMgMCAwICRib3JkZXItcmFkaXVzKTtcbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFJlc3BvbnNpdmUgbmF2XG5cbkBpbmNsdWRlIHJlc3BvbnNpdmUtbG9vcC1iZWZvcmUoJy5uYXYtcmVzcG9uc2l2ZScpIHtcbiAgID4gLm5hdixcbiAgID4gZGl2ID4gLm5hdiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBib3JkZXI6IDA7XG5cbiAgICAubmF2LWl0ZW0ge1xuICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICB9XG5cbiAgICAmLmNhcmQtaGVhZGVyLXRhYnMsXG4gICAgJi5jYXJkLWhlYWRlci1waWxscyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMSAqICRuYXYtc3BhY2VyO1xuICAgIH1cbiAgfVxuXG4gICA+IC5uYXYtdGFicyxcbiAgID4gLm5hdi1waWxscyxcbiAgID4gZGl2ID4gLm5hdi10YWJzLFxuICAgPiBkaXYgPiAubmF2LXBpbGxzIHtcbiAgICAubmF2LWl0ZW0ge1xuICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLm5hdi1saW5rIHtcbiAgICAgIG1hcmdpbjogMCAwICRuYXYtc3BhY2VyIDAgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAgPiAubmF2LXRhYnM6bm90KC50YWJzLWFsdCksXG4gICA+IGRpdiA+IC5uYXYtdGFiczpub3QoLnRhYnMtYWx0KSB7XG4gICAgLm5hdi1saW5rIHtcbiAgICAgIEBpZiBub3QgJG1hdGVyaWFsLXN0eWxlIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5uYXYtbGluay5hY3RpdmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gICYubmF2LXRhYnMtdG9wID4gLnRhYi1jb250ZW50LFxuICAmLm5hdi10YWJzLXJpZ2h0ID4gLnRhYi1jb250ZW50LFxuICAmLm5hdi10YWJzLWJvdHRvbSA+IC50YWItY29udGVudCxcbiAgJi5uYXYtdGFicy1sZWZ0ID4gLnRhYi1jb250ZW50IHtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgfVxuXG4gICYubmF2LXRhYnMtYm90dG9tLFxuICAmLm5hdi10YWJzLXJpZ2h0LFxuICAmLm5hdi10YWJzLWxlZnQge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbn1cbiIsIi8vIEJ1dHRvbnNcbi8vXG5cbi5idG4ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICB9XG59XG5cbkBpZiAkbWF0ZXJpYWwtc3R5bGUge1xuICAuYnRuIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG59XG5cbi8vIEJhYmdlIHdpdGhpbiBidXR0b25cbi5idG4gLmJhZGdlIHtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkYnRuLXRyYW5zaXRpb24pO1xufVxuXG5sYWJlbC5idG4ge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIEFsdGVybmF0ZSBidXR0b25zXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaWYgJGNvbG9yICE9IHByaW1hcnkge1xuICAgIEBpZiAkbWF0ZXJpYWwtc3R5bGUge1xuICAgICAgQGluY2x1ZGUgYXBwd29yay1tYXRlcmlhbC1idXR0b24tdmFyaWFudCgnLmJ0bi0jeyRjb2xvcn0nLCAkdmFsdWUpO1xuICAgICAgQGluY2x1ZGUgYXBwd29yay1tYXRlcmlhbC1idXR0b24tb3V0bGluZS12YXJpYW50KCcuYnRuLW91dGxpbmUtI3skY29sb3J9JywgJHZhbHVlKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIGFwcHdvcmstYnV0dG9uLXZhcmlhbnQoJy5idG4tI3skY29sb3J9JywgJHZhbHVlKTtcbiAgICAgIEBpbmNsdWRlIGFwcHdvcmstYnV0dG9uLW91dGxpbmUtdmFyaWFudCgnLmJ0bi1vdXRsaW5lLSN7JGNvbG9yfScsICR2YWx1ZSk7XG4gICAgfVxuICB9XG59XG5cbi8vIERlZmF1bHQgYnV0dG9uXG5AaWYgJG1hdGVyaWFsLXN0eWxlIHtcbiAgQGluY2x1ZGUgYXBwd29yay1tYXRlcmlhbC1idXR0b24tdmFyaWFudCgnLmJ0bi1kZWZhdWx0JywgJGJ0bi1kZWZhdWx0LWJnLCAkYnRuLWRlZmF1bHQtY29sb3IsICRidG4tZGVmYXVsdC1jb2xvcik7XG4gIEBpbmNsdWRlIGFwcHdvcmstbWF0ZXJpYWwtYnV0dG9uLW91dGxpbmUtdmFyaWFudCgnLmJ0bi1vdXRsaW5lLWRlZmF1bHQnLCAkYnRuLWRlZmF1bHQtYm9yZGVyLCAkYnRuLWRlZmF1bHQtY29sb3IpO1xufSBAZWxzZSB7XG4gIEBpbmNsdWRlIGFwcHdvcmstYnV0dG9uLXZhcmlhbnQoJy5idG4tZGVmYXVsdCcsICRidG4tZGVmYXVsdC1iZywgJGJ0bi1kZWZhdWx0LWNvbG9yLCAkYnRuLWRlZmF1bHQtYm9yZGVyKTtcbiAgQGluY2x1ZGUgYXBwd29yay1idXR0b24tb3V0bGluZS12YXJpYW50KCcuYnRuLW91dGxpbmUtZGVmYXVsdCcsICRidG4tZGVmYXVsdC1ib3JkZXIsICRidG4tZGVmYXVsdC1jb2xvcik7XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogU2l6ZXNcblxuLmJ0bi14bCB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LXhsLCAkYnRuLXBhZGRpbmcteC14bCwgJGJ0bi1mb250LXNpemUteGwsICRidG4tbGluZS1oZWlnaHQteGwsICRidG4tYm9yZGVyLXJhZGl1cy14bCk7XG59XG5cbi5idG4teHMge1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkYnRuLXBhZGRpbmcteS14cywgJGJ0bi1wYWRkaW5nLXgteHMsICRidG4tZm9udC1zaXplLXhzLCAkYnRuLWxpbmUtaGVpZ2h0LXhzLCAkYnRuLWJvcmRlci1yYWRpdXMteHMpO1xufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIExpbmsgYnV0dG9uc1xuXG4uYnRuLmJ0bi1saW5rIHtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuXG4gIEBpZiAkbWF0ZXJpYWwtc3R5bGUge1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuXG4gICAgLndhdmVzLXJpcHBsZSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vICogSWNvbiBidXR0b25cblxuLmljb24tYnRuIHtcbiAgJGljb24tYnRuLXNpemU6ICAgICgkYnRuLWZvbnQtc2l6ZSAgICAqICRidG4tbGluZS1oZWlnaHQpICAgICsgKCRidG4tcGFkZGluZy15ICAgICogMik7XG4gICRpY29uLWJ0bi1zaXplLXhsOiAoJGJ0bi1mb250LXNpemUteGwgKiAkYnRuLWxpbmUtaGVpZ2h0LXhsKSArICgkYnRuLXBhZGRpbmcteS14bCAqIDIpO1xuICAkaWNvbi1idG4tc2l6ZS1sZzogKCRidG4tZm9udC1zaXplLWxnICogJGJ0bi1saW5lLWhlaWdodC1sZykgKyAoJGJ0bi1wYWRkaW5nLXktbGcgKiAyKTtcbiAgJGljb24tYnRuLXNpemUtc206ICgkYnRuLWZvbnQtc2l6ZS1zbSAqICRidG4tbGluZS1oZWlnaHQtc20pICsgKCRidG4tcGFkZGluZy15LXNtICogMik7XG4gICRpY29uLWJ0bi1zaXplLXhzOiAoJGJ0bi1mb250LXNpemUteHMgKiAkYnRuLWxpbmUtaGVpZ2h0LXhzKSArICgkYnRuLXBhZGRpbmcteS14cyAqIDIpO1xuICAkYm9yZGVycy13aWR0aDogICAgJGJ0bi1ib3JkZXItd2lkdGggKiAyO1xuXG4gIHdpZHRoOiBjYWxjKCN7JGljb24tYnRuLXNpemV9ICsgI3skYm9yZGVycy13aWR0aH0pO1xuICBwYWRkaW5nOiAwO1xuICBsaW5lLWhlaWdodDogJGljb24tYnRuLXNpemU7XG5cbiAgJi5idG4teGwge1xuICAgIHdpZHRoOiBjYWxjKCN7JGljb24tYnRuLXNpemUteGx9ICsgI3skYm9yZGVycy13aWR0aH0pO1xuICAgIGxpbmUtaGVpZ2h0OiAkaWNvbi1idG4tc2l6ZS14bDtcbiAgfVxuXG4gICYuYnRuLWxnIHtcbiAgICB3aWR0aDogY2FsYygjeyRpY29uLWJ0bi1zaXplLWxnfSArICN7JGJvcmRlcnMtd2lkdGh9KTtcbiAgICBsaW5lLWhlaWdodDogJGljb24tYnRuLXNpemUtbGc7XG4gIH1cblxuICAmLmJ0bi1zbSB7XG4gICAgd2lkdGg6IGNhbGMoI3skaWNvbi1idG4tc2l6ZS1zbX0gKyAjeyRib3JkZXJzLXdpZHRofSk7XG4gICAgbGluZS1oZWlnaHQ6ICRpY29uLWJ0bi1zaXplLXNtO1xuICB9XG5cbiAgJi5idG4teHMge1xuICAgIHdpZHRoOiBjYWxjKCN7JGljb24tYnRuLXNpemUteHN9ICsgI3skYm9yZGVycy13aWR0aH0pO1xuICAgIGxpbmUtaGVpZ2h0OiAkaWNvbi1idG4tc2l6ZS14cztcbiAgfVxufVxuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyAqIFdpdGhvdXQgYm9yZGVyXG5cbi5idG4uYm9yZGVybGVzcyB7XG4gICY6bm90KC5hY3RpdmUpOm5vdCg6YWN0aXZlKTpub3QoOmhvdmVyKTpub3QoOmZvY3VzKSxcbiAgOm5vdCguc2hvdykgPiAmLmRyb3Bkb3duLXRvZ2dsZTpub3QoOmhvdmVyKTpub3QoOmZvY3VzKSB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG59XG4iXX0= */
